@charset "utf-8";
/*font*/
@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Light.woff2') format('woff2');
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Regular.woff2') format('woff2');
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Medium.woff2') format('woff2');
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Pretendard';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/pretendard@1.0/Pretendard-Bold.woff2') format('woff2');
    font-weight: 700;
    font-display: swap;
}
/* 색 설정 */
:root {
    --main-color: #1A2738;
    --black-color : #222;
    --white-color : #fff;
}

/* size */
@media screen and (max-width: 1250px) { } /* tablet */
@media screen and (max-width: 650px) { } /* mobile */

/* 스크롤 커스텀 */
html::-webkit-scrollbar {width: 8px;}
html::-webkit-scrollbar-thumb {background-color: var(--main-color); border-radius: 10px;}

/* 드래그 블록 커스텀 */
::selection { background-color:var(--main-color); color:#fff; }


/* default */
*{
    font-size: 16px;
    font-weight: 400;
    font-family: inherit;
    color : inherit;
    box-sizing: border-box;
    letter-spacing: -0.04em;
    line-height: 120%;
}

body{ position: relative; font-family: 'Pretendard', sans-serif; font-weight:400; font-size: 16px; letter-spacing: -0.04em; }
section{ display:block; }
a{ color:inherit; }

.inner{ width:1200px; margin:0 auto; }

.paging_box{ padding:10px 0; display:flex; align-items: center; justify-content: center; }

select{
    -webkit-appearance: none; -moz-appearance: none;  appearance: none;
    background: url('../../img/estate/common/select-icon.png') no-repeat 98% 50% #fff; 
}
select::-ms-expand{ display:none; }
p{ word-break: keep-all; }

@media screen and (max-width: 1250px) { 
    .inner{ width:100%; padding:0 10px; }
} /* tablet */
@media screen and (max-width: 650px) { 
    .paging_box{ font-size: 13px; }
} /* mobile */
header{
    padding: 0 30px;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100px;
    background: rgba(0, 0, 0, 0.30);
    backdrop-filter: blur(15px);
    z-index: 100;
}
.header-wrap{
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
header .trigger-btn{
    position: relative;
    width: 40px;
    height: 25px;
    z-index: 1000;
}
header .trigger-btn span{
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #fff;
    transition: all 0.3s ease;
}
header .trigger-btn span:nth-child(1){top:0;}
header .trigger-btn span:nth-child(2){top:50%; transform: translateY(-50%);}
header .trigger-btn span:nth-child(3){bottom: 0;}
header .trigger-btn.active span:nth-child(1){top:50%; transform: translateY(-50%) rotate(45deg);}
header .trigger-btn.active span:nth-child(2){opacity: 0;}
header .trigger-btn.active span:nth-child(3){bottom: 50%; transform: translateY(50%) rotate(-45deg);}
header .trigger-content{
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
    position: absolute;
    top: 0;
    right: -450px;
    width: 450px;
    height: 100vh;
    color: #fff;
    background-color: #1A2738;
    z-index: 999;
    padding: 120px 30px 30px 30px;
    overflow-y: scroll;
    -ms-overflow-style: none;
}
header .trigger-content::-webkit-scrollbar {
    display: none;
}
header .trigger-content.active{
    opacity: 1;
    visibility: visible;
    right: 0;
}
header .trigger-content .trigger-list-wrap{
    flex: 1;
}
header .trigger-content .trigger-list{
    color: #FFF;
    font-family: Pretendard;
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 30px;
}
header .trigger-content .trigger-list li:nth-child(1){
    padding-top: 15px;
}
header .trigger-content .trigger-list li{
    padding-bottom: 20px;
    margin-left: 30px;
    color: #767D88;
}
header .trigger-content .consult-wrap{
    /* position: absolute; */
    /* width: calc(100% - 60px); */
    width:100%;
    bottom: 30px;
}
header .trigger-content .consult-wrap .box1{
    width: 100%;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    padding: 20px 0;
    margin-bottom: 45px;
}
header .trigger-content .consult-wrap .box1 b,
header .trigger-content .consult-wrap .box2 b{
    color: #FFF;
    font-size: 24px;
    font-weight: 700;
}
header .trigger-content .consult-wrap .box1 b{
    margin-right: 20px;
}
header .trigger-content .consult-wrap .box1 a{
    color: #FFF;
    font-size: 20px;
    font-weight: 400;
}
header .trigger-content .consult-wrap .box1 a i{
    margin-right: 5px;
    display: inline-block;
}
header .trigger-content .consult-wrap .box2 .dropdown-box-wrap{
    position: relative;
    margin: 10px 0;
}
header .trigger-content .consult-wrap .box2 .dropdown-box-wrap::before{
    content: '\F282';
    font-family: 'bootstrap-icons';
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(180deg);
    transition: transform 0.2s ease;
}
header .trigger-content .consult-wrap .box2 .dropdown-box-wrap.open::before{
    transform: translateY(-50%) rotate(0deg);
}
header .trigger-content .consult-wrap .box2 .dropdown-content{
    display: none;
    position: absolute;
    width: 100%;
    padding:20px;
    bottom: calc(100% + 8px);
    top: auto;
    max-height: 60vh;
    overflow-y: auto;
    background-color: #132132;
    border: 1px solid #fff;
}
header .trigger-content .consult-wrap .box2 .dropdown-box-wrap.open .dropdown-content{
    display: block;
}
header .trigger-content .consult-wrap .box2 .dropdown-item-title{
    padding: 20px 0;
    border-bottom: 1px solid #ffffff6f;
}
header .trigger-content .consult-wrap .box2 .dropdown-item-title:last-child{
    border: none;
}
header .trigger-content .consult-wrap .box2 input[type="text"]{
    width: 100%;
    background-color: transparent;
    border: 1px solid #fff;
    padding: 20px;
    margin-top: 10px;

}
header .trigger-content .consult-wrap .box2 input[type="text"]::placeholder{
    color: #FFF;
    font-size: 16px;
}
header .trigger-content .consult-wrap .box2 input[type="text"].input-phone::placeholder{
    color: #767D88;
    font-size: 16px;
}
header .trigger-content .consult-wrap .box2 .agreement{
    color: #767D88;
    margin: 10px 0;
    font-size: 14px; 
}
header .trigger-content .consult-wrap .box2 .agreement #agreement{
    position: inline-block;
    margin-right: 5px;
    accent-color: #1A2738;
}
header .trigger-content .consult-wrap .box2 button{
    width: 100%;
    background: #A68F6B;
    padding: 20px 0;
    border: none;
}

/* header 반응형 - 1200px 이하 (tablet) */
@media screen and (max-width: 1200px) {
    header {
        padding: 0 20px;
        height: 80px;
    }
    header .logo img {
        max-height: 36px;
        width: auto;
    }
    header .trigger-btn {
        width: 36px;
        height: 22px;
    }
    header .trigger-content {
        width: 380px;
        right: -380px;
        padding: 100px 24px 0 24px;
    }
    header .trigger-content.active {
        right: 0;
    }
    header .trigger-content .trigger-list {
        font-size: 20px;
        margin-bottom: 24px;
    }
    header .trigger-content .trigger-list li {
        padding-bottom: 16px;
        margin-left: 24px;
    }
    header .trigger-content .consult-wrap .box1 b,
    header .trigger-content .consult-wrap .box2 b {
        font-size: 20px;
    }
    header .trigger-content .consult-wrap .box1 a {
        font-size: 18px;
    }
    header .trigger-content .consult-wrap .box1,
    header .trigger-content .consult-wrap .box2 .dropdown-box,
    header .trigger-content .consult-wrap .box2 > input {
        padding: 16px;
    }
    header .trigger-content .consult-wrap .box2 button {
        padding: 16px 0;
    }
}

/* header 반응형 - 960px 이하 (small tablet) */
@media screen and (max-width: 960px) {
    header {
        padding: 0 16px;
        height: 70px;
    }
    header .logo img {
        max-height: 32px;
    }
    header .trigger-btn {
        width: 32px;
        height: 20px;
    }
    header .trigger-content {
        width: 100%;
        max-width: 100%;
        right: -100%;
        padding: 88px 20px 0 20px;
    }
    header .trigger-content .trigger-list {
        font-size: 18px;
        margin-bottom: 20px;
    }
    header .trigger-content .trigger-list li {
        padding-bottom: 14px;
        margin-left: 20px;
    }
    header .trigger-content .consult-wrap {
        width: calc(100% - 40px);
        bottom: 24px;
    }
    header .trigger-content .consult-wrap .box1 b,
    header .trigger-content .consult-wrap .box2 b {
        font-size: 18px;
    }
    header .trigger-content .consult-wrap .box1 a {
        font-size: 16px;
    }
    header .trigger-content .consult-wrap .box1 {
        padding: 14px 0;
        margin-bottom: 32px;
    }
    header .trigger-content .consult-wrap .box2 .dropdown-box,
    header .trigger-content .consult-wrap .box2 > input {
        padding: 14px;
    }
    header .trigger-content .consult-wrap .box2 .dropdown-content{
        padding: 15px;
    }
    header .trigger-content .consult-wrap .box2 .dropdown-item-title{    
        padding: 10px 0;
    }
    header .trigger-content .consult-wrap .box2 button {
        padding: 14px 0;
    }
    header .trigger-content .consult-wrap .box2 .agreement {
        font-size: 13px;
    }
}

/* header 반응형 - 650px 이하 (mobile) */
@media screen and (max-width: 650px) {
    header {
        padding: 0 16px;
        height: 60px;
    }
    header .logo img {
        max-height: 25px;
    }
    header .trigger-btn {
        width: 28px;
        height: 18px;
    }
    header .trigger-btn span {
        height: 1.5px;
    }
    header .trigger-content {
        padding: 76px 16px 20px 16px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }
    header .trigger-content .trigger-list-wrap {
        margin-bottom: 24px;
    }
    header .trigger-content .trigger-list {
        font-size: 16px;
        margin-bottom: 16px;
    }
    header .trigger-content .trigger-list li:nth-child(1) {
        padding-top: 10px;
    }
    header .trigger-content .trigger-list li {
        padding-bottom: 12px;
        margin-left: 16px;
    }
    header .trigger-content .consult-wrap .box1 b,
    header .trigger-content .consult-wrap .box2 b {
        font-size: 16px;
    }
    header .trigger-content .consult-wrap .box1 {
        padding: 12px 0;
        margin-bottom: 24px;
    }
    header .trigger-content .consult-wrap .box1 a {
        font-size: 15px;
    }
    header .trigger-content .consult-wrap .box2 input[type="text"]{
        padding: 10px;
    
    }
    header .trigger-content .consult-wrap .box2 .dropdown-box,
    header .trigger-content .consult-wrap .box2 > input {
        padding: 12px 14px;
    }
    header .trigger-content .consult-wrap .box2 .dropdown-content{
        padding: 10px;
    }
    header .trigger-content .consult-wrap .box2 .agreement {
        font-size: 12px;
        margin: 8px 0;
    }
    header .trigger-content .consult-wrap .box2 button {
        padding: 12px 0;
        font-size: 15px;
    }
}
/* footer */
footer{ background-color: #2B2E33; border-top: rgba(255,255,255,.4); }
footer .box1{ padding: 50px 0 20px; border-bottom: 1px solid #8C8279; }
footer .box2{ padding: 35px 0 50px 0; color: #FFF; }
footer .box2 .info-list{ display: flex; gap: 20px; flex-wrap: wrap; justify-content: space-between; }
footer .box2 .info-list > li.full{ width: 100%; }
footer .box2 .info-list > li .label{ line-height: 1.5em; font-size: 18px; font-weight: 700; }
footer .box2 .info-list > li .content{ color: #808285; line-height: 1.5em; padding-left: 10px; position: relative; }
footer .box2 .info-list > li .content::before{ content:'・'; position: absolute; left: 0; top: 0; }
footer .box2 .half-div{ display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
footer .box2 .address-list{ line-height: 1.5em; display: flex; }
footer .box2 .address-list + .address-list{ margin-top: 5px;} 
footer .box2 .address-list .name{ font-weight: 700; flex-shrink: 0; width: 124px; font-size: 18px; color: #BBB; }
footer .box2 .address-list .address{ color: #BBB; font-size: 15px; }
footer .box2 .copy-right{ font-size: 14px; color: #808285; }

@media screen and (max-width: 1250px) {
    footer .logo{ width: 160px; }
    footer .box2 .info-list{ justify-content: flex-start; }
    footer .box2 .info-list > li{ width: calc((100% / 3) - 15px); }
    footer .box2 .info-list > li .label{ font-size: 16px; }
    footer .box2 .address-list{ flex-direction: column; }

}
@media screen and (max-width: 650px) {
    footer{ font-size: 14px; }
    footer .logo{ width: 120px; }
    footer .box2 .info-list > li{ width: calc((100% / 2) - 10px); }
    footer .box2 .address-list + .address-list{ margin-top: 10px; }
    footer .box2 .address-list .name{ font-size: 16px; }
    footer .box2 .address-list .address{ font-size: 14px; } 
}
/*sec1*/
.sec1{
    position: relative;
    height: 100vh;
    background: url('../../img/estate/sec1-bg.jpg') no-repeat center center / cover;
}
.sec1 .inner{
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec1 .title{
    margin-top: -100px;
}
.sec1 .title h1{
    text-align: center;
    color: #FFF;
    font-size: 72px;
    margin-bottom: 30px;
}
.sec1 .title h1 b{
    color: #D9AD76;
    font-size: 72px;
    font-weight: 700;
}
.sec1 .title p{
    color: #FFF;
    text-align: center;
    font-size: 32px;
    font-weight: 400;
    line-height: 140%;
}
.sec1 .images{
    width: 80%;
    display: flex;
    position: absolute;
    bottom: 0;
    gap: 10px;
}
.sec1 .images .image{
    flex: 1;
}
.sec1 .images .image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* .sec1 반응형 - tablet */
@media screen and (max-width: 1920px) {
    .sec1 .title h1,
    .sec1 .title h1 b{
        font-size: 50px;
    }
}
@media screen and (max-width: 1250px) {
    .sec1 .title h1,
    .sec1 .title h1 b {
        font-size: 40px;
    }
    .sec1 .title p {
        font-size: 24px;
    }
}

/* .sec1 반응형 - small tablet */
@media screen and (max-width: 768px) {
    .sec1 .title h1,
    .sec1 .title h1 b {
        font-size: 28px;
    }
    .sec1 .title p {
        font-size: 18px;
    }
}

/* .sec1 반응형 - mobile (폰트 최소 15px 유지) */
@media screen and (max-width: 650px) {
    .sec1 {
        height: 80vh;
    }
    .sec1 .title h1,
    .sec1 .title h1 b {
        font-size: 24px;
    }
    .sec1 .title p {
        font-size: 16px;
    }
}
/*sec2*/
.sec1-2{
    text-align: center;
    padding: 100px 0;
    background: linear-gradient(180deg, #1A2738 0%, #090d13 100%);
}
.sec1-2 .title{
    display: inline-block;
    color: #DCD9D3;
    font-size: 48px;
    margin-bottom: 100px;
    position: relative;
}
.sec1-2 .title:before,
.sec1-2 .title:after{
    content: ' ';
    background: #D9AD76;
    width: 50px;
    height: 2px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.sec1-2 .title:before{
    left: -100px;
}
.sec1-2 .title:after{
    right: -100px;
}
.sec1-2 .title b{
    color: #DCD9D3;
    font-size: 48px;
    font-weight: 700;
}
.sec1-2 .images{
    margin: 0 auto;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 20px;
    gap: 12px;
}
.sec1-2 .images .image{
    flex: 1;
    width: 100%;
}
.sec1-2 .images .image img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* sec2 반응형 - 1250px 이하 (tablet) */
@media screen and (max-width: 1920px) {
    .sec1-2 .title {
        font-size: 36px;
    }
    .sec1-2 .title b{
        font-size: 36px;
    }
}
@media screen and (max-width: 1200px) {
    .sec1-2 {
        padding: 80px 20px;
    }
    .sec1-2 .title {
        font-size: 30px;
        margin-bottom: 60px;
        padding: 0 60px;
    }
    .sec1-2 .title:before {
        left: -60px;
    }
    .sec1-2 .title:after {
        right: -60px;
    }
    .sec1-2 .title b {
        font-size: 30px;
    }
}

/* sec2 반응형 - 960px 이하 (small tablet) */
@media screen and (max-width: 960px) {
    .sec1-2 {
        padding: 60px 16px;
    }
    .sec1-2 .title {
        font-size: 24px;
        margin-bottom: 48px;
        padding: 0 50px;
    }
    .sec1-2 .title:before,
    .sec1-2 .title:after {
        width: 36px;
    }
    .sec1-2 .title:before {
        left: -44px;
    }
    .sec1-2 .title:after {
        right: -44px;
    }
    .sec1-2 .title b {
        font-size: 24px;
    }
    .sec1-2 .images {
        flex-wrap: wrap;
        gap: 10px;
        margin: 0 16px;
    }
    .sec1-2 .images .image {
        flex: 0 0 calc((100% - 20px) / 3);
        max-width: 0 0 calc((100% - 20px) / 3);
    }
}

/* sec2 반응형 - 650px 이하 (mobile) */
@media screen and (max-width: 650px) {
    .sec1-2 {
        padding: 48px 16px;
    }
    .sec1-2 .title {
        font-size: 20px;
        margin-bottom: 36px;
        padding: 0 36px;
        line-height: 1.5;
    }
    .sec1-2 .title:before,
    .sec1-2 .title:after {
        width: 24px;
    }
    .sec1-2 .title:before {
        left: -5px;
    }
    .sec1-2 .title:after {
        right: -5px;
    }
    .sec1-2 .title b {
        font-size: 18px;
    }
    .sec1-2 .images {
        gap: 12px;
        margin: 0;
    }
    .sec1-2 .images .image {
        flex: 0 0 calc((100% - 24px) / 2);
        max-width: 0 0 calc((100% - 24px) / 2);
    }
    .sec1-2 .images .image img {
        object-fit: contain;
    }
}

/*sec2*/
.sec2{ 
    background: #EEE;
    padding: 100px 0;
    position: relative; 
    overflow: hidden; 
}
.title-bar{ 
    margin: 0 auto 25px auto; 
    background: #917962;
    width: 80px;
    height: 4px;
}
.sec2 .text h2{ 
    text-align: center; 
    color: #222;
    text-align: center;
    font-size: 48px;
    font-weight: 500;
    line-height: 140%;
    margin-bottom: 12px;
}
.sec2 .text h2 b{
    color: #917962;
    font-size: 48px;
    font-weight: 700;
    line-height: 140%;
}
.sec2 .text p{
    color: #222;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
}
.sec2 .tab-lists{
    align-items: center;
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 40px 0;
}
.sec2 .tab-list{
    border-radius: 4px;
    background: #DDD;
    color: #777;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 100%;
    padding: 10px 15px;
    cursor: pointer;
}
.sec2 .tab-list.active{
    background-color: #917962;
    color: #fff;
}

.sec2 .slide-wrap{ 
    display: none;
    position: relative; 
    margin-top: 40px; 
}
.sec2 .slide-wrap.active{
    display: block;
}
.sec2 .slide-wrap .cover{ 
    position: absolute; 
    width: 10%; 
    height: 100%; 
    z-index: 2;  
}
.sec2 .slide-wrap .left-cover{ 
    left: calc(((100vw - 1200px) / 2) * (-1)); 
    background: linear-gradient(90deg, #FFF 1.08%, rgba(255, 255, 255, 0.00) 98.79%);
}
.sec2 .slide-wrap .right-cover{ 
    right: calc(((100vw - 1200px) / 2) * (-1)); 
    background: linear-gradient(-90deg, #FFF 1.08%, rgba(255, 255, 255, 0.00) 98.79%);
}
.sec2 .swiper-slide{ 
    height: 410px !important; 
    width: 368px !important;
    margin: 0 24px;
}
.sec2 .item a{
    display: inline-block;
}
.sec2 .item{ 
    padding: 20px;
    height: 100%;
    width: 100%;
    height: 100%;
    border: 1px solid #F1F2F4;
    background: #FFF;
    box-shadow: 2px 2px 5px 0 rgba(219, 219, 219, 0.50);
}
.sec2 .item .category{ font-size:23px; text-align:center; color: #0F1C2E; position: absolute; right: 20px; top: 28px; font-weight:500; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: calc(100% - 130px );  width:100%; }
.sec2 .item .label{
    border-radius: 5px;
    background: #0F1C2E;
    width: 110px;
    color: #fff;
    padding: 10px 0;
    font-size: 18px;
    text-align: center;
    margin-left: -50px;
}
.sec2 .item .title{
    color: #222;
    font-family: Pretendard;
    font-size: 20px;
    font-weight: 600;
    margin: 20px 0;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    width: 100%;
}
.sec2 .item .content{
    color: #222;
    font-size: 20px;
    font-weight: 400;
    line-height: 140%;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.sec2 .item .image-wrap{ 
    height: 200px; 
    position: relative; 
    overflow: hidden; 
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.sec2 .item .image-wrap .text{
    color: #FFF;
    text-align: center;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 100%;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    padding: 15px 10px;
    z-index: 1;
}
.sec2 .item .image-wrap .real{ 
    position: absolute; 
    left: 0;
    top: 0; 
    width: 100%;
    height: 100%; 
    background-size: cover; 
    background-repeat: no-repeat; 
    background-position: center; 
}
.sec2 .item .image-wrap .real::before{
    content: ' ';
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
    background-color: rgba(0, 0, 0, 0.70);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    backdrop-filter: blur(4px);
}
.sec2 .view-detail{
    text-align: center;
    margin-top: 80px;
}
.sec2 .view-detail a{
    display: inline-block;
    border-radius: 4px;
    background: #917962;
    color: #FFF;
    font-weight: 700;
    line-height: 26px; 
    padding: 10px 40px;
}
@media screen and (max-width: 1920px){
    .sec2 .text h2{
        font-size: 36px;
    }
    .sec2 .text h2 b{
        font-size: 36px;
    }
}
/* sec3 반응형 - 1200px 이하 (tablet) */
@media screen and (max-width: 1200px) {
    .sec2{
        padding: 80px 0;
    }
    .sec2 .inner{
        padding: 0;
    }
    .title-bar{
        width: 70px;
        margin-bottom: 20px;
    }
    .sec2 .text h2,
    .sec2 .text h2 b{
        font-size: 30px;
    }
    .sec2 .slide-wrap{
        margin-top: 30px;
    }
    .sec2 .item .category{ top:24px; font-size:16px; }
    .sec2 .slide-wrap .cover{
        width: 12%;
    }
    .sec2 .slide-wrap .left-cover{
        left: 0;
    }
    .sec2 .slide-wrap .right-cover{
        right: 0;
    }
    .sec2 .swiper-slide{
        width: 320px !important;
        height: 380px !important;
        margin: 16px;
    }
    .sec2 .tab-list{
        font-size: 18px;
    }
    .sec2 .item{
        padding: 18px;
    }
    .sec2 .item .label{
        width: 96px;
        padding: 8px 0;
        font-size: 16px;
        margin-left: -36px;
    }
    .sec2 .item .title,
    .sec2 .item .content{
        font-size: 18px;
    }
    .sec2 .item .image-wrap{
        height: 180px;
    }
    .sec2 .item .image-wrap .text{
        font-size: 18px;
        padding: 12px 10px;
    }
    .sec2 .view-detail{
        margin-top: 60px;
    }
}

/* sec3 반응형 - 960px 이하 (small tablet) */
@media screen and (max-width: 960px) {
    .sec2{
        padding: 70px 0;
    }
    .title-bar{
        width: 60px;
        height: 3px;
    }
    .sec2 .text h2,
    .sec2 .text h2 b{
        font-size: 24px;
    }
    .sec2 .slide-wrap{
        margin-top: 24px;
    }
    .sec2 .slide-wrap .cover{
        display: none;
    }
    .sec2 .swiper-slide{
        width: 280px !important;
        height: 340px !important;
        margin: 12px;
    }
    .sec2 .tab-list{
        font-size: 16px;
    }
    .sec2 .item{
        padding: 16px;
    }
    .sec2 .item .label{
        width: 88px;
        font-size: 14px;
        margin-left: -28px;
    }
    .sec2 .item .title{
        font-size: 16px;
        margin: 16px 0;
    }
    .sec2 .item .content{
        font-size: 16px;
    }
    .sec2 .item .image-wrap{
        height: 160px;
    }
    .sec2 .item .image-wrap .text{
        font-size: 16px;
        padding: 10px 10px;
    }
    .sec2 .view-detail{
        margin-top: 50px;
    }
    .sec2 .view-detail a{
        padding: 10px 32px;
    }
}

/* sec3 반응형 - 650px 이하 (mobile) */
@media screen and (max-width: 650px) {
    .sec2{
        padding: 60px 0;
    }
    .title-bar{
        width: 52px;
        margin-bottom: 16px;
    }
    .sec2 .text h2,
    .sec2 .text h2 b{
        font-size: 20px;
        line-height: 150%;
    }
    .sec2 .slide-wrap{
        margin-top: 18px;
    }
    .sec2 .swiper{
        width: 100%;
    }
    .sec2 .swiper-wrapper{
        width: 100%;
    }
    .sec2 .swiper-slide{
        width: 260px !important; 
        height: 320px !important;
        margin: 10px;
    }
    .sec2 .item{
        padding: 14px;
        width: 100% !important;
    }
    .sec2 .item .category{ top:21px; }
    .sec2 .item .label{
        width: 80px;
        font-size: 13px;
        margin-left: -18px;
    }
    .sec2 .item .title{
        font-size: 15px;
        margin: 14px 0;
    }
    .sec2 .item .content{
        font-size: 15px;
    }
    .sec2 .item .image-wrap{
        height: 150px;
    }
    .sec2 .item .image-wrap .text{
        font-size: 15px;
        padding: 10px 8px;
    }
    .sec2 .view-detail{
        margin-top: 40px;
    }
    .sec2 .view-detail a{
        padding: 10px 24px;
        font-size: 15px;
    }
}
/*sec3*/
.sec3{
    padding: 100px 0;
    background: #E4E4E4;
}
.sec3 .inner h2 .title-bar{
    background: #917962;
}
.sec3 .text h2{
    text-align: center;
    color: #222;
    font-size: 48px;
    font-weight: 500;
    margin-bottom: 12px;
}
.sec3 .text h2 b{
    color: #917962;
    text-align: center;
    font-size: 48px;
    font-weight: 700;
}
.sec3 .text p{
    color: #222;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
}
.sec3 .content{
    margin: 50px auto 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 24px;
}
.sec3 .content .item{
    color: #fff;
    width: 23%;
    height: 245px;
    border-radius: 4px;
    background: #1A2738;
    box-shadow: 5px 12px 15px 0 rgba(0, 0, 0, 0.15);
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec3 .content .item .item-inner .item-bar{
    width: 66.61px;
    height: 1.661px;
    background-color: #DCD9D3;
    margin: 0 auto;
}
.sec3 .content .item .item-inner h3{
    color: #FFF;
    text-align: center;
    font-size: 30px;
    font-weight: 700;
    margin: 30px 0;
}
.sec3 .content .item .item-inner p{
    color: #FFF;
    text-align: center;
    font-size: 16px;
}


@media screen and (max-width: 1920px){
    .sec3 .text h2{
        font-size: 36px;
    }
    .sec3 .text h2 b{
        font-size: 36px;
    }
}
/* .sec3 반응형 - tablet (960px 이상 4열 유지) */
@media screen and (max-width: 1200px) {
    .sec3 {
        padding: 80px 0;
    }
    .sec3 .text h2,
    .sec3 .text h2 b {
        font-size: 30px;
    }
    .sec3 .text p {
        font-size: 17px;
    }
    .sec3 .content {
        margin-top: 40px;
        gap: 20px;
    }
    .sec3 .content .item {
        height: 230px;
    }
    .sec3 .content .item .item-inner h3 {
        font-size: 26px;
        margin: 24px 0;
    }
    .sec3 .content .item .item-inner p {
        font-size: 15px;
    }
}


/* .sec3 반응형 - small tablet */
@media screen and (max-width: 960px) {
    .sec3 {
        padding: 70px 0;
    }
    .sec3 .text h2,
    .sec3 .text h2 b {
        font-size: 24px;
        margin-bottom: 10px;
    }
    .sec3 .text p {
        font-size: 16px;
    }
    .sec3 .content {
        margin-top: 32px;
        gap: 16px;
    }
    .sec3 .content .item {
        height: 200px;
    }
    .sec3 .content .item .item-inner .item-bar {
        width: 50px;
    }
    .sec3 .content .item .item-inner h3 {
        font-size: 22px;
        margin: 20px 0;
    }
    .sec3 .content .item .item-inner p {
        font-size: 15px;
    }
}
@media screen and (max-width: 760px) {
    .sec3 .content .item {
        width: calc(50% - 8px);
        height: 200px;
    }
}
/* .sec3 반응형 - mobile */
@media screen and (max-width: 650px) {
    .sec3 {
        padding: 60px 0;
    }
    .sec3 .inner {
        padding: 0 16px;
    }
    .sec3 .text h2,
    .sec3 .text h2 b {
        margin-bottom: 8px;
    }
    .sec3 .text p {
        font-size: clamp(15px, 4vw, 16px);
    }
    .sec3 .content {
        margin-top: 28px;
        gap: 12px;
    }
    .sec3 .content .item {
        width: calc(50% - 6px);
        height: auto;
        min-height: 140px;
        padding: 18px 12px;
    }
    .sec3 .content .item .item-inner .item-bar {
        width: 44px;
    }
    .sec3 .content .item .item-inner h3 {
        font-size: 18px;
        margin: 16px 0;
    }
    .sec3 .content .item .item-inner p {
        font-size: 14px;
    }
}
/*sec4*/
.sec4{
    padding: 100px 0;
    background: #1A2738;
}
.sec4 .inner h2 .title-bar{
    background: #917962;
}
.sec4 .text h2{
    color: #FFF;
    text-align: center;
    font-size: 48px;
    font-weight: 500;
    margin-bottom: 12px;
}
.sec4 .text h2 b{
    color: #D9AD76;
    font-size: 48px;
    font-weight: 700;
}
.sec4 .text p{
    color: #FFF;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
}
.sec4 .content{
    padding: 0 78px;
    display: flex;
    gap: 78px;
    margin-top: 50px;
}
.sec4 .content .card{
    flex: 1;
    height: 670px;
    border-radius: 280px;
    background: #253448;
    padding-top: 60px;
    text-align: center;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}
.sec4 .content .card .name .card-bar{
    background: #D9AD76;
    width: 80px;
    height: 2px;
    margin: 0 auto;
}
.sec4 .content .card .name span{
    display: inline-block;
    margin: 20px 0 10px 0;
    color: #FFF;
    font-size: 24px;
}
.sec4 .content .card .name h3{
    color: #D9AD76;
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 25px;
}
.sec4 .content .card .name ul li{
    color: #FFF;
    font-size: 20px;
}
.sec4 .content .card .image{
    margin: 0 auto;
    width: 70%;
    display: flex;
    justify-content: center;
    align-items: end;
    background: url('../../img/estate/sec4-img3.png') no-repeat center center;
    background-size: contain;
    aspect-ratio: 3 / 4;
}
.sec4 .content .card .image img{
    max-width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
}
@media screen and (max-width: 1920px){
   .sec4 .text h2,
   .sec4 .text h2 b{
    font-size: 36px;
   }
}
/* .sec4 반응형 - tablet */
@media screen and (max-width: 1250px) {
    .sec4 {
        padding: 80px 0;
    }
    .sec4 .text h2,
    .sec4 .text h2 b {
        font-size: 30px;
    }
    .sec4 .text p {
        font-size: 17px;
    }
    .sec4 .content {
        padding: 0 24px;
        gap: 40px;
        margin-top: 40px;
    }
    .sec4 .content .card {
        height: auto;
        border-radius: 240px;
        padding-top: 50px;
    }
    .sec4 .content .card .name span {
        font-size: 22px;
        margin: 16px 0 8px 0;
    }
    .sec4 .content .card .name h3 {
        font-size: 28px;
        margin-bottom: 20px;
    }
    .sec4 .content .card .name ul li {
        font-size: 18px;
    }
    .sec4 .content .card .image {
        margin: 24px auto 0 auto;
        width: 75%;
    }
}

/* .sec4 반응형 - small tablet */
@media screen and (max-width: 960px) {
    .sec4 {
        padding: 70px 0;
    }
    .sec4 .text h2,
    .sec4 .text h2 b {
        font-size: 26px;
        margin-bottom: 10px;
    }
    .sec4 .text p {
        font-size: 16px;
    }
    .sec4 .content {
        padding: 0 20px;
        gap: 24px;
        margin-top: 32px;
    }
    .sec4 .content .card {
        height: 500px;
        border-radius: 200px;
        padding-top: 40px;
    }
    .sec4 .content .card .name .card-bar {
        width: 60px;
    }
    .sec4 .content .card .name span {
        font-size: 20px;
        margin: 14px 0 6px 0;
    }
    .sec4 .content .card .name h3 {
        font-size: 24px;
        margin-bottom: 16px;
    }
    .sec4 .content .card .name ul li {
        font-size: 16px;
    }
    .sec4 .content .card .image {
        margin: 20px auto 0 auto;
        width: 70%;
    }
}

/* .sec4 반응형 - mobile */
@media screen and (max-width: 650px) {
    .sec4 {
        padding: 60px 0;
    }
    .sec4 .inner {
        padding: 0 16px;
    }
    .sec4 .text h2,
    .sec4 .text h2 b {
        font-size: clamp(15px, 5.5vw, 22px);
        margin-bottom: 8px;
    }
    .sec4 .text p {
        font-size: clamp(15px, 4vw, 16px);
    }
    .sec4 .content {
        flex-direction: column;
        padding: 0;
        gap: 24px;
        margin-top: 28px;
    }
    .sec4 .content .card {
        height: auto;
        min-height: 380px;
        border-radius: 50px;
    }
    .sec4 .content .card .name .card-bar {
        width: 52px;
    }
    .sec4 .content .card .name span {
        font-size: 18px;
        margin: 12px 0 6px 0;
    }
    .sec4 .content .card .name h3 {
        font-size: 20px;
        margin-bottom: 12px;
    }
    .sec4 .content .card .name ul li {
        font-size: 16px;
    }
    .sec4 .content .card .image {
        margin: 0px auto;
        width: 65%;
    }
}
/*sec5*/
.sec5{
    padding: 150px 0;
    background: url('../../img/estate/sec5-bg.jpg') no-repeat center center / cover;
}
.sec5 .inner{
    text-align: center;
}
.sec5 .title{
    display: inline-block;
    color: #DCD9D3;
    text-align: center;
    font-size: 48px;
    position: relative;
}
.sec5 .title:before,
.sec5 .title:after{
    content: ' ';
    background: #D9AD76;
    width: 50px;
    height: 2px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.sec5 .title:before{
    left: -100px;
}
.sec5 .title:after{
    right: -100px;
}
.sec5 .view-detail a{
    display: inline-block;
    color: #FFF;
    margin-top: 50px;
    font-size: 24px;
    padding: 15px 80px;
    border-radius: 4px;
    background: rgba(145, 121, 98, 0.50);
}
@media screen and (max-width: 1920px) {
    .sec5 .title {
        font-size: 36px;
    }
}
/* .sec5 반응형 - tablet */
@media screen and (max-width: 1250px) {
    .sec5 {
        padding: 100px 0;
        background-size: cover;
    }
    .sec5 .title {
        font-size: 30px;
    }
    .sec5 .title:before {
        left: -60px;
    }
    .sec5 .title:after {
        right: -60px;
    }
    .sec5 .view-detail a {
        margin-top: 40px;
        font-size: 22px;
        padding: 14px 60px;
    }
}

/* .sec5 반응형 - small tablet */
@media screen and (max-width: 960px) {
    .sec5 {
        padding: 80px 0;
    }
    .sec5 .title {
        font-size: 26px;
    }
    .sec5 .title:before,
    .sec5 .title:after {
        width: 40px;
    }
    .sec5 .title:before {
        left: -40px;
    }
    .sec5 .title:after {
        right: -40px;
    }
    .sec5 .view-detail a {
        margin-top: 32px;
        font-size: 20px;
        padding: 12px 48px;
    }
}

/* .sec5 반응형 - mobile */
@media screen and (max-width: 650px) {
    .sec5 {
        padding: 60px 0;
        background-size: cover;
    }
    .sec5 .inner {
        padding: 0 16px;
    }
    .sec5 .title {
        font-size: 18px;
        padding: 0 36px;
    }
    .sec5 .title:before,
    .sec5 .title:after {
        width: 25px;
        left: 0;
        right: auto;
    }
    .sec5 .title:before {
        left: 0;
    }
    .sec5 .title:after {
        right: 0;
        left: auto;
    }
    .sec5 .view-detail a {
        margin-top: 28px;
        font-size: clamp(15px, 4vw, 18px);
        padding: 10px 30px;
    }
}
/*sec6*/
.sec6{
    height: 100vh;
    background: #EEE;
    display: flex;
    justify-content: center;
    align-items: center;
}
.sec6 .inner .title p{
    color: #222;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
}
.sec6 .inner .title h1{
    color: #222;
    font-size: 48px;
    font-weight: 500;
    text-align: center;
    line-height: 1.4;
}
.sec6 .inner .title h1 b{
    color: #917962;
    text-align: center;
    font-size: 48px;
    font-weight: 700;
    margin-top: 10px;
}
.sec6 .inner .title span{
    color: #FFF;
    font-size: 16px;
}
.sec6 .inner .content-box{
    height: 600px;
    margin-top: 50px;
}
.sec6 .inner .content[id^="consult-step"]{
    display: none;
    height: 100%;
    border-radius: 10px;
    overflow: hidden;
}
.sec6 .inner .content[id^="consult-step"].active{
    display: flex;
}
.sec6 .content .left{
    flex: 4.5;
    background-color: #121B27;
    color: #fff;
    display: flex;
    align-items: center;
    position: relative;
}
.sec6 .content .left::before{
    content: ' ';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.8;
    background: linear-gradient(270deg, #121B27 0%, rgba(18, 27, 39, 0.00) 100%);
}
.sec6 .content .left div{
    z-index: 1;
    position: relative;
    padding: 0 30px;
}
.sec6 .content .left div .bar{
    width: 80.462px;
    height: 4px;
    background-color: #D9AD76;
    margin-bottom: 35px;
}
.sec6 .content .left div h3{
    color: #FFF;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 16px;
}
.sec6 .content .left div p{
    color: #FFF;
    font-size: 22px;
    line-height: 140%;
    margin-bottom: 15px;
}
.sec6 .content .left div p b{
    color: #FFF;
    font-size: 22px;
    font-weight: 700;
    line-height: 140%;
}
.sec6 .content .left div span{
    color: #FFF;
    font-size: 16px;
    font-weight: 400;
}
.sec6 .content .right{
    height: 100%;
    flex: 5.5;
    background-color: #fff;
    padding: 40px;
}
.sec6 .content .right > div{
    height: 100%;
        display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.sec6 .content .right div .bar{
    width: 50px;
    height: 4px;
    background: #D9AD76;
    margin: 0 auto;
}
.sec6 .content .right div h4{
    margin: 12px 0;
    color: #333;
    text-align: center;
    font-size: 24px;
    font-weight: 500;
}
.sec6 .content .right div .check-box > div{
    margin-bottom: 10px;
}
.sec6 .content .right div .check-box > div label{
    display: block;
    border-radius: 10px;
    background: #EEE;
    padding: 16px 20px;
    color: #333;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
}
.sec6 .content .right div .check-box > div label input{
    display: none;
}
.sec6 .content .right div .check-box > div label i{
    display: inline-block;
    color: #999;
    margin-right: 10px;
    font-size: 20px;
}
.sec6 .content .right div .check-box .step2-check2-detail-box{
    display: none;
    background: transparent;
    padding-left: 50px;
}
.sec6 .content .right div .check-box:has(input#step2-check2:checked) .step2-check2-detail-box{
    display: block;
}
.sec6 .content .right div .check-box .step2-check2-detail-box > div:first-child{
   padding-bottom: 10px;
}
/* 선택된 항목 아이콘 색상 */
.sec6 .content .right div .check-box label:has(input:checked) i{
    color: #917962;
}

.sec6 .content .right .btns{
    display: flex;
    gap: 10px;
}
.sec6 .content .right .btns .prev-btn{
    width: 150px;
    border: none;
    background: #777;
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
}
.sec6 .content .right .btns .next-btn{
    width: 100%;
    flex: 1;
    color: #FFF;
    font-size: 18px;
    font-weight: 700;
    background: #917962;
    border: none;
    padding: 20px 0;
}
.sec6 .content .right .check-box p{
    color: #333;
    margin-bottom: 15px;
}
.sec6 .content .right .check-box input{
    border-radius: 10px;
    background: #EEE;
    padding: 15px 20px;
    margin-bottom: 10px;
    width: 100%;
    border: none;
}
.sec6 .content .right .agreement{
    color: #767D88;
    font-size: 14px;
}
.sec6 .content .right .agreement input{
    accent-color: #fff;
}
@media screen and (max-width: 1920px) {
    .sec6 .inner .title h1,
    .sec6 .inner .title h1 b{
        font-size: 36px;
    }
}
@media screen and (max-width: 1200px) {
    .sec6 .content{
        height: auto;
        min-height: 520px;
        margin-top: 40px;
    }
    .sec6 .inner .title p{
        font-size: 22px;
    }
    .sec6 .inner .title h1,
    .sec6 .inner .title h1 b{
        font-size: 42px;
        margin-bottom: 30px;
    }
    .sec6 .content .left div{
        padding: 0 24px;
    }
    .sec6 .content .left div h3{
        font-size: 24px;
    }
    .sec6 .content .left div p,
    .sec6 .content .left div p b{
        font-size: 18px;
    }
    .sec6 .content .right{
        padding: 32px;
    }
    .sec6 .content .right div h4{
        font-size: 20px;
    }

    .sec6 .content .right div .check-box > div label,
    .sec6 .content .right div .check-box > div label i{
        font-size: 18px;
    }
    .sec6 .content .right .btns .prev-btn{
        width: 130px;
        font-size: 16px;
    }
    .sec6 .content .right .btns .next-btn{
        font-size: 16px;
        padding: 16px 0;
    }
}
@media screen and (max-width: 960px) {
    .sec6{
        padding: 120px 16px 80px;
    }
    .sec6 .inner .title p{
        font-size: 18px;
    }
    .sec6 .inner .title h1,
    .sec6 .inner .title h1 b{
        font-size: 32px;
        margin-bottom: 24px;
    }
    .sec6 .content .left{
        flex: none;
        padding: 34px 0;
    }
    .sec6 .content .left div{
        padding: 0 20px;
    }
    .sec6 .content .left div .bar{
        margin-bottom: 22px;
        width: 64px;
    }
    .sec6 .content .left div h3{
        font-size: 20px;
    }
    .sec6 .content .left div p,
    .sec6 .content .left div p b{
        font-size: 16px;
    }
    .sec6 .content .left div span{
        font-size: 16px;
    }
    .sec6 .content .right{
        padding: 24px 20px;
        gap: 18px;
    }
    .sec6 .content .right div h4{
        font-size: 18px;
    }
    .sec6 .content .right div .check-box > div label,
    .sec6 .content .right div .check-box > div label i{
        font-size: 16px;
    }
    .sec6 .content .right .btns .prev-btn{
        width: 120px;
        font-size: 15px;
    }
    .sec6 .content .right .btns .next-btn{
        font-size: 15px;
        padding: 14px 0;
    }
}
@media screen and (max-width: 650px) {
    .sec6{
        padding: 60px 0;
        height: auto;
    }
    .sec6 .inner .title p{
        font-size: 16px;
    }
    .sec6 .inner .title h1,
    .sec6 .inner .title h1 b{
        font-size: 24px;
        line-height: 1.4;
        margin-bottom: 20px;
    }
    .sec6 .inner .content-box{
        margin-top: 30px;
        height: auto;
    }
    .sec6 .content{
        border-radius: 10px;
        flex-direction: column;
        height: auto;
        margin-top: 32px;
    }
    .sec6 .content .left{
        padding: 28px 0;
    }
    .sec6 .content .left div{
        padding: 0 16px;
    }
    .sec6 .content .left div h3{
        font-size: 18px;
        line-height: 140%;
    }
    .sec6 .content .right{
        padding: 20px 16px;
    }
    .sec6 .content .right div h4{
        font-size: 16px;
    }
    .sec6 .content .right div .check-box > div label,
    .sec6 .content .right div .check-box > div label i{
        font-size: 15px;
    }
    .sec6 .content .right .btns{
        flex-direction: column;
    }
    .sec6 .content .right .btns .prev-btn{
        width: 100%;
        padding: 14px 0;
    }
    .sec6 .content .right .btns .next-btn{
        width: 100%;
        padding: 14px 0;
    }
    .sec6 .content .right .check-box input{
        padding: 12px 14px;
    }
    .sec6 .content .right .agreement{
        font-size: 12px;
    }
}
/*sec7*/
.sec7{
    padding: 100px 0;
    background: url('../../img/estate/sec7-bg.jpg ') no-repeat center center / cover;
}
.sec7 h2 .text{
    text-align: center;
    color: #333;
    font-size: 36px;
    font-weight: 700;
}
.sec7 h2 .text p{
    color: #333;
    text-align: center;
    font-size: 18px;
    line-height: 140%;
    margin-top: 10px;
}
.sec7 .tab-lists{
    align-items: center;
    justify-content: center;
    display: flex;
    gap: 10px;
    margin: 40px 0;
}
.sec7 .tab-list{
    border-radius: 4px;
    background: #DDD;
    color: #777;
    text-align: center;
    font-size: 20px;
    font-weight: 500;
    line-height: 100%;
    padding: 5px 15px;
}
.sec7 .tab-list.active{
    background-color: #917962;
    color: #fff;
}
.sec7 .inner .content-wrap{
    display: none;
}
.sec7 .inner .content-wrap.active{
    display: block;
}
.sec7 .inner .content-wrap > .content{
    display: flex;
    justify-content: space-between;
    gap: 50px;
}
.sec7 .content .map-div{
    flex: 1;
    height: 430px;
}
.sec7 .content .map-div iframe{
    width: 100%;
    height: 100%;
}
.sec7 .content .right{
    flex: 1;
}
.sec7 .content .right .map-title{
    color: #333;
    font-size: 28px;
    font-weight: 700;
    line-height: 120%;
    position: relative;
    padding-left: 10px;
    margin-bottom: 12px;
}
.sec7 .content .right .map-title::before{
    content: ' ';
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    background: #917962;
}
.sec7 .content .right .address{
    color: #333;
    font-size: 18px;
}
.sec7 .content .right .info-wrap{
    border-bottom: 1px solid #917962;
    border-top: 1px solid #917962;
    margin: 20px 0;
    padding: 20px 0;
}
.sec7 .content .right .info-wrap .title{
    color: #333;
    font-size: 20px;
    font-weight: 700;
}
.sec7 .content .right .info-wrap .info-div .list{
    display: flex;
    gap: 10px;
    align-items: center;
}
.sec7 .content .right .info-wrap .info-div .list .label{
    color: #333;
    font-size: 18px;
    font-weight: 500;
    margin: 15px 0;
}
.sec7 .content .right .info-wrap .info-div .list .text{
    color: #333;
    font-size: 16px;
    font-weight: 300;
}
.sec7 .content .right .info-wrap .info-div .list.bold .label{
    font-weight: 700;
}
.sec7 .content .right .info-wrap .info-div .list.bold .text{
    font-weight: 600;
}
.sec7 .content .right .info-wrap .info-div .list .text.underline{
    text-decoration: underline;
}
.sec7 .content .right .parking-wrap .title{
    color: #333;
    font-size: 18px;
    font-weight: 500;
}
.sec7 .content .right .parking-wrap .content{
    color: #333;
    font-weight: 300;
}
.sec7 .content .right .parking-wrap .title{
    margin-bottom: 10px;
}
.sec7 .content .right .parking-wrap .content p{
    margin: 10px 0;
    color: #333;
    font-weight: 300;
}

/* sec7 반응형 - 1200px 이하 (tablet) */
@media screen and (max-width: 1200px) {
    .sec7{
        padding: 80px 0;
    }
    .sec7 h2 .text{
        font-size: 30px;
    }
    .sec7 .tab-lists{
        flex-wrap: wrap;
        margin: 32px 0;
    }
    .sec7 .tab-list{
        font-size: 18px;
        padding: 5px 14px;
    }
    .sec7 .inner .content-wrap > .content{
        gap: 36px;
    }
    .sec7 .content .map-div{
        height: 380px;
    }
    .sec7 .content .right .map-title{
        font-size: 24px;
    }
}

/* sec7 반응형 - 960px 이하 (small tablet) */
@media screen and (max-width: 960px) {
    .sec7{
        padding: 70px 0;
    }
    .sec7 h2 .text{
        font-size: 26px;
    }
    .sec7 h2 .text p{
        font-size: 16px;
    }
    .sec7 .tab-list{
        font-size: 16px;
        padding: 5px 12px;
    }
    .sec7 .inner .content-wrap > .content{
        gap: 28px;
    }
    .sec7 .content .map-div{
        flex: 1.1;
        height: 340px;
    }
    .sec7 .content .right{
        flex: 0.9;
    }
    .sec7 .content .right .map-title{
        font-size: 22px;
    }
    .sec7 .content .right .address{
        font-size: 16px;
    }
    .sec7 .content .right .info-wrap .title{
        font-size: 18px;
    }
    .sec7 .content .right .info-wrap .info-div .list .label{
        font-size: 16px;
    }
    .sec7 .content .right .info-wrap .info-div .list .text{
        font-size: 15px;
    }
}

/* sec7 반응형 - 650px 이하 (mobile) */
@media screen and (max-width: 650px) {
    .sec7{
        padding: 60px 0;
    }
    .sec7 h2 .text{
        font-size: 22px;
    }
    .sec7 h2 .text p{
        font-size: 15px;
        margin-top: 8px;
    }
    .sec7 .tab-lists{
        flex-wrap: wrap;
        row-gap: 8px;
    }
    .sec7 .tab-list{
        font-size: 15px;
        padding: 5px 10px;
    }
    .sec7 .inner .content-wrap > .content{
        flex-direction: column;
        gap: 24px;
    }
    .sec7 .content .map-div{
        height: 260px;
    }
    .sec7 .content .right .map-title{
        font-size: 20px;
    }
    .sec7 .content .right .address{
        font-size: 15px;
    }
    .sec7 .content .right .info-wrap{
        margin: 16px 0;
        padding: 16px 0;
    }
    .sec7 .content .right .info-wrap .title{
        font-size: 16px;
    }
    .sec7 .content .right .info-wrap .info-div .list .label{
        font-size: 15px;
        margin: 10px 0;
    }
    .sec7 .content .right .info-wrap .info-div .list .text{
        font-size: 15px;
    }
    .sec7 .content .right .parking-wrap .title{
        font-size: 16px;
    }
    .sec7 .content .right .parking-wrap .content p{
        font-size: 15px;
    }
}



/* .sub1_3 .section1 */

.sub-title-div h2{ line-height: 1.5em; }

.sub1_3 .section1{ background: url('../../img/estate/sec7-bg.jpg') no-repeat center center / cover; padding: 100px 0; }
.sub1_3 .section1 .success-tag-list{ justify-content: flex-start; }
.sub1_3 .section1 .tab-content-list{ margin-top: 40px; }
.sub1_3 .section1 .tab-content-list .item{ gap: 52px; display: flex; align-items: flex-start; }
.sub1_3 .section1 .tab-content-list .map-div{ box-shadow: 2px 4px 12px 0 rgba(0, 0, 0, 0.20); background-color:#d9d9d9; flex-shrink: 0; width: 500px; height: 430px; }
.sub1_3 .section1 .tab-content-list .content-div{ color: #333; flex-grow: 1; }
.sub1_3 .section1 .tab-content-list .content-div .map-title{ font-size: 32px; font-weight: 700; position: relative; padding-left: 7px; border-left: 4px solid #917962; }
.sub1_3 .section1 .tab-content-list .content-div .address{ border-bottom: 1px solid #917962; padding: 12px 0; padding-left: 11px; font-size: 20px; line-height: 1.25em; }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap{ padding: 30px 0; border-bottom: 1px solid #776657;  }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .title{ font-size: 20px; font-weight: 700; }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div{ margin-top: 30px; }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list + .list{ margin-top: 14px; }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list{ display: flex; align-items: center; gap: 10px; }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list.bold{ font-weight: 700; }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list .label{ color:inherit; font-weight: 400; font-size: 18px; }
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list .content .t-b{ font-weight: 600;}
.sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list .underline{ text-decoration: underline; }
.sub1_3 .section1 .tab-content-list .content-div .parking-wrap .title{ margin-top: 30px; font-size: 18px; font-weight: 500; }
.sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content{ margin-top: 6px; font-size: 18px; line-height: 1.5em; }
.sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content .number{ padding-left: 20px; margin-top: 13px; position: relative; }
.sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content .number::before{ content:''; position: absolute; left: 0; top: 0; }
.sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content .number.number1::before{ content:'1. '; }
.sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content .number.number2::before{ content:'2. '; }
.sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content .number.number3::before{ content:'3. '; }
.sub1_3 .section1 .tab-content-list > li{ display: none; }
.sub1_3 .section1 .tab-content-list > li.active{ display: block; }

@media screen and (max-width: 1250px) {
    .sub-title-div h2{ font-size: 24px; }
}
@media screen and (max-width: 1000px) {
    .sub1_3 .section1 .tab-content-list .item{ flex-direction: column; gap: 30px; }
    .sub1_3 .section1 .tab-content-list .map-div{ width: 100%; } 
    .sub1_3 .section1 .tab-content-list .content-div{ width: 100%; }
}
@media screen and (max-width: 950px) {
    .sub1_3 .section1 .tab-content-list .content-div .map-title{ font-size: 20px; }
    .sub1_3 .section1 .tab-content-list .content-div .address{ font-size: 16px; }
    .sub1_3 .section1 .tab-content-list .content-div .info-wrap .title{ font-size: 18px; }
    .sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div{ margin-top: 20px; }
    .sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list .label{ font-size: 16px; }
    .sub1_3 .section1 .tab-content-list .content-div .parking-wrap .title{ font-size: 16px; }
    .sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content{ font-size: 16px; }
}
@media screen and (max-width: 650px) {
    .sub1_3 .section1{ padding: 50px 0; }
    .sub-title-div h2{ font-size: 18px; }
    .sub1_3 .section1 .tab-content-list .map-div{ height: 60vw; }
    .sub1_3 .section1 .tab-content-list .content-div .address{ font-size: 14px; }
    .sub1_3 .section1 .tab-content-list .content-div .info-wrap .title{ font-size: 16px; }
    .sub1_3 .section1 .tab-content-list .content-div .info-wrap .info-div .list .label{ font-size: 14px; }
    .sub1_3 .section1 .tab-content-list .content-div .parking-wrap .title{ font-size: 14px; }
    .sub1_3 .section1 .tab-content-list .content-div .parking-wrap .content{ font-size: 14px; }
}

/* .sub .sub-title-div */
.sub-title-div .bar{ width: 80px; height: 4px; background-color: #917962; }
.sub-title-div h2{ color: #222; margin-top: 22px; font-size: 48px; }  
.sub-title-div h2 b{ font-weight: 700; }
.sub-title-div h2 .gold{ color: #917962; }
.sub-title-div h2 .mo-br{ display: none; }
.sub-title-div.center h2{ font-weight: 600; }
.sub-content-div{ word-break: keep-all; font-size: 20px; line-height: 1.5em; margin-top: 20px; color: #7f7f7f; opacity: .9; }
@media screen and (max-width: 1920px) {
    .sub-title-div h2,
    .sub-title-div h2 b{
        font-size: 36px;
    }
    .sub1_3 .section1 .tab-content-list .content-div .map-title{
        font-size: 20px;
    }
    .sub1_3 .section1 .tab-content-list .content-div .address{
        font-size: 16px;
    }
}
@media screen and (max-width: 1250px) {
    .sub-title-div.center .bar{ width: 60px; }
    .sub-title-div h2{ font-size: 28px; margin-top: 10px; }
    .sub-content-div{ font-size: 16px; }
}
@media screen and (max-width: 650px) {
    .sub-title-div.center .bar{ width: 40px; height: 2px; }
    .sub-title-div h2{ font-size: 24px; }
    .sub-content-div{ font-size: 14px; }
}


.success-tag-list{ justify-content: center; margin-top: 20px; display:flex; flex-wrap: wrap; gap: 10px; }
.success-tag-list .tag-btn{ line-height: 1.5em; border: none; border-radius: 4px; padding: 5px 15px; background-color: #ccc; color: #777; font-size: 20px; }
.success-tag-list .tag-btn.active{ background-color: #917962; color: #fff; }

@media screen and (max-width: 1250px) {
    .success-tag-list .tag-btn{ font-size: 16px; }
}
@media screen and (max-width: 650px) {
    .success-tag-list .tag-btn{ font-size: 14px; }
}


/* footer */
footer{ background-color: #2B2E33; border-top: rgba(255,255,255,.4); }
footer .box1{ display: flex; justify-content: space-between; align-items: center; padding: 50px 0 20px; border-bottom: 1px solid #8C8279; }
footer .site-dropdown{ position: relative; }
footer .site-dropdown .dropdown-box{ display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 12px 20px; min-width: 220px; background-color: transparent; border: 1px solid #fff; color: #FFF; font-size: 16px; font-weight: 500; cursor: pointer; }
footer .site-dropdown .dropdown-box::after{ content: '\F282'; font-family: 'bootstrap-icons'; transition: 0.3s; }
footer .site-dropdown .dropdown-box.active::after{ transform: rotate(180deg); }
footer .site-dropdown .dropdown-box:hover{ background: #454950; border-color: #9a9188; }
footer .site-dropdown .dropdown-box[aria-expanded="true"]::after{ transform: rotate(180deg); }
footer .site-dropdown .dropdown-list{ display: none; position: absolute; top: 100%; right: 0; margin-top: 6px; min-width: 100%; background: #3d4046; border: 1px solid #8C8279; box-shadow: 0 8px 24px rgba(0,0,0,.25); overflow: hidden; z-index: 10; transform: translateY(-6px); transition: opacity .2s, visibility .2s, transform .2s; }
footer .site-dropdown.open .dropdown-list{ transform: translateY(0); }
footer .site-dropdown .dropdown-menu{ display: block; padding: 12px 20px; color: #FFF; font-size: 15px; text-decoration: none; border-bottom: 1px solid rgba(140,130,121,.3); }
footer .site-dropdown .dropdown-menu:last-child{ border-bottom: 0; }
footer .site-dropdown .dropdown-menu:hover{ background: #454950; color: #e8e6e3; }
footer .box2{ padding: 35px 0 50px 0; color: #FFF; }
footer .box2 .info-list{ display: flex; gap: 20px; flex-wrap: wrap; justify-content: space-between; }
footer .box2 .info-list > li.full{ width: 100%; }
footer .box2 .info-list > li .label{ line-height: 1.5em; font-size: 18px; font-weight: 700; }
footer .box2 .info-list > li .content{ color: #808285; line-height: 1.5em; padding-left: 10px; position: relative; }
footer .box2 .info-list > li .content::before{ content: '・'; position: absolute; left: 0; top: 0; }
footer .box2 .half-div{ display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 20px; }
footer .box2 .address-list{ line-height: 1.5em; display: flex; }
footer .box2 .address-list + .address-list{ margin-top: 5px; }
footer .box2 .address-list .name{ font-weight: 700; flex-shrink: 0; width: 124px; font-size: 18px; color: #BBB; }
footer .box2 .address-list .address{ color: #BBB; font-size: 15px; }
footer .box2 .copy-right{ font-size: 14px; color: #808285; }

@media screen and (max-width: 1250px) {
    footer .logo{ width: 160px; }
    footer .site-dropdown .dropdown-box{ min-width: 200px; font-size: 15px; padding: 10px 16px; }
    footer .site-dropdown .dropdown-menu{ padding: 10px 16px; font-size: 14px; }
    footer .box2 .info-list{ justify-content: flex-start; }
    footer .box2 .info-list > li{ width: calc((100% / 3) - 15px); }
    footer .box2 .info-list > li .label{ font-size: 16px; }
    footer .box2 .address-list{ flex-direction: column; }
}
@media screen and (max-width: 650px) {
    footer{ font-size: 14px; }
    footer .box1{ flex-direction: column; align-items: flex-start; gap: 20px; }
    footer .logo{ width: 120px; }
    footer .site-dropdown .dropdown-box{ min-width: 100%; width: 100%; }
    footer .site-dropdown .dropdown-list{ left: 0; right: 0; min-width: 100%; }
    footer .box2 .info-list > li{ width: calc((100% / 2) - 10px); }
    footer .box2 .address-list + .address-list{ margin-top: 10px; }
    footer .box2 .address-list .name{ font-size: 16px; }
    footer .box2 .address-list .address{ font-size: 14px; }
}

