@charset "UTF-8";
.main_wrap {
    margin: 60px 0 100px 0;
}
.flowSec_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 0 100px 0;
    width: 1000px;
    margin: 0 auto;
}
.flowSec_wrap.is-revs {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.flowSec_wrap.ver4 {
    padding: 0 0 170px 0;
}
.flowSec_wrap.bgw {
    padding: 40px 60px 40px 40px;
    border-radius: 30px;
    -ms-border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
    background-color: #fff;
    margin: 0 0 50px 0;
    box-sizing: border-box;
}
.flowSec_wrap.bgw:last-child {
    margin: 0;
}
.flowSec_ttl {
    margin: 0 0 50px 0;
}
.flowSec_ttl .c-ttl {
    text-align: left;
}
.flowSec_img img {
    border-radius: 30px;
    -ms-border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
}
.flow_txt {
    margin: 0 0 0 60px;
}
.flowSec_wrap.is-revs .flow_txt {
    margin: 0 60px 0 0;
}
.flow_txt dl dt {
    margin: 0 0 25px 0;
    padding: 0 0 0 70px;
}
.flow_txt.ver2 dl dt {
    padding: 0;
    margin: 0 0 20px 0;
}
.flow_txt dl dt span {
    position: relative;
    font-size: 18px;
    line-height: 1.6;
    font-weight: 800;
    color: #ff9e1a;
}
.flow_txt.ver2 dl dt span {
    font-size: 24px;
}
.flow_txt dl dt span:before {
    content: "";
    position: absolute;
    display: block;
    width: 62px;
    height: 26px;
    top: -5px;
    left: -70px;
    z-index: 10;
}
.flow_txt.ver2 dl dt span:before {
    display: none;
}
.flowSec_wrap.ver1 .flow_txt dl dt span:before {
    background: url(../img/features_ttl01.png) no-repeat 0 0;
}
.flowSec_wrap.ver2 .flow_txt dl dt span:before {
    background: url(../img/features_ttl02.png) no-repeat 0 0;
}
.flowSec_wrap.ver3 .flow_txt dl dt span:before {
    background: url(../img/features_ttl03.png) no-repeat 0 0;
}
.flowSec_wrap.ver4 .flow_txt dl dt span:before {
    background: url(../img/features_ttl04.png) no-repeat 0 0;
}
.flow_txt dl dd {
    font-size: 14px;
    line-height: 2.5;
    text-align: justify;
}
.flowSec_btn {
    width: 100%;
    margin: 40px 0 0 0;
}
.flowSec_btn .c-btn.is-cv {

}
.flowSec_btn .c-btn.is-cv.is-clr01 {
    float: left;
    margin: 0 20px 0 0;
}
.flowSec_btn .c-btn.is-cv a {
    font-size: 18px;
    height: 70px;
    line-height: 1.3;
    max-width: 240px;
}
.flowSec_btn .c-btn.is-cv a .is-btn {
    padding: 0 0 0 15px;
}
.flow_wrap {
    background: url(../img/bg01_n.png) repeat top center;
    padding: 80px 0 100px;
    position: relative;
}
.flow_wrap:before {
    content: "";
    width: 468px;
    height: 51px;
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
    background: url(../img/bg01_parts_n.png) no-repeat 0 0;
}
.flow_ttl {
    margin: 0 0 80px;
    position: relative;
}
.flow_ttl:before {
    content: "";
    width: 90px;
    height: 74px;
    position: absolute;
    top: -94px;
    left: 50%;
    transform: translateX(-50%);
    background: url(../img/about_tokucho_ttl.png) no-repeat 0 0;
}
.flow_ttl:after {
    content: "";
    width: 988px;
    height: 168px;
    position: absolute;
    top: -220px;
    left: 50%;
    transform: translateX(-50%);
    background: url(../img/about_ttl2.png) no-repeat 0 0;
}
.flow_btn {
    margin: 30px 0 0 0;
}
.flow_btn .c-btn a {
    height: 60px;
    font-size: 20px;
}
/*料金について*/
.feetxt_wrap {
    margin: 0 0 180px 0;
}
.fee-txt {
    font-size: 14px;
    line-height: 2.4;
}
.fee-txt.ver2 {
    line-height: 1.2;
}
.fee-txt span {
    display: block;
    font-size: 22px;
    line-height: 1;
    font-weight: 800;
    margin: 50px 0 20px 0;
}
.feebox_wrap {
    padding: 50px 40px 55px 40px;
    background-color: #fff;
    border-radius: 30px;
    -ms-border-radius: 30px;
    -moz-border-radius: 30px;
    -webkit-border-radius: 30px;
}
.feebox_wrap .fee_table {
    margin: 0 0 15px 0;
}
.flow_wrap.ver2 {
    padding: 80px 0 50px;
}
@media (max-width: 767px) {
    .main_wrap {
        margin: 35px 0 40px 0;
    }
    .flowSec_wrap {
        width: 100%;
      	display:block;
        padding: 0;
        border-radius: 20px;
        -ms-border-radius: 20px;
        -moz-border-radius: 20px;
        -webkit-border-radius: 20px;
        margin: 0 0 30px 0;
    }
    .flowSec_wrap.ver1 {
        margin: 0 0 40px 0;
    }
    .flowSec_wrap.ver4 {
        padding: 0;
        margin: 0 0 115px 0;
    }
    .flowSec_wrap.bgw {
        padding: 0;
        border-radius: 20px;
        -ms-border-radius: 20px;
        -moz-border-radius: 20px;
        -webkit-border-radius: 20px;
        margin: 0 0 35px 0;
    }
    .flowSec_ttl {
        margin: 0 0 15px 0;
    }
    .flowSec_ttl .c-ttl {
        text-align: center;
    }
    .flowSec_img {
        border-radius: 20px;
        -ms-border-radius: 20px;
        -moz-border-radius: 20px;
        -webkit-border-radius: 20px;
    }
    .flowSec_img img {
        width: 100%;
        border-radius: 20px;
        -ms-border-radius: 20px;
        -moz-border-radius: 20px;
        -webkit-border-radius: 20px;
    }
    .flowSec_wrap.bgw .flowSec_img img {
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
    }
    .flow_txt {
        width: 100%;
        padding: 20px 0 0 0;
        margin: 0;
        box-sizing: border-box;
    }
    .flow_txt.ver2 {
        padding: 25px 20px 30px 20px;
    }
    .flowSec_wrap.is-revs .flow_txt {
        margin: 0;
    }
    .flow_txt dl dt {
        margin: 0 0 10px 0;
        padding: 0 0 0 50px;
    }
    .flow_txt.ver2 dl dt {
        text-align: center;
        margin: 0 0 15px 0;
    }
    .flow_txt dl dt span {
        font-size: 14px;
        letter-spacing: -0.05em;
    }
    .flow_txt.ver2 dl dt span {
        font-size: 14px;
    }
    .flow_txt dl dt span:before {
        width: 39px;
        height: 19px;
        left: -50px;
        top: 0;
    }
    .flowSec_wrap.ver1 .flow_txt dl dt span:before {
        background: url("../img/sp/features_ttl01.png") no-repeat 0 0;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .flowSec_wrap.ver2 .flow_txt dl dt span:before {
        background: url("../img/sp/features_ttl02.png") no-repeat 0 0;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .flowSec_wrap.ver3 .flow_txt dl dt span:before {
        background: url("../img/sp/features_ttl03.png") no-repeat 0 0;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .flowSec_wrap.ver4 .flow_txt dl dt span:before {
        background: url("../img/sp/features_ttl04.png") no-repeat 0 0;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .flow_txt dl dd {
        font-size: 13px;
        line-height: 1.8;
    }
    .flowSec_btn {
        width: 250px;
        margin: 25px auto 0 auto;
    }
    .flowSec_btn .c-btn.is-cv {
        width: 100%;
    }
    .flowSec_btn .c-btn.is-cv.is-clr01 {
        float: none;
        margin: 0 0 15px 0;
    }
    .flowSec_btn .c-btn.is-cv a {
        height: 50px;
        font-size: 14px;
        max-width: 100%;
    }
    .flowSec_btn .c-btn.is-cv a .is-btn {
        padding: 0;
    }
    .flowSec_btn .c-btn.is-icn01 a .is-btn:after {
        left: 22px;
        right: auto;
        top: 50%;
        margin: auto;
    }
    .flowSec_btn .c-btn.is-icn01 a .is-btn:before {
        content: "";
        position: absolute;
        display: block;
        width: 15px;
        height: 15px;
        right: 20px;
        top: 50%;
        transform: translateY(-50%);
        background: url(../svg/icn_arw_w.svg) no-repeat 0 0;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .flow_wrap {
        background: url(../img/bg01_n.png) repeat top center;
        background-size: auto 25px;
        -ms-background-size: auto 25px;
        -moz-background-size: auto 25px;
        -webkit-background-size: auto 25px;
        padding: 50px 0;
    }
    .flow_wrap:before {
        width: 234px;
        height: 25px;
        top: -24px;
        background: url(../img/bg01_parts_n.png) no-repeat top center;
        background-size: auto 25px;
        -ms-background-size: auto 25px;
        -moz-background-size: auto 25px;
        -webkit-background-size: auto 25px;
    }
    .flow_ttl {
        margin: 0 0 25px;
    }
    .flow_ttl:before {
        width: 45px;
        height: 37px;
        top: -40px;
        background: url(../img/about_tokucho_ttl.png) no-repeat 0 0;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .flow_ttl:after {
        width: 335px;
        height: 84px;
        top: -110px;
        background: url(../img/sp/about_ttl2.png) no-repeat 0 0;
        background-size: 100% auto;
        -ms-background-size: 100% auto;
        -moz-background-size: 100% auto;
        -webkit-background-size: 100% auto;
    }
    .flow_btn {
        margin: 25px 0 0 0;
    }
    .flow_btn .c-btn a {
        height: 50px;
        font-size: 15px;
    }
    /*料金について*/
    .feetxt_wrap {
        margin: 0 0 125px 0;
    }
    .fee-txt {
        font-size: 13px;
        line-height: 1.8;
    }
    .fee-txt.ver2 {
        font-size: 10px;
        line-height: 1.2;
    }
    .fee-txt span {
        font-size: 16px;
        margin: 30px 0 10px 0;
    }
    .feebox_wrap {
        padding: 30px 20px;
        border-radius: 20px;
        -ms-border-radius: 20px;
        -moz-border-radius: 20px;
        -webkit-border-radius: 20px;
    }
    .feebox_wrap .fee_table {
        margin: 0 0 10px 0;
    }
    .flow_wrap.ver2 {
        padding: 50px 0 30px;
    }
}/*@media*/
@media (max-width: 374px) {
    .flow_ttl:after {
        width: 300px;
    }
}/*@media*/
