@charset "utf-8";
* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
html,
body {
    width: 100%;
    position: relative;
    font-family: 'lato', sans-serif;
    background-color: #fffbf4;
}

section {
    position: relative;
    background-color: #fffbf4;
    z-index: 10;
}
li {
    list-style: none;
}
a {
    text-decoration: none;
    color: #212121;
}
table {
    outline: 0px;
    border-spacing: 0px;
}
figure {
    position: relative;
}
a,
button,
input {
    box-shadow: none;
    border: 0;
    background-color: transparent;
}
button,
i {
    color: #fff;
}
.swiper-slide {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    background-image: none !important;
}
.swiper-button-prev,
.swiper-button-next {
    position: relative;
    width: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    background: none;
}

.btn-top {
    z-index: 500;
    cursor: pointer;
    box-shadow: 1px 1px 5px 1px #cccccc;
    position: fixed;
    border-radius: 50px;
    background-color: #fff;
    color: #354246;
    width: 50px;
    height: 50px;
    right: 130px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    bottom: 80px;
    font-weight: 300;
    font-size: 13px;
    font-family: 'Pretendard-Medium';
}
.btn-top span {
    font-weight: 600;
}

.inner-con {
    max-width: 1700px;
    margin: 0 auto;
    position: relative;
}

.dash {
    position: relative;
    padding-left: 20px;
}

.dash::before {
    content: '';
    position: absolute;
    top: 0.5em;
    left: 0;
    width: 5px;
    height: 1px;
    background-color: #78645c;
    transform: translateY(-50%);
}

.mo {
    display: none;
}

.m-map {
    display: none;
}
.m-br {
    display: none;
}
.pc-br {
    display: block;
}
.m-price {
    display: none;
}

.swiper-slide {
    width: 100%;
    height: 100%;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
}

.vdo-container {
    display: none;
}

/* 헤더 */
#hd {
    position: fixed;
    top: 0%;
    left: 0;
    width: 100%;
    z-index: 101;
    transition: 0.8s all ease-in-out;
}

#hd .hd-inner {
    width: 1250px;
    padding: 10px 0;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    transition: 0.8s all ease-in-out;
}

#hd.fixed {
    background-color: rgba(0, 0, 0, 0.15);
}

#hd.fixed .hd-inner {
    padding: 5px 0;
}

#hd .hd-inner .hd-gnb {
    display: flex;
    align-items: flex-start;
    width: 33.3333333333%;
    padding-top: 30px;
}

#hd .hd-inner .hd-gnb .gnb {
    text-align: center;
    font-family: 'MapoGoldenPier';
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 25px;
    display: block;
    width: 33.3333333%;
    height: 100%;
}

#hd .hd-inner .hd-gnb .gnb a {
    color: #fff;
    width: 100%;
}

/* PC 서브메뉴 스타일 */
#hd .hd-inner .hd-gnb .gnb .pc-sub-menu {
    padding: 0px 0 0 0;
    background: transparent;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s ease;
    margin-top: 10px;
}

#hd .hd-inner .hd-gnb .gnb .pc-sub-menu a {
    display: block;
    font-family: 'MapoGoldenPier';
    padding: 5px 0px;
    color: #fff;
    font-size: 14px;
    font-weight: 400;
    text-decoration: none;
    transition: all 0.2s ease;
    width: 100%;
    letter-spacing: -2px;
}

/* 헤더 호버 시 확장 및 서브메뉴 표시 */
#hd {
    transition: all 1s;
    height: 110px;
    overflow: hidden;
}

#hd:hover {
    height: 390px;
    background-color: rgba(0, 0, 0, 0.15);
}

#hd:hover .hd-inner {
    align-items: flex-start;
    padding-bottom: 0px;
}

#hd:hover .hd-inner .hd-gnb {
    align-items: flex-start;
}

#hd:hover .hd-inner .hd-gnb .gnb .pc-sub-menu {
    opacity: 1;
    pointer-events: auto;
}

#hd .hd-inner .logo {
    width: 170px;
    height: 80px;
    display: block;
    margin: 0 110px;
}

#hd .hd-inner .logo img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.mo-reser-btns {
    display: none;
}

/* PC에서는 모바일 메뉴 숨김 */
.mo-menu-wrap {
    display: none;
}

@media (max-width: 1024px) {
    #hd.fixed {
        background-color: transparent;
    }

    #hd .hd-inner {
        width: 90%;
        padding: 10px 20px;
        justify-content: center;
    }

    #hd .hd-inner .hd-gnb {
        display: none;
    }

    #hd .hd-inner .logo {
        width: 130px;
        height: 50px;
        display: block;
        margin: 0px;
    }

    /* 모바일에서 PC 서브메뉴 숨김 */
    #hd .hd-inner .hd-gnb .gnb .pc-sub-menu {
        display: none !important;
    }

    /* 모바일에서 헤더 호버 효과 비활성화 */
    #hd:hover {
        background: transparent;
        height: auto;
        min-height: auto;
    }

    #hd:hover .hd-inner {
        align-items: center;
        padding-top: 10px;
        padding-bottom: 20px;
    }

    .mo-reser-btns {
        position: absolute;
        top: 35%;
        right: 20px;
        transform: translateY(-50%);
        z-index: 10;
        width: 45px;
        height: 45px;
        border-radius: 50%;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: background 0.25s;
    }

    .mo-reser-btns:before {
        content: '';
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        border-radius: 50%;
        width: 100%;
        height: 100%;
        z-index: 3;
        background-color: rgba(255, 255, 255, 0.5);
        opacity: 1;
        will-change: transform, opacity;
        transition: 0.8s all ease-in-out;
    }

    .mo-reser-btns:after {
        width: 30px;
        height: 30px;
        content: '';
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
        border-radius: 50%;
        z-index: 4;
        background-color: rgba(255, 255, 255, 0.5);
        transition: 0.8s;
    }

    .mo-reser-btns .mo-reser-btn {
        position: relative;
        z-index: 10;
        border-radius: 50%;
        border: none;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 5px;
        justify-content: center;
        box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    }

    .mo-reser-btns .mo-reser-btn .line {
        width: 14px;
        height: 1px;
        background: #005142;
        display: block;
        transition: 0.6s all ease-in-out;
    }

    .mo-reser-btns.click .mo-reser-btn {
        gap: 0;
    }

    .mo-reser-btns.click .mo-reser-btn .line.line1 {
        transform: rotate(45deg);
    }

    .mo-reser-btns.click .mo-reser-btn .line.line2 {
        display: none;
    }

    .mo-reser-btns.click .mo-reser-btn .line.line3 {
        transform: rotate(-45deg);
    }

    /* 모바일 메뉴 */
    .mo-menu-wrap {
        display: block;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: #005142;
        z-index: 1000;
        opacity: 0;
        visibility: hidden;
        transition: all 0.8s ease;
        pointer-events: none;
        z-index: 1;
    }

    .mo-menu-wrap.on {
        opacity: 1;
        visibility: visible;

        pointer-events: auto;
    }

    .mo-menu-wrap .mo-menu-logo {
        width: auto;
        height: 55px;
        object-fit: contain;
        position: absolute;
        top: 15px;
        left: 0;
        
    }

    .mo-menu-wrap .mo-menu-inner {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        text-align: center;
        display: flex;
        flex-direction: column;
        gap: 30px;
    }

    .mo-menu-wrap .mo-menu-item {
        position: relative;
    }

    .mo-menu-wrap .mo-menu-btn {
        color: #fff;
        font-family: 'Arita Buri KR';
        font-size: 21px;
        font-weight: 500;
        line-height: 140%;
        position: relative;
        background: none;
        border: none;
        cursor: pointer;
        padding: 0;
        width: 100%;
        text-align: center;
    }

    .mo-menu-wrap .mo-sub-menu {
        max-height: 0;
        overflow: hidden;
        margin-top: 0;
        transition: all 1s;
    }

    .mo-menu-wrap .mo-menu-item.active .mo-sub-menu {
        max-height: 300px;
        margin-top: 10px;
    }

    .mo-menu-wrap .mo-sub-menu a {
        color: #fff;
        font-family: 'Arita Buri KR';
        font-size: 16px;
        font-weight: 400;
        transition: all 0.3s ease;
        line-height: 140%;
        display: block;
        margin-bottom: 10px;
        opacity: 0.8;
    }

    .mo-menu-wrap .mo-menu-item.active .mo-sub-menu a {
        opacity: 0.8;
    }
}

/* 메인 슬라이드 */

.top-section {
    height: 100vh;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.top-slide-section .top-img {
    height: 100%;
    width: 100%;
    background-size: cover;
    background-repeat: no-repeat;
}

.main-vdo-wrap {
    height: 100%;
    width: 100%;
    position: relative;
    overflow: hidden;
}

.main-vdo-wrap .main-obj {
    position: absolute;
    width: 102%;
    height: auto;
}

.main-vdo-wrap #ridge1 {
    z-index: 4;
    bottom: 0%;
    left: 0%;
}

.main-vdo-wrap #ridge2 {
    z-index: 5;
    right: 0%;
    bottom: 0%;
}
.main-vdo-wrap #ridge3 {
    z-index: 6;
    bottom: 0%;
    left: 0%;
}
.main-vdo-wrap #ridge4 {
    z-index: 7;
    bottom: -0.1%;
    left: 0%;
}

.main-vdo-wrap .obj {
    position: absolute;
    object-fit: contain;
}

.main-vdo-wrap .obj#sun {
    z-index: 2;
    left: 20%;
    bottom: 3%;
    width: 145px;
    height: 130px;
}

.main-vdo-wrap .obj#bird {
    z-index: 7;
    left: 50%;
    bottom: 6%;
    width: 480px;
    height: 105px;
}

.main-vdo-wrap .main-obj,
.main-vdo-wrap .obj {
    /* 등장 전, 20% 아래 + 투명 */
    transform: translateY(20%);
    opacity: 0;
    will-change: transform, opacity;
}

/* #bird 는 위치를 안 움직이므로 transform 제거 */
.main-vdo-wrap #bird {
    transform: none;
}

/* ===== 키프레임 ===== */
@keyframes slideUp {
    from {
        transform: translateY(20%);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* ===== 개별 오브젝트에 애니메이션·딜레이 지정 ===== */
.main-vdo-wrap #ridge1 {
    animation: slideUp 0.8s ease-out forwards 0s;
}
.main-vdo-wrap #ridge2 {
    animation: slideUp 0.8s ease-out forwards 0.4s;
}
.main-vdo-wrap #ridge3 {
    animation: slideUp 0.8s ease-out forwards 0.4s;
}
.main-vdo-wrap #ridge4 {
    animation: slideUp 0.8s ease-out forwards 0.8s;
}
.main-vdo-wrap #sun {
    animation: slideUp 0.8s ease-out forwards 1.2s;
}

.main-vdo-wrap #bird {
    animation: fadeIn 0.8s ease-out forwards 1.6s;
}

.main-vdo-wrap .video-wrap {
    height: 100%;
    width: 100%;
    position: relative;
}
.main-vdo-wrap .video-wrap iframe {
    height: 100%;
    width: 100%;
    position: relative;
}

