/* mainVisual */
/* ---------------------------------------- */
.exoSec-mainVisual .hero-item{
    padding : 0 24px ;
}
.exoSec-mainVisual .hero-item > h2{
    font-size : 30px ;
    line-height : 1.5 ;
}
@media screen and ( min-width : 1064px ){
    .exoSec-mainVisual .hero-item > h2{
        font-size : 50px ;
        line-height : 1.4 ;
        letter-spacing: 3px;
    }
}
.exoSec-mainVisual .exo-main_btn{
    position : relative ;
    display : flex ;
    align-items : center ;
    justify-content : center ;
    width : 100% ;
    max-width : 320px ;
    height : 64px ;
    font-size : 20px ;
    color : #fff ;
    margin-top : 24px ;
    padding : 16px 16px 16px 56px ;
    font-weight : bold ;
    background : #191F2B ;
}
.exoSec-mainVisual .exo-main_btn::before{
    content : '無料' ;
    display : flex ;
    justify-content : center ;
    align-items : center ;
    position : absolute ;
    top : 0 ;
    left : 0 ;
    bottom : 0 ;
    margin : auto 0 ;
    width : 64px ;
    height : 100% ;
    background : #B48E00 ;
}
.exoSec-mainVisual .exo-main_btn::after{
    content : '' ;
    position : absolute ;
    top : 0 ;
    left : 64px ;
    bottom : 0 ;
    margin : auto 0 ;
    width : 0 ;
    height : 0 ;
    border-top : solid 12px transparent ;
    border-left : solid 12px #B48E00 ;
    border-right : solid 0 transparent ;
    border-bottom : solid 12px transparent ;
}
@media screen and ( min-width : 1064px ){
    .exoSec-mainVisual .exo-main_btn,
    .exoSec-mainVisual .exo-main_btn::before,
    .exoSec-mainVisual .exo-main_btn::after{
        transition : all ease .4s ;
    }
    .exoSec-mainVisual .exo-main_btn:hover{
        width : calc( 100% + 16px ) ;
        max-width : 336px ;
        opacity : .9 ;
    }
    /* .exoSec-mainVisual .exo-main_btn:hover::before{
        left : -8px ;
    }
    .exoSec-mainVisual .exo-main_btn:hover::after{
        left : 56px ;
    } */
}

/* intro */
/* ---------------------------------------- */
.exoSec-intro .bold-title{
    font-size : 26px ;
    line-height : 1.5 ;
}
@media screen and ( min-width : 1064px ){
    .exoSec-intro .bold-title{
        font-size : 40px ;
    }
}

.exoSec-intro .exoWrap{
    display : flex ;
    flex-direction : column ;
    align-items : center ;
    width : 100% ;
}
@media screen and ( min-width : 1064px ){
    .exoSec-intro .exoWrap{
        flex-direction : row ;
        padding-top : 24px ;
    }
}
.exoSec-intro .exoBtn{
    position : relative ;
    display : flex ;
    justify-content : center ;
    align-items : flex-start ;
    flex-direction : column ;
    width : 80% ;
    height : 56px ;
    box-sizing : border-box ;
    padding : 8px 40px ;
    color : #fff ;
    font-size : 13px ;
    font-weight : bold ;
}
.exoSec-intro .exoBtn::before{
    content : '' ;
    position : absolute ;
    top : 0 ;
    right : 16px ;
    bottom : 0 ;
    margin : auto 0 ;
    width : 32px ;
    height : 1px ;
    background : #fff ;
}
.exoSec-intro .exoBtn span{
    font-size : 16px ;
}
.exoSec-intro .exoBtn:first-child{
    background : #B48E00 ;
    margin-bottom : 24px ;
}
.exoSec-intro .exoBtn:last-child{
    background : #191F2B ;
}
@media screen and ( min-width : 1064px ){
    .exoSec-intro .exoBtn{
        width : calc( 50% - 40px ) ;
        transition : all ease .4s ;
    }
    .exoSec-intro .exoBtn:hover{
        opacity : .7  ;
    }
    .exoSec-intro .exoBtn:first-child{
        margin-bottom : 0 ;
        margin-right : 24px ;
    }
}



.cus-inner-title{
    padding-bottom : 0 ;
}

.exo.custom-inner{
    border-bottom : solid 1px #ddd ;
}

