@charset "utf-8";

@import url("font.css");
@import url("reset.css");
@import url("common.css");
@import url("form.css");
/* @import url("ui.css"); */


:root {  
    --default_font: "SUIT";
    /* gnb nav style */
    --header_bg:rgba(0,0,0,0);
    --header_bg_line:rgba(255,255,255,.1);
    --depth1_txt:rgba(255,255,255,1);
    --depth2_txt:rgba(255,255,255,1);
    --depth1_hover_txt:rgba(255,255,255,1);
    --depth2_hover_txt:rgba(255,255,255,1);
    --depth1_hover_bg:rgba(0,0,0,.5);
    --depth1_hover_round:0.3rem;   
    --phone_txt:#fff;

    /* mobile nav style */
    --mobile_menu_bg:#232429;
    --mobile_depth1_txt:#fff;
    --mobile_depth2_txt:#fff;
    --hamburger_color:#fff;

    /* location nav style */
    --location_nav_bg:rgba(0,0,0, .5);
    --location_nav_menubg: rgba(73,73,73,.6);
    --location_nav_menuhover: rgba(73,73,73,.8);
}

/**************************************************************
	헤더 /풋터 / 서브 레이아웃 가이드
	변경하지 않는 기본 스타일시트 import
	작성일 : 2024.01.11 / 작성자 : ㈜넥스미디어
**************************************************************/

html, body {
    -webkit-user-select: auto;
    touch-action: auto;
}