.main-vdo-wrap .video-wrap {
    position: relative;
}
.main-vdo-wrap .video-wrap .sound-btn {
    position: absolute;
    left: 10rem;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    background: rgba(0, 0, 0, 0.5);
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.main-vdo-wrap .video-wrap .sound-btn i {
    font-size: 1rem;
}
.main-vdo-wrap .video-wrap .sound-btn:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

.circle-menu-wrap1 {
    position: absolute;
    bottom: 43%;
    right: 4%;
    z-index: 11;
}

.circle-menu-wrap2 {
    position: absolute;
    bottom: 30%;
    right: 4%;
    z-index: 11;
}

.circle-menu {
    --diameter: 120px; /* ★ 한 줄로 크기 제어 */
    display: block;
    width: var(--diameter);
    height: var(--diameter);
    padding: 0;
    border: 0;
    background: none;
    cursor: pointer;
}
.circle-menu .ring {
    width: 100%;
    height: 100%;
}

/* 인터랙션(예시) */
.circle-menu:hover .ring > circle {
    fill: rgba(255, 255, 255, 0.5);
    transition: fill 0.25s ease;
}

.floating-btns {
    position: fixed;
    right: 5.5%;
    bottom: 12%;
    display: flex;
    flex-direction: column;
    gap: 16px;
    z-index: 9999;
}

.floating-btn {
    width: 64px;
    height: 64px;
    background: #15594a;
    border-radius: 50%;
    border: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
    cursor: pointer;
    transition: background 0.2s;
    color: #fff;
    font-size: 1.1rem;
    font-family: 'AritaBuriKR-Bold', sans-serif;
    gap: 4px;
}

.floating-btn i {
    font-size: 30px;
}

.floating-btn:hover {
    background: #1b7a65;
}

.floating-btn span {
    margin-top: 0px;
    color: #fff;
    font-size: 14px;
    line-height: normal;
    font-family: 'Pretendard-Regular';
}

@media (max-width: 1024px) {
    /* 메인 슬라이드 */

    .top-section {
        height: auto;
    }

    .main-vdo-wrap {
        height: 400px;
    }

    .main-vdo-wrap .video-wrap iframe {
        width: 180vw;
        transform: translateX(-90px);
        height: 100%;
    }

    .main-vdo-wrap .main-obj {
        width: 100%;
        height: auto;
    }

    .main-vdo-wrap .obj#sun {
        width: 50px;
        height: 60px;
        left: 17%;
        bottom: -10px;
    }

    .main-vdo-wrap .obj#bird {
        left: 39%;
        bottom: 6%;
        width: 160px;
        height: 30px;
    }
    .main-vdo-wrap .video-wrap .sound-btn {
        left: 10px;
        width: 30px;
        height: 30px;
    }

    .circle-menu-wrap1 {
        display: none;
    }

    .circle-menu-wrap2 {
        display: none;
    }

    .floating-btns {
        top: 75%;
        bottom: unset;
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .floating-btn {
        width: 45px;
        height: 45px;
        box-shadow: 1px 2px 4px rgba(0, 0, 0, 0.15);
    }

    .floating-btn i {
        font-size: 20px;
    }

    .floating-btn span {
        font-size: 12px;
    }
}

.sub-slide-wrap {
    width: 100%;
    height: 100vh;
    position: relative;
}

.sub-img-wrap {
    width: 100%;
    height: 100vh;
    position: relative;
}

.sub-img-wrap iframe {
    width: 100%;
    height: 100%;
}

.sub-img-wrap .top-img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.sub-img-wrap .tit {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
    text-align: center;
}

.sub-img-wrap .tit p {
    color: #fffbf4;
    font-family: 'MapoGoldenPier';
    font-size: 20px;
    line-height: 35px;
    margin-bottom: 10px;
}

.sub-img-wrap .tit h4 {
    color: #fffbf4;
    text-align: center;
    font-family: 'MapoGoldenPier';
    font-size: 40px;
    line-height: 35px;
    font-weight: 400;
}

.sub-slide-wrap::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 35%;
    z-index: 5;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(255, 251, 244, 1) 100%);
}

#special .sub-slide-wrap::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 81, 66, 1) 100%);
    transform: translateY(100%);
    transition: 0.8s all;
    opacity: 0;
}

#special .sub-slide-wrap.aos-animate::after {
    transform: translateY(0);
    opacity: 0;
}

.sub-img-wrap::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 35%;
    z-index: 5;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(255, 251, 244, 1) 100%);
}

.sub-slide-wrap .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sub-slide-wrap .slide-btn-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.25s;
}

.sub-slide-wrap .slide-btn-wrap img {
    width: 25px;
    height: 25px;
    position: relative;
    z-index: 5;
}

.sub-slide-wrap .slide-btn-wrap#prev {
    left: 10%;
}

.sub-slide-wrap .slide-btn-wrap#next {
    right: 10%;
}

.sub-slide-wrap .slide-btn-wrap::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    width: 100%;
    height: 100%;
    z-index: 3;
    background-color: rgba(255, 255, 255, 0.5);
    opacity: 1;
    will-change: transform, opacity;
    transition: 0.8s all ease-in-out;
}

.sub-slide-wrap .slide-btn-wrap::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    width: 47px;
    height: 47px;
    z-index: 4;
    background-color: rgba(255, 255, 255, 0.5);
    transition: 0.8s;
}

.sub-slide-wrap .slide-btn-wrap:hover::before {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 0;
}

.sub-slide-wrap .slide-btn-wrap:hover::after {
    width: 80px;
    height: 80px;
}

.sub-slide-wrap .main-slide-info {
    position: absolute;
    left: 50%;
    bottom: 70px;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: 'Pretendard', sans-serif;
    font-weight: 600;
    font-size: 14px;
    pointer-events: none;
    z-index: 20;
}

.sub-slide-wrap .main-slide-info .num {
    color: #005142;
    font-family: 'Pretendard-Light';
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

/* #special .sub-slide-wrap .main-slide-info .num {
    color: #fffbf4;
} */

.sub-slide-wrap .main-slide-info .line {
    width: 16px;
    height: 1px;
    margin: 6px 0;
    background: rgba(0, 81, 66, 0.5);
}

/* #special .sub-slide-wrap .main-slide-info .line {
    width: 16px;
    height: 1px;
    margin: 6px 0;
    background: rgba(255, 255, 255, 0.5);
} */

@media (max-width: 1024px) {
    .sub-slide-wrap {
        height: 280px;
    }

    .sub-slide-wrap::after {
        width: 100%;
        height: 35%;
        z-index: 5;
    }

    .sub-slide-wrap .slide-btn-wrap {
        width: 45px;
        height: 45px;
    }

    .sub-slide-wrap .slide-btn-wrap img {
        width: 15px;
        height: 15px;
    }

    .sub-slide-wrap .slide-btn-wrap#prev {
        left: 5%;
    }

    .sub-slide-wrap .slide-btn-wrap#next {
        right: 5%;
    }

    .sub-slide-wrap .slide-btn-wrap:hover::before {
        transform: translate(-50%, -50%) scale(1);
    }

    .sub-slide-wrap .slide-btn-wrap:hover::after {
        width: 40px;
        height: 40px;
    }

    .sub-slide-wrap .slide-btn-wrap::after {
        width: 23px;
        height: 23px;
    }

    .sub-slide-wrap .main-slide-info {
        bottom: 30px;
        font-size: 12px;
    }

    .sub-slide-wrap .main-slide-info .num {
        font-size: 11px;
    }

    .sub-slide-wrap .main-slide-info .line {
        width: 13px;
        margin: 5px 0;
    }

    .sub-img-wrap {
        height: 230px;
    }

    .sub-img-wrap .tit p {
        font-size: 15px;
        line-height: 20px;
        margin-bottom: 10px;
    }

    .sub-img-wrap .tit h4 {
        font-size: 25px;
    }
}

.main-con {
    overflow: hidden;
}

.main-con::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 810px;
    background-color: #005142;
    z-index: 5;
}

.main-con .grass-img {
    position: absolute;
    top: 13em;
    left: 0;
    width: 100%;
    height: auto;
}

.main-con .grass-img img {
    width: 100%;
    object-fit: contain;
}

.main-con .circle {
    position: absolute;
    bottom: -10%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 6;
    clip-path: inset(0 100% 0 0);
}

.main-con .circle.aos-animate {
    clip-path: inset(0 0 0 0);
}
@media(max-width:1800px){
    .main-con .grass-img {margin-top: 20px;}
}


@media (min-width: 2000px) {
    .main-con .circle {
        width: 2300px;
    }

    .main-con .circle svg {
        width: 100%;
    }
}

.main-con .tit-wrap {
    position: relative;
    display: flex;
    padding: 60px 0 50px 0;
    align-items: flex-end;
    justify-content: space-between;
    width: 1300px;
    margin: 0 auto;
    z-index: 5;
}

.main-con .tit-wrap .tit {
    display: flex;
    align-items: center;
    gap: 5px;
}

.main-con .tit-wrap .tit img {
    width: 165px;
    height: 82px;
    display: block;
    object-fit: cover;
    margin-bottom: 10px;
    aspect-ratio: 33/16;
}

.main-con .tit-wrap .tit h4 {
    color: #212121;
    font-family: 'Paperlogy 4';
    font-size: 50px;
    font-style: normal;
    font-weight: 400;
    line-height: 60px;
}

.main-con .tit-wrap .txt p {
    color: #005142;
    text-align: right;
    font-family: 'Arita Buri KR';
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%;
}

/* 공통 리셋 일부 */
.main-con .slide-wrap img {
    display: block;
    width: 100%;
    height: auto;
}

.main-con .slide-wrap {
    position: relative;
    width: 1330px;
    height: auto;
    margin: 0 auto; /* 가로 중앙 */
    display: flex;
    align-items: center; /* 세로 중앙(버튼용) */
    z-index: 10;
    padding-bottom: 150px;
}

/* Swiper 컨테이너 */
.main-con .main-slide-wrap {
    width: 100%;
    height: 870px;
    overflow: hidden;
    border-radius: 80px;
}

/* 슬라이드 이미지가 꽉 차도록 */
.main-con .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 이전·다음 버튼 공통 */
.main-con .slide-btn-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.25s;
}

.main-con .slide-btn-wrap::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    width: 100%;
    height: 100%;
    z-index: 3;
    background-color: rgba(255, 255, 255, 0.5);
    opacity: 1;
    will-change: transform, opacity;
    transition: 0.8s all ease-in-out;
}

.main-con .slide-btn-wrap::after {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    width: 47px;
    height: 47px;
    z-index: 4;
    background-color: rgba(255, 255, 255, 0.5);
    transition: 0.8s;
}

.main-con .slide-btn-wrap:hover::before {
    transform: translate(-50%, -50%) scale(1.2);
    opacity: 0;
}

.main-con .slide-btn-wrap:hover::after {
    width: 80px;
    height: 80px;
}

.main-con .slide-btn-wrap img {
    width: 25px;
    height: 25px;
    position: relative;
    z-index: 5;
}

.main-con .slide-wrap #prev {
    left: -150px;
} /* 슬라이드 기준 양옆에 살짝 바깥 */
.main-con .slide-wrap #next {
    right: -150px;
}

/* 슬라이드 인포(세로 배열) */
.main-con .main-slide-info {
    position: absolute;
    left: 50%;
    bottom: 60px;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: 'Pretendard', sans-serif;
    font-weight: 600;
    font-size: 14px;
    color: #fff;
    pointer-events: none; /* 클릭 방지 */
}

.main-con .main-slide-info .num {
    color: #fffbf4;
    font-family: 'Pretendard-Light';
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
}
.main-con .main-slide-info .line {
    width: 16px;
    height: 1px;
    margin: 6px 0;
    background: rgba(255, 251, 244, 0.5);
}

@media (max-width: 1024px) {
    .main-con::after {
        height: 190px;
    }

    .main-con .grass-img {
        top: 280px;
    }
    .main-con .circle {
        bottom: -17%;
        left: 50%;
    }

    .main-con .circle svg {
        width: 380px;
        height: 300px;
    }

    .main-con .tit-wrap {
        flex-direction: column;
        padding: 40px 0 30px 0;
        align-items: unset;
        justify-content: unset;
        width: 90%;
        gap: 10px;
    }

    .main-con .tit-wrap .tit img {
        width: 62px;
        height: 32px;
        margin-bottom: 0px;
    }

    .main-con .tit-wrap .tit h4 {
        font-size: 20px;
        line-height: 35px;
    }

    .main-con .tit-wrap .txt p {
        font-size: 11px;
        line-height: 140%;
    }

    .main-con .slide-wrap {
        width: 380px;
        padding-bottom: 90px;
    }

    /* Swiper 컨테이너 */
    .main-con .main-slide-wrap {
        width: 90%;
        height: 260px;
        margin: 0 auto;
        overflow: hidden;
        border-radius: 30px;
    }

    /* 이전·다음 버튼 공통 */
    .main-con .slide-btn-wrap {
        width: 30px;
        height: 30px;
        display: none;
    }

    .main-con .slide-btn-wrap img {
        width: 15px;
        height: 15px;
    }

    /* 슬라이드 인포(세로 배열) */
    .main-con .main-slide-info {
        bottom: 25px;
        font-size: 9px;
    }

    .main-con .main-slide-info .num {
        font-size: 9px;
    }
    .main-con .main-slide-info .line {
        width: 13px;
        margin: 3px 0;
    }
}

