:root {
    --prm-clr: #4a8be7;
    --scd-clr: #c85545;
    --pt-clr: #3895cd;
    --max-width: 1480px;

    --sp_tit: clamp(1.8rem, 2.3vw, 2.3rem);
    --sp_sb_tit: clamp(1.3rem, 1.8vw, 1.8rem);
    --sp_cnt: clamp(1rem, 1.1vw, 1.1rem);
}


body * {
    font-family: 'pretendard';
}

.shgroup *,
.row>div>div>.col *,
#footer *,
.sub_page_title_wrap *,
#sub_view .snb_wrap *,
#sub_view .snb_wrap .sub_location * {
    font-family: 'pretendard';
    word-break: keep-all;
}



/* 스킨 수정 */

@font-face {
    font-family: 'crimson';
    src: url('/img_up/shop_pds/ehompy0633/design/font/crimsonpro-variablefont_wght.woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'icomoon2';
    src: url('/img_up/shop_pds/ehompy0619/design/icomoon/icomoon.eot');
    src: url('/img_up/shop_pds/ehompy0619/design/icomoon/icomoon.eot') format('embedded-opentype'),
        url('/img_up/shop_pds/ehompy0619/design/icomoon/icomoon.ttf') format('truetype'),
        url('/img_up/shop_pds/ehompy0619/design/icomoon/icomoon.woff') format('woff'),
        url('/img_up/shop_pds/ehompy0619/design/icomoon/icomoon.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}


/* PC 화면 넓이값을 가진 센터유지 */
#header>.inner,
#footer .fnb .fnb_inner,
#footer .finfo {
    margin: 0 auto;
    max-width: 1920px
}

.sub_location>ul,
.shgroup .sub_top_text_wrap,
.contents .sub_cont_title,
#footer .f_inner {
    margin: 0 auto;
    max-width: 1480px
}

.row>.white-space {
    max-width: 1480px !important
}



/*************************pc 헤더***************************/
.lnb_p .dep1>li>a {
    text-transform: uppercase !important;
}

@media (min-width:1023px) {
    #header .logo {
        width: 220px;
    }

    #header .logo h1 img {
        max-height: 50px;
    }

    .lnb_p .dep1>li>a {
        font-family: 'pretendard';
        font-size: 18px;
        font-weight: 600;
    }

    #header .right_layout {
        display: none;
    }

    .lnb_p {
        margin: 0 0 0 auto;
    }

    #header>.inner {
        padding: 0;
    }

    #sub_view #header.nav-down {
        transition: .5s;
    }

    #sub_view #header.nav-up {
        top: -95px;
        transition: .5s;
    }

    .lnb_p .dep2>li>a {
        font-family: 'pretendard', 'noto sans kr', sans-serif;
        word-break: keep-all;
    }

    .lnb_p .dep2>li.on>a,
    .lnb_p .dep2>li:hover>a {
        color: var(--pt-clr);
    }

    .lnb_p .dep1>li>a:before {
        background: var(--pt-clr);
    }

    #header .lnb_p .dep1>li.on>a,
    #header.on .lnb_p .dep1>li.on>a,
    #header.on .lnb_p .dep1>li:hover>a {
        color: var(--pt-clr)
    }

    #header .lnb_p_bg:after {
        background-image: unset;
    }
}

@media (max-width:1023px) {
    .side_menu .dep1>li>a {
        text-transform: uppercase;
        height: 50px;
        line-height: 50px;
        font-size: 15px;
    }

}


/********************************* fp 수정 *********************************/
#fp-nav ul li .fp-tooltip {
    font-family: 'pretendard' !important;
}

.fp-viewing-1 .lnb_p .dep1>li>a {
    color: #000;
}

.fp-viewing-1 #header .logo h1 span.logo_bk {
    display: table;
}

.fp-viewing-1 #header .logo h1 span.logo_w {
    display: none;
}

.fp-viewing-1 #fp-nav ul li .fp-tooltip {
    color: #273C7C !important;
}

.fp-viewing-2 .lnb_p .dep1>li>a {
    color: #fff;
}

