/*==============================================
*	parts（各ページ共通のデザイン）
==============================================*/
.back_link_btn {
	position: relative;
	font-weight: 500;
	font-size: 16px;
	line-height: 23px;
text-align: center;
color: #000000;
	display: inline-block;
	padding: 0 0 0 45px;
}
.back_link_btn::before{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 30px;
	height: 30px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background: #4F4F4F;
}
.back_link_btn::after{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 13px;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top: 2px solid #B6E126;
	border-right: 2px solid #B6E126;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg);
}
/* お問合せ */
.form_box {
margin-bottom: 40px;
}
.form_txt {
display: flex;
align-items: center;
justify-content: flex-start;
font-weight: 500;
font-size: 18px;
line-height: 26px;
margin-bottom: 15px;
}
.policy_link {
/* border-bottom: 1px solid #000; */
}
.required {
font-weight: 400;
font-size: 12px;
line-height: 15px;
background: #E4E9E1;
padding: 5px 10px;
margin-left: 14px;
}
.mw_wp_form input[type="email"],
.mw_wp_form input[type="tel"],
.mw_wp_form input[type="text"],
.mw_wp_form textarea {
width: 100%;
	padding: 1em;
	font-size: 16px;
background: #FFFFFF;
border: 1px solid #D2D2D2;
}
.mw_wp_form textarea {
height: 300px;
}
.form_example {
font-weight: 400;
font-size: 12px;
line-height: 17px;
margin-top: 15px;
margin-bottom: 15px;
color: #949494;
}
.mwform-radio-field span {
position: relative;
cursor: pointer;
padding-left: 30px;
}
.mwform-radio-field span::before,
.mwform-radio-field span::after {
content: "";
display: block; 
border-radius: 50%;
position: absolute;
transform: translateY(-50%);
top: 50%;
}
.mwform-radio-field span::before {
background-color: #fff;
border: 1px solid #ddd;
border-radius: 50%;
width: 20px;
height: 20px;
left: 5px;
}
.mwform-radio-field span::after {
background-color: #9BC11D;
border-radius: 50%;
opacity: 0;
width: 16px;
height: 16px;
left: 7px
}
input:checked + span::after {
opacity: 1;
}
.visually-hidden {
position: absolute;
white-space: nowrap;
width: 1px;
height: 1px;
overflow: hidden;
border: 0;
padding: 0;
clip: rect(0 0 0 0);
clip-path: inset(50%); 
margin: -1px;
}
.form_checkbox {
display: flex;
align-items: center;
}


/* 同意チェックボックス追加 */
label.agree-box {
display: inline-block;
padding-left: 2em;
letter-spacing: 0.13em;
line-height: 1.8;
}

label.agree-box .inline--block.first {
	position: relative;
	transition: all 0.1s;
	padding: 5px 0 5px 30px;
	cursor: pointer;
}
.policy--link {
cursor: pointer;
padding: 5px 0 5px 0px;
font-weight: bold;
text-decoration: underline;
}

.policy--link:hover {
text-decoration: none;
color:#79a100
}

label.agree-box .inline--block.first::before {
	background: #fff;
	border: 1px solid #231815;
	content: '';
	display: block;
	height: 16px;
	left: -13%;
	margin-top: -7px;
	position: absolute;
	top: 50%;
	width: 16px;
}

label.agree-box .inline--block.first::after {
	border-right: 3px solid #9BC11D;
	border-bottom: 3px solid #9BC11D;
	content: '';
	display: block;
	height: 11px;
	left: -11%;
	margin-top: -6px;
	opacity: 0;
	position: absolute;
	top: 52%;
	transform: rotate(45deg);
	width: 6px;
}

input.agree--checked[type=checkbox]:checked + .inline--block.inline--block.first::after {
opacity: 1;
}

/* 改行調整 */
.inline--block.first {
text-indent: -2em;
}

.inline--block.second {
margin-right: 12px;
}

.inline--block {
display: inline-block;
}

/* 同意のみ必須調整 */
.agree-box .required {
display: inline-block;
margin-left: 0;
}

/* 送信前注釈 */
.form_example.note {
padding-left: 1em;
margin-top: 3em;
margin-bottom: 0;
text-indent: -1em;
}


