@charset "utf-8";

.inner{position: relative;margin: 0 auto;}
.in_17{max-width: 1700px;}
.in_12{max-width: 1200px;}

header{position: fixed;top: 0;left: 0;width: 100%;padding: 0 20px;z-index: 99;background-color: #fff;border-bottom: 1px solid #e1e1e1;}
header h1{position: absolute;left: 0;top: 50%;margin-top: -39px;}
header h1 a{display: block;width: 118px;height: 71px;background: url(../images/logo.jpg) no-repeat center;background-size: contain;}
header .tel{position: absolute;right: 0;top: 50%;margin-top: -15px;}
header .tel a{display: block;font-family: 'Montserrat';color: #222;font-size: 1.875rem;font-weight: 700;padding-left: 30px;background: url(../images/tel-icon.png) no-repeat left center;background-size: 20px auto;}

header .tel a span{color: #063054;font-weight: 700;font-family: 'Montserrat';font-size: 1.875rem;}
header .tel a span b{color: #139fa2;font-weight: 700;font-family: 'Montserrat';font-size: 1.875rem;}

header .menu{text-align: center;transition: 0.3s;}
header .menu ul{display: inline-block;}
header .menu ul li{float: left;}
header .menu ul li{padding: 0 40px;}
header .menu ul li a{display: block;line-height: 90px;color: #1a1a1a;font-size: 1.125rem;font-weight: 500;}
header .menu .close{display: none;position: absolute;left: 20px;top: 20px;width: 20px;height: 20px;background: url(../images/close-btn.png) no-repeat center;background-size: contain;border: none;}
header.main{box-shadow: 0 3px 15px rgba(0,0,0,0.1);border-bottom: none;}
header .nav_btn{display: none;position: absolute;top: 50%;left: 0;width: 25px;height: 24px;margin-top: -12px;border: none;background: url(../images/nav-btn.png) no-repeat center;background-size: contain;}
header .dim{position: fixed;left: 0;top: 0;width: 100%;height: 100%;background-color: rgba(0,0,0,0.5);z-index: 10;display: none;}

footer{padding: 60px 20px 80px;background-color: #222;}
footer dl{margin-bottom: 20px;}
footer dl dt{color: #fff;font-size: 0.75rem;font-weight: 400;margin-bottom: 10px;}
footer dl dd{color: #a7a9a8;font-size: 0.75rem;line-height: 1.5em;}
footer .ori{color: #aaa;font-size: 0.75rem;font-weight: 300;line-height: 1.5em;margin-bottom: 30px;}
footer address{color: #666;font-size: 0.75rem;}
footer .foot_brand{position: absolute;right: 0;top: 0;}

/* .home{padding: 230px 20px 150px;background: #fafafa url(../images/home-bg.png) no-repeat right top;} */
.home{padding: 230px 20px 150px; background: #fafafa;}
.main_tit{text-align: center;margin-bottom: 80px;}
.main_tit h2{font-size: 4rem;font-weight: 100;line-height: 1.4em;color: #222;}
.main_tit h2 strong{font-weight: 600;}
.main_tit p{margin-top: 50px;font-size: 1.445rem;font-weight: 500;color: #063054;line-height: 1.7em;}
.main_tit b{margin-top: 50px;font-size: 1.445rem;font-weight: 500;color: #b29887;line-height: 1.7em;}

.list_tbl table{border-top: 2px solid #222;width: 100%;}
.list_tbl table tr th{border-bottom: 1px solid #d5d5d5;padding: 25px 0 25px 40px;text-align: left;}
.list_tbl table tr th strong{display: block;position: relative;font-size: 1.125rem;color: #222;line-height: 1.3em;font-weight: 600;}
.list_tbl table tr th strong::before{content: "";position: absolute;right: 0;top: 50%;background-color: #ccc;width: 1px;height: 16px;margin-top: -8px;}
.list_tbl table tr td{border-bottom: 1px solid #d5d5d5;padding: 25px 0 25px 40px;}
.list_tbl table tr td p{color: #555;font-size: 1.125rem;line-height: 1.3em;}
.list_tbl.main_tbl table tr td p{color: #222;}
.list_tbl.main_tbl table tr td p.red{color: #c20735;}
.list_tbl.inp table tr th strong::before{display: none;}
.list_tbl.inp table tr td{padding: 15px 20px 15px 10px;}
.list_tbl.inp .inp_wrap{display: flex;align-items: center;}
.list_tbl.inp .inp_wrap ~ .inp_wrap{margin-top: 10px;}
.list_tbl.inp .inp_wrap ul{display: flex;align-items: center;flex-wrap: wrap;}
.list_tbl.inp .inp_wrap ul ~ ul{margin-left: 10px;}
.list_tbl.inp .inp_wrap ul.w_44{width: calc(44% - 5px);}
.list_tbl.inp .inp_wrap ul.w_56{width: calc(56% - 5px);}
.list_tbl.inp .inp_wrap ul .in_1{width: 100%;}
.list_tbl.inp .inp_wrap ul .in_2{width: calc(50% - 10px);}
.list_tbl.inp .inp_wrap ul .in_2 ~ .in_2{margin-left: 20px;}
.list_tbl.inp .inp_wrap ul .in_3{width: calc(33.33% - 7px);}
.list_tbl.inp .inp_wrap ul .in_3 ~ .in_3{margin-left: 10px;}
.list_tbl.inp .inp_wrap select,
.list_tbl.inp .inp_wrap input{width: 100%;height: 50px;border: 1px solid #e1e1e1;background-color: #fff;padding: 0 20px;color: #555;outline: none;}
.list_tbl.inp .inp_wrap select{background-image: url(../images/select-icon.png);background-repeat: no-repeat;background-position: right 20px center;}
.list_tbl.inp .inp_wrap .gray{background-color: #fafafa;}
.list_tbl.inp .inp_wrap select,
.list_tbl.inp .inp_wrap input::placeholder{color: #999;}
.list_tbl.inp .inp_wrap select:focus,
.list_tbl.inp .inp_wrap input:focus{background-color: #fff;border: 1px solid #222;}
.list_tbl.inp .inp_wrap span{color: #555;}
.list_tbl.inp .inp_wrap .sub_btn{margin-left: 10px;background-color: #222;color: #fff;width: 140px;height: 50px;border: none;}

.go_btn{margin-top: 60px;}
.go_btn ul::after{content: "";display: block;clear: both;}
.go_btn ul li{width: calc(33.33% - 20px);float: left;}
.go_btn ul li ~ li{margin-left: 30px;}
.go_btn ul li a{display: block;border: 1px solid #e1e1e1;background: #fff no-repeat right top;padding: 0 40px;transition: 0.3s;}
.go_btn ul li.btn1 a{background-image: url(../images/btn-bg1.png);}
.go_btn ul li.btn2 a{background-image: url(../images/btn-bg2.png);}
.go_btn ul li.btn3 a{background-image: url(../images/btn-bg3.png);}
.go_btn ul li a span{display: block;line-height: 98px;color: #222;font-size: 1.375rem;font-weight: 500;background: url(../images/btn-arr-bl.png) no-repeat right center;transition: 0.3s;}
.go_btn ul li a:hover{background-color: #063054;}
.go_btn ul li a:hover span{color: #fff;background-image: url(../images/btn-arr-wh.png);}

.sub{padding: 190px 20px 150px;}
.sub_tit{margin-bottom: 80px;text-align: center;}
.sub_tit h3{color: #121212;font-weight: 600;font-size: 3.375rem;}

.step{margin-bottom: 60px;padding-top: 20px;}
.step ul{display: flex;}
.step ul li{width: 25%;position: relative;}
.step ul li dl{padding-bottom: 20px;border-bottom: 1px solid #e1e1e1;}
.step ul li dl dt{color: #999;padding-left: 20px;font-size: 0.75rem;font-family: 'Montserrat';margin-bottom: 10px;}
.step ul li dl dd{color: #999;padding-left: 20px;font-size: 1.25rem;font-weight: 600;}
.step ul li.on::before{content: "";position: absolute;left: 0;bottom: 0;width: 100%;height: 4px;background-color: #222;}
.step ul li.on dl dt,
.step ul li.on dl dd{color: #222;}
.step ul li.on dl dd{background: url(../images/step-chk.png) no-repeat left center;}

.txt_box{padding: 0 0 60px;border-bottom: 1px solid #d5d5d5;}
.txt_box dl ~ dl{margin-top: 40px;}
.txt_box dl dt{color: #222;font-size: 1.25rem;font-weight: 600;margin-bottom: 20px;}
.txt_box dl dd p{color: #555;line-height: 1.5em;}
.txt_box dl dd p.red{color: #971b1e;}
.txt_box dl dd p ~ p{margin-top: 10px;}
.txt_box .ori{color: #777;font-size: 0.75rem;font-weight: 300;line-height: 1.667em;margin-top: 20px;}

.agree{margin-top: 60px;}
.agree dl dt{color: #222;font-size: 1.25rem;font-weight: 600;margin-bottom: 20px;}
.agree dl dd{color: #555;line-height: 1.625em;}
.agree table{width: 100%;margin: 40px 0;border-top: 1px solid #222;}
.agree table th{color: #222;font-weight: 600;font-size: 0.875rem;text-align: left;border-bottom: 1px solid #d5d5d5;border-right: 1px solid #d5d5d5;padding: 15px 10px 15px 30px;line-height: 1.3em;}
.agree table td{color: #666;font-size: 0.875rem;line-height: 1.375em;text-align: left;border-bottom: 1px solid #d5d5d5;padding: 15px 10px 15px 30px;line-height: 1.3em;}
.agree ul li.line1{display:flex;}
.agree ul li.line1 .agree_btn{margin-top:0;}
.agree ul li{background-color: #fafafa;padding: 25px 30px;display: flex;align-items: center;justify-content: space-between;border: 1px solid #ebebeb;}
.agree ul li ~ li{margin-top: 10px;}
.agree ul li p{color: #222;font-weight: 500;line-height: 1.3em;}
.agree ul li .agree_btn{display: flex;align-items: center;}
.agree ul li .agree_btn input{display: none;}
.agree ul li .agree_btn span{display: block;border: 1px solid #d5d5d5;width: 18px;height: 18px;border-radius: 50%;position: relative;background-color: #fff;transition: 0.2s;}
.agree ul li .agree_btn span::before{content: "";position: absolute;width: 8px;height: 8px;background-color: #222;border-radius: 50%;left: 50%;top: 50%;margin-top: -4px;margin-left: -4px;opacity: 0;transition: 0.2s;}
.agree ul li .agree_btn strong{color: #222;font-weight: 500;margin-left: 10px;}
.agree ul li .agree_btn label{display: flex;}
.agree ul li .agree_btn label ~ label{margin-left: 30px;}
.agree ul li .agree_btn input:checked ~ span{border-color: #222;}
.agree ul li .agree_btn input:checked ~ span::before{opacity: 1;}
.agree ul li .agree_btn.chk span{border-radius: 2px;}
.agree ul li .agree_btn.chk  span::before{border-radius:2px;}

.btn_area{margin-top: 65px;display: flex;align-items: center;justify-content: center;}
.btn_area .btn{display: block;font-size: 1.25rem;width: 240px;line-height: 68px;background-color: #fff;text-align: center;transition: 0.3s;}
.btn_area .btn ~ .btn{margin-left: 20px;}
.btn_area .btn.bl{color: #222;border: 1px solid #222;}
.btn_area .btn.bl:hover{background-color: #222;color: #fff;}
.btn_area .btn.gr{color: #999;border: 1px solid #999;}
.btn_area .btn.gr:hover{background-color: #999;color: #fff;}

.gray_box{background-color: #fafafa;border: 1px solid #ebebeb;}
.gray_box.bot{margin-bottom: 60px;}
.gray_box .txt{padding: 80px 20px 75px;text-align: center;}
.gray_box .txt strong{display: block;color: #222;font-weight: 600;font-size: 2.25rem;}
.gray_box .txt p{color: #555;font-size: 1.125rem;font-weight: 300;line-height: 1.556em;margin-top: 25px;}
.gray_box .txt em{font-size: 1rem;}
.gray_box .result_txt{text-align: center;padding: 40px 20px;color: #222;font-size: 1.5rem;font-weight: 300;}
.gray_box .result_txt strong{font-weight: 600;}

.result_box{padding: 60px 0 80px;text-align: center;border-bottom: 1px solid #e1e1e1;}
.result_box .icon{margin-bottom: 40px;}
.result_box .txt1{font-weight: 100;font-size: 4rem;color: #222;margin-bottom: 40px;}
.result_box .txt1 strong{font-weight: 600;}
.result_box .txt2{color: #121212;font-weight: 600;font-size: 2.25rem;}
.result_box .txt3{display: flex;justify-content: center;align-items: center;margin: 60px 0 20px;font-size: 1.125rem;line-height: 1.3em;}
.result_box .txt3 strong{color: #222;font-weight: 600;}
.result_box .txt3 span{color: #333;}
.result_box .txt3 em{margin: 0 15px;background-color: #ccc;width: 1px;height: 18px;}
.result_box .txt4{color: #555;font-weight: 300;font-size: 0.875rem;}
.result_box .txt5{margin-top: 30px;font-size: 1.125rem;font-weight: 300;color: #555;}

br.__m{display: none;}

@media screen and (max-width: 1024px) {
    html{font-size: 12px;}

    header .inner{height: 60px;}
    header h1{margin-top: -20px;left: 50%;margin-left: -72px;}
    header h1 a{width: 150px;height: 38px;}
    header .tel{margin-top: -12px;}
    header .tel a{width: 24px;height: 24px;padding: 0;background-size: contain;}
    header .tel span{display: none;}
    header .menu{position: fixed;top: 0;left: -75%;z-index: 100;background-color: #fff;height: 100%;width: 75%;}
    header .menu ul{padding-top: 60px;display: block;border-bottom: 1px solid #ddd;}
    header .menu ul li{padding: 0;float: none;text-align: left;border-top: 1px solid #ddd;}
    header .menu ul li a{line-height: 50px;padding: 0 20px;font-size: 1.25rem;}
    header .menu .close{display: block;}
    header .menu.on{left: 0;}
    header .nav_btn{display: block;}

    footer{padding: 40px 20px 50px;}
    footer .foot_brand{position: static;margin-bottom: 20px;}
    footer dl{margin-bottom: 15px;}
    footer .ori{margin-bottom: 20px;}

    .contents{padding-top: 60px;}
    .home{padding: 60px 20px 80px;background-position: right bottom;background-size: 330px auto;}

    .main_tit{margin-bottom: 40px;}
    .main_tit h2{font-size: 3rem;}
    .main_tit p{margin-top: 20px;font-size: 1.5rem; line-height: 1.4;}

    .list_tbl table tr th{display: block;border: none;padding: 15px;padding-bottom: 5px;}
    .list_tbl table tr th strong{font-size: 1rem;}
    .list_tbl table tr th strong::before{display: none;}
    .list_tbl table tr td{display: block;padding: 15px;padding-top: 0;}
    .list_tbl table tr td p{font-size: 1rem;}
    .list_tbl.inp table tr td{padding: 15px;padding-top: 5px;}
    .list_tbl.inp .inp_wrap{display: block;}
    .list_tbl.inp .inp_wrap ~ .inp_wrap{margin-top: 5px;}
    .list_tbl.inp .inp_wrap ul ~ ul{margin-left: 0;margin-top: 5px;}
    .list_tbl.inp .inp_wrap ul.w_44,
    .list_tbl.inp .inp_wrap ul.w_56,
    .list_tbl.inp .inp_wrap ul .in_2{width: 100%;}
    .list_tbl.inp .inp_wrap ul .in_3{width: calc(33.33% - 4px);}
    .list_tbl.inp .inp_wrap select,
    .list_tbl.inp .inp_wrap input{height: 40px;padding: 0 15px;}
    .list_tbl.inp .inp_wrap ul .in_2 ~ .in_2{margin-left: 0;margin-top: 10px;}
    .list_tbl.inp .inp_wrap ul .in_3 ~ .in_3{margin-left: 6px;}
    .list_tbl.inp .inp_wrap span{font-size: 0.875rem;}
    .list_tbl.inp .inp_wrap .sub_btn{height: 40px;width: 65px;margin-left: 5px;}
    .list_tbl.inp .inp_wrap.btn{display: flex;}
    .list_tbl.inp .inp_wrap.btn ul.w_44{width: calc(100% - 70px);}

    .go_btn{margin-top: 40px;}
    .go_btn ul li{float: none;width: 100%;}
    .go_btn ul li ~ li{margin-left: 0;margin-top: 10px;} 
    .go_btn ul li a{padding: 0 20px}
    .go_btn ul li a span{line-height: 50px;font-size: 1.125rem;background-size: 10px auto;}

    .sub{padding: 60px 20px 80px;}
    .sub_tit{margin-bottom: 50px;}
    .sub_tit h3{font-size: 2.5rem;}

    .step{padding-top: 0;margin-bottom: 40px;}
    .step ul{flex-wrap: wrap;justify-content: center;}
    .step ul li.on::before{height: 2px;}
    .step ul li dl{padding-bottom: 8px;}
    .step ul li dl dt{padding-left: 0;margin-bottom: 5px;}
    .step ul li dl dd{font-size: 0.8rem;padding-left: 0;white-space: nowrap;}
    .step ul li.on dl dd{background: none;}

    .txt_box{padding-bottom: 40px;}
    .txt_box dl ~ dl{margin-top: 30px;}
    .txt_box dl dt{margin-bottom: 10px;}

    .agree{margin-top: 40px;}
    .agree dl dt{margin-bottom: 10px;}
    .agree table{margin: 30px 0;}
    .agree table th{padding: 10px;font-size: 0.8rem;}
    .agree table td{padding: 10px;font-size: 0.8rem;}
    .agree ul li{padding: 10px;display: block;}
    .agree ul li .agree_btn{justify-content: flex-end;margin-top: 10px;}
    .agree ul li .agree_btn label ~ label{margin-left: 15px;}
    .agree ul li .agree_btn strong{margin-left: 5px;}
    .agree ul li .agree_btn span{width: 14px;height: 14px;}
    .agree ul li .agree_btn span::before{width: 6px;height: 6px;margin-top: -3px;margin-left: -3px;}

    .btn_area{margin-top: 50px;}
    .btn_area .btn{width: calc(50% - 5px);line-height: 40px;font-size: 1.125rem;}
    .btn_area .btn ~ .btn{margin-left: 10px;}

    .gray_box.bot{margin-bottom: 40px;}
    .gray_box .txt{padding: 40px 15px;}
    .gray_box .txt strong{font-size: 2rem;}
    .gray_box .txt p{margin-top: 15px;font-size: 1rem;}
    .gray_box .txt em{margin-top: 15px;font-size: 0.875rem;}
    .gray_box .result_txt{padding: 25px 10px;font-size: 1.25rem;}

    .result_box{padding: 40px 0;}
    .result_box .icon{margin-bottom: 25px;}
    .result_box .icon img{width: 70px;}
    .result_box .txt1{font-size: 3rem;margin-bottom: 20px;}
    .result_box .txt2{font-size: 1.7rem;}
    .result_box .txt3{margin: 30px 0 15px;font-size: 1rem;display: block;}
    .result_box .txt3 strong{display: block;margin-bottom: 5px;}
    .result_box .txt3 em{display: none;}
    .result_box .txt3 span{display: block;}
    .result_box .txt4{font-size: 0.8rem;}
    .result_box .txt5{margin-top: 20px;}
}

@media (max-width:768px){
    br.__m{display: block;}
}