
/*共通部分*/

/*
body{
   letter-spacing: 2px;
}
*/
.red{ color: red; }
.border{
    border-bottom: 1px solid #000;
}

.common{ margin-bottom: 50px; }

.contact_line{
    border:2px solid #f1f1f1;
    padding: 2em 3em;
}
.contact_line .contact_title{
    font-size:18px;
    font-weight:bold;
    margin-bottom:2em;
}
.contact_line .contact_title img{
    margin-right:0.5em;
    vertical-align:-7px;
}
.contact_line .f_box{
    display:flex;
    font-family: "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,-apple-system, BlinkMacSystemFont, Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
    align-items:baseline;
    height:38px;
    margin-bottom:2em;
}
.contact_line .f_box .txt{
    font-weight:bold;
    font-size:18px;
    line-height:18px;
    padding-right:3em;
    margin-left:1.5em;
}
.contact_line .f_box .txt span{
    font-weight:bold;
    font-size:13px;
}
.contact_line .f_box .tel{
    font-size:38px;
    font-weight:bold;
    color:#e4012e;
    line-height:38px;
    height:38px;
}
.contact_line .f_box .tel img{
    margin-right:0.5em;
}
.contact_line .attention{
    font-size:13px;
}

.f_title{
    display: block;
    width:100%;
    background: #f1f1f1;
    padding:0.7em 1.2em;
    font-weight: bold;
    font-size:21px;
    margin-bottom:1em;
}

.contract{
    background: #f1f1f1;
    padding:1.2em 1.5em;;
    font-size:16px;
}


.panel_contents .txt ol,
.contract ol {
    counter-reset:number; /*数字をリセット*/
    list-style-type: none!important; /*数字を一旦消す*/
    padding:0.2em;
}
.panel_contents .txt ol li,
.contract ol li {
    position: relative;
    line-height: 1.5em;
    padding-left:40px;
}
.panel_contents .txt ol li + li,
.contract ol li + li{
    padding-top:0.5em;
}

.panel_contents .txt ol li:before,
.contract ol li:before{
    /* 以下数字をつける */
    position: absolute;
    counter-increment: number;
    content: counter(number);
    /*以下数字のデザイン変える*/
    display:inline-block;
    background: #e4012e;
    color: white;
    font-size: 13px;
    border-radius: 50%;
    left: 0;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    /*以下 上下中央寄せのため*/
    top: 50%;
     -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}
.panel_contents .txt ol li:before{
    background: #0d92aa;
}
.contract .attention{
    font-size:13px;
    margin-top:1.5em;
}

/* breadcrumb */
.breadcrumb{
    margin-top:0.3em;
}
.breadcrumb ul{
    display:flex;
    align-items:center;
}
.breadcrumb ul li{
    font-size:12px;
}
.breadcrumb ul li:last-child span{
    font-weight:bold;
    font-size:16px;
}
.breadcrumb ul li + li{
    margin-left:30px;
    position:relative;
}
.breadcrumb ul li + li span:before,
.breadcrumb ul li + li a:before{
    content:"＞";
    display:block;
    position:absolute;
    top:3px;
    left:-20px;
    font-size:12px;
    
}

/* STEP TITLE*/
.titlebox{
    display: flex;
    width:100%;
    margin-bottom:1.2em;
}
.step_num_txt{
    flex:1;
    color: #fff;
    background: #e4012e;
    text-align: center;
    padding: 0 12px;
    height:40px;
    line-height:40px;
    font-weight:bold;
    font-family: "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" ,-apple-system, BlinkMacSystemFont, Avenir , "Open Sans" , "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
}
.step_title{
    flex:9;
    background: #ffbbc9;
    height:40px;
    line-height:40px;
    padding: 0px 12px;
    color: #000;
    font-size: 18px;
    font-weight: bold;
}


.apply .prepare{
    padding-left:125px;
    margin-bottom:2em;
}


/* tab */
.tab-group{
    display: flex;
    justify-content:space-between;
}
.tab{
    padding: 5px 13px;
    list-style: none;
    border: solid 2px #CCC;
    border-bottom: none;
    text-align: center;
    background: #f1f1f1;
    font-size:18px;
    font-weight:bold;
    cursor:pointer;
}

.panel-group{
    border: solid 2px #CCC;
    background: #FFF;
    padding: 20px;
}
.panel{
    display: none;
}
.panel .panel_contents{
    display:flex;
    width:100%;
}
.panel .panel_contents .txt{
    background:#f8f8f8;
    padding:1em;
    width:288px;
}
.panel .panel_contents .img{
    flex:1;
    padding-right:10px;
}
.panel .panel_contents .img img{
    max-width:100%;
    max-height:600px;
    height:auto;
}

.tab.is-active{
    background: #fff;
    color:#e4012e;
    transition: all 0.2s ease-out;
    margin-bottom:-2px;
    cursor:default;
}
.panel.is-show{
    display: block;
}

/* contents */

.f_contents{
}
.boxcontents{
}
.box {
}
.boxtitle p{
    font-size:18px;
    font-weight:bold;
    padding-bottom:0.2em;
}
.boxtitle .border{
    margin-bottom:0.2em;
}
.boxtitle img{
    margin-right:1em;
}

