@font-face {
    font-family: Montserrat;
    src: url('/img_up/shop_pds/ehompy0657/design/2025/font/montserrat-v26-latin-500.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

:root {
    --prm-clr: #083484;
    --max-width: 1500px;
    --conts-clr: #444;
}

/* 사전 설정 */
:root {
    --pre: 'Pretendard', 'Noto Sans KR', Sans-serif;
    --mon: 'Montserrat', 'Noto Sans KR', Sans-serif;
    --cont: clamp(.9rem, 1vw, 1rem);
    --title: clamp(1.4rem, 2.5vw, 2.7rem);
    --s_title: clamp(1.2rem, 2vw, 2.5rem);
    --s_cont: clamp(.9rem, 1.1vw, 1.1rem);
}


#header {
    border-bottom: 0;
}

#header .header_inner {
    position: absolute;
    top: 50%;
    right: calc((100vw - min(1500px, 100vw)) / 2);
    ;
    width: 300px;
    transform: translatey(-50%);
    z-index: 2;
}

#header .header_inner .gnb_p.search_use {
    position: absolute;
    right: 50px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 999;
}

#header .header_inner .header_form {
    position: relative;
    right: 0;
    z-index: 2;
    margin-top: 0;
}

#header .header_form .btn_header_form {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.gnb_p {
    margin-top: 0;
    transform:translatey(-50%);
}


#header .logo {
    left: 50%;
    max-width: var(--max-width);
    width: 100%;
    margin: 0 auto;
    transform: translateX(-50%);
    z-index: 1;
}

.lnb_p {
    position: relative;
    max-width: var(--max-width);
    width: 100%;
    padding-left: 150px;
    box-sizing: border-box;
}

.lnb_p .dep2 > li > a {
    word-break:keep-all;
}

.gnb_p .gnb_list li {
    padding-left: 18px;
    margin-left: 18px;
}

.gnb_p .gnb_list li a {
    font-family: var(--mon);
}

.lnb_p .dep2>li>a {
    font-size: 15px;
}

.lnb_p .dep1>li>a>span>span {
    font-size: 16px;
    font-weight: 700;
}



@media(min-width:1024px) {
    .lnb_p .dep1>li {
        min-width: 140px;
    }
}


@media (max-width:1439px){
    .lnb_p .dep1>li {min-width:100px;}
}

@media (max-width:1299px) {
    .lnb_p {
        padding-left: 110px;
    }

    .lnb_p .dep1>li>a>span>span,
    .gnb_p .gnb_list li a {
        font-size: 14px;
    }

    #header .logo h1 span img {
        width: 100px;
    }
}

@media (max-width:1023px) {
    #header .logo {
        transform: unset;
    }
}

/* 서브 */
.shgroup .shgroup_pc .sub_top_bg:before {
    background-size: cover;
    background-position: center;
}

.contents_wrap .sub_location {
    margin-bottom: 3rem;
}

/*#sub_view .row > .white-space{max-width:1250px !important;}*/

@media (max-width:1023px){
    #viewport #sub_view #container{padding-top:0;}
    #header .logo h1 span .on{display:block;}
    #header .logo h1 span .off {display:none;}
    .shgroup > .shgroup_pc img {object-position: left;}
}
/* 메인 코딩 공통 */
.main_prod_wrap * {
    font-family: 'pretendard';
    word-break: keep-all;
}

.main_prod_wrap {
    margin: 4rem 0;
    box-sizing: border-box;
}

.main_prod_wrap .inner {
    max-width: var(--max-width);
    width: 100%;
    margin: 0 auto;
    position: relative;
}

.main_prod_wrap .sub_title {
    display: flex;
    flex-direction: row;
    margin-bottom: 1rem;
    justify-content: space-between;
    align-items: center;
}

.main_prod_wrap .sub_title h2 {
    margin: 0;
    font-size: clamp(18px, 40px, 40px);
    color: #000;
}

