@charset "utf-8";
.form_base label {
/*display:inline-block;*/
cursor: pointer
}
.form_base table{
font-size: 1.4em;
line-height: 1.4;
letter-spacing: 0.04em;
text-align: left;
width: 100%;
margin: 0 0 20px;
border-collapse: collapse;
border-spacing: 0;
}
.form_base table th,
.form_base table td {
padding: 10px 0;
}
.form_base table th {
width: 160px;
font-weight: bold;
}
.form_base table th .required {
color:#D93600;
}
.form_base input[type="text"],
.form_base input[type="password"],
.form_base textarea {
-webkit-appearance: none;
appearance: none;
font-size: 14px;
line-height: 1.4;
/*width: 60%;*/
margin: 4px 0;
padding: 6px;
border: 1px solid #999;
box-sizing: border-box;
}
.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"],
#put_addr_button,
#return_btn{
-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"],
#return_btn,
#put_addr_button{
font-size: 1.2em;
font-weight: bold;
color:#fff;
background-color: #888;
padding: 6px 10px;
border: 1px solid #888;
border-radius: 15px;
}
#put_addr_button{font-size: 0.8em;}
.form_base input[type="button"]{margin: 0 0 20px 5px;}
#return_btn,
#put_addr_button{margin: 0 0 0 5px;}

@media screen and (min-width: 768px) {
.form_base input[type="submit"]:hover,
#return_btn:hover{
background-color: #21afef;
}
.form_base input[type="button"]:hover,
#put_addr_button:hover{
background-color: #bbb;
border: 1px solid #bbb;
}
}



/*=改行・制限=*/
.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 .w2em {width:2em;}
.form_base .w3em {width:3em;}
.form_base .w4em {width:4em;}
.form_base .w5em {width:5em;}
.form_base .w6em {width:6em;}
.form_base .w7em {width:7em;}
.form_base .w8em {width:8em;}
.form_base .w9em {width:9em;}
.form_base .w10em {width:10em;}
.form_base .w11em {width:11em;}
.form_base .w12em {width:12em;}
.form_base .w13em {width:13em;}
.form_base .w14em {width:14em;}
.form_base .w15em {width:15em;}
.form_base .w20em {width:20em;}
.form_base .w21em {width:21em;}
.form_base .w22em {width:22em;}
.form_base .w23em {width:23em;}
.form_base .w24em {width:24em;}
.form_base .w25em {width:25em;}
.form_base .w26em {width:26em;}
.form_base .w27em {width:27em;}
.form_base .w28em {width:28em;}
.form_base .w29em {width:29em;}
.form_base .w30em {width:30em;}

/* 0.5文字ずつ */
.form_base .w1_5em {width:1.5em;}
.form_base .w2_5em {width:2.5em;}
.form_base .w3_5em {width:3.5em;}
.form_base .w4_5em {width:4.5em;}
.form_base .w5_5em {width:5.5em;}
.form_base .w6_5em {width:6.5em;}
.form_base .w7_5em {width:7.5em;}
.form_base .w8_5em {width:8.5em;}
.form_base .w9_5em {width:9.5em;}

/* % */
.form_base .w20per {width:20%;}
.form_base .w25per {width:25%;}
.form_base .w30per {width:30%;}
.form_base .w40per {width:40%;}
.form_base .w50per {width:50%;}
.form_base .w60per {width:60%;}
.form_base .w70per {width:70%;}
.form_base .w80per {width:80%;}
.form_base .w90per {width:90%;}
.form_base .w100per {width:100%;}


.form_base .err{
	font-size:12px;
	display:block;
	color:#FF0000;
}



