/*=================================================
            [Main] 공통
=================================================*/
#main_menu-main_page-page section{
    margin-top: 6.25rem;
}

#main_menu-main_page-page .section-title{
    margin-bottom: 2.5rem;

    font-size: 1.875rem;
    font-weight: 700;
    text-align: center;
}

#main_menu-main_page-page .section-subtitle{
    margin-bottom: 0.375rem;

    font-weight: 700;
    text-align: center;
    color: #6CA7FF;
}

#main_menu-main_page-body #gnb-wrap{
    position: fixed;
    top: 0;
    left: 0;

    width: 100%;

    color: #ffffff;

    background-color: transparent;
    border-bottom: none;

    transition: all .3s;
}

#main_menu-main_page-body #gnb-wrap .logo-wrap.black{
    display: none;
}

#main_menu-main_page-body #gnb-wrap.scrolled{
    color: #222222;

    background-color: #ffffff;
    border-bottom: 1px solid #dddddd;

    transition: all .3s;
}

#main_menu-main_page-body #gnb-wrap.scrolled .logo-wrap.white{
    display: none;
}

#main_menu-main_page-body #gnb-wrap.scrolled .logo-wrap.black{
    display: inline-block;
}

#main_menu-main_page-body #gnb-wrap .submenu-wrap{
    color: #222222;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** md *****/
@media (min-width: 100px) and (max-width: 768px) {
    #main_menu-main_page-page section{
        margin-top: 4rem;
    }
}

/*=================================================
            [section] main_slide
=================================================*/
#main_menu-main_page-page #main_slide{
    margin-top: 0;
}

.section-wrap[data-layout="main_slide"] .slick-wrap{
    position: relative;

    padding: 0;
}

.section-wrap[data-layout="main_slide"] .slide-wrap{
    position: relative;

    height: 45rem;
}

.section-wrap[data-layout="main_slide"] .dim-box{
    display: flex;
    align-items: center;

    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    background: #0000007a;
}

.section-wrap[data-layout="main_slide"] .title-wrap{
    transform: translateY(-20%);
}

.section-wrap[data-layout="main_slide"] .slide-title{
    margin-bottom: 1.25rem;

    font-size: 2.5rem;
    font-weight: 700;
    line-height: 3.5rem;
    color: #ffffff;
}

.section-wrap[data-layout="main_slide"] .title-bar{
    width: 6.25rem;
    height: 0.625rem;

    background: #6CA7FF;
}

.section-wrap[data-layout="main_slide"] .func-wrap{
    position: absolute;
    bottom: 10rem;
    left: 0;

    width: 100%;
}

.section-wrap[data-layout="main_slide"] .slide-count-wrap{
    color: #ffffff;

    z-index: 100;
}

.section-wrap[data-layout="main_slide"] .pro-bar{
    position: relative;

    margin: 0 0.5rem;
}

.section-wrap[data-layout="main_slide"] .pro-bar,
.section-wrap[data-layout="main_slide"] .pro-ani-default{
    width: 7.5rem;
    height: 2px;

    background-color: #B0B0B0;
}

.section-wrap[data-layout="main_slide"] .pro-ani-default{
    position: absolute;
    top: 0;
    left: 0;

    width: 0;

    background-color: #ffffff;
}

/*****##### pro-ani #####*****/
.section-wrap[data-layout='main_slide'] .pro-ani{
    animation-name:proBar;
    animation-timing-function: linear;
}

@keyframes proBar{
    0%{
        width:0;
    }

    100%{
        width:100%;
    }
}

.section-wrap[data-layout='main_slide'] .custom-slick-wrap{
    display: inline-block;

    margin-right: 1.25rem;
}

.section-wrap[data-layout='main_slide'] .custom-slick-arrow{
    display: inline-block;

    position: relative;
    right: auto;
    left: auto;
    top: auto;
    bottom: auto;

    width: auto;

    font-size: 1.5rem;
    color: #ffffff;

    transform: translateY(0);
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** md *****/
@media (min-width: 100px) and (max-width: 768px) {
    .section-wrap[data-layout="main_slide"] .slide-wrap{
        height: 37.5rem;
    }
}

/*=================================================
            [section] main_link
=================================================*/
#main_menu-main_page-page #main_link{
    margin-top: 0;
}

.section-wrap[data-layout="main_link"]{
    transform: translateY(-50%);
}

.section-wrap[data-layout="main_link"] .content-box{
    display: block;
}

.section-wrap[data-layout="main_link"] .content-content-wrap{
    padding: 2.25rem 1.5rem;
}

.section-wrap[data-layout="main_link"] .title-wrap{
    font-weight: bold;
}

