@charset "UTF-8";

/*-------------------------
__form_base
-------------------------*/
#content .form_base{width:100%;max-width:1100px;margin:0 auto 100px;}
#content .form_base .form_txt{font-size:1.5em;line-height:1.6;text-align:center;margin:40px 0;}
#content .form_base table{width:100%;border-collapse:collapse;text-align:left;margin:0 0 50px;}
#content .form_base table + .sub_ttl{margin:30px 0 20px;}
#content .form_base table tr th,
#content .form_base table tr td{font-size:1.5em;padding:30px 30px 30px 0;box-sizing:border-box;border-bottom:1px solid #DDD;}
#content .form_base table tr th{width:16em;line-height:2;text-align:left;vertical-align:top;padding-top:36px;}
#content .form_base table tr td{line-height:2;}
#content .form_base table tr td dl{display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}
#content .form_base table tr td dl + dl{margin:10px 0 0;padding:10px 0 0;border-top:1px solid #ededed;}
#content .form_base table tr td dl dt{width:10em;font-weight:700;}
#content .form_base table tr td dl dd{width:calc(100% - 11em);}
#content .form_base #reset_btn,
#content .form_base #return_btn{display:block;margin:20px auto 0;padding:13px 30px 14px;}
#content .form_base #to_conf_btn_df1,
#content .form_base #submit_btn{display:block;width:380px;font-size:2.3em;font-weight:700;line-height:4em;margin:20px auto;padding:0;border-radius:5px;color:#000;background-color:#FFDD17;border:none;}
#content .form_base .err{font-size:14px;display:block;margin:5px 0;color:#FF0000;}
#content .form_base .req{display:inline-block;font-weight:700;line-height:1;text-align:center;margin:5px;padding:3px 8px;box-sizing:border-box;border-radius:2px;color:#FFF;background-color:#F00;}
#content .form_base .red{color:#005196;font-weight:700;}
#content .form_base label{display:inline-block;}
/*=== iOSでのデフォルトスタイルをリセットここから ===*/
#content .form_base input,textarea,select,button{font-family:inherit;}
#content .form_base textarea,
#content .form_base button,
#content .form_base input[type="text"],
#content .form_base input[type="submit"],
#content .form_base input[type="button"],
#content .form_base input[type="reset"]{font-weight:400;-webkit-border-radius:0px;-moz-border-radius:0px;border-radius:0px;-webkit-box-sizing:content-box;-webkit-appearance:none;appearance:button;box-sizing:border-box;cursor:pointer;border:none;transition:all .3s;}
#content .form_base input[type="submit"]::-webkit-search-decoration,
#content .form_base input[type="button"]::-webkit-search-decoration,
#content .form_base input[type="reset"]::-webkit-search-decoration{display:none;}
#content .form_base input[type="submit"]::focus,
#content .form_base input[type="button"]::focus,
#content .form_base input[type="reset"]::focus{outline-offset:-2px;}
#content .form_base select{-webkit-appearance: none;-moz-appearance: none;appearance: none;border: none;outline: none;background: transparent;}
/*=== iOSでのデフォルトスタイルをリセットここまで ===*/
/* 改行・制限 */
#content .form_base .nowrap{white-space:nowrap;}
/* 入力モード切替 ※IEのみ有効 */
#content .form_base .ime_ac{ime-mode:active;}
#content .form_base .ime_dis{ime-mode:disabled;}
/* 左右寄せ */
#content .form_base .align_l{text-align:left!important;}
#content .form_base .align_r{text-align:right!important;}
#content .form_base .align_c{text-align:center!important;}
/* 上下位置 */
#content .form_base .align_t{vertical-align:top;}
#content .form_base .align_b{vertical-align:bottom;}
/* 字数幅 */
#content .form_base input[type="text"],
#content .form_base textarea{vertical-align:middle;box-sizing:border-box;}
#content .form_base .min_w2em {min-width:2em;}
#content .form_base .min_w3em {min-width:3em;}
#content .form_base .min_w4em {min-width:4em;}
#content .form_base .min_w5em {min-width:5em;}
#content .form_base .min_w6em {min-width:6em;}
#content .form_base .min_w7em {min-width:7em;}
#content .form_base .min_w8em {min-width:8em;}
#content .form_base .min_w9em {min-width:9em;}
#content .form_base .min_w10em {min-width:10em;}
#content .form_base .w2em {width:2em;}
#content .form_base .w3em {width:3em;}
#content .form_base .w4em {width:4em;}
#content .form_base .w5em {width:5em;}
#content .form_base .w6em {width:6em;}
#content .form_base .w7em {width:7em;}
#content .form_base .w8em {width:8em;}
#content .form_base .w9em {width:9em;}
#content .form_base .w10em {width:10em;}
#content .form_base .w11em {width:11em;}
#content .form_base .w12em {width:12em;}
#content .form_base .w13em {width:13em;}
#content .form_base .w14em {width:14em;}
#content .form_base .w15em {width:15em;}
#content .form_base .w20em {width:20em;}
#content .form_base .w21em {width:21em;}
#content .form_base .w22em {width:22em;}
#content .form_base .w23em {width:23em;}
#content .form_base .w24em {width:24em;}
#content .form_base .w25em {width:25em;}
#content .form_base .w26em {width:26em;}
#content .form_base .w27em {width:27em;}
#content .form_base .w28em {width:28em;}
#content .form_base .w29em {width:29em;}
#content .form_base .w30em {width:30em;}
/* 0.5文字ずつ */
#content .form_base .w1_5em {width:1.5em;}
#content .form_base .w2_5em {width:2.5em;}
#content .form_base .w3_5em {width:3.5em;}
#content .form_base .w4_5em {width:4.5em;}
#content .form_base .w5_5em {width:5.5em;}
#content .form_base .w6_5em {width:6.5em;}
#content .form_base .w7_5em {width:7.5em;}
#content .form_base .w8_5em {width:8.5em;}
#content .form_base .w9_5em {width:9.5em;}
/* % */
#content .form_base .w20per {width:20%;}
#content .form_base .w25per {width:25%;}
#content .form_base .w30per {width:30%;}
#content .form_base .w40per {width:40%;}
#content .form_base .w50per {width:50%;}
#content .form_base .w60per {width:60%;}
#content .form_base .w70per {width:70%;}
#content .form_base .w80per {width:80%;}
#content .form_base .w90per {width:90%;}
#content .form_base .w100per {width:100%;}
/* マージン */
#content .form_base .mt10{margin-top:10px;}
#content .form_base .mr10{margin-right:10px;}
#content .form_base .mb10{margin-bottom:10px;}
#content .form_base .ml10{margin-left:10px;}
/* 入力欄 */
#content .form_base input[type="text"]{font-size:1em;line-height:2;padding:8px;border:solid 1px #ccc;}
#content .form_base input[type="text"] + span:not(.err),
#content .form_base .select_box + span:not(.err),
#content .form_base span:not(.err) + .select_box{ margin-left:10px;}
#content .form_base span:not(.err) + input[type="text"]{ margin:2px 0 2px 10px;}
#content .form_base .textarea_wrap{position:relative;}
#content .form_base .textarea_wrap textarea{width:100%;height:16em;font-size:1em;line-height:1.4;padding:8px;border:solid 1px #ccc;box-sizing:border-box;}
#content .form_base .textarea_wrap .placeholder{color:#AAA;position:absolute;top:8px;right:8px;bottom:8px;left:8px;pointer-events:none;}
#content .form_base button,
#content .form_base input[type="button"]{line-height:1;padding:17px 20px 17px;background-color:#e9e9ed;border:solid 1px #ccc;text-transform:uppercase;color:#555;vertical-align:top;border-radius:4px;}
/* ラジオボタン */
#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;}
#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:15px;left:15px;}
#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:20px;left:20px;background-color:#005196;}
#content .form_base label.radio input:checked + span{background-color:#ECF3FA;}
#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{width:calc((100% - 20px)/3);margin-right:10px;}
#content .form_base .ck_list label.ck:nth-child(3n){margin-right:0;}
#content .form_base label.ck{display:inline-block;vertical-align:middle;margin:0 10px 10px 0;position:relative;}
#content .form_base label.ck input{display:none;}
#content .form_base label.ck span{display:inline-block;vertical-align:middle;padding:10px 15px 10px 45px;border-radius:8px;border:1px solid #DDD;cursor:pointer;transition:0.3s;}
#content .form_base label.ck span sup{display:inline-block;vertical-align:top;}
#content .form_base 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:16px;left:15px;}
#content .form_base label.ck input + span::after{transition:0.1s;opacity:0;content:"";display:block;width:5px;height:15px;transform:rotate(40deg);border-bottom:3px solid #005196;border-right:3px solid #005196;position:absolute;top:16px;left:21px;}
#content .form_base label.ck input:checked + span{background-color:#ECF3FA;}
#content .form_base label.ck input:checked + span::after{opacity:1;}
/* セレクトボタン */
#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:5px solid #DDD;}
#content .form_base select{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;}/*ie9対策*/
/* フォーカス処理 */
#content .form_base input[type="text"]:focus,
#content .form_base textarea:focus{background:#efefef;}
/* 入力禁止 */
#content .form_base input.disabled,
#content .form_base textarea.disabled{color:#878787;background-color:#efefef;pointer-events:none;}
/* 郵便番号 */
#content .form_base .add{position:relative;}
/* 電話希望時間 */
#content .form_base .hope_tel{margin:8px 0 0;}
/* カレンダー */
#ui-datepicker-div.ui-widget{width:auto;font-size:1.6em;padding:10px;}
#ui-datepicker-div.ui-widget .ui-datepicker-header{background-color:#ECF3FA;border:none;}
#ui-datepicker-div.ui-widget select.ui-datepicker-month,
#ui-datepicker-div.ui-widget select.ui-datepicker-year{width:5em;margin:0 3px;}
#ui-datepicker-div.ui-widget .ui-datepicker-calendar span,
#ui-datepicker-div.ui-widget .ui-datepicker-calendar a{padding:8px;}
#ui-datepicker-div.ui-widget .ui-datepicker-calendar a.ui-state-active{background-color:#005196;border:1px solid #005196;}
/* placeholder */
#content .form_base input[type="text"]::-webkit-input-placeholder,
#content .form_base textarea::-webkit-input-placeholder,
#content .form_base input[type="text"]:-ms-input-placeholder,
#content .form_base textarea:-ms-input-placeholder,
#content .form_base input[type="text"]:placeholder-shown,
#content .form_base textarea:placeholder-shown{color:#AAA;padding-bottom:0.1em;}
#content .form_base input[type="text"]::-webkit-input-placeholder{line-height: 1.2}
/* agree_box */
#content .form_base .agree_box{font-size:1.5em;line-height:2;letter-spacing:0.04em;text-align:center;}
#content .form_base .agree_box .agree_box_inner{display:inline-block;border-radius:5px;}
#content .form_base .agree_box .txt{text-align:center;}
#content .form_base .agree_box .txt + .txt{margin-top:10px;}
#content .form_base .agree_box a{text-decoration:underline;color:#005196;}
@media screen and (min-width:768px) {
  #content .form_base #to_conf_btn_df1,
  #content .form_base #submit_btn{transition:all 0.3s;}
  #content .form_base #to_conf_btn_df1:hover,
  #content .form_base #submit_btn:hover{background-color:#FFFA78;}
  #content .form_base button,
  #content .form_base input[type="button"]{transition:all 0.3s;}
  #content .form_base button:hover,
  #content .form_base input[type="button"]:hover{background-color:#CCC;}
  /* ラジオボタン */
  #content .form_base label.radio span{transition:all 0.3s;}
  #content .form_base label.radio span:hover{border:1px solid #0055A0;}
  /* チェックボックス */
  #content .form_base label.ck span{transition:all 0.3s;}
  #content .form_base label.ck span:hover{border:1px solid #0055A0;}
  /* カレンダー */
  #ui-datepicker-div.ui-widget .ui-widget-header a{transition:all 0.3s;}
  #ui-datepicker-div.ui-widget .ui-widget-header a:hover{border:indianred;background-color:none;opacity:0.5;}
  #ui-datepicker-div.ui-widget .ui-widget-header .ui-datepicker-prev-hover,
  #ui-datepicker-div.ui-widget .ui-widget-header .ui-datepicker-next-hover{top:2px}
  #ui-datepicker-div.ui-widget .ui-widget-header .ui-datepicker-prev-hover{left:2px;}
  #ui-datepicker-div.ui-widget .ui-widget-header .ui-datepicker-next-hover{right:2px;}
  #ui-datepicker-div.ui-widget .ui-datepicker-calendar a{transition:all 0.3s;}
  #ui-datepicker-div.ui-widget .ui-datepicker-calendar a:hover{border:1px solid #0055A0;}
  /* agree_box */
  #content .form_base .agree_box a{transition:all 0.3s;}
  #content .form_base .agree_box a:hover{opacity:0.5;}
}
@media screen and (max-width:767px) {
  #content .form_base{width:auto;margin:0 auto 30px;padding:20px 20px 0;}
  #content .form_base .form_txt{font-size:1.3em;text-align:left;margin:20px 0;}
  #content .form_base table{margin:0 0 20px;}
  #content .form_base table + .sub_ttl{margin:20px 0 10px;}
  #content .form_base table tr th,
  #content .form_base table tr td{ font-size: 1.3em; display:block;width:100%;}
  #content .form_base table tr th{padding:5px 10px;background-color:#f2f2f2;border:none;}
  #content .form_base table tr td{padding:10px 0 15px;border:none;}
  #content .form_base table tr td dl{display:block;}
  #content .form_base table tr td dl + dl{margin:5px 0 0;padding:5px 0 0;}
  #content .form_base table tr td dl dt{width:100%;margin:0 0 5px;}
  #content .form_base table tr td dl dd{width:100%;}
  #content .form_base #reset_btn,
  #content .form_base #return_btn{font-size:1.4em;margin:15px auto 0;}
  #content .form_base #submit_btn,
  #content .form_base #to_conf_btn_df1{width:100%;font-size:1.8em;margin:15px auto;}
  #content .form_base .err{font-size:13px;}
  /* 字数幅 */
  #content .form_base .w15em,
  #content .form_base .w20em,
  #content .form_base .w21em,
  #content .form_base .w22em,
  #content .form_base .w23em,
  #content .form_base .w24em,
  #content .form_base .w25em,
  #content .form_base .w26em,
  #content .form_base .w27em,
  #content .form_base .w28em,
  #content .form_base .w29em,
  #content .form_base .w30em{width:100%;}
  /* % */
  #content .form_base .w70per,
  #content .form_base .w80per,
  #content .form_base .w90per,
  #content .form_base .w100per{width:100%;}
  /* マージン */
  #content .form_base .mt10{margin-top:5px;}
  #content .form_base .mb10{margin-bottom:5px;}
  /* 入力欄 */
  #content .form_base textarea{font-size:16px!important;}
  #content .form_base input[type="text"]{font-size:16px;margin-top:5px;margin-bottom:5px;}
  #content .form_base input[type="text"] + span:not(.err),
  #content .form_base span:not(.err) + input[type="text"],
  #content .form_base .select_box + span:not(.err),
  #content .form_base span:not(.err) + .select_box{margin-left:5px;}
  #content .form_base textarea{margin-bottom:10px;}
  #content .form_base button,
  #content .form_base input[type="button"]{margin:5px 0 5px 5px;padding:17px 15px 18px;}
  /* ラジオボタン */
  #content .form_base label.radio{margin-top:5px;margin-bottom:5px;}
  #content .form_base label.radio span{font-size:16px;}
  #content .form_base label.radio input + span::before{top:17px;}
  #content .form_base label.radio input + span::after{top:22px;}
  /* チェックボックス */
  #content .form_base .ck_list{display:block;}
  #content .form_base .ck_list label.ck{width:100%;margin-right:0;}
  #content .form_base label.ck{margin-top:5px;margin-bottom:5px;}
  #content .form_base label.ck span{font-size:16px;line-height:1.5;}
  #content .form_base label.ck input + span::before{top:13px;}
  #content .form_base label.ck input + span::after{top:13px;}
  /* セレクトボタン */
  #content .form_base .select_box{margin-top:5px;margin-bottom:5px;}
  #content .form_base select{font-size:16px;}
  /* 郵便番号 */
  #content .form_base #put_addr_button1a{line-height:1.2;padding:12px 12px 13px;}
  /* 電話希望時間 */
  #content .form_base .hope_tel span{font-size:90%;margin:3px 0;}
  /* カレンダー */
  #ui-datepicker-div.ui-widget{font-size:1.5em;}
  /* agree_box */
  #content .form_base .agree_box{font-size:1.3em; line-height: 1.7;}
  #content .form_base .agree_box .agree_box_inner{width:100%;}
}

