@charset "utf-8";

/* @import url("common.css"); */

@import url("font.css");
@import url("reset.css");
@import url("common.css");
@import url("form.css");

/* 공통 변수 */
:root {
    --main-color: #015152;
}

/*********************************************
    브레드크럼 (Breadcrumbs) 네비게이션
    사용자의 현재위치 / 사이트 이동경로
*********************************************/
.page_location_nav {
    display: block;
    height: 4rem;
    text-align: center;
    position: relative;
    z-index: 40;
    width: 100%;
    left: 0;
    right: 0;
    margin-top: 4rem;
    /* background: #015152; */
    transition: all 0.4s;
}

.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;
    align-items: center;
    justify-content: flex-end;
    max-width: 1200px;
    margin: 0 auto;
}

.page_location_nav button {
    border: 0;
    background: transparent;
    outline: 0;
    font-size: 0;
}

.page_location_nav .home {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 15px;
    padding-right: 15px;
    position: relative;
}

.page_location_nav .home::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 0.5px;
    height: 13px;
    background-color: #333;
}

.page_location_nav .home a {
    display: flex;
    color: #fff;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
    font-size: 1.1rem;
}

.page_location_nav .path-item {
    position: relative;
    min-width: 160px;
}

.page_location_nav .path-item.path_depth_2 {
    min-width: 283px;
}

.page_location_nav .path-item dt {
    border-bottom: 0;
    border-top: 0;
    height: 40px;
    color: #000;
    font-family: SUIT;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    display: flex;
    align-items: center;
}

.page_location_nav .path-item dt span br {
    display: none;
}

.page_location_nav .path-item.path_depth_2 dt span br {
    display: block;
}

.page_location_nav .path-item.path_depth_2 dt {
    height: 40px;
    display: flex;
    align-items: center;
}

.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-left: 20px;
}

.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, .7);
    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 li a br {
    display: none;
}

.page_location_nav .path-item li a:hover {
    background: var(--location_nav_menuhover);
    border-bottom: 1px solid rgba(255, 255, 255, 0);
}

.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: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    width: 10px;
    height: 10px;
    background: url("/resources/img/common/arrow.svg") no-repeat center / contain;
    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: translateY(-50%) 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 {
        margin-top: 30px;
        height: auto;
    }
    .page_location_nav nav {
        padding: 0 16px;
    }


    .page_location_nav .path-item.path_depth_2 {
        min-width: auto;
    }

    .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: 14px;
    }

    .page_location_nav .path-item li a {
        word-break: keep-all;
        white-space: pre-wrap;
    }

    .page_location_nav .path-item:last-child dt {
        min-height: unset;
        height: 3.2rem;
    }
}

@media screen and (max-width: 768px) {
    .page_location_nav .path-item {
        min-width: auto;
        flex: 1;
    }
    .page_location_nav .path-item.path_depth_1 {flex: 0.7;}

    .page_location_nav .path-item:last-child dt {
        border-right: 0;
    }
}


/*********************************************
    헤더
*********************************************/
.temp_header_skin1 {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    z-index: 500;
    transition: all 1s;
    height: 90px;
}

.temp_header_skin1 .logo {
    transition: all 0.3s;
}

.temp_header_skin1 .logo svg {
    width: 100%;
    height: auto;
}

.temp_header_skin1 .logo svg path {
    transition: all 0.3s;
}

.temp_header_skin1 .header_con {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 60px;
    position: relative;
    gap: 90px;
    height: 90px;
    transition: all 0.4s;
}


.temp_header_skin1 .header_con::after {
    position: absolute;
    content: "";
    width: 0%;
    height: 1px;
    background: #ddd;
    transition: all 0.3s;
    left: 0;
    bottom: 0;
    margin: auto;
}