.section-wrap[data-layout="main_link"] .title-wrap i.bi{
    margin-right: 1.5rem;

    font-size: 1.5rem;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** md *****/
@media (min-width: 100px) and (max-width: 768px) {
    .section-wrap[data-layout="main_link"]{
        transform: translateY(-20%);
    }

    .section-wrap[data-layout="main_link"] .each-col:not(:last-child){
        margin-bottom: 1.25rem;
    }
}

/*=================================================
            [section] main_course
=================================================*/
.section-wrap[data-layout="main_course"] .each-col:nth-child(2n){
    transform: translateY(60%);
}

.section-wrap[data-layout="main_course"] .each-col:not(:last-child){
    margin-bottom: 6.25rem;
}

.section-wrap[data-layout="main_course"] .item-title{
    margin: 1.875rem 0 0.625rem;

    font-size: 1.375rem;
    font-weight: 700;
}

.section-wrap[data-layout="main_course"] .item-content{
    margin-bottom: 1.875rem;

    line-height: 1.5rem;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** md *****/
@media (min-width: 100px) and (max-width: 768px) {
    .section-wrap[data-layout="main_course"] .each-col:nth-child(2n){
        transform: translateY(0);
    }
    
    .section-wrap[data-layout="main_course"] .each-col:not(:last-child){
        margin-bottom: 5rem;
    }
}

/*=================================================
            [section] main_review
=================================================*/
.section-wrap[data-layout="main_review"] .slick-slide{
    margin: 0 0.75rem;
}

.section-wrap[data-layout="main_review"] .slide-wrap{
    padding: 2.5rem;

    text-align: center;

    background: #F5FAFF;
}

.section-wrap[data-layout="main_review"] .custom-slick-arrow{
    width: auto;

    font-size: 1.75rem;
}

.section-wrap[data-layout="main_review"] .slick-slide img{
    display: inline-block;

    margin-bottom: 1.2rem;
}

.section-wrap[data-layout="main_review"] .item-title{
    margin-bottom: 0.625rem;
}

.section-wrap[data-layout="main_review"] .item-content{
    display: inline-block;

    margin-bottom: 1.875rem;
}

.section-wrap[data-layout="main_review"] .each-line:not(:last-child){
    margin-right: 0.75rem;
}

.section-wrap[data-layout="main_review"] .each-line:not(:last-child)::after{
    background: #222222;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** md *****/
@media (min-width: 100px) and (max-width: 768px) {
    .section-wrap[data-layout="main_review"] .slick-wrap{
        padding: 0;
    }
}

/*=================================================
            [section] main_facility
=================================================*/
.section-wrap[data-layout="main_facility"]{
    padding: 5rem 0;

    background: #F5FDFF;
}

.section-wrap[data-layout="main_facility"] .item-image{
    position: relative;

    border-radius: 0.5rem;

    overflow: hidden;
}

.section-wrap[data-layout="main_facility"] .dim-box{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    text-align: center;
    color: #ffffff;

    background: #0000007a;
    
    opacity: 0;
    transition: opacity .3s;
}

.section-wrap[data-layout="main_facility"] .item-image:hover .dim-box{
    opacity: 1;

    transition: opacity .3s;
}

.section-wrap[data-layout="main_facility"] .dim-box .more-link{
    color: #ffffff !important;

    border-bottom: 1px solid #ffffff;
}

/*=================================================
            [section] main_board
=================================================*/
.section-wrap[data-layout="main_board"] .item-wrap{
    display: block;

    padding: 1.875rem 2.5rem;

    background: #FBFBFB;
}

/*=================================================
            [section] main_register
=================================================*/
.section-wrap[data-layout="main_register"]{
    padding: 5rem 0;

    background: #6CA7FF;
}

#main_menu-main_page-page .section-wrap[data-layout="main_register"] .section-title,
#main_menu-main_page-page .section-wrap[data-layout="main_register"] .section-subtitle,
.section-wrap[data-layout="main_register"] .col-form-label{
    color: #ffffff;
}

.section-wrap[data-layout="main_register"] input[type="date"]::before{
    content: attr(data-placeholder);

    width: 100%;
}

.section-wrap[data-layout="main_register"] input[type="date"]:valid::before{
    display: none;
}

/*=================================================
            [About] 공통
=================================================*/
#about_menu-about-page .section-wrap{
    margin-top: 6.25rem;
}

#about_menu-about-page .section-title{
    margin-bottom: 3.75rem;

    font-size: 1.875rem;
    font-weight: 700;
    text-align: center;
}

/*=================================================
			[Section]- service_advantage
=================================================*/
#about_menu-about-page .section-wrap[data-layout="service_advantage"]{
    margin-top: 5rem;

    z-index: 10;
}

