@charset "utf-8";
/* CSS Document */


/*共有*/
.pc{display:block;}
.sp{display:none;}
.page_wrap{overflow: hidden;}
section.wrap{padding:4em 0;}

/*タイトル*/
h3.title{
	font-size:5vw;
	font-weight:700;
	margin:0 auto 1em;
	padding-bottom:0.4em;
	border-bottom:5px #333 solid;
	text-align:center;
	}

h3.title_white{
	border-bottom:5px #fff solid;
	color:#FFF;
	}

h3.title2{
	font-size:4vw;
	font-weight:700;
	margin:0 auto 1em;
	text-align:center;
	line-height:1em;
	}
h3.title2 span{
	display:block;
	text-align:center;
	font-size:0.6em;
	}


.w4{width:4em;}
.w5{width:5em;}
.w6{width:6em;}
.w7{width:7em;}
.w8{width:8em;}
.w9{width:9em;}


/*ヘッダー*/
h1.logo{
	max-width:240px;
	width:30%;
	margin:0 auto;
	padding:2%;
	}

/*メインイメージ*/
.main_bg{
	background:url(../img/main_img_dm.webp) center center no-repeat;
	background-size:cover;
	}

.main_bg h2{
	color:#FFF;
	font-weight:700;
	font-size:6vw;
	line-height:1em;
	text-align:center;
	padding:2em 0;
	}