.exo--company{
    padding-top : 0 ;
}
.exo--company .cus-inner-title{
    border-bottom : solid 0 transparent ;
}
.exo--company .cus-inner-title::before{
    display : none ;
}
.exo--company .custom-inner h3{
    font-size : 16px ;
}
.exo--company .custom-inner h4{
    font-size : 16px ;
    font-weight : normal ;
}
.exo--company .custom-inner h4 span{
    font-size : 13px ;
}
@media screen and ( min-width: 1024px ){
    .exo--company .col-md-4{
        width : 20% ;
    }
    .exo--company .col-md-8{
        width : 80% ;
    }
}





.exo-form_row{
    display : flex ;
    flex-direction : column ;
    align-items : flex-start ;
    justify-content : flex-start ;
}



.exo-footer_btn{
    display : flex ;
    justify-content : center ;
    align-items : center ;
    width : 280px ;
    height : 64px ;
    background : gray ;
}
.exo-footer_btn:not(:last-child){
    margin-bottom : 32px ;
}


.exo-form_selectBox{
    position : relative ;
    display : flex ;
    width : 180px ;
    height : 48px ;
    background : #eee ;
    margin-bottom : 20px ;
}
.exo-form_selectBox select{
    appearance: none ;
    border : none ;
    background : transparent ;
    width : 100% ;
    height : 100% ;
    box-sizing : border-box ;
    padding : 15px ;
}
.exo-form_selectBox::before{
    content : '' ;
    position : absolute ;
    top : 0 ;
    right : 12px ;
    bottom : 0 ;
    margin : auto 0 ;
    width : 0 ;
    height : 0 ;
    border-top : solid 8px #aaa ;
    border-left : solid 5px transparent ;
    border-right : solid 5px transparent ;
    border-bottom : solid 0 transparent ;
}
.exo-date{
    appearance : none ;
    border : none ;
    position : relative ;
    display : flex ;
    width : 180px ;
    height : 48px ;
    background : #eee ;
    margin-bottom : 24px ;
    box-sizing : border-box ;
    padding : 15px ;
}



.exo-stepSection{
    padding : 80px 0 !important ;
}
.exo-stepWrap{
    display : flex ;
    flex-direction : column ;
    align-items : flex-start ;
    height : 230px ;
}
@media screen and ( min-width : 769px ){
    .exo-stepWrap{
        height : 180px ;
    }
}
.exo-step{
    font-size : 13px ;
    color : #fff ;
    margin-bottom : 8px ;
}
.exo-stepTitle{
    font-size : 18px !important ;
}
.exo-stepTitle + p{
    margin-top : 0 !important ;
    font-size : 14px !important ;
    line-height : 1.4 ;
}
.exo-stepBtn{
    position : relative ;
    display : flex ;
    justify-content : center ;
    align-items : center ;
    width : 180px ;
    height : 48px ;
    font-size : 14px ;
    font-weight : bold ;
    background : #B48E00 ;
    color : #fff ;
    margin-top : 16px ;
    transition : all ease .3s ;
}
.exo-stepBtn:hover{
    opacity : .8 ;
}
.exo-stepBtn::before{
    content : '' ;
    position : absolute ;
    top : 0 ;
    right : 16px ;
    bottom : 0 ;
    margin : auto 0 ;
    width : 6px ;
    height : 6px ;
    border-top : solid 2px #fff ;
    border-right : solid 2px #fff ;
    transform : rotate(45deg) ;
}
.swiper-pagination{
    color : rgba(255,255,255,.5) !important ;
}
.exo-stepOverlay{
    opacity : .6 !important ;
}
.single-slider .swiper-button-prev,
.single-slider .swiper-button-next{
    background : #fff !important ;
    color : #292929 !important ;
}
@media screen and ( max-width : 1063px ){
    .exo-naviItem{
        position : relative !important ;
        padding : 0 !important ;
    }
    .exo-naviItem::before{
        content : '' ;
        position : absolute ;
        top : 0 ;
        right : 8px ;
        bottom : 0 ;
        margin : auto 0 ;
        width : 8px ;
        height : 8px ;
        box-sizing : border-box ;
        transform : rotate(45deg) ;
        border-top : solid 2px #fff ;
        border-right : solid 2px #fff ;
    }
    .exo-naviBtn{
        position : relative ;
        float : none !important ;
        display : flex ;
        align-items : center ;
        width : 100% ;
        height : 48px ;
        font-size : 14px !important ;
        border-bottom : solid 1px rgba(255,255,255,.2) ;
    }
    
}
@media screen and ( min-width : 1064px ){
    .exo-naviBtn{
        font-size : 13px !important ;
    }
    .exo-naviItem{
        height : 100% !important ;
        display : flex ;
        align-items : center ;
    }
    .exo-naviItem:last-child{
        height : 100% !important ;
        background : #B48E00 ;
    }
    .nav-holder{
        top : 0 ;
        height : 100% ;
        margin-right : 0 ;
    }
    .nav-holder nav{
        height : 100% !important ;
        
    }
    .nav-holder ul{
        display : flex ;
        align-items : center ;
        justify-content : flex-end ;
        height : 100% !important ;
    }
}