.section-wrap[data-layout="service_advantage"] .item-title{
    margin: 3rem 0 1.25rem;

    font-size: 1.75rem;
    font-weight: 700;
}

.section-wrap[data-layout="service_advantage"] .item-content-wrap{
    padding: 0;
}

.section-wrap[data-layout="service_advantage"] .item-content{
    width: 70%;

    line-height: 1.5rem;
    color: #555555;
}

.section-wrap[data-layout="service_advantage"] .item-img{
    border-radius: 0.25rem;

    overflow: hidden;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** lg *****/
@media (min-width: 992px) and (max-width: 1200px) {
    .section-wrap[data-layout="service_advantage"] .item-title{
        margin: 3rem 0 1.25rem 0;
    }
}

/***** md *****/
@media (min-width: 768px) and (max-width: 991px) {
    .section-wrap[data-layout="service_advantage"] .item-title{
        margin: 2rem 0 1rem;

        font-size: 1.625rem;
    }

    .section-wrap[data-layout="service_advantage"] .item-content-wrap{
        padding-right: 0;
    }

    .section-wrap[data-layout="service_advantage"] .item-content{
        width: 100%;
    }
}

/***** sm *****/
@media (min-width: 100px) and (max-width: 767px) {
    .section-wrap[data-layout="service_advantage"]{
        padding: 0;
    }

    .section-wrap[data-layout="service_advantage"] .item-title{
        margin: 2rem 0 1rem;

        font-size: 1.75rem;
    }

    .section-wrap[data-layout="service_advantage"] .item-content-wrap{
        padding-right: 0;
    }

    .section-wrap[data-layout="service_advantage"] .item-content{
        font-size: 1.25rem;
    }
}


/*=================================================
			[Section]- service_text
=================================================*/
#about_menu-about-page .section-wrap[data-layout="banner_text"]{
    margin-top: -1.5rem;
    padding: 4rem 0;

    background: #F9F9F9;
}

.section-wrap[data-layout="banner_text"] .point-quotation:before{
    content: '';
    display: block;

    height: 1.25rem;

    background: url('/front/data/img/app/quote-left.png') center no-repeat;
    background-size: contain;
}

.section-wrap[data-layout="banner_text"] .point-quotation:after{
    content: '';
    display: block;

    height: 1.25rem;

    background: url('/front/data/img/app/quote-right.png') center no-repeat;
    background-size: contain;
}

.section-wrap[data-layout="banner_text"] .title-title{
    padding: 1.875rem;

    font-size: 1.125rem;
    line-height: 1.75rem;
    text-align: center;
    color: #555555;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** sm *****/
@media (min-width: 100px) and (max-width: 768px){
    #about_menu-about-page .section-wrap[data-layout="banner_text"]{
        margin-top: 4.5rem;
    }

    .section-wrap[data-layout="banner_text"] .title-title{
        font-size: 1.25rem;
        line-height: 2rem;
    }
}

/*=================================================
			[Section]- service_banner
=================================================*/
.section-wrap[data-layout="service_banner"] .content-img{
    margin-bottom: 2.5rem;

    border-radius: 0.25rem;

    overflow: hidden;
}

.section-wrap[data-layout="service_banner"] .content-title{
    font-size: 1.875rem;
    font-weight: 700;
}

.section-wrap[data-layout="service_banner"] .item-wrap:not(:last-child){
    margin-bottom: 2.5rem;
}

.section-wrap[data-layout="service_banner"] .item-title{
    width: 10rem;

    font-weight: 700;
    color: #6CA7FF;
}

