/* ---------------------- */
/* 2025-07-11 신규작성 */
/* ---------------------- */

/* 헤더 영역 및 배경 그라디언트 */
.header-main {
    position:absolute;
    width:100%;
    z-index:100;
}
.header-sub {
    position:relative;
    width:100%;
    z-index:100;
    border-bottom: 1px solid rgba(0, 133, 119, 0.5);
}
.header-main .bg-top_gradient {
    position:absolute;
    width:100%;
    height:100%;
    background: linear-gradient(to bottom, rgba(0, 133, 119, 0.5) 0%, rgba(87, 110, 108, 0) 50%,  rgba(255, 255, 255, 0) 100%);
    z-index:1;
}
.header-sub .bg-top_gradient {
    background: inherit;
}
.header-in {
    position:relative;
    width:100%;
    max-width:1260px;
    margin:0 auto;
    z-index: 2;
}

/* 회원가입시 2,000원 바로지급! 배너 / 'display:flex' 수정 시 오픈 */
.banner-top {
    position: relative;
    display:none;
    width:104%;
    height:40px;
    left:50%;
    align-items:center;
    background-color: #008577;
    text-align: center;
    font-size:1.2em;
    line-height: 40px;
    color:#fff;
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
    transform: translateX(-50%);
}
.banner-top a {
    position: relative;
    display: block;
    width: 100%;
    color: #fff;
    margin: 0 auto;
}
.banner-top a p {
    width:100%;
}
.banner-top p {
    position:relative;
    width:100%;
    max-width:1260px;
    margin:0 auto;
    text-align:center;
    color:#fff;
}
.banner-top p button {
    position:absolute;
    display: inline-block;
    right: 1%;
    top: 50%;
    width: 15px;
    height: 15px;
    text-indent: -9999px;
    transform: translateY(-50%);
}
 .banner-top p button::before {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    width: 15px;
    height: 1px;
    background-color: #eee;
    transform: rotate(45deg) translateY(-50%);
}
.banner-top p button::after {
    position: absolute;
    content: "";
    display: block;
    top: 50%;
    width: 15px;
    height: 1px;
    background-color: #eee;
    transform: rotate(-45deg) translateY(-50%);
}
@media (max-width: 1320px) {
    .banner-top {
        width:100%;
        font-size:1.2em;
        border-bottom-left-radius: 1.6em;
        border-bottom-right-radius: 1.6em;
    }
    .banner-top p button {
        right: 2%;
    }
}
@media (max-width: 768px) {
    .banner-top {
        font-size:1.0em;
    }
     .banner-top p button {
        right: 2.5%;
    }
}


/* .nav-logo : 로고와 검색 그리고 마이페이지, 장바구니 영역  */
.nav-logo {
    display:flex;
    justify-content:space-between;
    align-items:center;
    height:80px;
}
.nav-logo_img {
    padding:0 10px;
}
.nav-logo_img h1 {
    width:155px;
    height:26px;
}
.header-main .nav-logo_img h1 a {
    display:block;
    width: 100%;
    height:100%;
    background: url(/data/images/logo/logo-white.png) no-repeat left/contain;
}
.header-sub .nav-logo_img h1 a {
    display:block;
    width: 100%;
    height:100%;
    background: url(/data/images/logo/logo-color.png) no-repeat left/contain;
}
/* 디자인 코드 */
/* .header-main .style-floating_bar {
    display:flex;
    justify-content: space-between;
    align-items:center;
    box-sizing:border-box;
    border-radius:999px;
    text-align: center;
    background-color:rgba(0, 0, 0, 0.25);
    border:1px solid rgba(0, 0, 0, 0.10);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
} */
/* 리퀴드 글라스 코드 */
.header-main .style-floating_bar {
    display:flex;
    justify-content: space-between;
    align-items:center;
    box-sizing:border-box;
    backdrop-filter: blur(20px) saturate(180%) contrast(120%);
    -webkit-backdrop-filter: blur(20px) saturate(180%) contrast(120%);
    background-color: rgba(0, 0, 0, 0.25);
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.3);
    box-shadow: 0 4px 30px rgba(0,0,0,0.1);
}
.header-sub .style-floating_bar {
    display:flex;
    justify-content: space-between;
    align-items:center;
    box-sizing:border-box;
    border-radius:999px;
    text-align: center;
    background-color:rgba(255, 255, 255, 0.25);
    border:1px solid rgba(0, 0, 0, 0.10);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}