/* 메인 스페셜 인포 */
.special-info-section {
    padding: 120px 0 100px 0;
    overflow: hidden;
}

#special .special-info-section {
    background-color: #005142;
}

.special-info-section .special-info {
    width: 1100px;
    margin: 0 auto;
    padding-bottom: 100px;
}

#special .special-info-section .special-info {
    padding-bottom: 400px;
}

.special-info-section .special-info .tit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 11px;
    margin-bottom: 60px;
}

.special-info-section .special-info .tit h6 {
    color: #2a2a2a;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.special-info-section .special-info .tit h4 {
    color: #2a2a2a;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 35px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

#special .special-info-section .special-info .tit h6 {
    color: #fffbf4;
}

#special .special-info-section .special-info .tit h4 {
    color: #fffbf4;
}

.special-info-section .special-info .info-list {
    display: flex;
    gap: 130px;
    align-items: flex-start;
}

.special-info-section .special-info .info-list .info-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 50px;
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.8s ease-out;
}

.special-info-section .special-info .info-list .info-item.aos-animate {
    opacity: 1;
    transform: translateY(0);
}

.special-info-section .special-info .info-list .info-item:nth-child(1) {
    transition-delay: 0s;
}

.special-info-section .special-info .info-list .info-item:nth-child(2) {
    transition-delay: 0.1s;
}

.special-info-section .special-info .info-list .info-item:nth-child(3) {
    transition-delay: 0.2s;
}

.special-info-section .special-info .info-list .info-item:nth-child(4) {
    transition-delay: 0.3s;
}

.special-info-section .special-info .info-list .info-item:nth-child(5) {
    transition-delay: 0.4s;
}

.special-info-section .special-info .info-list .info-item:nth-child(6) {
    transition-delay: 0.5s;
}

.special-info-section .special-info .info-list .info-item img {
    width: 58px;
    height: 53px;
    object-fit: contain;
}

.special-info-section .special-info .info-list .info-item p {
    color: #2a2a2a;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

#special .special-info-section .special-info .info-list .info-item p {
    color: #fffbf4;
}

.special-info-section .special-info-img {
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 3;
    height: 700px;
}

.special-info-section .special-mt {
    position: absolute;
    top: 14%;
    right: 0;
    width: 1033px;
    height: 486px;
    z-index: 2;
    opacity: 0.2;
}

.special-info-section .special-mt img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.special-info-section .special-flower {
    position: absolute;
    bottom: 0%;
    left: 0%;
    width: 100%;
    height: 400px;
    z-index: 2;
    opacity: 0.2;
}

.special-info-section .special-flower.flower1 {
    animation: flowerMove 120s linear infinite;
}

.special-info-section .special-flower.flower2 {
    animation: flowerMove2 120s linear infinite;
}

.special-info-section .special-flower img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@keyframes flowerMove {
    0% {
        transform: translateX(0%);
    }
    49.999% {
        transform: translateX(100%);
    }
    50% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(0%);
    }
}

@keyframes flowerMove2 {
    0% {
        transform: translateX(-100%);
    }
    50% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(100%);
    }
}

.special-info-section .special-info-img .special-info-item {
    width: 400px;
    height: 500px;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.15);
}

.special-info-section .special-info-img .special-info-item img {
    width: 380px;
    height: 460px;
    object-fit: cover;
}

@media (min-width: 2000px) {
    .special-info-section .special-info-img {
        height: 900px;
    }

    .special-info-section .special-info-img .special-info-item {
        width: 500px;
        height: 600px;
    }

    .special-info-section .special-info-img .special-info-item img {
        width: 480px;
        height: 580px;
    }
}

.special-info-section .special-info-img .special-info-item:nth-child(1) {
    top: 3%;
    left: -2%;
    z-index: 3;
    transform: rotate(-6.246deg);
}

.special-info-section .special-info-img .special-info-item:nth-child(2) {
    top: 5%;
    left: 15%;
    z-index: 4;
    transform: rotate(7.827deg);
}

.special-info-section .special-info-img .special-info-item:nth-child(3) {
    top: 0%;
    left: 31%;
    z-index: 5;
    transform: rotate(-1.334deg);
}

.special-info-section .special-info-img .special-info-item:nth-child(4) {
    top: 7%;
    left: 50%;
    z-index: 4;
    transform: rotate(4.037deg);
}

.special-info-section .special-info-img .special-info-item:nth-child(5) {
    top: 0%;
    left: 65%;
    z-index: 5;
    transform: rotate(2.323deg);
}

.special-info-section .special-info-img .special-info-item:nth-child(6) {
    top: 6%;
    right: -6%;
    z-index: 6;
    transform: rotate(-6.385deg);
}

@media (max-width: 1024px) {
    /* 메인 스페셜 인포 */
    .special-info-section {
        padding: 30px 0 30px 0;
    }

    .special-info-section .special-info {
        width: 90%;
        padding-bottom: 40px;
    }

    #special .special-info-section .special-info {
        padding-bottom: 100px;
    }

    .special-info-section .special-info .tit {
        gap: 5px;
        margin-bottom: 50px;
    }

    .special-info-section .special-info .tit h6 {
        font-size: 11px;
    }

    .special-info-section .special-info .tit h4 {
        font-size: 20px;
    }

    .special-info-section .special-info .info-list {
        gap: 20px;
        justify-content: center;
    }

    .special-info-section .special-info .info-list .info-item {
        gap: 20px;
    }

    .special-info-section .special-info .info-list .info-item img {
        width: 29px;
        height: 30px;
    }

    .special-info-section .special-info .info-list .info-item p {
        font-size: 10px;
    }

    .special-info-section .special-info-img-wrap {
        overflow-x: scroll;
        overflow-y: hidden;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }

    .special-info-section .special-info-img {
        width: 200%;
        height: 250px;
    }

    .special-info-section .special-mt {
        top: 23%;
        width: 280px;
        height: 210px;
    }

    .special-info-section .special-flower {
        height: 100px;
    }

    .special-info-section .special-info-img .special-info-item {
        width: 150px;
        height: 200px;
    }

    .special-info-section .special-info-img .special-info-item img {
        width: 140px;
        height: 180px;
        object-fit: cover;
    }

    .special-info-section .special-info-img .special-info-item:nth-child(1) {
        top: 3%;
        left: -2%;
        z-index: 3;
        transform: rotate(-6.246deg);
    }

    .special-info-section .special-info-img .special-info-item:nth-child(2) {
        top: 5%;
        left: 15%;
        z-index: 4;
        transform: rotate(7.827deg);
    }

    .special-info-section .special-info-img .special-info-item:nth-child(3) {
        top: 0%;
        left: 31%;
        z-index: 5;
        transform: rotate(-1.334deg);
    }

    .special-info-section .special-info-img .special-info-item:nth-child(4) {
        top: 7%;
        left: 50%;
        z-index: 4;
        transform: rotate(4.037deg);
    }

    .special-info-section .special-info-img .special-info-item:nth-child(5) {
        top: 0%;
        left: 65%;
        z-index: 5;
        transform: rotate(2.323deg);
    }

    .special-info-section .special-info-img .special-info-item:nth-child(6) {
        top: 6%;
        right: -6%;
        z-index: 6;
        transform: rotate(-6.385deg);
    }
}

#movie .con1 .box {
    width: 1500px;
    max-width: 1500px;
    margin: 0 auto;
    padding: 100px 0;
}

#movie .con1 .box iframe {
    width: 100%;
    height: 700px;
}

@media (max-width: 1024px) {
    #movie .con1 .box {
        width: 90%;
        padding: 50px 0;
    }

    #movie .con1 .box iframe {
        height: 250px;
    }
}

/* 풍경 */

#view .con1 {
    position: relative;
}

#view .con1 .mountain {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 500px;
}

#view .con1 .tit {
    padding: 100px 0 130px 0;
    text-align: center;
}

#view .con1 .tit p {
    color: #212121;
    font-family: 'MapoGoldenPier';
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
    margin-bottom: 5px;
}

#view .con1 .tit h4 {
    color: #212121;
    font-family: 'MapoGoldenPier';
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
}

#view .con1 .view-info {
    max-width: 1500px;
    margin: 0 auto;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    padding-bottom: 400px;
}

#view .con1 .view-info .left h5 {
    color: #005142;
    font-family: 'Arita Buri KR';
    font-size: 30px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%;
    margin-bottom: 110px;
}

#view .con1 .view-info .left p {
    color: #212121;
    font-family: 'Arita Buri KR';
    font-size: 23px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    margin-bottom: 88px;
}

#view .con1 .view-info .left .view-img-thum {
    display: flex;
    gap: 0px;
}

#view .con1 .view-info .left .view-img-thum .img {
    width: 200px;
    height: 200px;
    aspect-ratio: 1/1;
    border-radius: 500px;
    background-position: center center;
    cursor: pointer;
    transition: all 0.7s ease;
    opacity: 1;
    transform: scale(1);
}

#view .con1 .view-info .left .view-img-thum .img:hover {
    opacity: 1;
    transform: scale(1.05);
}

#view .con1 .view-info .left .view-img-thum .img.active {
    opacity: 1;
    transform: scale(1.1);
}

#view .con1 .view-info .left .view-img-thum .img:nth-child(2) {
    margin-left: -40px;
}

#view .con1 .view-info .left .view-img-thum .img:nth-child(3) {
    margin-left: -40px;
}

#view .con1 .view-info .right {
    background-color: transparent;
    width: 820px;
    height: 593px;
    border-radius: 50px;
    overflow: hidden;
}

#view .con1 .view-info .right .img {
    width: 100%;
    height: 100%;
    box-shadow: 4px 4px 10px 0 rgba(0, 0, 0, 0.18);
    overflow: hidden;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: opacity 0.4s ease-in-out;
    opacity: 1;
}

#view .con2 .box {
    width: 100%;
    background-color: #005142;
    padding-bottom: 250px;
}

#view .con2 .box .tit {
    padding: 100px 0 110px 0;
    text-align: center;
}

#view .con2 .box .tit h5 {
    color: #fffbf4;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 25px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
}

#view .con2 .box .view-img-wrap {
    max-width: 1500px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
}

#view .con2 .box .view-img-wrap .view-img {
    width: 100%;
    height: 390px;
    position: relative;
}

#view .con2 .box .view-img-wrap .view-img .img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    z-index: 1;
    filter: grayscale(1);
    transition: 1s all ease-in-out;
}

#view .con2 .box .view-img-wrap .view-img .img.aos-animate {
    filter: grayscale(0);
}

#view .con2 .box .view-img-wrap .view-img p {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fffbf4;
    font-family: 'Arita Buri KR';
    font-size: 22px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%;
    z-index: 5;
}

@media (max-width: 1024px) {
    #view .con1 .mountain {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 110px;
    }

    #view .con1 .tit {
        padding: 50px 0 80px 0;
    }

    #view .con1 .tit p {
        font-size: 18px;
        line-height: 25px;
    }

    #view .con1 .tit h4 {
        font-size: 30px;
    }

    #view .con1 .view-info {
        width: 90%;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: unset;
        padding-bottom: 100px;
    }

    #view .con1 .view-info .left {
        margin-bottom: 50px;
    }

    #view .con1 .view-info .left h5 {
        font-size: 25px;
        margin-bottom: 50px;
    }

    #view .con1 .view-info .left p {
        font-size: 16px;
        margin-bottom: 40px;
    }

    #view .con1 .view-info .left .view-img-thum {
        display: flex;
        gap: 0px;
        height: 150px;
    }

    #view .con1 .view-info .left .view-img-thum .img {
        width: 120px;
        height: 120px;
        border-radius: 300px;
        cursor: pointer;
        transition: all 0.7s ease;
        opacity: 1;
        transform: scale(1);
    }

    #view .con1 .view-info .left .view-img-thum .img:hover {
        opacity: 1;
        transform: scale(1.05);
    }

    #view .con1 .view-info .left .view-img-thum .img.active {
        opacity: 1;
        transform: scale(1.1);
    }

    #view .con1 .view-info .left .view-img-thum .img:nth-child(2) {
        margin-left: -20px;
    }

    #view .con1 .view-info .left .view-img-thum .img:nth-child(3) {
        margin-left: -20px;
    }

    #view .con1 .view-info .right {
        width: 100%;
        height: 250px;
    }

    #view .con2 .box {
        width: 100%;
        background-color: #005142;
        padding-bottom: 100px;
    }

    #view .con2 .box .tit {
        padding: 30px 0 50px 0;
    }

    #view .con2 .box .tit h5 {
        font-size: 16px;
    }

    #view .con2 .box .view-img-wrap {
        width: 90%;
    }

    #view .con2 .box .view-img-wrap .view-img {
        width: 100%;
        height: 200px;
        position: relative;
    }

    #view .con2 .box .view-img-wrap .view-img p {
        font-size: 16px;
        width: 100%;
        text-align: center;
    }
}

