/* =========================
   공통 / PC 기본
========================= */

body{
    overflow-x:hidden;
}

.site-header {
    background:#fff !important;
	    
    transition:
    background .3s ease;
}
/* 스크롤 시작 시 */
.site-header.scrolled{
    background:rgba(132,132,132,0.2) !important;

    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}
.main-nav .gnb > li > span{
    color:#000 !important;
}

.main-nav .gnb > li:hover > span{
    color:#fff !important;
}

.main-container{
    padding-top:90px;
}

/* =========================
   서브 비주얼
========================= */

.sub-bg {
    position: relative;
    width: 100%;
    height: 560px;
    max-width: 1920px;
    margin: 0 auto;
    overflow: hidden;
}

.sub-bg::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(/images/parallax_bg.jpg) center center / cover no-repeat;
    transform: scale(1.2);
    transition: transform 1s ease-out;
    z-index: 0;
}

.sub-bg.loaded::before {
    transform: scale(1);
}

.sub-text-title{
    width:250px;
    height:100px;
    text-align:center;
    position:absolute;
    top:50%;
    left:50%;
    margin:-50px 0 0 -125px;
    z-index:1;
}

.sub-text-title p.big-title{
    font-size:45px;
    font-weight:bold;
    color:#fff;
    margin:0;
}

.sub-text-title p.small-title{
    font-size:24px;
    color:#fff;
    margin:0;
}

/* =========================
   사이트맵 메뉴
========================= */

.site-map{
    width:100%;
    max-width:1920px;
    margin:0 auto;
    background-color:#432c1c;
}

.site-map-section {
    max-width:1200px;
    width:100%;
    margin:0 auto;
    padding:0;
    box-sizing:border-box;
}

.menu {
    display: flex;
    list-style: none;
    padding:0;
    margin: 0;
    align-items: center;
}

.menu-item {
    position: relative;
    min-width:50px;
    line-height:50px;
    color:#fff;
    border-left:0.5px solid #eee;
}

.home{
    text-align:center;
    background:#fff;
    border-left:none;
}

.home a{
    color:#432c1c;
}

.right-border{
    border-right:0.5px solid #eee;
}

.left-border_none{
    border-left:none;
}

.menu-link {
    cursor: pointer;
    font-weight: bold;
    display: block;
}

.has-submenu{
    width:180px;
    padding:0 15px;
    position:relative;
    background:#805234;
}

.has-submenu span.arrow{
    position:absolute;
    right:5px;
    width:40px;
    line-height:40px;
    font-size:20px;
    color:#fff;
    top:5px;
}

.submenu {
    position: absolute;
    top: 100%;
    left: 0;
    list-style: none;
    padding: 0;
    margin: 0;
    width:100%;
    border:none;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
    z-index: 10;
}

.submenu li{
    line-height:30px;
    border-top:1px solid #fff;
}

.submenu li a {
    display: block;
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
    padding:5px 5px 5px 30px;
    font-size:12px;
}

.submenu li a:hover{
    background:#432c1c;
    color:#fff;
}

.menu-item.active .submenu {
    opacity: 1;
    visibility: visible;
    max-height:500px;
    background:#805234;
}

.arrow i {
    display: inline-block;
    transition: transform 0.3s ease;
    transform-origin: center center;
}

.menu-item.active .arrow i {
    transform: rotate(90deg);
}

/* =========================
   타이틀
========================= */

.title{
    width:1200px;
    margin:50px auto 100px;
    position:relative;
}

.title p{
    font-size:35px;
    text-align:center;
    font-weight:bold;
}

.title span{
    display:block;
    position:absolute;
    width:50px;
    height:5px;
    border-bottom:5px solid #006a82;
    bottom:-30px;
    left:50%;
    margin-left:-25px;
}

/* =========================
   테이블
========================= */

.project-table {
    width: 100%;
    max-width:1200px;
    margin:0 auto;
    border-collapse: collapse;
    font-family: 'Pretendard', sans-serif;
    border-top: 2px solid #222;
    border-bottom: 2px solid #222;
}

.project-table th,
.project-table td {
    border: 1px solid #ddd;
    padding: 22px 18px;
    text-align: center;
    font-size: 18px;
    color: #666;
}

.project-table th {
    background: #f1f1f1;
    color: #111;
    font-weight: 700;
    width: 220px;
}

.project-table .sub-th {
    width: 140px;
    background: #f7f7f7;
}