.exo-consulName{
    font-size : 18px !important;
}
.exo-consulName--sub{
    display : block ;
    font-size : 12px !important ;
}
.exo-consultantPhoto{
    position : relative ;
    z-index : 1 ;
    width : 100% ;
    aspect-ratio : 1 / 1 ;
}
.exo-consultantPhoto::before{
    content : '' ;
    position : absolute ;
    z-index : 2 ;
    top : 0 ;
    left : 0 ;
    width : 100% ;
    height : 100% ;
    animation : photo_change ease 6s infinite ;
    opacity : 0 ;
}
.exo-consul-01{
    background : url(../images/consultant_01_1.jpg) center / cover no-repeat ;
}
.exo-consul-02{
    background : url(../images/consultant_02_2.jpg) center / cover no-repeat ;
}
.exo-consul-01::before{
    background : url(../images/consultant_01_2.jpg) center / cover no-repeat ;
}
.exo-consul-02::before{
    background : url(../images/consultant_02_1.jpg) center / cover no-repeat ;
    animation-delay : 1s ;
}
@keyframes photo_change {
    0%  { opacity : 0 ; }
    40% { opacity : 0 ; }
    50% { opacity : 1 ; }
    90% { opacity : 1 ; }
    100%{ opacity : 0 ; }
}


.exo-title{
    font-size : 28px !important ;
}
@media screen and ( min-width : 1064px ){
    .exo-title{
        font-size : 40px !important ;
    }
}
.exo-btnBase{
    position : relative ;
    display : flex ;
    justify-content : center ;
    align-items : center ;
    width : 264px ;
    height : 56px ;
    font-size : 14px ;
    font-weight : bold ;
    transition : all ease .4s ;
}
.exo-btnBase:hover{
    opacity : .8 ;
}
.exo-btnBase::before{
    content : '' ;
    position : absolute ;
    top : 0 ;
    right : 16px ;
    bottom : 0 ;
    margin : auto 0 ;
    width : 24px ;
    height : 1px ;
    background : #fff ;
}
@media screen and ( min-width : 1064px ){
    .exo-btnBase{
        width : 280px ;
        height : 64px ;
    }
    .exo-btnBase::before{
        width : 32px ;
    }
}
.exo-btnCompany{
    color : #fff ;
    background : #191F2B ;
}

.exo-btnFooter{
    box-sizing : border-box ;
    padding-right : 32px ;
}
.exo-btnFooter:nth-child(1){
    color : #fff ;
    background : #B48E00 ;
    margin-bottom : 16px ;
}
.exo-btnFooter:nth-child(2){
    color : #191F2B ;
    background : #fff ;
}
.exo-btnFooter:nth-child(2)::before{
    background : #191F2B ;
}
.act-entry{
    color : #fff !important ;
}
nav .exo-naviItem a.act-entry::before{
    background : #fff !important ;
}

@media screen and ( min-width : 1064px ){
    .sp-break{
        display : none ;
    }
}

.exo-service-C{
    color : #fff ;
    background : #B48E00 ;
}
.exo-service-B{
    color : #fff ;
    background : #191F2B ;
}


.exo-text{
    display : flex ;
    align-items : center ;
    font-size : 13px !important ;
    font-weight : bold !important ;
}
@media screen and ( min-width : 1064px ){
    .exo-text{
        font-size : 16px !important ;
    }
}