.contact_box{ max-width: 960px; margin: 0 auto 100px;}
.contact_box .top_com .top{ font-size: 1.8em; line-height: 2.0; margin-bottom: 50px;}
.contact_box .top_com .top a{ color: #215ab9;}
.contact_box .top_com .btm{ font-size: 1.8em; line-height: 2.0; border: 1px solid #000; box-sizing: border-box; padding: 20px 10px; margin-bottom: 60px;}
.contact_box .top_com .btm a{ color: #215ab9;}
.contact_box .attention{ font-size: 1.4em; line-height: 1.6; text-align: left; margin-bottom: 30px;}

.contact_form{ background-color: #fafafa; padding: 35px; box-sizing: border-box; margin-bottom: 40px;}
/*-------------------------
__contact_style
-------------------------*/
/*sendbtn_reset*/
input[type="submit"],input[type="button"] { border-radius: 0; -webkit-box-sizing: content-box; -webkit-appearance: button; appearance: button; border: none; box-sizing: border-box; cursor: pointer;}
input[type="submit"]::-webkit-search-decoration,input[type="button"]::-webkit-search-decoration { display: none;}
input[type="submit"]::focus,input[type="button"]::focus { outline-offset: -2px;}

/* 20260108追加 ここから*/
/* チェックボックス */
#input .ck_list{display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;}
#input .ck_list label.ck{width:calc((100% - 30px)/4);margin-right:10px;}
#input .ck_list label.ck:nth-child(4n){margin-right:0;}
#input label.ck{display:inline-block;vertical-align:middle;margin-right:10px;position:relative;}
#input label.ck input{display:none;}
#input label.ck span{display:inline-block;vertical-align:middle;padding:0 0 0 30px;cursor:pointer;transition:0.3s;position: relative;}
#input label.ck input + span::before{ content: ""; display: block; position: absolute; background-color: #fff; border-radius: 0%; border: 1px solid #ddd; width: 20px; height: 20px; transform: translateY(-50%); top: 50%; left: 5px;}
#input label.ck input + span::after{ content: ""; display: block; position: absolute; border-bottom: 3px solid #215ab9; border-left: 3px solid #215ab9; opacity: 0; height: 5px; width: 10px; transform: rotate(-45deg); top: 8px; left: 10px;}
#input label.ck input:checked + span::after{opacity:1;}
/* 20260108追加 ここまで*/

h2{ text-align: left; font-size: 2em; font-weight: 700; margin-bottom: 20px;}
.must { font-size: 13px; background-color: #ffb400; font-weight: 700; color: #fff; padding: 0 7px; box-sizing: border-box; border-radius: 3px; display: inline-block; margin-left: 3px;}
#input,#confirm {}
#input table,#confirm table { font-size: 1.5em; line-height: 1.8; text-align: left; width: 100%; border-collapse: collapse; border-spacing: 0;}
#input th,#confirm th{ border-bottom: 1px solid #ddd;}
#input th,#input td,#confirm th,#confirm td { padding: 15px 10px; box-sizing: border-box;}
#input th,#confirm th { font-weight: 700; width: 230px;}
#input td ul,#confirm td ul{ display: flex; align-items: end;}
#input td ul li,#confirm td ul li{ margin-right: 10px;}
.small_text{ font-size: 0.8em;}
#input input { margin: 3px;}
#input input[type="text"],
#input input[type="password"] { font-size: 16px; width: 180px; margin: 2px 0; padding: 8px; box-sizing: border-box; border: 1px solid #ddd;}
#input input[type="button"] { font-size: 14px; background-color: #888; color: #fff; padding: 3px 8px; border-radius: 3px;}
#input input.w20[type="text"] { width: 20%;}
#input input.w40[type="text"] { width: 40%;}
#input input.w60[type="text"] { width: 60%;}
#input input.w80[type="text"] { width: 80%;}
#input input.w100[type="text"] { width: 100%;}
#input textarea { font-size: 16px; height: 200px; width: 100%; margin: 0; padding: 8px; box-sizing: border-box; border: 1px solid #ddd;}
#input select { font-size: 14px;}
#input input[type="checkbox"]:hover + span::before,/*20260108追加*/
#input input[type="text"]:hover,
#input input[type="password"]:hover { border: 1px solid #999;}
#input input[type="text"]:focus,
#input input[type="password"]:focus { background-color: #ffc; border: 1px solid #999;}
input[type="radio"],
input[type="checkbox"]{ 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;}
/*radio*/
.r_box input[type="radio"]:checked + label::after {opacity : 1 ;}
.r_box label { position: relative; cursor: pointer; padding-left: 30px;}
.r_box label::before,
.r_box label::after { content: ""; display: block;  border-radius: 50%; position: absolute; transform: translateY(-50%); top: 50%;}
.r_box label::before { background-color: #fff; border: 1px solid #ccc; border-radius: 50%; width: 20px; height: 20px; left: 5px;}
.r_box label::after { background-color: #000; border-radius: 50%; opacity: 0; width: 12px; height: 12px; left: 10px}
/*check*/
.c_box label { cursor: pointer; padding-left: 30px; position: relative; display: inline-block;}
.c_box label::before,
.c_box label::after { content: ""; display: block;  position: absolute;}
.c_box label::before { background-color: #fff; border-radius: 0%; border: 1px solid #ddd; width: 20px; height: 20px; transform: translateY(-50%); top: 50%; left: 5px;}
.c_box label::after { border-bottom: 3px solid #000; border-left: 3px solid #000; opacity: 0; height: 5px; width: 10px; transform: rotate(-45deg); top: 8px; left: 10px;}
.c_box label:hover::before{ border: 1px solid #999;}
input[type="checkbox"]:checked + label::after { opacity: 1;}
/*pp*/
.pp_box{ font-size: 1.5em; line-height: 1.8; margin-bottom: 30px;}
.pp_box p{ margin-bottom: 15px;}
.pp_box p a{ color: #215ab9;}
/*send*/
.submit{ width: 300px; margin: 0 auto;}
.submit #to_conf_btn,
.submit #submit_btn{ font-size: 2em; height: 80px; font-weight: 700; text-align: center; text-decoration: none; color: #fff; display: block; width: 100%; background-color: #215ab9; border: none; border-radius: 40px;}
.submit #submit_btn{ margin-bottom: 40px;}
.thanks_box{ text-align: center; width: 100%; max-width: 960px; margin: 90px auto 110px;}
.thanks_box .send_icon{ width: 120px; height: auto; margin: 0 auto 40px;}
.thanks_box .send_icon img{ width: 100%; height: auto;}
.thanks_box > h2{ text-align: center; font-size: 2.6em; margin-bottom: 30px;}
.thanks_box > p{ font-size: 1.5em; line-height: 2.2; margin-bottom: 30px;}
.thanks_box .com_data{border: 5px solid #f5f5f5; box-sizing: border-box; max-width: 600px; margin: 0 auto; padding: 35px 0;}
.thanks_box .com_data p.com_logo{ width: 110px; height: auto; margin: 0 auto 15px;}
.thanks_box .com_data p.com_logo img{ width: 100%; height: auto;}
.thanks_box .com_data p.com_name{ font-size: 1.5em; line-height: 1.8; font-weight: 700; margin-bottom: 15px;}
.thanks_box .com_data p.com_name span{ font-size: 1.3em; display: inline-block; margin-right: 10px;}
.thanks_box .com_data{ margin-bottom: 40px;}
.thanks_box .com_data ul{ display: flex; justify-content: center; font-size: 1.5em; line-height: 1.8;}
.thanks_box .com_data ul li{}
.thanks_box .com_data ul li:nth-child(1){ margin-right: 10px;}
.thanks_box .com_data ul li a{ color: #000;}
.thanks_box .go_top{}
.thanks_box .go_top a{ color: #000; font-size: 1.4em; background-color: #ddd; display: inline-block; padding: 15px 30px; text-decoration: none; border-radius: 25px;}
/* 20260108追加 ここから*/
.thanks_box a.download { display: inline-block; text-decoration: none; margin-bottom: 30px; padding: 30px 50px 27px; box-sizing: border-box; border-radius: 50px; color: #fff; font-size: 2em; line-height: 1.4em; background-color: #215AB9; font-weight: 700; transition: .3s;}
/* 20260108追加 ここまで*/
.transmit{ font-size: 1.5em; line-height: 1.8; margin-bottom: 40px;}

.form_base #input input[type="text"]:hover,
.form_base #input input[type="password"]:hover,
.form_base #input textarea:hover{ border: 1px solid #666;}
.form_base #input .c_box label:hover::before{ border: 1px solid #666;}
.form_base #input input[type="text"]:focus,
.form_base #input input[type="password"]:focus,
.form_base #input textarea:focus{ background-color: #ffc; border: 1px solid #333;}

@media screen and (min-width: 768px) {
.pc_none{ display: none;}
.contact_box .top_com .top a,
.contact_box .top_com .btm a,
.pp_box p a,
.submit #to_conf_btn,
.submit #submit_btn,
.thanks_box .go_top a,
.thanks_box .com_data ul li a{ cursor: pointer; -webkit-transition: .3s; -ms-transition: .3s; transition: .3s;}
.contact_box .top_com .top a:hover,
.contact_box .top_com .btm a:hover,
.pp_box p a:hover{ color:#1987e6;}
.submit #to_conf_btn:hover,
.submit #submit_btn:hover{ background-color:#1987e6;}
.thanks_box .go_top a:hover{ background-color: #f5f5f5;}
.thanks_box .com_data ul li a:hover{ color: #888;}
a[href*="tel:"] { pointer-events: none; cursor: default; text-decoration: none;}
.thanks_box a.download:hover{opacity: .7;}
}

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

.sp_none{ display: none;}
    
.contact_box{ width: 100%; margin: 0 auto 50px;}
.contact_box .top_com{ padding: 0 20px; box-sizing: border-box;}
.contact_box .top_com .top{ font-size: 1.4em; line-height: 1.8; margin-bottom: 30px; font-weight: 700;}
.contact_box .top_com .btm{ font-size: 1.4em; line-height: 1.8; margin-bottom: 30px; font-weight: 700;}
.contact_box .attention{ padding: 0 20px; box-sizing: border-box; font-size: 1.3em; margin-bottom: 30px;}

/* 20260108追加 ここから*/
/* チェックボックス */
#input .ck_list{ flex-wrap: nowrap; flex-direction: column;}
#input .ck_list label.ck{width:fit-content;margin-right:0; margin-bottom: 6px;}
#input .ck_list label.ck:nth-child(4n){margin-bottom: 0;}
/* 20260108追加 ここまで*/

.contact_form{ padding:0; margin-bottom: 30px;}
h2{ font-size: 1.8em; margin-bottom: 15px; padding: 0 20px; box-sizing: border-box;}
#input table,#confirm table { font-size: 1.4em;}
#input tr{ border-bottom: 1px solid #ddd;}
#input th,#confirm th{ border-bottom: none;}
#input th,#confirm th{ display: block; padding: 20px 20px 2px 20px;}
#input td,#confirm td{ display: block; padding: 2px 20px 20px 20px;}
#input th,#confirm th { width: 100%;}
#input td ul,#confirm td ul{ display: block;}
#input input[type="button"] { font-size: 12px;}
#input input.w20[type="text"] { width: 40%;}
#input input.w40[type="text"],
#input input.w60[type="text"],
#input input.w80[type="text"],
#input input.w100[type="text"] { width: 100%;}
/*pp*/
.pp_box{ font-size: 1.4em; margin-bottom: 20px; padding: 0 20px; box-sizing: border-box;}
/*send*/
.submit{ width: 100%; margin: 0 auto; padding: 0 20px; box-sizing: border-box;}
.submit #to_conf_btn { /*font-size: 2.3em; height: 70px;*/}
.submit #submit_btn{ margin-bottom: 30px;}

.thanks_box{ padding: 0 20px; box-sizing: border-box; margin: 40px auto 60px;}
.thanks_box .send_icon{ margin: 0 auto 20px;}
.thanks_box > h2{ font-size: 2em; line-height: 1.5; margin-bottom: 20px;}
.thanks_box > p{ font-size: 1.4em; line-height: 1.8;}
.thanks_box .com_data{ padding: 25px 0; margin-bottom: 30px;}
.thanks_box .com_data p.com_logo{ width: 90px; margin: 0 auto 10px;}
.thanks_box .com_data p.com_name{ font-size: 1.4em; line-height: 1.8; margin-bottom: 5px;}
.thanks_box .com_data p.com_name span{ margin-right: 5px;}
.thanks_box .com_data ul{ display: block;}

.transmit{ font-size: 1.4em; line-height: 1.8; margin-bottom: 20px;}

}