@media (min-width:1024px) {
    .fp-viewing-2 #header .logo h1 span.logo_w {
        display: table;
    }

    .fp-viewing-2 #header .logo h1 span.logo_bk {
        display: none;
    }

    .fp-viewing-2 #header:hover .logo h1 span.logo_w {
        display: none;
    }

    .fp-viewing-2 #header:hover .logo h1 span.logo_bk {
        display: table;
    }
}

.fp-viewing-3 #fp-nav ul li .fp-tooltip {
    color: #273C7C !important;
}

.fp-viewing-3 .lnb_p .dep1>li>a {
    color: #000;
}

.fp-viewing-3 #header .logo h1 span.logo_bk {
    display: table;
}

.fp-viewing-3 #header .logo h1 span.logo_w {
    display: none;
}

.fp-viewing-4 .lnb_p .dep1>li>a {
    color: #000;
}

.fp-viewing-4 #header .logo h1 span.logo_bk {
    display: table;
}

.fp-viewing-4 #header .logo h1 span.logo_w {
    display: none;
}

.fp-viewing-5 .lnb_p .dep1>li>a {
    color: #000;
}

.fp-viewing-5 #header .logo h1 span.logo_bk {
    display: table;
}

.fp-viewing-5 #header .logo h1 span.logo_w {
    display: none;
}


/********************************* footer *********************************/


#footer {
    background: #0a192d;
    padding: clamp(1rem, 1vw, 1rem) 0;
    border-top: none;
}

#footer .f_inner {
    max-width: var(--max-width);
    margin: 0 auto;

}

#footer * {
    font-family: 'pretendard';
    word-break: keep-all;
}

#footer .finfo {
    border-top: 1px solid #ffffff33;
    display: flex;
    justify-content: space-between;
    padding-top: clamp(1.1rem, 2.2vw, 2.2rem);
    margin-top: clamp(1.1rem, 2.2vw, 2.2rem);
}


#footer .finfo p,
#footer .finfo .copyright,
#footer .fnb ul li a {
    font-size: clamp(.9rem, .9vw, .9rem);
    line-height: 1.5em;
    color: #fff;
}




#footer .f_cs_area {
    display: flex;
    justify-content: space-between;
    margin-bottom: clamp(1rem, 1.8vw, 1.8rem);
}

#footer .f_cs_area>* {
    flex-shrink: 0
}

#footer .f_cs_area .logo {
    width: clamp(5rem, 10vw, 10rem);
}

#footer .f_cs_area .f-txt * {
    color: #fff;
}

#footer .f_cs_area .f-txt .txt1 {
    font-size: clamp(.9rem, 1.1vw, 1.1rem);
    font-weight: 600;
    margin-bottom: clamp(.6rem, 1vw, 1rem);
}

#footer .f_cs_area .f-txt .txt_mt {
    margin-top: clamp(1.5rem, 2vw, 2rem);
}

#footer .f_cs_area .fg-1 {
    flex-grow: 1;
}

#footer .f_cs_area .dirc {
    padding-left: clamp(3rem, 5vw, 5rem);
}

#footer .f_cs_area .dirc .addr {
    font-size: clamp(0.9rem, 1vw, 1rem);
}

#footer .f_cs_area .dirc .addr i {
    font-family: "Font Awesome 6 Free";
    font-size: clamp(.9rem, 1vw, 1rem);
    opacity: .6;
}

#footer .f_cs_area .dirc .sns {
    display: flex;
    margin-top: clamp(1rem, 2vw, 2rem);
    display: none;
}

#footer .f_cs_area .dirc .sns a {
    display: block;
    padding-right: clamp(.6rem, .8vw, .8rem);
}

#footer .f_cs_area .dirc .sns a img {
    display: block;
    width: clamp(1.1rem, 1.3vw, 1.3rem);
    object-fit: cover;
    opacity: .7
}



#footer .f_cs_area .cs .num {
    font-weight: 700;
    font-size: clamp(1.8rem, 2.5vw, 2.5rem);
    margin-bottom: clamp(.4rem, 1.1vw, 1.1rem);
    line-height: 1em;
}