.main_prod_wrap .sub_title h2 .point {
    color: var(--prm-clr);
}

.main_prod_wrap .sub_title .more_btn {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: clamp(15px, 18px, 18px);
    font-weight: 600;
    color: var(--prm-clr);
}

.main_prod_wrap .sub_title .more_btn .fa-arrow-right:before {
    font-size: 15px;
}

.main_prod_wrap ul li>a {
    padding: 10px 30px 30px 30px;
}

.main_prod_wrap dl {
    margin-top: 2rem;
}

.main_prod_wrap dl .goods_name {
    min-height: 53px;
    font-size: 18px !important;
    font-weight: 500 !important;
    color: #000 !important;
    margin-bottom: .7rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    line-height: 1.4;
    max-height: calc(1.4em * 2);
    word-break: keep-all;
}

.main_prod_wrap dl .price {
    font-size:20px !important;
    font-weight: bold !important;
    color: var(--prm-clr) !important;
    margin-top: .3rem;
}

.main_prod_wrap dl .prod-labels {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    margin-bottom: .3rem;
}

.main_prod_wrap dl .figure {
    height: 320px;
    margin-bottom: 2rem;
}


.main_prod_wrap dl .prod-labels .rental {
    display: inline-block;
    font-size: clamp(13px, 14px, 14px);
    color: #3c3c3c;
    background: #e8e8e8;
    padding: 0 .5rem;
    height: 20px;
    line-height: 20px;
    font-weight: 500;
}

.main_prod_wrap dl .prod-labels .icon {
    padding-top: 0;
}



.title_btn {
    display: inline-flex;
    padding: .8rem 3rem;
    box-sizing: border-box;
    font-size: clamp(14px, 18px, 18px);
    border: 1px solid #111;
    align-items: center;
    margin-top: 3rem;
    font-weight: 600;
    gap: 5px;
    transition: all .3s;
}

.title_btn i {
    font-size: 14px;
    transition: all .3s;
}

.title_btn:hover {
    background: rgba(255, 255, 255, .3);
    color: #111;
}

.title_btn:hover i {
    transform: translateX(10px);
}


@media (max-width:767px){
    .main_prod_wrap{margin:0;}
    .main_prod_wrap dl{margin-top:0;}
    .main_prod_wrap dl .prod-labels{flex-direction: column;}
    .main_prod_wrap .sub_title h2 {font-size:18px;}
    .main_prod_wrap dl .goods_name {font-size:16px !important; min-height:42px; margin-bottom:0;}
    .main_prod_wrap dl .price {font-size:14px !important;}
    .main_prod_wrap ul li>a{padding:10px !important;}
    .main_prod_wrap dl .prod-labels .icon img{width:28px;}

    .title_btn {padding:.8rem 2rem;}


    .sub_page {padding:0 1rem;}
}


/* footer  */
#footer {
    background: #0e0e0e;
}

#footer .finfo {
    display: flex;
    margin-top: 5rem;
    gap: clamp(30px, 70px, 70px);
    justify-content: space-between;
}

#footer .finfo p {
    padding: 0 0 .5rem 0;
    font-size:18px;
    color: #acacac;
    text-align: left;
    line-height: 1.4;
}


#footer .finfo .finfo_item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: auto;
    font-size:18px;
}

#footer .finfo .finfo_item.f_logo {
    width: 300px;
}


#footer .finfo .finfo_item .finfo_title {
    margin-bottom: 1rem;
    font-weight: 700;
    color: #fff;
    text-align:left;
}

#footer .finfo .finfo_item.second .call {
    font-size: 30px;
    font-weight: bold;
    color: #fff;
}

#footer .finfo .finfo_item ul {
    list-style: none;
    padding: 0;
    text-align: left;
}

#footer .finfo .finfo_item ul li a,
#footer .finfo .finfo_item ul li {
    font-size: 18px;
    padding-left: 0;
    color: #acacac;
    margin-bottom: .5rem;
}


