/* MV */
.mv{
    padding: 130px 0 120px;
    background-size: cover;
}
.mv h1{
    text-align: center;
    color: #fff;
    font-size: 60px;
    line-height: 1.4;
    letter-spacing: 1px;
}
.mv h1 .min{
    color: #fff;
    font-size: 24px;
    display: block;
    font-family: century-gothic, sans-serif;
}
.course_top .mv{
    background-image: url('../img/pc/course_ttl_bg.png');
}
.course_jobchange .mv{
    background-image: url('../img/pc/course-jobchange_ttl_bg.png');
}
.course_selfstudy .mv{
    background-image: url('../img/pc/course-selfstudy_ttl_bg.png');
}
.course_freelance .mv{
    background-image: url('../img/pc/course-freelance_ttl_bg.png');
}
@media screen and (max-width: 767px){
    .mv{
        padding: 100px 0;
    }
    .mv h1{
        font-size: 40px;
    }
    .mv h1 .min{
        font-size: 14px;
    }
    .course_top .mv{
        background-image: url('../img/sp/course_ttl_bg.png');
    }
    .course_jobchange .mv{
        background-image: url('../img/sp/course-jobchange_ttl_bg.png');
    }
    .course_selfstudy .mv{
        background-image: url('../img/sp/course-selfstudy_ttl_bg.png');
    }
    .course_freelance .mv{
        background-image: url('../img/sp/course-freelance_ttl_bg.png');
    }
}
/* MV */

/* CHOICE */
.choice{
    padding: 100px 0;
}
.choice .lead,
.compare .lead{
    font-weight: bold;
    font-size: 24px;
    display: block;
    text-align: center;
    letter-spacing: 1.5px;
    line-height: 2;
}
.choice .board{
    width: 90%;
    max-width: 1000px;
    margin: 30px auto;
}
.choice .board .board_child{
    position: relative;
    margin-bottom: 30px;
}
.choice .board .board_child .inner_txt{
    position: absolute;
    width: 80%;
    top: 20%;
    left: 10%;
}
.choice .board .board_child .inner_txt p{
    color: #fff;
    font-size: 24px;
}
.choice .board .board_child .inner_txt h3{
    font-size: 48px;
    color: #fff;
    letter-spacing: 1px;
    margin-bottom: 25px;
}
.choice .board .board_child .inner_txt h3 span{
    font-size: 16px;
    font-weight: bold;
    background-color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    margin-left: 10px;
    position: relative;
    top: -5px;
}
.choice .board .board_child.job_change .inner_txt h3 span{
    color: #007200;
}
.choice .board .board_child.freelance .inner_txt h3 span{
    color: #42B602;
}
.choice .board .board_child.self_study .inner_txt h3 span{
    color: #8EE616;
}
@media screen and (max-width: 767px){
    .choice{
        padding: 80px 0;
    }
    .choice .lead,
    .compare .lead{
        font-size: 16px;
    }
    .choice .board .board_child img{
        display: block;
        width: 100%;
    }
    .choice .board .board_child .inner_txt{
        top: 13%;
    }
    .choice .board .board_child .inner_txt p{
        font-size: 14px;
    }
    .choice .board .board_child .inner_txt h3{
        font-size: 28px;
    }
    .choice .board .board_child.job_change .inner_txt h3 span{
        font-size: 12px;
        margin-left: 0;
    }
    .choice .board .board_child .inner_txt .detail_btn{
        width: 100%;
    }
    .choice .board .board_child .inner_txt .detail_btn .img_filter{
        margin-left: 50%;
    }
}
/* CHOICE */

