#header{max-width:1920px; position: fixed; z-index: 9999; width: 95%; top: 10px; left: 50%; transform: translate(-50%); background-color: #fffef2; border-radius: 10px; box-shadow: 0 4px 10px rgba(0,0,0,0.1);}
#header .header_inner .h_con {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 3rem;
}
#header .header_inner .container .login li:nth-child(1){padding-right: 30px;}
#header .header_inner #menu_pc{width: 65%; padding-left: 10rem;}
#header .header_inner #menu_pc .nav-menu .login{display: none;}
#header .header_inner #menu_pc .nav-menu .menu{width: calc(100%/5); padding: 1.7rem 0;}
#header .header_inner #menu_pc .nav-menu .depth02{display: none;}
.Pnav_warp {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease;
  position: absolute;
  top: 77px; /* 헤더 아래에 맞게 조정 */
  left: 0;
  width: 100%;
  background-color: #fffef2;
  z-index: 999;
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  border-radius: 10px;
  padding: 0 3rem;
 
}
.Pnav_warp.active {
  max-height: 500px; /* 충분히 큰 높이 설정 (콘텐츠 높이 이상) */
  border-top: 1px solid #dad9cd;
}
.Pnav_warp .Pnav_con>.flex-between{background-color: #fffef2; }
.Pnav_warp .Pnav_con .menu_contentW{padding-left: 10rem;}
.menu_content {
  display: none;
  width: calc(100%/5);
}
.menu_content.active {
  display: block;
}
.menu_content ul li{font-weight: 500;padding: .5rem 0;}
.menu_content ul li a{position: relative; position: relative; z-index: 1;}
.menu_content ul li a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 40%;
    background-color: #ecebdf;
    z-index: -1;
    transition: all 0.3s;
  }
.menu_content ul li a:hover:after{width: 100%;}