header {
    width: 100%;
    /* height: 90px; */
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    z-index: 555;
    overflow: hidden;
    /* transition: 0.3s ease top; */
    background: none;
    transition: all 0.4s;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.hover {background-color:#fff; border-bottom: 1px solid #e5e5e5;}
.sub_wrap header.sticky {
    position: fixed;
    top: 0;
    background: #fff;
    border-bottom: 1px solid #e5e5e5;
    transition: all 0.4s;
}
header .header_con {
    /* max-width: 1800px; */
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 9;
    transition: all 0.4s;
}


header.temp_header_skin1.scrollUp {
    /* transform: translateY(0); */
    transition: all 0.8s;
    background-color: #fff;
    padding: -3rem 3rem 10px;
}
header.temp_header_skin1.scrollUp .header_con {
    padding: 2rem 3rem 2rem;
}
.sub header.temp_header_skin1.scrollUp .header_con {
    padding: 2rem 3rem 2rem;
}
.sub header.temp_header_skin1.scrollUp {
    /* transform: translateY(0); */
    transition: all 0.8s;
    background-color: #fff;
}
header.temp_header_skin1.scrollDown {
    transform: translateY(-100%);
    transition: all 0.5s;
}

header.temp_header_skin1.active.scrollDown,
header.temp_header_skin1.active.scrollUp {
    transform: unset;
    transition-delay: 0s;
    transition-duration: 0s;
}


header.temp_header_skin1.hover {
    background-color: rgba(255, 255, 255, 0.8);
}
header.temp_header_skin1.hover.type-white {
    background-color: rgba(0, 0, 0, 0.8);
}
/* header.temp_header_skin1.hover .header_con::before {
    content: "";
    width: 100%;
    height: 1px;
    background-color: rgba(232, 232, 232, 1);
    position: absolute;
    left: 0;
    right: 0;
    top: 100px;
}
header.temp_header_skin1.hover.type-white .header_con::before {
    background: rgba(0, 0, 0, 0.8);
} */
header.temp_header_skin1 .header_con {
    zoom: 1;
    position: relative;
    max-width: 1720px;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
    z-index: 201;
    padding: 2rem 3rem 10px;
    display: flex;
    justify-content: space-between;
    width: 100%;
}
@media screen and (min-width: 1024px) {
    header.sticky .header_con {
        padding: 20px 3rem;
        transition: all 0.4s;
    }


}

header .header_con h1 {
    position: relative;
    z-index: 9;
}
/* .temp_header_skin1 .header_con h1 a .gnb_logo{
    display: none;

}
.temp_header_skin1 .header_con h1 a .gnb_logo_w{
    display: block;

}
.temp_header_skin1>.hover .header_con h1 a .gnb_logo_w{
    display: block;

}
.temp_header_skin1 .hover .header_con h1 a .gnb_logo{
    display: none;

} */

header .header_con h1 a{
    background-image: url("/resources/img/common/hanulche_logo_w.png");
    width: 193px;
    height: 34px;
    display: block;
    margin-top: 14px;
    background-repeat: no-repeat;
}
header.hover .header_con h1 a{
    background-image: url("/resources/img/common/hanulche_logo.png");
    width: 193px;
    height: 34px;
    display: block;
    margin-top: 14px;
    background-repeat: no-repeat;
}
header.temp_header_skin1.scrollUp .header_con h1 a{
    background-image: url("/resources/img/common/hanulche_logo.png");
    width: 193px;
    height: 34px;
    display: block;
    margin-top: 5px;
    background-repeat: no-repeat;
}
.sub header .header_con h1 a{
    background-image: url("/resources/img/common/hanulche_logo.png");
    width: 193px;
    height: 34px;
    display: block;
    margin-top: 14px;
    background-repeat: no-repeat;
}
header .header_con nav.gnb {
    /* width: 1008px; */
    position: relative;
    z-index: 9;
}
header .header_con nav.gnb .gnb_depth_1 { display: flex; justify-content: space-between;}
header .gnb_depth_1>li { position: relative;}
header .gnb_depth_1>li>a { display: inline-block; padding: 0 30px; white-space: nowrap; width: 100%; text-align: center; }
header .gnb_depth_1>li>a>strong  { font-size: clamp(12px, 1.6vw, 20px); color: #fff; display: inline-block; position: relative; font-weight: 600; padding: 12px 0; }
header.hover .gnb_depth_1>li>a>strong  { font-size: clamp(12px, 1.6vw, 20px); color: #001241; display: inline-block; position: relative; font-weight: 600; padding: 12px 0; }
header.temp_header_skin1.scrollUp .gnb_depth_1>li>a>strong  { font-size: clamp(12px, 1.6vw, 20px); color: #001241; display: inline-block; position: relative; font-weight: 600; padding: 12px 0; }
.sub header .gnb_depth_1>li>a>strong  { font-size: clamp(12px, 1.6vw, 20px); color: #001241; display: inline-block; position: relative; font-weight: 600; padding: 12px 0; }

header .gnb_depth_1>li>a>strong::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 0;
    height: 2px;
    background: #66a8c1;
}
header .gnb_depth_1>li>a>strong.current::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0px;
    left: 0px;
    width: 100%;
    height: 2px;
    background: #66a8c1;
}
header .gnb_depth_2 {
    position: absolute;
    top: 80px;
    width: 100%;
    text-align: center;
    white-space: nowrap;
    display: none;
    z-index: 29;
    left: 0;
    right: 0;
}
header .gnb_depth_2>ul>li>a {
    font-size: clamp(12px, 1.4vw, 16px);
    color: #595959;
    display: inline-block;
    text-align: center;
    width: 100%;
    line-height: 1;
    padding: 0.35rem 0;
    letter-spacing: -1px;
    font-weight: 500;
    font-stretch: condensed;
    word-break: keep-all;
    white-space: normal;
}
header .gnb_depth_2>ul>li>a.current { color: #2d3c46; font-weight: 800; }
header .header_con .util_menu { display: none;}
header .header_con .header_util {
    position: relative;
    z-index: 9;
}
header .header_con .header_util .phone_num {transition: all .3s; width: 175px; }
header .header_con .header_util .phone_num a {
    position: relative;
    color: #fff;
    cursor:default;
    font-size: 24px;
    font-weight: 500;
    /* letter-spacing: -1px; */
    padding: 0 0 0 35px;
    margin: 0 0 4px;
    line-height: 35px;
    display: block;
    margin-top: 5px;
}
header.temp_header_skin1.scrollUp .header_con .header_util .phone_num a {
    position: relative;
    color: #2d3c46;
    cursor:default;
    font-size: 24px;
    font-weight: 500;
    /* letter-spacing: -1px; */
    padding: 0 0 0 35px;
    margin: 0 0 4px;
    line-height: 35px;
    display: block;
    margin-top: 5px;
}
header.hover .header_con .header_util .phone_num a {
    position: relative;
    color: #2d3c46;
    cursor:default;
    font-size: 24px;
    font-weight: 500;
    /* letter-spacing: -1px; */
    padding: 0 0 0 35px;
    margin: 0 0 4px;
    line-height: 35px;
    display: block;
    margin-top: 5px;
}
.sub header .header_con .header_util .phone_num a {
    position: relative;
    color: #2d3c46;
    cursor:default;
    font-size: 24px;
    font-weight: 500;
    padding: 0 0 0 35px;
    margin: 0 0 4px;
    line-height: 35px;
    display: block;
    margin-top: 5px;
}
 header .header_con .header_util .phone_num a::before {
    content: "";
    display: block;
    position: absolute;
    top: 12px;
    left: 5px;
    width: 17px;
    height: 17px;
    background: url("/resources/img/common/icon_june_w.png") no-repeat 0 50%;
}

header.temp_header_skin1.scrollUp .header_con .header_util .phone_num a::before {
    content: "";
    display: block;
    position: absolute;
    top: 12px;
    left: 5px;
    width: 17px;
    height: 17px;
    background: url("/resources/img/common/icon_june.png") no-repeat 0 0;
}
header.hover .header_con .header_util .phone_num a::before {
    content: "";
    display: block;
    position: absolute;
    top: 12px;
    left: 5px;
    width: 17px;
    height: 17px;
    background: url("/resources/img/common/icon_june.png") no-repeat 0 0;
}
.sub header .header_con .header_util .phone_num a::before {
    content: "";
    display: block;
    position: absolute;
    top: 12px;
    left: 5px;
    width: 17px;
    height: 17px;
    background: url("/resources/img/common/icon_june.png") no-repeat 0 0;
}
@media screen and (max-width: 1024px) {
    .sub header .header_con .header_util .phone_num a::before {
        display: none;
    }
}
/* header .header_con .header_util .phone_num a::before {
    content: "";
    display: block;
    position: absolute;
    top: 8px;
    left: 0px;
    width: 127px;
    height: 34px;
    background: url("/resources/img/common/icon_june_w.png") no-repeat 0 50%;
} */
header .header_con .header_util .grand_open {
    display: block;
    width: 100%;
    height: 40px;
    color: #fff;
    font-family: "Montserrat";
    font-size: 20px;
    font-weight: 700;
    line-height: 40px;
    text-align: center;
    border-radius: 5px;
    background: #66a8c1;
}
header .header_con .header_util .util_menu { display: none; }


/* 화이트 컬러 GNB */
header.white h1 a { background: url("/resources/img/common/top_logo_w.png") no-repeat 50% 50%; }
header.white .gnb_depth_1>li>a>strong  { color: #fff; }
header.white .header_con .header_util .phone_num a { color: #fff; }

header.white.hover h1 a { background: url("/resources/img/common/top_logo.png") no-repeat 50% 50%; }
header.white.hover .gnb_depth_1>li>a>strong { color: #001241; }
header.white.hover .header_con .header_util .phone_num a { color: #001241; }

header #navbg {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: none;
    overflow: hidden;
    left: 0;
    top: 0;
    background: #fff;
}
header #navbg::before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 50%;
    transform: translateX(-50%);
    max-width: 1800px;
    width: 100%;
    height: 100%;
    background: url("/resources/img/common/gnb_img.jpg") no-repeat 50px 185px;
    /* background-size: 210px 275px; */
}

@media screen and (max-width: 1800px) {
    /* header #navbg::before {
        width: 100%;
        background: url("/resources/img/common/gnb_img.jpg") no-repeat 20px 125px;  
        background-size: 210px 275px; 
    } */
}
.depth0 li {
    display: flex;
}
.depth0 li a {
    float: left;
    width: 30%;
    color: #2c3b48;
    font-size: 20px;
    line-height: 1.4;
}
.depth1 {
    position: relative;
    float: left;
    width: 70%;
    overflow: hidden;
    display: table;
    table-layout: fixed;
    padding-left: 5%;
}
.depth1::before {
    display: block;
    content: '';
    width: 1px;
    height: 80%;
    background: #abb1b6;
    position: absolute;
    top: 5.8%;
    left: 0;
}

.depth1 li {
    float: left;
    display: table-cell;
    width: 50%;
    margin-bottom: 5px;
}
.depth1 li a {
    width: 100%;
    position: relative;
    display: block;
    padding: 2.5% 10% 2%;
    color: #2c3b48;
    font-size: 16px;
    padding-left: 10px;
    font-weight: bold;
    word-break: keep-all;
    /* white-space: nowrap; */
}
.depth1 li a::before {
    display: inline-block;
    content: '';
    position: absolute;
    top: 14px;
    left: 0;
    width: 2px;
    height: 2px;
    background: #2c3b48;
    border-radius: 50%;
    vertical-align: middle;
    line-height: 12px;
}

header .allmenu_con {
    overflow-y:auto;
    align-items:start;
    flex-direction: column;
    justify-content: space-between;
    background: #fff;
    position: fixed;
    top: 0;
    left: -100%;
    width: 100%;
    overflow: hidden;
    height: 100%;
    z-index: 1;
    display: flex;
    transition: all ease .6s;
    padding:137px 7% 0;
    display: none;
}
@media screen and (max-width:1024px) {
    header .allmenu_con { display: flex; 
    overflow-y: auto;}
}
/* header.nav-mo .allmenu_con::before {
    content: "";
    display: block;
    position: absolute;
    top: 7rem;
    left: 0px;
    width: 100%;
    height: 1px;
    background: #dcdcdc;
} */
header .mobile_gnb { width:100%; opacity:0; transition:opacity ease .3s;}
header .mobile_gnb > ul > li { position:relative; width:100%; margin:15px 0 50px; overflow:hidden;  }
header .mobile_gnb > ul > li > a {font-size:1.3rem; font-weight:600; display:inline-block; color:#2c3b48;  transition: transform ease .7s; padding-bottom: 0.5rem;}
header .mobile_gnb > ul > li > a > strong {word-break: keep-all; font-weight: bold;}



header.nav-mo.active .mobile_gnb {opacity: 1;}
header.nav-mo.active .allmenu_con {left: 0;}
header .hamburger_icon {
    width: 26px;
    height: 22px;
    transition: all .3s;
    z-index: 99;
    align-items: center;
    position: relative;
    justify-content: space-between;
    display: block;
}
header .hamburger_icon i {
    width: 100%;
    height: 2px;
    background-color: #2d3d47;
    display: block;
    transition: transform ease .3s;
}
header .hamburger_icon i:nth-child(2){margin: 8px 0;}
header.active .btn  {padding-top: 22px;}
header.active .btn i {margin:-3px 0;}
header.active .btn i:nth-child(1){transform:rotate(45deg); margin: -12px 0 0;}
header.active .btn i:nth-child(2){display:none;}
header.active .btn i:nth-child(3){transform:rotate(-45deg);  margin: -3px 0 0;}

@media screen and (max-width: 1024px) {
    header {background: #fff; position: fixed; top:0; z-index: 1000;}
    header.temp_header_skin1 .header_con { padding: 1.5rem 2rem; height: 80px; /*height: 7rem; */ border-bottom: 1px solid #dcdcdc; background-color: #fff;}
    header.temp_header_skin1 .header_con .gnb {display: none;}
    header.temp_header_skin1 .header_con .util_menu {
        width: 30px;
        position: relative;
        order: 2;
        display: block;
        display: flex;
        align-items: center;
        order: 0;
    }

    header.temp_header_skin1 .header_con .header_util {
        position: relative;
        z-index: 9;
        order: 2;
    }
    header.temp_header_skin1 .header_con h1 { order: 1; display: flex; }
    header.temp_header_skin1 .header_con h1 a {
        display: block;
        width: 193px;
        aspect-ratio: 1/0.1533;
        height: 34px;
        position: relative;
        background: url(/resources/img/common/hanulche_logo.png) no-repeat 0 100%;
        background-size: 100% auto;
        margin-top: 0;
    }
    .sub header .header_con h1 a {
        display: block;
        width: 193px;
        aspect-ratio: 1/0.1533;
        height: 34px;
        position: relative;
        background: url(/resources/img/common/hanulche_logo.png) no-repeat 0 100%;
        background-size: 100% auto;
    }
    header .header_con h1 a img {
        width: 100%;
        height: auto;
    }
    header .header_con .header_util { order: 2; }
    header .header_con .header_util .phone_num { width: auto; height: 50px; display: flex; align-items: center; justify-content: center;}
    header .header_con .header_util .phone_num img { width: 100%; height: auto; }
    header .header_con .header_util .phone_num a {
        cursor: pointer;
        width: 40px;
        height: 42px;
        overflow: hidden;
        text-indent: -20000px;
        background: url("/resources/img/common/icon_phone_m.png") no-repeat 50% 50%;
        background-size: cover;
    }
    /* header .header_con .header_util .phone_num a {
        cursor: pointer;
        width: 70px;
        height: 100%;
        overflow: hidden;
        text-indent: -20000px;
        background: url("/resources/img/common/icon_june_m.png") no-repeat;
        background-size: auto;
    } */

    header .header_con .header_util .phone_num a { background-size: auto 100%; margin: 0;}
    header .header_con .header_util .phone_num a::before { display: none; }
    header .header_con .header_util .grand_open { display: none; }
}

@media screen and (max-width: 640px) {
    header .header_con { align-items: center; height: 80px; }
    header .allmenu_con::before {
        top: 5.6rem;
    }
    header .header_con .util_menu { width: 26px; height: 22px;}
    header .header_con .util_menu a {
        position: absolute;
        right: 0;
        top: 0;
        width: 26px;
        height: 22px;
        z-index: 9999;
    }
    header .header_con .header_util .phone_num { width: auto; height: 40px; }
    header .header_con .header_util .phone_num a { background-size: auto 100%; margin: 0; width: 34px; height: 30px;}
    header .allmenu_con { padding: 7.5rem 4% 0; }
    
    header.nav-mo .allmenu_con::before {
        top: 5.5rem;
    }
    header .header_con h1 a {
        display: block;
        position: relative;
        background: url(/resources/img/common/hanulche_logo.png) no-repeat 0 100%;
        background-size: 100% auto;
        margin-top: 0;
    }
    .sub header .header_con h1 a {
        display: block;
        position: relative;
        background: url(/resources/img/common/hanulche_logo.png) no-repeat 0 100%;
        background-size: 100% auto;
        margin-top: 0;
    }
}


/* PAGE LOCATION NAV */
.page_location_nav {
    height: 70px;
    text-align: center;
    position: relative;
    z-index: 40;
    width: 100%;
    left: 0;
    right: 0;
    background: #2d3d47;
}
/* .page_location_nav[data-menu="5"] {background-color: #724F49;} */
.page_location_nav.topfix {position: fixed; top: 0; left: 0; right: 0;z-index: 90;}
.page_location_nav nav {font-size: 1rem; text-align: left; white-space: nowrap; position: relative; display: flex; max-width: 1100px; margin: 0 auto;}
.page_location_nav button {border: 0; background: transparent; outline: 0; font-size: 0;}
.page_location_nav .home {display: inline-block; width: 4rem; height: 70px; overflow: hidden; position: relative;border-right: 1px solid rgba(255, 255, 255, 0.3);border-left: 1px solid rgba(255, 255, 255, 0.3);}
.page_location_nav .home a {display: flex; color:#fff; align-items: center; justify-content: center; height: 100%; font-size: 1.1rem; opacity: .5;}
.page_location_nav .path-item {position: relative; min-width: 250px;}
.page_location_nav .path-item dt {
    color: #fff;
    border-bottom: 0;
    border-top: 0;
    height: 70px;
    line-height: 70px;
    font-size: 16px;
    border-right: 1px solid rgba(255,255,255,.3);
}
.page_location_nav nav span.open {margin-left: auto; align-items: center; display: flex;}
.page_location_nav .path-item.path_depth_1 dt {border-left: 0;}
.page_location_nav .path-item dt,
.page_location_nav .path-item li {padding: 0 1.1rem;}
.page_location_nav .path-item ul {position: absolute; left: 0; right: 0; margin-left:-1px;}
.page_location_nav .path-item ul li {line-height: 1.6; padding: 0; text-align: left;}
.page_location_nav .path-item dd {display: none; width: 100%;}
.page_location_nav .path-item li a {
    color: rgba(255,255,255,1);
    display: block;
    position: relative;
    padding: 1rem 1.2rem;
    border-bottom: 1px solid rgba(255,255,255,.2);
    border-left: 1px solid rgba(255,255,255,.2);
    font-size: 0.92rem;
    background: var(--location_nav_menubg);
    transition: all .3s;
}
.page_location_nav .path-item ul li a {background: #2d3d47; opacity: 0.7;}
.page_location_nav .path-item ul li a:hover { opacity: 1;}
.page_location_nav .path-item.path_depth_1 ul {margin-left: 0; }
.page_location_nav .path-item.path_depth_1 li a {border-left: 0;}
.page_location_nav .path-item li.on a {color: rgba(255,255,255,1);}
.page_location_nav .path-item .btn-open,
.page_location_nav .path-item .btn-close {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    white-space: nowrap;
    overflow: hidden;
    cursor: pointer;
}
.page_location_nav .path-item .btn-open:after,
.page_location_nav .path-item .btn-close:after {
    content: "\e878";
    position: absolute;
    top: 1.5rem;
    right: 1rem;
    white-space: nowrap;
    overflow: hidden;
    font-size: 1rem;
    color: #fff;
    font-family: 'Linearicons-Free';
    transition: all .3s cubic-bezier(.25, .46, .45, 1);
}

.page_location_nav .path-item .btn-close {display: none;}
.page_location_nav .path-item .btn-close:after {transform: rotate(180deg);}
.page_location_nav .path-item.active {z-index: 22;}
.page_location_nav .path-item.active .btn-open {display: none;}
.page_location_nav .path-item.active .btn-close {display: block;}


@media screen and (max-width: 1024px) {
    .page_location_nav {height: 3.2rem;}
    .page_location_nav .path-item dt {height: 3.2rem; line-height: 3.2rem;}
    .page_location_nav .home {height: 3.2rem; width: 3.2rem;}
    .page_location_nav .path-item .btn-open:after, .page_location_nav .path-item .btn-close:after {top: 1rem;}
    .page_location_nav .path-item li a {padding: 0.7rem 1rem;}
    .page_location_nav .path-item dt, .page_location_nav .path-item li {font-size: 0.87rem;}
}
@media screen and (max-width: 768px) {
    .page_location_nav .path-item {min-width: auto; flex: 1;}
    .page_location_nav .path-item:last-child dt {border-right: 0;}
}






.sub_top_visual {
    position: relative;
    z-index: 1;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: hidden;
    height: 330px;
    transition: all .3s;
}
.sub_top_visual .sub_top_bg {
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    top: 0;
    z-index: 10;
    background: url("/resources/img/common/bgVisual_0.jpg") no-repeat center center;
    background-size: cover !important;
}
.sub_top_visual h2 {
    padding: 60px 0 0;
    position: relative;
    text-align: center;
    font-weight: 600;
    color: #2d3d47;
    z-index: 20;
    font-size: 35px;
    letter-spacing: -2px;
    font-family: var(--default_font);
}
.sub_top_visual h2 p.t1 { font-weight: 400; display: block; font-size: 36px; }
.sub_top_visual h2 p.t2 { font-weight: 400; display: block; font-size: 48px;}
.sub_top_visual h2 strong { font-weight: 800; }
.sub_top_visual h2 span { font-size: 25px;}

@media screen and (max-width: 1024px) {
    .sub_top_visual {
        height: 45vw;
    }    
    .sub_wrap {padding: 90px 0 0;}
    .sub_top_visual h2 { padding: 0; text-align: center;}
    .sub_top_visual h2 img { width: min(80%, 480px);}

    .sub_top_visual h2 p.t1 { font-size: clamp(12px, 6vw, 36px);}
    .sub_top_visual h2 p.t2 { font-size: clamp(12px, 10vw, 48px);}
    .sub_top_visual h2 span { font-size: clamp(12px, 4vw, 25px);}
}
@media screen and (max-width: 640px) {
    .sub_wrap {padding: 70px 0 0;}
}

/* 아이콘 퀵메뉴 */
.quick_menu {
    position: fixed;
    width: 52px;
    left: 50px;
    bottom: 50px;
    z-index: 333;
    /* margin: 0 0 0 -860px; */
}
.sub_wrap .quick_menu {
    margin: 100px 0 0;
    top: 50%;
    transform: translate(0,-50%);
}
@media screen and (max-width: 1800px) {
    /* .quick_menu {
        left: 0;
        transform: translateX(0);
        margin: 0;
    } */
}
.quick_menu ul li.util a {
    display:inline-block;
    width: 50px;
    height: 50px;
    line-height: 50px;
    position: relative;
    border-radius: 50px;
    color: #fff;
    padding: 0 0 0 50px;
    font-weight: 400;
    transition: all 0.5s;
    overflow: hidden;
    white-space: nowrap;
    background: #fff;
    border: 1px solid #daddde;
}
.quick_menu ul li.util a:hover {
    width: 160px;
    transition: all 0.5s;
}
.quick_menu ul li.util a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 50px;
    height: 50px;
    z-index: 9;
    background: url("/resources/img/common/icon_channel.png") no-repeat 0 0;
}
.quick_menu ul li.util a.channel::before {background: url("/resources/img/common/icon_channel.png") no-repeat 0 0;}
.quick_menu ul li.util a.regist::before {background: url("/resources/img/common/icon_regist.png") no-repeat 0 0;}
.quick_menu ul li.util a.media::before {background: url("/resources/img/common/icon_movie.png") no-repeat 0 0;}
.quick_menu ul li.util a.mall::before {background: url("/resources/img/common/icon_mall.png") no-repeat 0 0;}

.quick_menu ul li.util a.channel:hover::before {background: url("/resources/img/common/icon_channel_w.png") no-repeat 0 0;}
.quick_menu ul li.util a.regist:hover::before {background: url("/resources/img/common/icon_regist_w.png") no-repeat 0 0;}
.quick_menu ul li.util a.media:hover::before {background: url("/resources/img/common/icon_movie_w.png") no-repeat 0 0;}
.quick_menu ul li.util a.mall:hover::before {background: url("/resources/img/common/icon_mall_w.png") no-repeat 0 0;}

.quick_menu ul li.util a.channel:hover { background: #2d3d47; border: 1px solid #2d3d47;}
.quick_menu ul li.util a.regist:hover { background: #2d3d47; border: 1px solid #2d3d47;}
.quick_menu ul li.util a.media:hover { background: #2d3d47; border: 1px solid #2d3d47;}
.quick_menu ul li.util a.mall:hover { background: #6e4731; border: 1px solid #6e4731;}


@media screen and (max-width: 1440px) {
    .quick_menu { display: none; }
}

/* 관심고객 퀵메뉴 */
.regist_quick {
    position: absolute;
    width: 118px;
    height: 200px;
    right: 6%;
    top: 28%;
    z-index: 333;
}
.regist_quick a {
    width: 100%;
    height: 100%;
    display: block;
}

.regist_quick a img {
    width: 100%;
    height: auto;
}
@media screen and (max-width: 1024px) {
    .regist_quick {
        position: fixed;
        right: 10%;
        bottom: 5%;
        top:auto;
        z-index: 22;
        display: none;
    }
}

@media screen and (max-width: 600px) {
    .regist_quick {
        position: fixed;
        right: 10%;
        bottom: 5%;
        top:auto;
        width: 20vw;
        height: auto;
    }
}

/********************************************* 
    풋터
*********************************************/
footer {background:var(--footer_bg); clear: both; padding: 0 4rem; position: relative; width: 100%;}
footer .footer_con { display: flex; justify-content: flex-start; flex-direction: row; padding:3rem 0;}
footer .footer_con .logo_sec {align-items: flex-start; display: flex; padding-right: 40px; padding-top: 10px;}
footer .footer_con .txt_sec {font-size:13px; padding-left:40px; border-left:1px solid rgba(255,255,255,0.2);}
footer .footer_con .txt_sec .summary {padding:5px 0 10px;}
footer .footer_con .txt_sec .summary p {padding: 2px 0; color:var(--footer_comment); font-weight: 100; font-size: 0.92rem; position: relative; padding-left: 1.2rem;}
footer .footer_con .txt_sec .summary p::before { content: "※"; position: absolute; left:0; }

footer .footer_con .txt_sec .cons_info {color:var(--footer_txt);}
footer .footer_con .txt_sec .cons_info p {padding: 3px 0;}
footer .footer_con .txt_sec .cons_info p span {display: inline-block; padding: 0 10px; position: relative;}
footer .footer_con .txt_sec .cons_info p span::before {content: ""; width: 1px; height: 11px; position: absolute; right: 0; top: 5px; background:rgba(255,255,255,.2);}
footer .footer_con .txt_sec .cons_info p span:last-child::before {background: none;}
footer .footer_con .txt_sec .cons_info p span:first-child {padding-left: 0;}
footer .footer_con .copyright {color:var(--footer_copy); font-family: "Roboto", sans-serif; text-transform: uppercase;}
footer .footer_con .link_sec {align-items: center; display: flex; flex-direction: column; justify-content: center; margin-left: auto;}
footer .footer_con .privacy_link {padding-bottom: 2rem;}
footer .footer_con .privacy_link a {
    display: inline-block;
    font-size: 1rem;
    color:var(--footer_link);
    display: inline-block; 
    padding: 0 15px; 
    position: relative;
    transition: all .2s;
}
footer .footer_con .privacy_link a:hover { color:var(--footer_link_hover);}
footer .footer_con .privacy_link a::before {
    content: ""; 
    width: 1px; 
    height: 11px; 
    position: absolute; 
    right: -2px; 
    top: 5px; 
    background:rgba(255,255,255,.2);
}
footer .footer_con .privacy_link a:last-child::before {background: none;}

@media screen and (max-width: 1320px) {
    footer {padding: 0;}
    footer .footer_con .link_sec {justify-content: flex-start;}
    footer .footer_con .privacy_link {display: flex; white-space: nowrap;}
}
@media screen and (max-width: 1127px) {  
    footer .footer_con {display: grid; grid-template-columns: 1fr;}
    footer .footer_con .logo_sec {padding:0 0 1rem 0;}
    footer .footer_con .txt_sec {padding: 0px; border: none;}    
    footer .footer_con .txt_sec .cons_info p {padding: 1px 0;}
    footer .footer_con .txt_sec .summary p {padding-top: 1px; padding-bottom: 1px; font-size: 0.87rem;}
    footer .footer_con .link_sec {grid-row-start: 1;}
    footer .footer_con .privacy_link {padding-bottom: 0;}
}
@media screen and (max-width: 768px) {
    footer .footer_con {padding: 2rem 0;}
    footer .footer_con .logo_sec {justify-content: center; padding-bottom: 1rem;}
    footer .footer_con .txt_sec .cons_info {text-align: center; font-size: 0.92rem;}
    footer .footer_con .copyright {text-align: center;}
    footer .footer_con .txt_sec .summary {text-align: left; word-break: keep-all;}
    footer .footer_con .link_sec {padding-bottom: 1rem;}    
    footer .footer_con .copyright {font-size: 0.87rem;}
}
@media screen and (max-width: 480px) {
    footer .footer_con .link_sec {grid-row-start: auto;  margin-left: inherit; padding:1rem 0 0;}
}
@media screen and (max-width: 640px) and (orientation:portrait) {
    .mob_bottom_banner {
        display: block;
        position: fixed; 
        bottom: 0; 
        z-index: 999;
        left: 0;
        right: 0;
        height: 18vw;
    }
    .mob_bottom_banner ul {
        display: flex; 
        width: 100%; 
    }
    .mob_bottom_banner ul li { width: 33.3333%;}
    .mob_bottom_banner ul li img { width: 100%; }

}
/* 푸터SNS */
#footer .f-inner .r-box .sns-utils ul li a.b-btn {
    background-image: url(/resources/img/common/blog.jpg);
    background-size: contain;
}

#footer .f-inner .r-box .sns-utils ul li a.b-btn:hover {
    background-image: url(/resources/img/common/blog_on.jpg);
    background-size: contain;
}

#footer .f-inner .r-box .sns-utils ul li a.y-btn {
    background-image: url(/resources/img/common/youtube.jpg);
    background-size: contain;
}

#footer .f-inner .r-box .sns-utils ul li a.y-btn:hover {
    background-image: url(/resources/img/common/youtube_on.jpg);
    background-size: contain;
}

#footer .f-inner .r-box .sns-utils ul li a.i-btn {
    background-image: url(/resources/img/common/insta.jpg);
    background-size: contain;
}

#footer .f-inner .r-box .sns-utils ul li a.i-btn:hover {
    background-image: url(/resources/img/common/insta_on.jpg);
    background-size: contain;
}

#footer .f-inner .r-box .sns-utils ul li a.p-btn {
    background-image: url(/resources/img/common/plus.jpg);
    background-size: contain;
}

#footer .f-inner .r-box .sns-utils ul li a.p-btn:hover {
    background-image: url(/resources/img/common/plus_on.jpg);
    background-size: contain;
}

#footer {
    position: relative;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 340px;
    overflow: hidden;
    background: #28313a;
    transition: all 0.8s;
    z-index: 999;
    /* margin-top:-4.8px; */
}
.sub #footer {
    position: absolute;
    left: 0;
    bottom: auto !important;
    width: 100%;
    height: 340px;
    overflow: hidden;
    background: #28313a;
    transition: all 0.8s;
    z-index: 999;
    /* margin-top:-4.8px; */
}
#footer.on {
    bottom: 0;
    transition: all 0.8s;
}

#footer .f-inner {
    width: 1140px;
    margin: 0 auto;
    padding: 26px 0 37px;
}

#footer .f-inner:after {
    display: block;
    content: '';
    clear: both;
}

#footer .f-inner .r-box {
    float: right;
    text-align: right;
}


#footer .f-inner .r-box .sns-utils {
    margin: 37px 0 0;
}