/* PRICE */
.pricing{
    background-color: #f5f5f5;
    padding: 100px 0;
}
.pricing .table_wrapper{
    width: 90%;
    max-width: 1000px;
    margin: 30px auto;
}
.pricing .table_wrapper table{
    width: 100%;
    border-collapse: collapse;
    text-align: center;
}
.pricing .table_wrapper table th{
    background-color: #222;
    color: #fff;
    padding: 25px 0;
}
.pricing .table_wrapper table td{
    background-color: #fff;
}
.pricing .table_wrapper table td.blank{
    background: none;
}
.pricing .table_wrapper table .red{
    color: #EB4646;
}
.pricing .table_wrapper table tr.thead_sub td{
    border-radius: 10px 10px 0 0;
    overflow: hidden;
    position: relative;
    padding-top: 30px;
}
.pricing .table_wrapper table tr.thead_sub td::before{
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 10px;
    left: 0;
    top: 0;
}
.pricing .table_wrapper table tr.thead_sub td:nth-child(1){
    width: 16%;
}
.pricing .table_wrapper table tr.thead_sub .jc,
.pricing .table_wrapper table tr.thead_sub .ss,
.pricing .table_wrapper table tr.thead_sub .fl{
    width: 28%;
}
.pricing .table_wrapper table tr.thead_sub .jc:before{
    background-color: #007200;
}
.pricing .table_wrapper table tr.thead_sub .fl:before{
    background-color: #42B602;
}
.pricing .table_wrapper table tr.thead_sub .ss:before{
    background-color: #8EE616;
}
.pricing .table_wrapper table tr.thead_ttl td{
    font-size: 24px;
    padding: 10px 0;
}
.pricing .table_wrapper table tr.thead_ttl .jc h3{
    color: #007200;
}
.pricing .table_wrapper table tr.thead_ttl .fl h3{
    color: #42B602;
}
.pricing .table_wrapper table tr.thead_ttl .ss h3{
    color: #8EE616;
}
.pricing .table_wrapper table tr.thead_link td{
    padding: 10px 0 30px;
}
.pricing .table_wrapper table tr.thead_link td a{
    padding: 8px 30px;
    border-radius: 100px;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;
}
.pricing .table_wrapper table tr.thead_link td a img{
    margin-left: 15px;
}
.pricing .table_wrapper table tr.thead_link .jc a{
    background-color: #007200;
}
.pricing .table_wrapper table tr.thead_link .fl a{
    background-color: #42B602;
}
.pricing .table_wrapper table tr.thead_link .ss a{
    background-color: #8EE616;
}
@media screen and (min-width: 768px){
    .pricing .table_wrapper table tr.thead_link td a{
        transition: all 0.3s;
        display: inline-block;
    }
    .pricing .table_wrapper table tr.thead_link td a:hover{
        transform: scale(1.1);
        opacity: 0.8;
    }
}
@media screen and (max-width: 767px){
    .pricing{
        padding: 80px 0;
    }
    .pricing .table_wrapper{
        overflow-x: scroll;
    }
    .pricing .table_wrapper table{
        width: 750px;
    }
    .pricing .table_wrapper table tr.thead_sub td:nth-child(1){
        width: 14%;
    }
    .pricing .table_wrapper table tr.thead_sub td{
        font-size: 12px;
    }
    .pricing .table_wrapper table tr.thead_ttl td h3{
        font-size: 18px;
    }
    .pricing .table_wrapper table th,
    .pricing .table_wrapper table td{
        font-size: 14px;
    }
}
/* PRICE */