#footer .f_cs_area .cs .txt2 {
    font-size: clamp(.8rem, 1vw, 1rem);
    line-height: 1.5em;
    opacity: .7;
}

#footer .f_cs_area .cs .txt2 span {
    padding-right: clamp(1rem, 1.2vw, 1.2rem);
}


#footer .mo-quick {
    display: none;
}

#footer #btn_site_top {
    background: var(--prm-clr)
}


@media (max-width:1600px) {
    #footer .f_inner {width: 90%;}
}

@media (min-width:1024px) {
    #footer .fnb ul {
        text-align: right;
    }
}

@media (max-width:1400px) {
    #footer .f_inner {
        padding: 0 15px
    }
}

@media (max-width:1023px) {
    #footer .f_inner {}
    #footer {
        padding: clamp(3rem, 2vw, 2rem) 0;
    }

    #footer .mo-quick {
        display: block;
        position: fixed;
        z-index: 9999;
        bottom: 60px;
        right: 10px;
    }



    #footer .mo-quick i {
        font-family: "Font Awesome 6 Free";
        width: 45px;
        aspect-ratio: 1/1;
        border-radius: 50%;
        background: #793a10;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.15);
    }


    #footer .f_cs_area {
        flex-direction: column;
        align-items: center;
    }

    #footer .f_cs_area .logo img {
        width: clamp(9rem, 10vw, 11rem);
    }

    #footer .f_cs_area>* {
        text-align: center;
    }

    #footer .f_cs_area .cs {
        margin: clamp(1.3rem, 2vw, 4rem) 0;
    }

    #footer .f_cs_area .dirc {
        padding: 0;
    }

    #footer .f_cs_area .dirc .sns {
        justify-content: center;
    }

    #footer .finfo {
        flex-direction: column-reverse;
    }

    #footer .f_cs_area .dirc .sns a {
        padding: 0 clamp(.8rem, .8vw, 1rem);
    }
}






/************************************** 메인 컨텐츠 **************************************/
.shgroup .sub_top_text_wrap .sub_top_title {
    font-family: 'pretendard', 'noto sans kr', sans-serif;
    font-weight: 600;
    font-size: 54px;
}

.sub_location {
    background: #fff;

}

.sub_location *,
.contents .sub_cont_title {
    font-family: 'pretendard', 'noto sans kr', sans-serif;
}

.sub_location>ul>li>p {
    font-weight: 500;
    font-size: 16px;
    color: #8f8f8f;
}

.sub_location>ul>li.loca_home>p>a:before {
    color: #0000002e
}

.sub_location>ul>li.loca_current>p {
    color: var(--pt-clr);
}

.sub_location>ul>li.snb_on>ul {
    background: #fff;
    border: none;
    box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.1);
}

.sub_location>ul>li.snb_on>ul>li>a {
    font-family: 'pretendard', 'noto sans kr', sans-serif;
    background: #fff;
    padding: 10px 20px;
}


.contents .sub_cont_title {
    padding-bottom: 2em;
    font-weight: 500;
    display: none;
}


#sub_view #container .contents {
    padding: clamp(4rem, 8vw, 8rem) 0 clamp(6rem, 10vw, 10rem);
}



/*스킨 모바일*/
@media (max-width:1380px) {
    .lnb_p {
        max-width: 800px;
    }
}

@media (max-width:1070px) {
    .lnb_p {
        max-width: 600px;
    }

    .lnb_p .dep1>li>a {
        font-size: 16px;
    }
}


#container .mo_call_quick a:before {
    display: none;
}