#content .form_base .select_wrap{ display: inline-block; position: relative;}
#content .form_base .select_wrap select{
	font-size: 16px;
	border: solid rgba(48,63,85,0.15) 1px;
	outline: none;
	border-radius: 0.5em;
	margin: 0;
	padding: 0.5em 1.5em 0.5em 1em;
	transition: all .3s;
}
#content .form_base .select_wrap select:focus{
	border: solid rgba(48,63,85,1) 1px;
	background-color: rgba(48,63,85,0.08);
}
#content .form_base .select_wrap::after{
    content: '●';
    display: block;
    width: 0.5em;
    height: 0.5em;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    background-color: rgba(48,63,85,0.5);
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    right: 0.75em;
    z-index: 100;
}

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

/*====================
__form_base__サンクス画面
====================*/

#content .form_base #thanks{margin:60px 0;}
#content .form_base #thanks > dl{font-size:1.5em;line-height:2;letter-spacing:0.04em;}
#content .form_base #thanks > dl dt{font-weight:700;}
#content .form_base #thanks .shop_data{display:inline-block;font-size:1.5em;line-height:2;letter-spacing:0.04em;margin:30px 0;padding:25px 30px 30px;background-color:#f2f2f2;}
#content .form_base #thanks .shop_data .name{font-size:1em;font-weight:700;letter-spacing:0.04em;}
#content .form_base #thanks .shop_data dl{display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;}
#content .form_base #thanks .shop_data dl dt{text-align:right;padding:0 1em 0 0;}
#content .form_base #thanks .shop_data dl dd{margin:0;text-align:left;}
#content .form_base #thanks .back_top a{display:inline-block;font-size:1.5em;font-weight:700;text-decoration:underline;color:#46413c;}
@media screen and (min-width:768px) {
  #content .form_base #thanks .back_top a{transition:all 0.3s;}
  #content .form_base #thanks .back_top a:hover{opacity:0.5;}
}
@media screen and (max-width:767px) {
  #content .form_base #thanks{margin:30px 0;}
  #content .form_base #thanks > dl{font-size:1.4em;text-align:left;margin:0;}
  #content .form_base #thanks .shop_data{font-size:1.4em;padding:20px 35px 30px;}
  #content .form_base #thanks .back_top a{font-size:1.4em;margin:0 0 10px;}
}