.project-table td {
    background: #fafafa;
    font-weight: 400;
}

/* =========================
   영상 / 이미지
========================= */

.content_img{
    width:1200px;
    margin:30px auto;
    position:relative;
}

.content_img img{
    max-width:100%;
}

.video-wrap{
    position:relative;
    width:1200px;
    max-width:100%;
    margin:30px auto;
    padding-top:56.25%;
    height:0;
    overflow:hidden;
    z-index:1;
}

.video-wrap iframe{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    z-index:1;
}

/* =========================
   설명 문구
========================= */

.description{
    margin:20px auto 50px;
    max-width:1200px;
    width:100%;
    padding:20px 10px;
    background:url(/images/sub_f_img.png) no-repeat;
    background-position:50px center;
    background-color:#eee;
    box-sizing:border-box;
}

.description p{
    margin:0 0 10px 150px;
    padding:0;
    font-size:14px;
}

.description p.margin-0{
    margin-bottom:0;
}

/* =========================
   층별 탭
========================= */

.floor-tabs {
    margin: 30px auto;
    max-width: 1200px;
}

.floor-tab-buttons {
    display: flex;
    justify-content: flex-start;
    list-style: none;
    padding: 0;
    margin-bottom: 20px;
    border-bottom: 1px solid #ccc;
}

.floor-tab-buttons li {
    width:200px;
    padding: 20px;
    margin: 0;
    cursor: pointer;
    font-weight: bold;
    border: 1px solid #ccc;
    border-bottom: none;
    border-right:none;
    background: #f0f0f0;
    transition: background 0.3s;
    text-align:center;
    box-sizing:border-box;
}

.floor-tab-buttons li:last-child{
    border-right:1px solid #ccc;
}

.floor-tab-buttons li:first-child{
    margin-left:0;
}

.floor-tab-buttons li.active {
    background: #fff;
    border-top: 3px solid #000;
    color: #000;
}

.floor-images {
    position: relative;
}

.floor-img {
    display: none;
    max-width: 100%;
    height: auto;
    border: 1px solid #eee;
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}

.floor-img.active {
    display: block;
}

/* =========================
   기타 이미지 링크
========================= */

.center{
    text-align:center;
}

.ret_ntc_img{
    position: relative;
    display: inline-block;
}

.ret_ntc_img img{
    display: block;
    max-width: 100%;
}
a.navbutton{
	display:inline-block;
	height:50px;
}
.link-zone {
    position: absolute;
    display: block;
    z-index: 10;
}

/* =========================
   관심고객 / 문의
========================= */

.online_inquiry{
    width:1200px;
    margin:0 auto 50px;
    padding:50px 0 100px;
    background-color:#432c1c;
    background-image:url('/images/customer_img.jpg');
    background-position:center bottom;
    background-size:cover;
    background-repeat:no-repeat;
    border-radius:20px;
}

.online_inquiry h2{
    text-align:center;
    color:#fff;
}

.online_inquiry label{
    color:#fff;
}

.ment{
    width:1200px;
    margin:20px auto;
    color:#666;
    text-align:center;
    font-size:18px;
}

.inquiry-form {
    max-width: 600px;
    margin: 20px auto 40px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.inquiry-form label {
    font-weight: bold;
    margin-top:30px;
}

.inquiry-form input,
.inquiry-form select,
.inquiry-form textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-sizing:border-box;
}

.checkbox-label {
    display: flex;
    align-items: center;
    font-size: 14px;
    gap: 8px;
}

.checkbox-label input[type="checkbox"]{
    width:40px;
}

/* =========================
   공통 버튼
========================= */

button[type="submit"] {
    background: #fff;
    color: #000;
    padding: 12px;
    border: none;
    border-radius: 6px;
    font-weight: bold;
    cursor: pointer;
    margin-top: 50px;
    transition: background-color 0.3s ease, color 0.3s ease;
}

button[type="submit"]:hover {
    background-color: #432c1c;
    color: #fff;
    border:1px solid #fff;
}

/* =========================
   PC / 모바일 노출
========================= */

.pc-block{
    display:block;
}

.mobile-block{
    display:none;
}

/* =========================
   플로팅 버튼
========================= */

.floating-consult-btn {
    position: fixed;
    bottom: 30px;
    right: 20px;
    z-index: 999;
    transition: transform 0.3s;
    background:transparent;
}

.floating-consult-btn img {
    width: 60px;
    height: auto;
}