/* METHOD */
.method{
    padding: 100px 0;
}
.method .block{
    border: 1px solid #ccc;
    border-radius: 20px;
    padding: 60px;
    margin: 35px auto 0;
    width: 90%;
    max-width: 1200px;
    display: flex;
    gap: 8%;
}
.method .block .ttl{
    width: 30%;
}
.method .block .ttl h3{
    font-size: 38px;
    margin-bottom: 10px;
}
.method .block .ttl .tag span{
    border-radius: 5px;
    padding: 5px 10px;
    color: #fff;
    font-weight: bold;
    display: inline-block;
    margin-bottom: 5px;
    font-size: 14px;
}
.method .block .ttl .tag span.jc{
    background-color: #007200;
}
.method .block .ttl .tag span.fl{
    background-color: #42B602;
}
.method .block .ttl .tag span.sl{
    background-color: #8EE616;
}
.method .block .content h4{
    border-left: 6px solid #42B602;
    padding-left: 15px;
    font-size: 24px;
    margin-bottom: 25px;
}
.method .block .content h4.sec{
    margin-top: 50px;
}
.method .block .content ul.topic{
    list-style: none;
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 2;
}
.method .block .content p{
    font-size: 16px;
    line-height: 2;
}
.method .block .content .capture_flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}
.method .block .content .capture_flex>div{
    width: 30%;
    text-align: center;
}
.method .block .content .capture_flex>div img{
    display: block;
    width: 100%;
}
.method .block .content .capture_flex p{
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 15px;
}
.method .block .content .meet_flex{
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    margin-top: 30px;
    flex-wrap: wrap;
}
.method .block .content .meet_flex .flex_child{
    background-color: #f5f5f5;
    width: 47%;
}
.method .block .content .meet_flex .flex_child.txt{
    border-radius: 20px 20px 0 0;
    padding: 20px 20px 10px;
}
.method .block .content .meet_flex .flex_child.img{
    border-radius: 0 0 20px 20px;
    padding: 20px;
    text-align: center;
}
.method .block .content .meet_flex .flex_child h5{
    text-align: center;
    font-size: 20px;
    margin-bottom: 15px;
}
.method .block .content .meet_flex .flex_child ul{
    list-style-position: outside;
    padding-left: 20px;
    line-height: 1.8;
}
.method .block .content .meet_flex .flex_child ul li{
    text-indent: 0;
    font-weight: normal;
    font-size: 16px;
}
.method .block .content .meet_flex .flex_child ul li::marker{
    font-weight: normal;
    font-size: 10px;
}
.method .block .content .strategy_img{
    display: block;
    width: 100%;
    margin-top: 50px;
}
@media screen and (max-width: 767px){
    .method{
        padding: 80px 0;
    }
    .method .block{
        padding: 50px 30px 40px;
        display: block;
    }
    .method .block .ttl,
    .method .block .content{
        width: 100%;
    }
    .method .block .ttl h3{
        font-size: 24px;
        line-height: 2;
    }
    .method .block .ttl .tag span{
        font-size: 14px;
    }
    .method .block .content{
        margin-top: 35px;
    }
    .method .block .content h4{
        font-size: 18px;
    }
    .method .block .content .capture_flex,
    .method .block .content .meet_flex{
        flex-wrap: wrap;
        gap: 0;
    }
    .method .block .content .capture_flex>div{
        width: 100%;
        margin-bottom: 20px;
    }
    .method .block .content .capture_flex>div:last-child{
        margin-bottom: 0;
    }
    .method .block .content .meet_flex .flex_child.txt{
        width: 100%;
        padding: 20px 20px 30px;
        border-radius: 20px;
    }
    .method .block .content .meet_flex .flex_child.txt+.txt{
        margin-top: 20px;
    }
    .method .block .content .meet_flex .flex_child ul li{
        font-size: 14px;
    }
    .method .block .content .meet_flex .flex_child.img{
        display: none !important;
    }
    .method .block .content .meet_flex .flex_child.txt img{
        display: block;
        width: 100%;
        margin-top: 15px;
    }
    .method .block .content .strategy_img{
        margin-top: 20px;
    }
}
/* METHOD */

/* COMPARE */
.compare{
    padding: 100px 0;
}
.pricing.compare{
    background-color: #fff;
}
.course_selfstudy .pricing.compare{
    padding-bottom: 50px;
}
.pricing.compare .table_wrapper{
    margin-top: 60px;
}
.pricing.compare .table_wrapper table tr.thead_sub td:nth-child(2)::before{
    content: '';
    position: absolute;
    display: block;
    width: 100%;
    height: 40px;
    border-radius: 20px 20px 0 0;
    top: -15px;
    left: 0;
}
.course_jobchange .pricing .table_wrapper table tr.thead_sub .jc,
.course_selfstudy .pricing .table_wrapper table tr.thead_sub .ss,
.course_freelance .pricing .table_wrapper table tr.thead_sub .fl{
    border-radius: 20px 20px 0 0;
    position: relative;
    overflow: visible;
    color: #fff;
}
.course_jobchange .pricing .table_wrapper table tr.thead_ttl .jc,
.course_selfstudy .pricing .table_wrapper table tr.thead_ttl .ss,
.course_freelance .pricing .table_wrapper table tr.thead_ttl .fl{
    padding-bottom: 30px;
}
.course_jobchange .pricing .table_wrapper table tr.thead_sub .jc,
.course_jobchange .pricing .table_wrapper table tr.thead_ttl .jc{
    background-color: #007200;
}
.course_freelance .pricing .table_wrapper table tr.thead_sub .fl,
.course_freelance .pricing .table_wrapper table tr.thead_ttl .fl{
    background-color: #42B602;
}
.course_selfstudy .pricing .table_wrapper table tr.thead_sub .ss,
.course_selfstudy .pricing .table_wrapper table tr.thead_ttl .ss{
    background-color: #8EE616;
}