#footer .fnb {
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 600;
}

#footer .finfo .finfo_item .fnb ul li a {
    color: #fff;
}

#footer .fnb ul li:before {
    display: none;
}

#footer .bank_select {
    width: 100%;
    margin-top: 2rem;
    padding: 12px 10px;
    border: 0;
    font-size: 16px;
    color: #afafaf;
    background: #333;
    cursor: pointer;
}

#footer .bank_select:hover {
    border-color: #999;
}

#footer .copyright {
    margin-top: clamp(1rem, 4vw, 4rem);
}


@media (max-width:1023px){
    #footer .finfo {flex-direction: column;align-items: center; margin-top: 0; padding:0 1rem;}
    #footer .finfo .finfo_item{align-items: center;}
    #footer .finfo p,
    #footer .finfo .finfo_item ul{text-align:center;}
    #footer .finfo{gap:15px;}

    #footer .finfo .finfo_item ul li a,
    #footer .finfo .finfo_item ul li{font-size:14px;}
    #footer .finfo p{font-size:13px;}
    #footer .finfo .finfo_item .finfo_title{margin-bottom:0; font-size:14px;}
    #footer .finfo .finfo_item.second .call{font-size:18px;}
     #footer .finfo .finfo_item ul li{margin-bottom:0;}
     #footer .bank_select{font-size:13px;}
     #footer .copyright{text-align:center; font-size:13px;}
}


/*lenis base */
html.lenis,
html.lenis body {
    height: auto;
}

.lenis.lenis-smooth {
    scroll-behavior: auto !important;
}

.lenis.lenis-stopped {
    overflow: hidden;
}

/* 전역 스크롤 숨김/이중 스무스 제거 */
html,
body {
    overflow: visible;
}

/* 퀵 */

/*********************** gr_quick ***********************/
.gr_quick {
    position: fixed;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    top:auto;
    bottom:60px;
    transform: unset;
}

.gr_quick .wrap1 {
    background:#fff;
    box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.1);
    padding:clamp(0.6rem, 1.1vw, 2rem) clamp(0.6rem, .5vw, 1rem);
    display: flex;
    flex-direction: column;
    gap: 10px;
    border-radius:30px;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transform: translateY(8px);
    overflow: hidden;
    transition:
    max-height .45s var(--q-ease),
    opacity .35s var(--q-ease),
    transform .45s var(--q-ease);
}

/* .wrap3 OR .wrap1 hover일 때 열림 */
.gr_quick:has(.wrap3:hover) .wrap1,
.gr_quick:has(.wrap1:hover) .wrap1 {
  max-height: 600px;
  opacity: 1;
  transform: translateY(0);
}

.gr_quick .wrap1 .info a:last-child { margin-bottom: 0 !important; }
.gr_quick .wrap1 .sns  a:last-child { margin-bottom: 0 !important; }


.gr_quick .prod_scroll {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    aspect-ratio: 1 / 1;
    background: #fff;
    border-radius: 30px;
    box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.1);
    text-transform: uppercase;
    font-family: 'pretendard';
    color: var(--prm-clr);
    font-weight: 700;
    font-size: clamp(.6rem, .6vw, 1rem);
    margin-top: 10px;
    box-sizing: border-box;
    cursor: pointer;
    word-break: keep-all;
    text-align: center; 
     gap:3px;

}
.gr_quick .info a {
    padding: clamp(0.7rem, 0.7vw, 2rem) 0;
    display: block;
}

.gr_quick .info a:not(:last-child) {
    border-bottom: 1px solid #dddddd8f;
}

.gr_quick .info a .icon {
    display: block;
    width:32px;
    margin: 0 auto 10px;
    aspect-ratio: 1/1;
}