.header-sub .nav-gnb_menu .style-floating_bar {

    display:flex;
    justify-content: space-between;
    align-items:center;
    box-sizing:border-box;
    border-radius:999px;
    text-align: center;
    background-color:#008577;
    border:1px solid rgba(0, 0, 0, 0.10);
}
.nav-search_bar {
    width:355px;
    height:50px;
    padding:20px;
}
.header-main .nav-search_bar button {
    width:19px;
    height:19px;
    background: url(/data/images/icon/icon-search-white.png) no-repeat center/cover;
}
.header-sub .nav-search_bar button {
    width:19px;
    height:19px;
    background: url(/data/images/icon/icon-search-black.png) no-repeat center/cover;
}
.header-main .nav-search_bar input {
    flex: 1;
    border: none;
    background: transparent;
    color: #fff;
    outline: none;
}
.header-sub .nav-search_bar input {
    flex: 1;
    border: none;
    background: transparent;
    color: rgba(0, 0, 0, 0.4);
    outline: none;
}
.header-main .nav-search_bar input::placeholder {
  color: rgba(255, 255, 255, 1);
}
.header-sub .nav-search_bar input::placeholder {
  color: rgba(17, 17, 17, 0.4);
}
.nav-logo nav {
    display:flex;
    justify-content: space-around;
    align-items: center;
    height:100%;
}
.nav-logo nav a {
    display:flex;
    align-items: center;
    width:100%;
    height:100%;
    padding:10px;
    text-indent: -9999px;
}
.nav-logo nav a i {
    display:flex;
    align-items: center;
    width:20px;
    height:20px;
    text-indent: -9999px;
}
.header-main .nav-logo nav .btn-search_bar i {
    background: url(/data/images/icon/icon-search-white.png) no-repeat center/cover;
}
.header-sub .nav-logo nav .btn-search_bar i {
    background: url(/data/images/icon/icon-search-black.png) no-repeat center/cover;
}
.header-main .nav-logo nav .btn-user i {
    background: url(/data/images/icon/icon-user-white.png) no-repeat center/cover;
}
.header-sub .nav-logo nav .btn-user i {
    background: url(/data/images/icon/icon-user-black.png) no-repeat center/cover;
}
.header-main .nav-logo nav .btn-shopping_bag i {
    background: url(/data/images/icon/icon-shopping_bag-white.png) no-repeat center/cover;
}
.header-sub .nav-logo nav .btn-shopping_bag i {
    background: url(/data/images/icon/icon-shopping_bag-black.png) no-repeat center/cover;
}
.nav-logo nav a:first-child {
    display:none;
}
@media (max-width: 768px) {
    .nav-logo {
        height:60px;
    }
    /* 모바일에서의 검색바 위치 및 컬러 변경입니다. */
    .header-main .nav-search_bar {
        position: absolute;
        display: none;
        top: 55%;
        width: 96%;
        left: 50%;
        transform: translateX(-50%);
        z-index: 101;
    }
    .header-sub .nav-search_bar {
        position: absolute;
        display: none;
        top: 50%;
        width: 96%;
        left: 50%;
        transform: translateX(-50%);
        z-index: 101;
    }
     .header-sub .nav-search_bar.style-floating_bar {
        background-color:rgba(0, 0, 0, 0.25);
        border:1px solid rgba(0, 0, 0, 0.10);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
    }
    .header-sub .nav-search_bar input::placeholder {
        text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
        color: rgba(255, 255, 255, 1);
    }
    .header-sub .nav-search_bar input {
        text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
        color: rgba(255, 255, 255, 1);
    }
    .header-sub .nav-search_bar button {
        background: url(/data/images/icon/icon-search-white.png) no-repeat center/cover;
    }
    .nav-search_bar.open_search {
        display:flex;
    }
    .nav-logo nav a:first-child {
        display:flex;
    }
}

/* .nav-gnb : 전체메뉴와 GNB 대표메뉴 영역  */
.nav-gnb {
    position:relative;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0px;
    font-size:1.2em;
    line-height:1.2em;
}
.nav-gnb div.nav-gnb_wrap {
    display:flex;
    max-width:100%;
    width:fit-content;
}
.nav-gnb ul {
    display:flex;
    height:50px;
    max-width:100%;
    width:fit-content;
    align-items:center;
}

.nav-gnb ul li a {
    display:inline-block;
    height:100%;
    padding:10px;
}
.font-DIY {
    font-family: 'Times New Roman', Times, serif;
}

