@charset "utf-8";

.form_base{ max-width: 1200px; margin: 0 auto 100px; padding: 0 50px; box-sizing: border-box; position: relative; overflow: hidden;}

.required {
    display: inline-block;
    color: #fff;
    font-size: 0.8em;
    padding: 2px 5px;
    box-sizing: border-box;
	background-color: #D93600;
    border-radius: 3px;
    margin: 0 5px;
}
.form_base input[type="text"],
.form_base input[type="password"],
.form_base textarea {
	-webkit-appearance: none;
	appearance: none;
	font-size: 16px;
	line-height: 1.4;
	/*width: 60%;*/
	margin: 4px 0;
	padding: 8px;
	border: 1px solid #999;
	box-sizing: border-box;
}
.form_base input[type="text"]:hover,
.form_base input[type="password"]:hover,
.form_base textarea:hover{
	border: 1px solid #666;
}
.form_base input[type="text"]:focus,
.form_base input[type="password"]:focus,
.form_base textarea:focus{
	background-color: #ffc;
	border: 1px solid #333;
}
.form_base input.text_name,
.form_base input.text_zip {
	width: 120px;
}
.form_base textarea {
	height: 8em;
	width: 100%;
}
.form_base select {
	font-size:14px;
}

.form_base input[type="submit"],
.form_base input[type="button"] {
	-webkit-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-transition: .3s;
	-ms-transition: .3s;
	transition: .3s;
}
.form_base input[type="submit"] {
	font-size: 15px;
	line-height: 50px;
	font-weight: bold;
	color:#fff;
	background-color: #666;
	width: 260px;
	border-radius: 6px;
}
.form_base input[type="button"] {
	font-size: 0.8em;
	font-weight: bold;
	color:#333;
	background-color: #ccc;
	margin: 0 0 0 5px;
	padding: 6px 10px;
	border: 1px solid #ccc;
}

/*=改行・制限=*/
.form_base .nowrap{	
	white-space: nowrap;
}
/*=入力モード切替 ※IEのみ有効=*/
.form_base .ime_ac {ime-mode: active;}
.form_base .ime_dis {ime-mode: disabled;}

/*=左右寄せ= */
.form_base .align_l {text-align:left!important;}
.form_base .align_r {text-align:right!important;}
.form_base .align_c {text-align:center!important;}
/*上下位置*/
.form_base .align_t {vertical-align: top;}
.form_base .align_b {vertical-align: bottom;}

.form_base input[type="text"],
.form_base textarea {box-sizing:border-box;}
.form_base .min_w2em {min-width:2em;}
.form_base .min_w3em {min-width:3em;}
.form_base .min_w4em {min-width:4em;}
.form_base .min_w5em {min-width:5em;}
.form_base .min_w6em {min-width:6em;}
.form_base .min_w7em {min-width:7em;}
.form_base .min_w8em {min-width:8em;}
.form_base .min_w9em {min-width:9em;}
.form_base .min_w10em {min-width:10em;}

/* 字数幅 */
.form_base .w8em {width:8em;}
.form_base .w12em {width:12em;}
.form_base .w20em {width:20em;}
.form_base .w30em {width:30em;}


/* エラー表示 */
.form_base .err{
	font-size:12px;
	display:block;
	color:#FF0000;
}

/* ページ上部への表示の場合（ファイル容量） */
.form_base form > .err{
	line-height: 1.5;
	padding: 15px;
	border: 1px solid #F00;
	margin: 0 0 30px;
	background: #FFE4E4;
	border-radius: 5px;
}