#footer .f-inner .r-box .sns-utils ul {
    display: inline-block;
}

#footer .f-inner .r-box .sns-utils ul li {
    float: left;
    margin: 0 0 0 8px;
}

#footer .f-inner .r-box .sns-utils ul li:first-child {
    margin: 0;
}

#footer .f-inner .r-box .sns-utils ul li a {
    display: block;
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    font-size: 0;
    text-indent: -9999em;
    transition: background .3s;
}

#footer .f-inner .r-box .kolong-logo {
    margin: 58px 0 0;
    text-align: right;
}

#footer .f-inner .r-box .kolong-logo a {
    display: inline-block;
}

#footer .f-inner .r-box .kolong-logo a img {
    width: 90px;
}

#footer .f-inner .l-box {
    float: left;
}

#footer .f-inner .l-box .f-menu {}

#footer .f-inner .l-box .f-menu ul {
    overflow: hidden;
}

#footer .f-inner .l-box .f-menu ul li {
    float: left;
    position: relative;
    margin: 0 0 0 40px;
}

#footer .f-inner .l-box .f-menu ul li:first-child {
    margin: 0;
}

#footer .f-inner .l-box .f-menu ul li:before {
    display: block;
    content: '';
    position: absolute;
    top: 8px;
    left: -21px;
    width: 1px;
    height: 13px;
    background: #4e5a65;
}

