/* MV */
.mv h1 img{
    display: block;
    width: 100%;
    object-fit: contain;
}
/* MV */

/* FEATURES */
.features{
    background-image: url('../img/pc/about_feature_bg.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    padding: 170px 0 150px;
}
.features .features_flex{
    display: flex;
    justify-content: center;
    align-items: flex-start;
}
.features .features_flex h2{
    position: relative;
    margin-left: 3%;
    margin-right: 15%;
}
.features .features_flex h2>img{
    position: absolute;
    top: -40%;
    left: -40%;
    mix-blend-mode: multiply;
}
.features .features_flex h2 .txt{
    position: relative;
    z-index: 1;
    font-size: 48px;
}
.features .features_flex h2 .txt .min{
    font-size: 16px;
    display: block;
    font-weight: normal;
}
.features .features_flex ul{
    list-style: none;
    width: 37%;
}
.features .features_flex ul li{
    font-weight: 700;
    font-size: 20px;
    line-height: 1;
    display: flex;
    align-items: center;
    background-color: #fff;
    border-radius: 20px;
}
.features .features_flex ul li+li{
    margin-top: 20px;
}
.features .features_flex ul li .num{
    font-family: century-gothic, sans-serif;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1px;
    font-size: 45px;
    display: inline-block;
    text-align: center;
    background-color: #222;
    border-radius: 20px 0 0 20px;
    color: #fff;
    vertical-align: middle;
    padding: 30px 25px;
}
.features .features_flex ul li p{
    line-height: 1.5;
    display: block;
    width: 100%;
    padding: 0 20px;
}
.ojt{
    display: block;
    width: 100%;
}
@media screen and (min-width: 768px) and (max-width: 1200px){
    .features .features_flex ul{
        width: 50%;
    }
    .features .features_flex ul li{
        font-size: 15px;
        padding-right: 20px;
    }
    .features .features_flex ul li p{
        text-align: justify;
    }
}
@media screen and (max-width: 767px){
    .features{
        padding: 100px 0 270px;
        background-image: url('../img/sp/about_feature_bg.jpg');
        background-position: center bottom;
        background-size: cover;
        background-repeat: no-repeat;
        margin-bottom: 80px;
    }
    .features .features_flex{
        flex-wrap: wrap;
    }
    .features .features_flex h2{
        text-align: center;
        margin: 0;
        width: 100%;
    }
    .features .features_flex h2>img{
        transform: scale(0.5);
        left: 11%;
        top: -93%;
    }
    .features .features_flex h2 .txt{
        font-size: 32px;
    }
    .features .features_flex h2 .txt .min{
        font-size: 14px;
    }
    .features .features_flex ul{
        width: 90%;
        margin-top: 30px;
    }
    .features .features_flex ul li .num{
        font-size: 27px;
        border-radius: 10px 0 0 10px;
        padding: 25px 20px;
    }
    .features .features_flex ul li:nth-child(2) .num{
        padding: 35px 20px;
    }
    .features .features_flex ul li p{
        font-size: 16px;
    }
}
/* FEATURES */

/* SCOPE */
.scope{
    padding: 110px 0;
}
.scope .txt{
    display: block;
    text-align: center;
    line-height: 2;
    font-size: 16px;
    margin-top: 35px;
}
.scope .scope_img{
    margin-top: 60px;
    text-align: center;
}
@media screen and (max-width: 767px){
    .scope{
        padding: 70px 0;
    }
    .scope .txt{
        font-size: 14px;
    }
    .scope .scope_img img{
        display: block;
        width: 90%;
        margin-inline: auto;
    }
}
/* SCOPE */

/* STYLE */
.style{
    padding-bottom: 110px;
}
.style .txt{
    display: block;
    text-align: center;
    line-height: 2;
    font-size: 16px;
    margin-top: 35px;
}
.style .style_flex{
    margin-top: 40px;
    display: flex;
    gap: 1%;
    justify-content: center;
    align-items: flex-start;
}
@media screen and (min-width: 768px){
    .style .style_flex img{
        width: 40%;
        max-width: 480px;
    }
}
@media screen and (max-width: 767px){
    .style{
        padding-bottom: 50px;
    }
    .style .txt{
        font-size: 14px;
    }
    .style .style_flex{
        flex-wrap: wrap;
    }
    .style .style_flex img{
        width: 90%;
        margin-bottom: 30px;
    }
}
/* STYLE */

/* BENEFITS */
.benefits {
    padding: 110px 0;
    background-color: #f5f5f5;
}
.benefits .benefit_flex{
    margin-top: 50px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 1%;
}
.benefits .benefit_flex img.border-radius{
    border-radius: 10px;
}
@media screen and (max-width: 767px){
    .benefits{
        padding: 80px 0;
    }
    .benefits .benefit_flex{
        flex-wrap: wrap;
        gap: 4%;
        margin-top: 40px;
    }
    .benefits .benefit_flex img{
        width: 42%;
        margin-bottom: 20px;
    }
}
/* BENEFITS */

/* SERVICE */
.service{
    padding: 130px 0 80px;
    background-image: url('../img/pc/service_bg.jpg');
    background-size: cover;
}
.service .service_flex{
    display: flex;
    justify-content: center;
    align-items: stretch;
    gap: 2%;
    margin-top: 80px;
}
.service .service_flex .box_career,
.service .service_flex .box_learning{
    width: 25%;
    border-radius: 20px;
    overflow: hidden;
    background-color: #fff;
}
.service .service_flex h3{
    padding: 25px 0;
    line-height: 1.8;
    color: #fff;
    font-size: 18px;
    text-align: center;
}
.service .service_flex h3 span{
    font-size: 32px;
    display: block;
}
.service .service_flex .box_career h3{
    background: linear-gradient(to top, #8EE616 0%, #42B602 100%);
}
.service .service_flex .box_learning h3{
    background: linear-gradient(45deg, #42B602 0%, #009500 100%);
}
.service .service_flex .content{
    padding: 35px;
}
.service .service_flex .content .list_flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #ccc;
}
.service .service_flex .content .list_flex.period{
    padding-bottom: 7px;
}
.service .service_flex .content .list_flex.course{
    align-items: flex-start;
    border-bottom: none;
}
.service .service_flex .content .list_flex+.list_flex{
    margin-top: 10px;
}
.service .service_flex .content .list_flex h4{
    font-size: 14px;
}
.service .service_flex .content .list_flex h4 img{
    margin-right: 6px;
    position: relative;
    top: 4px;
}
.service .service_flex .content .list_flex p{
    display: block;
    text-align: right;
    line-height: 1.8;
    font-weight: 700;
    font-size: 14px;
    letter-spacing: 1px;
}
.service .service_flex .content .list_flex.price p{
    color: #42B602;
}
.service .service_flex .content .list_flex.price p span{
    font-size: 24px;
}
.service .more{
    text-align: center;
    margin-top: 80px;
}
@media screen and (min-width: 768px) and (max-width: 1200px){
    .service .service_flex .box_career,
    .service .service_flex .box_learning{
        width: 40%;
    }
}
@media screen and (max-width: 767px){
    .service{
        padding: 80px 0;
    }
    .service .service_flex{
        flex-wrap: wrap;
        width: 90%;
        margin: 40px auto 0;
    }
    .service .service_flex .box_career,
    .service .service_flex .box_learning{
        width: 100%;
    }
    .service .service_flex .box_career{
        margin-bottom: 30px;
    }
    .service .service_flex h3{
        font-size: 16px;
        padding: 20px 0;
    }
    .service .service_flex h3 span{
        font-size: 28px;
    }
    .service .service_flex .content{
        padding: 20px;
    }
    .service .more{
        margin-top: 40px;
    }
}
/* SERVICE */