#subject,
#main .id_personal,
#main .id_add_file{}
.id_personal .surely { font-size: 1.5em; line-height: 1.6; margin-bottom: 40px; font-weight: 600;}
.form_base table{ border-collapse: collapse; border-spacing: 0; font-size: 1.5em; line-height: 1.6; text-align: left; width: 100%;}
.form_base table th,
.form_base table td{ padding: 20px 20px; box-sizing: border-box; margin: 0;}
.form_base table th{ font-weight: 700; width: 250px; text-align: center; border-bottom: 1px solid #d5cdb2; background-color: #f4f2eb;}
.form_base table td{ border-bottom: 1px solid #ebebeb;}

span.input_example{ display: inline-block; font-size: 0.8em;}

/* ラジオボタン */
#content .form_base label.radio{display:inline-block;margin:0 10px 10px 0;position:relative;}
#content .form_base label.radio input{display:none;}
#content .form_base label.radio span{display:inline-block;padding:10px 15px 10px 45px;border-radius:8px;border:1px solid #DDD;cursor:pointer;transition:0.3s;background-color: #fff;}
#content .form_base label.radio span sup{display:inline-block;vertical-align:top;}
#content .form_base label.radio input + span::before{content:"";display:block;width:20px;height:20px;border-radius:40px;box-sizing:border-box;border:1px solid #AAA;position:absolute;top:12px;left:15px; background-color: #fff;}
#content .form_base label.radio input + span::after{transition:0.1s;opacity:0;content:"";display:block;width:10px;height:10px;border-radius:40px;position:absolute;top:17px;left:20px;background-color:#947d3c;}
#content .form_base label.radio input:checked + span{background-color:#dcd2be;}
#content .form_base label.radio input:checked + span::after{opacity:1;}

/* チェックボックス */
#content .form_base .ck_list{display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;}
#content .form_base .ck_list label.ck{margin-right:10px;}
label.ck{ display:inline-block; vertical-align:middle; margin:0 10px 10px 0; position:relative; }
label.ck input{ display:none;}
label.ck span{ display:inline-block; vertical-align:middle; padding:10px 15px 10px 45px; border-radius:4px; border:1px solid #DDD; cursor:pointer; transition:0.3s; background-color: #fff; }
label.ck span sup{ display:inline-block; vertical-align:top;}
label.ck input + span::before{ content:""; display:inline-block; width:20px; height:20px; border-radius:5px; box-sizing:border-box; background-color:#FFF; border:1px solid #AAA; position:absolute; top:12px; left:15px; }
label.ck input + span::after{ transition:0.1s; opacity:0; content:""; display:block; width:5px; height:15px; transform:rotate(40deg); border-bottom:3px solid #947d3c; border-right:3px solid #947d3c; position:absolute; top:12px; left:21px;}
label.ck input:checked + span{background-color:#dcd2be;}
label.ck input:checked + span::after{opacity:1;}
label.ck.reform span{ background-color: #ffd1a3;}
label.ck.reform input + span::after{ opacity: 1!important; width:24px; height:1px; background:#AAA; transform:rotate(-45deg); border-bottom: 0; border-right: 0; position: absolute; top: 22px; left: 13px;}

/* セレクトボタン */
#content .form_base .select_box{display:inline-block;vertical-align:middle;margin-right:5px;overflow:hidden;box-sizing:border-box;position:relative;border:solid 1px #CCC;}
#content .form_base .select_box::after{content:"";display:inline-block;width:0;height:0;margin:auto;position:absolute;top:5px;bottom:0;right:10px;border:5px solid transparent;border-top:7px solid #bbb;}
#content .form_base select{ appearance: none; border-radius: 0; border: 0; width:100%;font-size:1em;line-height:2;padding:8px 1.5em 8px 8px;box-sizing:border-box;cursor:pointer;position:relative;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:#121212;background-color:#FFF;}
#content .form_base select::-ms-expand{display:none;}
#content .form_base select:not(:target){width:120% \9;}

/*住所入力ボタン*/
#content .form_base #put_addr_button1a{ color: #fff; border: none; background-color: #205a32; padding: 5px 10px; box-sizing: border-box; border-radius: 3px;}
#content .form_base #put_addr_button1a:hover{ cursor: pointer;}
.attention { color: #b45c4c; display: block; margin-bottom: 10px;}

/*送信ボタン*/
.agree_box{ text-align: center; margin-top: 50px;}
.agree_box .txt{ font-size: 1.5em; line-height: 1.6; margin-bottom: 25px;}
.agree_box .txt a{ color: #205a32; text-decoration: underline;}
.agree_box .item_wrap{ font-size: 1.5em; line-height: 1.6;}
.send_box{ text-align: center;}
.send_box input{ display: block; margin: 0 auto;}
.send_box input#to_conf_btn_df1{ margin:20px auto 40px; font-size: 2em; padding: 25px 60px; box-sizing: border-box; color: #947d3c; background-color: #fff; border:1px solid #947d3c; font-weight: 700; cursor: pointer;}
.send_box input.reset{ font-size: 1.2em; padding: 10px 20px; box-sizing: border-box; color: #000; background-color: #fff; border: 1px solid #ddd; cursor: pointer; margin: 0 auto; border-radius: 3px;}


/*=============================== 確認画面 ===============================*/

.input_check h2 span{ display: block; font-size: 2em; margin: 0 auto 30px; padding-left: 35px; box-sizing: border-box; position: relative;}
.input_check h2 span:before { content: ''; display: block; width: 20px; height: 20px; background-color: #205a32; position: absolute; top: 0; left: 0; z-index: 0;}
.input_check .intro_text{ font-size: 1.5em; line-height: 2em; margin-bottom: 30px;}
.input_check .agree_box{ font-size: 1.5em; line-height: 2em; text-align: center;}
.input_check .send_box{ text-align: center;}
.input_check .send_box #submit_btn{ display: block; margin: 0 auto; margin:20px auto 40px; font-size: 2em; padding: 25px 60px; box-sizing: border-box; color: #947d3c; background-color: #fff; border:1px solid #947d3c; font-weight: 700; cursor: pointer;}
.input_check .send_box #return_btn{ display: block; font-size: 1.2em; padding: 10px 20px; box-sizing: border-box; color: #000; background-color: #fff; border: 1px solid #ddd; cursor: pointer; margin: 0 auto; border-radius: 3px;}


/*=============================== 完了画面 ===============================*/

#thanks{ text-align: center;}
#thanks dl{ margin-bottom: 60px;}
#thanks dl dt{ font-size: 1.8em; line-height: 1.4; font-weight: 700; margin-bottom: 20px;}
#thanks dl dt span{ background:linear-gradient(transparent 40%, #ffd6d6 40%);}
#thanks dl dd{ font-size: 1.4em; line-height: 1.4;}
#thanks .thanks_under_box .contact_tel{ max-width: 600px; margin: 0 auto; padding: 50px 30px; box-sizing: border-box; margin-bottom: 30px; background-color: #f4f2eb;}
#thanks .thanks_under_box .contact_tel > p{ font-size: 1.4em; line-height: 1.6; margin-bottom: 25px;}
#thanks .thanks_under_box .contact_tel .tel_box{ text-align: center;}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_number{ margin-bottom: 25px; font-size: 1.4em;}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_number a{ font-size: 2.3em; color: var(--c_brown);}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_time{ font-size: 1.3em;}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_time span{ display: inline-block; margin-right: 10px;}
#thanks .thanks_under_box .back_btn{ text-align: center; margin: 60px auto 100px;}
#thanks .thanks_under_box .back_btn a{ display: inline-block; font-size: 1.2em; padding: 10px 20px; box-sizing: border-box; color: #000; background-color: #fff; border: 1px solid #ddd; cursor: pointer; margin: 0 auto; border-radius: 3px; text-decoration: none;}


@media screen and (min-width: 768px) {
.send_box input#to_conf_btn_df1:hover{ background-color: #947d3c; color: #fff;}
.form_base input[type="submit"]:hover { background-color: #21afef;}
.form_base input[type="button"]:hover { background-color: #bbb; border: 1px solid #bbb;}
.input_check .send_box #submit_btn:hover{ background-color: #947d3c; color: #fff;}
.input_check .send_box #return_btn:hover{ background-color: #bbb;}
#thanks .thanks_under_box .back_btn a:hover{ background-color: #bbb;}
}

@media screen and (max-width: 767px) {

.form_base{ margin: 0 auto 50px; padding: 0;}
/* 字数幅 */
.form_base .w8em {width:40%;}
.form_base .w12em {width:60%;}
.form_base .w20em {width:100%;}
.form_base .w30em {width:100%;}
.form_base{ width: 100%; padding: 0;}
.id_personal .surely{font-size: 1.3em; line-height: 1.6; font-weight: normal; margin-bottom: 20px; padding: 0 20px; box-sizing: border-box;}
.form_base table{ font-size: 1.3em; line-height: 1.6;}
.form_base table th,
.form_base table td{ display: block; width: 100%; text-align: left; padding: 10px 20px;}
.form_base table th{ border-bottom: none;}

/*住所入力ボタン*/
#content .form_base #put_addr_button1a{ font-size: 0.8em;}

.agree_box{ margin-top: 20px; padding: 0 20px; box-sizing: border-box;}
.agree_box .txt{ font-size: 1.3em; line-height: 1.6; margin-bottom: 15px;}
.agree_box .item_wrap{ font-size: 1.3em; line-height: 1.6;}
.send_box{ padding: 0 20px; box-sizing: border-box;}
.send_box input#to_conf_btn_df1{ margin: 20px auto 30px; font-size: 1.7em; padding: 15px 10px; width: 100%; max-width: 300px;}
.send_box input.reset{ font-size: 1.2em; padding: 5px 15px;}


/*=============================== 確認画面 ===============================*/

.input_check h2{ padding: 0 20px; box-sizing: border-box;}
.input_check h2 span{ font-size: 1.5em;}
.input_check .intro_text{ font-size: 1.3em; line-height: 1.5em; margin-bottom: 15px; padding: 0 20px; box-sizing: border-box;}
.input_check .agree_box{ font-size: 1.3em; line-height: 1.5em;}
.input_check .send_box #submit_btn{ margin: 20px auto 30px; font-size: 1.7em; padding: 15px 10px; width: 100%; max-width: 300px;}
.input_check .send_box #return_btn{ font-size: 1.2em; padding: 5px 15px;}


/*=============================== 完了画面 ===============================*/

#thanks{ padding: 0 20px; box-sizing: border-box;}
#thanks dl{ margin-bottom: 30px; margin-top: 30px;}
#thanks dl dt{ font-size: 1.6em; margin-bottom: 15px;}
#thanks dl dd{ font-size: 1.3em; line-height: 1.4;}
#thanks .thanks_under_box .contact_tel{ padding: 20px; margin-bottom: 20px;}
#thanks .thanks_under_box .contact_tel > p{ font-size: 1.3em; margin-bottom: 15px;}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_number{ margin-bottom: 15px;}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_number a{ font-size: 1.8em;}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_time{ font-size: 1.2em;}
#thanks .thanks_under_box .contact_tel .tel_box .tel_box_time span{ display: block; margin-right: 0; margin-bottom: 5px;}
#thanks .thanks_under_box .back_btn{ margin: 30px auto 60px;}
#thanks .thanks_under_box .back_btn a{ font-size: 1.5em; padding: 12px; box-sizing: border-box;}
    
}

@media screen and (max-width:374px){

}