@charset "utf-8";

#shGnb{position:relative;height:75px;margin:0 auto;z-index:99;transition:height 0.2s}
#shGnb .inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    max-width: 1920px;
    padding: 10px 20px;
    margin: 0 auto;
    height: 100%;
}
/* 로고 */
#shGnb .sh_logo img{display:inline-block;width: 100%;transition:width 0.2s}
#shGnb .sh_logo a{
    display: block;
    width: 180px;
}

/* GNB */
#shGnb .sh_nav > ul{display:flex;align-items:center}
#shGnb .sh_nav > ul > li{position:relative}
#shGnb .sh_nav > ul > li > a{padding:0 23px;font-size:19px;line-height:100px;white-space:nowrap;font-weight:700;color:#fff;transition:color 0.2s, font-size 0.2s}
#shGnb .sh_nav > ul > li:hover > a{color:var(--primary)}
#shGnb .btn--primary{width:145px;height:46px;transition:width 0.3s, height 0.3s, font-size 0.2s,background-color 0.2s, color 0.2s}

/* header fixed */
#sh_hd.fixed #shGnb{
    height:var(--hd-fixed-h);
    background: #fff;
    border-bottom: 1px solid #eee;
}
#sh_hd.fixed #shGnb .sh_logo img{width:155px}
#sh_hd.fixed #shGnb .sh_nav > ul > li > a{line-height:var(--hd-fixed-h);font-size:17px}
#sh_hd.fixed #shGnb .btn--primary{width:120px;height:36px;font-size:15px}

/* header dark */
#sh_hd.dark #shGnb .sh_nav > ul > li > a{color:#111}
#sh_hd.dark #shGnb .sh_nav > ul > li:hover > a{color:var(--primary)}

/* 반응형 메뉴 [s] */
#topmenuM{display:none;position:relative;width:100%;padding:10px 15px;line-height:1.8;font-family:'notokr-regular'}

/* 로고 */
#sh_hd #m_logo{position:relative}
#sh_hd #m_logo img{width:160px;max-height:60px}
#sh_hd.dark #m_navBtn span:before, #sh_hd.dark #m_navBtn span:after{background-color:#111}

/* 상단 버튼 및 오픈메뉴 */
#sh_hd #m_navBtn{position:absolute;top:50%;right:15px;transform:translateY(-50%);z-index:5;width:30px;height:30px;cursor:pointer}
#sh_hd #m_navBtn span{display:block;position:relative;top:50%;transform:translateY(-50%);width:100%;height:2px}
#sh_hd #m_navBtn span:before, #sh_hd #m_navBtn span:after{display:block;content:"";position:absolute;top:-6px;width:30px;height:2px;background-color:#fff;-webkit-transition:all .1s;transition:all .2s}
#sh_hd #m_navBtn span:after{top:6px;width:16px;right:0;background-color:#fff}
#sh_hd #m_navBtn.on{position:fixed;top:18px;transform:none}
#sh_hd #m_navBtn.on span:before{top:0;right:-4px;background-color:#111 !important;transform:rotate(45deg)}
#sh_hd #m_navBtn.on span:after{top:0;right:-4px;width:30px;transform:rotate(-45deg);background-color:#111 !important}
#sh_hd #navWrap{display:none;position:fixed;left:0;top:0;z-index:4;width:100%;height:100vh;background-color:rgba(0,0,0,.7)}
#sh_hd #navWrap .inner{overflow-y:scroll;opacity:0;position:fixed;right:-40px;top:0;z-index:6;min-width:300px;width:75%;height:100vh;padding:60px 0;background-color:#fff;-webkit-transition:all .1s;transition:all .1s}
#sh_hd #navWrap.on .inner{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#sh_hd #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}
#sh_hd #navWrap .inner:after{top:auto;bottom:0}
#sh_hd #navWrap.on .inner:before, #navWrap.on .inner:after{opacity:1;right:0;-webkit-transition:all .4s;transition:all .4s}
#sh_hd #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}
#sh_hd #navWrap .user_tip{padding:10px 20px;background-color:#f5f5f5}
#sh_hd #navWrap .user_tip li{display:inline-block}
#sh_hd #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:'notokr-medium'}

