/*---------------------------------

  共通

---------------------------------*/

#training .page_nav .arrow_b::after{
    border-right: 2px solid var(--black);
    border-bottom: 2px solid var(--black);
}
#training .page_nav .arrow_b:hover::after{
    border-right: 2px solid var(--main);
    border-bottom: 2px solid var(--main);
}

@media screen and (max-width:1023px){

}
@media screen and (max-width:767px){
    
}

/*---------------------------------

　  社員研修

---------------------------------*/

#trainingSec{
    position: relative;
    padding-bottom: 140px;
    z-index: 0;
}
/*
#trainingSec::after{
    content: '';
    position: absolute;
    bottom: -1px;
    display: block;
    width: 100%;
    height: 662px;
    background: url(../img/common/border_02.png) no-repeat;
    background-size: cover;
    z-index: -1;
}
*/
#trainingSec .title{
    margin: 0 0 30px;
    font-size: 40px;
    font-weight: 900;
    line-height: 1.4;
}
#trainingSec .orange_box{
    position: relative;
    align-items: center;
    gap: 0 40px;
    margin: 20px 0 0;
    padding: 40px 56px;
    background: #FFB508;
    border-radius: 10px;
    color: #fff;
}
#trainingSec .schedule_flow .beige_box{
    position: relative;
    align-items: center;
    gap: 0 40px;
    margin: 20px 0 0;
}
#trainingSec .schedule_flow .beige_box:not(:first-of-type)::before,
#trainingSec .orange_box:not(:first-of-type)::before{
    content: '';
    position: absolute;
    top: -20px;
    left: 90px;
    display: block;
    height: 20px;
    width: 8px;
    background: #FFE4A6;
}

#trainingSec .time{
    display: block;
    width: 140px;
    color: var(--main);
    font-size: 30px;
    font-weight: 600;
}
#trainingSec .orange_box .time,
#trainingSec .orange_box .time .num{
    color: #fff;
}
#trainingSec .time .num{
    color: var(--main);
    font-size: 48px;
    font-weight: 600;
}
#trainingSec .data{
    width: calc(100% - 180px);
    font-size: 15px;
    line-height: 1.8;
}
#trainingSec .schedule_flow .beige_box:nth-of-type(3){
    background-image: url(../img/training/training_pic_01.png);
    background-repeat: no-repeat;
    background-position: right 54px center;
    background-size: 176px;
}
#trainingSec .schedule_flow .beige_box:nth-of-type(7){
    background-image: url(../img/training/training_pic_02.png);
    background-repeat: no-repeat;
    background-position: right 54px center;
    background-size: 176px;
}
#trainingSec .ttl{
    font-size: 26px;
    font-weight: 900;
}
#trainingSec .txt{
    margin: 10px 0 0;
}
#trainingSec .schedule_flow .beige_box:nth-of-type(3) .txt,
#trainingSec .schedule_flow .beige_box:nth-of-type(7) .txt{
    padding-right: 200px;
}

/*
#trainingSec .training_ex{
    padding: 0 55% 0 0;
    margin: 120px 0 0;
    background: url(../img/training/training_pic01.png) no-repeat right;
    background-size: 50%;
}
#trainingSec .training_ex .set .ttl{
    color: var(--main);
}
#trainingSec .training_ex .set + .set{
    margin: 32px 0 0;
}
*/

#trainingSec .training_ex{
    padding: 110px 0 0;
}
#trainingSec .training_ex .title{
    margin: 0 0 32px;
}
#trainingSec .training_ex .flex{
    gap: 40px;
}
#trainingSec .training_ex .flex .beige_box{
    width: calc(50% - 20px);
    margin: 0;
}
#trainingSec .training_ex .flex .beige_box .ttl{
    margin: 24px 0 16px;
}

@media screen and (max-width:1440px){

    #trainingSec::after{
        height: 46vw;
        background: url(../img/common/border_02_1440.png) no-repeat;
        background-size: 100%;
    }

}

