@charset "utf-8";
.sub_skip{display:none}
.swiper-button-lock,
.swiper-pagination-lock{display: block;}
.swiper-pagination{position: static;}
.func-box .swiper-pagination .swiper-pagination-bullet{margin:0 2px}
.swiper-pagination-bullet-active{width: 24px;border-radius: 10px;background:#0a6a9d;}
.swiper-pagination-bullet:only-child{display: block !important;}
.func-box li button{width: 40px;height: 40px;border-radius: 100%;border: 1px solid #e2e2e2;background: #fff; text-align: center;}
.func-box li button:before{content:'';display: block;margin: auto;mask-position: center;mask-size: 100%;mask-repeat: no-repeat;background-color: #464c53;}
.func-box li.comm button:before{width: 7px;height:11px;mask-image: url(../../images/main/main_arrow_icon.svg);}
.func-box li.comm button{margin:auto;;}
.func-box li.prev button{transform:rotate(-180deg);}
.play button:before{width: 8px;height: 11px;mask-image: url(../../images/main/main_stop_icon.svg)}
.play.is-stopped button:before{width: 9px;height: 13px;mask-image: url(../../images/main/main_play_icon.svg);}
/* 스크롤바 전체 */
div::-webkit-scrollbar {width: 4px;border-radius: 30px;}
/* 트랙 */
div::-webkit-scrollbar-track {border-radius: 30px;background: #dfdfdf;}
/* thumb */
div::-webkit-scrollbar-thumb {border-radius: 30px;background: #2c465f;}
div::-webkit-scrollbar-thumb:hover {background: #0875b6;}
main{padding-bottom: 135px;}
section{max-width: 1280px;margin: auto;padding:0 20px;}
section.visual{max-width: 100%;padding: 0;}
.visual .slide-wrap{position: relative;}
.visual .swiper-slide{height: 535px; background:#fbfbfb;}
.visual .swiper-slide .text-wrap > a{position:relative; display:inline-block; width:auto; max-width:100%; height:auto; padding:2px; border-radius:3px;}
.visual .swiper-slide .text-wrap > a:is(:hover,:focus),
html.dark-mode .visual .swiper-slide .text-wrap > a:is(:hover,:focus){background-color:transparent !important; box-shadow:none; text-decoration:none; color:inherit;}
.visual .swiper-slide img{position: absolute;bottom: 0;left: calc(50% - 40px);transform: translateX(-50%); z-index: -1;object-fit: cover; max-width:1280px; height:85%;}
html.dark-mode .visual .swiper-slide img{mix-blend-mode: soft-light;}
.visual .swiper-slide .text-wrap{max-width:1320px; margin:auto; padding:70px 20px 0; box-sizing:border-box;}
.visual .swiper-slide .txt1{display: block;padding-bottom: 12px;font-size: 22px;font-weight: 600;letter-spacing: -.4px;color: #444444;}
.visual .swiper-slide strong{display: block;font-family: 'GMarketSans';font-size: 68px;font-weight: 700;  line-height: 1.5;color: #222222;}
.visual .swiper-slide .txt2{font-size: 23px;font-weight: 500;line-height: 1.4;color: #666666;}
.visual .swiper-slide .txt2 span{font-weight: 700}
.visual .swiper-slide .txt2 .col1{color:#0b6da1;}
.visual .swiper-slide .txt2 .col2{color:#b94c7d}
.visual .swiper-slide .txt1, .visual .swiper-slide .txt2,.visual .swiper-slide strong{position:relative; transform:translateY(10px); transition:transform 0.5s, opacity 0.5s; opacity:0; }
.visual .swiper-slide.swiper-slide-active .txt1, .visual .swiper-slide.swiper-slide-active .txt2,.visual .swiper-slide.swiper-slide-active strong{opacity: 1; transform:translateY(0); transition-delay: 0.4s;}
.visual .swiper-slide.swiper-slide-active .txt1 {transition-delay: 0.2s;}
.visual .swiper-slide.swiper-slide-active strong {transition-delay: 0.3s;}
.visual .swiper-slide.swiper-slide-active .txt2 {transition-delay: 0.4s;}

.visual .func-box{position: absolute;bottom: 55px;left: max(20px, calc(50% - 640px));z-index: 1;width: max-content;max-width: fit-content;padding: 0;}
.visual .func-box ul{display: flex;gap: 6px;}
.visual .func-box li.pagination-box{height:40px;padding: 0 20px;border-radius: 20px;border: 1px solid #e2e2e2;background: #fff; }
.visual .func-box li.pagination-box .swiper-pagination-bullets{display: flex;align-items: center;position:static;height: 100%;}

/* 상단 예약하기 */
#mainReservePopup .reserve-pop{max-width:min(70vw, 700px);}
html.dark-mode #mainReservePopup .top-desc p,
html.dark-mode #mainReservePopup .tbl-title,
html.dark-mode #mainReservePopup .agree-form .cont p,
html.dark-mode #mainReservePopup .agree-form .cont li{color:var(--dm-text);}
#mainStep02 .top-desc{margin-top: 15px;}
.reservation-box{position: absolute;bottom:45px;right: calc((105% - 1460px) / 2);z-index: 2;width: 100%;max-width: 480px;padding:30px;border-radius: 13px;background: #fff;box-shadow: 2px 0px 10px rgba(0, 0, 0, 0.14);border: 1px solid #d4d4d4;}
body.pop-active .reservation-box{z-index:1;}
.reservation-box .title{display:flex; flex-wrap:wrap; gap:4px 20px; margin-bottom: 20px;padding-left:25px;font-size: 20px;font-weight: 700;color: #222222;background-image: url(../../images/sub/title_ic.svg);background-repeat: no-repeat;background-position: left top 2px; align-items:center;}
.reservation-box .title > span{min-width:0; max-width:100%; font-size:16px; line-height:1.5; font-weight:500; color:#444; word-break:keep-all; overflow-wrap:anywhere;}
html.dark-mode .reservation-box .title > span{color:#fff; opacity:0.8;}
.reservation-box .tab-list{display: flex;gap: 0px;background:#f1f1f1; border-radius:6px; overflow:hidden;}
.reservation-box .tab-list li{flex:1; }
.reservation-box .tab-list button{border-radius: 6px; width:100%; height:48px;padding:0 12px;font-size: 17px;font-weight: 600;line-height: 1;letter-spacing: -.4px;color: #999; border:2px solid transparent; transition-duration:0.2s; color:#6c6c6c;}
.reservation-box .tab-list .on button{background:#fff; color:#0875b6; border:2px solid #0875b6;}
.reservation-box .tab-list li:not(.on) button:is(:hover,:focus){border:2px solid #0875b6;}
.reservation-box .top{display: flex;align-items: center;justify-content: space-between;padding-bottom: 28px; margin-top:18px; border-top:1px solid #eee; padding-top:30px;}
.reservation-box .top .title{margin-bottom: 0;}
.reservation-box .cal-add{position: relative;font-size: 16px;font-weight: 500;color: #888888;transition: color 0.3s ease;}
.reservation-box .cal-add:after{content:'+';display: inline-block;margin-left: 6px;margin-top: -6px;font-size: 16px;font-weight: 500;color: #888888;vertical-align: middle;transition: color 0.3s ease, margin 0.3s ease, transform 0.4s ease, top 0.3s ease;}
.reservation-box .cal-add:hover{color:#0875b6;}
.reservation-box .cal-add:hover:after{transform: rotate(180deg);margin-top: -1px;color:#0875b6;}
.reservation-box .input-group-box{display: flex;flex-wrap: wrap;gap: 8px;}
.reservation-box input[type="date"]{max-width: 164px;width: 100%;font-size: 16px;font-weight: 600;color: #797676;background: url(../../images/main/calendar_ic.png) right 10px center no-repeat;}
.reservation-box input[type="date"]::-webkit-calendar-picker-indicator{display: none;-webkit-appearance: none;}
.reservation-box input[type="date"]::-webkit-inner-spin-button{display: none;}
.reservation-box input[type="date"], .reservation-box .select-custom{height:48px;padding:0 14px;border:1px solid #d4d4d4;border-radius: 6px;letter-spacing: -.6px; color:#797676;}
.reservation-box .select-custom{max-width: 240px;width: 100%;padding-right: 30px;}
.select-custom{position: relative;}
.select-custom button{display: flex;align-items: center;justify-content: space-between;width: 100%;height: 100%;}
.select-custom button p{display: flex;align-items: center;font-size: 16px;font-weight: 600;letter-spacing: -.4px;color: #797676;}
.select-custom button span{margin-left: 6px;color: #cd4040;}
.select-custom > button:after{content:'';position: absolute;top: 50%;right: 15px;transform: translateY(-50%);width: 11px;height: 8px;background-image: url(../../images/common/select_ic.png);background-repeat: no-repeat;background-position: center;transition: transform 0.3s ease, top 0.3s ease;}
.select-custom.on > button:after{transform: translateY(-50%) rotate(180deg);}
.select-custom ul{display: none;position: absolute;top: calc(100% + 4px);left: 0;z-index: 10;width: 100%;max-height: 240px;overflow-y: auto;padding: 8px 0;border: 1px solid #d2d2d2;border-radius: 6px;background: #fff;box-shadow: 0 4px 12px rgba(0,0,0,0.1);}
.select-custom ul li{padding: 10px 16px;font-size: 15px;cursor: pointer;}
.select-custom ul li:hover{background: #f5f5f5;}
.select-custom ul li span{margin-left: 6px;color: #e02020;}
.reservation-box .btn-wrap{display: flex;flex-wrap: wrap;gap: 8px;margin-top: 22px;}
.reservation-box .btn-wrap button{flex: 1;height: 52px;border-radius: 6px;border: 1px solid #0875b6;font-size: 18px;font-weight: 700;transition: color 0.2s ease, background 0.2s ease;}
.reservation-box .btn-wrap .btn-outline{color:#0875b6;}
.reservation-box .btn-wrap .btn-primary{background: #0875b6;color:#fff;}
.reservation-box .btn-wrap .btn-outline:hover {background-color: #f5fbff;}
.reservation-box .btn-wrap .btn-primary:hover{background-color: #06659c;color:#fff;}

h3{padding-bottom: 45px;font-family: 'GMarketSans';font-size: 32px;font-weight: 700;color: #444444;}


.quick{max-width: 100%;position: relative;margin-top: 80px;padding: 0 20px;}
main .bg-type2:after{top: 155px;}

.quick .container-box{max-width: 1280px;margin: auto;}
.quick-menu-wrap{position: relative;width: 100%;padding: 0 52px;}
.quick-menu-wrap:has(> .swiper-pagination.swiper-pagination-lock){padding-left: 0;padding-right: 0;}
.quick-menu-wrap li a{width: 100%; }
.quick-menu-wrap li div{display: flex; background:#fff;align-items: center;justify-content: center;height: 121px;border-radius: 13px;border:1px solid #d4d4d4;transition: border-color 0.3s ease;}
.quick-menu-wrap li a:hover div{border:1px solid #0a6a9d}
.quick-menu-wrap li img{transition: transform 0.25s ease;}
.quick-menu-wrap li a:hover img{transform: translateY(-6px);}
.quick-menu-wrap p{padding-top: 25px;font-size: 16px;font-weight: 500;line-height: 1.4; text-align: center;color: #4a4e58; transition: color 0.3s ease;}
.quick-menu-wrap li a:hover p{color:#0a6a9d}
.quick-menu-wrap .func-box {display: flex;align-items: center;justify-content: space-between; position: absolute;left: 0;top: 50%;transform: translateY(-50%);z-index: 10;pointer-events: none;width: 100%;margin-top: -50px; }
.quick-menu-wrap .func-box ul{display: flex;justify-content: space-between;width: 100%;}
.quick-menu-wrap .func-box button{pointer-events: auto;}
.quick-menu-wrap .func-box button:disabled{ cursor: auto;opacity: .5;}
.quick-menu-wrap .swiper-pagination{display: flex;align-items: center;justify-content: center;margin-top: 50px;}
@media only screen and (min-width:1280px) {
    .quick-menu-wrap > .swiper-pagination,
    .quick-menu-wrap > .func-box {display: none;}
}

section.items{position: relative;max-width:100%;margin-top:105px;}
main .bg-type1:before{top: 60px;}

section.items .container-box{display: flex;flex-wrap: wrap;gap: 48px;max-width: 1280px;margin: auto;}
section.items .container-box > div{flex: auto;min-width:0;}
.reservation{width: calc(59% - 40px);}
.news{width: calc((100% - 48px) * 0.4221);}
.board{width: calc((100% - 48px) * 0.5779);}
.top-box{display: flex;flex-wrap: wrap;gap: 36px;align-items: center;}
.top-box h3{padding-bottom: 0; line-height:100%;}
a.add-btn {position: relative;margin-left: auto;font-size: 16px;font-weight: 500;color: #797676 !important;display: inline-flex;align-items: center;gap: 8px;transition: color 0.3s ease;}
html.dark-mode a.add-btn{color:inherit !important;}
a.add-btn::after {content: "+";display: inline-block;margin-top: -3px;font-size: 17px;font-weight: 500;color: #888888;transition: transform 0.3s ease;}
a.add-btn:hover {color: #2d4c8b !important;}
a.add-btn:hover::after {transform: rotate(90deg);color: #2d4c8b;}




.top-box .date{display: flex;align-items: center;gap: 26px;}
.top-box .date p{font-family: 'Cafe24Danjeonghae';font-size: 30px;color: #222222;}
.items .top-box{ gap: 30px;align-items: center;padding-bottom: 40px; position:relative; z-index:3; }
.items .news .top-box .tab-list{flex: auto;width: 100%;}
.reservation .top-box button{width: 43px;height: 43px;border-radius: 9px;box-shadow: 2px 0px 10px rgba(0, 0, 0, 0.14);border: 1px solid #d5d5d5;background-repeat: no-repeat;background-position: center;background-image: url(../../images/main/calendar_ic.png)}
.reservation .tab-list{width: 100%;max-width: 130px;}
.reservation .tab-list li{border-bottom: 1px solid #e1e1e1;}
.reservation .tab-list button{position: relative;width: 100%;text-align: left;padding: 18px 0 18px 16px;font-size: 18px;font-weight: 600;color: #000000;}
.reservation .tab-list button:before{content:'';position: absolute;top: 50%;transform: translateY(-50%);right: -20px;width: 25px;height: 8px;background-image: url(../../images/main/tab_on_ic.png);background-repeat: no-repeat;background-size: contain;opacity: 0;transition: right 0.3s ease, opacity 0.3s ease;}
.reservation .tab-list .on button:before{right: 13px;opacity: 1;}
.reservation .tab-list .on button{font-weight: 700;color: #0875b6;}
.reservation .tab-list span{}
.reservation .list-wrap{display: flex;flex-wrap: wrap;gap: 40px;}
.reservation .list-wrap .top-box{gap: 10px;justify-content: space-between;padding-bottom: 18px;}
.reservation .list-wrap .top-box a{display: flex;align-items: center;width: 100%;max-width: 120px;height: 32px;padding: 0 22px;border: 1px solid #2d4c8b;border-radius: 20px;font-size: 14px;font-weight: 600;color: #fff;background: #2d4c8b; transition: background 0.3s ease;}
.reservation .list-wrap .top-box a span{display: block;width: 100%;background-image: url(../../images/main/arrow_ic.png);background-repeat: no-repeat;background-position: 100% 50%;}
.reservation .list-wrap .top-box a:hover{background:#fff;color:#2d4c8b;}
.reservation .list-wrap .top-box a:hover span{background-image: url(../../images/main/arrow_hover_ic.png);}
.reservation .list-item{flex: 1;}
.reservation .list-wrap .top-box p{font-size: 18px;font-weight: 600;color: #777777;}
.reservation .list-wrap p strong{font-size: 22px;font-weight: 600;color: #444444;}
.reservation .box > ul > li{padding: 18px 0;border-bottom: 1px solid #e1e1e1;}
.reservation .cont ul{display: flex;flex-wrap: wrap;gap: 14px;}
.reservation .cont li{display: flex;gap: 10px;}
.reservation .cont p{font-size: 16px;font-weight: 600;letter-spacing: -.8px;color: #777777;}
.reservation .cont span{font-size: 16px;font-weight: 600;letter-spacing: -.8px;}
.reservation .cont .type1{color:#be5838;}
.reservation .cont .type2{color:#0875b6;}
section.items .news .list{position: relative; isolation:isolate;}
section.items .news .list:before{content:''; position: absolute;top: -120px;right: 32px;z-index: -1;width: 261px;height: 145px;background-image: url(../../images/main/character.png);background-repeat: no-repeat;background-position: 0 0;}
section.items .news .box{overflow-y: auto;max-height: 311px;padding-right: 32px;}
section.items .board .box{}
section.items .board .swiper{width: calc(100% + 40px);min-height: 300px;padding:0 20px; margin-left: -20px;}


.news .list li + li{margin-top: 8px;}
.news li a{width: 100%;height: 98px;padding: 20px 25px;border: 1px solid #cecece;border-radius: 9px;background-color: #fff;transition: border-color 0.3s ease }
.news li a:hover{border: 1px solid #2d4c8b;box-shadow: 4px 4px 14px 0px rgba(0, 0, 0, 0.07);}
.news li a:hover p{color:#2d4c8b}
.news li p{overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-size: 19px;font-weight: 600;color: #444444;transition: color 0.3s ease;}
.news li span{display: block;padding-top: 13px;font-size: 15px;color: #797976;}

.board .swiper-slide .thumb{aspect-ratio:16/9; overflow: hidden;height: 190px;border-radius: 13px;border:1px solid #ededed;background: #fff;box-shadow: 0 7px 21px 0px rgba(0, 0, 0, 0.15);}
.board .swiper-slide img{width: 100%;height: 100%;object-fit: cover;transition: transform 0.3s ease;}
.board .swiper-slide a:hover img{transform: scale(1.1);}
.board .swiper-slide span{display: block;padding-top:15px;padding-bottom: 8px;font-size: 17px;font-weight: 600;color: #2d4c8b;}
.board .swiper-slide p{min-height:2.6em; overflow: hidden;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;text-overflow: ellipsis;text-decoration: underline;text-decoration-color: transparent;text-underline-offset: 4px; font-size: 26px;font-weight: 600;line-height: 1.3;color: #222222;transition: text-decoration-color 0.3s ease;}
.board .swiper-slide a{width: 100%;}

.board .swiper-slide a:hover p{text-decoration-color: #222222;}
.board .func-box{margin-top: 0px;}
.board .func-box ul{display: flex;justify-content: center;align-items: center;}
.board .func-box li{line-height: 1}
.board .func-box li.comm{margin-top: 5px;}
.board .func-box li button{border: none;border-radius: 0;}
.board .func-box .swiper-pagination .swiper-pagination-bullet{margin:0 6px;}
.board .swiper-pagination-bullet-active{width: 60px;background:#0875b6;}


@media only screen and (max-width:1400px) {
    /* 서브 */
    .calendar-tbl-wrap td{padding:12px;}
}
@media only screen and (max-width:1280px) {
    /* 서브 */
    .sub-visual__wrap > .inner{background-position: right top -16px;background-size: 465px auto;}
    .sub-visual__wrap h2{margin-top: 15px;font-size: 42px;}
    .reservation-cont .top-box{gap: 20px;}
    .reservation-cont .top-box p{font-size: 30px;}
    .tab-lists button{width: 92px;font-size: 17px;}
    .info-wrap .title{font-size: 22px;}
    .info-wrap > ul > li{ padding: 0 30px;}
    .info-wrap li ul li{ font-size: 16px;}
    a.reserve-view-btn{width: 120px;height: 120px;font-size: 17px;}
    a.reserve-view-btn span:before{width: 28px;height: 28px;margin: 0 auto 10px;mask-size: 28px;}
    .calendar-tbl-wrap{padding-bottom: 5px;}
    .calendar-tbl-wrap thead th{ padding: 20px 16px;}
    .calendar-tbl-wrap td{height: 186px;}
    .calendar-tbl-wrap .btn-reserve{height: 36px;font-size: 15px;}
}
@media only screen and (max-width:1280px) {
    .visual .swiper-slide {height: 480px;}
    .visual .swiper-slide .txt1{font-size: 19px;}
    .visual .swiper-slide strong{font-size: 56px;}
    .visual .swiper-slide .txt2{font-size: 20px;}
    h3{font-size: 26px;}
    .top-box{gap: 25px;}
    section.items .container-box{gap: 30px;}

    .quick{margin-top: 60px;}
    .quick-menu-wrap li div{height: 112px;}
    section.items{margin-top: 85px;}
    section.items .board .swiper{width: calc(100% + 26px);min-height: 260px;padding: 0 13px;margin-left: -13px;}
    .board .swiper-slide .thumb{box-shadow: 0 7px 10px 0px rgba(0, 0, 0, 0.15); width:100%;}
    .top-box .date p{font-size: 24px;}
    .reservation .list-wrap{gap: 20px;}
    .reservation .tab-list{max-width: 110px;}
    .reservation .tab-list button{padding: 15px 0 15px 12px;font-size: 17px;}
    .news li a{height: 90px;padding: 15px 20px;}
    .news li p{font-size: 18px;}
    .board .top-box:before{right: 80px;width: 170px;height: 136px;background-size: 170px auto;}
    .board .swiper-slide p{font-size: 20px;}

    .reservation-box{right: 20px;}
    .reservation-box .title{font-size: 18px;}
    .reservation-box .title > span{font-size:15px;}
    .reservation-box .cal-add{font-size: 15px;}
    .reservation-box .tab-list{margin-bottom: 30px; overflow-x:auto;}
    .reservation-box .tab-list button{font-size: 16px;}
    .reservation-box .btn-wrap button{height: 48px;font-size: 17px;}
}

@media only screen and (max-width:1120px) {
    section.items .news .list:before{aspect-ratio:261/145; width:200px; height:auto; background-size:100%; top:-90px;}
}
@media only screen and (max-width:1024px) {
    .visual .swiper-slide img{left:0px; transform:unset;}
    .visual .swiper-slide .text-wrap{padding-top: 40px;}
    .visual .swiper-slide {height: 380px;}
    .visual .swiper-slide .txt1{padding-bottom: 5px;font-size: 17px;}
    .visual .swiper-slide strong{font-size: 32px;}
    .visual .swiper-slide .txt2 {font-size: 18px;}
    .visual .swiper-slide .txt2 br{display: none}
    .reservation-box{right:auto;left: 50%;transform: translateX(-50%);bottom: -344px;max-width: 100%;width: calc(100% - 40px);padding:25px 20px;}
    .reservation-box .title{padding-left: 20px;font-size: 16px;background-size: 12px auto;background-position: left center;}
    .reservation-box .title{column-gap:12px;}
    .reservation-box .title > span{font-size:14px;}
    .reservation-box .cal-add{font-size: 14px;}
    .reservation-box .tab-list{margin-bottom: 12px;}
    .reservation-box .tab-list button{height: 34px;font-size: 15px;}
    .reservation-box input[type="date"], .reservation-box .select-custom{max-width: 100%;height: 40px;}
    .reservation-box input[type="date"]{width: calc(40% - 3px);}
    .reservation-box .select-custom{width: calc(60% - 5px);}
    .reservation-box input[type="date"]{font-size: 15px;background-size: 16px auto;}
    .select-custom button p{font-size: 15px;}
    .reservation-box .btn-wrap button{height: 45px;font-size: 15px;}

    main{padding-bottom: 80px;}
    h3{padding-bottom: 20px;font-size: 22px;}
    .quick{margin-top: 375px;}
    .quick-menu-wrap li div{height: 100px;}
    .quick-menu-wrap li img{max-width: 40px;}
    .quick-menu-wrap p{padding-top: 20px;font-size: 15px;}
    .quick-menu-wrap .swiper-pagination{margin-top: 40px;}
    .quick-menu-wrap .func-box{margin-top: -42px;}
    section.items{margin-top: 45px;}
    .reservation{width:100%;}
    .top-box .date{gap: 15px;}
    .top-box .date p{font-size: 20px;}
    .items .top-box{gap: 0;padding-bottom: 25px;}
    .reservation .top-box button{width: 35px;height: 35px;background-size: 15px auto;}
    a.add-btn{font-size: 14px;}
    section.items .container-box{gap: 40px;}
    section.items .box{max-height: 352px}
    .news{width: 100%}
    section.items .news .box{padding-right: 12px; max-height:352px;}
    .reservation .tab-list button{padding: 12px;font-size: 16px;}
    .reservation .list-wrap .top-box{padding-bottom: 10px;}
    .reservation .list-wrap .top-box a{max-width: 104px;padding: 0 15px;}
    .reservation .box > ul > li{padding: 12px 0;}
    .reservation .list-wrap p strong{font-size: 18px;}
    .reservation .cont p{font-size: 15px;}
    .reservation .cont span{font-size: 15px;}

    .news li a{height: 80px;}
    .news li p{font-size: 16px;}
    .news li span{padding-top: 8px;font-size: 14px;}
    .top-box{gap:20px;}
    .top-box .tab-list{flex: auto;width: 100%;margin-top: 20px;}

    .board top-box:before{content:none}
    section.items .board .swiper{ width: calc(100% + 12px); min-height: 220px;padding: 0 6px;margin-left: -6px;}
    .board .swiper-slide .thumb{height: unset;}
    .board .swiper-slide span{padding-top: 20px;padding-bottom: 10px;font-size: 15px;}
    .board .swiper-slide p{font-size: 18px;}
    .board .func-box{margin-top: 0px;}
}

@media only screen and (max-width:768px) {
    .reservation-box input[type="date"], .reservation-box .select-custom{width: 100%;}
    .reservation-box{bottom: -392px;}
    .quick{margin-top: 422px;}


    .board .func-box{margin-top: 0px;}
    .items .top-box{padding-bottom: 15px;}
    .reservation .tab-list{display: flex;max-width: 100%;}
    .reservation .tab-list li{flex:1;}
    .reservation .tab-list button{text-align: center;}
    .reservation .tab-list button:before{position: absolute;top: auto;left:0;transform: initial;bottom: 0;width:0;height: 1px;background-image: none;background-color:#0875b6;transition: width 0.3s ease;}
    .reservation .tab-list .on button:before{width:100%;}
    .reservation .list-wrap{gap: 10px;}
    .reservation .list-wrap p strong{font-size: 17px;}
    .reservation .cont ul{gap: 10px;}
    .news, .board{position: relative;width:100%;}
    .items .top-box{position:relative; z-index:3;}
    html.drak-mode section.items .news .list:before{filter:brightness(0.3);}
    section.items .news .list:before{right:5vw; transform:scale(0.8); transform-origin:right bottom;}

}

/* 다크모드 */
html.dark-mode .reservation-box,
html.dark-mode .select-custom ul,
html.dark-mode .news li a,
html.dark-mode .quick-menu-wrap li div,
html.dark-mode .board .swiper-slide .thumb,
html.dark-mode .func-box li button,
html.dark-mode .visual .func-box li.pagination-box{background-color:var(--dm-surface); border-color:var(--dm-border); color:var(--dm-text);}
html.dark-mode h3,
html.dark-mode .reservation-box .title,
html.dark-mode .select-custom button p,
html.dark-mode .quick-menu-wrap p,
html.dark-mode .top-box .date p,
html.dark-mode .reservation .list-wrap p strong,
html.dark-mode .news li p,
html.dark-mode .board .swiper-slide p{color:var(--dm-text);}
html.dark-mode .reservation-box .cal-add,
html.dark-mode .reservation-box .cal-add:after,
html.dark-mode a.add-btn,html.dark-mode a.add-btn:after,
html.dark-mode .reservation .list-wrap .top-box p,
html.dark-mode .reservation .cont p,
html.dark-mode .news li span{color:var(--dm-muted);}
html.dark-mode .reservation .list-wrap,
html.dark-mode .reservation .list-wrap li{border-color:var(--dm-border);}
html.dark-mode .reservation-box input[type="date"],
html.dark-mode .reservation-box .select-custom{background-color:var(--dm-bg); color:var(--dm-text); border-color:var(--dm-border);}
html.dark-mode .select-custom ul li:hover{background-color:var(--dm-hover); color:var(--dm-accent);}
html.dark-mode .reservation-box .btn-wrap .btn-outline{background-color:var(--dm-surface); color:var(--dm-accent); border-color:var(--dm-accent);}
html.dark-mode .reservation-box .btn-wrap .btn-primary{background-color:var(--dm-primary); color:#fff; border-color:var(--dm-accent);}
html.dark-mode .reservation .cont .type1,
html.dark-mode .select-custom button span,
html.dark-mode .select-custom ul li span{color:var(--dm-danger);}
html.dark-mode .reservation .cont .type2,
html.dark-mode .board .swiper-slide span,
html.dark-mode .news li a:hover p,
html.dark-mode .quick-menu-wrap li a:hover p{color:var(--dm-accent);}
html.dark-mode .func-box li button:before{background-color:var(--dm-text);}
html.dark-mode .swiper-pagination-bullet{background-color:var(--dm-muted);}
html.dark-mode .swiper-pagination-bullet-active{background-color:var(--dm-accent);}
html.dark-mode .board .swiper-slide a:hover p{text-decoration-color:var(--dm-accent);}
/* 배너 사진 위 텍스트는 어두운 배경과 함께 밝게 표시 */
html.dark-mode .visual .swiper-slide{background-color:#637786;}
html.dark-mode .visual .swiper-slide .txt1,
html.dark-mode .visual .swiper-slide .txt2,
html.dark-mode .visual .swiper-slide strong{color:var(--dm-text);}
html.dark-mode .visual .swiper-slide .txt2 .col1{color:var(--dm-accent);}
html.dark-mode .visual .swiper-slide .txt2 .col2{color:#ffb3d1;}
html.dark-mode div::-webkit-scrollbar-track{background:var(--dm-surface);}
html.dark-mode div::-webkit-scrollbar-thumb{background:var(--dm-border);}
html.dark-mode .reservation .box > ul > li{border-color:var(--dm-border);}
html.dark-mode .reservation .list-wrap .top-box a:hover{color:var(--dm-accent);}
html.dark-mode .reservation-box input[type="date"]{background-image:url("../../images/main/calendar_ic_w.png");}
html.dark-mode .select-custom > button:after{background:url("../../images/main/select_ic_w.png");}

/* 다크모드 탭: 기본 / 선택 / 마우스·키보드 상태 */
html.dark-mode .reservation-box .tab-list{background-color:var(--dm-bg);}
html.dark-mode .reservation-box .tab-list button{background-color:transparent; color:var(--dm-muted);}
html.dark-mode .reservation-box .tab-list .on button{background-color:var(--dm-hover); color:var(--dm-text); border-color:var(--dm-accent);}
html.dark-mode .reservation-box .tab-list li:not(.on) button:is(:hover,:focus){background-color:var(--dm-hover); color:var(--dm-accent); border-color:var(--dm-accent);}
html.dark-mode .reservation .tab-list li{border-color:var(--dm-border);}
html.dark-mode .reservation .tab-list button{color:var(--dm-text);}
html.dark-mode .reservation .tab-list .on button,
html.dark-mode .reservation .tab-list button:is(:hover,:focus-visible){color:var(--dm-accent);}
@media only screen and (max-width:768px){
    html.dark-mode .reservation .tab-list button:before{background-color:var(--dm-accent);}
}

/* 메인 알림 슬라이드 팝업 */
.main__popup-wrap{position:fixed;inset:0;z-index:10000;width:100%;height:100vh;display:none;}
.main__popup-wrap.active{display:block;}
.main__popup-wrap::before{content:'';position:fixed;inset:0;width:100%;height:100%;background:rgba(0,0,0,.7);}
.main__popup-wrap .popup_wrap{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);overflow-x:hidden;overflow-y:auto;max-width:1315px;width:95%;height:auto;max-height:calc(100vh - 40px);margin:0 auto;z-index:1;}
.main__popup-wrap .popup_wrap.type1{width:450px;}
.main__popup-wrap .popup_wrap.type2{width:915px;}
.main__popup-wrap .popup__inner{align-items:flex-start;}
.main__popup-wrap .popup_wrap .divpop{position:relative;width:100%;border:0;padding:0;background:#fff;}
/* 이미지·영상·첨부파일 */
.main__popup-wrap .divpopa{text-align:center;}
.main__popup-wrap .divpopa a{display:block;}
.main__popup-wrap .divpopa a:focus-visible{outline:2px solid #ff0000;outline-offset:-2px;}
.main__popup-wrap .divpopa img{display:block;width:100%;height:auto;aspect-ratio:40 / 56;object-fit:fill;}
.main__popup-wrap .divpopa iframe{display:block;width:100%;height:auto;aspect-ratio:40 / 56;}
.main__popup-wrap .divpopa_file{padding:10px;}
.main__popup-wrap .divpopa_file a{overflow-wrap:anywhere;}
/* 오늘 하루 열지 않기·닫기 */
.main__popup-wrap .popup_wrap .divpopb{display:flex;justify-content:space-between;align-items:center;overflow:hidden;position:relative;margin:0 auto;padding:0;background:#fff;min-height:40px;font-size:16px;}
.main__popup-wrap .popup_wrap .divpopb .checkbox{position:relative;width:auto;height:auto;min-height:40px;padding:10px;}
.main__popup-wrap .popup_wrap .divpopb label{display:inline-flex;align-items:center;position:relative;gap:8px;padding:0;text-indent:0;cursor:pointer;user-select:none;line-height:20px;}
.main__popup-wrap .popup_wrap .divpopb label::before{display:none;}
.main__popup-wrap .popup_wrap .divpopb input[type="checkbox"]{position:static;appearance:auto;flex-shrink:0;width:16px;height:16px;margin:0;overflow:visible;clip:auto;clip-path:none;border:2px solid #222;border-radius:2px;accent-color:#222;cursor:pointer;}
.main__popup-wrap .popup_wrap .divpopb input[type="checkbox"]:focus-visible{outline:2px solid #007aff;outline-offset:2px;}
.main__popup-wrap .popup_wrap .divpopb label span{color:#222;font-size:18px;letter-spacing:-.030em;}
.main__popup-wrap .popup_wrap .divpopb .popup_close{position:relative;z-index:1;width:40px;height:40px;flex-shrink:0;background:#fff;font-size:0;border-radius:20px; background:none !important;}
.main__popup-wrap .popup_close::before{content:'';position:absolute;top:11px;left:19px;transform:rotate(45deg);width:2px;height:18px;background:#333;}
.main__popup-wrap .popup_close::after{content:'';position:absolute;top:19px;left:11px;transform:rotate(45deg);width:18px;height:2px;background:#333;}

html.dark-mode .main__popup-wrap .popup_close:is(:hover,:focus)::before,html.dark-mode .main__popup-wrap .popup_close:is(:hover,:focus)::after{background:#fff;}
/* 페이지 표시·이전 다음 버튼 */
.main__popup-wrap .popup-util{display:flex;align-items:center;justify-content:center;width:100%;height:40px;padding:0 20px;background:#2c333f;box-sizing:border-box;}
.main__popup-wrap .popup-pagination{width:auto;text-align:center;}
.main__popup-wrap .popup-util .swiper-pagination-bullet{width:10px;height:10px;margin:0;border-radius:100%;background:#fff;opacity:.4;}
.main__popup-wrap .popup-util .swiper-pagination-bullet-active{width:40px;border-radius:5px;opacity:1;}
.main__popup-wrap .popup-util .swiper-pagination-bullet + .swiper-pagination-bullet{margin-left:10px;}
.main__popup-wrap .button-box{display:flex;align-items:center;justify-content:space-between;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;max-width:1500px;}
.main__popup-wrap .button-box.type1{max-width:620px;}
.main__popup-wrap .button-box.type2{max-width:1070px;}
.main__popup-wrap .button-box button{width:60px;height:60px;border:0;background:transparent url(../../images/main/popup-arrow-ic.png) center no-repeat;background-size:36px auto;cursor:pointer;}
.main__popup-wrap .button-box .prev{transform:rotate(180deg);}
.main__popup-wrap .button-box .swiper-button-disabled{opacity:.4;cursor:default;}
.main__popup-wrap .button-box .swiper-button-lock{visibility:hidden;}
.main__popup-wrap .popup-util:has(.swiper-pagination-lock){display:none;}
/* 반응형 */
@media only screen and (max-width:1600px){
.main__popup-wrap .popup_wrap{max-width:1270px;width:calc(100% - 200px);}
.main__popup-wrap .button-box{max-width:1420px;width:calc(100% - 40px);}
}
@media only screen and (max-width:1100px){
.main__popup-wrap .popup_wrap.type2{width:80%;}
.main__popup-wrap .button-box button{width:50px;height:50px;background-size:28px auto;}
}
@media only screen and (max-width:768px){
.main__popup-wrap .popup_wrap,.main__popup-wrap .popup_wrap.type1,.main__popup-wrap .popup_wrap.type2{width:360px;height:auto;}
.main__popup-wrap .popup_wrap .divpopb label span{font-size:16px;}
.main__popup-wrap .button-box{display:none;}
}
@media only screen and (max-width:480px){
.main__popup-wrap .popup_wrap,.main__popup-wrap .popup_wrap.type1,.main__popup-wrap .popup_wrap.type2{width:80%;max-width:350px;}
}