#exo-consList-1,
#exo-consList-2{
    display : none ;
}
.exo-listWrap{
    text-align : left ;
    font-size : 14px ;
    margin-bottom : 32px ;
    max-height : 0 ;
    overflow : hidden ;
    transition : all ease .6s ;
}
.exo-listLabel{
    position : relative ;
    display : flex ;
    justify-content : center ;
    align-items : center ;
    width : 100% ;
    height : 56px ;
    box-sizing : border-box ;
    border : solid 1px transparent ;
    font-size : 14px ;
    font-weight : bold ;
    margin-top : 24px ;
    background : #191F2B ;
    color : #fff ;
    transition : all ease .3s ;
    cursor :pointer ;
}
.exo-listLabel::before,
.exo-listLabel::after{
    content : '' ;
    position : absolute ;
    top : 0 ;
    bottom : 0 ;
    right : 24px ;
    margin : auto 0 ;
    background :#fff ;
    width : 16px ;
    height : 2px ;
    transition : all ease .3s ;
}
.exo-listLabel::after{
    transform: rotate(90deg) ;
}
.exo-dataList{
    display : flex ;
    flex-direction : column ;
}
.exo-dt{
    position : relative ;
    font-weight : bold ;
    margin-top : 24px ;
    padding-left : 16px ;
    height : 24px ;
    line-height : 24px ;
}
.exo-dt::before{
    content : '' ;
    position : absolute ;
    top : 0 ;
    left : 0 ;
    bottom : 0 ;
    margin : auto 0 ;
    width : 12px ;
    height : 3px ;
    background : #191F2B ;
}
.exo-dd{
    font-size : 12px ;
    padding-left : 24px ;
    margin-top : 8px ;
    padding-top : 8px ;
    border-top : solid 1px #ddd ;
}
.exo-item{
    position : relative ;
    display : flex ;
    flex-direction : column ;
    justify-content : flex-start ;
    align-items : flex-start ;
    box-sizing : border-box ;
    max-width : 340px ;
}
.exo-item:not(:last-child){
    margin-bottom : 40px ;
}
.exo-item span:nth-child(1){
    position : relative ;
    display : inline-block ;
    padding : 4px 8px ;
    color : #fff ;
    font-weight : bold ;
    background : #191F2B ;
    margin-bottom : 20px ;
}   
.exo-item span:nth-child(1)::before{
    content : '' ;
    position : absolute ;
    bottom : -14px ;
    left : 0 ;
    right : 0 ;
    margin : 0 auto ;
    width : 0 ;
    height : 0 ;
    border-top : solid 10px #191F2B ;
    border-left : solid 10px transparent ;
    border-right : solid 10px transparent ;
    border-bottom : solid 0 transparent ;
}
.exo-item span:nth-child(2){
    display : inline-block ;
    padding : 4px 8px ;
    color : #fff ;
    font-weight : bold ;
    background : #B48E00 ;
}   
.exo-item span:nth-child(3){
    position : absolute ;
    display : flex ;
    justify-content : center ;
    align-items : center ;
    top : 0 ;
    right : 16px ;
    width : 70px ;
    height : 70px ;
    text-align : center ;
    font-size : 14px ;
    font-weight : bold ;
    border-radius : 50% ;
    border : solid 3px #191F2B ;
    color : #191F2B ;
}   
#exo-consList-1:checked ~ .exo-listWrap,
#exo-consList-2:checked ~ .exo-listWrap{
    max-height : 740px ;
}
#exo-consList-1:checked ~ .exo-listLabel,
#exo-consList-2:checked ~ .exo-listLabel{
    border-color : #191F2B ;
    color : #191F2B ;
    background : transparent ;
}
#exo-consList-1:checked ~ .exo-listLabel::before,
#exo-consList-2:checked ~ .exo-listLabel::before{
    background : #191F2B  ;
}
#exo-consList-1:checked ~ .exo-listLabel::after,
#exo-consList-2:checked ~ .exo-listLabel::after{
    background : #191F2B  ;
    transform : rotate(0deg) ;
}

