/* 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개 메뉴의 너비를 25% 대신 flex/calc로 자동 맞춤하여 100% 초과 방지 */
#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;}
}
/* BASIC css end */