/* .temp_header_skin1:hover .header_con::after{width: 100%;} */
.temp_header_skin1 .header_con .gnb {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.temp_header_skin1 .header_con .logo_wrap {
    display: flex;
    align-items: center;
    gap: 30px;
}

.temp_header_skin1 .header_con .logo {
    flex-shrink: 0;
}

.temp_header_skin1 .header_util {
    display: flex;
    align-items: center;
    gap: 48px;
}

.temp_header_skin1 .header_con .gnb_depth_1 {
    display: flex;
    align-items: center;
    gap: 0;
}

.temp_header_skin1 .header_con .gnb_depth_1>li {
    position: relative;
    transition: all 0.5s;
}

.temp_header_skin1 .header_con .gnb_depth_1>li>a>strong::after {
    position: absolute;
    content: "";
    transform: scaleX(0);
    width: 100%;
    margin: auto;
    height: 3px;
    background: #fff;
    transition: all 0.3s;
    left: 0;
    right: 0;
    bottom: 6px;
    z-index: 1;
}

.temp_header_skin1 .header_con .gnb_depth_1>li:hover>a>strong::after {
    transform: scaleX(1);
}

.temp_header_skin1 .header_con .gnb_depth_1>li>a {
    color: #111;
    font-size: 17px;
    position: relative;
    padding: 17px 50px 40px;
    white-space: nowrap;
    transition: all 0.3s;
}
.subscription .temp_header_skin1 .header_con .gnb_depth_1>li>a,
.masterplan .temp_header_skin1 .header_con .gnb_depth_1>li>a,
.unitplan .temp_header_skin1 .header_con .gnb_depth_1>li>a,
.register .temp_header_skin1 .header_con .gnb_depth_1>li>a,
.subscription .temp_header_skin1 .header_util .phone_num a,
.masterplan .temp_header_skin1 .header_util .phone_num a,
.unitplan .temp_header_skin1 .header_util .phone_num a,
.register .temp_header_skin1 .header_util .phone_num a  {color: #fff;}

.temp_header_skin1.on .header_util .phone_num a {color: #111 !important;}

.temp_header_skin1 .header_con .gnb_depth_1>li>a>strong {
    font-weight: 400;
}

.temp_header_skin1 .header_util .phone_num a {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 24px;
    color: #111;
    font-weight: 700;
}

.temp_header_skin1 .header_util .phone_num .top_tel {
    text-align: center;
}

.temp_header_skin1 .header_util .phone_num .top_tel svg {
    align-self: flex-start;
    margin-top: 5px;
}


.subscription .temp_header_skin1 .header_util .top_tel svg path,
.masterplan .temp_header_skin1 .header_util .top_tel svg path,
.unitplan .temp_header_skin1 .header_util .top_tel svg path,
.register .temp_header_skin1 .header_util .top_tel svg path {
    stroke: #fff;
}

.temp_header_skin1 .header_util .top_tel svg path,
.temp_header_skin1.on .header_util .top_tel svg path {
    stroke: #222;
}
.temp_header_skin1.active .header_util .top_tel svg path {
    stroke: #fff !important;
}

.temp_header_skin1 .header_util .phone_num .top_tel small {
    font-size: 15px;
    opacity: 0.5;
    font-weight: 600;
}

.temp_header_skin1 .logo svg path {
    fill: var(--main-color);
}

.subscription .temp_header_skin1 .logo svg path,
.masterplan .temp_header_skin1 .logo svg path,
.unitplan .temp_header_skin1 .logo svg path,
.register .temp_header_skin1 .logo svg path {
    fill: #fff;
}

.temp_header_skin1 .header_con .gnb_depth_2 {
    position: absolute;
    display: block !important;
    top: 94px;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s;
}

.temp_header_skin1:hover .header_con .gnb_depth_2 {
    opacity: 1;
    visibility: visible;
}

.temp_header_skin1 .header_con .gnb_depth_2>ul {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 25px;
}

.temp_header_skin1 .header_con .gnb_depth_2>ul>li {
    text-align: center;
}

.temp_header_skin1 .header_con .gnb_depth_2>ul>li>a {
    font-size: 16px;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    position: relative;
    display: block;
}

.temp_header_skin1 .header_con .gnb_depth_2>ul>li>a::after {
    position: absolute;
    content: "";
    width: 0%;
    height: 1px;
    background: #fff;
    transition: all 0.3s;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

/* 
.temp_header_skin1 .header_con .gnb_depth_2>ul>li>a:hover::after {
    width: 100%;
} */

.temp_header_skin1 .header_con .gnb_depth_2>ul>li>a i {
    font-style: normal;
    font-size: 12px;
    display: none;
}

.temp_header_skin1.scrollDown {
    transform: translateY(-130%);
}

.temp_header_skin1.scrollTop {
    transform: translateY(0);
}

.temp_header_skin1.on {
    background: #fff;
}


.temp_header_skin1.on.scrollUp {
    box-shadow: none;
}

@media screen and (min-width: 1025px) {
    .temp_header_skin1:hover {
        background: #fff;
        height: 500px;
        box-shadow: 0px 0px 40px rgba(0, 0, 0, 0.3);
    }

    .temp_header_skin1:hover .header_con::after {
        width: 100%;
    }

    .temp_header_skin1:hover .logo svg path {
        fill: var(--main-color);
        transition: all 0.3s;
    }

    .temp_header_skin1:hover .header_con .gnb_depth_2>ul>li>a,
    .temp_header_skin1:hover .header_con .gnb_depth_1>li>a {
        color: #222;
    }

    .temp_header_skin1:hover .header_con .gnb_depth_1>li>a>strong::after {
        background: var(--main-color);
    }

    .temp_header_skin1:hover .header_util .top_tel svg path {
        stroke: #222;
        transition: all 0.3s;
    }

    .temp_header_skin1:hover .header_util .phone_num a {
        color: #222;
        transition: all 0.3s;
    }

    .temp_header_skin1 .header_con .gnb_depth_2>ul>li>a:hover {
        color: var(--main-color);
    }
}

@media screen and (min-width: 2500px) {
    .temp_header_skin1 .header_con .gnb_depth_1>li>a {
        font-size: 22px;
    }

    .temp_header_skin1 .header_util .phone_num a {
        font-size: 27px;
    }
}

.allmenu_con {
    display: none;
}

@media screen and (max-width: 1680px) {
    .temp_header_skin1 .header_con .gnb_depth_1>li>a {
        padding: 17px 34px;
        font-size: 16px;
    }

    .temp_header_skin1 .header_util .phone_num a {
        font-size: 16px;
    }

}

@media screen and (max-width: 1440px) {
    .temp_header_skin1 .header_con {
        padding: 28px 40px;
    }

    .temp_header_skin1 .header_con .logo_wrap {
        gap: 20px;
        
    }

    .temp_header_skin1 .header_con .gnb_depth_1>li>a {
        padding: 17px 2.7vw 39px;
    }
}

@media screen and (max-width: 1300px) {
    .temp_header_skin1 .header_con {
        padding: 28px 14px;
    }

    .temp_header_skin1 .header_con .gnb_depth_1>li>a {
        padding: 17px 16px 39px;
    }
}

@media screen and (min-width: 1025px) {
    .temp_header_skin1 .util_menu {
        display: none;
    }
}

@media screen and (max-width: 1024px) {
    .temp_header_skin1 {
        height: unset;
    }

    .temp_header_skin1 .logo {
        width: 110px;
    }

    .temp_header_skin1 .header_con {
        padding: 0 15px;
        height: 60px;
        z-index: 2;
    }

    .temp_header_skin1 .header_con::after {
        display: none;
    }

    .temp_header_skin1 .header_con .gnb {
        display: none;
    }

    .temp_header_skin1 .header_con .open_txt {
        color: #FFF;
        font-size: 14px;
        font-weight: 600;
        letter-spacing: -0.35px;
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
    }

    .temp_header_skin1 .header_util {
        display: flex;
        align-items: center;
        gap: 17px;
        position: absolute;
        right: 13px;
    }

    .temp_header_skin1 .header_util .phone_num .top_tel svg {
        margin-top: 0;
    }

    #mGnbBtn {
        width: 30px;
        height: 30px;
        display: block;
    }

    .hamburger_icon {
        width: 100%;
        height: 100%;
        position: relative;
    }

    .hamburger_icon i {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: auto;
        width: 20px;
        height: 2px;
        background: #000;
        transition: all 0.3s;
    }

    .subscription .hamburger_icon i,
    .masterplan .hamburger_icon i,
    .unitplan .hamburger_icon i,
    .register .hamburger_icon i,
    .temp_header_skin1.active .hamburger_icon i,
    .main .temp_header_skin1 .hamburger_icon i {background: #fff !important;}
    .temp_header_skin1.header_active .hamburger_icon i {background: #fff !important;}
    .temp_header_skin1.on .hamburger_icon i,
    .temp_header_skin1.header_active .hamburger_icon i {background: #000 !important;}
    .hamburger_icon i:nth-child(1) {
        transform: translateY(-6px);
    }

    .hamburger_icon i:nth-child(2) {
        transform: translateY(0);
    }

    .hamburger_icon i:nth-child(3) {
        transform: translateY(6px);
    }

    .mobile_gnb_open .hamburger_icon i:nth-child(1) {
        transform: translateY(0px) rotate(45deg);
    }

    .mobile_gnb_open .hamburger_icon i:nth-child(2) {
        opacity: 0;
    }

    .mobile_gnb_open .hamburger_icon i:nth-child(3) {
        transform: translateY(0px) rotate(-45deg);
    }

    .allmenu_con {
        display: block !important;
        position: fixed;
        top: 0;
        right: 0;
        /* background: #015152; */
        width: 100vw;
        height: 100vh;
        pointer-events: none;
        transition: all 0.5s;
        /* transform: translateX(100%); */
    }

    .allmenu_con:before {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        border-radius: 50%;
        background-color: #015152;
        right: 0;
        transform: center center;
        top: -100%;
        z-index: -1;
        transition: 1.0s cubic-bezier(.641, .005, .095, 1.05);
        pointer-events: none;
    }

    .temp_header_skin1.active .allmenu_con {
        /* transform: translateX(0); */
    }

    .temp_header_skin1.active .allmenu_con:before {
        width: 100%;
        top: 0;
        border-radius: 0;
        transition: 0.8s cubic-bezier(.41, .005, .095, 0.95);
        pointer-events: none;
    }

    .allmenu_con .mobile_gnb {
        padding: 100px 50px;
        height: 100%;
        display: flex;
        align-items: center;
        pointer-events: none;
    }

    .allmenu_con .mobile_gnb .depth0 {
        display: flex;
        flex-direction: column;
        gap: 32px;
        /* opacity: 0; */
        /* transition: all 1s; */
    }

    .temp_header_skin1.active .allmenu_con .mobile_gnb .depth0 {
        /* opacity: 1; */
    }

    .allmenu_con .mobile_gnb .depth0>li>a {
        font-size: 24px;
        color: #fff;
    }

    .allmenu_con .mobile_gnb .depth0>li {
        opacity: 0;
        visibility: hidden;
        transition: all 1s;
        transition-delay: 0.6s;
        transform: translateY(-30px);
    }

    .temp_header_skin1.active .allmenu_con {
        pointer-events: auto;
    }

    .temp_header_skin1.active .allmenu_con .mobile_gnb {
        pointer-events: auto;
    }

    .temp_header_skin1.active .allmenu_con .mobile_gnb .depth0>li {
        opacity: 1;
        transform: translateY(0);
        visibility: visible;
    }

    .temp_header_skin1 .allmenu_con .mobile_gnb .depth0>li:nth-child(2) {
        transition-delay: 0.7s;
    }

    .temp_header_skin1 .allmenu_con .mobile_gnb .depth0>li:nth-child(3) {
        transition-delay: 0.8s;
    }

    .temp_header_skin1 .allmenu_con .mobile_gnb .depth0>li:nth-child(4) {
        transition-delay: 0.9s;
    }

    .temp_header_skin1 .allmenu_con .mobile_gnb .depth0>li:nth-child(5) {
        transition-delay: 1s;
    }

    .temp_header_skin1 .allmenu_con .mobile_gnb .depth0>li:nth-child(6) {
        transition-delay: 1.1s;
    }

    .temp_header_skin1 .allmenu_con .mobile_gnb .depth0>li:nth-child(7) {
        transition-delay: 1.2s;
    }


    .temp_header_skin1:not(.active) .allmenu_con .mobile_gnb .depth0>li {
        transition: 0.4s !important;
    }

    .allmenu_con .mobile_gnb .depth0>li>.depth1 {
        padding-top: 20px;
        /* padding-top: 0; */
        display: none;
    }

    .allmenu_con .mobile_gnb .depth0>li>.depth1>li~li {
        margin-top: 10px;
    }

    .allmenu_con .mobile_gnb .depth0>li>.depth1>li>a {
        font-size: 18px;
        color: #fff;
        padding-left: 20px;
    }

    .allmenu_con .mobile_gnb .depth0>li>.depth1>li>a br {
        display: none;
    }

    .allmenu_con .mobile_gnb .depth0>li>.depth1>li>a i {
        font-style: normal;
        font-size: 18px;
        display: none;
    }
}

@media screen and (max-width: 550px) {
    .temp_header_skin1 .header_con .open_txt {
        position: relative;
        left: 0;
        transform: unset;
    }
}

@media screen and (max-width: 480px) {
    .allmenu_con .mobile_gnb .depth0 {
        gap: 24px;
    }

}
/*********************************************
    푸터
*********************************************/
.footer_container {
    position: relative;
    z-index: 2;
    background: #000;
    color: #fff;
}

.footer_container .footer_inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 48px;
    max-width: 1600px;
    margin: 0 auto;
    padding: 118px 60px 60px;
    position: relative;
    transition: all 0.3s;
}

.footer_container .footer_left {
    display: flex;
    gap: 48px;
    align-items: flex-start;
    /* opacity: 0.5; */
    flex: 1;
    transition: all 0.3s;
    min-width: 0;
}

.footer_container .logo_wrap {
    display: flex;
    flex-direction: column;
    gap: 32px;
    align-items: flex-start;
    flex-shrink: 0;
    width: 161px;
}

.footer_container .logo_wrap .logo {
    display: block;
    width: 161px;
    transition: all 0.3s;
}

.footer_container .logo_wrap .logo img {
    display: block;
    width: 100%;
    height: auto;
}

.footer_container .btn_term {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 150px;
    height: 32px;
    border: 1px solid #fff;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.4px;
    line-height: 1;
}

/* 

.footer_container .btn_term.ani_rolling {
    position: relative;
    overflow: visible;
    align-items: flex-start;
}

.footer_container .btn_term.ani_rolling .rolling_wrap {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 32px;
    line-height: 1;
    transition: transform 0.4s;
    transform: translateY(0);
    text-align: center;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.footer_container .btn_term.ani_rolling .rolling_wrap span {
    display: block;
    height: 32px;
    line-height: 32px;
    transition: all 0.3s;
    flex-shrink: 0;
} */

.footer_container .footer_txt {
    display: flex;
    flex-direction: column;
    gap: 30px;
    min-width: 0;
    transition: all 0.3s;
}

.footer_container .company_line,
.footer_container .agency_line,
.footer_container .summary_wrap,
.footer_container .copyright {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.8;
    transition: all 0.3s;
    text-align: left;
}

.footer_container .company_line .bar {
    display: inline-block;
    width: 24px;
    transition: all 0.3s;
}

.footer_container .summary_wrap p+p {
    margin-top: 0;
}

.footer_container .copyright {
    line-height: 1;
    transition: all 0.3s;
}

.footer_container .footer_right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 29px;
    flex-shrink: 0;
    margin-top: 130px;
    transition: all 0.3s;
}

.footer_container .tell_wrap {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    white-space: nowrap;
}

.footer_container .tell_wrap .label {
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.8px;
}

.footer_container .tell_wrap .tel {
    font-size: 24px;
    font-weight: 700;
    line-height: 1;
    color: #fff;
}

.footer_container .tell_wrap .tel small {
    display: block;
    font-size: 16px;
    margin-top: 4px;
    font-weight: 600;
    opacity: 0.5;
}

.footer_container .sns_list {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 15px;
}

.footer_container .sns_list a {
    display: block;
    width: 60px;
    height: 60px;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s;
    background: rgba(255, 255, 255, 0.20);
}

.footer_container .sns_list img {
    display: block;
    width: 100%;
    height: 100%;
}

.footer_container .btn_top {
    position: absolute;
    top: 60px;
    right: 60px;
}

.footer_container .btn_top a {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}

.footer_container .btn_top .txt {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 7px;
    color: #fff;
}

.footer_container .btn_top .ico {
    display: block;
    width: 9px;
}

.footer_container .btn_top .ico img {
    display: block;
    width: 100%;
    height: auto;
}

.footer_container .footer_logo {
    width: 100%;
    padding: 118px 60px 0;
    overflow: hidden;
    max-width: 1600px;
    margin: 0 auto;
}

.footer_container .footer_logo_mask {
    position: relative;
    width: 100%;
    margin: 0 auto;
    aspect-ratio: 1586.41 / 176.18;
    overflow: hidden;
    isolation: isolate;
    transform: translateZ(0);
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1586.41 176.18'%3E%3Cpath fill='%23000' d='M74.98 92.69C83.5667 92.69 90.39 89.8533 95.45 84.18C100.663 78.3533 103.27 70.5333 103.27 60.72C103.27 50.9067 100.663 43.0867 95.45 37.26C90.39 31.4333 83.5667 28.52 74.98 28.52H31.28V92.69H74.98ZM4.02331e-07 1.83999H80.96C91.3867 1.83999 100.663 4.29333 108.79 9.19999C116.917 14.1067 123.203 20.93 127.65 29.67C132.25 38.41 134.55 48.3767 134.55 59.57C134.55 84.2567 122.59 102.58 98.67 114.54L142.6 174.34H103.96L63.71 119.6H31.28V174.34H4.02331e-07V1.83999ZM197.94 1.83999V174.34H166.66V1.83999H197.94ZM328.602 174.34H291.802L219.122 1.83999H253.162L309.742 140.76L362.642 1.83999H396.452L328.602 174.34ZM539.903 28.52H446.293V72.22H527.713V98.9H446.293V147.66H539.903V174.34H415.013V1.83999H539.903V28.52ZM642.119 92.69C650.705 92.69 657.529 89.8533 662.589 84.18C667.802 78.3533 670.409 70.5333 670.409 60.72C670.409 50.9067 667.802 43.0867 662.589 37.26C657.529 31.4333 650.705 28.52 642.119 28.52H598.419V92.69H642.119ZM567.139 1.83999H648.099C658.525 1.83999 667.802 4.29333 675.929 9.19999C684.055 14.1067 690.342 20.93 694.789 29.67C699.389 38.41 701.689 48.3767 701.689 59.57C701.689 84.2567 689.729 102.58 665.809 114.54L709.739 174.34H671.099L630.849 119.6H598.419V174.34H567.139V1.83999ZM911.183 28.52H819.873V74.52H896.923V101.2H819.873V174.34H788.593V1.83999H911.183V28.52ZM1012.27 92.69C1020.86 92.69 1027.68 89.8533 1032.74 84.18C1037.96 78.3533 1040.56 70.5333 1040.56 60.72C1040.56 50.9067 1037.96 43.0867 1032.74 37.26C1027.68 31.4333 1020.86 28.52 1012.27 28.52H968.575V92.69H1012.27ZM937.295 1.83999H1018.25C1028.68 1.83999 1037.96 4.29333 1046.08 9.19999C1054.21 14.1067 1060.5 20.93 1064.94 29.67C1069.54 38.41 1071.84 48.3767 1071.84 59.57C1071.84 84.2567 1059.88 102.58 1035.96 114.54L1079.89 174.34H1041.25L1001 119.6H968.575V174.34H937.295V1.83999ZM1175.36 149.04C1186.55 149.04 1196.37 146.587 1204.8 141.68C1213.23 136.62 1219.67 129.49 1224.12 120.29C1228.72 111.09 1231.02 100.357 1231.02 88.09C1231.02 75.8233 1228.72 65.09 1224.12 55.89C1219.67 46.69 1213.23 39.6367 1204.8 34.73C1196.37 29.67 1186.55 27.14 1175.36 27.14C1164.17 27.14 1154.35 29.67 1145.92 34.73C1137.64 39.6367 1131.2 46.69 1126.6 55.89C1122 65.09 1119.7 75.8233 1119.7 88.09C1119.7 100.357 1122 111.09 1126.6 120.29C1131.2 129.49 1137.64 136.62 1145.92 141.68C1154.35 146.587 1164.17 149.04 1175.36 149.04ZM1088.42 88.09C1088.42 71.07 1092.1 55.89 1099.46 42.55C1106.97 29.21 1117.32 18.7833 1130.51 11.27C1143.7 3.75667 1158.65 2.98023e-06 1175.36 2.98023e-06C1192.23 2.98023e-06 1207.25 3.75667 1220.44 11.27C1233.63 18.7833 1243.9 29.21 1251.26 42.55C1258.62 55.89 1262.3 71.07 1262.3 88.09C1262.3 105.11 1258.62 120.29 1251.26 133.63C1243.9 146.97 1233.63 157.397 1220.44 164.91C1207.25 172.423 1192.23 176.18 1175.36 176.18C1158.65 176.18 1143.7 172.423 1130.51 164.91C1117.32 157.397 1106.97 146.97 1099.46 133.63C1092.1 120.29 1088.42 105.11 1088.42 88.09ZM1437.25 174.34H1402.29L1315.58 50.83V174.34H1284.3V1.83999H1319.26L1405.97 126.04V1.83999H1437.25V174.34ZM1586.41 28.52H1537.88V174.34H1506.6V28.52H1457.15V1.83999H1586.41V28.52Z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1586.41 176.18'%3E%3Cpath fill='%23000' d='M74.98 92.69C83.5667 92.69 90.39 89.8533 95.45 84.18C100.663 78.3533 103.27 70.5333 103.27 60.72C103.27 50.9067 100.663 43.0867 95.45 37.26C90.39 31.4333 83.5667 28.52 74.98 28.52H31.28V92.69H74.98ZM4.02331e-07 1.83999H80.96C91.3867 1.83999 100.663 4.29333 108.79 9.19999C116.917 14.1067 123.203 20.93 127.65 29.67C132.25 38.41 134.55 48.3767 134.55 59.57C134.55 84.2567 122.59 102.58 98.67 114.54L142.6 174.34H103.96L63.71 119.6H31.28V174.34H4.02331e-07V1.83999ZM197.94 1.83999V174.34H166.66V1.83999H197.94ZM328.602 174.34H291.802L219.122 1.83999H253.162L309.742 140.76L362.642 1.83999H396.452L328.602 174.34ZM539.903 28.52H446.293V72.22H527.713V98.9H446.293V147.66H539.903V174.34H415.013V1.83999H539.903V28.52ZM642.119 92.69C650.705 92.69 657.529 89.8533 662.589 84.18C667.802 78.3533 670.409 70.5333 670.409 60.72C670.409 50.9067 667.802 43.0867 662.589 37.26C657.529 31.4333 650.705 28.52 642.119 28.52H598.419V92.69H642.119ZM567.139 1.83999H648.099C658.525 1.83999 667.802 4.29333 675.929 9.19999C684.055 14.1067 690.342 20.93 694.789 29.67C699.389 38.41 701.689 48.3767 701.689 59.57C701.689 84.2567 689.729 102.58 665.809 114.54L709.739 174.34H671.099L630.849 119.6H598.419V174.34H567.139V1.83999ZM911.183 28.52H819.873V74.52H896.923V101.2H819.873V174.34H788.593V1.83999H911.183V28.52ZM1012.27 92.69C1020.86 92.69 1027.68 89.8533 1032.74 84.18C1037.96 78.3533 1040.56 70.5333 1040.56 60.72C1040.56 50.9067 1037.96 43.0867 1032.74 37.26C1027.68 31.4333 1020.86 28.52 1012.27 28.52H968.575V92.69H1012.27ZM937.295 1.83999H1018.25C1028.68 1.83999 1037.96 4.29333 1046.08 9.19999C1054.21 14.1067 1060.5 20.93 1064.94 29.67C1069.54 38.41 1071.84 48.3767 1071.84 59.57C1071.84 84.2567 1059.88 102.58 1035.96 114.54L1079.89 174.34H1041.25L1001 119.6H968.575V174.34H937.295V1.83999ZM1175.36 149.04C1186.55 149.04 1196.37 146.587 1204.8 141.68C1213.23 136.62 1219.67 129.49 1224.12 120.29C1228.72 111.09 1231.02 100.357 1231.02 88.09C1231.02 75.8233 1228.72 65.09 1224.12 55.89C1219.67 46.69 1213.23 39.6367 1204.8 34.73C1196.37 29.67 1186.55 27.14 1175.36 27.14C1164.17 27.14 1154.35 29.67 1145.92 34.73C1137.64 39.6367 1131.2 46.69 1126.6 55.89C1122 65.09 1119.7 75.8233 1119.7 88.09C1119.7 100.357 1122 111.09 1126.6 120.29C1131.2 129.49 1137.64 136.62 1145.92 141.68C1154.35 146.587 1164.17 149.04 1175.36 149.04ZM1088.42 88.09C1088.42 71.07 1092.1 55.89 1099.46 42.55C1106.97 29.21 1117.32 18.7833 1130.51 11.27C1143.7 3.75667 1158.65 2.98023e-06 1175.36 2.98023e-06C1192.23 2.98023e-06 1207.25 3.75667 1220.44 11.27C1233.63 18.7833 1243.9 29.21 1251.26 42.55C1258.62 55.89 1262.3 71.07 1262.3 88.09C1262.3 105.11 1258.62 120.29 1251.26 133.63C1243.9 146.97 1233.63 157.397 1220.44 164.91C1207.25 172.423 1192.23 176.18 1175.36 176.18C1158.65 176.18 1143.7 172.423 1130.51 164.91C1117.32 157.397 1106.97 146.97 1099.46 133.63C1092.1 120.29 1088.42 105.11 1088.42 88.09ZM1437.25 174.34H1402.29L1315.58 50.83V174.34H1284.3V1.83999H1319.26L1405.97 126.04V1.83999H1437.25V174.34ZM1586.41 28.52H1537.88V174.34H1506.6V28.52H1457.15V1.83999H1586.41V28.52Z'/%3E%3C/svg%3E");
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-mode: alpha;
    mask-mode: alpha;
}

.footer_container .footer_logo_video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.03);
    transform-origin: center center;
}

.main_wrap .footer_container {
    min-height: 344px;
}

.sub_wrap .footer_container .footer_inner {
    padding-top: 80px;
    padding-bottom: 68px;
}


@media screen and (hover: hover) {
    .footer_container .sns_list a:hover {
        background: rgba(255, 255, 255, 0.40);
    }

    /* .footer_container .btn_term.ani_rolling:hover {
        transition: all 0.4s;
    }

    .footer_container .btn_term.ani_rolling:hover .rolling_wrap {
        transform: translateY(-32px);

    } */
}

@media screen and (max-width: 1300px) {
    .footer_container .footer_inner {
        padding-left: 20px;
        padding-right: 20px;
    }

    .footer_container .btn_top {
        right: 20px;
    }
}

@media screen and (max-width: 1024px) {

    .footer_container .footer_inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 40px;
        padding: 100px 15px 50px;
    }

    .footer_container .footer_logo {
        padding: 0 15px 24px;
    }

    .footer_container .logo_wrap .logo {
        width: 130px;
    }

    .footer_container .logo_wrap .logo svg {
        width: 100%;
        height: auto;
    }

    .footer_container .footer_left {
        flex-direction: column;
        gap: 32px;
        opacity: 1;
        width: 100%;
    }

    .footer_container .logo_wrap {
        width: 100%;
        align-items: center;
        gap: 16px;
    }

    .footer_container .footer_txt {
        gap: 20px;
        align-items: center;
        width: 100%;
        text-align: center;
    }

    .footer_container .company_line,
    .footer_container .agency_line,
    .footer_container .summary_wrap,
    .footer_container .copyright {
        font-size: 12px;
        text-align: center;
    }

    .footer_container .company_line .bar {
        width: 12px;
    }

    .footer_container .footer_right {
        align-items: center;
        text-align: center;
        width: 100%;
    }

    .footer_container .tell_wrap {
        justify-content: center;
    }

    .footer_container .tell_wrap .num {
        font-size: 20px;
    }

    .footer_container .tell_wrap .num_rolling {
        height: 20px;
    }

    .footer_container .sns_list {
        justify-content: center;
        flex-wrap: wrap;
        gap: 12px;
    }

    .footer_container .sns_list a {
        width: 48px;
        height: 48px;
    }

    .footer_container .btn_top {
        top: 30px;
        right: 15px;
    }

    .footer_container .btn_top .txt {
        font-size: 12px;
        letter-spacing: 4px;
    }

    .footer_container .sns_list a svg {
        transform: scale(0.8);
    }

    .sub_wrap .footer_container .footer_inner {
        padding-top: 80px;
        padding-bottom: 50px;
    }
}

@media screen and (max-width: 480px) {
    .footer_container .footer_right {
        margin-top: 60px;
    }
}

/* ANIMATION ::: FOOTER */
.footer_container .btn_top,
.footer_container .logo_wrap .logo,
.footer_container .logo_wrap .btn_term,
.footer_container .company_line,
.footer_container .agency_line,
.footer_container .summary_wrap,
.footer_container .copyright,
.footer_container .tell_wrap,
.footer_container .sns_list li {
    opacity: 0;
    transform: translate3d(0, 28px, 0);
    transition-property: opacity, transform;
    transition-duration: 0.75s;
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition-delay: 0ms;
    will-change: opacity, transform;
}

.footer_container.active .btn_top,
.footer_container.active .tell_wrap {
    opacity: 1;
    transform: translate3d(0, 0, 0);
}

.footer_container.active .logo_wrap .logo,
.footer_container.active .logo_wrap .btn_term,
.footer_container.active .company_line,
.footer_container.active .agency_line,
.footer_container.active .summary_wrap,
.footer_container.active .copyright,
.footer_container.active .sns_list li {
    opacity: 0.5;
    transform: translate3d(0, 0, 0);
}

.footer_container.active .btn_top {
    transition-delay: 0ms;
}

.footer_container.active .logo_wrap .logo {
    transition-delay: 80ms;
}

.footer_container.active .logo_wrap .btn_term {
    transition-delay: 160ms;
}

.footer_container.active .company_line {
    transition-delay: 240ms;
}

.footer_container.active .agency_line {
    transition-delay: 320ms;
}

.footer_container.active .summary_wrap {
    transition-delay: 400ms;
}

.footer_container.active .copyright {
    transition-delay: 480ms;
}

.footer_container.active .tell_wrap {
    transition-delay: 560ms;
}

.footer_container.active .sns_list li:nth-child(1) {
    transition-delay: 640ms;
}

.footer_container.active .sns_list li:nth-child(2) {
    transition-delay: 720ms;
}

.footer_container.active .sns_list li:nth-child(3) {
    transition-delay: 800ms;
}

.footer_container.active .sns_list li:nth-child(4) {
    transition-delay: 880ms;
}

@media (prefers-reduced-motion: reduce) {

    .footer_container .btn_top,
    .footer_container .logo_wrap .logo,
    .footer_container .logo_wrap .btn_term,
    .footer_container .company_line,
    .footer_container .agency_line,
    .footer_container .summary_wrap,
    .footer_container .copyright,
    .footer_container .tell_wrap,
    .footer_container .sns_list li {
        opacity: 1;
        transform: none;
        transition: none;
    }
}




/********************************************* 
    서브 비주얼
*********************************************/
.sub_top_visual {
    display: flex;
    align-items: center;
    color: #fff;
    text-align: center;
    justify-content: center;
    width: 100%;
    height: 920px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    overflow: hidden;
    background-image: url('/resources/img/sub/sub_visual_02.webp');
    z-index: 2;
}

.sub_top_visual::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 0;
    background-image: inherit;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    transform: scale(1.15);
    transform-origin: center center;
    animation: subTopVisualZoomOut 2.4s ease-out both;
    will-change: transform;
}