#exo-term .post-container .post p,
#exo-term .post-container .post li{
    text-align : left ; 
    font-size : 12px ;
    line-height : 1.4 ;
}
#exo-term .post-container .post ol{
    margin-top : 24px ;
}
#exo-term .post-container .post li{
    position : relative ;
    box-sizing : border-box ;
    padding-left : 16px ;
    margin-bottom : 24px ;
}
#exo-term .post-container .post li::before{
    position : absolute ;
    top : 0 ;
    left : 0 ;
}
#exo-term .post-container .post li:nth-child(1)::before{
    content : '(1)' ;
}
#exo-term .post-container .post li:nth-child(2)::before{
    content : '(2)' ;
}
#exo-term .post-container .post li:nth-child(3)::before{
    content : '(3)' ;
}
#exo-term .post-container .post li:nth-child(4)::before{
    content : '(4)' ;
}
#exo-term .post-container .post li:nth-child(5)::before{
    content : '(5)' ;
}
#exo-term .post-container .post li:nth-child(6)::before{
    content : '(6)' ;
}
#exo-term .post-container .post li:nth-child(7)::before{
    content : '(7)' ;
}
#exo-term .post-container h2 span{
    font-size : 18px ;
}
#exo-term .post-container h3{
    text-align : left ; 
    font-size : 14px ;
    font-weight : bold ;
    margin-bottom : 8px ;
}
#exo-term .post-container a{
    color : blue ;
    text-decoration : underline ;
}
#exo-term .post-container .post p:nth-last-child( -n + 2 ){
    text-align : right ;
}
#exo-term.exo-pd .post-container .post li{
    margin-bottom : 8px !important ;
}
#exo-term.exo-pd .post-container .post li::before{
    content : '・' !important ;
}
#exo-term.exo-pd .post-container h3{
    margin-top : 32px ;
}
#exo-term.exo-pd dl{
    text-align : left !important ;
    border : solid 1px #ddd ;
    box-sizing : border-box ;
    padding : 8px ;
}
#exo-term.exo-pd dt{
    font-size : 13px ;
    font-weight : bold ;
}
#exo-term.exo-pd span{
    display : block ;
}
#exo-term.exo-pd span:nth-child(1),
#exo-term.exo-pd span:nth-child(5){
    font-weight : bold ;
    margin-top : 8px ;
}
#exo-term.exo-pd .post-container .post p:nth-last-child( -n + 2 ){
    text-align : left ;
}


.exo-entry{
    flex-direction : column ;
    font-size : 16px ;
    font-weight : bold ;
    color : #fff ;
    background : #B48E00 ;
    outline : none ;
    border : none ;
}
.exo-entry span{
    font-size : 12px ;
}
.exo-entry::before{
    display: none ;
}
.exo-pd_box{
    display : flex ;
    width : 100% ;
    margin-bottom : 24px ;
}
.exo-pd_link{
    display : inline-block ;
    padding : 8px 40px ;
    text-decoration : underline ;
    color : #191F2B ;
    border : solid 1px #191F2B ;
}
.exo-cont-logo{
    width : 80% ;
    max-width : 680px ; 
}
@media screen and ( min-width : 1064px ){
    .exo-cont-logo{
        margin : 40px 0 100px ;
    }
}
.pr-title::before{
    background : #191F2B !important ;
}
.exo-btnTop{
    border : solid 1px #191F2B ;
    margin : 0 auto ;
}
.exo-btnTop::before{
    display : none ;
}
.exo-btnTop:hover{
    background : #191F2B ;
    color : #fff ;
    opacity : 1 ;
}
.exo-finishTitle{
    font-size : 48px !important ;
}
.exo-finishTitle::before{
    bottom : -10px !important ;
}
.exo-finishWrap{
    margin : 40px 0 ;
}

@media screen and ( max-width : 1063px ){
    .exo-contentTitle{
        font-size : 34px !important ;
        line-height : 1.4 !important ;
    }
}


#contact-form input::placeholder,
#contact-form textarea::placeholder{
    color : #dadada !important ;
}
#contact-form input,
#contact-form textarea{
    margin-bottom : 0 !important ;
}
#contact-form .exo-date{
    margin-bottom : 24px !important ;
}
/* error style */
.contact--error{
    margin-top : 0 ;
    margin-bottom : 24px ;
    height : 0 ;
    overflow : hidden ;
}
.contact--error._active{
    color :#FF3669 ;
    font-size : 12px ;
    margin-top : 4px ;
    height : auto ;
    overflow : hidden ;
}
.contact--error._active::before{
    content : '※' ;
}


#hiddenSubmit{
    display : none ;
}