.mwform-checkbox-field-text {
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 5px 0 5px 30px;
	position: relative;
	width: auto;
}
.mwform-checkbox-field-text::before {
	background: #fff;
	border: 1px solid #231815;
	content: '';
	display: block;
	height: 16px;
	left: 5px;
	margin-top: -8px;
	position: absolute;
	top: 50%;
	width: 16px;
}
.mwform-checkbox-field-text::after {
	border-right: 3px solid #9BC11D;
	border-bottom: 3px solid #9BC11D;
	content: '';
	display: block;
	height: 9px;
	left: 10px;
	margin-top: -7px;
	opacity: 0;
	position: absolute;
	top: 55%;
	transform: rotate(45deg);
	width: 5px;
}
input[type=checkbox]:checked + .mwform-checkbox-field-text::after {
	opacity: 1;
}
input[type="submit"] {
display: flex;
align-items: center;
justify-content: center;
width: 178px;
height: 66px;
font-family: 'Noto Sans JP';
font-style: normal;
font-weight: 700;
font-size: 18px;
line-height: 26px;
letter-spacing: 0.1em;
color: #FFFFFF;
border: 2px solid #FFFFFF;
background: linear-gradient(90deg, #FFA731 -0.97%, #FFC531 100%);
}
input[type="submit"]:hover {
color: #FF9911;
background: #FFFFFF;
border: 2px solid #FF9911;
cursor: pointer;
}

/* 送信完了 */
.contace_thx_txt {
font-weight: 700;
font-size: 14px;
line-height: 200%;
letter-spacing: 0.1em;
color: #333333;
}
.contace_thx_phone {
display: block;
font-family: 'Prompt';
font-style: normal;
font-weight: 500;
font-size: 24px;
line-height: 100%;
letter-spacing: 0.018em;
color: #000000;
background-image: url(../img/i-phone.svg);
background-repeat: no-repeat;
background-size: contain;
padding-left: 40px;
margin-bottom: 70px;
}

/* 404 */
.not_found_txt {
font-weight: 700;
font-size: 16px;
line-height: 200%;
letter-spacing: 0.1em;
text-align: center;
}
/* policy */
.policy_txt {
font-weight: 400;
font-size: 14px;
line-height: 200%;
}
.policy_h2 {
font-weight: 500;
font-size: 20px;
line-height: 29px;
letter-spacing: 0.05em;
border-bottom: 1px solid #808080;
margin-bottom: 12px;
padding: 10px 0px;
}
.policy_p {
font-weight: 400;
font-size: 14px;
line-height: 200%;
color: #3A3A3A;
}
.policy_link {
display: flex;
width: 100%;
max-width: 360px;
color: #FFFFFF;
background: #4F4F4F;
background-image: url(../img/i_blank.svg);
background-repeat: no-repeat;
background-size: 20px;
background-position: 2em 49%;
padding: 13px 0px 16px 2em;
justify-content: center;
}

.form_checkbox .form_txt {
margin-bottom: 0;
}

input.submit--btn[disabled="disabled"] {
opacity: .5;
}

input.submit--btn[disabled="disabled"]:hover {
color: #FFFFFF;
border: 2px solid #FFFFFF;
background: linear-gradient(90deg, #FFA731 -0.97%, #FFC531 100%);
cursor: no-drop;
}

/*==============================================
*	layout（レイアウト用style）
==============================================*/
.main {
padding-top: 80px;
}
/* お問合せ */
.form_wrapper {
max-width: 600px;
padding: 100px 0;
margin: 0 auto;
}
.radio_box {
display: flex;
flex-direction: column;
}
/* 送信完了 */
.contace_thx_box {
max-width: 705px;
padding: 100px 0;
margin: auto;
}
.contace_thx_txt {
margin-bottom: 60px;
}
/* 404 */
.not_found_box {
max-width: 1000px;
padding: 100px 0;
margin: auto;
}
.not_found_back {
text-align: center;
margin-top: 35px;
}
/* policy */
.policy_wrapper {
max-width: 1000px;
padding: 100px 0;
margin: auto;
}
.policy_box {
margin-top: 60px;
}
/****************************************
				レスポンシブ
*****************************************/
@media screen and (min-width: 1400px) {}
@media screen and (min-width: 1025px) and (max-width: 1399px) {}
@media screen and (max-width: 1024px) {
.main {
	padding-top: 0;
}
.form_wrapper {
	padding: 60px 20px;
}
.contace_thx_box {
	padding: 60px 20px;
}
.not_found_box {
	padding: 60px 20px;
}
.policy_wrapper {
	padding: 60px 20px;
}
}
@media screen and (max-width: 768px) {}
@media screen and (max-width: 640px) {
.not_found_txt {
	text-align: left;
}
.form_txt {
	font-size: 14px;
}
}