.visual_scroll {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 45px;
    height: auto;
    z-index: 3;
    pointer-events: none;
    transition: opacity 0.5s;
}

.visual_scroll_txt {
    font-family: Blinker, SUIT, sans-serif;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.52px;
    line-height: 1;
    color: #fff;
    text-transform: uppercase;
    display: none;
}

.visual_scroll_line {
    position: relative;
    display: block;
    width: 1px;
    height: 80px;
    margin-top: 8px;
    background: rgba(255, 255, 255, 0.3);
    overflow: hidden;
}

.visual_scroll_line::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 40%;
    background: #fff;
}

.visual_scroll_line::after {
    animation: visual-scroll-pulse 1.6s ease-in-out infinite;
}

.sales .visual_scroll_line {
    background: rgba(0, 0, 0, 0.3);
}

.sales .visual_scroll_line::after {
    background: #000;
}
@keyframes visual-scroll-pulse {
    0% {
        transform: translateY(-100%);
    }

    100% {
        transform: translateY(250%);
    }
}

.sub_top_visual .sub_top_visual_txt_box {
    position: relative;
    z-index: 1;
}

@keyframes subTopVisualZoomOut {
    from {
        transform: scale(1.15);
    }
    to {
        transform: scale(1);
    }
}

@media (prefers-reduced-motion: reduce) {
    .sub_top_visual::before {
        animation: none;
        transform: none;
    }
}