.section-wrap[data-layout="service_banner"] .item-content{
    line-height: 1.5rem;
    color: #555555;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** sm *****/
@media (min-width: 100px) and (max-width: 768px){
    .section-wrap[data-layout="service_banner"] .content-title{
        margin-bottom: 1.5rem;
    }
}

/*=================================================
            [Section]- service_slide
=================================================*/
.section-wrap[data-layout="service_slide"]{
    padding: 5rem 0;

    color: #ffffff;

    background: #6CA7FF;
}

.section-wrap[data-layout="service_slide"] .slick-wrap{
    padding: 0;

    overflow: visible;
}

.section-wrap[data-layout="service_slide"] .item-title{
    margin-bottom: 1.875rem;

    font-size: 1.375rem;
    font-weight: 700;
}

.section-wrap[data-layout="service_slide"] .item-content{
    line-height: 1.75rem;
}


/*****#####===== dots =====#####*****/
.section-wrap[data-layout="service_slide"] .slick-dots li,
.section-wrap[data-layout="service_slide"] .slick-dots li.slick-active{
    width: 0.625em;
}

.section-wrap[data-layout="service_slide"] .slick-dots li.slick-active button{
    background-color:#ffffff;
}

ul.slick-dots > li > button{
    padding: 0;
}

.section-wrap[data-layout="service_slide"] .slick-dots li button{
    width: 0.625rem;
    height: 0.625rem;
    
    background-color:#C2C2C2;
    border: none;

    opacity: 1;
}

/*****#####===== 미디어쿼리 =====#####*****/
/***** lg ~ *****/
@media (min-width: 991px){
    .section-wrap[data-layout="service_slide"] .slick-dots{
        left: 0;
        bottom: 2rem;

        width: auto;
    }
} 

/***** md ~ *****/
@media (min-width: 768px){
    .section-wrap[data-layout="service_slide"] .slick-dots{
        left: 0;
        bottom: -0.25rem;

        width: auto;
    }
} 

/***** xs / sm *****/
@media (min-width: 100px) and (max-width: 767.98px){
    .section-wrap[data-layout="service_slide"] .item-content{
        margin-bottom:1rem;
    }

    .section-wrap[data-layout="service_slide"] .slick-dots{
        bottom: -3rem;
    }
}

/*=================================================
            [Section]- service_license
=================================================*/
.section-wrap[data-layout="service_license"] .slick-slide{
    padding: 0 0.75rem;
}

.section-wrap[data-layout="service_license"] .item-img{
    margin-bottom: 1rem;
}

.section-wrap[data-layout="service_license"] .item-title{
    margin-bottom: 0.5rem;

    font-size: 0.875rem;
    color: #555555;
}

.section-wrap[data-layout="service_license"] .custom-slick-arrow{
    font-size: 1.5rem;
}

/*=================================================
            [Section]- service_history
=================================================*/
.section-wrap[data-layout="service_history"] .item-wrap{
    padding: 1.875rem;

    border-bottom: 1px solid #dddddd;
}

.section-wrap[data-layout="service_history"] .item-title{
    font-size: 1.375rem;
    font-weight: 700;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** sm *****/
@media (min-width: 100px) and (max-width: 768px){
    .section-wrap[data-layout="service_history"] .item-title{
        margin-bottom: 0.75rem;
    }
}

/*=================================================
            [Section]- service_map
=================================================*/
.section-wrap[data-layout="service_map"]{
    padding: 5rem 0;

    line-height: 1.5rem;

    background: #FAFAFA;
}

/*=================================================
            [Section]- service_info
=================================================*/
.section-wrap[data-layout="section_info"]{
    padding: 5rem 0;

    line-height: 1.5rem;

    background: #FAFAFA;
}

.section-wrap[data-layout="section_info"] .item-title{
    margin-bottom: 1.875rem;

    font-size: 1.5rem;
    font-weight: 700;
    color: #6CA7FF;
}

/*=================================================
            [Section]- service_video
=================================================*/
.section-wrap[data-layout="section_video"]{
    padding: 5rem 0;

    line-height: 1.5rem;
    text-align: center;

    background: #FAFAFA;
}

.section-wrap[data-layout="section_video"] .item-title{
    margin-bottom: 1.875rem;

    font-size: 1.5rem;
    font-weight: 700;
    color: #6CA7FF;
}

.section-wrap[data-layout="section_video"] .video-wrap{
    margin-top: 2.5rem;
}

.section-wrap[data-layout="section_video"] .video-wrap iframe{
    width: 100%;
    height: 675px;
}


/*****#####===== 미디어 쿼리 =====#####*****/
/***** lg *****/
@media (min-width: 992px) and (max-width: 1200px) {
    .section-wrap[data-layout="section_video"] .video-wrap iframe{
        height: 500px;
    }
}

/***** md *****/
@media (min-width: 768px) and (max-width: 991px) {
    .section-wrap[data-layout="section_video"] .video-wrap iframe{
        height: 400px;
    }
}

/***** sm *****/
@media (min-width: 100px) and (max-width: 767px) {
    .section-wrap[data-layout="section_video"] .video-wrap iframe{
        height: 300px;
    }
}

/*=================================================
            [Section]- service_gallery
=================================================*/
.section-wrap[data-layout="section_gallery"]{
    margin-top: 6.25rem;
}

.section-wrap[data-layout="section_gallery"] .info-content{
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;

    border-bottom: 1px solid #dddddd;
}

/*****#####===== 미디어 쿼리 =====#####*****/
/***** sm *****/
@media (min-width: 100px) and (max-width: 767px) {
    .section-wrap[data-layout="section_gallery"]{
        margin-top: 4rem;
    }
}

/*=================================================
            [Section]- section_tabmenu
=================================================*/
.section-wrap[data-layout="section_tabmenu"]{
    margin-bottom: 2.5rem;
}

/*=================================================
            [Section]- facility_gallery
=================================================*/
.section-wrap[data-layout="facility_gallery"]{
    margin-top: 6.25rem;
}

.section-wrap[data-layout="facility_gallery"] .info-content{
    line-height: 1.5rem;
}

/*=================================================
            [Section]- facility_info
=================================================*/
.section-wrap[data-layout="facility_info"]{
    margin-top: 6.25rem;
    padding: 0 2.5rem;

    border: 1px solid #dddddd;
}

.section-wrap[data-layout="facility_info"] .content-wrap{
    padding: 2.5rem 0;
}

.section-wrap[data-layout="facility_info"] .content-wrap:not(:last-child){
    border-bottom: 1px solid #dddddd;
}

.section-wrap[data-layout="facility_info"] .item-title{
    margin-bottom: 1rem;
}

.section-wrap[data-layout="facility_info"] .item-content{
    color: #555555;
}

/*=================================================
            [Section]- facility_slide
=================================================*/
.section-wrap[data-layout="facility_slide"]{
    padding-top: 6.25rem;
}

.section-wrap[data-layout="facility_slide"] .slick-slide{
    padding: 0 0.75rem;
}

.section-wrap[data-layout="facility_slide"] .custom-slick-arrow{
    font-size: 1.5rem;
}

/*=================================================
            [Program] club
=================================================*/
#program-club-page .section-wrap[data-layout="main_course"]{
    padding-top: 2.5rem;
}

#program-club-page .section-wrap[data-layout="main_course"] .each-col:not(:last-child){
    margin-bottom: 5rem;
}