/*セル3*/
.cell3{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
.cell3 li{
	width:30%;
	margin-bottom:5%;
	}

.cell3 .text_wrap h4{text-align:center;}
.cell3 .text_wrap p{font-size:0.8em;}


/*Flow*/
.flow_wrap{background:#4d4d4d;color:#FFF;}

.flow_wrap .flow{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	}
.flow_wrap .flow li{width:60%;}
.flow_wrap .flow li:first-child{width:35%;max-width:400px;}
.flow_wrap .flow .text_wrap h4{font-size:1.8em;padding-bottom:0.2em;}
.flow_wrap .arrow{
	max-width:400px;
	width:35%;
	}
.flow_wrap .arrow img{
	max-width:55px;
	margin: 5px auto;
	display: block;
	}


/*company_wrap2*/
.company_wrap2{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	flex-direction: row-reverse;
	padding:1em 0;
	}
.company_wrap2 li{width:50%;}
.company_wrap2 li:last-child{width:48%;}
.company_wrap2 li:last-child img{max-width:500px;}


/*テーブル1*/
.cell_wrap{width:calc(100%);}
.cell_wrap dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-bottom:1px #888 solid;
	padding:0.5em 0;
	}
.cell_wrap dl dt{width:20%;}
.cell_wrap dl dd{width:80%;}

/*google map*/
.gmap {
	margin:2em 0 0;
  width: 100%;
  position: relative;
  padding-top: 45%;
}

.gmap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/*フッター*/
footer .ftr_contact{background:#666;color:#FFF;}

footer .ftr_contact h3{
	font-size:5vw;
	text-align:center;
	margin-bottom:0.5em;
	line-height:1em;}
footer .ftr_contact h3 span{
	display:block;
	font-size:0.7em;
	}
footer .ftr_contact .title_btm{text-align:center;}

footer .ftr_wrap{background:#333;}
footer .ftr_btn_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin:3em 0 0;
	padding:2%;
	}
footer .ftr_btn_wrap li{
	width:calc(45% - 1px);
	padding:2.5%;
	}
	
footer .ftr_btn_wrap li h4{
	text-align:center;
	font-size: 1.5em;
	margin-bottom: 0.4em;
}
footer .ftr_btn_wrap li .title_btm{margin-bottom:1em;}
footer .ftr_btn_wrap li a{display:block;padding:1em 2em;border-radius:3em;}
footer .ftr_btn_wrap li a img{display:block;}
footer .ftr_btn_wrap li a:hover img {
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}

footer .ftr_btn_wrap li.btn_tel{border-right:1px #fff solid;}

footer .ftr_btn_wrap li.btn_tel a{padding:1em 0;border-radius:0;}
footer .ftr_btn_wrap li.btn_tel a:hover{}
footer .ftr_btn_wrap li.btn_mail a{background:#555;}
footer .ftr_btn_wrap li.btn_mail a:hover{background:#888;}



footer #copyright{
	color:#333;
	text-align:center;
	padding:0.5em 1em;
	font-size:0.8em;
	}


/*お問い合わせ*/
.contact header{padding:0.5em;}
.contact header h1{width:70%;max-width:200px;margin:0 auto;}
.contact .contact_main{
	background:#333;
	color:#FFF;
	text-align:center;
	font-size:5vw;
	font-weight:700;
	line-height:1.2;
	padding:1em 0;
	}


.contact_wrap .h2_btm{text-align:center;padding:2em 0;display:block;}

/*テーブル1*/
.ts2 dl{width:100%;display:table;}
.ts2 dt{
	display:table-cell;
	border-bottom:2px #003460 solid;
	width:12em;
	padding:0.5em;
	color:#333;
	position:relative;
	vertical-align: top;
	}
.ts2 dd{
	display:table-cell;
	border-bottom:2px #888 solid;
	padding:0.5em;
	}
.ts2 dt .hissu{
	background:#003460;
	line-height:1em;
	padding:0.5em;
	color:#fff;
	font-size:0.8em;
	border-radius: 10px;
	position:absolute;
	right:5px;
	}

.contact_wrap .input_line{padding:0.2em;font-size:1.1em;width:calc(100% - (0.5em + 2px));}
.contact_wrap .text_area{padding:0.2em;font-size:1.1em;width:calc(100% - (0.5em + 2px));height:8em;}
.contact_wrap .privacy_line dt,.privacy_line dd{border:none;}
.contact_wrap .input_check{margin-right:0.4em;}
.contact_wrap .btn_wrap{
	font-size:1.4em;margin:1em auto 2em;}
.contact_wrap .btn_wrap input{font-weight:bold;}
.contact_wrap .btn_wrap input.submit{
	display:block;
	background:#F60;
	color:#fff;
	line-height:1em;
	padding:0.7em 2em;
	border:none;
	border-radius:0.5em;
	cursor:pointer;
	}
.contact_wrap .btn_wrap input.submit:hover{background:#F30;}
.contact_wrap .btn_wrap.single{width:calc(9em + 4em);}

.contact_btm{border-top:1px #333 solid;}


/*サンクスページ*/
.contact_thanks{
	padding:100px 0;
	border-top:10px #003460 solid;
}

.contact_thanks h2{
	color:#003460;
	line-height:1.2em;
	text-align:center;
	font-size:60px;
	padding:20px 0;
	}

.contact_thanks p{text-align:center;}
.contact_thanks a{
	display:block;
	background:#F60;
	color:#fff;
	line-height:1em;
	padding:0.7em 2em;
	border:none;
	width:10em;
	border-radius:0.5em;
	cursor:pointer;
	margin:3em auto;
	text-align:center;
	}
.contact_thanks a:hover{background:#F30;}


/*確認画面*/
.err_mes{padding:1em 0;display:block;}

.contact_thanks .btn_wrap input{font-weight:bold;}
.contact_thanks .btn_wrap input.submit{
	display:block;
	background:#F60;
	color:#fff;
	line-height:1em;
	padding:0.7em 2em;
	border:none;
	border-radius:0.5em;
	cursor:pointer;
	}
.contact_thanks .btn_wrap input.submit:hover{background:#F30;}
.contact_thanks .btn_wrap input.back{
	display:block;
	background:#888;
	color:#fff;
	line-height:1em;
	padding:0.7em 2em;
	border:none;
	border-radius:0.5em;
	cursor:pointer;
	}
.contact_thanks .btn_wrap input.back:hover{background:#555;}

.contact_thanks .btn_wrap.single{width:calc(6em + 4em);margin:1em auto;}
.contact_thanks .btn_wrap.double{
	width:calc(18em + 4em);
	display: flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin:2em auto;
	}
.contact_thanks .h2_btm{padding:1.5em 0;}


@media screen and (min-width:1200px) {
/*メインイメージ*/
h1.logo{padding:25px 0 20px;}
.main_bg h2{font-size:80px;}

/*タイトル*/
h3.title{font-size:60px;}
h3.title2{font-size:50px;}


/*お問い合わせ*/
.contact .contact_main{font-size:60px;}

}


@media screen and (max-width:760px) {
/*共通*/
.pc{display:none;}
.sp{display:block;}

/*タイトル*/
h3.title{font-size:36px;}
h3.title2{font-size:32px;}

/*メインイメージ*/
.main_bg h2{
	padding:3em 0;
	}

/*セル3*/
.cell3 li{width:100%;}


/*Flow*/
.flow_wrap .flow li{width:100%;}
.flow_wrap .flow li:first-child{width:100%;max-width:none;}
.flow_wrap .arrow{
	max-width:none;
	width:100%;
	}
.flow_wrap .arrow img{
	max-width:55px;
	margin: 5px auto;
	display: block;
	}


/*company_wrap2*/
.company_wrap{}
	
.company_wrap2{
	display: block;
	}
.company_wrap2 li{width:100%;}
.company_wrap2 li:last-child{width:100%;display:none;}
.company_wrap2 li:last-child img{max-width:500px;margin:0 auto;}

.cell_wrap{width:100%;}

.cell_wrap dl{
	border-bottom:none;
	padding:0.5em 0;
	}
.cell_wrap dl dt{
	width:100%;
	background:#333;
	color:#FFF;
	text-align:center;
	padding:0.2em;
	}
.cell_wrap dl dd{
	width:100%;
	padding:0.2em;
	}

/*google map*/
.gmap {
  padding-top: 70%;
}




/*フッター*/
footer .ftr_btn_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin:2em auto 0;
	width:85%;
	}
footer .ftr_btn_wrap li{
	width:100%;
	margin-bottom:1em;
	}

footer .ftr_btn_wrap li.btn_tel a {
  padding:0;
}

footer .ftr_btn_wrap li.btn_tel{border-right:none;border-bottom:1px #fff solid;padding:2em 0;}

footer .ftr_contact h3{
	font-size:36px;
}


/*お問い合わせ*/
.contact .contact_main{font-size:8vw;}

/*テーブル2*/
.ts2 dl{display:block;}
.ts2 dt{
	display:block;
	width:auto;
	text-align:center;
	border:none;
	background:#003460;
	color:#FFF;
	}
.ts2 dd{
	display:block;
	padding-bottom:1em;
	border:none;
	padding:0.5em 0;
	}

.ts2 dt .hissu{
	background:#fff;
	color:#003460;
	}

/*サンクスページ*/
.contact_thanks{
	padding:30px 0;
}

.contact_thanks h2{
	font-size:7vw;
	}

.contact_thanks a{margin:5vw auto;}

/*確認画面*/
.contact_thanks .btn_wrap.double{
	width:auto;
	display: block;
	margin:1em auto;
	}

.contact_thanks .btn_wrap input{
	width:100%;
	margin:0.5em auto;
	}
}