.course_jobchange .pricing .table_wrapper table tr.thead_ttl .jc h3,
.course_selfstudy .pricing .table_wrapper table tr.thead_ttl .ss h3,
.course_freelance .pricing .table_wrapper table tr.thead_ttl .fl h3{
    color: #fff;
}
.course_jobchange .pricing .table_wrapper table tr.tbody td:nth-child(2){
    box-shadow: inset 6px 0 0 #007200, inset -6px 0 0 #007200;
}
.course_jobchange .pricing .table_wrapper table tr.tbody:last-child td:nth-child(2){
    box-shadow: inset 6px 0 0 #007200, inset -6px 0 0 #007200, inset 0 -6px 0 #007200;
}
.course_freelance .pricing .table_wrapper table tr.tbody td:nth-child(2){
    box-shadow: inset 6px 0 0 #42B602, inset -6px 0 0 #42B602;
}
.course_freelance .pricing .table_wrapper table tr.tbody:last-child td:nth-child(2){
    box-shadow: inset 6px 0 0 #42B602, inset -6px 0 0 #42B602, inset 0 -6px 0 #42B602;
}
.course_selfstudy .pricing .table_wrapper table tr.tbody td:nth-child(2){
    box-shadow: inset 6px 0 0 #8EE616, inset -6px 0 0 #8EE616;
}
.course_selfstudy .pricing .table_wrapper table tr.tbody:last-child td:nth-child(2){
    box-shadow: inset 6px 0 0 #8EE616, inset -6px 0 0 #8EE616, inset 0 -6px 0 #8EE616;
}
@media screen and (max-width: 767px){
    .compare{
        padding: 80px 0;
    }
    .pricing.compare .table_wrapper{
        padding-top: 30px;
        margin-top: 20px;
    }
    .pricing.compare .table_wrapper table tr.thead_sub .jc::before{
        height: 35px;
        top: -15px;
    }
}
/* COMPARE */