/* 소분류 */
#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}

/* 언어 변경 [s] */
.right_btn{display:flex;align-items:center;gap:12px}
#changeLang{position:relative;cursor:pointer}
#changeLang .select-lang{
    display:flex;align-items:center;gap:5px;
    padding:6px 12px;
    font-size:13px;font-weight:700;letter-spacing:0.05em;
    color:#fff;
    border:1.5px solid rgba(255,255,255,0.45);
    border-radius:4px;
    transition:color 0.2s, border-color 0.2s;
    user-select:none;
}
#changeLang .select-lang::after{
    content:'';display:inline-block;
    width:0;height:0;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
    border-top:5px solid #fff;
    transition:transform 0.25s, border-top-color 0.2s;
    margin-left:2px;
}
#changeLang.on .select-lang::after{transform:rotate(180deg)}
#changeLang .select-optional{
    display:none;opacity:0;
    position:absolute;top:calc(100% + 10px);left:50%;transform:translateX(-50%);
    background:#fff;
    border-radius:6px;
    box-shadow:0 6px 24px rgba(0,0,0,0.13);
    overflow:hidden;
    min-width:88px;
    transition:opacity 0.2s;
}
#changeLang.on .select-optional{display:block;opacity:1}
#changeLang .select-optional::before{
    content:'';position:absolute;top:-6px;left:50%;transform:translateX(-50%);
    width:0;height:0;
    border-left:6px solid transparent;
    border-right:6px solid transparent;
    border-bottom:6px solid #fff;
}
#changeLang .select-optional ul{list-style:none;padding:0;margin:0}
#changeLang .select-optional ul li a{
    display:block;padding:9px 18px;
    font-size:13px;font-weight:700;letter-spacing:0.05em;
    color:#333;text-align:center;
    transition:background-color 0.18s, color 0.18s;
}
#changeLang .select-optional ul li a:hover{background-color:var(--primary);color:#fff}

/* dark/fixed 상태 언어 버튼 색상 */
#sh_hd.dark #changeLang .select-lang,
#sh_hd.fixed #changeLang .select-lang{color:#111;border-color:rgba(0,0,0,0.25)}
#sh_hd.dark #changeLang .select-lang::after,
#sh_hd.fixed #changeLang .select-lang::after{border-top-color:#111}
/* 언어 변경 [e] */
/* 모바일 언어 변경 [s] */
#changeLangM{
    display:flex;align-items:center;justify-content:center;gap:0;
    margin:16px 20px 0;
    border:1px solid #e0e0e0;
    border-radius:6px;
    overflow:hidden;
}
#changeLangM a{
    flex:1;
    padding:11px 0;
    font-size:13px;font-weight:700;letter-spacing:0.05em;
    color:#555;text-align:center;
    border-right:1px solid #e0e0e0;
    transition:background-color 0.18s, color 0.18s;
}
#changeLangM a:last-child{border-right:none}
#changeLangM a:hover,
#changeLangM a.active{background-color:var(--primary);color:#fff}
/* 모바일 언어 변경 [e] */
/* 반응형 [s] */
@media (max-width:1500px){
#shGnb{height:85px;padding:0 20px}
#shGnb .sh_nav > ul > li > a{font-size:17px;line-height:85px}
#shGnb .btn--primary{width:135px;height:40px;font-size:16px}
#shGnb .sh_nav > ul > li > a{
    padding: 0 18px;
}
}
@media (max-width:1024px){
#topmenuM{display:block}
#shGnb{display:none}
}
@media (max-width:480px){
#sh_hd.sub #m_navBtn span:before, #sh_hd.sub #m_navBtn span:after{background-color:#000}
#sh_hd.sub #m_navBtn span:after{background:color #000}
}
/* 반응형 [e] */