@charset "utf-8";





/*-------------------------------
	お問い合わせ
-------------------------------*/

.sec1{
	padding-bottom: 150px;
}
.sec1 .first_message{
	font-size: 1.9rem;
	margin-bottom: 125px;
	line-height: 2;
	font-weight: bold;
}
.sec1 .block{
	border-top: 1px solid #e3e3e3;
	position: relative;
}
.sec1 .block:before{
	content: "";
	width: 160px;
	height: 1px;
	display: block;
	position: absolute;
	left: 0;
	top: -1px;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00a475+0,00bdff+100 */
	background: #00a475; /* Old browsers */
	background: -moz-linear-gradient(left,  #00a475 0%, #00bdff 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #00a475 0%,#00bdff 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #00a475 0%,#00bdff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a475', endColorstr='#00bdff',GradientType=1 ); /* IE6-9 */
}
.sec1 .block .form_title .title{
	font-size: 2.6rem;
	left: 0;
	top: -5px;
	font-weight: bold;
	position: relative;
}

/*----- 電話でのお問い合わせ */
.sec1 .block_tel{
	padding-top: 50px;
	padding-bottom: 60px;
}
.sec1 .block_tel .left_cont{
	width: 300px;
}
.sec1 .block_tel .left_cont .svg{
	width: 35px;
	margin-right: 25px;
}
.sec1 .block_tel .left_cont .title{
	width: calc(100% - 60px);
}
.sec1 .block_tel .right_cont{
	width: calc(100% - 300px);
}
.sec1 .block_tel .right_cont .no{
	font-size: 7.0rem;
	line-height: 1;
	letter-spacing: 0.1em;
	margin-bottom: 10px;
	font-family: 'Boston Black';
}
.sec1 .block_tel .right_cont .list-ast li{
	font-size: 1.4rem;
}
.sec1 .block_tel .right_cont .list-ast li:not(:last-child){
	margin-bottom: 5px;
}
.sec1 .block_mail{
	padding-top: 100px;
}

/*----- お問い合わせフォーム */
.sec1 .block_mail .form_title{
	margin-bottom: 90px;
}
.sec1 .block_mail .form_title .svg{
	width: 40px;
	margin-right: 20px;
}
.sec1 .block_mail .detail{
	display: flex;
	align-items: center;
}
.sec1 .block_mail .detail.top{
	align-items: flex-start;
}
.sec1 .block_mail .detail{
	margin-bottom: 35px;
}
.sec1 .block_mail .detail .title{
	font-size: 1.8rem;
	width: 285px;
	position: relative;
}
.sec1 .block_mail .detail .cont{
	width: calc(100% - 285px);
	padding-left: 25px;
}
.sec1 .block_mail .detail .title:after{
	content: "必須";
	font-size: 1.4rem;
	width: 50px;
	height: 25px;
	border-radius: 5px;
	right: 0;
	top: 0;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#00a475+0,00bdff+100 */
	background: #00a475; /* Old browsers */
	background: -moz-linear-gradient(left,  #00a475 0%, #00bdff 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(left,  #00a475 0%,#00bdff 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  #00a475 0%,#00bdff 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a475', endColorstr='#00bdff',GradientType=1 ); /* IE6-9 */
}
.sec1 .block_mail .detail .check{
	position: relative;
}
.sec1 .block_mail .check li{
	margin-right: 1em;
	display: flex;
	align-items: center;
}
/* .sec1 .block_mail .check li:nth-last-child(n+4){
	margin-bottom: 10px;
} */
.sec1 .block_mail .check li:not(:last-child){
	margin-bottom: 10px;
}
.sec1 .block_mail .check li input{
	display:none;
}
.sec1 .block_mail .check li label{
	display: flex;
	align-items: center;
	position: relative;
}
.sec1 .block_mail .check li label:before{
	content: "";
	width: 16px;
	height: 16px;
	line-height: 16px;
	border: 1px solid #e3e3e3;
	border-radius: 50%;
	margin-right: 10px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	background: #fff;
	transition: 0.3s all ease;
	color: #ededf9;
	font-weight: bold;
	position: absolute;
	left: 0;
	top: calc(50% - 9px);
}
.sec1 .block_mail .check li.active label:after{
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #000;
	display: block;
	position: absolute;
	left: 3px;
	top: calc(50% - 6px);
}
.sec1 .block_mail .check li .mwform-checkbox-field-text,
.sec1 .block_mail .check li .mwform-radio-field-text{
	padding-left: 25px;
	font-size: 1.8rem;
}
.sec1 .block_mail .check_policy{
	margin-bottom: 70px;
}
.sec1 .block_mail .check_policy li{
	justify-content: center;
}
.sec1 .block_mail .check_policy li .hissu{
	font-size: 1.4rem;
	width: 50px;
	height: 25px;
	border-radius: 5px;
	margin-left: 10px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #00a475;
	background: -moz-linear-gradient(left, #00a475 0%, #00bdff 100%);
	background: -webkit-linear-gradient(left, #00a475 0%,#00bdff 100%);
	background: linear-gradient(to right, #00a475 0%,#00bdff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00a475', endColorstr='#00bdff',GradientType=1 );
}
.sec1 .block_mail .detail input[type="text"],
.sec1 .block_mail .detail textarea{
	width: 100%;
	padding: 15px;
	border-radius: 5px;
	font-size: 1.8rem;
	border: 1px solid #e3e3e3;
}
.sec1 .block_mail .detail textarea{
	height: 400px;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	vertical-align: bottom;
}
.sec1 .block_mail .detail input[type="text"]::placeholder,
.sec1 .block_mail .detail textarea::placeholder{
	color: #c9c9c9;
}
.sec1 .block_mail .detail input[type="text"]:-ms-input-placeholder,
.sec1 .block_mail .detail textarea::-ms-input-placeholder{
	color: #c9c9c9;
}
.sec1 .block_mail .detail input[type="text"]::-ms-input-placeholder,
.sec1 .block_mail .detail textarea::-ms-input-placeholder{
	color: #c9c9c9;
}
.sec1 .block_mail .hosoku{
	padding-top: 50px;
	padding-bottom: 70px;
	line-height: 2.2;
	text-align: center;
}
.sec1 .block_mail .policy_cont{
	margin-bottom: 60px;
}
.sec1 .block_mail .policy_cont .title{
	font-size: 1.8rem;
	margin-bottom: 10px;
	font-weight: bold;
}
.sec1 .block_mail .policy{
	height: 300px;
	overflow: auto;
	padding: 20px;
	font-size: 1.4rem;
	border: 1px solid #e3e3e3;
}
.sec1 .block_mail .policy .p_detail:not(:last-child){
	margin-bottom: 25px;
}
.sec1 .block_mail .policy .p_detail .p_title{
	margin-bottom: 5px;
}

/*----- ボタン */
.submit_wrap .submit{
	height: 58px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	color: #fff;
	overflow: hidden;
}
.submit_wrap .submit:before{
	content: "";
	display: block;
	position: absolute;
	border-radius: 3px;
	left: -100%;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	transition: .3s all ease;
	background: #000;
}
.submit_wrap .submit:hover:before{
	left: 0;
}
.submit_wrap.gradation .icofont.arrow:after{
	color: #fff;
}
.submit_wrap input[type="submit"],
.submit_wrap a{
	width: 100%;
	height: 100%;
	font-size: 1.6rem;
	border: none;
	background: none;
	color: #fff;
	cursor: pointer;
	position: relative;
	z-index: 2;
}
.submit_wrap a{
	background: none !important;
	margin: 0 !important;
	border-radius: 0 !important;
	color: #fff !important;
}
.submit_wrap a:hover{
	opacity: 1 !important;
}
.submit_wrap a:before{
	display: none;
}


/*-------------------------------
	確認画面
-------------------------------*/

.sec1.confirm_page .block_mail .detail .title:after,
.sec1.confirm_page .block_mail .confirm_none{
	display: none !important;
}
.sec1.confirm_page .check_policy{
	opacity: 0;
}
.sec1.confirm_page .block_mail{
	padding-top: 0;
	border-top: none;
}
.sec1.confirm_page .block_mail:before{
	display: none;
}
.sec1.confirm_page .block_mail .check li:not(:last-child){
	margin-bottom: 0;
}



/*-------------------------------
	完了画面
-------------------------------*/

.sec1.thanks_page .second_message{
	font-size: 1.4rem;
	line-height: 1.8;
}
.sec1.thanks_page .submit_wrap{
	margin-top: 135px;
}



/*-------------------------------
	SP専用
-------------------------------*/
@media screen and (max-width:768px) , print{

	/*-------------------------------
		お問い合わせ
	-------------------------------*/

	.sec1{
		padding-bottom: 18vw;
	}
	.sec1 .first_message{
		font-size: 1.4rem;
		margin-bottom: 10vw;
		padding-right: 3.5vw;
	}
	.sec1 .block:before{
		width: 30%;
	}
	.sec1 .block .form_title .title{
		font-size: 1.9rem;
		top: -0.5vw;
	}

	/*----- 電話でのお問い合わせ */
	.sec1 .block_tel{
		padding-top: 10vw;
		padding-bottom: 10vw;
	}
	.sec1 .block_tel .left_cont{
		width: 100%;
	}
	.sec1 .block_tel .left_cont .svg{
		width: 5vw;
		margin-right: 5vw;
	}
	.sec1 .block_tel .left_cont .title{
		width: calc(100% - 10vw);
		margin-bottom: 5vw;
	}
	.sec1 .block_tel .right_cont{
		width: 100%;
	}
	.sec1 .block_tel .right_cont .no{
		font-size: 4.3rem;
		margin-bottom: 5vw;
	}
	.sec1 .block_tel .right_cont .list-ast li{
		font-size: 1.2rem;
	}
	.sec1 .block_tel .right_cont .list-ast li:not(:last-child){
		margin-bottom: 2.5vw;
	}
	.sec1 .block_mail{
		padding-top: 10vw;
	}

	/*----- お問い合わせフォーム */
	.sec1 .block_mail .form_title{
		margin-bottom: 15vw;
	}
	.sec1 .block_mail .form_title .svg{
		width: 7.5vw;
		margin-right: 2.5vw;
	}
	.sec1 .block_mail .detail{
		margin-bottom: 10vw;
		flex-wrap: wrap;
	}
	.sec1 .block_mail .detail .title{
		font-size: 1.6rem;
		margin-bottom: 5vw;
		width: 100%;
	}
	.sec1 .block_mail .detail .cont{
		width: 100%;
		padding-left: 0;
	}
	.sec1 .block_mail .detail .title:after{
		font-size: 1rem;
		width: 10vw;
		height: 5vw;
		border-radius: 1vw;
	}
	.sec1 .block_mail .check li{
		margin-right: 0;
	}
	.sec1 .block_mail .check li:nth-last-child(n+4){
		margin-bottom: 2.5vw;
	}
	.sec1 .block_mail .check li:not(:last-child){
		margin-bottom: 2.5vw;
	}
	.sec1 .block_mail .check li label:before{
		width: 5vw;
		height: 5vw;
		line-height: 5vw;
		margin-right: 5vw;
		top: calc(50% - 2.5vw);
	}
	.sec1 .block_mail .check li.active label:after{
		width: 3.5vw;
		height: 3.5vw;
		left: 1vw;
		top: calc(50% - 1.5vw);
	}
	.sec1 .block_mail .check li .mwform-checkbox-field-text,
	.sec1 .block_mail .check li .mwform-radio-field-text{
		padding-left: 8.5vw;
		font-size: 1.4rem;
	}
	.sec1 .block_mail .check_policy{
		margin-bottom: 10vw;
	}
	.sec1 .block_mail .check_policy li .hissu{
		font-size: 1.2rem;
		width: 10vw;
		height: 5vw;
		border-radius: 1vw;
		margin-left: 2.5vw;
	}
	.sec1 .block_mail .detail input[type="text"],
	.sec1 .block_mail .detail textarea{
		padding: 5vw;
		border-radius: 1vw;
		font-size: 1.4rem;
	}
	.sec1 .block_mail .detail textarea{
		height: 80vw;
	}
	.sec1 .block_mail .hosoku{
		padding-top: 50px;
		padding-bottom: 70px;
	}
	.sec1 .block_mail .policy_cont{
		margin-bottom: 10vw;
	}
	.sec1 .block_mail .policy_cont .title{
		font-size: 1.6rem;
		margin-bottom: 5vw;
	}
	.sec1 .block_mail .policy{
		height: 80vw;
		padding: 5vw 3.5vw;
		font-size: 1.4rem;
	}
	.sec1 .block_mail .policy .p_detail:not(:last-child){
		margin-bottom: 5vw;
	}
	.sec1 .block_mail .policy .p_detail .p_title{
		margin-bottom: 2.5vw;
	}

	/*----- ボタン */
	.submit_wrap .submit{
		height: 16vw;
	}
	.submit_wrap .submit:before{
		border-radius: 1vw;
	}
	.submit_wrap input[type="submit"]{
		font-size: 1.4rem;
	}



	/*-------------------------------
		確認画面
	-------------------------------*/

	.sec1.confirm_page .block_mail .check li:not(:last-child){
		margin-bottom: 0;
	}



	/*-------------------------------
		完了画面
	-------------------------------*/

	.sec1.thanks_page .second_message{
		font-size: 1.2rem;
	}
	.sec1.thanks_page .submit_wrap{
		margin-top: 15vw;
	}

}