@charset "utf-8";

/* 상단 */
#header{position:relative;top:0;left:0;z-index:100;width:100%;background:var(--color-white,#fff);box-shadow:0 0 10px rgba(0,0,0,.15)}
#header .header-top{position:relative;margin:0 auto;padding:16px 0;width:1180px; height:80px;}
/* logo */
#header #logo{position:absolute;top:50%;left:0;transform:translateY(-50%)}
#header #logo a{display:block;height:100%;line-height:0;max-width:230px}
#header #logo a img{height:100%;width:100%}
/* search */
#header .search-wrap{position:relative;margin:0 auto;width:100%;max-width:450px;box-shadow:0 3px 7px rgba(0,0,0,.15);border-radius:15px}
@media only screen and (min-width:1025px) {
    #header .search-wrap{display:block!important}
}
#header .search-wrap input[type="text"]{padding:0 56px 0 20px;width:100%;height:48px;border-radius:15px;border:0 none;font-weight:400;font-size:16px;color:var(--color-dark-gray)}
#header .search-wrap .search{position:absolute;top:0;right:0;padding:0;width:56px;height:48px;background:none;text-align:center}
#header .search-wrap .back{display:none;position:absolute;top:0;left:30px;padding:0;width:30px;height:80px;background:none}
#header .m-search-btn{display:none;line-height:0}
/* logion */
.header-login-wrap{position:absolute;top:16px;right:0}
.header-login-wrap .login-utils{display:flex;align-items:center;}
.header-login-wrap .login-utils li{display:inline-block;vertical-align:middle}
.header-login-wrap .login-utils li a{display:block;font-weight:500;font-size:16px;line-height:48px;color:var(--color-black,#000)}
.header-login-wrap .login-utils li.join a{color:var(--color-primary)}
.header-login-wrap .login-utils li.login a{margin-right:20px; padding-right:20px;cursor:pointer}
.header-login-wrap .login-utils:has(+ .language-select-box) li.login a {margin-right:0;}
.header-login-wrap .login-utils .login a {position:relative;}
.header-login-wrap .login-utils .login a:after {content:''; position:absolute; top:0; right:0; width:11px; height:48px; background:url(/html/_skin/1/images/common/icon_select_arrow_b.webp) no-repeat center/contain;}
.header-login-wrap .login-utils .login.on a:after {transform:rotate(180deg);}
.header-login-wrap .login-menu{display:none;position:absolute;top:100%;right:-20px;z-index:110;margin-top:17px;padding:20px;width:160px;border-radius:3px;border:1px solid var(--color-dark-gray);background:var(--color-white,#fff)}
.header-login-wrap .login-menu .user-name{margin-bottom:15px;font-weight:500;font-size:14px;color:var(--color-primary)}
.header-login-wrap .login-menu .user-name strong{font-weight:700}
.header-login-wrap .login-menu .alarm-wrap{position:absolute;top:20px;right:20px;line-height:0}
.header-login-wrap .login-menu .alarm-wrap .new{position:absolute;top:-8px;right:-10px;width:16px;height:16px;border-radius:50%;background:var(--color-red);font-weight:500;font-size:11px;line-height:16px;color:var(--color-white,#fff);text-align:center}
.header-login-wrap .login-menu .user-menu li a{position:relative;display:inline-block;font-weight:400;font-size:18px;line-height:32px;color:var(--color-dark-gray);transition:.3s}
.header-login-wrap .login-menu .user-menu li a:after{content:'';position:absolute;bottom:5px;left:0;width:100%;height:1px;background:var(--color-dark-gray);transition:.3s;opacity:0}
.header-login-wrap .login-menu .user-menu li:hover a{font-weight:700}
.header-login-wrap .login-menu .user-menu li:hover a:after{opacity:1}
.header-login-wrap:has(.language-select-box) .login-menu {right:60px;}
.header-login-wrap{display:flex;align-items:center;gap:20px}
.login-menu .user-menu .btn-admin{margin-top:7px}
.login-menu .user-menu .btn-admin a{display:inline-flex;gap:5px;align-items:center}
.language-select-box{position:relative}
.language-select-box .language-select{position:relative;display:block;min-width:90px;padding:14px 14px 15px;font-size:15px;font-weight:500;color:var(--color-white,#fff);background:#333;border-radius:15px}
.language-select-box .language-select:after{content:'';position:absolute;top:50%;right:12px;width:16px;height:16px;background:url(/html/_skin/1/images/common/icon_globe.webp) no-repeat center/contain;transform:translateY(-50%)}
.language-select-box.on .language-select:after{width:11px;height:9px;background-image:url(/html/_skin/1/images/common/icon_select_arrow.webp)}
.language-select-box .language-list{position:absolute;top:100%;left:0;display:none;width:100%;padding:10px 5px 10px 15px;background:#4e4e4e;border-radius:15px;z-index:110}
.language-select-box .language-list li + li{margin-top:5px}
.language-select-box .language-list a{display:block;padding:2px 0;font-size:15px;font-weight:500;color:rgba(255,255,255,0.5)}
.language-select-box .language-list a:where(:hover,.on){color:var(--color-white,#fff)}
@media only screen and (max-width:1180px) {
    #header .header-top{padding:16px 30px;width:100%;height:80px}
    #header #logo{left:30px}
    .header-login-wrap{top:16px;right:75px;}
    .header-login-wrap .login-utils{background:none;padding-right:0}
    .header-login-wrap .login-utils li.login a {margin-right:0;}
    .header-login-wrap .login-menu{right:-25px}
}
@media only screen and (max-width:1024px) {
    .header-login-wrap{top:50%;right:75px;transform:translateY(-50%);z-index:10; gap:15px;}
    .header-login-wrap .login-utils{display:none}
    .language-select-box .language-select span{display:none}
    .language-select-box .language-select{min-width:30px;height:30px;padding:0;background:transparent}
    .language-select-box .language-select:after{right:0;width:30px;height:30px;background-image:url(/html/_skin/1/images/common/icon_globe.svg)}
    .language-select-box.on .language-select:after{width:30px;height:30px;background-image:url(/html/_skin/1/images/common/icon_globe.svg)}
    .language-select-box .language-list{top:calc(100% + 10px);left:-30px;width:90px}
    .header-login-wrap .login-menu {display:none !important;}
    #header .m-search-btn{display:block;/*right:120px*/}
    #header .search-wrap{display:none;position:fixed;top:0;left:0;z-index:20;max-width:100%;border-bottom:2px solid var(--color-dark-gray);border-radius:0;box-shadow:none}
    #header .search-wrap input[type="text"]{padding:0 75px;height:80px;border-radius:0;font-size:24px}
    #header .search-wrap .back{display:block}
    #header .search-wrap .search{right:30px;width:30px;height:80px;background:url(../images/common/m_icon_search.png) no-repeat center center}
    #header .search-wrap .search img{display:none}
    #header #logo a{max-width:200px}
}
@media only screen and (max-width:768px) {
    #header .header-top{padding:0 20px;height:70px}
    #header #logo{left:20px;height:30px}
    #header #logo a{max-width:none}
    #header #logo a img{width:auto}
    #header .search-wrap{height:70px}
    #header .search-wrap input[type="text"]{padding:0 60px;height:70px;font-size:18px}
    #header .search-wrap .back{left:0;width:60px;height:70px}
    #header .search-wrap .back img{height:20px}
    #header .search-wrap .search{right:0;width:60px;height:70px;background-size:auto 20px}
    /* #header .m-search-btn{right:90px;margin-top:-10px} */
    #header .m-search-btn img{height:20px}
    .header-login-wrap{right:55px}
    .language-select-box .language-select{min-width:20px}
    .language-select-box .language-select:after{width:20px}
    .language-select-box.on .language-select:after{width:20px}
    .language-select-box .language-list{top:calc(100% + 5px)}
    .language-select-box .language-list a{font-size:14px}
}
/* -------- gnb -------- */
#gnb{position:relative;width:100%;border-top:1px solid var(--color-border,#eee);border-bottom:1px solid var(--color-border2,#ddd);background:var(--color-white,#fff);text-align:center;transition:.3s}
.fixed #gnb{position:fixed;top:0;left:0}
#gnb .gnb-wrap{font-size:0}
@media only screen and (max-width:1024px) {
    .gnb-inner{overflow:hidden}
}
@media only screen and (min-width:1024px) {
    #gnb .swiper-wrapper{justify-content:center}
}
#gnb .depth01{position:relative;display:inline-block;width:163px;vertical-align:top}
#gnb .depth01 a{position:relative;display:flex;justify-content:center;align-items:center;padding:6px 0 7px;font-weight:400;font-size:18px;line-height:28px;height:58px;color:var(--color-dark-gray);transition:.3s}
#gnb .depth01 > a:after{content:'';position:absolute;bottom:0;left:0;width:100%;height:4px;background:var(--color-primary);transition:.3s;transform:scaleX(0)}
#gnb .depth01:hover > a:after{transform:scaleX(1)}
#gnb .depth02{overflow:hidden;position:absolute;top:100%;left:50%;z-index:90;transform:translateX(-50%);width:163px;height:0;background:var(--color-white,#fff);transition:.3s}
@media only screen and (min-width:1024px) {
    #gnb .depth01:hover .depth02{padding:18px 0;height:auto;border:1px solid var(--color-border2,#ddd)}
}
#gnb .depth02 a{font-weight:400;font-size:15px;line-height:21px;padding:4px 0;height:40px;color:var(--color-dark-gray);transition:.3s}
#gnb .depth02 a:hover{color:var(--color-primary)}
#gnb .gnb-bg{display:none}
/* -------- menu btn -------- */
#gnb .menu-btn{position:absolute;top:50%;left:50%;z-index:1;margin-top:-9px;margin-left:570px;width:20px;height:18px;cursor:pointer}
#gnb .menu-btn.on{z-index:20}
#gnb .menu-btn span{position:absolute;right:0;width:100%;height:3px;border-radius:3px;background:var(--color-dark-gray);transition:.3s}
#gnb .menu-btn span:nth-child(1){top:0}
#gnb .menu-btn span:nth-child(2){top:50%;margin-top:-1.5px}
#gnb .menu-btn span:nth-child(3){bottom:0}
#gnb .menu-btn.on span:nth-child(1){top:8px;transform:rotate(-45deg)}
#gnb .menu-btn.on span:nth-child(2){right:-100%;opacity:0}
#gnb .menu-btn.on span:nth-child(3){bottom:7px;transform:rotate(45deg)}
@media only screen and (max-width:1180px) {
    #gnb .menu-btn{top:auto;bottom:100%;left:auto;right:30px;margin-top:0;margin-bottom:31px}
}
@media only screen and (max-width:1024px) {
    #header{box-shadow:none}
    #gnb{position:static;border-color:var(--color-border2,#ddd)}
    .fixed #gnb .menu-btn{display:none}
    #gnb .menu-btn{bottom:86px;margin-bottom:0;width:29px;height:27px}
    #gnb .menu-btn.on{bottom:73px;width:41px;height:41px}
    #gnb .menu-btn span{transition:.3s}
    #gnb .menu-btn.on span:nth-of-type(1){top:19px;transform:rotate(-45deg)}
    #gnb .menu-btn.on span:nth-of-type(2){right:-100%;opacity:0}
    #gnb .menu-btn.on span:nth-of-type(3){bottom:19px;transform:rotate(45deg)}
}
@media only screen and (max-width:768px) {
    #header.fixed{position:fixed;top:0}
    #gnb{padding:0 6px}
    .fixed #gnb{position:relative}
    #gnb .depth01{margin:0 14px;width:auto}
    #gnb .depth01 a{font-size:16px;line-height:54px}
    .fixed #gnb .menu-btn{display:block;top:-44px}
    #gnb .menu-btn{right:20px;width:20px;height:18px}
    #gnb .menu-btn.on{bottom:78px;width:25px;height:25px}
    #gnb .menu-btn span{height:2px}
    #gnb .menu-btn.on span:nth-of-type(1){top:12px}
    #gnb .menu-btn span:nth-child(2){margin-top:-1px}
    #gnb .menu-btn.on span:nth-of-type(3){bottom:11px}
}
@media only screen and (min-width:1025px) {
    #m-gnb-wrap{display:none;position:absolute;top:100%;left:0;width:100%;background:var(--color-white,#fff);text-align:center}
    .fixed #m-gnb-wrap{position:fixed;top:60px}
    #m-gnb-wrap .m-header-utils,#m-gnb-wrap .m-user-menu,#m-gnb-wrap .login-utils{display:none}
    #m-gnb-wrap .m-gnb{font-size:0}
    #m-gnb-wrap .m-gnb .depth01{display:inline-block;width:163px;vertical-align:top}
    #m-gnb-wrap .m-gnb .depth01 > a{position:relative;font-size:0}
    #m-gnb-wrap .m-gnb .depth02{padding:17px 0}
    #m-gnb-wrap .m-gnb .depth02 a{display:block;font-weight:400;font-size:15px;line-height:40px;color:var(--color-dark-gray);transition:.3s}
}
@media only screen and (max-width:1024px) {
    /* mobile gnb */
    #m-gnb-wrap{display:none;position:fixed;top:0;right:0;z-index:10;width:100%;height:100vh;background:rgba(0,0,0,.8)}
    #m-gnb-wrap .m-gnb-inner{position:absolute;top:0;right:-100%;padding:85px 0 0;width:80%;max-width:500px;height:100%;background:var(--color-white,#fff)}
    #m-gnb-wrap .m-header-utils{position:absolute;top:30px;right:88px;font-size:0}
    #m-gnb-wrap .m-header-utils li{display:inline-block;margin-left:20px;vertical-align:top}
    #m-gnb-wrap .m-header-utils li a{position:relative;display:block;line-height:0}
    #m-gnb-wrap .m-header-utils .alarm .new{position:absolute;bottom:100%;left:100%;margin-bottom:-10px;margin-left:-6px;width:18px;height:18px;border-radius:50%;background:var(--color-red);font-weight:500;font-size:14px;line-height:18px;color:var(--color-white,#fff);text-align:center}
    #m-gnb-wrap .m-user-menu{margin-bottom:40px}
    #m-gnb-wrap .m-user-menu dt{padding:0 30px;font-weight:400;font-size:36px;line-height:69px;color:var(--color-black,#000)}
    #m-gnb-wrap .m-user-menu dt strong{font-weight:700}
    #m-gnb-wrap .m-user-menu dt a{display:block;font-weight:700;font-size:36px;line-height:69px;color:var(--color-black,#000)}
    #m-gnb-wrap .m-user-menu dd{padding:0 30px}
    #m-gnb-wrap .m-user-menu dd a{position:relative;display:block;padding-left:25px;font-weight:500;font-size:36px;line-height:69px;color:var(--color-black,#000)}
    #m-gnb-wrap .m-user-menu dd a:before{content:'';position:absolute;top:20px;left:0;width:10px;height:10px;border-radius:50%;background:var(--color-dark-gray)}
    #m-gnb-wrap .m-gnb{overflow-x:hidden;max-height:calc(100% - 363px);border-top:1px solid var(--color-border,#eee)}
    #m-gnb-wrap .m-gnb .depth01 > a{position:relative;display:block;padding:19px 30px 20px;border-bottom:1px solid var(--color-border,#eee);font-weight:500;font-size:28px;line-height:1.5em;color:var(--color-black,#000)}
    #m-gnb-wrap .m-gnb .depth01 > :is(a:before,a:after){content:'';position:absolute;top:50%;right:30px;margin-left:-6.5px;width:13px;height:1px;background:#32186d}
    #m-gnb-wrap .m-gnb .depth01 > a:after{transform:rotate(-90deg)}
    #m-gnb-wrap .m-gnb .depth01.on > a:after{display:none}
    #m-gnb-wrap .m-gnb .depth02{display:none;padding:22px 0;border-bottom:1px solid var(--color-border,#eee)}
    #m-gnb-wrap .m-gnb .depth02 li a{display:block;padding:0 30px;font-weight:400;font-size:24px;line-height:56px;color:var(--color-black,#000)}
    #m-gnb-wrap .login-utils{padding:55px 0 30px;font-size:0;text-align:center;display:flex;flex-wrap:wrap;justify-content:center;row-gap:7px}
    #m-gnb-wrap .login-utils li{position:relative;display:inline-block;margin:0 27px;vertical-align:top}
    #m-gnb-wrap .login-utils li:after{content:'';position:absolute;top:50%;right:-27px;margin-top:-10px;width:1px;height:20px;background:var(--color-light-gray,#ccc)}
    #m-gnb-wrap .login-utils li:last-child:after{display:none}
    #m-gnb-wrap .login-utils li a{display:block;font-weight:400;font-size:22px;color:var(--color-light-gray)}
}
@media only screen and (max-width:768px) {
    #m-gnb-wrap .m-gnb-inner{padding-top:50px}
    #m-gnb-wrap .m-header-utils{top:29px;right:60px}
    #m-gnb-wrap .m-header-utils li{margin-left:12px}
    #m-gnb-wrap .m-header-utils li a img{height:21px}
    #m-gnb-wrap .m-header-utils .alarm .new{margin-bottom:-7px;margin-left:-4px;width:13px;height:13px;font-size:9px;line-height:13px}
    #m-gnb-wrap .m-user-menu{margin-bottom:25px}
    #m-gnb-wrap .m-user-menu dt{padding:0 20px;font-size:22px;line-height:50px}
    #m-gnb-wrap .m-user-menu dt a{font-size:22px;line-height:50px}
    #m-gnb-wrap .m-user-menu dd{padding:0 20px}
    #m-gnb-wrap .m-user-menu dd a{padding-left:15px;font-size:22px;line-height:43px}
    #m-gnb-wrap .m-user-menu dd a:before{top:12px;width:7px;height:7px}
    #m-gnb-wrap .m-gnb{max-height:calc(100% - 235px)}
    #m-gnb-wrap .m-gnb .depth01 > a{padding:11px 20px 12px;font-size:17px}
    #m-gnb-wrap .m-gnb .depth01 > :is(a:before,a:after){right:20px;width:9px}
    #m-gnb-wrap .m-gnb .depth02{padding:14px 0}
    #m-gnb-wrap .m-gnb .depth02 li a{padding:0 20px;font-size:15px;line-height:35px}
    #m-gnb-wrap .login-utils{padding:35px 0 20px}
    #m-gnb-wrap .login-utils li{margin:0 16px}
    #m-gnb-wrap .login-utils li a{font-size:14px}
    #m-gnb-wrap .login-utils li:after{right:-16px;margin-top:-6.5px;height:13px}
}
/* 하단 */
#footer{position:relative;width:100%;background:var(--color-white,#fff)}
/* -------- utils -------- */
#footer .footer-utils{border:1px solid var(--color-border2,#ddd);border-width:1px 0}
#footer .footer-utils .swiper-wrapper{margin:0 auto;width:1180px;font-size:0}
#footer .footer-utils .swiper-slide{display:inline-block;margin-right:40px;width:auto;vertical-align:top}
#footer .footer-utils .swiper-slide a{display:block;font-weight:500;font-size:16px;line-height:67px;color:var(--color-dark-gray)}
@media only screen and (max-width:1180px) {
    #footer .footer-utils .swiper-wrapper{padding:0 30px;width:100%}
}
@media only screen and (max-width:768px) {
    #footer .footer-utils .swiper-wrapper{padding:0 20px}
    #footer .footer-utils .swiper-slide{margin-right:30px}
    #footer .footer-utils .swiper-slide a{font-size:15px;line-height:60px}
}
@media only screen and (max-width:640px) {
    #footer .footer-utils .swiper-slide{margin-right:20px}
    #footer .footer-utils .swiper-slide a{font-size:14px;line-height:50px}
}
/* -------- address -------- */
#footer .footer-address{margin:0 auto;padding:40px 0 35px;width:1180px;font-size:0}
#footer .footer-address .foot-logo{display:inline-block;width:300px;vertical-align:top;padding-right:60px}
#footer .footer-address .foot-logo img{max-width:200px}
#footer .footer-address address{display:inline-block;width:calc(100% - 300px);font-style:normal;vertical-align:top}
#footer .footer-address address span{display:inline-block;margin:0 35px 5px 0;font-weight:300;font-size:16px;color:var(--color-dark-gray);word-break:keep-all;vertical-align:top}
#footer .footer-address address .copy{display:block;margin-top:25px;margin-right:0;margin-bottom:0}
@media only screen and (max-width:1180px) {
    #footer .footer-address{padding:40px 30px 35px;width:100%}
}
@media only screen and (max-width:1024px) {
    #footer .footer-address .foot-logo{display:none}
#footer .footer-address address{width:100%}
}
@media only screen and (max-width:768px) {
    #footer .footer-address{padding:30px 20px;width:100%}
}
@media only screen and (max-width:640px) {
    #footer .footer-address address span{margin-right:20px;font-size:14px}
    #footer .footer-address address span:nth-of-type(2) ~ span{display:block}
    #footer .footer-address address .copy{margin-top:20px}
}
/* -------- btn top -------- */
#footer .btn-top{position:fixed;bottom:30px;right:30px;z-index:110;margin-bottom:0;margin-left:530px;width:60px;height:60px;border-radius:50%;background:var(--color-white,#fff);box-shadow:0 0 20px rgba(0,0,0,.20);line-height:0}
#footer .btn-top img{display:block;margin:0 auto}
#footer .btn-top .top-arrow{margin:16px auto 8px}
@media only screen and (max-width:1180px) {
    #footer .btn-top{left:auto;right:30px;margin-left:0}
}
@media only screen and (max-width:768px) {
    #footer .btn-top{right:20px;bottom:20px}
}
@media only screen and (max-width:640px) {
    #footer .btn-top{width:56px;height:56px}
    #footer .btn-top .top-arrow{/*margin:13px auto 6px;*/height:10px}
    #footer .btn-top .top-txt{height:7px}
}
/* form css */
/* checkbox */
.checkbox-wrap input{display:none}
.checkbox-wrap label{display:inline-block;font-size:16px;line-height:24px;color:var(--color-dark-gray);vertical-align:top;cursor:pointer}
.checkbox-wrap label:before{content:'';display:inline-block;margin-right:10px;width:24px;height:24px;border:1px solid var(--color-light-gray,#ccc);box-sizing:border-box;border-radius:50%;background:var(--color-white,#fff);vertical-align:top}
.checkbox-wrap input:checked + label:before{border-color:var(--color-primary);background:var(--color-primary) url(../images/common/checkmark.png) no-repeat center center}
.checkbox-wrap.gray input:checked + label:before{border-color:var(--color-dark-gray);background:var(--color-dark-gray) url(../images/common/checkmark.png) no-repeat center center}
.checkbox-wrap.square label:before{border-radius:4px}
@media only screen and (max-width:767px) {
    .checkbox-wrap label{font-size:14px;line-height:18px}
    .checkbox-wrap label:before{margin-right:5px;width:18px;height:18px}
    .checkbox-wrap input:checked + label:before,.checkbox-wrap.gray input:checked + label:before{background-size:auto 6px}
}
/* checkbox btn */
.checkbox-btn input{display:none}
.checkbox-btn label{display:inline-block;margin-right:10px;width:100px;border-radius:4px;border:1px solid var(--color-light-gray,#ccc);background:var(--color-white,#fff);font-size:18px;line-height:38px;color:var(--color-dark-gray);text-align:center;cursor:pointer}
.checkbox-btn input:checked + label{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-white,#fff)}
@media only screen and (max-width:767px) {
    .checkbox-btn label{font-size:14px;line-height:30px}
}
/* radio */
.radio-wrap input{display:none}
.radio-wrap label{display:inline-block;font-size:16px;line-height:24px;color:var(--color-dark-gray);vertical-align:top;cursor:pointer}
.radio-wrap label:before{content:'';display:inline-block;margin-right:10px;width:24px;height:24px;border:1px solid var(--color-light-gray,#ccc);box-sizing:border-box;border-radius:50%;background:var(--color-white,#fff);vertical-align:top}
.radio-wrap input:checked + label:before{border-width:8px;border-color:var(--color-primary)}
@media only screen and (max-width:767px) {
    .radio-wrap label{font-size:14px;line-height:18px}
    .radio-wrap label:before{margin-right:5px;width:18px;height:18px}
    .radio-wrap input:checked + label:before{border-width:5px}
}
/* date */
.select-date{font-size:0}
.select-date > *{display:inline-block;vertical-align:top}
.select-date .date{padding:0 10px;height:40px;border-radius:4px;border:1px solid var(--color-light-gray,#ccc);font-size:18px;line-height:38px;color:var(--color-dark-gray)}
.select-date .date + span{width:30px;font-size:18px;line-height:40px;color:var(--color-dark-gray);text-align:Center}
@media only screen and (max-width:767px) {
    .select-date .date{padding:0 10px;height:30px;background-size:auto 14px;font-size:15px;line-height:30px}
    .select-date .date + span{font-size:15px;line-height:30px}
}
/* file select */
.select-file{font-size:0}
.select-file input[type="file"]{display:none}
.select-file label{display:inline-block;margin-right:11px;padding:0 13px;border-radius:12px;background:var(--color-primary);font-size:12px;line-height:24px;color:var(--color-white,#fff);vertical-align:top}
.select-file span{display:inline-block;font-size:16px;line-height:24px;color:var(--color-dark-gray);vertical-align:top}
.attach-list{font-size:0}
.attach-list li{margin-bottom:7px;font-size:16px;line-height:24px;color:var(--color-dark-gray)}
.attach-list li:last-child{margin-bottom:0}
.attach-list li strong{display:inline-block;margin-right:11px;padding:0 13px;border-radius:12px;background:#ccc;font-weight:400;font-size:12px;line-height:24px;color:var(--color-white,#fff);vertical-align:top}
/* 하단 */
#sitemap{position:relative;width:100%;background:var(--color-white,#fff)}
/* -------- utils -------- */
    #sitemap .footer-utils{border:1px solid var(--color-border2,#ddd);border-width:1px 0;overflow:hidden}
    #sitemap .footer-utils .swiper-wrapper{margin:0 auto;width:1180px;font-size:0}
    #sitemap .footer-utils .swiper-slide{display:inline-block;margin-right:40px;width:auto;vertical-align:top}
    #sitemap .footer-utils .swiper-slide a{display:block;font-weight:500;font-size:16px;line-height:67px;color:var(--color-dark-gray)}
@media only screen and (max-width:1180px) {
    #sitemap .footer-utils .swiper-wrapper{padding:0 30px;width:100%}
}
@media only screen and (max-width:768px) {
    #sitemap .footer-utils .swiper-wrapper{padding:0 20px}
    #sitemap .footer-utils .swiper-slide{margin-right:30px}
    #sitemap .footer-utils .swiper-slide a{font-size:15px;line-height:60px}
}
@media only screen and (max-width:640px) {
    #sitemap .footer-utils .swiper-slide{margin-right:20px}
    #sitemap .footer-utils .swiper-slide a{font-size:14px;line-height:50px}
}
.band-banner{overflow:hidden}

.text-primary {color:var(--color-primary)}

/* popup */
.popup-wrap{display:none}
.popup-wrap{position:fixed;top:0;left:0;bottom:0;right:0;z-index:110;width:100%;height:100%;background:rgba(0,0,0,.8)}
.popup-wrap .popup-inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:40px;max-width:560px;width:calc(100% - 60px);max-height:800px;height:calc(100% - 60px);border-radius:10px;background:var(--color-white,#fff)}
.popup-wrap .popup-tit{font-weight:500;font-size:24px;color:var(--color-dark-gray,#333)}
.popup-wrap .popup-btn{display:flex; margin-top:58px; width:100%}
/* .popup-wrap .popup-btn{display:flex} */
.popup-wrap .popup-btn a{display:block}
.popup-wrap .popup-btn button{width:100%}
.popup-wrap .popup-btn button + button{margin-left:10px}
.popup-wrap .popup-contents-wrap{margin-top:30px;height:calc(100% - 178px)}
.popup-wrap .popup-scroll{overflow-x:hidden}
:where(.popup-box,.popup-wrap) .close{position:absolute;top:37px;right:37px;width:42px;height:42px;font-size:0}
:where(.popup-box,.popup-wrap) .close:before,:where(.popup-box,.popup-wrap) .close:after{content:'';position:absolute;top:50%;left:0;z-index:1;width:100%;height:2px;border-radius:5px;background:var(--color-gray,#aaa)}
:where(.popup-box,.popup-wrap) .close:before{transform:rotate(45deg)}
:where(.popup-box,.popup-wrap) .close:after{transform:rotate(-45deg)}
.popup-wrap .popup-sub-tit {font-weight:400; font-size:23px; line-height:36px; color:#333; word-break:keep-all;}
@media only screen and (max-width:767px) {
.popup-wrap .popup-tit{font-size:18px}
.popup-wrap .popup-inner{padding:25px;max-height:calc(100vh - 100px);height:auto}
.popup-wrap .popup-contents-wrap{margin-bottom:10px;height:calc(100vh - 282px)}
.popup-wrap .close{top:17px;right:17px;width:32px;height:32px}
:where(.popup-box,.popup-wrap) .close{top:17px;right:17px;width:32px;height:32px}
.popup-wrap .popup-btn{margin-top:30px}
.popup-wrap .popup-sub-tit {font-size:17px; line-height:25px;}
}

.main-class-box{display:inline-block;vertical-align:top;width:33.33%;width:calc((100% - 40px) / 3)}
.main-class-box .thumb{overflow:hidden;border-radius:6px;height:auto;aspect-ratio:1.9/1.07}
.main-class-box .thumb a{display:block}
.main-class-box .thumb img{width:100%;transition:transform .5s}
.main-class-box .class-info{position:relative; padding:22px 10px 0}
.main-class-box .class-name{font-size:14px;line-height:26px;color:var(--color-dark-gray,#333)}
.main-class-box .class-name strong{display:inline-block;margin-right:6px;padding:0 10px;border-radius:4px;background:var(--color-primary,#0148d4);font-weight:400;color:var(--color-white,#fff)}
.main-class-box .name{margin-top:15px;margin-bottom:7px;font-size:15px;color:var(--color-black,#000)}
.main-class-box .class-subject{overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-overflow:ellipsis;width:100%;height:40px;font-size:16px;line-height:20px;color:var(--color-dark-gray,#333);word-break:keep-all;font-weight:700}
.main-class-box .price{display:block;margin-top:20px;font-size:16px;color:#111;}
.main-class-box .price .discount{margin-right:5px;color:var(--color-red,#dc3545)}
.main-class-box .price strong{font-weight:400;font-size:24px; word-break:keep-all;}
.main-class-box .price del{text-decoration:line-through;color:var(--color-light-gray,#ccc)}
.main-class-box .price .installment {font-size:13px; font-weight:400;}
.main-class-box .lecture-label{position:absolute;top:-15px;left:10px;z-index:1;display:flex}
.main-class-box .lecture-label li{display:inline-block;margin-right:4px;padding:0 13px;border-radius:4px;background:var(--color-sky-blue,#0098e0);font-weight:700;font-size:14px;line-height:30px;color:var(--color-white,#fff);vertical-align:top}
.main-class-box .lecture-label li:first-child{background:var(--color-primary,#0148d4)}
@media only screen and (max-width:1024px) {
    .main-class-box{padding-right:20px}
}
@media only screen and (max-width:640px) {
    .main-class-box{margin-bottom:40px;padding-right:15px}
    .main-class-box .class-info{padding:18px 7px 0}
    .main-class-box .class-name{font-size:13px;line-height:22px}
    .main-class-box .class-name strong{margin-right:4px;padding:0 7px}
    .main-class-box .name{margin-top:12px;margin-bottom:5px;font-size:13px}
    .main-class-box .class-subject{height:34px;font-size:14px;line-height:17px}
    .main-class-box .price{margin-top:12px;font-size:14px}
    .main-class-box .price strong{font-size:20px}
    .main-class-box .lecture-label{top:-13px; left:7px}
    .main-class-box .lecture-label li{padding:0 10px;font-size:12px;line-height:26px}
}