html,body {
    height: 100%;
    scroll-behavior: smooth;
    background:#fff!important;
}

@import url(//fonts.googleapis.com/earlyaccess/nanumpenscript.css);
.ico_file { display:inline-block; margin:0 2px; font-size:16px; }

.ico_file.ico_pdf i { color:#e74c3c; width: 20px;height: 20px;}
.ico_file.ico_hwp i { color:#3498db; width: 20px;height: 20px;}
.ico_file.ico_xls i { color:#27ae60; width: 20px;height: 20px;}
.ico_file.ico_ppt i { color:#e67e22; width: 20px;height: 20px;}
.ico_file.ico_doc i { color:#2980b9; width: 20px;height: 20px;}
.ico_file.ico_etc i { color:#7f8c8d; width: 20px;height: 20px;}
.nanumpenscript * {
 font-family: 'Nanum Pen Script', cursive;
}
.brand_color {
    color:#274AAF;
}

.color_black {
    color:#000!important;
}
.test_box {
    width: 200px;
    height: 50px;
    background:red;
    color:#fff;
}

.bg_gray {
    background:#f9f9f9;
    padding:40px 10px!important;
}
.mt0 {
    margin-top: 0!important;
}
.mt20 {
    margin-top: 20px!important;
}
.mt30 {
    margin-top: 30px!important;
}
.mt40 {
    margin-top: 40px!important;
}
.mt50 {
    margin-top: 50px!important;
}
.mt80 {
    margin-top: 80px!important;
}
.pd0 {
    padding: 0!important;
}

.btn_more {
    width: 200px;
    height: 60px;
    border-radius: 10px;
    margin-top: 40px;
    background:#E22F00;
}
.btn_more > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 14px;
    font-weight: 300;
    color:#fff;
    border-radius: 30px;;
    
}
.btn_more > a > p {
    margin-right: 30px;
    transition: all .4s;
}
.btn_more > a:hover p {
    margin-right: 20px;
}
.btn_wrap2 {
    display: flex;
    justify-content: center;
    gap: 10px;
        margin-top: 40px;
}
.btn_more2 {
    width: 200px;
    height: 60px;
    border-radius: 10px;
    border:1px solid #ddd;
}
.btn_more2:hover {
    background:#E22F00;
    border:#E22F00;
}
.btn_more2 > a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 14px;
    font-weight: 300;
    color:#666;
    border-radius: 30px;;
}
.btn_more2 > a:hover {
    color:#fff;
}
.btn_more2 > a > p {
    margin-right: 30px;
    transition: all .4s;
}
.btn_more2 > a:hover p {
    margin-right: 20px;
}

.bar {
    width: 1px;
    margin:60px auto 0;
    height: 200px;    
    background:#ddd;
}
.bar2 {
    width: 100%;
    height: 1px;
    background:#ddd;
    margin:20px 0 20px 0;
}
.bar3 {
    width: 60px;
    height: 4px;
    background:#E22F00;
    margin:20px 0 20px 0;
}
.bar4 {
    width: 100%;
    height: 1px;
    border-top:1px solid #ddd;
    margin:60px auto;
}

.desc_list {
    display: flex;
    margin-top: 20px;
}

.desc_list > li {
    width: calc(50% - 20px);
    font-size: 18px;
    line-height: 26px;
    color:#666;
}
.desc_list.type2 > li {
    width: 100%;
}

.tit {
    font-size: 40px;
    line-height: 50px;
    font-weight: 700;
    margin-top: 16px;
    transition: all .4s;
}
.tit.type2 {
    display: inline-block;
    position: relative;
}
.tit.type2:after {
    content:"";
    width: 62px;
    height: 43px;
    background:url('../img/youtube_logo.png') center no-repeat;
    background-size:contain;
    position: absolute;
    right: -72px;
    top: 50%;
    transform: translateY(-50%);
}
.tit2 {
    font-size: 20px;
    line-height: 30px;
    font-weight: 600;
    color:#E22F00;
    transition: all .4s;
}

.tit_desc {
    font-size: 18px;
    font-weight: 300;
    color:#666;
    margin-top: 16px;
    line-height: 26px;
    word-break: keep-all;
    transition: all .4s;
}
.tac {
    text-align: center!important;
}
.s_tit {
    font-size: 40px;
    line-height: 50px;
    font-weight: 700;
    margin-top: 16px;
}

.s_tit2 {
    font-size: 30px;
    line-height: 40px;
    font-weight: 700;
    position: relative;
    padding-left: 30px;
}
.s_tit2:before {
    content:"";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border:5px solid #E22F00;
}
.s_tit3 {
    font-size: 24px;
    line-height: 40px;
    font-weight: 700;
    position: relative;
    padding-left: 30px;
}
.s_tit3:before {
    content:"";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 20px;
    height: 20px;
    border:5px solid #E22F00;
}
.s_tit_desc {
    font-size: 18px;
    font-weight: 300;
    line-height: 26px;
    color:#666;
    margin-top: 12px;
}
.sub_banner_wrap {
    overflow: hidden;
}
.sub_banner {
    background:url('../img/sub_banner.png') center no-repeat;
    background-size:cover;
    height: 400px;
    animation : s-up 3s .2s both!important;

}
.sub_banner > .inner {
    position: relative;
    width: 100%;
    height: 100%;
    
}
.sub_banner_tit {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    text-align: center;
}

.sub_banner_tit > h2 {
    font-size: 36px;
    font-weight: 700;
    text-transform: uppercase;
    animation : text 1s .2s both!important;
    color:#fff;
}

.sub_banner_tit > p {
    font-size: 18px;
    font-weight: 300;
    margin-top: 16px;
    line-height: 26px;
    color:#fff;
    animation : text 1s .4s both!important;
}

.sub_tit {
    margin-top: 100px;
}

.sub_tit > h2 {
    font-size: 36px;
    font-weight: 700;
    text-align: center;
}
.sub_tit > p {
    font-size: 18px;
    color:#666;
    margin-top: 16px;
    text-align: center;
}

.smenu_wrap {
    height: 60px;
    border-bottom:1px solid #ddd;
}
.smenu_wrap > .inner {
    max-width: 1280px;
    width: 100%;
    height: 60px;

}
.smenu {
    display: flex;
    justify-content: center;
    gap: 10px;
    height: 60px;
}
.smenu > li {
    width: 100%;
    height: 60px;    
}

.smenu > li:last-child {
}
.smenu > li.active {
    border-bottom:2px solid #E22F00;
}
.smenu > li.active a {
    font-weight: 700;
    color:#E22F00;
}
.smenu > li > a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    line-height: 60px;
    font-size: 18px;
    color:#333;
}




.sub_section {
    padding:100px 0!important;
}
.sub_section.type2 {
    background:#FEF4F2;
}
.loca_wrap {
    max-width: 1280px;
    width: 100%;
    margin:60px auto 0 ;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.loca_wrap > h2 {
    font-size: 36px;
    font-weight: 700;
}
.loca_wrap > .loca_info {
    display: flex;
    align-items: center;
}
.loca_wrap > .loca_info > span {
    color:#666;
}
.loca_wrap > .loca_info > p {
    font-size: 15px;
    color:#666;
}
.hide {
    position: absolute;
    top: -9999px;
    left: -9999px;
    width: 1px;
    height: 1px;
    text-indent: -9999px;
}
.fw700 {
    font-weight: 700;
}
.board.inner {
    max-width: 1280px;
    width: 100%;
    margin:50px auto 0;
    margin-bottom: 80px;
}
.inner {
    max-width: 1740px;
    margin:0 auto;
    padding:0 10px;
}
.inner4 {
    max-width: 1280px;
    width: 100%;
    margin:0 auto;
    padding:0 10px;
}
.section {
    padding-top: 160px;
}

.brand_stit {
    font-size: 18px;
    font-weight: 700;
    color:#274AAF;
    text-transform: uppercase;
}
.brand_tit {
    font-size: 40px;
    line-height: 48px;
    margin-top: 30px;
}
.brand_desc {
    font-size: 20px;
    font-weight: 300;
    color:#666;
    margin-top: 30px;
    line-height: 26px;
}
.br_pc {
    display: block;
}
.br_m {
    display: none;
}

.b_color {
    color:#E22F00;
}
.b_color2 {
    color:#001969;
}
.b_color3 {
    color:#FFDD35;
}
#bo_v_img {width:100%;overflow:hidden;text-align:center!important;zoom:1}


/* 헤더 */
.header {
    width: 100%;
    height: 100px;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
}
.header > .inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.header.active {
    border-bottom:1px solid rgba(0,0,0,0.1);
    background:#fff;

}

.logo {
    width: 142px;
    height:73px;
    background:url('../img/logo0.png') left center no-repeat;
    background-size:cover;
    transition: all .4s;
    z-index: 9999;
}
.header.active .logo {
    background:url('../img/logo.png') left center no-repeat;
    background-size:cover;
}

.logo > a {
    display: block;
    width: 100%;
    height: 100%;
}

.nav {
    display: flex;
    align-items: center;
    gap: 130px;
    transition: all .4s;
}
@media (max-width:930px) {
    .nav {
        display: none;
    }
}

.nav > li {
    position: relative;
    height: 100%;
    line-height: 100px;
    transition: all .4s;
}

.nav > li > a {
    font-size: 18px;
    font-weight: 600;
    display: block;
    height: 100%;
    width: 100%;
}


.nav.sub > li > a {
    color:#000;
    
}


.nav > li > a:hover {
    color:#E22F00;
    position: relative;
}
.nav > li.active {
    position: relative;
}


.nav > li:last-child {
    margin-right: 0;
}

.snb {
    display: none;
    padding:20px;
    width: 150px;
    background:#E22F00;
    border-top:0;
    position: absolute;
    top:70px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    line-height:normal;
    transition: all .4s;
}
.snb.type2 {
    width: 250px;
}


.nav > li.active > .snb {
    display: block;
}

.snb > li {
    margin-bottom: 20px;
}
.snb > li:last-child {
    margin-bottom: 0;
}
.snb > li > a {
    font-family: 'pretendard',sans-serif;
    color:#fff;
    font-size: 16px;
    font-weight: 300;
}

.btn_contact {
    border:1px solid rgba(0,0,0,1);
}
.btn_contact > a {
    display: block;
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    padding: 15px 50px;
}
.header.active .btn_contact {
    border:1px solid rgba(0,0,0,0.4);
}
.header.active .btn_contact > a {
    color:#333;
}



/* 메인배너 */
.main_banner {
    height: 100%;
    color:#fff;
    text-align: center;
    overflow: hidden;
}
.main_bg {
    width: 100%;
    height: 100%;
    background:rgba(0,0,0,.9)
}
.swiper {
    width: 100%;
    height: 100%;
}

.mySwiper .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #000;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-slide.img01 {
    background:url('../img/main_banner.png') center no-repeat;
    background-size:cover;
}
.swiper-slide.img02 {
    background:url('../img/main_banner02.png') center no-repeat;
    background-size:cover;
}
.swiper-slide.img03 {
    background:url('../img/main_banner03.png') center no-repeat;
    background-size:cover;
}

.mySwiper .swiper-slide  .txt_wrap {
    width: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    color:#fff;
    transform: translate(-50%, -50%);
    text-align: center;
    
}
.mySwiper .swiper-slide  .txt_wrap > h3 {
    font-family: "Poppins", sans-serif;
    font-size: 22px;
    font-weight: 400;
}
.mySwiper .swiper-slide  .txt_wrap > h2 {
    font-size: 50px;
    line-height: 60px;
    font-weight: 700;
    margin-top: 15px;
}

.mySwiper .swiper-slide  .txt_wrap > p {
    font-size: 20px;
    margin-top: 12px;
    line-height: 28px;
}

.mySwiper .swiper-slide-active .txt_wrap > h3{
    animation : text 1s 1s both;
}
.mySwiper .swiper-slide-active .txt_wrap > h2 {
    animation : text 1s 1.2s both;
}

.mySwiper .swiper-slide-active .txt_wrap > p {
    animation : text 1s 1.4s both;
}
.swiper-pagination {
    bottom: 40px!important;
}
.swiper-button-prev, .swiper-button-next {
    color:#fff!important;
}
.swiper-pagination-bullet {
    background:#fff!important;
    opacity: .5!important;
    
}
.swiper-pagination-bullet-active {
    width: 40px!important;
    border-radius: 10px!important;
    opacity: 1!important;
}
.swiper-button-next {
    right: 40px!important;
} 
.swiper-button-prev {
    left: 40px!important;
}


.btn_wrap {
    width: 660px;
    display: flex;
    justify-content: center;
    margin:0 auto;
}
.btn_wrap > .btn_more {
    width: 220px;
    height: 80px;
    background:none;
    border:1px solid #fff;
    margin-right: 10px;
    border-radius: 5px;
    margin:40px auto 0;
    margin-right: 10px;
}
.btn_wrap > .btn_more:last-child {
    margin-right: 0;
}
.btn_wrap > .btn_more > a {
    line-height: 80px;
    font-size: 18px;
    font-weight: 300;
    color:#fff;
}

.btn_wrap.type2 > .btn_more {
    width: 220px;
    height: 80px;
    background:none;
    border:1px solid #ddd;
    margin-right: 10px;
    border-radius: 5px;
    margin:40px auto 0;
    margin-right: 10px;
}
.btn_wrap.type2 > .btn_more:last-child {
    margin-right: 0;
}
.btn_wrap.type2 > .btn_more > a {
    line-height: 80px;
    font-size: 18px;
    font-weight: 300;
    color:#666;
}
.btn_wrap.type2 > .btn_more > a:hover {
    color:#fff;
}
.btn_wrap.type2 > .btn_more:hover {
    background:#274AAF;
}
.btn_wrap > .btn_more:hover {
    background:rgba(255,255,255,0.3);
}
/* 메인배너 --*/





/* msec_01 */
.saca_con_wrap {
    width: 100%;
    margin-top: 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.saca_con_wrap > li  {
    width: calc(50% - 10px);
    margin-bottom: 20px;
}
.saca_con_wrap > li > a {
    
    display: flex;
    align-items: center;
    gap: 18px;
    background:#F4F6F8;
    padding:50px 40px;
    border-radius: 10px;
    transition: all .4s;
}
.saca_con_wrap > li > a:hover {
    background-color: #E22F00;
    color:#fff;
    margin-top: -10px;
}
.saca_con_wrap > li > a:hover p {
    color:#fff!important;
}
.ico_saca_con {
    width: 80px;
    aspect-ratio: 1/1;
    background:#ddd;
    border-radius: 50%;
}
.ico_saca_con.img01 {background:url('../img/ico_saca_con01.png') center no-repeat;background-size:contain;}
.ico_saca_con.img02 {background:url('../img/ico_saca_con02.png') center no-repeat;background-size:contain;}
.ico_saca_con.img03 {background:url('../img/ico_saca_con03.png') center no-repeat;background-size:contain;}
.ico_saca_con.img04 {background:url('../img/ico_saca_con04.png') center no-repeat;background-size:contain;}
.saca_con_wrap > li > a > .txt_wrap {}
.saca_con_wrap > li > a >.txt_wrap > h2 {
    font-size: 20px;
    font-weight: 700;
}
.saca_con_wrap > li > a >.txt_wrap > p {
    font-size: 16px;
    font-weight: 300;
    color:#666;
    line-height: 24px;
    margin-top: 12px;
    word-break: keep-all;
}
/* msec_01 */


/* msec_02 */
.board_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-top: 50px;
    gap: 40px;
}
.news_wrap {
    width: 100%!important;
    background:#F9F9F9;
    border-radius: 10px;
    position: relative;
    padding:100px 60px;
    
}
.news_wrap > h2 {
    position: absolute;
    top: -20px;
    left: 60px;
    font-family: "Poppins", sans-serif;
    font-size: 50px;
    font-weight: 700;
}
.news_wrap > h3 {
    width: 130px;
    height: 40px;
    background:#E22F00;
    font-size: 20px;
    font-weight: 700;
    line-height: 40px;
    text-align: center;
    color:#fff;

}
.news_wrap > h4 {
    font-size: 26px;
    font-weight: 700;
    margin-top: 20px;
}
.news_wrap > p {
    font-size: 18px;
    color:#666;
    line-height: 26px;
    word-break: keep-all;
    margin-top: 18px;
}
.press_wrap {
    width: 100%!important;
}
.line {
    width: 100%;
    height: 1px;
    background:#ddd;
    margin:50px 0;

}
/* msec_02 */


/* msec_03 */
.banner_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 40px;
    margin-top: 60px;
}
.banner_wrap > .banner {
    width: 100%;
    padding:60px 50px;
    border-radius: 10px;
    background:#F3E0C2;
    position: relative;
}
.banner_wrap > .banner.type2 {
    background:#FFF8F0;
}
.banner_wrap > .banner > h2 {
    font-size: 34px;
    font-weight: 700;
}
.banner_wrap > .banner > p {
    font-size: 16px;
    color:#666;
    line-height: 24px;
    margin-top: 16px;
}
.banner_wrap > .banner > .btn_more {
    width: 215px;
    height: 55px;
    background:#fff;
    border-radius: 10px;
}
.banner_wrap > .banner > .btn_more > a {
    color:#666;
}
.banner_wrap > .banner > .btn_more > a > p {}
.banner_wrap > .banner > .btn_more > a > span {}
.ico_banner {
    width: 340px;
    height: 306px;
    position: absolute;
    background:#ddd;
    bottom: 0;
    right: 20px;
}
.ico_banner.img01 {background:url('../img/ico_banner01.png') center no-repeat;background-size:contain;}
.ico_banner.img02 {background:url('../img/ico_banner02.png') center no-repeat;background-size:contain;}
/* msec_03 */



/* msec_04 */
.msec_04 {
    width: calc(100% - 200px);
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin:0 auto;
}

.inner2 {
    width: calc(75% - 20px);
}
.inner3 {
    width: calc(25% - 20px);
}
/* msec_04 */


/* msec_05 */
.partner_wrap {
    padding:50px 0;
}
.partner-marquee {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 20px 0;
}

.partner-track {
    display: flex;
    width: max-content;
    animation: partner-marquee 40s linear infinite;
}

/* 마우스 올리면 멈추게 */
.partner-marquee:hover .partner-track {
    animation-play-state: paused;
}

.partner-group {
    display: flex;
}

.partner-item {
    flex: 0 0 auto;
    padding: 0 40px; /* 로고 사이 간격 */
}

.partner-item img {
    height: 40px;      /* 로고 기본 높이 */
    width: auto;
    opacity: 0.7;
    filter: grayscale(100%);
    transition: 0.3s;
}

.partner-item img:hover {
    opacity: 1;
    filter: none;
}

/* 흐르는 애니메이션 */
@keyframes partner-marquee {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* 반응형 - 모바일에서 로고 크기 줄이기 */
@media (max-width: 768px) {
    .partner-item {
        padding: 0 20px;
    }
    .partner-item img {
        height: 30px;
    }
}
/* msec_05 */


/* sub1_1 */
.greeting_wrap {
    display: flex;
    justify-content: space-between;
    align-items:flex-start;
}
.img_greeting {
    max-width: calc(35% - 40px);
    width: 100%;
    aspect-ratio: 1/1.399509803921569;
    background:url('../img/img_ceo.png') top center no-repeat;
    background-size:contain;
    border-radius: 10px;
    overflow: hidden;
}
.greeting_cont {
    width: calc(65% - 20px);
}
.greeting_cont > h2 {
    font-size: 34px;
    line-height: 44px;
    font-weight: 700;

}
.greeting_cont > p {
    font-size: 18px;
    line-height: 26px;
    color:#666;
    word-break: keep-all;
    margin-top: 40px;
}
.greeting_cont > h3 {
    font-size: 18px;
    font-weight: 600;
    margin-top: 40px;
}
.vision_wrap {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}
.vision_wrap > li {
    width: calc(33.33% - 20px);
    aspect-ratio: 1/1.1275;
}
.vision_wrap > li.img01 {background:url('../img/img_vision01.png') center no-repeat;background-size:contain}
.vision_wrap > li.img02 {background:url('../img/img_vision02.png') center no-repeat;background-size:contain}
.vision_wrap > li.img03 {background:url('../img/img_vision03.png') center no-repeat;background-size:contain}
.img_org {
    margin-top: 50px;
}
/* sub1_1 */

/*sub1_2 */
.his_wrap {
    display: flex;
    justify-content: space-between;
    margin-bottom: 80px;
}
.his_wrap.type1 {
    margin-top: 50px;
}
.his_wrap.type2 {
    display: flex;
    flex-direction: row-reverse;
}
.img_his {
    width: calc(35% - 20px);
    height: 500px;
    background:#ddd;
    border-radius: 10px;
}
.his_cont {
    width: calc(65% - 20px);
}
.his_cont > h2 {
    width: 100%;
    font-size: 60px;
    color:#E22F00;
    font-weight: 700;
    
}
.his_cont > ul {
    width: 100%;
    padding-bottom: 80px;
    margin-top: 40px;
    
}
.his_cont > ul > li {
    display: flex;
    align-items:flex-start;
    margin-bottom: 30px;
    padding-left: 20px;
}

.his_cont > ul > li > h4 {
    width: 130px;
    font-size: 20px;
    font-weight: 700;
    margin-top: 10px;
    position: relative;
}

.his_cont > ul > li > p {
    width: calc(100% - 130px);
    font-size: 18px;
    color:#666;
    line-height: 36px;
    word-break: keep-all;
}

/* sub1_2 */

/* sub1_3 */
.ci_wrap {
    
    background:url('../img/ci_bg.png') repeat;
    border:1px solid #ddd;
    padding:140px 0;
    border-radius: 10px;
    margin-top: 50px;
}
.ci_logo {
    width: 425px;
    height: 218px;
    background:url('../img/logo3.png') center no-repeat;
    background-size:contain;
    margin:0 auto;
}
.ci_detail {
    background:#f9f9f9;
    border-radius: 10px;
    margin-top: 20px;
    text-align: center;
    padding:50px;
    font-size: 18px;
    font-weight: 300;
    line-height: 26px;
    color:#666;
}
.ci_wrap > p {
    font-size: 18px;
    font-weight: 300;
    line-height: 26px;
    text-align: center;
    margin-top: 30px;
    color:#666;
}
.ci_color {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
    border:1px solid #ddd;
    background:#fff;
    border-radius: 10px;
}
.ci_color > li {
    width: 50%;
    border-radius: 10px;
    padding:40px 40px;
}

.color_detail {
    display: inline-block;
    margin-bottom: 20px;
}
.color_bg {
    height:70px;
    background:#E22F00;
    border-radius: 10px;;
    margin-bottom: 40px;
    line-height: 70px;
    color:#fff!important;
    font-size: 24px!important;
    padding-left: 30px;
}
.color_bg.type2 {
    background:#572A06;
}
.ci_color > li > div {
    font-size: 18px;
    font-weight: 300;
    color:#666;
}
.color_tit {
    display: inline-block;
    width: 100px;
}
/* sub1_3 */


/* sub1_4 */
.map_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
.map_wrap > div {
    width: 100%;
    border-radius: 10px;;
    overflow: hidden;
}

.map_wrap > div > h2 {
    font-size: 26px;
    font-weight: 700;
}

.map_info_wrap {
    background:#f9f9f9;
    padding:30px 20px;
    margin-top: 20px;
    display: flex;
}
.map_info_wrap > h2 {
    margin-right: 40px;
}
.map_info {
    display: flex;
    gap: 30px;
}
.map_info > li {
    display: flex;
    align-items: center;
    gap: 10px;

}
.map_info > li > .ico_map {
    width: 30px;
    height: 30px;
    background:#ddd;
}
.map_info > li > .ico_map.img01 {background:url('../img/ico_map01.png') center no-repeat;background-size:contain;}
.map_info > li > .ico_map.img02 {background:url('../img/ico_map02.png') center no-repeat;background-size:contain;}
.map_info > li > .ico_map.img03 {background:url('../img/ico_map03.png') center no-repeat;background-size:contain;}
.map_info > li > .txt_wrap {
    display: flex;
    align-items: center;
    gap: 14px;
}
.map_info > li > .txt_wrap > h2 {
    font-size: 18px;
    font-weight: 600;
}
.map_info > li > .txt_wrap > p {
    font-size: 16px;
    font-weight: 300;
    color:#666;
    line-height: 24px;
    word-break: keep-all;
}
.map_how {
    margin-top: 50px;
}
.map_how > li {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-top:1px solid #ddd;
    border-bottom:1px solid #ddd;
    padding:40px 0;
}
.map_how > li > div:first-child {
    width: 270px;
    display: flex;
    align-items: center;
    gap: 10px;
}
.ico_bmw {
    width: 60px;
    height: 60px;
    background:#ddd;
}
.ico_bmw.img01 {background:url('../img/ico_bmw01.png') center no-repeat;background-size:contain;}
.ico_bmw.img02 {background:url('../img/ico_bmw02.png') center no-repeat;background-size:contain;}
.ico_bmw.img03 {background:url('../img/ico_bmw03.png') center no-repeat;background-size:contain;}
.map_how > li > div:first-child > h2 {
    font-size: 20px;
    font-weight: 700;
}
.map_how_info {
    width: calc(100% - 270px);
}
.how_tit {
    display: flex;
    align-items: center;
}
.how_tit.type2 {
    margin-top: 30px;
}
.map_how_info > .how_tit > h2 {
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    position: relative;
}
.map_how_info > .how_tit > span {
    display: inline-block;
    width: 30px!important;
    height: 30px;
    background:#996CAC;
    border-radius: 50%;
    color:#fff;
    font-weight: 700;
    line-height: 30px;
    text-align: center;
    margin-right: 10px;
    font-size: 18px;
}
.map_how_info > .how_tit > span.type2 {
    background: rgba(135, 199, 0);
}
.map_how_info > .how_tit > span.type3 {
    background: rgb(69, 43, 243);
}
.map_how_info > p {
    font-size: 16px;
    font-weight: 300;
    line-height: 30px;
    word-break: keep-all;
    margin-top: 14px;
    color:#666;
}
/* sub1_4 */


/* sub2_2 */
.school_loca {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.school_map {
    max-width: 423px;
    width: 100%;
    position: relative;
}
.school_map_img {
    width: 100%;
    background:url('../img/school_map.png') center no-repeat;
    background-size:contain;
    aspect-ratio: 1/1.415506958250497;
}
.school_box {
    display: inline-block;
    font-size: 14px;
    
    
    position: absolute;
}
.local_link {
    padding-top: 130px;
    margin-top: -130px;
}
.school_box > a {
    display: block;
    border:1px solid #ddd;
    text-align: center;
    padding: 8px 10px;
    border-radius: 30px;
    background:#fff;
}
.school_box.type01 {
    top: 100px;
    left: 100px;
}
.school_box.type02 {
    top: 100px;
    right: 120px;
}
.school_box.type03 {
    top: 140px;
    left: 130px;
}
.school_box.type04 {
    top: 200px;
    left: 180px;
}
.school_box.type05 {
    top: 250px;
    left: 80px;
}
.school_box.type06 {
    bottom: 180px;
    right: 80px;
}
.school_box.type07 {
    top: 340px;
    left: 120px;
}
.school_box.type08 {
    bottom: 20px;
    left: 100px;
}
.school_loca_info {
    width: calc(100% - 563px);
    /* border:1px solid #ddd;
    border-radius: 20px;
    padding:60px 40px; */
    
}
.school_loca_info > ul {
    display: flex;  
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 40px;
    
}
.school_loca_info > ul > li {
    width: calc(50% - 10px);
    padding:20px 30px;
    border:1px solid #ebebeb;
    margin-bottom: 20px;
    background:#f9f9f9;
    border-radius: 10px;
}

.school_loca_info > ul > li > h2 {
    font-size: 18px;
    font-weight: 700;

}
.school_loca_info > ul > li > h3 {
    font-size: 18px;
    margin-top: 20px;
}
.school_loca_info > ul > li > ul {
    display: flex;
    margin-top: 12px;
    gap: 6px;
    
}
.school_loca_info > ul > li > ul > li {
    background:rgba(255,255,255,0.8);
    border:1px solid #ddd;
    font-size: 14px;
    font-weight: 300;
    padding:6px 10px;
    border-radius: 5px;
    color:#666;

}
.school_loca_info > ul > li > p {
    font-size: 16px;
    font-weight: 300;
    color:#666;
    margin-top: 20px;
}
.school_loca_info  > h2 {
    font-size: 26px;
    font-weight: 700;
}
.school_wrap {
    display: flex;
    justify-content: space-between;
    margin-top: 50px;
}
.school_info {
    /* width: calc(100% - 463px); */
    width: 100%;
}
.border_right1 {
    border-right:1px solid #ddd!important;
}
.school_info01 {

}
.school_info01 > h2 {
    font-size: 26px;
    font-weight: 700;
}
.school_info01 > ul {
    margin-top: 30px;
}
.school_info01 > ul > li {
    display: flex;
    align-items: center;
    gap: 20px;
    border-bottom:1px solid #ddd;
    width: 100%;
    padding:14px 0;
}
.s_color {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background:#E22F00;
}
.s_color.type2 {
    background:#C6E5F4;
}
.school_info01 > ul > li > h3 {
    width: 70%;
}
.school_info01 > ul > li > p {
    text-align: right;
    width: 20%;
}
.table_wrap {
    width: 100%;
    margin-top: 50px;
}
.table_wrap > h2 {
    font-size: 18px;
    font-weight: 700;
    padding-left: 12px;
    position: relative;
}
.table_wrap > h2:before {
    content:"";
    width: 8px;
    height: 8px;
    background:#E22F00;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}
.table_wrap > h2.type2:before  {background:#E22F00;}
.table_wrap > h2.type2:before  {background:#E22F00;}
.table_wrap > h2.type2:before  {background:#E22F00;}
.table_wrap > h2.type2:before  {background:#E22F00;}
.table_wrap > h2.type2:before  {background:#E22F00;}
.table_wrap > h2.type2:before  {background:#E22F00;}
.table_wrap > h2.type2:before  {background:#E22F00;}
.local_table {
    width: 100%;
    margin-top: 20px;
}
.local_table th {
    border-top:2px solid #E22F00;
    border-bottom:1px solid #ddd;
    padding:20px 0;
    border-right:1px solid #ddd;
    background:#f9f9f9;
}
.local_table th:last-child {
    border-right:0;
}
.local_table th:nth-child(1) { width: 10%; }
.local_table th:nth-child(2) { width: 13%; }
.local_table th:nth-child(3) { width: 10%; }
.local_table th:nth-child(4) { width: 15%; }
.local_table th:nth-child(5) { width: 45%; }
.local_table tr {}
.local_table td {
    padding:12px 0;
    border-bottom:1px solid #ddd;
    text-align: center;
    color:#666;
    vertical-align: middle;
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;
    word-break: keep-all;
    border-right:1px solid #ddd;
}
.local_table td:last-child {
    border-right:0;
}
.local_table td.type2 {
    font-weight: 700;
    color:#ff1c1c

}
.local_box {
    transition: all .3s ease;
}

/* sub2_2 */




/* 푸터 */


.q_menu {
    z-index: 9999;
    position: fixed;
    bottom: 100px;
    right: 10px;
}
.q_menu > li {
    width: 80px;
    height: 80px;
    border:1px solid rgba(0,0,0,0);
}

.qmenu01 {
    background:url('../img/q01.png') center no-repeat;
    background-size:contain;
}
.qmenu02 {
    background:url('../img/q02.png') center no-repeat;
    background-size:contain;
}
.qmenu01:hover {
    background:url('../img/q011.png') center no-repeat;
    background-size:contain;
}
.qmenu02:hover {
    background:url('../img/q022.png') center no-repeat;
    background-size:contain;
}
.qmenu03 {
    background:#413F3C;
}
.qmenu04 {
    background:#000000;
}
.q_menu > li > a {
    display: block;
    width: 100%;
    height: 100%;
}
.ico_qmenu {
    width: 30px;
    height: 30px;
    background:#6E0E10;
    margin: 13px auto 0;
}
.ico_qmenu.img01 {
    background:url('../img/ico_qmenu01.png') center no-repeat;
    background-size:contain;
}
.ico_qmenu.img02 {
    background:url('../img/ico_qmenu02.png') center no-repeat;
    background-size:contain;
}
.ico_qmenu.img03 {
    background:url('../img/ico_qmenu03.png') center no-repeat;
}
.ico_qmenu.img04 {
    background:url('../img/ico_qmenu04.png') center no-repeat;
}
.q_menu > li > a > p,
.q_menu > li >  p {
    font-size: 14px;
    color:#fff;
    text-align: center;
    margin-top: 8px;
}


.login_wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.login_wrap > li {
}
.login_wrap > li > a {
    font-size: 16px;
    font-weight: 400;
    color:#666;
}

.sns_link {
    width: 36px;
    height: 36px;
    background:#ddd;
}
.sns_link  > a {
    display: block;
    width: 100%;
    height: 100%;
}
.sns_link.img00 {background:url('../img/ico_sns00.png') center no-repeat;background-size:contain;}
.sns_link.img01 {background:url('../img/ico_sns01.png') center no-repeat;background-size:contain;}
.sns_link.img02 {background:url('../img/ico_sns02.png') center no-repeat;background-size:contain;}
.sns_link.img03 {background:url('../img/ico_sns03.png') center no-repeat;background-size:contain;}

.sns_link.img00:hover {background:url('../img/ico_sns000.png') center no-repeat;background-size:contain;}
.sns_link.img01:hover {background:url('../img/ico_sns011.png') center no-repeat;background-size:contain;}
.sns_link.img02:hover {background:url('../img/ico_sns022.png') center no-repeat;background-size:contain;}
.sns_link.img03:hover {background:url('../img/ico_sns033.png') center no-repeat;background-size:contain;}

.all_menu {
    width: 40px;
    height: 40px;
    background:url('../img/allmenu.png') center no-repeat;
    background-size:contain;
    z-index: 9999;
    cursor: pointer;
    margin-left: 10px;
}
.all_wrap {
    z-index: 9998;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background:#fff;
    padding:0 120px;
    /* display: none;  ← 이거 빼고 */
    
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.4s ease; /* 배경 페이드인 */
}

.all_wrap.active {
    /* display: block;  ← 이건 필요 없음 */
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}
.all_menu.active {
    width: 40px;
    height: 40px;
    background:url('../img/close_all.png') center no-repeat;
    background-size:contain;
    z-index: 9999;
}
.all_wrap > div {
    
    height: 100%;
}
.all_wrap > div > ul {
    display: flex;
    height: 100%;
}
.all_wrap > div > ul > li {
    width: 25%;
    padding: 25vh 30px 0;
    border-right:1px solid #ddd;
    
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

/* active 상태일 때 한 개씩 순서대로 올라오게 (stagger 효과) */
.all_wrap.active > div > ul > li:nth-child(1) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.15s;
}
.all_wrap.active > div > ul > li:nth-child(2) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.25s;
}
.all_wrap.active > div > ul > li:nth-child(3) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.35s;
}
.all_wrap.active > div > ul > li:nth-child(4) {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 0.45s;
}.all_wrap > div > ul > li:hover a:before {
    top: -40px;
    background:url('../img/logo4.png')center no-repeat;
    background-size:contain;
}
.all_wrap > div > ul > li:first-child {
    border-left:1px solid #ddd;
}
.all_wrap > div > ul > li > a {
    font-size: 32px;
    position: relative;
    font-weight: 700;
}
.all_wrap > div > ul > li > a:hover {
    color:#E22F00;
}
.all_wrap > div > ul > li > a:before {
    content:"";
    width: 54px;
    height: 28px;
    position: absolute;
    top: -50px;
    left: 0;
    background:url('../img/logo5.png')center no-repeat;
    background-size:contain;
    transition: all .8s;
}
.all_wrap > div > ul > li > ul {
    margin-top: 50px;
}
.all_wrap > div > ul > li > ul > li {
    margin-bottom: 20px;
}
.all_wrap > div > ul > li > ul > li > a {
    font-size: 20px;
    color:#333;
}
.all_wrap > div > ul > li > ul > li > a:hover {
    color:#E22F00;
    text-decoration: underline;
}

.m_nav_btn,
.m_nav_wrap {
    display: none;
}


footer {
    background:#000123;
    padding:60px 0;
    background-size:cover;
}
footer > .inner {
    display: flex;
    position: relative;
}

footer > .inner >  .logo {
    width: 142px;
    height: 73px;
    background:url('../img/logo2.png') center no-repeat;
    background-size:contain;
    margin-right: 110px;
}
footer > .inner > .footer_info {
}
footer > .inner > .footer_info > p {
    display: block;
    font-size: 14px;
    font-weight: 300;
    color:#8D8D8D!important;
    line-height: 22px;

}
.footer_info >  .copy {
    display: inline-block;
    font-size: 16px;
    font-weight: 300;
    color:#AAAAAA;
    line-height: 26px;
    margin-top: 20px;
}
.customer_info {
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}
.customer_info > li {
    text-align: right;
    display: flex;
    align-items: center;
    margin-bottom: 6px;
    justify-content: flex-end;
}
.customer_info > li > h4 {
    font-size: 20px;
    font-weight: 300;
    color:#fff;
}
.customer_info > li > h3 {
    font-size: 24px;
    font-weight: 700;
    color:#fff;
    margin-left: 11px;
}
.customer_info > li > h5 {
    font-size: 18px;
    font-weight: 300;
    color:#AAAAAA;
}
.q_link {
    display: flex;
    justify-content: center;
}
.q_link > li {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background:#fff;
}
.q_link > li:last-child {
    margin-right: 0;
}
.q_link > li > a {
    display: block;
    width: 100%;
    height: 100%;
}
.q_link > li.img01 {background:url('../img/q_link01.png') center no-repeat; background-size:contain;}
.q_link > li.img02 {background:url('../img/q_link02.png') center no-repeat; background-size:contain;}








/* 입단 및 무료체험문의 */

.privacy {
}
.privacy > h2,
.inquiry_tit {
    font-family: 'pretendard',sans-serif;
    font-size: 18px;
    font-weight: 700;
}
.inquiry_tit {
    margin: 50px 0;
}
.privacy_box {
    margin-top: 24px;
    border:1px solid #ddd;
    padding:15px;
}
.privacy_box > p {
    font-family: 'pretendard',sans-serif;
    font-size: 14px;
    font-weight: 300;
    color:#666;
    line-height: 22px;
}

.privacy_check {
    margin: 24px 0;;
}
.privacy_check span {
    color:#666;
    font-size: 16px;
    font-weight: 300;
}

.inquiry_list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.inquiry_list > li {
    width: calc(50% - 20px);
    margin-bottom: 20px;
    
}
.inquiry_list > .full_input {
    width: 100%;
}
.inquiry_01 {
    width: 100%;
    height: 40px;
    font-size: 16px;
    font-weight: 700;
    line-height: 40px;
}
.inquiry_01 > h2 {
    font-size: 18px;
    display: inline-block;
    position: relative;
}
.inquiry_01 > p {
    font-size: 16px;
    font-weight: 300;
    color:#666;
    margin-left: 10px;
    display: inline-block;
    position: relative;
}
#radioSpan {
    display: block;
    line-height: 57px;
}
.input_radio {
    margin-right: 5px;
    width: 24px;
    height: 24px;
    border: 1px solid #dfdfdf;
    border-radius: 24px;
    cursor: pointer;
    margin-right: 9px;
}
.radio_tit {
    font-size: 15px;
    color:#666;
    display: inline-block;
    margin-right: 20px;
}
input[type='radio'] {
    -webkit-appearance: none; 
    -moz-appearance: none;
    appearance: none; 
    width: 20px;
    height: 20px;
    border: 2px solid #ccc;
    border-radius: 50%;
    outline: none; 
    cursor: pointer;
}

input[type='radio']:checked {
    background-color: #2AA4FF; 
    border: 3px solid white; 
    box-shadow: 0 0 0 1.6px #2AA4FF;
}

/* input 숨겨준다 */
input#check_btn{
    display:none;
    }
  
  input#check_btn + label{
    cursor:pointer;
   }
  
  input#check_btn + label > span{
    vertical-align: middle;
    padding-left: 5px;
   }


.customer_bar {
    border-bottom:1px solid #ddd;
}
.inquiry_01 > h2:after {
    content:"";
    width: 6px;
    height: 6px;
    background:url('../img/star_ico.png') center no-repeat;
    background-size:contain;
    position: absolute;
    top: 10px;
    right: -10px;
}
.inquiry_02 {
    height: 57px;
    width: 100%;
}
.fr-con > input {
    background:#fff;
    width: 100%;
    height: 57px;
    border:1px solid #A9A9A9;
    padding-left: 20px;
    font-size: 14px;
    border-radius: 10px;
    background:#fbfbfb;
}
.fr-con.type2 {
    display: flex;
    align-items: center;
}
.fr-con.type2 .frm_file {

}
.fr-con.phone {
    display: flex;
    justify-content: space-between;
}

.phone_number {
    width: calc(33% - 10px)!important;
    border:1px solid red!important;
}

.fr-con.mail {
    display: flex;
}
.fr-con.mail > span {
    line-height: 50px;
    margin:0 10px;
}

.inquiry_con {
    /* display: none!important; */
    height: 240px;

    
}
.inquiry_con2 {
    height: 500px!important;
}
.inquiry_con > .inquiry_02 {
    height: 200px!important;
}

.check2 {
    width: 100%;
    height: 80px;
    background:#f6f6f6;
    padding:13px 30px;
    display: flex;
    justify-content: space-between;
}
.check2_img {
    width: 54px;
    height: 54px;
    background:url('../img/check2_img.png') center no-repeat;
}
.check2_info {
    width: 629px;
}
.check2_info > p {
    font-size: 16px;
    font-weight: 300;
    color:#666;
    margin-top: 10px;
}



.form-box {}
.form-box .form-con {
    width: 100%;
    margin: 0px auto 0;
    padding:40px;
}

.form-box .form-con ul li {
    
}

.form-box .form-con ul li .fr-con {
    width: 100%;
    height: 100%;
}





.form-box .form-con ul li .fr-con .text-box {
    diaplay: table;
    width: 100%;
    height: 65px;
}

.form-box .form-con ul li .fr-con .text-box input {
    width: 34%;
    float: left;
    margin-left: 1%;
}

.form-box select {
    width: 50%;
    float: left;
    height: 100%;
    background: #fff;
}

.select2 {
    border:1px solid #ddd;
    padding:0 18px;
    font-size: 14px!important;
}

.form-box .form-con ul li .fr-con textarea {
    height: 200px;
    width: 100%;
    border:1px solid #ddd;
    background:#fff;
    padding:20px;
    resize: none;
    font-size: 14px;
}

.form-box .form-con .provision {
    display: table;
    width: 100%;
    margin-top: 30px;
    text-align: center;
    font-size: 14px;
    font-family: 'Noto Sans KR', sans-serif;
}

.form-box .form-con .provision label {
    cursor: pointer;
    font-weight: 300;
}

.form-box .form-con .provision label input {
    width: 20px;
    height: 20px;
}

.form-box .form-con .provision label span {
    vertical-align: -2px;
    margin-left: 5px;
}

.form-box .form-con .provision a {
    padding: 0 15px;
    line-height: 65px;
    font-size: 12px;
    color: #fff;
    display: inline-block;
    margin-left: 10px;
}

.form-box .receive-btn {
    width: 158px;
    height: 47px;
    margin: 40px auto 0;

}

.form-box .receive-btn input {
    width: 100%;
    height: 100%;
    color: #fff;
    background: #2AA4FF !important;
    border: 0;
    font-size: 16px;
    font-weight: 700;
    font-family: 'Noto Sans KR', sans-serif;
    border-radius: 10px;


}

select {
    font-size: 16px;
}