/* CURRICULUM */
.curriculum{
    padding: 0 0 100px;
}
.curriculum .lead,
.flow .lead,
.instructor .lead,
.support .lead{
    display: block;
    text-align: center;
    font-size: 16px;
    line-height: 2;
    margin-top: 30px;
}
.curriculum .curriculum_img{
    width: 90%;
    max-width: 1000px;
    display: block;
    margin: 30px auto;
}
.curriculum .curriculum_flow{
    width: 90%;
    max-width: 1000px;
    margin: 80px auto 30px;
    display: flex;
    gap: 5%;
    align-items: stretch;
}
.curriculum .curriculum_flow .arrow .first-half,
.curriculum .curriculum_flow .arrow .second-half,
.detail.curriculum .curriculum_flow .arrow .third-half{
    background: linear-gradient(to bottom, #8EE616 0%, #42B602 100%);
    position: relative;
    overflow: visible;
    padding: 140px 10px 0;
}
.curriculum .curriculum_flow .arrow .first-half{
    height: 63.5%;
}
.curriculum .curriculum_flow .arrow .second-half{
    height: 36.5%;
}
.curriculum .curriculum_flow .arrow .first-half::after,
.curriculum .curriculum_flow .arrow .second-half::after,
.detail.curriculum .curriculum_flow .arrow .third-half::after{
    content: "";
    position: absolute;
    bottom: -14px;
    left: 0;
    width: 100%;
    height: 0;
    border-top: 15px solid #42B602;
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    z-index: 1;
}
.curriculum .curriculum_flow .arrow .first-half p,
.curriculum .curriculum_flow .arrow .second-half p,
.detail.curriculum .curriculum_flow .arrow .third-half p{
    font-weight: bold;
    writing-mode: vertical-rl;
    font-size: 30px;
    letter-spacing: 5px;
    color: #fff;
}
.curriculum .curriculum_flow .method{
    padding: 0;
}
.curriculum .curriculum_flow .method .block{
    margin: 0 0 50px;
    width: 100%;
    padding: 0;
    display: block;
    border-radius: 0;
    border: none;
    padding-bottom: 50px;
    border-bottom: 1px solid #f5f5f5;
}
.curriculum .curriculum_flow .method .block:last-child{
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}
.curriculum .curriculum_flow .method .block .ttl{
    width: 100%;
}
.curriculum .curriculum_flow .method .block .ttl h3{
    line-height: 1;
    margin-bottom: 40px;
}
@media screen and (max-width: 767px){
    .curriculum{
        padding-bottom: 70px;
    }
    .curriculum .lead,
    .support .lead,
    .flow .lead{
        width: 90%;
        margin-inline: auto;
        text-align: left;
    }
    .curriculum .curriculum_flow{
        justify-content: space-between;
    }
    .curriculum .curriculum_flow .arrow{
        width: 13.5%;
    }
    .curriculum .curriculum_flow .method{
        max-width: 80%;
    }
    .curriculum .curriculum_flow .method .block .ttl h3{
        line-height: 1.6;
    }
    .curriculum .curriculum_flow .arrow .first-half p,
    .curriculum .curriculum_flow .arrow .second-half p,
    .detail.curriculum .curriculum_flow .arrow .third-half p{
        font-size: 18px;
    }
    .curriculum .curriculum_flow .method .block{
        padding-bottom: 30px;
        margin-bottom: 30px;
    }
    .curriculum .curriculum_flow .arrow .first-half{
        height: 76.5%
    }
    .curriculum .curriculum_flow .arrow .second-half{
        height: 23.5%;
    }
}
/* CURRICULUM */

/* SUPPORT */
.support{
    background-color: #f5f5f5;
    padding: 100px 0 ;
}
.support .support_box{
    width: 90%;
    max-width: 1000px;
    margin: 30px auto;
}
.support .support_box .support_child{
    background-color: #fff;
    display: flex;
    gap: 4%;
    border-radius: 20px;
    position: relative;
    overflow: hidden;
    margin-bottom: 30px;
}
.support .support_box .support_child .num{
    display: block;
    position: absolute;
    text-align: right;
    right: -20px;
    top: -25px;
    color: #f5f5f5;
    font-family: century-gothic, sans-serif;
    font-weight: bold;
    font-size: 140px;
    line-height: 1;
}
.support .support_box .support_child img{
    display: block;
}
.support .support_box .support_child .content{
    padding: 50px 50px 30px 0;
}
.support .support_box .support_child .content h3{
    font-size: 32px;
    margin-bottom: 15px;
}
.support .support_box .support_child .content p{
    line-height: 2;
}
.support .middle{
    display: block;
    text-align: center;
    font-weight: bold;
    font-size: 24px;
    margin: 80px auto 30px;
}
.support .middle_flex{
    display: flex;
    gap: 3%;
    justify-content: center;
}
.support .middle_flex>div{
    background-color: #fff;
    border-radius: 20px;
    padding: 20px 50px;
}
.support .middle_flex>div h3{
    text-align: center;
    font-size: 24px;
    margin-bottom: 20px;
}
.support .middle_flex>div .inner_flex{
    display: flex;
    gap: 10%;
    justify-content: center;
    align-items: center;
}
.support .middle_flex>div .inner_flex div p{
    font-size: 16px;
    line-height: 2;
}
.support .middle_flex>div .inner_flex div p.green{
    margin-top: 10px;
    color: #42B602;
    font-weight: bold;
}
@media screen and (max-width: 767px){
    .support .support_box .support_child{
        flex-wrap: wrap;
    }
    .support .support_box .support_child img{
        display: block;
        width: 100%;
        position: relative;
        z-index: 1;
    }
    .support .support_box .support_child .content{
        padding: 30px 20px 20px;
    }
    .support .support_box .support_child .num{
        font-size: 95px;
        z-index: 0;
        right: -2%;
    }
    .support .support_box .support_child:nth-child(1) .num{
        top: 50%;
    }
    .support .support_box .support_child:nth-child(2) .num{
        top: 51%;
    }
    .support .support_box .support_child:nth-child(3) .num{
        top: 44%;
    }
    .support .support_box .support_child .content h3{
        font-size: 24px;
    }
    .support .support_box .support_child .content p{
        font-size: 14px;
        position: relative;
        z-index: 1;
    }
    .support .middle{
        font-size: 18px;
        line-height: 2;
        margin-top: 50px;
    }
    .support .middle_flex{
        flex-wrap: wrap;
        width: 90%;
        margin-inline: auto;
    }
    .support .middle_flex>div{
        padding: 20px 35px;
    }
    .support .middle_flex>div h3{
        font-size: 18px;
        margin-bottom: 15px;
    }
    .support .middle_flex>div+div{
        margin-top: 20px;
    }
}
/* SUPPORT */

/* FLOW */
.flow{
    background-image: url('../img/pc/flow_bg.png');
    padding: 100px 0 60px;
    background-size: cover;
    background-position: top center;
}
.flow .flow_img{
    display: block;
    max-width: 1000px;
    margin: 30px auto;
}
@media screen and (max-width: 767px){
    .flow{
        background-image: url('../img/sp/flow_bg.png');
        background-repeat: no-repeat;
        padding-top: 280px;
    }
    .flow .flow_img{
        display: block;
        width: 90%;
        margin-inline: auto;
    }
}
/* FLOW */

/* INSTRUCTOR */
.campaign_bnr{
    margin: 50px auto 0;
    text-align: center;
}
.instructor{
    padding: 100px 0;
}
.instructor .instructor_flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3%;
    width: 90%;
    max-width: 1000px;
    margin: 30px auto;
}
.instructor .instructor_flex img{
    margin-bottom: 20px;
}
@media screen and (max-width: 767px){
    .campaign_bnr img{
        display: block;
        width: 90%;
        margin-inline: auto;
    }
    .instructor{
        padding: 50px 0;
    }
    .instructor .lead{
        width: 90%;
        margin-inline: auto;
    }
    .instructor .instructor_flex img{
        width: 100%;
    }
}
/* INSTRUCTOR */