/* 객실안내 */

#room .con1 {
    position: relative;
    overflow: hidden;
}

#room .con1 .box {
    max-width: 1500px;
    margin: 0 auto;
    width: 100%;
    padding-top: 80px;
    padding-bottom: 130px;
    position: relative;
    z-index: 20;
}

#room .con1 .box .tit {
    padding: 0px 0 35px 0;
}

#room .con1 .box .tit p {
    color: #212121;
    font-family: 'MapoGoldenPier';
    font-size: 20px;
    text-align: center;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
    margin-bottom: 5px;
}

#room .con1 .box .tit h4 {
    color: #212121;
    text-align: center;
    font-family: 'MapoGoldenPier';
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
}

#room .con1 .box .room-map-wrap {
    width: 1155px;

    margin: 0 auto 130px auto;
}

#room .con1 .box .room-map-wrap .room-map {
    width: 100%;
    height: 756px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-bottom: 30px;
    border-radius: 50px;
    overflow: hidden;
    box-shadow: 4px 4px 10px 0 rgba(0, 0, 0, 0.18);
}

#room .con1 .box .room-map-wrap .room-map img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#room .con1 .box .room-map-wrap p {
    color: #3f3f3f;
    text-align: right;
    font-family: 'Pretendard-Regular';
    font-size: 21px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

#room .con1 .box .room-info {
    padding-bottom: 160px;
}

#room .con1 .box .info-img {
    display: flex;
    gap: 0 70px;
    margin-bottom: 80px;
}

#room .con1 .box .info-img .left {
    width: 616px;
    height: 825px;
    box-shadow: 4px 4px 10px 0 rgba(0, 0, 0, 0.18);
}

#room .con1 .box .info-img .left img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#room .con1 .box .info-img .right .room-slide-wrap {
    box-shadow: 4px 4px 10px 0 rgba(0, 0, 0, 0.18);
    width: 815px;
    height: 530px;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
}

#room .con1 .box .info-img .right .room-slide-wrap .swiper-wrapper {
    height: 100%;
}

#room .con1 .box .info-img .right .room-slide-wrap .swiper-slide {
    width: 100%;
    height: 100%;
}

#room .con1 .box .info-img .right .room-slide-wrap .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#room .con1 .box .info-img .right .room-slide-wrap .slide-btn-wrap {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, 0.8);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

#room .con1 .box .info-img .right .room-slide-wrap .slide-btn-wrap:hover {
    background: rgba(255, 255, 255, 1);
}

#room .con1 .box .info-img .right .room-slide-wrap .room-slide-prev {
    left: 20px;
}

#room .con1 .box .info-img .right .room-slide-wrap .room-slide-next {
    right: 20px;
}

#room .con1 .box .info-img .right .room-slide-wrap .slide-btn-wrap img {
    width: 20px;
    height: 20px;
}

#room .con1 .box .info-img .right .room-tit {
    position: relative;
}

#room .con1 .box .info-img .right .room-tit h3 {
    position: relative;
    z-index: 10;
    color: #212121;
    font-family: 'Arita Buri KR';
    font-size: 35px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 25px;
}

#room .con1 .box .info-img .right .room-tit .bg-txt {
    position: absolute;
    top: -35px;
    left: 0;
    z-index: 5;
    color: rgba(0, 81, 66, 0.05);
    font-family: 'Arita Buri KR';
    font-size: 110px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

#room .con1 .box .info-img .right .room-tit li {
    display: flex;
    gap: 0 100px;
    margin-bottom: 20px;
}

#room .con1 .box .info-img .right .room-tit li h6 {
    width: 105px;
    color: #212121;
    font-family: 'Pretendard-Medium';
    font-size: 21px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

#room .con1 .box .info-img .right .room-tit li p {
    color: #4b4b4b;
    font-family: 'Pretendard-Regular';
    font-size: 19px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

#room .con1 .box .info-text {
    width: 1155px;
    margin: 0 auto;
    align-items: center;
    justify-content: center;
    display: flex;
    gap: 0 60px;
}

#room .con1 .box .info-text h5 {
    color: #4b4b4b;
    font-family: 'Pretendard-Medium';
    font-size: 23px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%;
    letter-spacing: 5px;
    writing-mode: vertical-rl;
    text-orientation: upright;
    border-right: 1px solid #545454;
    padding-right: 20px;
    height: 112px;
    text-align: center;
}

#room .con1 .box .info-text .info-list {
    display: flex;
    gap: 0px 0px;
}

#room .con1 .box .info-text .info-list li {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px 0px;

    width: 170px;
    position: relative;
}

#room .con1 .box .info-text .info-list li.gla-ico {
    width: 130px;
}

#room .con1 .box .info-text .info-list li::before {
    content: '';
    position: absolute;
    top: 10px;
    right: 0;
    width: 1px;
    height: 112px;
    background-color: #545454;
}

#room .con1 .box .info-text .info-list li.gla-ico:before {
    height: 80px;
    top: 0;
}

#room .con1 .box .info-text .info-list li:last-child {
    border-right: none;
}

#room .con1 .box .info-text .info-list li h6 {
    color: #4b4b4b;
    text-align: center;
    font-family: 'Pretendard-Medium';
    font-size: 19px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

#room .con1 .box .info-text .info-list li img {
    width: 51px;
    height: 51px;
}

#room .con1 .box .info-text .info-list li i {
    font-size: 30px;
    color: #4b4b4b;
}

#room .con1 .box .info-text .info-list li.ico img {
    width: 50px;
}

#room .con1 .box .info-text .info-list li p {
    color: #4b4b4b;
    text-align: center;
    font-family: 'Pretendard-Regular';
    font-size: 19px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

#room .con1 .box .room-price-wrap {
    width: 100%;
    margin: 0 auto;
    padding: 200px 0 100px 0;
}

#room .con1 .box .room-price-wrap.short {
    padding: 100px 0 150px 0;
}

#room .con1 .box .room-price-wrap .room-price-tit {
    color: #212121;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 35px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    padding-bottom: 50px;
}

#room .con1 .box .room-price-wrap .room-price-table {
    width: 100%;
    border-collapse: collapse;
}

#room .con1 .box .room-price-wrap .room-price-table th,
#room .con1 .box .room-price-wrap .room-price-table td {
    color: #3f3f3f;
    text-align: center;
    font-family: Pretendard;
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    width: 20%;
    padding: 10px 0;
}

#room .con1 .box .room-price-wrap .room-price-table th {
    border-right: 1px solid #fff;
    background-color: rgba(0, 81, 66, 0.5);
}

#room .con1 .box .room-price-wrap .room-price-table th:last-child {
    border-right: none;
}

#room .con1 .box .room-price-wrap .room-price-table td {
    border: 1px solid rgba(0, 81, 66, 0.5);
    background-color: #fff;
}

#room .con1 .box .room-price-wrap .room-price-txt {
    margin-top: 22px;
    color: #4b4b4b;
    text-align: right;
    font-family: 'Pretendard-Regular';
    font-size: 19px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

/* Room GNB Menu */
.room-gnb-wrap {
    position: fixed;
    left: -546px;
    top: 50%;
    transform: translateY(-50%);
    width: 1093px;
    height: 1093px;
    background: rgba(0, 81, 66, 0.1);
    border-radius: 50%;
    z-index: 10;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    padding-right: 19.5%;
    box-sizing: border-box;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.room-gnb-wrap.show {
    opacity: 1;
    visibility: visible;
}

.room-gnb-title {
    color: #212121;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 25px;
    font-style: normal;
    font-weight: 500;
    line-height: 35px;
    margin-bottom: 33px;
}

.room-gnb-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.room-gnb-item {
    margin-bottom: 0px;
    position: relative;
}

.room-gnb-item:last-child {
    margin-bottom: 0;
}

.room-gnb-item a {
    display: block;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
    color: #212121;
    font-family: 'MapoGoldenPier';
    padding: 12px 0px;
    transition: all 0.3s ease;
    position: relative;
    text-align: center;
}

.room-gnb-item.on a {
    color: #2c5530;
    font-size: 20px;
}

.room-gnb-item.on a::before {
    content: '';
    position: absolute;
    left: -20px;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 1px;
    background: #2c5530;
    border-radius: 2px;
}

@media (min-width: 2000px) {
    .room-gnb-wrap {
        padding-right: 12.5%;
    }
}

@media (max-width: 1024px) {
    .room-gnb-wrap {
        display: none;
    }

    #room .con1 .box {
        width: 90%;
        padding-top: 50px;
        padding-bottom: 50px;
    }

    #room .con1 .box .tit {
        padding: 0px 0 25px 0;
    }

    #room .con1 .box .tit p {
        font-size: 17px;
        line-height: 25px;
    }

    #room .con1 .box .tit h4 {
        font-size: 25px;
        line-height: 35px;
    }

    #room .con1 .box .room-map-wrap {
        width: 100%;
        margin: 0 auto 50px auto;
    }

    #room .con1 .box .room-map-wrap .room-map {
        position: relative;
        height: 220px;
        margin-bottom: 15px;
        border-radius: 10px;
    }

    #room .con1 .box .room-map-wrap p {
        font-size: 15px;
    }

    #room .con1 .box .room-info {
        padding-bottom: 60px;
    }

    #room .con1 .box .room-info:last-child {
        padding-bottom: 25px;
    }

    #room .con1 .box .info-img {
        display: block;
        margin-bottom: 40px;
    }

    #room .con1 .box .info-img .left {
        display: none;
    }

    #room .con1 .box .info-img .right .room-slide-wrap {
        width: 100%;
        height: 250px;
        margin-bottom: 0px;
        position: relative;
        overflow: hidden;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .slide-btn-wrap {
        width: 30px;
        height: 30px;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .room-slide-prev {
        left: 10px;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .room-slide-next {
        right: 10px;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .slide-btn-wrap img {
        width: 15px;
        height: 15px;
    }

    #room .con1 .box .info-img .right .room-tit h3 {
        font-size: 25px;
        margin-bottom: 20px;
    }

    #room .con1 .box .info-img .right .room-tit .bg-txt {
        top: -35px;
        font-size: 60px;
    }

    #room .con1 .box .info-img .right .room-tit li {
        gap: 0 30px;
        margin-bottom: 10px;
    }

    #room .con1 .box .info-img .right .room-tit li h6 {
        font-size: 16px;
    }

    #room .con1 .box .info-img .right .room-tit li p {
        font-size: 15px;
    }

    #room .con1 .box .info-text {
        width: 100%;
        gap: 0 30px;
        flex-direction: column;
    }

    #room .con1 .box .info-text h5 {
        font-size: 19px;
        padding-right: 10px;
        writing-mode: horizontal-tb;
        height: auto;
        border-bottom: 1px solid #545454;
        padding-bottom: 20px;
        margin-bottom: 30px;
        border-right: none;
        padding-right: 0;
    }

    #room .con1 .box .info-text .info-list {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        justify-content: center;
    }

    #room .con1 .box .info-text .info-list li {
        width: 30%;
    }

    #room .con1 .box .info-text .info-list.two-line li {
        width: 40%;
    }

    #room .con1 .box .info-text .info-list li::before {
        display: none;
    }

    #room .con1 .box .info-text .info-list li h6 {
        font-size: 10px;
    }

    #room .con1 .box .info-text .info-list li.gla-ico {
        width: 17%;
    }

    #room .con1 .box .info-text .info-list li img {
        width: 31px;
        height: 31px;
    }

    #room .con1 .box .info-text .info-list li.ico img {
        width: 30px;
    }

    #room .con1 .box .info-text .info-list li p {
        font-size: 15px;
    }

    #room .con1 .box .room-price-wrap {
        padding: 50px 0 50px 0;
    }

    #room .con1 .box .room-price-wrap.short {
        padding: 0px 0 50px 0;
    }

    #room .con1 .box .room-price-wrap .room-price-tit {
        font-size: 25px;
        padding-bottom: 30px;
    }

    #room .con1 .box .room-price-wrap .room-price-table th,
    #room .con1 .box .room-price-wrap .room-price-table td {
        font-size: 13px;
    }

    #room .con1 .box .room-price-wrap .room-price-txt {
        margin-top: 15px;
        font-size: 13px;
    }
}

