@charset "utf-8";
/* ===================================================
	Contact CSS
====================================================== */

/* ▼ mailform PRO のCSS上書き ▼ */
form#mailformpro .mfp_area dl dt,
form#mailformpro .mfp_area dl dd { font-size: 16px; border: none; float: none; }
form#mailformpro label { white-space: normal; border-radius: 0; margin: 0; display: inline; }
form#mailformpro .mfp_area .mfp_colored { background-color: none !important;}
form#mailformpro .mfp_area .mfp_not_checked,
form#mailformpro .mfp_area .mfp_checked,
form#mailformpro .mfp_area .mfp_colored { margin: 7px 10px 0 0 !important; padding: 0; background: none !important; box-shadow: none; border: none; }
body { overflow-x: auto !important; }
.mfp_element_button{ text-shadow: none !important; }
div.mfp_buttons button{ color:#000; }
#form_area form#mailformpro label{ border: none;}
form#mailformpro label.mfp_checked{ background-color: transparent !important;}
/* ▲ mailform PRO のCSS上書き ▲ */

/* ---------------------------------------------------
Section Lead
------------------------------------------------------ */
#lead{ padding: 70px 0 0;}
/* box_info */
.box_info { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 70px auto; background: #fff; border: solid 1px #d3d5d4;}
.box_info::before { content: ''; width: 1px; height: 130px; background: #d3d5d4; order: 1; margin: 40px 0; }
/* faq */
.box_info .faq { width: 55%; text-align: center; padding: 40px 0; }
.box_info .faq_tit { font-size: 20px; }
.box_info .faq .btn{ display: inline-block; padding: 20px 0;}
.box_info .faq .txt { font-size: 15px; }
/* contact */
.box_info .contact { order: 2; width: 44%; text-align: center; padding: 40px 0; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.box_info .contact_tit { font-size: 20px; }
.box_info .telnum{ font-size: 24px; padding: 15px 0 10px;}
.box_info .contact .tel-link { display: inline-block; line-height: 1; font-size: 30px; }
.box_info .contact .time { display: inline-block; font-size: 15px; }

@media screen and (max-width: 600px) {
#lead{ padding: 40px 5% 50px;}
/* box_info */
.box_info { margin: 20px auto 0; max-width: 100%; justify-content: center; }
.box_info::before { content: ''; width: 100%; height: 1px; margin: 15px 5%; }
.box_info .faq,
.box_info .contact { width: 100%; max-width: none; }
/* faq */
.box_info .faq { padding: 8vw 5% 0;}
.box_info .faq_tit { font-size: 16px; }
.box_info .faq .btn{ width: 100%; display: flex; justify-content: center;}
.box_info .faq .txt { font-size: 12px; }
/* contact */
.box_info .contact { padding: 0 5% 8vw; }
.box_info .contact_tit { font-size: 16px; padding-top: 0;}
.box_info .telnum{ font-size: 18px; padding: 10px 0 0;}
.box_info .contact .tel-link { display: inline-block; line-height: 1; font-size: 24px; }
.box_info .contact .time { display: inline-block; font-size: 14px; }
}

/* ---------------------------------------------------
Mailform Pro
------------------------------------------------------ */
.box_form{ padding: 0 0 150px;}
form#mailformpro .mfp_area > dl input,
form#mailformpro .mfp_area > dl textarea { font-size: 15px; font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif; box-shadow: none; }
form#mailformpro .mfp_area > dl input:focus,
form#mailformpro .mfp_area > dl textarea:focus { outline: none; border: 2px solid #aaa; }
form#mailformpro .mfp_area > dl input { /* max-width: 100%; */ width: 60%; height: 40px; padding: 10px; background-color: #f2f2f2; border: none; box-sizing: border-box; }
form#mailformpro .mfp_area > dl textarea { border-radius: 0; }
form#mailformpro .mfp_area select::-ms-expand { display: none; }
form#mailformpro .mfp_area { width: 100%; }
form#mailformpro .mfp_area > dl { width: 100%; box-sizing: border-box; display: flex; }
form#mailformpro .mfp_area > dl dt,
form#mailformpro .mfp_area > dl dd { margin: 0; box-sizing: border-box; align-items: center; border-bottom: 1px solid #d5d7d7; text-align: left; }
form#mailformpro .mfp_area > dl dt { width: 30%; display: flex; justify-content: flex-start; align-items: flex-start; padding: 25px 25px 25px 57px; position: relative;}
form#mailformpro .mfp_area > dl dd { width: 70%; display: flex; padding: 15px 0; flex-wrap: wrap; }
form#mailformpro .mfp_area > dl dd > ul { display: flex; justify-content: left; flex-wrap: wrap; width: 100%; }
form#mailformpro .mfp_area > dl dd > ul li { margin: 0 15px 10px 0; text-indent: -1.5em; padding-left: 1.5em; }
form#mailformpro .mfp_area > dl dd div p { font-size: 13px; text-align: left; display: block; width: 100%; }

/* テキストエリア */
form#mailformpro .mfp_area .text_box dd { padding: 15px 0; }
form#mailformpro .mfp_area .text_box textarea { padding: 10px; width: 87%; max-width: 100%; height: 200px; border: none; background-color: #f2f2f2; box-sizing: border-box; }

/* プラポリ */
form#mailformpro .pii_check { /* text-align: center; margin-top: 25px; */ line-height: 2.3; }
form#mailformpro .pii_check a { text-decoration: underline; }
form#mailformpro .pii_check a:hover { text-decoration: none; }

form#mailformpro .mfp_area > dl input[type="checkbox"] { appearance: none; height: 16px; width: 16px; margin: 0 5px 5px 0; border: 1px solid #aaa; background-color: #f2f2f2; border-radius: 0; position: relative; }
form#mailformpro .mfp_area > dl input[type="checkbox"]:checked { border: 1px solid #aaa; background-color: #bd9b58; }
form#mailformpro .mfp_area > dl input[type="checkbox"]:checked::before { content: ""; display: block; width: 10px; height: 5px; border-bottom: solid 2px #fff; border-left: solid 2px #fff; transform: rotate(-45deg); position: absolute; top: 0; right: 0; left: 0; margin: 5px auto; }
form#mailformpro .mfp_area > dl input[type="checkbox"]:focus-visible { outline: 2px solid #1d9bf0; outline-offset: 2px; }

/* 送信ボタン */
form#mailformpro .mfp_buttons { margin: 50px auto 40px; width: 96%; text-align: center; }
form#mailformpro .mfp_buttons button { width: 35%; padding: 20px 0; font-size: 16px; background: #1a3c34; color: #fff; border: none; border-radius: 0; font-family: "Space Mono", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;  transition: all 0.5s; text-shadow: none; }
form#mailformpro .mfp_buttons button:hover { background-color: #395c54; font-size: 16px; text-decoration: none;}

/* 必須入力項目と任意入力項目 */
.box_must { margin: 0 auto 15px; text-align: left;}
.required,
.free{ color: #fff; padding: 1px 0; font-size: 12px; letter-spacing: 0.08em; margin-right: 10px; width: 42px; box-sizing: border-box; display: inline-block; text-align: center;}
form#mailformpro .mfp_area > dl dt .required,
form#mailformpro .mfp_area > dl dt .free{ position: absolute; top: 26px; left: 0; margin: 0; display: block; height: 1.8em;}

/* 必須入力項目 */
.required{ background-color: #bd9b58;}

/* 任意入力項目 */
.free{ background-color: #acb0af;}

/* エラー表示 */
form#mailformpro div.mfp_err { margin: 5px 0px 0px 15px; padding: 3px 0px 5px 17px; background-position: 0px 6px; text-indent: 0;}
form#mailformpro label.mfp_checked { padding: 0; border: none; box-shadow: none; opacity: 1; }
form#mailformpro .pii_check div.mfp_err { /*width: 25%;*/ margin: 4px auto 0px; }
form#mailformpro .mfp_not_checked { opacity: 1; padding: 0;}

.box_form .msg{ text-align: center;}

@media screen and (max-width:600px){
.box_form{ padding: 0 0 70px;}
form#mailformpro .mfp_area > dl input,
form#mailformpro .mfp_area > dl textarea { font-size: 16px;}
form#mailformpro .mfp_area > dl input { /* max-width: 100%; */ width: 100%; height: 40px; padding: 10px; background-color: #f2f2f2; border: none; box-sizing: border-box; }
form#mailformpro .mfp_area input,
form#mailformpro .mfp_area textarea { -webkit-appearance: none; }
form#mailformpro .mfp_area { border-bottom: none; border-top: none;}
form#mailformpro .mfp_area > dl { flex-wrap: wrap; border-bottom: none; margin-bottom: 10px; }
form#mailformpro .mfp_area > dl dt,
form#mailformpro .mfp_area > dl dd { width: 100%; padding: 10px 0; border-bottom: none; }
form#mailformpro .mfp_area > dl dt { justify-content: space-between; padding: 0; }
form#mailformpro .mfp_area > dl dd > ul li { width: 100%; margin-bottom: 10px; }
form#mailformpro .mfp_area > dl dd > ul li:last-child { margin-bottom: 0; }

/* テキストエリア */
form#mailformpro .mfp_area .text_box dd { padding: 15px 0; }
form#mailformpro .mfp_area .text_box textarea { width: 100%; }

/* プラポリ */
form#mailformpro .pii_check { text-align: left; margin-top: 0; font-size: 13px; }

/* 送信ボタン */
form#mailformpro .mfp_buttons { margin: 30px auto 20px; }
form#mailformpro .mfp_buttons button { width: 100%; }

/* 必須入力項目と任意入力項目 */
form#mailformpro .mfp_area > dl dt .required,
form#mailformpro .mfp_area > dl dt .free{ left: inherit; top: 0; right: 0;}

/* エラー表示 */
form#mailformpro .pii_check div.mfp_err { width: 100%; }

.box_form .msg{ text-align: left; padding: 0 5%;}
}

/* ---------------------------------------------------
Section Lead ( Thanks Page )
------------------------------------------------------ */
#thanks #lead{ padding: 70px 0 100px;}
#thanks #lead .tel{ font-size: 24px; padding: 15px 0 10px;}
#thanks #lead .tel .tel-link{ display: inline-block; line-height: 1; font-size: 30px; }
#thanks #lead .open{ display: inline-block; font-size: 15px;}

@media screen and (max-width:600px){
#thanks #lead{ padding: 50px 0 70px;}
}