@charset "utf-8";
/*--------
common
--------*/
body{font-size: 16px;font-family: -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";line-height: 1; position: relative; color: #2a2a2a;}
a:hover{
    cursor: pointer;
}
.st_n{
    font-weight: normal;
}
.bg_gr{
    background-color: #f2f2f2;
}
.bg_gb{
    background-color: #e6fcff;
}
.bg_grn{
    background-color: #b9dad0;
}
.co-pc{
    display: block;
}
.co-sp{
    display: none;
}
.co_fwb{
    font-weight: bold;
}
.co_uly{
    background: linear-gradient(transparent 75%, #fff100 0%);
}
.co_mt40{
    margin: 40px 0 0;
}
.c_point{
    color: #f45959;
}
.co_fcy{
    color: #fff20a;
}
.co-mt13{
    margin: 13px 0 0;
}
.img_h0{
    height: 0;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-position: 0 0;
    display: block;
    overflow: hidden;
}
.jisseki_bg{
    background-image: url('../img/jisseki.png');
    margin: 60px auto 0;
    padding: 149px 0 0;
    width: 665px;
}
.jisseki_mes{
    background-image: url('../img/jisseki_mes.png');
    margin: 50px auto 0;
    padding: 314px 0 0;
    width: 1083px;
}
/*--------
layout
--------*/
.l-sec{
    margin: 0 auto;
    width: 1080px;
}
.sec2 .l-sec{
    padding: 0 0 75px;
}
/*--------
layout
--------*/

/*--------
top
--------*/
.sec_tit{
    color: #2a2a2a;
    font-size: 30px;
    padding: 90px 0 0;
    text-align: center;
}
.sec_wrap{
    margin: 60px 0 0;
    padding: 0 30px;
}
.atation{
    font-size: 14px;
    width: 1020px;
    margin: 15px auto 0;
    text-align: right;
}
.c-btn{
    background: #fff100;
    border: 2px solid #fff100;
    border-radius: 8px;
    color: #323232;
    display: block;
    font-size: 20px;
    font-weight: normal;
    padding: 15px 40px;
    position: relative;
    text-align: center;
}
.c-btnc{
    background: #E0E0DE;
    border: 2px solid #E0E0DE;
    border-radius: 8px;
    color: #323232;
    display: block;
    font-size: 20px;
    font-weight: normal;
    padding: 15px 40px;
    position: relative;
    text-align: center;
}
.c-btn, .c-btnc, .c-bnr, .c-txt {
    cursor: pointer;
    transition: .3s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-btn.press{
  box-shadow: 0 4px 0 #ccc100;
}
.c-btnc.press{
  box-shadow: 0 4px 0 #b7b7b7;
}
.c-btnc.press:hover,.c-btn.press:hover{
  transform: translateY(4px);
  box-shadow: none;
  text-decoration: none;
}
.confirm .c-btn,.confirm .c-btnc{
    width: 100%;
}
.btn_txt{
    margin: 0 0 0 8px;
}
.sec2{
    margin: 0 auto;
}
.sec2 .sec_wrap{
    margin: 0;
    padding: 25px 0 0;
}
.list_wrap{
    display: flex;
}
.at_para{
    font-size: 26px;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 2;
    text-align: center;
}
.at_para_a{
    font-size: 36px;
}
.sup_point{
    border-radius: 8px;
    color: #FFF;
    font-size: 20px;
    font-weight: bold;
    background-color: #ff9600;
    letter-spacing: 0;
    padding: 8px 15px;
    text-shadow: 2px 2px 0 #d9860f, -2px -2px 0 #d9860f,
              -2px 2px 0 #d9860f, 2px -2px 0 #d9860f,
              0px 2px 0 #d9860f,  0 -2px 0 #d9860f,
              -2px 0 0 #d9860f, 2px 0 0 #d9860f;
}
.arrow{
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    margin-left: auto;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.arrow_t::before{
    left: 3px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #323232;
    border-right: 2px solid #323232;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);    
}
.tit_mini{
    border-top: 3px solid #2a2a2a;
    border-bottom: 3px solid #2a2a2a;
    color: #2a2a2a;
    font-size: 20px;
    margin: 53px auto 0;
    padding: 13px 0;
    text-align: center;
    width: 9.5em;
}
.app_img_wrap{
    margin: 20px auto 0;
    width: 509px;
}
.select_wrap{
    width: 496px;
}
.select_tit{
    font-size: 24px;
    font-weight: bold;
}
.select_st{
    color: #0b629f;
    font-size: 30px;
}
.select_para{
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 1.6;
    margin: 10px 0 0;
    width: 92%;
}
.img_sec_h0{
    height: 0;
    margin: 0 auto;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0 0;
    display: block;
    overflow: hidden;
    padding: 67% 0 0;
    width: 100%;
}
.select_01{
    background-image: url('../img/select_1.png');
}
.select_02{
    background-image: url('../img/select_2.png');
}
.select_03{
    background-image: url('../img/select_3.png');
}
.select_04{
    background-image: url('../img/select_4.png');
}
.select_05{
    background-image: url('../img/select_5.png');
}
.exa_sup_bigPic{
    margin: 30px auto 0;
    width: 858px;
}
.exa_sup_wrap{
    background-color: #FFF;
    border-bottom-right-radius: 8px;
    border-bottom-left-radius: 8px;
    padding: 16px;
}
.exa_sup_img{
    border-top-right-radius: 8px;
    border-top-left-radius: 8px;
}
.exa_sup_tit{
    font-weight: bold;
    margin: 0 0 0 8px;
}
.exa_sup_list{
    margin: 8px 0 0;
}
.exa_sup_bottom{
    margin: 10px 0 0;
}
.exa_sup_mtit{
    background-color: #fff336;
    font-size: 20px;
    padding: 8px 17px;
    text-align: center;
}
.exa_sup_money{
    color: #f45959;
    font-size: 28px;;
}
.bg_dot{
    background-image: url('../img/bg_dot.gif');
}
.d_line{
    border-radius: 10px;
    display: block;
    margin: 99px auto 0;
    position: relative;
    border: solid 1px #2a2a2a;
    width: 818px;
}
.d_line:first-child{
    margin: auto;
}
.d_line::before{
    border-radius: 18px;
    content: "";
    position: absolute;
    top: -12px;
    bottom: -12px;
    left: -12px;
    right: -12px;
    border: solid 1px #2a2a2a;
}
.step_posi{
    font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
    font-size: 22px;
    letter-spacing: 2px;
    padding: 5px;
    position: absolute;
    transform:rotate(-34deg);
    top: -21px;
    left: -47px;
}
.fire_posi{
    border-radius: 30px;
    position: absolute;
    bottom: -25px;
    right: -28px;
    padding: 3px 8px;
}
.flow_r{
    margin: 0 0 0 22px;
    width: 595px;
}
.flow_para{
    padding: 0 0 24px;
}

.form_wrap{
    padding: 30px 0 20px;
    margin: auto;
    width: 630px;
}
.form_wrap .min_tit{
    color: #016147;
}
.form__inner{
    margin: 30px 0 0;
}
.form__inner dl{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.form__inner dt{
    font-size: 20px;
    font-weight: bold;
    width: 38%;
    padding: 0 10px 50px 0;
    box-sizing: border-box;
}
.form__inner dd{
    font-size: 20px;
    width: 62%;
    padding: 0 0 20px;
}
.form__inner dd input{
    background-color: #f7f7f7;
    border: 1px solid #cccccc;
    border-radius: 3px;
    height: 40px;
    width: 100%;
    padding: 0 0 0 8px;
    box-sizing: border-box;
}
.form__inner dd select{
    background-color: #f7f7f7;
    border: 1px solid #cccccc;
    border-radius: 3px;
    padding: 8px;
    box-sizing: border-box;
}
.form__inner dd textarea{
    border: 1px solid #cccccc;
    border-radius: 3px;
    padding: 8px;
    box-sizing: border-box;
}
.confirm .form__inner dd{
    line-height: 1.3;
}
.form_mark{
    background-color: #fff100;
    font-size: 13px;
    padding: 6px 9px;
    box-sizing: border-box;
    font-weight: bold;
    margin: 0 0 0 8px;
}
.form_mark_n{
    background-color: #cbcbcb;
    font-size: 13px;
    padding: 6px 9px;
    box-sizing: border-box;
    font-weight: bold;
    margin: 0 0 0 8px;  
}
.comment{
    background-color: #fff3f5;
    border-radius: 6px;
    color: #ff718e;
    line-height: 1.5;
    margin: 15px auto 0;
    padding: 20px;
}
.comment li{
    margin: 0 0 0 1em;
    text-indent: -1em;
}
.mail_para{
    font-size: 16px;
    line-height: 1.3;
}
.gift_wrap{
    margin: 0 0 20px;
    text-align: center;
}
.gift_wrap input{
    margin: 0 8px 0 0;
}
.form__btn{
    text-align: center;
}
.error_meg{
    color: #fc6262;
}
.confirm .m-subHeadline{
    background-color: #016147;
    color: #FFF;
    font-size: 34px;
    padding: 16px 0;
    text-align: center;
}
.form_meg{
    font-size: 16px;
    margin: 10px 0 0;
    text-align: center;
}
.footer_wrap{
    color: #FFF;
    background-color: #297E98;
    line-height: 1.3;
    margin: 70px 0 0;
}
.footer_wrap .m-flexWrap{
    justify-content: space-between;
}
.footer_inner{
    margin: auto;
    padding: 30px;
    width: 1080px;
}
.footer_list{
    font-size: 18px;
}
.company_menu li{
    box-sizing: border-box;
    padding: 0 5px;
}
.company_menu li a{
    color: #FFF;
}
.copy_right{
    background-color: #024f6b;
    text-align: center;
    padding: 10px 0;
}
.copy_right a{
    color: #FFF;
}
/*---sec1---*/
.sec1_wrap{
    padding: 0 0 86px;
}
.thin_wrap{
    color: #0b629f;
    margin: 25px 0 0;
    text-align: center;
}
.thin_tit{
    font-size: 26px;
    font-weight: bold;
}
.thin_st{
    font-size: 36px;
}
.thin_para{
    font-weight: 600;
    letter-spacing: 1px;
    line-height: 1.4;
    margin: 15px 0 0;
}
.sec1 .thin_tit img{
    margin: auto;
}
/*---sec2---*/
.plus_info{
    margin: 75px 0 0;
    position: relative;
}
.plus_info_posi{
    position: absolute;
    bottom: -75px;
    right: 0;
}
.sec2 .sec_tit img{
    margin: auto;
}
/*---sec3---*/
.sec3{
    background-color: #0b6247;
    padding: 75px 0;
}
.sec3 .at_para{
    color: #FFF;
    line-height: 1.3;
    padding: 0 0 28px;
}
.sec3 .item_para{
    color: #FFF;
}
/*---sec4---*/
.sec4{
    padding: 0 0 75px;
}
.sec4 .sec_wrap{
    margin: 35px 0 0;
}
.sec4 .at_para{
    font-size: 20px;
    margin: 35px 0 0;
}
.sec4 .thin_para{
    margin: 20px 0 0;
    text-align: center;
}
.sec4 .sec_tit img{
    margin: auto;
}
/*---sec5---*/
.sec5{
    padding: 0 0 75px;
}
.sec5 .select_wrap{
    margin: 30px 0 0;
    width: 47%;
}
.sec5 .sec_wrap{
    margin: 30px 0 0;
}
.sec5 .m-flexWrap{
    margin: 0;
}
/*---sec6---*/
.sec6{
    padding: 0 0 75px;
}
/*---sec7---*/
.sec7{
    padding: 0 0 150px;
}
.sec7 .select_para{
    margin: 0;
    padding: 30px 20px 30px 5px;
}
.sec7 .item_para{
    margin: 0;
}
.sec7 .select_para{
    width: 100%;
}
/*---sec8---*/
.sec8{
    padding: 0 0 75px;
}
.sec8 .sec_tit{
    padding: 0;
}
/*---sec9---*/
.sec9 .c-btn.press{
    width: 100%;
}
/*---アコーディング---*/
.ac-contain{
    margin: 20px auto 0;
    width: 800px;
}
.ac-list:not(:first-child){
  margin-top: 10px;
}
.ac-tit{
    background-color: #FFF;
    border-radius: 8px;
    line-height: 1.5;
    font-weight: bold;
    font-size: 18px;
    cursor: pointer;
    padding: 30px 60px 30px 100px;
    position: relative;
}
.ac-tit:before{
    background: url("../img/q_icn.gif");
    background-position: 0 0;
    background-repeat: no-repeat;
    content: '';
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    left: 30px;
    bottom: 0;    
    height: 54px;
    width: 39px;
}
.ac-tit:after{
  position: absolute;
  display: block;
  content: '';
  top: 0;
  right: 22px;
  bottom: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  border-top: 2px solid #06543c;
  border-right: 2px solid #06543c;
  transform: rotate(135deg);
  transition: all .3s ease-in-out;
}
.ac-tit.open:after{
  transform: rotate(-45deg);
  top: 0;
  bottom: 0;
  margin: auto;
}
.ac-txt{
    display: none;
    line-height: 1.5;
    font-weight: bold;
    font-size: 18px;
    position: relative;
    padding: 30px 60px 0 100px;
}
.ac-txt:before{
    background: url("../img/a_icn.gif");
    background-position: 0 0;
    background-repeat: no-repeat;
    content: '';
    display: block;
    position: absolute;
    top: 20px;
    left: 30px;  
    height: 45px;
    width: 37px;
}
/*---スライドショー---*/
.slider-wrap {
    width: 800px;
    margin: 0 auto;
    padding: 30px 0 10px;
    position: relative;
}
.slick .slick-slide {
    height: 520px;
    overflow: hidden;
}
.slick .slick-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.slick .slick-arrow {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #fff;
    cursor: pointer;
    border: none;
    outline: none;
    font-size: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
    filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
}
.slick .slick-arrow::before {
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border: 1px solid #484848;
    border-width: 3px 3px 0 0;
    position: absolute;
    top: 10px;
    transform: rotate(45deg);
}
.slick .slick-next {
    right: -15px;
}
.slick .slick-prev {
    left: -15px;
}
.slick .slick-next::before{
    left: 7px;
}
.slick .slick-prev::before{
    border-width: 0 0 3px 3px;
    right: 8px;
    }
.slick_count {
    padding: 0 90px 0 0;
}
.slick_count .num{
    color: #FFF; 
    font-size: 15px;
    text-align: right;
}
.slick_count .num .nowcnt,
.slick_count .num .allcnt{
    color: #FFF; 
    font-size: 15px;
}
/*---list---*/
.m-flexWrap{
    display: flex;
    display: -webkit-flex;
    display: -ms-flex;
    flex-wrap: wrap;
    justify-content: center;
}
.sec3 .m-flexWrap{
    align-items: center;
    justify-content: space-between;
}
.sec5 .m-flexWrap{
    align-items: flex-start;
    justify-content: space-around;
}
.sec6 .m-flexWrap{
    align-items: center;
    justify-content: center;
}
.sec6 .item_list .m-flexWrap{
    align-items: center;
    justify-content: flex-start;
}
.sec6 .item_list .exa_sup_bottom.m-flexWrap{
    justify-content: space-between;
}
.sec7 .m-flexWrap{
    align-items: center;
    justify-content: flex-start;
}
.tile_listWrap{
    justify-content: space-between;
}
.tile_listWrap::after{
display: block;
content:"";
width: 32%;
}
.sec6 .tile_listWrap{
    margin: 30px 0 0;
}
.sec6 .tile_listWrap::after{
display: block;
content:"";
width: 339px;
}
.item_list{
    border-radius: 8px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    padding: 0 2% 25px;
    width: 25%;
}
.sec1 .item_list{
    padding: 0 1.5%;
}
.sec2 .item_list{
    background-color: #FFF;
    margin: 40px 0 0;
    padding: 0;
    position: relative;
    width: 520px;
}
.sec6 .item_list{
    padding: 0 10px 20px;
    width: 339px;
}
.item_num{
    position: absolute;
    top: 14px;
    left: 14px;
    height: auto;
    width: 54px;
}
.item_tit{
    background-color: #0b629f;
    border-top-right-radius: 8px;
    border-top-left-radius: 8px;
    color: #FFF;
    font-size: 24px;
    margin: 0;
    padding: 25px 25px 25px 84px;
    line-height: 1.3;
}
.item_img{
    margin: 29px 0 0;
}
.item_img img{
    display: block;
    height: 78px;
    margin: auto;
    width: 472px;
}
.item_para{
    letter-spacing: 1px;
    line-height: 1.5;
    margin: 8px 0 0;
    text-align: center;
}
.item_para strong{
    font-weight: normal;
}
.sec2 .item_para{
    margin: 20px 0 0;
    padding: 0 14px 14px;
    text-align: left;
}
.btn_wrap{
    margin: 0 auto;
    width: 530px;
}
/* チェックボックス */
.checkbox_wrap{
    margin: 38px 0 0;
    text-align: center;
}
.checkbox__input {
  display: none;
}
.checkbox__text {
  padding-left: 32px;
  position: relative;
  cursor: pointer;
}
.checkbox__text::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 20px;
  height: 20px;
  border: 1px solid #999;
  border-radius: 4px;
}
.checkbox__input:checked + .checkbox__text:after {
  content: "";
  display: block;
  position: absolute;
  top: -4px;
  left: 6px;
  width: 10px;
  height: 16px;
  transform: rotate(40deg);
  border-bottom: 5px solid #d01137;
  border-right: 5px solid #d01137;
}
.checkbox__text a{
    text-decoration: underline;
}
.ch_comme{
    font-size: 13px;
    display: inline-block;
    margin: 8px 0 0;
}
.checkbox__button {
  margin-top: 60px;
}
.button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
}