.sub_top_visual {
    color: #FFF;
    text-align: center;
    font-size: 32px;
    font-weight: 400;
    letter-spacing: 0.8px;
}

.sub_top_visual .deco_txt {
    color: rgba(255, 255, 255, 0.50);
    font-family: Cinzel;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0.4px;
    margin-bottom: 16px;
    overflow: hidden;
}

.sub_top_visual .en_name {
    overflow: hidden;
    color: #FFF;
    text-align: center;
    font-family: Lato;
    font-size: 50px;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 25px;
}

.sales .en_name {
    color: #111;
}

.sub_top_visual .page_tit {
    font-size: 30px;
    font-weight: 400;
    letter-spacing: 0.6px;
}

.sub_overview {
    background-image: url('/resources/img/sub/sub_visual_02.webp')
}

.sales .sub_top_visual {
    background-image: url('/resources/img/sub/sub_visual_03.webp')
}

.subscription .sub_top_visual {
    background-image: url('/resources/img/sub/sub_visual_04.webp')
}

.masterplan .sub_top_visual {
    background-image: url('/resources/img/sub/sub_visual_05.webp')
}

.unitplan .sub_top_visual {
    background-image: url('/resources/img/sub/sub_visual_06.webp')
}

.media .sub_top_visual {
    background-image: url('/resources/img/sub/sub_visual_07.webp')
}

