@charset "UTF-8";
/* ===================================================================
CSS
 file name  :  contact.css
=================================================================== */
.form_wrap p.lead{
	margin-top: 50px;
}
.form_wrap form{
	border: 1px solid #CCC;
	padding: 70px;
	margin-top: 30px;
}
.form_table{
	width:100%;
	line-height: 1.8;
}
.form_table th{
	width:30%;
	padding:15px 30px 15px 0;
	text-align: left;
	font-weight: 500;
	vertical-align: top;
}
.form_table td{
	width:70%;
	padding:15px 0;
	background:#FFF;
}
.hissu{
	color: #E60012;
	margin: 0 8px;
	padding: 1px 1em;
	border: 1px solid #E60012;
	border-radius: 20px;
	font-weight: 300;
	font-size: 10px;
	font-size: 1.0rem;
}
/*チェックボックス・ラジオボタン基本カスタマイズ*/
input[type="checkbox"],
input[type="radio"]{
	opacity:0;
	-webkit-appearance: none;
	appearance: none;
	position: absolute;
}
label.check,
label.radio{
	position: relative;
	display: block;
	word-break: break-all;
	line-height: 1.8;
}
label.check input[type="checkbox"] + span,
label.radio input[type="radio"] + span{
	position: relative;
	padding: 0 10px 0 30px;
}
label.check span,
label.radio span{
	display: inline-block;
}
label.check input[type="checkbox"],
label.radio input[type="radio"] {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}
/*チェックボックス*/
label.check input[type="checkbox"] + span::before,
label.check input[type="checkbox"] + span::after {
	position: absolute;
	top: 6px;
	left: 0;
	display: inline-block;
	content: '';
	box-sizing: border-box;
}
label.check input[type="checkbox"] + span::before {
	z-index: 0;
	background-color: #FFF;
	width: 18px;
	height: 18px;
	border: 1px #AAAAAA solid;
	border-radius: 3px;
}
label.check input[type="checkbox"] + span::after {
	z-index: 1;
	margin: 3px 6px;
	width: 6px;
	height: 10px;
}
label.check input[type="checkbox"]:checked + span::before {
	background-color: #24ADB4;
	border: 1px #24ADB4 solid;
}
label.check input[type="checkbox"]:checked + span::after {
	border: 2px solid #fff;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
/*ラジオボタン*/
label.radio input[type="radio"] + span::before {
	position: absolute;
	display: inline-block;
	content: '';
	box-sizing: border-box;
	border-radius: 20px;
}
label.radio input[type="radio"] + span::before {
	z-index: 0;
	top: 6px;
	left: 0;
	background-color: #FFF;
	width: 18px;
	height: 18px;
	border: 1px #AAAAAA solid;
}
label.radio input[type="radio"]:checked + span::before {
	border: 6px #24ADB4 solid;
}
.form_table input,
.form_table textarea,
.form_table select{
	width:100%;
	padding: 7px 10px;
	border: 1px solid #AAAAAA;
}
@media screen and (min-width: 769px) {
	.form_table .input_width{
		max-width: 500px;
	}
}
.form_wrap .btn_area{
	margin: 50px auto auto;
	max-width: 400px;
	display: flex;
}
.form_wrap .btn_area .btn_back{
	display: block;
	width: 200px;
	margin-right: 20px;
	border-radius: 50px;
	line-height: 1;
	color: #FFF;
	background: #24ADB4;
	padding: 1.3em 1em;
	transition: 0.7s;
	box-shadow: 0px 2px 6px rgba(0,0,0,0.1);
	border: none;
	background-size: 200% auto;
	background-image: linear-gradient(to right, #777777 0%, #333333 51%, #777777 100%);
}
.form_wrap .btn_area .btn_send{
	display: block;
	width:100%;
	text-decoration:none;
	text-align:center;
	border-radius: 50px;
	line-height: 1;
	color: #FFF;
	background: #24ADB4;
	padding: 1.3em 1em;
	transition: 0.7s;
	box-shadow: 0px 2px 6px rgba(0,0,0,0.1);
	border: none;
	background-size: 200% auto;
	background-image: linear-gradient(to right, #24ADB4 0%, #07858B 51%, #24ADB4 100%);
}
.form_wrap .btn_area .btn_send:hover {
	background-position: right center;
}
.form_wrap .thanks_text{
	border: 1px solid #CCC;
	padding: 70px;
	margin-top: 70px;
}
.form_wrap .thanks_text p.top_link{
	margin-top: 50px;
	text-align: center;
}
/*プライバシーポリシーチェック*/
.form_wrap .privacy_text{
	margin-top: 1em;
}
.form_wrap .privacy_box iframe{
	border: 1px solid #CCC;
	width: 100%;
	height: 400px;
	margin-top: 2em;
	overflow-y: scroll;
}
.form_wrap .privacy_check_area{
	margin-top:2em;
	padding: 1em;
	background-color: #EDEDED;
	text-align: center;
}
.form_wrap .privacy_check_area label{
	display: inline-block;
	padding: 0 2em 0 1em;
}

/*プライバシーポリシーチェック改修20240112*/
.form_wrap .privacy_box2 h3{
	margin: 2em 0 0.5em 0;
	font-weight: 600;
}
.form_wrap .privacy_box2 h3:first-child{
	margin: 0 auto 0.5em auto;
}
.form_wrap .privacy_check_area2{
	margin-top:2em;
	padding: 1em;
	background-color: #EDEDED;
	display: flex;
	justify-content: center;
}
.form_wrap .privacy_check_area2 .check_list{
	display: flex;
	align-items: center;
}
.form_wrap .privacy_check_area2 .check_list label{
	display: inline-block;
	padding: 0 1em;
}
@media screen and (max-width: 768px) {
	.form_wrap p.lead{
		margin-top: 40px;
	}
	.form_wrap form{
		border: none;
		padding: 0px;
		margin-top: 30px;
	}
	.form_table{
		border-top: 1px solid #24ADB4;
	}
	.form_table th{
		display: block;
		width:100%;
		padding:15px 0 0 0;
	}
	.form_table td{
		display: block;
		width:100%;
		padding:10px 0 15px 0;
		background:#FFF;
	}
	/*チェックボックス*/
	label.check input[type="checkbox"] + span::before,
	label.check input[type="checkbox"] + span::after {
		top: 0;
		left: 0;
	}
	/*ラジオボタン*/
	label.radio input[type="radio"] + span::before {
		top: 0;
		left: 0;
	}
	.form_table input,
	.form_table textarea,
	.form_table select{
		padding: 10px 10px;
	}
	.kind_list li{
		margin: 5px 0;
	}
	.form_wrap .btn_area{
		margin: 30px auto auto;
		max-width: 400px;
		display: flex;
	}
	.form_wrap .thanks_text{
		padding: 20px;
		margin-top: 30px;
	}
	.form_wrap .thanks_text p.top_link{
		margin-top: 20px;
	}
}