.gr_quick .info a .cap {
    font-family: 'pretendard';
    font-size: clamp(.72rem, .72vw, 1rem);
    letter-spacing: -0.03em;
    text-align: center;
    font-weight: 400;
    color: var(--prm-clr);
}

.gr_quick .sns {
    display: flex;
    justify-content: space-around;
    margin: clamp(.4rem, .4vw, 1rem) 0 clamp(0.5rem, 0.5vw, 1rem);
}

.gr_quick .sns a {
    display: block;
    width: 40%;
    aspect-ratio: 1/1;
}

.gr_quick .sns a img {
    display: block;
    width: 100%;
    box-shadow: 1px 1px 0 1px rgba(0, 0, 0, 0.2);
    border-radius: 6px;
}

.gr_quick .resv {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    aspect-ratio: 1/1;
    text-align: center;
}

.gr_quick .resv .cap {
    font-family: 'pretendard';
    font-size: clamp(.72rem, .72vw, 1rem);
    letter-spacing: -0.03em;
    text-align: center;
    font-weight: 400;
    color: #fff;
}

.gr_quick .wrap3{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin: 0 auto;
    aspect-ratio: 1/1;
    border-radius: 30px;
    box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.1);
    text-transform: uppercase;
    font-family: 'pretendard';
    color:#fff;
    font-weight: 700;
    font-size: clamp(.85rem, .85vw, 2rem);
    margin-top: 10px;
    background:linear-gradient(119deg, #1f3784, #31258f);
    box-sizing: border-box;
    cursor: pointer;
}

.gr_quick .wrap2 .top {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 90%;
    margin: 0 auto;
    aspect-ratio: 1/1;
    background: #fff;
    border-radius: 50%;
    box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.1);
    text-transform: uppercase;
    font-family: 'pretendard';
    color: var(--prm-clr);
    font-weight: 700;
    font-size: clamp(.85rem, .85vw, 2rem);
    margin-top: 10px;
    box-sizing: border-box;
    cursor: pointer;
}

:root { --q-ease: cubic-bezier(.22,.72,.16,1); }

.gr_quick:hover .wrap3 { font-weight: 700; }

.gr_quick .call_wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 4rem;
    margin: 0 auto;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    box-shadow: 4px 4px 20px rgba(0, 0, 0, 0.1);
    text-transform: uppercase;
    color: #fff;
    font-weight: 700;
    font-size: clamp(.85rem, .85vw, 2rem);
    margin-top: 10px;
    background:#181247;
    box-sizing: border-box;
    cursor: pointer;}



@media (max-width:1023px) {

    .gr_quick {z-index: 999;display: flex;align-items: center; right:15px; bottom:15px; top:unset; transform:unset; flex-direction: column;}

    .gr_quick .wrap1 {display: flex; align-items: center; border-radius:10px; padding: clamp(0.6rem, 1.1vw, 2rem); gap: 10px; padding-block: 0;  }

  .gr_quick.is-open .wrap1{padding-block: clamp(0.6rem, 1.1vw, 2rem);opacity: 1;transform: translateY(0);}
    .gr_quick .info a {padding:8px 0 8px 0;}
        .gr_quick .info a .icon {margin: 0 auto 3px; width: 40%;}
    .gr_quick .sns {margin:0; gap: 10px;}
    .gr_quick .sns a {width: 45%;}

    .gr_quick .wrap2 .top {flex-shrink: 0;margin: 0;}

    .gr_quick .wrap2 .top {width: clamp(3rem, 3vw, 4rem); margin-left: 0; margin-top:10px;}
    .gr_quick .wrap3 {width:4rem;}
    .gr_quick .sns {display: flex; flex-direction: column;}
    .gr_quick .sns a {width:100%;}

  .gr_quick.is-open .wrap1{opacity: 1;transform: translateY(0); }

}
@media (max-width:767px) {
    .gr_quick {bottom:70px;}
    .gr_quick .prod_scroll{display:none;}


}