.h_con .login{padding-left: 3%;}
.h_con .login li a{line-height: .8;}
.h_con .login li:nth-child(1) a{padding-right: 1rem;}
.h_con .login li:nth-child(2) a{padding-left: 1rem; position: relative;}
.h_con .login li:nth-child(2) a:after{display: block; content: ''; width: 1px; height: 15px; background-color: #333; position: absolute; top: 50%; left: 0; transform: translateY(-50%);}

#footer{background:url(/img/main/footer_bg.jpg) no-repeat center / cover; color: #fff;}
#footer a{color: #fff;}
#footer .fline{width: 100%; height: 1px; background-color: rgba(255,255,255,.2);}

.quick { position: fixed; right: 3.8%; bottom: 100px; z-index: 9998; }
.quick_menu{display: none;}
.quick_menu li { position: relative; margin-bottom: 10px; }
.quick_menu li a span {box-shadow: 5px 5px 5px rgba(200,200,200,.5); opacity:0;position: absolute; top: 50%; right: 70px; white-space: pre; padding: 5px 10px;  background-color: #fff; z-index: -1; border-radius:2px; transform: translateY(-50%); transition: all 0.6s; }
.quick_menu li a span:after{border-bottom: 5px solid transparent;
  border-top: 5px solid transparent;
  border-left: 5px solid #fff;
  border-right: 5px solid transparent; display: block; content:''; position: absolute; top: 50%; right: -10px; transform: translateY(-50%);}
.quick_menu li a:hover span{opacity: 1;}
.quick_menu li.on a span { display: block; }
.top{margin-top: 10px; border-radius: 100%; display: block; }
.top img{filter: drop-shadow(5px 5px 5px rgba(200,200,200,.5)); }
.quick_btn { width: 50px; height: 50px; display: block; border-radius: 50%; background: url(/img/main/pc_minus.png) no-repeat center #333; cursor: pointer; margin: auto; }
.quick_btn.on { background: url(/img/main/pc_plus.png) no-repeat center #333}
@media(max-width: 1800px){
  .h_con .login{padding-left: 2%;}
}
@media(max-width: 1580px){
  .Pnav_warp.active{top: 67px;}
}
@media(max-width: 1400px){
  #header .header_inner #menu_pc, .Pnav_warp .Pnav_con .menu_contentW{padding-left: 8rem;}
  .h_con .login{padding-left: 1%;}
}
@media(max-width: 1240px){
  #header .header_inner #menu_pc, .Pnav_warp .Pnav_con .menu_contentW{padding-left: 2rem;width: 68%;}
   .Pnav_warp.active{top: 62px}
   .h_con .logo, .Pnav_warp .Pnav_con .width20{width: 15%;}
}

@media(max-width: 990px){
  #header{top: 0; border-radius: 0; width: 100%;}
  .Pnav_warp{display: none;}
  #header .menu_img{padding: 0 5%; margin-bottom: 30px;}
    .header_bgm {position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; background-color: rgba(0, 0, 0, 0.8); opacity: 0; visibility: hidden; z-index: 9000; transition: opacity 0.3s ease;}
    #header{border-bottom: 0;}
    #sitemap{display: none!important;}
    #header .container{width: 90%;padding: 0;}
    html.open-menu {overflow: hidden;}
    .dropdown-menu{height:auto;width:100%!important}
    .nav_btn.sticky.open span {background-color: #333;}
    #header.mOpen{width: 80% !important; margin-left: 20% !important;}
    #header .nav-menu{padding:0;width: 80%;height:100%;overflow: scroll;position: fixed;right: 0;top: -100%;bottom: 0;background-color: #fffef2;z-index: 1;letter-spacing: 0px;transition-timing-function: ease-in-out;
        -ms-transition-timing-function: ease-in-out;
        -moz-transition-timing-function: ease-in-out;
        -webkit-transition-timing-function: ease-in-out;
        -o-transition-timing-function: ease-in-out;
        transition-duration: .5s;
        -ms-transition-duration: .5s;
        -moz-transition-duration: .5s;
        -webkit-transition-duration: .5s;
        -o-transition-duration: .5s;padding: 50px 0 0 0; 
    }
    #header .nav-menu.on {top: 0;z-index: 9997;} 
    #header .header_inner #menu .nav-menu .depth02{display: none;}
    #header #menu #lnb{padding: 30px 0; border-top: 1px solid #e6e6e6; border-bottom: 1px solid #e6e6e6;}
    #header #menu #lnb .menu {width: 100%!important;text-align: left;}
    #header #menu #lnb .menu.active:after{/* width: 86%;transition: .5s all ease .5s; */ display: none;}
    #header #menu #lnb .depth01 {padding: 15px 5%;font-size: 1.8rem;text-align: left;color: #333;}

    #header.mOpen #menu #lnb .depth01.void_link {position: relative;}
    /* #header.mOpen #menu #lnb .depth01.void_link:after {content:''; width: 30px; height: 4px; background-color: #333; position: absolute; right:1rem; top:0; bottom:0; margin: auto; transition: .3s; display: none;}
    #header.mOpen #menu #lnb .depth01.void_link:before {content:''; width: 4px; height: 30px; background-color: #333; position: absolute; right:2.1rem; top:0; bottom:0; margin: auto; transition: .3s; display: none;} */
    #header.mOpen #menu #lnb .active .depth01.void_link:after { display: none;}
    #header.mOpen #menu #lnb .active .depth01.void_link:before {transform: rotate(90deg);}
    #header #menu #lnb .menu01 .depth01.void_link:after,   #header #menu #lnb .menu03 .depth01.void_link:after,
    #header #menu #lnb .menu01 .depth01.void_link:before,   #header #menu #lnb .menu03 .depth01.void_link:before{display: block;}

    #header #menu #lnb .menu.active .depth01{color: #333;font-weight: 600; }
    #header #menu #lnb .menu.active .depth02 a {background-color: #f6f5e8; color: #333;}
    #header #menu #lnb .depth02 {left: 0;transform: translateX(0);position: relative;top: 0;font-size: 1.3rem;padding: 0 0 20px 0;}
    #header #menu #lnb .depth02 a{padding: 10px 12%;color: #fff;display: block;}
    #header #menu #lnb .depth02 a.void_link span {transform: rotate(90deg);transition: .5s all ease;}
    #header #menu #lnb .depth02 a.void_link {display: flex;justify-content: space-between;}

    #header #menu #lnb .depth02 > li.active a span{transform: rotate(270deg);}

    #header #menu .depth01.on span{color: var(--pointcolor);}
 
    #header .menu-btn {display: block;width: 25px;height: 15px;top:0; bottom:0; margin:auto; right: 5%;position: absolute; z-index: 9999;cursor: pointer;-webkit-transition: top 300ms;transition: top 300ms;}
    #header .menu-btn span {opacity: 1;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";right: 0;display: block;width: 100%;height: 1px;border-radius: 10px;background-color: #333;position: absolute;-webkit-transform: rotate(0deg);transform: rotate(0deg);-webkit-transition: .4s ease-in-out;transition: .4s ease-in-out;}
    #header .menu-btn .btn_line01 {top: 0;}
    #header .menu-btn .btn_line02 {top: 7px;}
    #header .menu-btn .btn_line03 {bottom: 0;}

    #header .menu-btn.on {position: fixed;top: 20px;right: 5%;bottom: auto;height:35px;width:35px}
    #header .menu-btn.on span:nth-child(1) {top: 17px;-webkit-transform: rotate(135deg);transform: rotate(135deg);}
    #header .menu-btn.on span:nth-child(2) {opacity: 0;-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";right: -60px;}
    #header .menu-btn.on span:nth-child(3) {top: 17px;-webkit-transform: rotate(-135deg);transform: rotate(-135deg);}


    #header .logo{padding: 20px 0;width: auto; }
    #header.mOpen .logo{position: absolute;top: 0;/* left:5%; */z-index: 9999;} 
    #header .tel{display: block;position: absolute;top: 50%;left: 5%; color:#fff; transform: translateY(50%);font-size: 20px; z-index: 9999;}
    #header.sticky .tel {color:#484848; top:0;}
    #header.mOpen .tel {color:#fff; top:0;}

    #header .header_inner #menu .nav-menu .login{display: flex;}
    #header #menu .login {display: flex;width: 100%;padding: 0 5%;margin: 5rem 0 2rem 0;}
    #header #menu .login li {position: relative; padding: 5px; }
    #header #menu .font-18{padding: 0 5%;}
    #header .login li{padding-right: 10px; text-align: center;}
    #header .login li a{font-size: 1.2rem; display: block; }
    #header .login li a span{display: flex;}
    #header .login li a span b{font-weight: 300; margin-top: 5px;}
    #header .login li:nth-child(2){position: relative;}
    #header .login li:nth-child(2):after{display: block; content: ''; width: 1px; height: 15px; background-color: #333; position: absolute; top: 50%; left: 0; transform: translateY(-50%);}

    .nav_btn{width: 25px;height: 20px;position: absolute;top: 25px;right: 5%;transition: .1s;cursor: pointer;z-index:10000;}
    .nav_btn span{width: 100%;height: 2px;background-color: #333;display: inline-block;position: absolute;border-radius: 5px; transition: all 0.3s;}
    .nav_btn .border1 {top: 0; right:0; width: 100%;}
    .nav_btn .border2 {top: 0; right:0; bottom: 0; margin: auto; width: 100%;}
    .nav_btn .border3 {bottom: 0px; right:0; width: 100%;}

    .nav_btn.act{height: 30px;}
    .nav_btn.sticky span {background-color: #484848;}
    .nav_btn.sticky.open span {background-color: #fff;}

    .nav_btn.open {transform: rotate(360deg);}
    .nav_btn.open span{background-color: #333;}
    .nav_btn.open .border1 {transform: translateY(16px) rotate(-45deg);width: 100%; top:-13px; }
    .nav_btn.open .border2 {opacity: 0; }
    .nav_btn.open .border3 {transform: translateY(-16px) rotate(45deg);width: 100%; }

    #header .logo{padding-left: 5%;}
    .nav_btn.act {transform: rotate(360deg);}
    .nav_btn.act span{background-color: #333;}
    .nav_btn.act .border1 {transform: translateY(16px) rotate(-45deg);width: 100%; top:-4px; }
    .nav_btn.act .border2 {opacity: 0; }
    .nav_btn.act .border3 {transform: translateY(-16px) rotate(45deg);width: 100%; }
    #header.sitemapOn .logo.visible-sm{display: none !important;}
    #lnb_m {
    position: fixed;
    top: 0;
    right: 0;
    width: 80%;
    height: 100vh;
    background-color: #fffef2;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transform: translateX(100%); /* ← 처음에 오른쪽 밖에 위치 */
    transition: transform 0.3s ease-in-out;
    z-index: 1000; /* 필요시 조절 */
    }   
    #lnb_m::-webkit-scrollbar {width:0px;}
    #header.sitemapOn#lnb_m .logo{background-color: #faf8ef;;}
    #lnb_m a{display:block;padding:1em 5%;position:relative;}

    #header .nav-menu{position: relative; width: 100%; top: auto; right: auto}
    #header #menu{width: 100%;}
    #header.sitemapOn{background-color: rgba(0,0,0,0.8);}
    #header.sitemapOn #lnb_m {
    width: 80%;
    height: 100vh;  /* ← 수정 포인트 */
    background-color: #fffef2;
    overflow-y: auto;  /* ← 스크롤 가능하게 */
    -webkit-overflow-scrolling: touch;  /* ← iOS 부드러운 스크롤 */
    }
    #header.sitemapOn #lnb_m {transform: translateX(0);}
    #lnb_m .depth02{background: none;}
    #header .nav-menu{padding: 0;}
    #header .login li a{padding: 5px;}
    #header #menu .login{margin: 2rem 0 0 0;}
    /* 기본 상태: 안 보임 */
    #header .header_inner #menu .nav-menu .menu{padding: 0;}
    #header .header_inner #menu{width: 100%;}

    .header_bgm.on {opacity: 1; visibility: visible;}
    .hsns{padding: 0 5%;}
    #header .header_inner .logo{width: 37%;}

    #footer .flex-between{flex-direction: column;}
    #footer .pt-20{padding-top: 1.875rem;}
    #footer .pb-20{padding-bottom: 1.875rem;}
    #footer .fcopy{margin-top: 1.875rem;}

    .quick_menu li a span{display: none;}
}

@media(max-width: 768px){
     #header .login li a{font-size: 1.3rem;}
}