#footer .f-inner .l-box .f-menu ul li:first-child:before {
    display: none;
}

#footer .f-inner .l-box .f-menu ul li a {
    display: inline-block;
    font-size: 17px;
    line-height: 27px;
    color: #dddddd;
}

#footer .f-inner .l-box .f-info {
    position: relative;
    margin: 35px 0 0;
    padding: 0 0 0 70px;
}

#footer .f-inner .l-box .f-info .f-logo {
    position: absolute;
    top: 15%;
    left: 0;
    width: 50px;
    height: 50px;
    margin: -25px 0 0;
}

#footer .f-inner .l-box .f-info .f-logo img {
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
}

#footer .f-inner .l-box .f-info .info-box {}

#footer .f-inner .l-box .f-info .info-box>div {
    font-size: 15px;
    line-height: 27px;
    color: #dddddd;
}

#footer .f-inner .l-box .f-info .info-box>div .br {
    display: none;
}

#footer .top-trg {
    position: fixed;
    bottom: -9999px;
    right: 50%;
    z-index: 99;
    width: 50px;
    height: 50px;
    margin: 0 -655px 0 0;
    opacity: 0;
    transition: opacity .3s;
}

#footer .top-trg.on {
    bottom: 79px;
    opacity: 1;
}

#footer .top-trg.fixed {
    position: absolute;
    top: -85px;
}

