/* BASIC css start */
/* Box sizing 기본 레이아웃 고정 (가로 스크롤 방지 필수) */
#header, #header *, aside, aside * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.menu_on {height:100%; overflow:hidden;}
.menu_off {height:auto; overflow:initial;}

#header {
    width:100%;
    max-width:100%;
    overflow:hidden; /* 상단에서 가로 삐져나침 완벽 차단 */
}

#header .top-pt-01 {position:fixed; top:0; left:0; right:0; z-index:100;}
#header .top-pt-02 {position:fixed; top:0; left:0; right:0; z-index:100;}

/* 상단 파란색 네비게이션 바 레이아웃 교정 */
#header .headerTop {
    width: 100%;
    position: relative;
    background-color:#00448f;
    padding-right: 45px; /* 오른쪽 MENU 버튼 공간 확보 */
    overflow: hidden;
}

/* 상단 4개 메뉴 버튼 */
#header .headerTop a {
    width: 25%;
    float: left;
    height: 36px; 
    line-height: 36px; 
    background-color:#00448f; 
    color:#fff; 
    display:block; 
    text-align: center;
    border-left:1px solid #1a569d; 
    font-size: 0.85em; /* 글자 짤림 방지 */
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

#header .headerTop a:first-child {
    border-left: none;
}

#header .headerTop a .fa {
    vertical-align: middle; 
    position: relative; 
    top: -1px;
}

/* 오른쪽 고정 MENU 버튼 */
#header #menu {
    width:45px; 
    height: 36px;
    line-height: 36px;
    background-color:#ab3e41; 
    position:absolute; 
    top: 0;
    right:0;
    border-left: none;
}
#header #menu .fa {top: 0;}

/* 헤더 로고 및 우측 아이콘 영역 정리 */
#header .headerBottom {
    width: 100%;
    padding:0 15px; /* 좌우 여백을 30px -> 15px로 줄여 모바일 맞춤 */
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#header .headerBottom h1 {font-size:2.333em; margin: 0;}
#header .headerBottom .headerBottomLeft { margin-top: 9px; margin-bottom: 9px; text-align: left;}
#header .headerBottom .headerBottomLeft img { max-width: 100%; height: auto; } /* 로고 이미지 삐져나옴 방지 */
#header .headerBottom .headerBottomRight { margin-top: 0;}
#header .headerBottom .headerBottomRight a {margin-left:12px; color:#7d7d7d;}
#header .headerBottom .headerBottomRight a .fa-bookmark-o {color:#f1494d;}
#header .headerBottom .headerBottomRight .cart {position:relative;}
#header .headerBottom .headerBottomRight .cart sup {width:12px; height:12px; background-color:#f1191f; color:#fff; border-radius:6px; position:absolute; top:-12px; right:-5px; text-align: center; line-height: 12px;}

/* 검색 영역 */
#header .search {height:42px; position:relative; left:0; right:0; background-color:#ab3e41; padding-right:45px; text-align:center; display:none; z-index:10;}
#header .search .searchBox {width:100%;}
#header .search .searchBox input {width:90%; height:30px; border:0px none; margin-top: 6px; padding: 0 5px;}
#header .search .btn_search {width:45px; height:42px; line-height:50px; background-color:#822023; position:absolute; top:0; right:0; color:#fff; text-align:center;}