.floating-kakao-btn {
    position: fixed;
    bottom: 130px;
    right: 20px;
    z-index: 1001;
}

.floating-kakao-btn img {
    width: 60px;
    height: auto;
}

/* =========================
   다운로드 / 시설안내 박스
========================= */

.exclusive-form-wrap{
    width:1200px;
    margin:40px auto;
    padding:40px;
    box-sizing:border-box;
}

.download-form-wrap{
    width:600px;
    margin:80px auto;
    padding:60px;
    background:#fff;
    border-radius:20px;
    box-shadow:0 10px 30px rgba(0,0,0,0.08);
    box-sizing:border-box;
}

.download-form-wrap h1{
    font-size:32px;
    margin-bottom:40px;
    text-align:center;
    color:#432c1c;
}

.download-form-wrap form{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.download-form-wrap input{
    height:55px;
    padding:0 20px;
    border:1px solid #ddd;
    border-radius:10px;
    font-size:16px;
    box-sizing:border-box;
}

.download-form-wrap button{
    height:60px;
    border:none;
    border-radius:10px;
    background:#432c1c;
    color:#fff;
    font-size:18px;
    font-weight:700;
    cursor:pointer;
}

.download-form-wrap button:hover{
    opacity:0.9;
}

.download-check-title{
    margin-top:10px;
    margin-bottom:15px;
    font-size:16px;
    font-weight:600;
    color:#432c1c;
}

.download-check-wrap{
    display:flex;
    align-items:center;
    gap:30px;
    margin-bottom:40px;
}

.download-check-item{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:18px;
    cursor:pointer;
}

.download-check-item input[type="checkbox"]{
    width:18px;
    height:18px;
}

.download-guide-box{
    background:#fff;
    border-radius:20px;
    padding:35px 30px;
    margin-bottom:30px;
    display:flex;
    align-items:center;
    gap:25px;
    box-shadow:0 10px 30px rgba(0,0,0,0.06);
    border:1px solid #eee;
}

.guide-icon{
    width:70px;
    height:70px;
    min-width:70px;
    border-radius:50%;
    background:#432c1c;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:28px;
}

.guide-text h2{
    font-size:24px;
    font-weight:700;
    margin-bottom:12px;
    color:#222;
}

.guide-text p{
    font-size:16px;
    line-height:1.7;
    color:#555;
    margin-bottom:10px;
}

.guide-text span{
    font-size:13px;
    color:#999;
}

/* =========================
   개인정보 동의
========================= */

.privacy-consent{
    margin-top:25px;
}

.privacy-check{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:15px;
    font-weight:600;
    color:#222;
    margin-bottom:15px;
    cursor:pointer;
}

.privacy-check input{
    width:18px;
    height:18px;
}

.privacy-box{
    height:100px;
    overflow-y:scroll;
    background:#f8f8f8;
    border:1px solid #e5e5e5;
    border-radius:10px;
    padding:0 15px;
    font-size:14px;
    line-height:1.8;
    color:#666;
}

.privacy-box p{
    line-height:25px;
}

/* =========================
   모바일
========================= */

@media (max-width:768px){

    .site-header,
    .mobile-header,
    header{
        position:fixed;
        top:0;
        left:0;
        width:100%;
        z-index:99999;
    }

    .main-container {
        padding-top:0;
    }

    .sub-margin{
        height:60px;
        width:100%;
        background:#000;;
    }

    .sub-bg {
        max-width:100%;
        height:200px;
        z-index:1;
    }

    .sub-text-title{
        width:220px;
        height:80px;
        margin:-40px 0 0 -110px;
    }

    .sub-text-title p.big-title{
        font-size:32px;
    }

    .sub-text-title p.small-title{
        font-size:16px;
    }

    .menu-item {
        line-height:40px;
    }

    .menu-link {
        font-size:13px;
    }

    .has-submenu{
        width:150px;
        padding:0 10px;
    }

    .has-submenu span.arrow {
        line-height:30px;
        width:20px;
        font-size:13px;
    }

    .title{
        width:100%;
        margin:30px auto 50px;
    }

    .title p{
        font-size:28px;
    }

    .title span{
        bottom:-20px;
    }

    .project-table th,
    .project-table td {
        padding:14px 5px;
        font-size:12px;
    }

    .project-table th {
        width:110px;
    }

    .project-table .sub-th {
        width:auto;
        white-space:nowrap;
    }

    .content_img{
        width:100%;
        margin:20px auto 0;
    }

    .content_img img{
        width:100%;
    }

    .video-wrap{
        width:100%;
        margin:20px auto 0;
        padding-top:56.25%;
        z-index:1;
    }

    .video-wrap iframe{
        z-index:1;
    }

    .description{
        margin:20px auto 0;
        max-width:100%;
        width:100%;
        padding:20px 10px;
        background-color:#eee;
        background-image:none;
        box-sizing:border-box;
    }

    .description p{
        margin:0 0 10px 0;
        padding:0 20px;
        font-size:12px;
        word-break:keep-all;
        letter-spacing:-0.3px;
    }

    .description p.margin-0{
        margin-bottom:0;
    }

    .indent-multiline {
        text-indent:-1em;
    }

    .floor-tabs {
        margin:30px auto;
        max-width:100%;
    }

    .floor-tab-buttons {
        overflow-x:auto;
    }

    .floor-tab-buttons li {
        width:200px;
        padding:10px 20px;
        white-space:nowrap;
    }

    .ment{
        width:90%;
        margin:20px auto;
        color:#777;
		font-size:13px;
        text-align:center;
        padding:0 20px;
        box-sizing:border-box;
        word-break:keep-all;
        letter-spacing:-0.3px;
    }

    .online_inquiry{
        width:90%;
        margin:0 auto 50px;
        padding:20px 10px 40px;
        background:url(/images/customer_img.jpg) center center / cover no-repeat;
        box-sizing:border-box;
    }

    .inquiry-form {
        max-width:100%;
        margin:20px auto;
        display:flex;
        flex-direction:column;
        gap:5px;
        padding:0 10px;
    }

    .inquiry-form label {
        margin-top:10px;
    }

    .checkbox-label input[type="checkbox"]{
        width:20px;
    }

    .pc-block{
        display:none;
    }

    .mobile-block{
        display:block;
    }

    .floating-consult-btn {
        bottom:30px;
        right:10px;
        z-index:999;
    }

    .floating-consult-btn img {
        width:50px;
    }

    .floating-kakao-btn {
        bottom:100px;
        right:10px;
        z-index:1001;
    }

    .floating-kakao-btn img {
        width:50px;
    }

    .exclusive-form-wrap{
        width:92%;
        margin:30px auto;
        padding:0;
    }

    .download-form-wrap{
        width:92%;
        margin:40px auto;
        padding:25px 18px;
        border-radius:15px;
        box-sizing:border-box;
    }

    .download-form-wrap h1{
        font-size:26px;
        margin-bottom:25px;
        line-height:1.4;
    }

    .download-form-wrap form{
        gap:15px;
    }

    .download-form-wrap input{
        height:50px;
        padding:0 15px;
        font-size:15px;
    }

    .download-form-wrap button{
        height:54px;
        font-size:16px;
        margin-top:10px;
    }

    .download-guide-box{
        flex-direction:column;
        text-align:center;
        padding:25px 18px;
        gap:18px;
        border-radius:15px;
    }

    .guide-icon{
        width:60px;
        height:60px;
        min-width:60px;
        font-size:24px;
    }

    .guide-text h2{
        font-size:20px;
        margin-bottom:10px;
        line-height:1.4;
        word-break:keep-all;
    }

    .guide-text p{
        font-size:14px;
        line-height:1.6;
        margin-bottom:8px;
        word-break:keep-all;
    }

    .guide-text span{
        font-size:12px;
        line-height:1.5;
        display:block;
    }

    .download-check-title{
        font-size:15px;
        margin-bottom:10px;
    }

    .download-check-wrap{
        flex-direction:column;
        align-items:flex-start;
        gap:15px;
        margin-bottom:25px;
    }

    .download-check-item{
        font-size:16px;
    }

    .download-check-item input[type="checkbox"]{
        width:20px;
        height:20px;
    }

    .privacy-consent{
        margin-top:10px;
    }

    .privacy-check{
        align-items:flex-start;
        font-size:14px;
        line-height:1.5;
    }

    .privacy-check input{
        margin-top:2px;
        min-width:18px;
    }

    .privacy-box{
        padding:15px;
        font-size:13px;
        line-height:1.7;
        word-break:keep-all;
    }

}
/*모바일br 허용*/
.mo-br{
	display:none;
}

@media (max-width:768px){

	.mo-br{
		display:block;
	}

}