#footer .top-trg>img {
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 1024px) {

    #footer {
        position: relative;
        left: 0;
        width: 100%;
        height: 105vw;
        overflow: hidden;
        background: #28313a;
        transition: all 0.8s;
        z-index: 999;
        /* margin-top:-4.8px; */
    }
    .sub #footer {
        position: absolute;
        left: 0;
        bottom: auto !important;
        width: 100%;
        height: 500px;
        overflow: hidden;
        background: #28313a;
        transition: all 0.8s;
        z-index: 999;
        /* margin-top:-4.8px; */
    }
    #footer .f-inner {
        /* width: 750px; */
        width: 100%;
        padding: 30px 20px;
    }

    #footer .f-inner .r-box {
        overflow: hidden;
    	        float: none;
    	    }
    
    	    #footer .f-inner .r-box .cs-trg {
    	        float: left;
    	        padding: 0 0 0 40px;
    	        background-size: 29px;
    	        font-size: 30px;
    	        line-height: 45px;
    	    }
    
    	    #footer .f-inner .r-box .sns-utils {
    	        float: right;
    	        margin: 0;
    	    }
    
    	    #footer .f-inner .r-box .sns-utils ul li {
    	        margin: 0 0 0 2vw;
    	    }
    
    	    #footer .f-inner .r-box .sns-utils ul li a {
    	        width: 6vw;
    	        height: 6vw;
    	    }
    
    	    #footer .f-inner .r-box .kolong-logo {
    	        float: right;
    	        margin: 0;
    	    }
    
    	    #footer .f-inner .r-box .kolong-logo a {
    	        padding: 16px 0;
    	    }
    
    	    #footer .f-inner .r-box .kolong-logo a img {
    	        width: 135px;
    	    }
    
    	    #footer .f-inner .l-box {
    	        float: none;
    	        margin: 10px 0 0;
    	        padding: 10px 0 0;
    	        border-top: 2px solid #37414b;
    	    }
    
    	    #footer .f-inner .l-box .f-menu {
    	        text-align: center;
    	    }
    
    	    #footer .f-inner .l-box .f-menu ul {
    	        display: inline-block;
    	    }
    
    	    #footer .f-inner .l-box .f-menu ul li {
    	        margin: 0 0 0 20px;
    	    }
    
    	    #footer .f-inner .l-box .f-menu ul li a {
    	        font-size: 3.5vw;
    	        line-height: 35px;
    	        font-weight: bold;
    	    }
    
    	    #footer .f-inner .l-box .f-menu ul li:before {
    	        width: 2px;
    	        height: 15px;
    	        background: #4e5a66;
    	        left: -10px;
    	    }
    
    	    #footer .f-inner .l-box .f-info {
    	        margin: 10px 0 0;
    	        padding: 0;
    	    }
    
    	    /* #footer .f-inner .l-box .f-info .f-logo {
            width: 12vw;
            height: 12vw;
            margin: -8vw 0 0;
            top:70%;
        } */
    	    #footer .f-inner .l-box .f-info .f-logo {
    	        display: none;
    	    }
    
    	    #footer .f-inner .l-box .f-info .info-box>div {
    	        font-size: 2.5vw;
    	        line-height: 5vw;
    	        letter-spacing: -1px;
    	        font-weight: 500;
    	        word-break: keep-all;
    	    }
    
    	    #footer .f-inner .l-box .f-info .info-box>.ori {
    	        margin-top: 1vw;
    	    }
    
    	    #footer .f-inner .l-box .f-info .info-box>div .br {
    	        display: block;
    	    }
    
    	    #footer .f-inner .l-box .f-info .info-box>div.copy {
    	        margin: 12px 0 0;
    	    }
    
    	    #footer .f-inner .l-box .f-info .info-box>div img {
    	        width: 16vw;
    	    }
    
    	    #footer .top-trg {
    	        right: 0;
    	        width: 100px;
    	        height: 100px;
    	        margin: 0;
    	    }
    
    	    #footer .top-trg.fixed {
    	        position: absolute;
    	        top: -100px;
    	    }
    	}
    
    	@media screen and (max-height: 700px) {
    	    #footer {
    	        margin-top: -10px;
    	    }
    	}