/* 스페셜페이지 */

#special .con1 {
    position: relative;
    transition: 1.5s all;
    transition-delay: 0.5s;
}

#special .con1.aos-animate {
    background-color: #005142;
}

#special .con1 .icon-wrap {
    position: absolute;
}

#special .con1 .icon-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#special .con1 .icon-wrap.ico1 {
    top: 37%;
    left: 20%;
    width: 28px;
    height: 31px;
}

#special.special3 .con1 .icon-wrap.ico1 {
    top: 44%;
}

#special.special7 .con1 .icon-wrap.ico1 {
    top: 46%;
}

#special .con1 .icon-wrap.ico2 {
    top: 44%;
    left: -1.5%;
    height: 148.5px;
    clip-path: inset(0 100% 0 0);
    transition: 1.5s all;
}

#special.special3 .con1 .icon-wrap.ico2 {
    top: 50%;
}

#special.special7 .con1 .icon-wrap.ico2 {
    top: 52%;
}

#special .con1 .icon-wrap.ico2.aos-animate {
    clip-path: inset(0 0 0 0);
}

#special .con1 .icon-wrap.ico3 {
    top: 37%;
    left: 10%;
    width: 70px;
    height: 117px;
}

#special.special3 .con1 .icon-wrap.ico3 {
    top: 43.8%;
}

#special.special7 .con1 .icon-wrap.ico3 {
    top: 46.2%;
}

#special .con1 .box {
    max-width: 1500px;
    margin: 0 auto;
    width: 100%;
    padding-top: 100px;
    padding-bottom: 200px;
}

#special .con1 .box .tit {
    padding: 0px 0 150px 0;
}

#special .con1 .box .tit p {
    color: #fffbf4;
    text-align: center;
    font-family: 'MapoGoldenPier';
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
}

#special .con1 .box .tit h4 {
    color: #fffbf4;
    text-align: center;
    font-family: 'MapoGoldenPier';
    font-size: 40px;
    font-style: normal;
    font-weight: 400;
    line-height: 40px;
}

#special .con1 .box .special-info {
    display: flex;
    gap: 100px;
}

#special .con1 .box .special-info .left h5 {
    color: #fff;
    font-family: 'MapoGoldenPier';
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1.6px;
    padding-top: 100px;
    margin-bottom: 35px;
}

#special .con1 .box .special-info .left p {
    color: #fff;
    font-family: 'Arita Buri KR';
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 28px */
    letter-spacing: -1px;
    margin-bottom: 350px;
}

#special.special7 .con1 .box .special-info .left p {
    font-size: 18px;
}

#special .con1 .box .special-info .left p span {
    font-size: 18px;
    display: block;
}

#special .con1 .box .special-info .left p span {
    display: inline-block;
    font-size: 18px;
}

#special .con1 .box .special-info .left .special-thum-video {
    width: 730px;
    height: 520px;
    border-radius: 50px;
    overflow: hidden;
}

#special .con1 .box .special-info .left .special-thum-video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#special .con1 .box .special-info .left .special-thum-video iframe {
    width: 101%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

#special .con1 .box .special-info .right .img {
    width: 650px;
    height: 870px;
    border-radius: 50px;
    overflow: hidden;
    background-size: cover;
}

@media (min-width: 2000px) {
    #special .con1 .icon-wrap.ico2 {
        height: 191.5px;
        top: 42%;
    }

    #special .con1 .icon-wrap.ico3 {
        top: 35%;
    }
}

@media (max-width: 1024px) {
    #special .con1 {
        overflow: hidden;
    }

    #special .con1 .icon-wrap.ico1 {
        top: 47%;
        left: 38%;
        width: 28px;
        height: 31px;
    }

    #special .con1 .icon-wrap.ico2 {
        top: 47.5%;
        left: -1.5%;
        height: 148.5px;
    }

    #special .con1 .icon-wrap.ico3 {
        top: 46%;
        left: 20%;
        width: 40px;
        height: 70px;
    }

    #special.special3 .con1 .icon-wrap.ico1 {
        top: 55%;
    }

    #special.special3 .con1 .icon-wrap.ico2 {
        top: 56%;
    }

    #special.special3 .con1 .icon-wrap.ico3 {
        top: 54.8%;
    }

    #special.special7 .con1 .icon-wrap.ico1 {
        top: 57%;
    }

    #special.special7 .con1 .icon-wrap.ico2 {
        top: 58%;
    }

    #special.special7 .con1 .icon-wrap.ico3 {
        top: 57%;
    }

    #special .con1 .box {
        width: 90%;
        padding-top: 50px;
        padding-bottom: 100px;
    }

    #special .con1 .box .tit {
        padding: 0px 0 50px 0;
    }

    #special .con1 .box .tit p {
        font-size: 18px;
        line-height: 25px;
    }

    #special .con1 .box .tit h4 {
        font-size: 30px;
    }

    #special .con1 .box .special-info {
        flex-direction: column;
        gap: 150px 0;
    }

    #special .con1 .box .special-info .left {
        display: flex;
        flex-direction: column-reverse;
        align-items: center;
        gap: 50px 0;
    }

    #special .con1 .box .special-info .left h5 {
        font-size: 25px;
        padding-top: 0px;
        margin-bottom: 20px;
    }

    #special .con1 .box .special-info .left p {
        font-size: 15px;
        line-height: 25px;
        margin-bottom: 50px;
    }

    #special .con1 .box .special-info .left p span {
        font-size: 12px;
    }

    #special .con1 .box .special-info .left .special-thum-video {
        width: 100%;
        height: 250px;
        border-radius: 50px;
    }

    #special .con1 .box .special-info .right .img {
        width: 100%;
        height: 500px;
        border-radius: 20px;
    }
}

#tour.sub-img-wrap::after {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(255, 251, 244, 0.95) 100%);
}

#tour.sub-wrap .bg-wrap::before {
    background-image: linear-gradient(to bottom, #fffbf4 5.13%, rgba(255, 255, 255, 0) 100%);
}

#tour .con1 .box {
    max-width: 1500px;
    margin: 0 auto;
    width: 100%;
    padding-top: 150px;
    padding-bottom: 100px;
}

#tour .con1 .box .tour {
    width: 100%;
    padding-bottom: 110px;
}

#tour .con1 .box .tour .tit {
    margin-bottom: 20px;
    width: 1088px;
    padding: 20px 35px;
    overflow: hidden;
}

#tour .con1 .box .tour .tit h5 {
    display: flex;
    align-items: flex-end;
    gap: 10px;
    color: #005142;
    font-family: 'MapoGoldenPier';
    font-size: 35px;
    line-height: normal;
    margin-bottom: 15px;
    font-weight: 400;
    transform: translateY(-200px);
    transition: 1.5s all ease-in-out;
}

#tour .con1 .box .tour .tit.aos-animate h5 {
    transform: translateY(0);
}

#tour .con1 .box .tour .tit h5 span {
    display: inline-block;
    color: #005142;
    font-family: 'MapoGoldenPier';
    font-size: 20px;
}

#tour .con1 .box .tour .tit p {
    color: #005142;
    font-family: 'Pretendard-Regular';
    font-size: 19px;
    font-weight: 400;
    transform: translateY(-200px);
    transition: 1.5s all ease-in-out;
}

#tour .con1 .box .tour .tit.aos-animate p {
    transform: translateY(0);
}

#tour .con1 .box .tour .tour-info {
    display: flex;
    align-items: center;
    gap: 66px;
}

#tour .con1 .box .tour .tour-info .img {
    width: 793px;
    height: 453px;
    flex-shrink: 0;
    aspect-ratio: 793/453;
    border-radius: 50px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 3px 3px 12px 2px rgba(0, 0, 0, 0.2);
}

#tour .con1 .box .tour .tour-info .txt p {
    color: #212121;
    font-family: 'Pretendard-Regular';
    font-size: 20px;
    font-weight: 400;
    line-height: 35px;
}

#tour .con1 .box .tour .tour-info .txt a {
    margin-top: 25px;
    display: block;
    color: #212121;
    font-family: 'Pretendard-Regular';
    font-size: 15px;
    font-weight: 400;
    line-height: 35px;
    padding-left: 20px;
    position: relative;
}

#tour .con1 .box .tour .tour-info .txt a::before {
    content: '';
    width: 5px;
    height: 5px;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: #000;
}

@media (max-width: 1024px) {
    #tour .con1 .box {
        width: 90%;
        padding-top: 100px;
        padding-bottom: 50px;
    }

    #tour .con1 .box .tour .tit {
        margin-bottom: 15px;
        width: 95%;
        padding: 15px 15px;
    }

    #tour .con1 .box .tour .tit h5 {
        font-size: 25px;
        margin-bottom: 10px;
    }

    #tour .con1 .box .tour .tit h5 span {
        font-size: 15px;
    }

    #tour .con1 .box .tour .tit p {
        font-size: 15px;
    }

    #tour .con1 .box .tour .tour-info {
        flex-direction: column;
        align-items: flex-start;
        gap: 30px;
    }

    #tour .con1 .box .tour .tour-info .img {
        width: 100%;
        height: 200px;
        border-radius: 25px;
    }

    #tour .con1 .box .tour .tour-info .txt p {
        font-size: 15px;
        line-height: 25px;
    }
}

#map .con1 .box {
    max-width: 1500px;
    margin: 0 auto;
    width: 100%;
    padding-top: 150px;
}

#map .con1 .box .map-info {
    padding-bottom: 20px;
}

#map .con1 .box .map-info h6 {
    color: #000;
    font-family: 'Arita Buri KR';
    font-size: 22px;
    font-style: normal;
    font-weight: 500;
    line-height: 160%;
}

#map .con1 .box .map-wrap {
    width: 100%;
}

#map .con1 .box .map-wrap .pc-map {
    width: 100%;
    height: 840px;
}

#map .con1 .box .map-wrap .mo-map {
    display: none;
}

@media (max-width: 1024px) {
    #map .con1 .box {
        width: 90%;
        padding: 100px 0 50px 0;
    }

    #map .con1 .box .map-info {
        width: 340px;
        margin: 0 auto;
        padding-bottom: 10px;
    }

    #map .con1 .box .map-info h6 {
        font-size: 18px;
    }

    #map .con1 .box .map-wrap {
        width: 100%;
        margin: 0 auto;
    }

    #map .con1 .box .map-wrap .mo-map {
        display: block;
        margin: 0 auto;
    }
}

#reser .con1 .box {
    max-width: 1230px;
    margin: 0 auto;
    width: 100%;
    padding-top: 120px;
}

#reser .con1 .box .reser-top-info {
    display: flex;
    padding: 75px 0 130px 0;
}

#reser .con1 .box .reser-top-info .left {
    width: 50%;
    position: relative;
}

#reser .con1 .box .reser-top-info .left .info-box {
    width: 500px;
}

#reser .con1 .box .reser-top-info .left::before {
    content: '';
    width: 1px;
    height: 450px;
    background-color: rgba(0, 81, 66, 0.5);
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

#reser .con1 .box .tit {
    color: #000;
    font-family: 'MapoGoldenPier';
    font-size: 26px;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
    margin-bottom: 20px;
}

#reser .con1 .box p {
    color: #000;
    font-family: 'Pretendard-Regular';
    font-size: 19px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 21px;
}

#reser .con1 .box p span {
    font-size: 15px;
    display: block;
}

#reser .con1 .box .reser-top-info .left .info p:last-child {
    margin-bottom: 0;
}

#reser .con1 .box .reser-top-info .left .info-box .img {
    width: 220px;
    height: 142px;
    object-fit: cover;
    margin: 25px auto;
}

#reser .con1 .box .reser-top-info .left .reser_logo {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#reser .con1 .box .reser-top-info .left .info-box .btn {
    text-align: center;
}