@media (max-width:1023px) {


    #header .logo h1 img {
        max-height: 36px;
    }

    #header .logo h1 {
        padding: 0 100px 0 15px;
    }

    #viewport #left_side * {
        font-family: 'pretendard';
    }

    #gnb_m {
        display: none;
    }

    .side_menu .dep2>li>a {
        font-size: 15px;
        line-height: 32px;
        height: 32px;
    }


    #main_view #footer * {
        color: #ffffffb3;
    }



    .shgroup .sub_top_text_wrap .sub_top_title {
        font-size: 28px;
    }

    .sub_location>ul>li.snb_on>p {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    #sub_view #container .contents {
        padding: 4em 0;
    }

    #header .right-phone {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 50px;
        width: 50px;
        height: 50px;
        margin: auto;
        border: none;
        background: none;
        font-size: 0;
    }

    #header .right-phone:before {
        content: '\e942';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 25px;
        height: 25px;
        margin: auto;
        font-size: 20px;
        font-family: 'icomoon2';
        color: #fff;
        padding-right: 0;
    }

    #header.on .right-phone:before {
        color: var(--prm-clr);
    }


    /* mo_call_quick */
    .mo_call_quick {
        position: fixed;
        z-index: 9999;
        bottom: 75px;
        right: 10px;
        display: block;
    }

    .mo_call_quick a:before {
        content: '\e942';
        font-size: 16px;
        font-family: 'icomoon2';
        color: #fff;
        background: var(--prm-clr);
        padding: 18px;
        border-radius: 50%;
        box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1);
    }
}


/* 모바일 > pc 유도 */
.pc_info {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #000000b5;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.pc_info .inner {
    color: #fff;
    text-align: center;
    font-family: 'pretendard';
}

.pc_info .inner a {
    color: #fff;
    display: block;
    width: fit-content;
    border: 1px solid #fff;
    border-radius: 4px;
    padding: .3em 1em;
    margin: 1em auto 0;
    font-family: 'pretendard';
}

@media (max-width:1023px) {
    .pc_info {
        display: none;
    }
}




/********************** 메인 공통 ************************/
p,
h2,
h3,
dl,
dd,
dt {
    margin: 0;
    padding: 0;
}

.main_sec {
    box-sizing: border-box;
}

.main_sec * {
    box-sizing: border-box;
    word-break: keep-all;
    color: #000;
}

.main_sec .inner {
    height: 100%;
    max-width: 1580px;
    margin: 0 auto;
}

.main_sec h2 {
    font-family: 'crimson', serif !important;
    font-size: clamp(2.55rem, 6vw, 6rem);
    font-weight: normal;
    margin-bottom: clamp(1rem, 2.3vw, 2.3rem);
    letter-spacing: -0.02em;
}

.main_sec .line {

    width: clamp(2.5rem, 5vw, 5rem);
    background: linear-gradient(45deg, #1a408b, #efefef, #1c956e);
    height: 5px;
    margin-bottom: clamp(1rem, 2.3vw, 2.3rem);
}

.main_sec p {
    font-size: clamp(1rem, 1.05vw, 1.05rem);
    line-height: 1.8em;
    letter-spacing: -0.03em;
    color: #444;
}

.main_sec .en {
    text-transform: uppercase;
    font-size: clamp(.9rem, .9vw, .9rem);
    font-weight: 600;
    margin-bottom: clamp(.5rem, .5vw, .5rem);
    color: #a5caff;
}

.main_sec .vm {
    display: block;
    font-size: clamp(.83rem, .83vw, .83rem);
    text-transform: uppercase;
    font-weight: 400;
    letter-spacing: 0.06em;
    color: #00000087;
    margin-top: clamp(1rem, 1vw, 1rem);
    position: relative;
    width: fit-content;
}

@media (max-width:1600px) {
    .main_sec .inner {width: 90%;}
}

@media (min-width:1024px) {
    .main_sec .vm:after {
        content: '';
        position: absolute;
        width: 0%;
        height: 2px;
        background: var(--prm-clr);
        bottom: 0;
        left: 0;
        transition: .3s;
    }

    .main_sec .vm:hover:after {
        transition: .3s;
        width: 100%;
    }
}

@media (max-width:767px) {
    .main_sec .inner {
        max-width: 90%;
    }
}

/********************** 메인 공통 ************************/



/************************************** 서브 공통 **************************************/
.sub_page * {
    word-break: keep-all;
    box-sizing: border-box;
}

.sub_wrap * {
    word-break: keep-all;
    line-height: 1.7em
}

.sub_page .inner {
    max-width: var(--max-width);
    margin: 0 auto;
}

@media (max-width:1023px) {
    .sub_page .inner {
        padding: 0 15px;
    }
}