@media screen and (max-width:767px){

    #trainingSec{
        padding-bottom: 90px;
    }
    #trainingSec .orange_box{
        gap: 0 40px;
        margin: 20px 0 0;
        padding: 6vw 7vw;
    }
    #trainingSec .time .num{
        font-size: 42px;
    }
    #trainingSec .data{
        width: 100%;
    }
    #trainingSec .time + .data{
        padding: 10px 0 0;
    }
    #trainingSec .schedule_flow .beige_box:nth-of-type(3){
        padding-bottom: 170px;
        background-image: url(../img/training/training_pic_01.png);
        background-repeat: no-repeat;
        background-position: center bottom 30px;
        background-size: 176px;
    }
    #trainingSec .schedule_flow .beige_box:nth-of-type(7){
        padding-bottom: 170px;
        background-image: url(../img/training/training_pic_02.png);
        background-repeat: no-repeat;
        background-position: center bottom 30px;
        background-size: 176px;
    }
    #trainingSec .schedule_flow .beige_box:nth-of-type(3) .txt,
    #trainingSec .schedule_flow .beige_box:nth-of-type(7) .txt{
        padding-right: 0px;
    }
    
    #trainingSec .ttl{
        font-size: 21px;
    }
    /*
    #trainingSec .training_ex{
        padding: 0;
        margin: 120px 0 0;
        background: none;
    }
    */
    
    #trainingSec .training_ex{
        padding: 80px 0 0;
    }
    #trainingSec .training_ex .title{
        margin: 0 0 32px;
    }
    #trainingSec .training_ex .flex{
        gap: 40px;
    }
    #trainingSec .training_ex .flex .beige_box{
        width: 100%;
        max-width: 500px;
    }
    #trainingSec .training_ex .flex .beige_box .ttl{
        margin: 24px 0 16px;
    }
    
}


/*---------------------------------

　  キャリアパス

---------------------------------*/

#careerSec{
    padding: 0 0 278px;;
    background: #FFF7D5;
}

#careerSec .inner{
    gap: 0 4%;
    padding: 120px 0 150px;
}
#careerSec .title_orange{
    width: 100%;
    margin: 0 0 24px;
}
#careerSec .intro{
    max-width: 580px;
    margin: 0 auto 50px;
    font-size: 15px;
    line-height: 1.8;
}
#careerSec .flow{
    width: 48%;
}
#careerSec .title{
    min-height: 100px;
    margin: 0 0 24px;
    padding: 10px 0 0 110px;
    background: url(../img/training/career_ico_02.png) no-repeat;
    background-size: 100px;
    font-size: 32px;
    line-height: 1.3;
}
#careerSec .flow:first-of-type .title{
    
    background: url(../img/training/career_ico_01.png) no-repeat;
    background-size: 100px;
}
#careerSec .flow .box{
    position: relative;
    background: #fff;
    border: 3px solid #FFD726;
    border-radius: 10px;
}
#careerSec .flow .box:not(:first-of-type){
    margin: 12px 0 0;
}
#careerSec .flow .box:not(:first-of-type)::before{
    content: '';
    position: absolute;
    top: -15px;
    left: 50px;
    display: block;
    height: 12px;
    width: 8px;
    background: #FFD726;
}

#careerSec .flow .box .age{
    display: none;
    width: 104px;
    padding: 30px 15px;
    background: #FFD726;
    font-size: 16px;
}
#careerSec .flow .box .age::before{
    content: '入社';
    display: block;
    margin: 0 0 5px;
    font-size: 15px;
}
#careerSec .flow .box .age .num{
    font-size: 27px;
    font-weight: 600;
    line-height: 1.2;
}

#careerSec .flow .box .data{
    width: 100%/*calc(100% - 104px)*/;
    padding: 30px;
    font-size: 15px;
    line-height: 1.4;
}
#careerSec .flow .box .data .ttl{
    margin: 0;
    color: var(--main);
    font-size: 18px;
    font-weight: 900;
}
#careerSec .flow .box .data .ttl span{
    display: block;
    margin: 0 30px;
}

#careerSec .flow .box .data .txt{
    display: none;
}
@media screen and (max-width:1440px){
    
    #careerSec{
        padding: 0 0 19vw;
    }
    #careerSec .inner{
        padding: 5vw 0 10vw;
    }
    
}
@media screen and (max-width:767px){
    
    #careerSec .inner{
        padding: 80px 0 60px;
    }
    #careerSec .flow{
        width: 100%;
    }
    #careerSec .flow + .flow{
        margin: 40px 0 0;
    }
}