#reser .con1 .box .reser-top-info .left .reser_btn {
    display: inline-block;
    position: relative;
    color: #005142;
    text-align: center;
    font-family: 'Pretendard-Medium';
    font-size: 19px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    padding: 5px 20px;
}

#reser .con1 .box .reser-top-info .left .reser_btn::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #005142;
}

#reser .con1 .box .reser-top-info .right {
    width: 50%;
}

#reser .con1 .box .reser-top-info .right .info {
    padding-left: 110px;
}

#reser .con1 .box .reser-top-info .right .info .top {
    margin-bottom: 110px;
}

#reser .con1 .box .price-info .tit-wrap {
    margin-bottom: 21px;
}

#reser .con1 .box .price-info table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}

#reser .con1 .box .price-info table th,
#reser .con1 .box .price-info table td {
    width: 20%;
    padding: 20px 0;
    color: #3f3f3f;
    text-align: center;
    font-family: 'Pretendard-Regular';
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

#reser .con1 .box .price-info table th {
    border-right: 1px solid #fff;
    background-color: rgba(0, 81, 66, 0.5);
}

#reser .con1 .box .price-info tr:nth-last-child th {
    border-right: none;
}

#reser .con1 .box .price-info table td {
    border: 1px solid rgba(0, 81, 66, 0.5);
}

#reser .con1 .box .price-info-bot {
    margin-top: 100px;
}

#reser .con1 .reser-bg {
    margin: 250px 0 100px 0;
    width: 100%;
    height: 650px;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: center center;
}

#reser .con1 .box .facil-info {
    margin-bottom: 200px;
}

#reser .con1 .box .facil-info .facil-list {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 35px;
}

#reser .con1 .box .facil-info .facil-list .facil-item {
    color: #000;
    font-family: 'Pretendard-Regular';
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

#reser .con1 .box .guide-info-wrap {
    margin-bottom: 200px;
}

#reser .con1 .box .guide-info-wrap .tit {
    font-size: 23px;
}

#reser .con1 .box .guide-info-wrap .guide-info {
    margin-bottom: 70px;
}

#reser .con1 .box .guide-info-wrap .guide-tit {
    color: #000;
    font-family: 'MapoGoldenPier';
    font-size: 26px;
    font-style: normal;
    font-weight: 400;
    line-height: 35px;
    margin-bottom: 60px;
}

#reser .con1 .box .guide-info-wrap .guide-list .list {
    color: #000;
    font-family: 'Pretendard-Regular';
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    position: relative;
    padding-left: 20px;
}

#reser .con1 .box .guide-info-wrap .guide-list .list::before {
    content: '*';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

#reser .con1 .box .refund-info {
    padding-bottom: 100px;
}

#reser .con1 .box .refund-info table {
    margin-bottom: 20px;
    border-collapse: collapse;
    border-spacing: 0;
}

#reser .con1 .box .refund-info table th,
#reser .con1 .box .refund-info table td {
    text-align: center;
    padding: 10px 20px;
    font-family: 'Pretendard-Regular';
    font-size: 15px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
}

#reser .con1 .box .refund-info table th {
    background-color: #005142;
    color: #f1efec;
    border-right: 1px solid #f1efec;
    font-weight: 400;
}

#reser .con1 .box .refund-info table th:last-child {
    border-right: 1px solid #005142;
}

#reser .con1 .box .refund-info table td {
    color: #005142;
    border: 1px solid #005142;
}

#reser .con1 .box .refund-info table td.red {
    color: #862020;
}

@media (max-width: 1024px) {
    #reser .con1 .box {
        margin: 0 auto;
        width: 90%;
        padding-top: 50px;
    }

    #reser .con1 .box .reser-top-info {
        flex-direction: column;
        padding: 50px 0 50px 0;
        gap: 30px 0;
    }

    #reser .con1 .box .reser-top-info .left {
        width: 100%;
        padding-bottom: 30px;
    }

    #reser .con1 .box .reser-top-info .left .info-box {
        width: auto;
    }

    #reser .con1 .box .reser-top-info .left::before {
        content: '';
        width: 100%;
        height: 1px;
        top: unset;
        bottom: 0;
        right: 0;
        transform: translateY(0%);
    }

    #reser .con1 .box .tit {
        font-size: 20px;
        line-height: 30px;
        margin-bottom: 15px;
    }

    #reser .con1 .box p {
        font-size: 15px;
        margin-bottom: 15px;
    }

    #reser .con1 .box p span {
        font-size: 13px;
    }

    #reser .con1 .box .reser-top-info .left .info-box .img {
        width: 150px;
        height: 100px;
        margin: 20px auto;
    }

    #reser .con1 .box .reser-top-info .left .reser_btn {
        font-size: 17px;
    }

    #reser .con1 .box .reser-top-info .right {
        width: 100%;
    }

    #reser .con1 .box .reser-top-info .right .info {
        padding-left: 0px;
    }

    #reser .con1 .box .reser-top-info .right .info .top {
        margin-bottom: 50px;
    }

    #reser .con1 .box .price-info .tit-wrap {
        margin-bottom: 15px;
    }

    #reser .con1 .box .price-info table th,
    #reser .con1 .box .price-info table td {
        padding: 10px 0;
        font-size: 11px;
    }

    #reser .con1 .box .price-info-bot {
        margin-top: 50px;
    }

    #reser .con1 .reser-bg {
        margin: 150px 0 50px 0;
        height: 250px;
        background-attachment: unset;
    }

    #reser .con1 .box .facil-info {
        margin-bottom: 100px;
    }

    #reser .con1 .box .facil-info .facil-list {
        gap: 5px 15px;
    }

    #reser .con1 .box .facil-info .facil-list .facil-item {
        font-size: 17px;
    }

    #reser .con1 .box .guide-info-wrap {
        margin-bottom: 100px;
    }

    #reser .con1 .box .guide-info-wrap .tit {
        font-size: 18px;
    }

    #reser .con1 .box .guide-info-wrap .guide-info {
        margin-bottom: 30px;
    }

    #reser .con1 .box .guide-info-wrap .guide-tit {
        font-size: 22px;
        margin-bottom: 30px;
    }

    #reser .con1 .box .guide-info-wrap .guide-list .list {
        font-size: 16px;
    }

    #reser .con1 .box .refund-info {
        padding-bottom: 100px;
    }

    #reser .con1 .box .refund-info table th,
    #reser .con1 .box .refund-info table td {
        padding: 10px 10px;
        font-size: 11px;
    }
}

#notice .con1 .box {
    max-width: 1500px;
    margin: 0 auto;
    width: 100%;
    padding-top: 150px;
}

#notice .con1 .box iframe {
    pointer-events: none;
}

@media (max-width: 1024px) {
    #notice .con1 .box {
        width: 90%;
        padding-top: 100px;
    }
}

/* 룸 프리뷰 */

.room-preview-section {
    padding: 0px 0 150px 0;
}

.room-preview-section .wave-img {
    position: absolute;
    top: -4%;
    left: 0;
    width: 100%;
    overflow: hidden;
}

.room-preview-section::before {
    content: '';
    width: 100%;
    height: 50%;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #005142;
}

.room-preview-section .room-preview-info {
    width: 1100px;
    margin: 0 auto;
    position: relative;
    z-index: 10;
}

.room-preview-section .room-preview-info .tit {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 13px;
    margin-bottom: 60px;
}