#program-club-page .section-wrap[data-layout="main_course"] .item-content{
    width: 75%;
    margin-bottom: 0;
}

/*****#####===== 미디어 쿼리 =====#####*****/
@media (min-width: 768px) {
    #program-club-page{
        padding-bottom: 27rem;
    }    
}

/***** md *****/
@media (min-width: 100px) and (max-width: 768px) {
    #program-club-page .section-wrap[data-layout="main_course"] .each-col:not(:last-child){
        margin-bottom: 1rem;
    }
}

/*=================================================
            [Program] view
=================================================*/
#program-view-page .top-wrap{
    padding: 5rem 0;

    background: #FAFAFA;
}

#program-view-page .content-title{
    margin-bottom: 1.875rem;

    font-size: 1.875rem;
    font-weight: 700;
}

#program-view-page .content-content{
    line-height: 1.5rem;
}

#program-view-page .info-content-wrap .content-box{
    line-height: 1.75rem;
    height: 100%;
}

#program-view-page .item-title-wrap{
    margin-bottom: 1.25rem;
    padding-bottom: 1.25rem;

    font-weight: 700;

    border-bottom: 1px solid #dddddd;
}

#program-view-page .item-title-wrap>div{
    margin-bottom: 0.625rem;

    font-size: 2.5rem;
    color: #6CA7FF;
}

#program-view-page .img-wrap img{
    width: 100%;
}

/*=================================================
            [Support] view
=================================================*/
#support-faq-page .collapse{
    padding: 1.875rem 0;

    border-bottom: 1px solid #dddddd;
}

/*=================================================
            [Support] view
=================================================*/
#support-view-page .img-wrap{
    width: 40rem;
    margin-bottom: 2.5rem;
}

/*****#####===== 미디어 쿼리 =====#####*****/
@media (max-width: 991px) {
    #support-view-page .img-wrap{
        width: 100%;
    }
}

/*=================================================
            [Support] reference
=================================================*/
#support-reference-page .item-title{
    height: 2em;

    line-height: 2em !important;
}

/*=================================================
            [Support] album / review
=================================================*/
#support-review-page .board-lists-wrap,
#support-album-page .board-lists-wrap{
    border-top: 1px solid #dddddd;
}

#support-review-page .board-lists-wrap .lists-item,
#support-album-page .board-lists-wrap .lists-item{
    padding: 1.875rem;
}

#support-review-page .item-title,
#support-album-page .item-title{
    margin-bottom: 1rem;

    font-size: 1.25rem;
    font-weight: 700;
}

/*=================================================
            [Support] newsletter / brochures
=================================================*/
#support-newsletter-page .dim-box,
#support-brochures-page .dim-box{
    font-size: 0.875rem;
    font-weight: 700;
    text-decoration: underline;
}