.nav-gnb ul li a.icon-category{
    padding:15px;
    box-sizing: border-box;
}
.nav-gnb ul.nav-gnb_b2b li a {
    display: flex;
    align-items: center;
    padding:10px;
}
.nav-gnb_b2b a i {
    display:flex;
    align-items: center;
    width:20px;
    height:20px;
    margin: 0 5px 5px 0;
}
.header-main .nav-gnb_b2b a i {
    background: url(/data/images/icon/icon-B2B-white.png) no-repeat center/cover;
}
.header-sub .nav-gnb_b2b a i {
    background: url(/data/images/icon/icon-B2B-black.png) no-repeat center/cover;
}
.nav-gnb ul li {
    display:inline-block;
}
.nav-gnb ul.nav-gnb_category {
    width:50px;
}
.nav-gnb ul.nav-gnb_category li a {
    width:100%;
}
.nav-gnb ul.nav-gnb_category li a i {
    display:flex;
    align-items: center;
    width:20px;
    height:20px;
    text-indent: -9999px;
}
.header-main .nav-gnb ul.nav-gnb_category li a i {
    background: url(/data/images/icon/icon-category-white.png) no-repeat center/cover;
}
.header-sub .nav-gnb ul.nav-gnb_category li a i {
    background: url(/data/images/icon/icon-category-black.png) no-repeat center/cover;
}
.nav-gnb ul.nav-gnb_menu {
    display:flex;
}
.nav-gnb ul.nav-gnb_menu > li:first-child > a {
    padding-left:0;
}
.nav-gnb_menu > li > a.active {
    color: #008577 !important;
}
.btn-shopping_bag .cart_cnt2 { 
    position: absolute;
    display: inline-block;
    text-indent: 0;
    vertical-align: top;
    margin-top: -15px;
    right: 2px;
    text-align: center;
    height: 16px;
    padding: 0 5px;
    min-width: 7px;
    border-radius: 10px;
    font-size: 11px;
    line-height: 17px;
    font-weight: 300;
    background: #f00 !important;
    color:#fff !important;
}


/* 오늘도착의 2Depth 메뉴 플로팅 메뉴 입니다. */
.header-main .nav-gnb .floating_menu,
.header-sub .nav-gnb .floating_menu {
    position:absolute;
    display:none;
    top:45px;
    left:2%;
    padding:15px;
}
.nav-gnb .floating_menu.open_menu {
    display:flex;
}
.nav-gnb .floating_menu > li {
    padding:0 10px;
}
.nav-gnb .floating_menu > li a {
    padding:0px;
}
/* 브라우저 창이 너무 작아 졌을 때, 2Depth 메뉴 수정  */
@media (max-width:380px) {
    .header-main .nav-gnb .floating_menu,
    .header-sub .nav-gnb .floating_menu {
        position:absolute;
        flex-wrap: wrap;
        justify-content: space-between;
        top:45px;
        left:50%;
        max-width:inherit;
        width:96%;
        height:auto;
        padding:10px 15px;
        transform:translateX(-50%);
    }
    .nav-gnb .floating_menu > li {
        padding:6px 6px;
    }
    .nav-gnb .floating_menu > li a {
        font-size:13px;
    }
}

/* 링크 폰트 컬러 화이트 */
.header-main .nav-gnb a,
.header-main .nav-logo a {
    color:#fff;
}
.header-sub .nav-gnb a,
.header-sub .nav-logo a {
    color:#111;
}
.header-sub .nav-gnb .floating_menu a {
    color:#fff;
}

@media (max-width: 768px) {
   .nav-gnb .nav-gnb_b2b {
        display:none;
    }

    /* 모바일 메뉴 4개일 때 */
    .nav-gnb div.nav-gnb_wrap {
        display:flex;
        max-width:inherit;
        width:100%;
    }
    .nav-gnb ul.nav-gnb_menu {
        width:100%;
        justify-content: space-between;
    }

    /* 모바일 메뉴 4개 초과 일때 사용 */
        /* .nav-gnb div.nav-gnb_wrap {
            display:flex;
            max-width:inherit;
            width:100%;
        }
        .nav-gnb ul.nav-gnb_menu {
            display: inline-flex;
            width:100%;
            overflow: auto; 
            -ms-overflow-style: none;  
            scrollbar-width: none; 
            white-space: nowrap;
            justify-content: inherit;
        }
        .nav-gnb ul.nav-gnb_menu li {
            white-space: nowrap;
            cursor: pointer;
        } */

}

/* 브라우저 창이 너무 작아 졌을 때, GNB 메뉴 2줄로 안나오도록 수정. */
@media (max-width: 386px) {
    .nav-gnb div.nav-gnb_wrap {
        display:flex;
        max-width:inherit;
        width:100%;
    }
     .nav-gnb ul.nav-gnb_menu {
        display: inline-flex;
        width:100%;
        overflow: auto; 
        -ms-overflow-style: none;  
        scrollbar-width: none; 
        white-space: nowrap;
        justify-content: inherit;
    }
    .nav-gnb ul.nav-gnb_menu li {
        white-space: nowrap;
        cursor: pointer;
    }
}