/*********************************************
    TOP 버튼
*********************************************/
#goTop {position: absolute; right: 0; top: 0; z-index:999; }
#goTop.on {position: fixed;}
#goTop.stop {position: absolute !important;}
#goTop a {
    width: 12vw;
    height: 12vw;
    max-width: 50px;
    max-height: 50px;
    border-radius: 100%;
    text-align: center;
    transition: all .3s;
    z-index: 20;
    background: url("/resources/img/common/go_top.png") no-repeat 50% 50%;
    background-size: 100% auto;
    font-weight: 600;
    display: inline-block;
    padding-top: 1rem;
    text-indent: -20000px;
    overflow: hidden;
}
#goTop a i {display: block; font-size: 1rem;}
@media screen and (max-width: 1025px) {
    #goTop { top: -100px; }
}
@media screen and (max-width: 640px) {
    #goTop {right: 1rem; top: 0; }
    #goTop a {
        width: 15vw;
        height: 15vw;
        border-radius: 15vw;
        padding-top: 2vw;
        font-size: 0.87rem;
    }
    #goTop a i {font-size: 0.9rem;}
}

/* 공통 */
/* #wrap { min-width: 1440px; margin: 0 auto; } */
#wrap.sub_wrap { max-width: 100%; }
@media screen and (max-width: 1024px) {
    #wrap { min-width: auto; padding-top: 80px;}
}