.register .sub_top_visual {
    background-image: url('/resources/img/sub/sub_visual_08.webp')
}

@media screen and (max-width: 1024px) {
    .temp_header_skin1 .top_tel_rolling {
        display: none;
    }

    .sub_top_visual {
        height: var(--viewport-height);
    }

    .sub_top_visual .sub_top_visual_txt_box {
        margin-top: -5px;
    }

    .sub_top_visual .deco_txt {
        font-size: 16px;

    }

    .sub_top_visual .en_name {
        font-size: 30px;
        letter-spacing: 12.5px;
    }

    .sub_top_visual .page_tit {
        font-size: 20px;
    }
}

.temp_header_skin1 .header_bgm {
    width: auto;
    height: auto;
}

.temp_header_skin1 .header_bgm span {
    font-size: 0.75rem;
    line-height: 1;
    color: #010101;
    font-weight: 500;
    transition: 0.3s;
}
.subscription .temp_header_skin1 .header_bgm span,
.masterplan .temp_header_skin1 .header_bgm span,
.unitplan .temp_header_skin1 .header_bgm span,
.register .temp_header_skin1 .header_bgm span  {
    color: #fff;}

.temp_header_skin1.hover .header_bgm span,
.temp_header_skin1.on .header_bgm span {color: #010101;}
.temp_header_skin1.active .header_bgm span {color: #fff !important;}
.temp_header_skin1 .header_bgm a {
    width: 100%;
    height: 100%;
    border-radius: 2.5rem;
    display: flex;
    justify-content: flex-start;
    align-items: baseline;
    gap: 2px;
    position: relative;
    z-index: 9;
}

.temp_header_skin1 .header_bgm audio {
    outline: none;
}

.temp_header_skin1 .header_bgm .bgm_line {
    text-align: center;
    height: 14px;
    width: 18px;
    position: relative;
    left: 0;
    top: 0;
    flex-shrink: 0;
}

.temp_header_skin1 .header_bgm .bgm_line ul {
    width: 14px;
    height: 14px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.temp_header_skin1 .header_bgm .bgm_line ul li {
    width: 2px;
    height: 2px;
    background-color: #010101;
    display: inline-block;
    margin-left: 1px;
    transition: background 0.3s;
}

.subscription .temp_header_skin1 .header_bgm .bgm_line ul li,
.masterplan .temp_header_skin1 .header_bgm .bgm_line ul li,
.unitplan .temp_header_skin1 .header_bgm .bgm_line ul li,
.register .temp_header_skin1 .header_bgm .bgm_line ul li {background-color: #fff;}

.temp_header_skin1.hover .header_bgm .bgm_line ul li,
.temp_header_skin1.on .header_bgm .bgm_line ul li {background-color: #010101 !important;}
.temp_header_skin1.active .header_bgm .bgm_line ul li {background-color: #fff !important;}
.temp_header_skin1 .header_bgm .bgm_line ul li:nth-child(1) {
    margin-left: 0;
}



@media screen and (max-width: 450px) {
    .sub_top_visual .en_name {
        letter-spacing: 2vw;
    }
}