/* 카테고리 슬라이드 메뉴 */
aside {position:fixed; width:320px; max-width: 85%; height:100%; top:36px; right:0; bottom:0; background-color:#fff; overflow-y:auto; -webkit-overflow-scrolling: touch; z-index:1001; display:none;}
aside .asideTop {text-align:center;}
aside .asideTop a {width:33.33%; height:62px; display:inline-block; border-bottom:2px solid #c3c3c3; color:#8f8f8f; font-weight:bold;}
aside .asideTop a .fa {margin-top:10px;}
aside .asideTop a.act {color:#ab3e41; border-bottom:2px solid #ab3e41;}
aside nav li {border-bottom:1px solid #ccc; position:relative;}
aside nav li a {display: block; height: 35px; line-height:35px; padding:0 0 0 20px; margin-right: 40px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
aside nav li .fa {position: absolute; top:0; right: 0; width: 40px; text-align: center; height: 35px; line-height:35px;}
aside nav li > ul {background-color:#f4f4f4; display:none; border-top:1px solid #6e6e6e;}
aside nav li > ul > li {border-bottom:0px none; border-top:1px solid #ccc;}
aside nav li > ul > li:first-child {border-top:0px none;}
aside nav li > ul > li a {padding:0 40px 0 30px; margin: 0;}
aside nav li > ul > li > ul {border-top:0px none; border-top:1px solid #ccc;}
aside nav li > ul > li > ul > li {border-bottom:0px none;}
aside nav li > ul > li > ul > li a {padding:0 0 0 40px; margin: 0; background-color: #DDDDDD;}
aside .asideBottom {padding:20px 22px;}
aside .asideBottom .tel {color:#ab3e41; font-size:1.333em; font-weight:bold; display: block;}
aside .asideBottom .fa-stack {color:#000; margin-top: -5px;}
aside .asideBottom .copyright {margin-top:10px;}
aside .navCommunity {display:none;}
aside .navMypage {display:none;}
/* //카테고리 */

/* 최근 본 상품 */
#ly_lastView {width:100%; position:absolute; top:36px; left:0; background-color:#fff; z-index:101; padding-bottom:20px; box-shadow: 0 1px 10px #717171; display:none;}
/* //최근 본 상품 */

/* 태블릿 이상 화면 보정 */
@media screen and (min-width:768px) {
    #header #menu {width:85px;}
    #header .headerTop {padding-right:85px;}
    #header .search {padding-right:85px;}
    #header .search .searchBox input {width:95%;}
    #header .search .btn_search {width:85px;}
}

/* ==========================================
   중단 파란색 카테고리 탭 메뉴 (CSS 텍스트 & 롤오버/밑줄)
   ========================================== */
.wrap { 
    width: 93%; 
    margin: 0 auto; 
    padding: 10px 0; 
}

.css_tab_menu {
    display: flex !important;
    width: 100% !important;
    background-color: #00448f; /* 파란색 배경 */
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.css_tab_menu a {
    flex: 1 1 20% !important; /* 5개 메뉴 정확히 20% 균등 분배 */
    width: 20% !important;
    height: 44px !important;
    line-height: 44px !important;
    color: #ffffff !important;
    text-decoration: none !important;
    text-align: center !important;
    
    /* 이미지 폰트 느낌의 굵고 또렷한 고딕 스타일 */
    font-family: 'Noto Sans KR', 'Malgun Gothic', '맑은 고딕', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: -0.5px !important;
    
    box-sizing: border-box !important;
    border-right: 1px solid #1a569d; /* 메뉴 구분선 */
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: block !important;
    position: relative !important;
    transition: background-color 0.2s ease;
}

/* 5번째 마지막 메뉴 우측 구분선 제거 */
.css_tab_menu a:last-child {
    border-right: none !important;
}

/* 터치/마우스 호버 및 활성화(Active) 배경 */
.css_tab_menu a:hover,
.css_tab_menu a:active,
.css_tab_menu a.active {
    background-color: #00336e !important;
    color: #ffffff !important;
}

/* 하단 흰색 밑줄 애니메이션 효과 */
.css_tab_menu a::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 4px; /* 밑줄 두께 */
    background-color: #ffffff; /* 흰색 밑줄 */
    transition: all 0.25s ease-in-out;
    transform: translateX(-50%);
}

/* 터치/마우스 호버 또는 활성화 상태일 때 밑줄 표시 */
.css_tab_menu a:hover::after,
.css_tab_menu a.active::after {
    width: 80%; /* 메뉴 너비의 80% 크기 */
}
/* BASIC css end */