.ad_bar_pc {
    width: 100%;
    height: 146px;
    position: fixed;
    display: block;
    z-index: 9999;
    background-image: url("/resources/img/main/ad_bar.jpg") ;
    background-size: 100% auto;
    background-position: center;
}
.ad_bar_pc a{
    position: absolute; right:0; top:30%; width: 5%; height: 62px; overflow: hidden;
}
.ad_bar_mo {display: none;}
@media screen and (max-width: 1024px) {
    .ad_bar_pc {display: none;}
    .ad_bar_mo {
        width: 100%;
        height: 31vw;
        position: fixed;
        display: block;
        z-index: 9999;
        background-image: url("/resources/img/main/m_ad_bar.jpg");
        background-size: cover;
        top: 0;
    }
    .ad_bar_mo a{
        position: absolute; right:0; top:5%; width: 12%; height: 38px; overflow: hidden;
    }
}

/* 스와이퍼도 살리고 user-scalable도 살림 */ 
/* .swiper-horizontal {
    touch-action: pan-y pinch-zoom !important;
    user-select: auto !important;
} */

/*
.swiper-horizontal {
    touch-action: pan-y; // 해당 부분이 있으면 스와이퍼 영역은 모바일 확대/축소 기능이 작동을 안함
    touch-action: auto; // 해당 부분은 모바일 확대/축소 기능은 되지만 스와이퍼가 제대로 동작을 안함
}
*/