@charset "utf-8";

#sh_hd_wrapper{display:flex;justify-content:center}
#shGnb{display:flex;align-items:center;justify-content:space-between;position:relative;max-width:var(--mainsize);width:100%;height:var(--hd-height);background:#fff}
.sh_lnb_bg{display:none;position:absolute;top:calc(var(--hd-height) + 1px);left:0;width:100%;height:160px;background-color:#fff;box-shadow:1px 1px 18px rgba(17, 17, 17, 0.05)}

/*로고 */
#shGnb .sh_logo{position:relative;z-index:20}
#shGnb .sh_logo img{width:122px}

/* 대분류 */
#shGnb .sh_nav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;width:max-content}
#shGnb .sh_nav > li{position:relative;padding:0 45px;line-height:var(--hd-height)}
#shGnb .sh_nav > li > a{display:block;font-size:16px;font-weight:500;color:#111;transition:all .2s;font-family:var(--e-font)}
#shGnb.on .sh_nav > li > a{color:#222}
#shGnb.sub .sh_nav > li > a{color:#222}

/* 소분류 */
#shGnb .sh_lnb_s{display:none;position:absolute;left:50%;transform:translateX(-50%);min-width:100%;width:max-content;min-height:145px;padding-top:20px}
#shGnb .sh_lnb_s li a{display:block;line-height:1.8;text-align:center;color:#999;transition:all .2s}
#shGnb .sh_lnb_s li a:hover{color:var(--primary)}

/* 메뉴 */
.menu_pane{position:fixed;z-index:99;width:calc(100vw - 228px)}
.menu_pane:after{content:"";position:fixed;top:0;right:0;z-index:-1;width:70%;height:100vh;background:#fff;transition-delay:0s;transition:transform cubic-bezier(0.77, 0.77, 0.175, 1) 0.8s;transform:translateX(0) translateY(-100%)}
.menu_pane:before{position:fixed;top:0;left:0;width:30%;height:100vh;z-index:-1;content:'';background:url(./open_nav_img.jpg) #0c0c0c no-repeat center;background-color:#0c0c0c;background-size:cover;transition:transform cubic-bezier(0.77, 0, 0.175, 1) 0.8s;transform:translateX(-100%) translateY(0%)}
.menu_pane_content{display:none;position:fixed;top:0;right:0;width:70%;height:100vh;font-size:70px}
.menu_pane_list{position:absolute;right:0;top:0;width:100%;margin-top:100px;padding:0 25% 0 15%;font-family:var(--k-font)}
.menu_pane_wrap.nav-active .menu_pane{visibility:visible}
.menu_pane_wrap.nav-active .menu_pane:after,.menu_pane_wrap.nav-active .menu_pane:before{-webkit-transform:translateX(0%) translateY(0%);transform:translateX(0%) translateY(0%);transition-delay:.1s}
.menuall{display:flex;align-items:center;gap:20px;font-weight:600;font-family:var(--e-font)}

/* 메뉴 열림 */
.menu_pane_content > ul > li{opacity:0;padding:40px 0;border-bottom:1px solid rgba(0,0,0,.25)}
.menu_pane_content > ul > li+li{margin-top:40px}
.menu_pane_content > ul > li > a{display:block;width:max-content;margin-bottom:20px;font-size:32px;font-weight:600;font-family:var(--k-font);color:#111}
.menu_pane_content > ul > li:nth-child(1){animation-delay:.4s}
.menu_pane_content > ul > li:nth-child(2){animation-delay:.5s}
.menu_pane_content > ul > li:nth-child(3){animation-delay:.6s}
.menu_pane_content > ul > li:nth-child(4){animation-delay:.7s}
.menu_pane_content > ul > li:nth-child(5){animation-delay:.8s}
.menu_pane_content > ul > li ul{display:flex;flex-wrap:wrap}
.menu_pane_content > ul > li ul li{line-height:15px}
.menu_pane_content > ul > li ul li+li{margin-left:25px}
.menu_pane_content > ul > li ul a{opacity:0.6;font-size:18px;font-weight:500;color:#111;transition:all .2s}

/* 메뉴버튼 */
#pfBtn{all:unset;position:relative;top:0;z-index:101;display:flex;flex-direction:column;justify-content:center;gap:9px;width:18px;aspect-ratio:1;cursor:pointer;transition:all .2s}
#pfBtn span{display:block;position:relative;width:4px;height:4px;border-radius:20px;background-color:#111;transition:all .2s}
#pfBtn span.s1::after{content:"";position:absolute;left:11px;width:4px;aspect-ratio:1;border-radius:20px;background-color:#111}
#pfBtn span.s2::after{content:"";position:absolute;left:11px;width:4px;aspect-ratio:1;border-radius:20px;background-color:#111}

#pfBtn.active span{width:20px;height:3px;border-radius:0}
#pfBtn.active span.s1{left:50%;top:50%;transform:translate(-50%, -50%) rotate(-45deg)}
#pfBtn.active span.s2{left:-1px;top:-5px;transform:rotate(45deg)}
#pfBtn.active span::after{display:none}

/* 상단 버튼 및 오픈메뉴 */
#topmenuM{position:relative;z-index:99;display:none;width:100%;line-height:1.8;padding:15px;transition:box-shadow 0.3s}
#topmenuM::before{z-index:-1;position:absolute;inset:0%;width:100%;height:100%;content:'';background-color:transparent;transition:all 0.3s}
#topmenuM #m_logo img{width:122px}
#m_navBtn{position:absolute;top:50%;right:15px;z-index:30;width:30px;height:30px;transform:translateY(-50%);cursor:pointer}
#m_navBtn span{display:block;position:relative;top:50%;width:100%;height:2px;transform:translateY(-50%)}
#m_navBtn span::before{display:block;position:absolute;top:-6px;width:100%;height:100%;background-color:var(--primary);content:"";transition:background-color 0.3s}
#m_navBtn span::after{display:block;position:absolute;top:6px;right:0%;width:45%;height:100%;background-color:var(--primary);content:"";transition:background-color 0.3s}
#m_navBtn.on{position:fixed;top:27px}
#m_navBtn.on span:before{top:0;right:-4px;transform:rotate(45deg);background-color:#000}
#m_navBtn.on span:after{top:0;right:-4px;width:100%;transform:rotate(-45deg);background-color:#222}
#navWrap{display:none;position:fixed;left:0;top:0;z-index:15;width:100%;height:100%;background-color:rgba(0,0,0,.7)}
#navWrap .inner{overflow-y:scroll;opacity:0;position:fixed;right:-40px;top:0;z-index:999;min-width:300px;width:75%;height:100%;padding:60px 0;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#navWrap.on{display:block}
#navWrap.on .inner{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#navWrap .inner:before, #navWrap .inner:after{opacity:0;display:block;position:fixed;top:0;right:-40px;z-index:1;content:"";min-width:300px;width:70%;height:60px;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#navWrap .inner:after{top:auto;bottom:0}
#navWrap.on .inner:before, #navWrap.on .inner:after{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#navWrap .inner .mo_hd_copy{position:fixed;right:0;bottom:15px;z-index:2;min-width:300px;width:70%;font-size:12px;text-align:center;color:#888}
#navWrap .user_tip{padding:10px 20px;background-color:#f5f5f5}
#navWrap .user_tip li{display:inline-block}
#navWrap .user_tip li+li{margin-left:10px}
/* 대분류 */
#topmenuM .m_lnb .m_bmenu{display:block;position:relative;width:100%;height:52px;padding:0 20px;border:none;border-bottom:1px solid #ddd;background:none;font-size:16px;line-height:52px;color:#222;text-align:left;font-family:var(--main-font)}
#topmenuM .m_lnb .m_bmenu:after{float:right;content:"\f107";font-family:'fontawesome'}
#topmenuM .m_lnb .m_bmenu.on:after{content:"\f106"}
/* 소분류 */
#topmenuM .m_smenu{display:none;padding:15px 20px;border-bottom:1px solid #ddd;background-color:#f2f3f5}
#topmenuM .m_smenu li a{font-size:14px;color:#777}

/* fixed */
#topmenuM.fixed{box-shadow:0 0 12px rgba(0, 0, 0, 0.05)}
#topmenuM.fixed::before{background-color:rgba(255,255,255,0.8);backdrop-filter:blur(10px)}
#topmenuM.fixed #m_navBtn span::before, #topmenuM.fixed #m_navBtn span::after{background-color:var(--primary)}

/* 반응형[s] */
@media (max-width:1500px){
#shGnb .sh_nav > li > a{font-size:15px}
}
@media(max-width:1400px){
#shGnb{padding:0 20px}
#shGnb .sh_nav > li{padding:0 38px}
}
@media(max-width:1200px){
#shGnb .sh_nav > li{padding:0 30px}
.menu_pane_list{padding:0 100px}
.menu_pane_content > ul > li > a{margin-bottom:10px;font-size:28px}
.menu_pane_content > ul > li ul a{font-size:16px}
}
@media (max-width:1024px){
/* 반응형 필수[s] */
#topmenuM{display:block}
#shGnb{display:none}
/* 반응형 필수[e] */
}
/* 반응형[e] */