.q_title{
    margin-top:1em;
    padding-left:1em;
    font-weight:bold;
    font-size:16px;
}
.q_title .red{
    font-weight:bold;
}
.q_answer_box{
    display:flex;
    display:-ms-flex;
    justify-content:space-between;
    justify-content:-ms-space-between;
    margin-top:1em;
    padding-left:2em;
    width:100%;
}
.q_answer_box.area_info .q_a{
    width:400px;
}
.q_answer_box.area_info .q_b{
    width:485px;
}
.q_answer_box.area_info div[id^="area_"]{
    padding-left:3em;
    display:none;
}
.q_answer_box .area_map_select_wrap{
    position:relative;
    width:436px;
    height:156px;
    border:1px solid #b5b5b5;
    background:url(/img/entry_ja_map.png) 84px center no-repeat;
    background-size:198px auto;
}
.q_answer_box .area_map_select_wrap > div{
    position:absolute;
}
.q_answer_box .area_map_select_wrap > div label{
    font-size:14px;
    margin-left:0px;
}
.q_answer_box .area_map_select_wrap .hokuriku{
    left:40px;
    top:8px;
}
.q_answer_box .area_map_select_wrap .kansai{
    left:40px;
    top:38px;
}
.q_answer_box .area_map_select_wrap .chugoku{
    left:40px;
    top:68px;
}
.q_answer_box .area_map_select_wrap .kyushu{
    left:40px;
    top:98px;
}
.q_answer_box .area_map_select_wrap .tohoku{
    left:293px;
    top:36px;
}
.q_answer_box .area_map_select_wrap .tokyo{
    left:293px;
    top:76px;
}
.q_answer_box .area_map_select_wrap .chubu{
    left:293px;
    top:116px;
}
.q_answer_box.contract_info{
    -ms-flex-pack:start;
    justify-content:flex-start;
}
.q_answer_box.contract_info > div + div{
    margin-left:2em;
}
.q_answer_box.contract_info .agency_num{
    font-size:14px;
    padding-left:25px;
}

.boxitem{
    text-align: center;
    border-bottom: 1px solid #e4012e;
    margin-bottom: 10px;
}
.box_btn{
    display: flex;
    justify-content: space-between;
    text-align:center;
}
a.btn{
    background-color: #f1f1f1;
    padding: 0 15px;
}

.switch .explain{
    background-color:#f1f1f1;
    padding:1.5em;
    margin-top:2em;
    font-size:16px;
}
.switch .explain dt{
    font-size:18px;
    font-weight:bold;
    padding-bottom:0.2em;
    margin-bottom:0.4em;
}
.start a{
    /*color:#000;*/
}
.start ul li a{
    display:inline-block;
    border-bottom:1px solid #000;
    padding-bottom:1px;
}
.start .link_btn a{
    display:block;
    width:400px;
    height:68px;
    line-height:68px;
    text-align:center;
    margin:2em auto 0;
    background:#f8f8f8;
    border:1px solid #dedede;
    font-size:18px;
    font-weight:bold;
}
.start .link_btn a img{
    margin-right:0.7em;
}

.application .ttl{
    font-size:28px;
    font-weight:bold;
    text-align:center;
    margin-bottom:1em;
}
.application .area_select ul{
    display:flex;
    justify-content:space-between;
    width:100%;
}
.application .area_select ul li{
    width:calc(92% / 7);
}
.application .area_select ul li a,
.application .area_select ul li span{
    display:block;
    text-align:center;
    min-height:75px;
    line-height:1.5em;
    color:#000;
    font-weight:bold;
    font-size:16px;
    border-bottom:2px solid #f8f8f8;
    padding:5px 0 20px;
    background:url(/img/chevron_bottom.png) center 60px no-repeat #f8f8f8;
    cursor:pointer;
}
.application .area_select ul li.is-active span{
    color:#e4012e;
    border-bottom:2px solid #e4012e;
    background:url(/img/chevron_bottom_r.png) center 60px no-repeat #f8f8f8;
}
.application .attention{
    font-size:13px;
    margin:2em 0;
}

.square{
    padding: 10px;
    margin: 0 auto;
}
.arrow{
    margin-right: 5px;
}

.f_items > dl  {
    background-color: red;
}

.switch .f_items{
    display:flex;
    width:100%;
    margin-bottom:1em;
}
.switch .f_items .txt{
    width:650px;
    padding-right:40px;
}
.switch .f_items .img{
    flex:1;
}
.switch .f_items .img img,
.switch .f_items .txt img{
    max-width:100%;
    height:auto;
}





/*complate*/
.flow{
    padding: 20px;

}
.flow_img{
    text-align: center;
    padding: 20px;

}
.contact{}



/*price*/

.price{
}
.price h4{
    margin-bottom:1em;
}
.price .text_c{
    text-align:center;
}
.price .calculation_method{
    padding-left:20px;
    margin-top:1em;
}
.price .calculation_method h5{
    font-size:18px;
    font-weight:bold;
    margin-bottom:0.5em;
}
.price .calculation_method p{
    font-size:16px;
    margin-bottom:1em;
}
.price .map{
    margin-bottom:30px;
}
.price .price_contents section{
    margin-top:30px;
}
.price .price_contents .price_list section{
    display:none;
}
.price .price_contents .price_list section.is-show{
    display:block;
}
.price .price_contents section.application{
    margin-top:4em;
}
.price .price_contents section h6{
    background:#f8f8f8;
    border-bottom:2px solid #e4012e;
    padding:12px 21px;
    font-size:18px;
    font-weight:bold;
    margin-bottom:1em;
}