/* COURSE_DETAIL */
.detail .method{
    padding-top: 0;
}
.detail .method .block{
    border: none;
    display: block;
    max-width: 1000px;
    padding: 0;
    margin: 0 auto;
    border-radius: 0;
}
.detail .method .block+.block{
    margin-top: 60px;
    padding-top: 60px;
    border-top: 1px solid #ccc;
}
.detail .method .block .ttl h3{
    margin-bottom: 40px;
}
.detail .method .course_list table{
    border-collapse: collapse;
    width: 100%;
    margin: 20px auto;
}
.detail .method .course_list th,
.detail .method .course_list td{
    border: 1px solid #fff;    
    font-weight: normal;
}
.detail .method .course_list thead{
    background-color: #222;
}
.detail .method .course_list thead th{
    color: #fff;
    text-align: center;
    padding: 5px 0;
    font-size: 16px;
}
.detail .method .course_list thead th:nth-child(1){
    width: 8%;
}
.detail .method .course_list thead th:nth-child(2){
    width: 29%;
}
.detail .method .course_list thead th:nth-child(3){
    width: 8%;
}
.detail .method .course_list thead th:nth-child(4){
    width: 55%;
}
.detail .method .course_list tbody th{
    text-align: center;
    vertical-align: middle;
    color: #fff;
    line-height: 1.5;
    padding: 5px;
    font-size: 14px;
}
.detail .method .course_list tbody th.basics{
    background-color: #007200;
}
.detail .method .course_list tbody th.analysis{
    background-color: #43B603;
}
.detail .method .course_list tbody th.improvement{
    background-color: #6AC601;
}
.detail .method .course_list tbody th.others{
    background-color: #8EE616;
}
.detail .method .course_list tbody td{
    font-size: 14px;
    padding: 5px 10px;
    line-height: 1;
}
.detail .method .course_list tbody td:nth-of-type(2){
    text-align: center;
}
.detail .method .course_list tbody tr:nth-child(1) td,
.detail .method .course_list tbody tr:nth-child(2) td{
    background-color: #CCE4CC;
}
.detail .method .course_list tbody tr:nth-child(n+3):nth-child(-n+8) td{
    background-color: #D8F0CC;
}
.detail .method .course_list tbody tr:nth-child(n+9):nth-child(-n+14) td{
    background-color: #E2F4CC;
}
.detail .method .course_list tbody tr:nth-child(n+15) td{
    background-color: #E8FAD0;
}
.detail .method .course_list tbody tr td:last-of-type{
    background-color: #fff !important;
    border-bottom: 1px solid #ccc;
    padding-left: 20px;
}
.detail.curriculum .curriculum_flow .method .block{
    border-bottom: none;
    padding-bottom: 0;
}
.detail.curriculum .curriculum_flow{
    margin: 0 auto;
}
.detail.curriculum .curriculum_flow .arrow .first-half{
    height: 51%;
}
.detail.curriculum .curriculum_flow .arrow .second-half{
    height: 33.5%;
}
.detail.curriculum .curriculum_flow .arrow .third-half{
    height: 15%;
}
.detail.curriculum .curriculum_flow .method .grad_box_flex{
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 30px;
}
.detail.curriculum .curriculum_flow .method .grad_box_flex .grad_box{
    width: 30%;
    padding: 30px 0;
    background: linear-gradient(to right, #8EE616 0%, #42B602 100%);
    font-weight: bold;
    border-radius: 20px;
    text-align: center;
}
.detail.curriculum .curriculum_flow .method .grad_box_flex .grad_box p{
    font-weight: bold;
    color: #fff;
    line-height: 1.7;
}
.detail .guarantee{
    display: flex;
    border-radius: 20px;
    overflow: hidden;
    background-color: #F5F5F5;
    justify-content: space-between;
    width: 90%;
    max-width: 1000px;
    margin: 40px auto 0;
}
.detail .guarantee>div{
    padding: 35px 35px 35px 60px;
    width: 100%;
}
.detail .guarantee .guarantee_img{
    display: block;
}
.detail .guarantee>div h4{
    font-size: 22px;
    margin-bottom: 25px;
}
.detail .guarantee>div p mark{
    font-weight: bold;
    background: linear-gradient(to bottom, rgba(255, 255, 63, 0) 60%, rgba(255, 255, 63, 1) 50%);
}
.detail .guarantee>div .guarantee_flex{
    display: flex;
    align-items: stretch;
    margin-top: 20px;
}
.detail .guarantee>div .guarantee_flex .list{
    width: 45%;
}
.detail .guarantee>div .guarantee_flex .list p{
    display: block;
    text-align: center;
    background-color: #fff;
    border-radius: 10px;
    padding: 5px 0;
    font-weight: bold;
}
.detail .guarantee>div .guarantee_flex .list p+p{
    margin-top: 5px;
}
.detail .guarantee>div .guarantee_flex .line{
    width: 3%;
    border: 1px solid #000;
    border-left: none;
    margin: 0 6% 0 3%;
}
.detail .guarantee>div .guarantee_flex .txt{
    line-height: 2;
    display: flex;
    align-items: center;
}
.course_freelance .detail.curriculum{
    padding-bottom: 0;
}
@media screen and (max-width: 767px){
    .detail .method .course_list{
        overflow-x: scroll;
    }
    .detail .method .course_list table{
        width: 880px;
    }
    .detail.curriculum .curriculum_flow{
        gap: 2%;
    }
    .detail.curriculum .curriculum_flow .arrow{
        width: 8%;
    }
    .detail.curriculum .curriculum_flow .arrow .first-half{
        height: 62.7%;
        padding-inline: 0;
    }
    .detail.curriculum .curriculum_flow .arrow .second-half{
        height: 20.8%;
        padding-inline: 0;
    }
    .detail.curriculum .curriculum_flow .arrow .third-half{
        height: 16%;
        padding-inline: 0;
    }
    .detail.curriculum .curriculum_flow .method{
        max-width: 85%;
    }
    .detail.curriculum .curriculum_flow .method .grad_box_flex{
        margin-top: 20px;
    }
    .detail.curriculum .curriculum_flow .method .grad_box_flex .grad_box{
        max-height: 100px;
    }
    .detail.curriculum .curriculum_flow .method .grad_box_flex .grad_box:nth-child(1){
        padding-top: 20px;
    }
    .detail.curriculum .curriculum_flow .method .grad_box_flex .grad_box p{
        font-size: 11.5px;
    }
    .detail .guarantee{
        flex-wrap: wrap;
        flex-direction: column-reverse;
    }
    .detail .guarantee>div,
    .detail .guarantee .guarantee_img{
        width: 100%;
    }
    .detail .guarantee>div{
        padding: 30px 25px;
    }
    .detail .guarantee>div h4{
        font-size: 24px;
        margin-bottom: 20px;
    }
    .detail .guarantee>div>p{
        line-height: 2;
    }
    .detail .guarantee>div .guarantee_flex{
        flex-wrap: wrap;
    }
    .detail .guarantee>div .guarantee_flex .list,
    .detail .guarantee>div .guarantee_flex .line,
    .detail .guarantee>div .guarantee_flex .txt{
        width: 100%;
    }
    .detail .guarantee>div .guarantee_flex .list p+p{
        margin-top: 10px;
    }
    .detail .guarantee>div .guarantee_flex .line{
        height: 10px;
        border: 1px solid #000;
        border-top: none;
        margin: 10px 0 20px;
    }
    .detail .guarantee>div .guarantee_flex .txt{
        display: block;
        text-align: center;
    }
}
/* COURSE_DETAIL */

/* VOICE_SLIDER */
.voice{
    padding: 60px 0 100px;
    background-color: #F5F5F5;
}
.voice_slider_wrapper{
    position: relative;
    margin-top: 30px;
}
.voice_slider .slick-track{
    margin-left: 300px;
}
.voice_slider .voice_slider_child{
    border-radius: 20px;
    overflow: hidden;
    min-height: 450px;
    margin-right: 15px;
    background-color: #fff;
}
.voice_slider .voice_slider_child>img{
    width: 100%;
}
.voice_slider .voice_slider_child .voice_slider_content{
    padding: 20px;
}
.voice_slider .voice_slider_child .voice_slider_content .name{
    font-size: 16px;
    font-weight: bold;
    color: #42b602;
    margin-bottom: 15px;
}
.voice_slider .voice_slider_child .voice_slider_content .txt{
    text-align: justify;
    line-height: 2;
}
.voice_slider .voice_slider_child.last{
    background: none;
}
.voice_slider .voice_slider_child.last .box{
    width: 300px;
}
.voice_slider_wrapper .prev-arrow,
.voice_slider_wrapper .next-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    background: none;
    border: none;
    cursor: pointer;
}
.voice_slider_wrapper .prev-arrow {
    left: 17%;
}
.voice_slider_wrapper .next-arrow {
    right: 17%;
}
.voice_slider_wrapper .prev-arrow.disabled,
.voice_slider_wrapper .next-arrow.disabled {
    display: none;
}
@media screen and (max-width: 1600px){
    .voice_slider .voice_slider_child{
        min-height: 500px;
    }
}
@media screen and (max-width: 1200px){
    .voice_slider .voice_slider_child{
        min-height: 480px;
    }
}
@media screen and (max-width: 767px){
    .voice_slider_wrapper{
        padding-left: 20px;
    }
    .voice_slider .slick-track{
        margin: 0;
    }
    .voice_slider_wrapper .prev-arrow,
    .voice_slider_wrapper .next-arrow{
        display:  none !important;
    }
}
/* VOICE_SLIDER */