.room-preview-section .room-preview-info .tit h6 {
    color: #2a2a2a;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 18px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.room-preview-section .room-preview-info .tit h4 {
    color: #2a2a2a;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 26px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}

.room-preview-section .room-preview-slide-wrap {
    position: relative;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb {
    width: 400px;
    height: 730px;
    background-color: #19594d;
    border-radius: 0px 150px 0px 0px;
    box-shadow: 7px 4px 5px 0px rgba(0, 0, 0, 0.15);
    position: absolute;
    bottom: 0;
    left: 10%;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 40px;
}
.room-preview-section .room-preview-slide-wrap .room-preview-gnb-box{    display: flex
;position: relative;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 40px; z-index: 2;}
.room-preview-section .room-preview-slide-wrap .room-preview-gnb > img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 300px;
    object-fit: cover;
    z-index: 1;
}

.room-preview-section .room-preview-slide-wrap .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    height: 75px;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-tit {
    display: flex;
    align-items: center;
    gap: 10px;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-tit img {
    width: 40px;
    height: 40px;
    object-fit: contain;
    display: none;
    transition: 0.8s all ease-in-out;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item.on .gnb-tit img {
    display: block;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-tit span {
    display: inline-block;
    color: #fff;
    font-family: 'Arita Buri KR';
    font-size: 22px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    transition: 0.8s all ease-in-out;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item.on .gnb-tit span {
    font-size: 30px;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-btn {
    display: block;
    text-align: center;
    position: relative;
    color: #fff;
    font-family: 'Pretendard-Medium';
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    opacity: 0;
    transition: 0.8s all ease-in-out;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-btn::before {
    content: '';
    position: absolute;
    top: 50%;
    left: -20%;
    transform: translateY(-50%);
    width: 5px;
    height: 1px;
    background-color: #fff;
    z-index: 1;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-btn::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -20%;
    transform: translateY(-50%);
    width: 5px;
    height: 1px;
    background-color: #fff;
    z-index: 1;
}

.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item.on .gnb-btn {
    opacity: 1;
}

.room-preview-section .room-preview-slide-wrap .room-preview-slide {
    width: 1310px;
    height: 810px;
    position: relative;
    margin-left: 20%;
    overflow: hidden;
    border-radius: 150px 150px 0px 0px;
    z-index: 5;
}

.room-preview-section .room-preview-slide-wrap .room-preview-slide .room-info {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 50;
    background-color: rgba(255, 255, 255, 0.6);
    padding: 28px 55px;
}

.room-preview-section .room-preview-slide-wrap .room-preview-slide .room-info .info1 {
    color: #212121;
    text-align: right;
    font-family: 'Pretendard-Medium';
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 25px;
    margin-bottom: 15px;
}

.room-preview-section .room-preview-slide-wrap .room-preview-slide .room-info .info2 {
    color: #212121;
    text-align: right;
    font-family: 'Pretendard-Light';
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 25px;
}

@media (min-width: 2000px) {
    .room-preview-section::before {
        bottom: -2px;
    }

    .room-preview-section .wave-img {
        top: -45%;
    }

    .room-preview-section .wave-img svg {
        width: 100%;
        height: 1400px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb {
        left: 15%;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-slide {
        margin: 0 auto;
    }
}

@media (max-width: 1024px) {
    /* 룸 프리뷰 */

    .room-preview-section .room-preview-slide-wrap {
        height: 380px;
    }

    .room-preview-section {
        padding: 0px 0 30px 0;
    }

    .room-preview-section .wave-img {
        display: none;
    }

    .room-preview-section::before {
        content: '';
        width: 100%;
        height: 50%;
        position: absolute;
        bottom: -2px;
        left: 0;
        background-color: #005142;
    }

    .room-preview-section .room-preview-info {
        width: 100%;
    }

    .room-preview-section .room-preview-info .tit {
        gap: 5px;
        margin-bottom: 30px;
    }

    .room-preview-section .room-preview-info .tit h6 {
        font-size: 11px;
    }

    .room-preview-section .room-preview-info .tit h4 {
        font-size: 20px;
    }
    .room-preview-section .room-preview-slide-wrap .room-preview-gnb {
        width: 100%;
        height: 130px;
        border-radius: 0px;
        box-shadow: 7px 4px 5px 0 rgba(0, 0, 0, 0.15);
        left: 0;
        flex-wrap: wrap;
        flex-direction: row;
        gap: 0px 10px;
    }
.room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-box{
    width: 100%;
        height: 130px;
        border-radius: 0px;
        box-shadow: 7px 4px 5px 0 rgba(0, 0, 0, 0.15);
        left: 0;
        flex-wrap: wrap;
        flex-direction: row;
        gap: 0px 10px;
}
         


    .room-preview-section .room-preview-slide-wrap .room-preview-gnb > img {
        height: 120px;
        width: 50%;
        left: unset;
        right: 0;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item {
        width: 26%;
        display: flex;
        flex-direction: column;
        gap: 10px;
        height: auto;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-tit {
        flex-direction: column;
        align-items: center;
        gap: 5px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-tit img {
        width: 20px;
        height: 20px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-tit span {
        font-size: 12px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item.on .gnb-tit span {
        font-size: 15px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-btn {
        font-size: 8px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-btn::before {
        width: 3px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-gnb .room-preview-gnb-item .gnb-btn::after {
        width: 3px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-slide {
        width: 95%;
        margin: 0 auto;
        height: 260px;
        border-radius: 60px 60px 0 0;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-slide .room-info {
        right: unset;
        left: 0;
        padding: 10px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-slide .room-info .info1 {
        font-size: 9px;
        line-height: 140%;
        margin-bottom: 5px;
    }

    .room-preview-section .room-preview-slide-wrap .room-preview-slide .room-info .info2 {
        font-size: 8px;
        line-height: 15px;
    }
}

/* 메인 배치도 */

.map-section {
    padding: 120px 0 450px 0;
    background-color: #005142;
    position: relative;
}

#room .map-section {
    padding: 120px 0 250px 0;
}

.map-section .map-tit {
    width: 1420px;
    margin: 0 auto 20px auto;
}

.map-section .map-tit h6 {
    font-family: 'Arita Buri KR';
    color: #fffbf4;
    text-align: center;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 25px;
    margin-bottom: 10px;
}

.map-section .map-tit h4 {
    color: #fffbf4;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 26px;
    font-style: normal;
    font-weight: 500;
    line-height: 35px;
}

.map-section .map-tit p {
    color: #fffbf4;
    text-align: right;
    font-family: 'Pretendard-Regular';
    font-size: 22px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.map-section .map-wrap {
    width: 1420px;
    height: 800px;
    position: relative;
    margin: 0 auto;
    border-radius: 120px 0px;
    box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.18);
    overflow: hidden;
}

.map-section .map-wrap .map-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
}

.map-section .map-wrap .map-info {
    position: absolute;
    bottom: 178px;
    left: 25px;
    padding: 10px 15px;
    background-color: rgba(255, 255, 255, 0.6);
    border-radius: 20px;
    z-index: 5;
}

.map-section .map-wrap .map-info .map-info-list {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
}

.map-section .map-wrap .map-info .map-info-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

.map-section .map-wrap .map-info .map-info-item h6 {
    color: #212121;
    font-family: 'Pretendard-Medium';
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 25px;
}

.map-section .map-wrap .map-info .map-info-item p {
    color: #212121;
    font-family: 'Pretendard-Light';
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 25px;
}
.map-section .map-wrap .map-ico-list {
    position: absolute;
    bottom: 60px;
    left: 25px;
    padding: 15px 15px 10px 15px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
    z-index: 5;
    background-color: rgba(255, 255, 255, 0.6);
    border-radius: 20px;
}

.map-section .map-wrap .map-ico-list .map-ico-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.map-section .map-wrap .map-ico-list .map-ico-item img {
    width: 30px;
    height: 30px;
    object-fit: contain;
}

.map-section .map-wrap .map-ico-list .map-ico-item span {
    color: #212121;
    text-align: center;
    font-family: 'Pretendard-Medium';
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

.map-section .map-wrap .logo {
    position: absolute;
    bottom: 40px;
    right: 40px;
    width: 275px;
    height: 180px;
}

.map-section .map-wrap .logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.map-section .map-wrap .mark {
    position: absolute;
    cursor: pointer;
    background-color: transparent;
    outline: 3px dashed #fff;
    transition: 0.3s;
    z-index: 10;
    opacity: 0;
}

.map-section .map-wrap .mark a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: transparent;
}

.map-section .map-wrap .mark:hover {
    opacity: 1;
}

.map-section .map-wrap .mark.mark1 {
    top: 11%;
    left: 12%;
    width: 180px;
    height: 100px;
    transform: rotate(3deg);
}

.map-section .map-wrap .mark.mark2 {
    top: 12%;
    left: 25.3%;
    width: 100px;
    height: 100px;
    transform: rotate(3deg);
}

.map-section .map-wrap .mark.mark3 {
    top: 17%;
    left: 33%;
    width: 270px;
    height: 60px;
    transform: rotate(3deg);
}

.map-section .map-wrap .mark.mark4 {
    top: 26%;
    left: 13%;
    width: 270px;
    height: 100px;
    transform: rotate(3deg);
}

.map-section .map-wrap .mark.mark5 {
    top: 40%;
    left: 13%;
    width: 270px;
    height: 100px;
    transform: rotate(3deg);
}

.map-section .map-wrap .mark.mark6 {
    top: 41%;
    left: 34%;
    width: 100px;
    height: 75px;
    transform: rotate(3deg);
}

.map-section .map-wrap .mark.mark7 {
    top: 51%;
    left: 33.5%;
    width: 100px;
    height: 80px;
    transform: rotate(3deg);
}

.map-section .map-wrap .mark.mark8 {
    top: 19%;
    left: 52%;
    width: 80px;
    height: 300px;
    transform: rotate(2deg);
}

.map-section .map-wrap .mark.mark9 {
    top: 22%;
    left: 58%;
    width: 105px;
    height: 250px;
    transform: rotate(2deg);
}

.map-section .map-wrap .mark.mark10 {
    top: 53%;
    left: 65.2%;
    width: 105px;
    height: 70px;
    transform: rotate(2deg);
}

.map-section .map-wrap .mark.mark11 {
    top: 54%;
    left: 73%;
    width: 115px;
    height: 70px;
    transform: rotate(2deg);
}

.map-section .map-wrap .mark.mark12 {
    top: 24%;
    left: 68%;
    width: 250px;
    height: 150px;
    transform: rotate(2deg);
}

.map-section .map-wrap .mark.mark13 {
    top: 39%;
    right: 2%;
    width: 150px;
    height: 120px;
    transform: rotate(2deg);
}

.map-section .map-wrap .mark.mark14 {
    bottom: 8%;
    left: 45.5%;
    width: 70px;
    height: 90px;
    transform: rotate(-3deg);
}

.map-section .map-wrap .mark.mark15 {
    bottom: 9%;
    left: 51%;
    width: 89px;
    height: 86px;
    transform: rotate(-3deg);
}

.map-section .map-wrap .mark.mark16 {
    top: 26%;
    left: 40%;
    width: 140px;
    height: 140px;
}

.map-section .map-wrap .mark.mark17 {
    top: 40%;
    right: 12%;
    width: 110px;
    height: 110px;
}

@media (max-width: 1024px) {
    /* 메인 배치도 */

    .map-section {
        padding: 30px 0 100px 0;
        background-color: #005142;
        position: relative;
    }

    .map-section .map-tit {
        gap: 5px;
        margin-bottom: 10px;
        width: 95%;
    }

    .map-section .map-tit h6 {
        font-size: 11px;
        line-height: normal;
    }

    .map-section .map-tit h4 {
        font-size: 20px;
        line-height: normal;
    }

    .map-section .map-tit p {
        margin-top: 20px;
        font-size: 11px;
    }

    .map-section .map-wrap {
        width: 370px;
        height: auto;
        border-radius: 30px 0px;
    }

    .map-section .map-wrap .map-img {
        width: 370px;
        height: 210px;
    }

    .map-section .map-wrap .map-info {
        position: static;
        border-radius: 10px;
        margin: 20px 0;
    }

    .map-section .map-wrap .map-info .map-info-item h6 {
        font-size: 13px;
        line-height: 25px;
    }

    .map-section .map-wrap .map-info .map-info-item p {
        font-size: 13px;
    }
    .map-section .map-wrap .map-ico-list {
        position: static;
        padding: 15px 15px 10px 15px;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 20px;
        border-radius: 10px;
    }

    .map-section .map-wrap .map-ico-list .map-ico-item {
        gap: 1px;
        width: 20%;
    }

    .map-section .map-wrap .map-ico-list .map-ico-item span {
        font-size: 14px;
    }

    .map-section .map-wrap .logo {
        bottom: 300px;
        right: 10px;
        width: 70px;
        height: 45px;
        object-fit: contain;
    }

    .map-section .map-wrap .mark.mark1 {
        top: 3%;
        left: 14%;
        width: 30px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark2 {
        top: 4%;
        left: 25.3%;
        width: 30px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark3 {
        top: 5%;
        left: 35%;
        width: 70px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark4 {
        top: 10%;
        left: 14%;
        width: 70px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark5 {
        top: 17%;
        left: 13%;
        width: 70px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark6 {
        top: 18%;
        left: 33%;
        width: 40px;
        height: 20px;
    }

    .map-section .map-wrap .mark.mark7 {
        top: 23%;
        left: 31.5%;
        width: 40px;
        height: 20px;
    }

    .map-section .map-wrap .mark.mark8 {
        top: 4%;
        left: 51%;
        width: 30px;
        height: 100px;
    }

    .map-section .map-wrap .mark.mark9 {
        top: 7%;
        left: 58%;
        width: 30px;
        height: 70px;
    }

    .map-section .map-wrap .mark.mark10 {
        top: 21%;
        left: 65.2%;
        width: 30px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark11 {
        top: 21%;
        left: 73%;
        width: 30px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark12 {
        top: 11%;
        left: 65%;
        width: 70px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark13 {
        top: 16%;
        right: 2%;
        width: 30px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark14 {
        bottom: 66%;
        left: 44.5%;
        width: 25px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark15 {
        bottom: 66%;
        left: 51%;
        width: 25px;
        height: 30px;
    }

    .map-section .map-wrap .mark.mark16 {
        top: 10%;
        left: 40%;
        width: 40px;
        height: 40px;
    }

    .map-section .map-wrap .mark.mark17 {
        top: 17%;
        right: 12%;
        width: 30px;
        height: 30px;
    }
}

/* 이미지 확대 기능 */
.zoom-btn {
    position: absolute;
    top: 3%;
    right: 25px;
    width: 50px;
    height: 50px;
    background-color: #fff;
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    z-index: 15;
}

.zoom-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
}

.zoom-btn i {
    font-size: 20px;
    color: #005142;
}

.zoom-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.9);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s ease;
}

.zoom-overlay.show {
    opacity: 1;
    visibility: visible;
}

.zoom-img {
    max-width: 100vw;
    max-height: 100vh;
    object-fit: contain;
}

.zoom-close-btn {
    position: absolute;
    bottom: 30px;
    right: 30px;
    width: 60px;
    height: 60px;
    background-color: #fff;
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
    transition: all 0.3s ease;
}

.zoom-close-btn:hover {
    transform: scale(1.1);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4);
}

.zoom-close-btn i {
    font-size: 24px;
    color: #005142;
}

@media (max-width: 1024px) {
    .zoom-btn {
        width: 40px;
        height: 40px;
        bottom: 15px;
        right: 15px;
    }

    .zoom-btn i {
        font-size: 16px;
    }

    .zoom-img {
        max-width: 95vw;
        max-height: 95vh;
    }

    .zoom-close-btn {
        width: 50px;
        height: 50px;
        bottom: 20px;
        left: 20px;
    }

    .zoom-close-btn i {
        font-size: 20px;
    }
}

.special-preview-section .mountain-img {
    position: absolute;
    top: -76%;
    left: 0;
    width: 100%;
    height: auto;
    object-fit: contain;
    opacity: 0.05;
    z-index: 0;
}

/* 메인 스페셜 프리뷰 */
.special-preview-section {
    padding: 0;
    z-index: 20;
    background-color: transparent;
    position: relative;
}

#special .special-preview-section {
    background-color: #005142;
}

.special-preview-section::before {
    content: '';
    width: 100%;
    height: 80%;
    position: absolute;
    top: -2px;
    left: 0;
    background-color: #005142;
}

.special-preview-section .special-preview-wrap {
    width: 100%;
    margin: 0 auto;
    height: 610px;
    overflow: hidden;
}

.special-preview-section .special-preview-wrap .swiper-slide {
    width: 400px;
    height: 550px;
    position: relative;
    transition: transform 0.3s ease;
    box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.25);
}

.special-preview-section .special-preview-wrap .swiper-slide .link {
    display: inline-block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.special-preview-section .special-preview-wrap .swiper-slide:nth-child(2n) {
    transform: translateY(55px);
}

.special-preview-section .special-preview-wrap .swiper-slide:nth-child(4n) {
    transform: translateY(55px);
}

.special-preview-section .special-preview-wrap .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.special-preview-section .special-preview-wrap .swiper-slide .special-preview-info {
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 9px 36px 9px 3px;
    border-radius: 0px 50px 0px 0px;
}

.special-preview-section .special-preview-wrap .swiper-slide .special-preview-info p {
    color: #212121;
    font-family: 'Arita Buri KR';
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: -1.2px;
}

.special-preview-section .special-preview-wrap .swiper-slide .special-preview-btn {
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 15px;
    right: 15px;
}

.special-preview-section .special-preview-wrap .swiper-slide .special-preview-btn img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (min-width: 2000px) {
    .special-preview-section::before {
        height: 80%;
    }

    .special-preview-section .special-preview-wrap {
        height: 810px;
    }
}

@media (max-width: 1024px) {
    .special-preview-section .mountain-img {
        top: -17%;
    }

    /* 메인 스페셜 프리뷰 */
    .special-preview-section {
        padding: 0;
        z-index: 20;
        background-color: transparent;
        position: relative;
        width: 100%;
    }

    .special-preview-section::before {
        height: 55%;
    }

    .special-preview-section .special-preview-wrap {
        width: 100%;
        margin: 0 auto;
        height: 310px;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
    }

    .special-preview-section .special-preview-wrap .swiper-slide {
        width: 150px;
        height: 200px;
    }

    .special-preview-section .special-preview-wrap .swiper-slide:nth-child(2n) {
        transform: translateY(15px);
    }

    .special-preview-section .special-preview-wrap .swiper-slide:nth-child(4n) {
        transform: translateY(15px);
    }

    .special-preview-section .special-preview-wrap .swiper-slide .special-preview-info {
        padding: 6px 38px 6px 3px;
        border-radius: 0px 20px 0px 0px;
    }

    .special-preview-section .special-preview-wrap .swiper-slide .special-preview-info p {
        font-size: 9px;
    }

    .special-preview-section .special-preview-wrap .swiper-slide .special-preview-btn {
        width: 20px;
        height: 20px;
        bottom: 3px;
        right: 5px;
    }
}

.bg-wrap {
    width: 100%;
    height: 1000px;
    position: relative;
    top: -155px;
    overflow: hidden;
    pointer-events: none;
}

.sub-wrap .bg-wrap {
    top: -8px;
}

.bg-wrap::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 40%;
    background-image: linear-gradient(to bottom, #005142 5.13%, rgba(255, 255, 255, 0) 100%);
    z-index: 10;
}

.bg-wrap::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    background: linear-gradient(0deg, #fffbf4 5.13%, rgba(255, 255, 255, 0) 100%);
    width: 100%;
    height: 20%;
    z-index: 10;
}

.bg-wrap .bg-img {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
}

.bg-wrap iframe {
    width: 100%;
    height: 108%;
    pointer-events: none;
}

@media (min-width: 2000px) {
    .special-preview-section .special-preview-wrap .swiper-slide {
        height: 750px;
    }

    .bg-wrap {
        height: 1300px;
        margin-bottom: -100px;
    }

    .bg-wrap iframe {
        width: 100vw;
        height: 135vh;
    }

    .bg-wrap::after {
        bottom: -4px;
    }
}

@media (max-width: 1024px) {
    .bg-wrap {
        width: 100%;
        height: 500px;
        top: -142px;
        margin-bottom: 0px;
    }

    .bg-wrap iframe {
        width: 220%;
        height: 500px;
        transform: translateX(-15%);
    }

    .bg-wrap::after {
        bottom: 0px;
    }
}

.reser-con {
    width: 100%;
    height: auto;
    position: relative;
}

.reser-con .box {
    width: 100%;
    height: 650px;
    position: relative;
}

.reser-con .box .tit {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    z-index: 10;
}

.reser-con .box .tit p {
    color: #005142;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 22px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    margin-bottom: 16px;
}

.reser-con .box .tit h5 {
    color: #005142;
    text-align: center;
    font-family: 'Arita Buri KR';
    font-size: 25px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    margin-bottom: 50px;
}

.reser-con .box .tit h5 span {
    display: inline-block;
    color: #005142;
    font-family: 'Arita Buri KR';
    font-size: 35px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
}

.reser-con .box .tit .btn {
    position: relative;
    display: inline-block;
    padding: 5px 20px;
    font-family: 'Pretendard-Regular';
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    color: #005142;
}

.reser-con .box .tit .btn::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #005142;
}

.reser-con .box .reser-img {
    z-index: 9;
    width: 90%;
    margin: 0px auto 0 auto;
    height: 100%;
    position: relative;
}

.reser-con .box .reser-img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
    bottom: 0px;
    right: 0;
}

.reser-con .box .ft-mt {
    position: absolute;
    bottom: -140px;
    left: 0;
    width: 100%;
    transition: 0.8s all;
}

.reser-con .box .ft-mt.aos-animate {
    bottom: -10px;
}

.reser-con .box .ft-mt img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 1024px) {
    .reser-con {
        overflow: visible;
    }

    .reser-con .box {
        height: 250px;
        overflow: hidden;
    }

    .reser-con .box .tit {
        width: 100%;
    }

    .reser-con .box .tit p {
        font-size: 11px;
        margin-bottom: 13px;
    }

    .reser-con .box .tit h5 {
        font-size: 15px;
        margin-bottom: 25px;
    }

    .reser-con .box .tit h5 span {
        font-size: 18px;
    }

    .reser-con .box .tit .btn {
        padding: 3px 10px;
        font-size: 11px;
    }

    .reser-con .box .reser-img img {
        height: 40%;
        bottom: unset;
        top: 0;
    }

    .reser-con .box .ft-mt {
        bottom: -100px;
        width: 110%;
        left: -4.3%;
    }

    .reser-con .box .ft-mt.aos-animate {
        bottom: -5px;
    }

    .reser-con .box .ft-mt img {
        object-fit: fill;
    }
}

#ft {
    background-color: #005142;
    position: relative;
}

.ft-inner {
    width: 90%;
    margin: 0 auto;
    height: auto;
    padding: 80px 0 50px 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.ft-popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 400px;
    height: 400px;
    z-index: 100;
    background-color: #fffbf4;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.ft-popup.show {
    opacity: 1;
    pointer-events: auto;
}

.ft-popup-inner {
    position: relative;
    width: 100%;
    height: 100%;
    text-align: center;
    padding-top: 55px;
}

.ft-popup-txt.txt1 {
    margin-bottom: 31px;
}

.ft-popup-txt.txt2 {
    margin-bottom: 35px;
}

.ft-popup-txt p {
    color: #000;
    text-align: center;
    font-family: 'Pretendard-Regular';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.ft-popup-txt.txt2 p:nth-child(1) {
    font-size: 15px;
}

.ft-popup-txt.txt2 p:nth-child(2) {
    font-size: 13 px;
}

.ft-popup .tel_btn {
    display: block;
    color: #212121;
    text-align: center;
    font-family: 'MapoGoldenPier';
    font-size: 38px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    margin-bottom: 25px;
}

.ft-popup .close-btn {
    text-align: center;
    cursor: pointer;
}

.ft-popup .close-btn span {
    position: relative;
    display: inline-block;
    color: #000;
    text-align: center;
    font-family: 'MapoGoldenPier';
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.ft-popup .close-btn span::before {
    content: '';
    position: absolute;
    top: 50%;
    left: -20px;
    transform: translateY(-50%);
    width: 2px;
    height: 2px;
    background-color: #000;
    border-radius: 50%;
}

.ft-popup .close-btn span::after {
    content: '';
    position: absolute;
    top: 50%;
    right: -20px;
    transform: translateY(-50%);
    width: 2px;
    height: 2px;
    background-color: #000;
    border-radius: 50%;
}

.ft-logo {
    width: 300px;
    height: 140px;
    margin-bottom: 75px;
}

.ft-logo img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.ft-tel {
    margin-bottom: 50px;
}

.ft-tel .tel_btn {
    font-family: 'MapoGoldenPier';
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    color: #fff;
    font-size: 38px;
    font-weight: 400;
    margin-bottom: 20px;
}

.ft-tel .tel_btn i {
    font-size: 35px;
    color: #fff;
}

.ft-tel p {
    color: #fff;
    text-align: center;
    font-family: 'Pretendard-Regular';
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.ft-info {
    margin-bottom: 90px;
}

.ft-info .info {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.ft-info .info h6 {
    color: #fff;
    font-family: 'Pretendard-Bold';
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 140%;
}

.ft-info .info p {
    color: #fff;
    font-family: 'Pretendard-Regular';
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
}

.ft-copy {
    text-align: center;
}

.ft-copy p {
    color: rgba(255, 255, 255, 0.5);
    text-align: right;
    font-family: 'Pretendard-Light';
    font-size: 12px;
    font-style: normal;
    font-weight: 300;
    line-height: 20px;
    margin-bottom: 10px;
}

.ft-copy a {
    color: #fff;
    text-align: right;
    font-family: 'Pretendard-Medium';
    font-size: 12px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
}

@media (max-width: 1024px) {
    .ft-inner {
        padding: 20px 0 40px 0;
    }

    .ft-popup {
        width: 300px;
        height: 300px;
    }

    .ft-popup-inner {
        padding-top: 25px;
    }

    .ft-popup-txt.txt1 {
        margin-bottom: 21px;
    }

    .ft-popup-txt.txt2 {
        margin-bottom: 25px;
    }

    .ft-popup-txt p {
        font-size: 12px;
    }

    .ft-popup-txt.txt2 p:nth-child(1) {
        font-size: 13px;
    }

    .ft-popup-txt.txt2 p:nth-child(2) {
        font-size: 11px;
    }

    .ft-popup .tel_btn {
        font-size: 20px;
        margin-bottom: 15px;
    }

    .ft-popup .close-btn span {
        font-size: 12px;
    }

    .ft-logo {
        width: 180px;
        height: 90px;
        margin-bottom: 30px;
    }

    .ft-tel {
        margin-bottom: 15px;
    }

    .ft-tel .tel_btn {
        gap: 15px;
        font-size: 20px;
        margin-bottom: 5px;
    }

    .ft-tel .tel_btn i {
        font-size: 18px;
    }

    .ft-tel p {
        font-size: 11px;
    }

    .ft-info {
        margin-bottom: 30px;
    }

    .ft-info .info {
        gap: 13px;
    }

    .ft-info .info h6 {
        font-size: 11px;
    }

    .ft-info .info p {
        font-size: 11px;
    }

    .ft-copy p {
        font-size: 8px;
        margin-bottom: 5px;
    }

    .ft-copy a {
        font-size: 8px;
    }
}

/* Room Mobile CSS */
@media (max-width: 1024px) {
    #room .con1 .box .info-img .right .room-slide-wrap {
        width: 100%;
        height: 250px;
        margin-bottom: 20px;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .slide-btn-wrap {
        width: 40px;
        height: 40px;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .room-slide-prev {
        left: 10px;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .room-slide-next {
        right: 10px;
    }

    #room .con1 .box .info-img .right .room-slide-wrap .slide-btn-wrap img {
        width: 16px;
        height: 16px;
    }
}

@media all and (min-width: 2200px) {
}

@media all and (max-width: 1440px) {
}

@media all and (max-width: 1400px) {
}

@media all and (max-width: 1300px) {
}

@media all and (max-width: 900px) {
    .pc-br {
        display: none;
    }
    .m-br {
        display: block;
    }

    .pc-map {
        display: none;
    }

    .m-map {
        display: block;
    }
}

@media all and (max-width: 700px) {
}

@media all and (max-width: 500px) {
}

@media (min-width: 1150px) and (max-width: 1500px) {
}

/* Room GNB Mobile Responsive */
@media (max-width: 1024px) {
    .room-gnb-wrap {
        left: -300px;
        width: 600px;
        height: 600px;
        padding-right: 100px;
    }

    .room-gnb-title {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .room-gnb-item {
        margin-bottom: 20px;
    }

    .room-gnb-item a {
        font-size: 16px;
        padding: 10px 16px;
        min-width: 120px;
    }
}

@media (max-width: 768px) {
    .room-gnb-wrap {
        left: -250px;
        width: 500px;
        height: 500px;
        padding-right: 84px;
    }

    .room-gnb-title {
        font-size: 20px;
        margin-bottom: 25px;
    }

    .room-gnb-item {
        margin-bottom: 15px;
    }

    .room-gnb-item a {
        font-size: 14px;
        padding: 8px 14px;
        min-width: 100px;
    }
}
