@charset "utf-8";
@import url(font_v-2.css);
@font-face {
    font-family: 'Gishella';
    src: url('https://dpv.co.kr/font/Gishella\ Morely.otf') format('opentype'),
         url('https://dpv.co.kr/font/Gishella\ Morely.ttf') format('truetype'),
         url('https://dpv.co.kr/font/Gishella\ Morely.woff') format('woff'),
         url('https://dpv.co.kr/font/Gishella\ Morely.woff2') format('woff2');
    font-style: normal;
    font-weight: normal;
    text-rendering: optimizeLegibility;
}

/* ===============================================================
    * Reset
=============================================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol,
ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,
time, mark, audio, video {margin: 0;padding: 0;border: 0;font-size: 100%;font: inherit;vertical-align: baseline;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
body {line-height: 1;overflow-x: hidden;}
ol, ul {list-style: none;} blockquote, q {quotes: none;} blockquote:before, blockquote:after, q:before, q:after {content: '';content: none;}
table {border-collapse: collapse;border-spacing: 0;} a {text-decoration: none;color: inherit;} img {vertical-align: top;}
input[type="date"] {border: none;}
input[type="text"], input[type="tel"], input[type="email"], input[type="password"], input[type="search"], input[type="date"],
textarea, button {appearance: none;-webkit-appearance: none;outline:none;background: none;border: 1px solid #999;}
button {cursor: pointer;border:none;border-radius: 0;padding: 0;margin: 0;}
select {appearance: none;-webkit-appearance: none;outline:none;border: 1px solid #999;}
select::-ms-expand {display: none;}
::placeholder {font-family: 'RixRak-Sans_Regular';}
/* a:link {background: none;}  */
a:visited {background: none;}
a:active {background: none;}
* {box-sizing: border-box; -webkit-tap-highlight-color: transparent;}

/* ===============================================================
    * Layout & Font & Width & Color
=============================================================== */
body {font-family: 'RixRak-Sans_Regular'; font-size: 16px; line-height: 1; font-weight: normal; color: #999; overflow-x: hidden;}

.font1 {font-family: 'Gishella';}
.fontR {font-family: 'RixRak-Sans_Regular';}
.fontB {font-family: 'RixRak-Sans_Bold';}
.fontL {font-family: 'RixRak-Sans_Light';}
.ttu {text-transform: uppercase;} .tal {text-align: left;} .tac {text-align: center;} .tar {text-align: right;}

.color1 {color: #9e0016 !important;}
.color_e0 {color: #e0e0e0 !important;}
.color_f {color: #fff !important;}
.color_5 {color: #555;}
.bg1 {background: #9e0016 !important; color: #fff !important;}

.swiper-button-next, .swiper-button-prev {outline: none !important}
.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after {content: '' !important;}
.swiper-button-next:after, .swiper-button-prev:after {content:'' !important;}

.width-max {max-width: 1430px; width: 100%; margin: 0 auto; padding: 0 15px;}
.p100 {padding: 100px 0;}
.clb:after {content:''; display: block; clear:both;}
.clear:after {content:''; display: block; clear:both;}
.fl {float:left;} .fr {float:right;}
.none-pc {display: none;}
@media (max-width: 750px){
    .p100 {padding: 10.67vw 0;}
    .none-pc {display: block;}
    .none-mo {display: none;}
    .swiper-pagination-bullet-active {background: #9e0016 !important;}
}

/* editor content style reset */
.txtFont p {font-family: inherit !important; color: inherit !important; font-size: inherit !important; line-height: inherit !important;}
.txtFont table {border: 1px solid #e0e0e0 !important; margin-top: 10px;}
.txtFont table tr {height: 40px; line-height: 40px; text-align: center; border-bottom: 1px solid #e0e0e0;}
.txtFont table tr:last-of-type {border-bottom: none;}
.txtFont table th, .txtFont table td {padding: 0 30px;}
.txtFont table td {border-right: 1px solid #e0e0e0 !important;}
.txtFont table td:last-of-type {border-right: none;}
@media (max-width: 750px){
    .txtFont table {width: 100%; margin-top: 2.67vw;}
    .txtFont table tr {height: 8vw; line-height: 8vw;}
}

/* ===============================================================
    * common style
=============================================================== */
/* cm-top banner, tab */
.cm-banner {position: relative; height: 400px; background-repeat: no-repeat; background-size: cover; background-position: center;}
.cm-banner__tit {position: absolute; width: 100%; text-align: center; left: 50%; top: 50%; transform: translate(-50%,-50%);}
.cm-banner__tit h2 {font-size: 60px; color: #fff; margin-bottom: 20px; }
.cm-banner__tit p {font-size: 20px; color: #fff; }
.cm-banner .tab {position: absolute; left: 0; right: 0; bottom: 0; text-align: center;}
.cm-banner .tab-item {position: relative; display: inline-block; margin: 0 5px; width: 280px; height: 60px; line-height: 64px; text-align: center; font-size: 16px; color: #fff; background: #2b2a26; cursor: pointer;}
.cm-banner .tab-item.active {background: #970519;}
.cm-banner .tab-item:after {content: ''; position: absolute; left: 4px; top: 4px; right: 4px; bottom: 0; border: 1px solid rgba(255,255,255,.2); border-bottom: none;}
@media (max-width: 1024px){
    .cm-banner .tab-item {width: 25vw;}
}
@media (max-width: 750px){
    .cm-banner {height: 40vw;}
    .cm-banner__tit h2 {font-size: 9.33vw; margin-bottom: 0;}
    .cm-banner__tit p {display: none;}
}

/* cm-main__tit */
.cm-main__tit {text-align: center; margin-bottom: 80px;}
.cm-main__tit h2 {font-size: 50px; letter-spacing: -0.01em; color: #333;}
@media (max-width: 750px){
    .cm-main__tit {margin-bottom: 10.667vw;}
    .cm-main__tit h2 {font-size: 8.00vw;}
}

/* sort */
.sort {position: relative; z-index: 500;}
.sort .fontR {font-size: 2.93vw;}
.sort .sortdown {font-size: 4.27vw; margin-top: -1.3vw;}
.sort .sort-left.active .fontR {color: #9e0016;}
.sort .sort-left.active .sortdown {color: #9e0016;}
.sort .sort-right.active .fontR {color: #9e0016;}
.sort .sort-right.active .sortdown {color: #9e0016;}
.sort-top {position: relative; display: flex; justify-content: flex-start; align-items: center; border-bottom: 1px solid #e0e0e0;}
.sort-left {display: flex; justify-content: space-between; align-items: center; width: 50%; height: 10.67vw; border-right: 0.13vw solid #e0e0e0; padding-left: 5.33vw; padding-right: 4.00vw; cursor: pointer;}
/* .sort-left span {color: #9e0016;} */
.sort-right {display: flex; justify-content: space-between; align-items: center; width: 50%; height: 10.67vw; padding-left: 5.33vw; padding-right: 4.00vw; cursor: pointer; color: #9e0016;}
.sort-right span {color: #9e0016;}
.sort-left__list, .sort-right__list {display: none; position: absolute; left: 0; width: 100%; top: calc(100% + 1px); background: #fff;}
.sort-left__list a, .sort-right__list a {display: block; height: 10.67vw; line-height: 10.67vw; padding-left: 5.33vw; border-bottom: 1px solid #e0e0e0; color: #999;}

/* style-btn */
.style-btn {display: inline-block; width: 140px; height: 40px; line-height: 40px; text-align: center; border: 1px solid #999; border-radius: 4px; transition: .3s; cursor: pointer; text-transform: uppercase;}
.style-btn i {font-size: 14px; color: #555;}
.style-btn span {padding-left: 5px; font-size: 14px; color: #555;}
.style-btn.active, .style-btn:hover {border-color: #9e0016; background: #9e0016;}
.style-btn.active i, .style-btn:hover i,
.style-btn.active span, .style-btn:hover span {color: #fff;}

/* select */
.sel-basic {position: relative;}
.sel-basic .select {display: flex; justify-content: flex-start; align-items: center; cursor: pointer;}
.sel-basic .select p {width: 110px; height: 40px; line-height: 38px; padding-left: 20px; font-size: 13px; color: #999; border: 1px solid #999; border-top-left-radius: 4px; border-bottom-left-radius: 4px; border-right: none;}
.sel-basic .select span {width: 40px; height: 40px; line-height: 35px; border-top-right-radius: 4px; border-bottom-right-radius: 4px; border: 1px solid #999; text-align: center; font-size: 18px; color: #999;}
.sel-basic__opt {position: absolute; width: 100%; left: 0; top: 100%; border: 1px solid #999; border-radius: 4px; overflow: hidden; display: none; z-index: 500;}
.sel-basic__opt li {font-size: 13px; color: #999; line-height: 30px; padding-left: 20px; transition: .3s; cursor: pointer; background: #fff;}
.sel-basic__opt li:hover {background: #9e0016; color: #fff;}
@media (max-width: 750px){
    .sel-basic .select p {width: 16vw; height: auto; line-height: 1; padding-left: 0; padding-right: 1.33vw; font-size: 2.67vw; border: none;}
    .sel-basic .select span {width: auto; height: auto; line-height: 1; border: none; font-size: 2.67vw;}
    .sel-basic__opt {width: 25vw; left: 50%; transform: translateX(-50%); top:150%;}
    .sel-basic__opt li {font-size: 2.67vw; line-height: 7.20vw; padding-left: 2.67vw;}
}

/* checkbox */
.chk-basic {opacity: 0;visibility: hidden;position: absolute;left: 0;top: 0;}
.chk-basic__label {position: relative;display: inline-block;vertical-align: middle;cursor: pointer;padding-left: 20px;color: #999;font-size: 13px;}
.chk-basic + .chk-basic__label:before {content: '';position: absolute;left: 0;top: -2px;background: #fff;border: 1px solid #999;display: inline-block;vertical-align: middle;width: 14px;height: 14px; border-radius: 2px;}
.chk-basic + .chk-basic__label:after {content: "\f00c";position: absolute;left: 2px;top: 0px;font-family: 'Font Awesome 5 Pro';color: #fff;opacity: 0;font-size: 13px;}
@media (max-width: 750px){
    .chk-basic + .chk-basic__label:before {width: 3.73vw; height: 3.73vw;}
    .chk-basic + .chk-basic__label:after {font-size: 3.33vw;}
}

.chk-basic:checked + .chk-basic__label {color: #9e0016;}
.chk-basic:checked + .chk-basic__label:after {opacity: 1;}
.chk-basic:checked + .chk-basic__label:before {background: #9e0016;border-color: #9e0016;}

.chk-basic + .chk-basic__label.chk1-label:before {border: 1px solid #be8e62;}
.chk-basic + .chk-basic__label.chk2-label:before {border: 1px solid #4f6f8c;}
.chk-basic + .chk-basic__label.chk3-label:before {border: 1px solid #8e975e;}
.chk-basic + .chk-basic__label.chk4-label:before {border: 1px solid #7f517d;}

.chk-basic__label.chk1-label {color: #be8e62;}
.chk-basic__label.chk2-label {color: #4f6f8c;}
.chk-basic__label.chk3-label {color: #8e975e;}
.chk-basic__label.chk4-label {color: #cb89a0;}

.chk-basic:checked + .chk-basic__label.chk1-label {color: #be8e62;}
.chk-basic:checked + .chk-basic__label.chk2-label {color: #4f6f8c;}
.chk-basic:checked + .chk-basic__label.chk3-label {color: #8e975e;}
.chk-basic:checked + .chk-basic__label.chk4-label {color: #cb89a0;}

.chk-basic:checked + .chk-basic__label.chk1-label:before {background: #be8e62;border-color: #be8e62;}
.chk-basic:checked + .chk-basic__label.chk2-label:before {background: #4f6f8c;border-color: #4f6f8c;}
.chk-basic:checked + .chk-basic__label.chk3-label:before {background: #8e975e;border-color: #8e975e;}
.chk-basic:checked + .chk-basic__label.chk4-label:before {background: #7f517d;border-color: #7f517d;}

/* group color */
.group {display: inline-block; height: 28px; line-height: 26px; border-radius: 15px; padding: 0 10px; text-align: center; font-size: 13px; border-width: 1px; border-style: solid;}
.group1 {border-color: #be8e62; color: #be8e62;}
.group2 {border-color: #4f6f8c; color: #4f6f8c;}
.group3 {border-color: #8e975e; color: #8e975e;}
.group4 {border-color: #cb89a0; color: #cb89a0;}
@media (max-width: 750px){
    .group {height: 4.8vw; line-height: 4.533vw; padding: 0 2.667vw; font-size: 2.667vw;}
}

/* stroke animation */
.stroke-a {position: relative;}
.stroke-b {position: relative;}

.stroke-a:after, .stroke-a:before,
.stroke-b:after, .stroke-b:before {content: ''; display: block; position: absolute; background: #970519; z-index: 1;}
.stroke1 .stroke-a:after, .stroke1 .stroke-a:before,
.stroke1 .stroke-b:after, .stroke1 .stroke-b:before {content: ''; display: block; position: absolute; background: #be8e62; z-index: 1;}
.stroke2 .stroke-a:after, .stroke2 .stroke-a:before,
.stroke2 .stroke-b:after, .stroke2 .stroke-b:before {content: ''; display: block; position: absolute; background: #4f6f8c; z-index: 1;}
.stroke3 .stroke-a:after, .stroke3 .stroke-a:before,
.stroke3 .stroke-b:after, .stroke3 .stroke-b:before {content: ''; display: block; position: absolute; background: #8e975e; z-index: 1;}
.stroke4 .stroke-a:after, .stroke4 .stroke-a:before,
.stroke4 .stroke-b:after, .stroke4 .stroke-b:before {content: ''; display: block; position: absolute; background: #cb89a0; z-index: 1;}

.stroke-a:after {width: 0;height: 2px;right: 0;bottom: 0;transition: all 0.3s 0.3s ease-out;}
.stroke-a:before {width: 0;height: 2px;left: 0;top: 0;transition: all 0.3s 0.3s ease-out;}
.stroke-b:after {width: 2px;height: 0;right: 0;top: 0;transition: all 0.3s ease-out;}
.stroke-b:before {width: 2px;height: 0;left: 0;bottom: 0;transition: all 0.3s 0.0s ease-out;}
.stroke-a:hover:after, .stroke-a:hover:before {width: 100%;transition: all 0.3s 0s ease-out;}
.stroke-a:hover .stroke-b:after, .stroke-a:hover .stroke-b:before {height: 100%;transition: all 0.3s 0.3s ease-out;}
@media (max-width: 750px){
    .stroke-a:after, .stroke-a:before,
    .stroke-b:after, .stroke-b:before {display: none;}
}

/* gallery-slider */
.gallery-wrap {position: relative; width: 100%;}
.gallery-container {margin-bottom: 30px;}
.gallery-container .swiper-slide {width: 100%; background-size: cover;}
.gallery-container .swiper-slide img {width: 100%; height: auto; object-fit: cover;}
.gallery-wrap .width-max {position: relative;}
.thumbs-wrap {width: 100%;}
.thumb-container {position: relative; width: 100%; margin-bottom: 30px;}
.room-main__slider .thumb-container .swiper-wrapper {flex-wrap: wrap;}
.room-main__slider .gallery-wrap .width-max {padding: 0;}
.thumb-container .swiper-slide {width: 100%; height: 90px; border: 1px solid #e0e0e0; background-size: cover; cursor: pointer; opacity: 0.5;}
.thumb-container .swiper-slide-thumb-active {opacity: 1;}
.thumb-ctrl {position: absolute; left: 0; right: 0; top: 0; bottom: 0;}
.thumb-ctrl.noCtrl {display: none;}
.thumb-ctrl .nav-btn {cursor: pointer; width: 50px; height: 50px; line-height: 50px; text-align: center; border: 1px solid #e0e0e0; border-radius: 4px; font-size: 16px; color: #888; transition: .3s;}
.thumb-ctrl .nav-btn:hover {background: #fff; color: #9e0016;}
.thumb-ctrl .thumb-prev {left: initial; right: calc(100% + 30px);}
.thumb-ctrl .thumb-next {right: initial; left: calc(100% + 30px);}
@media (max-width: 750px){
    .gallery-container {margin-bottom: 4vw;}
    .gallery-container .swiper-slide {height: auto;}
    .gallery-container .swiper-slide img {width: 100%; object-fit: cover;}
    .gallery-ctrl {margin-top: 5.33vw;position: relative;}
    .gallery-ctrl.noCtrl {display: none;}
    .gallery-count {width: 100%; display: flex; justify-content: space-between; align-items: center;}
    .gallery-ctrl .slide-st, .gallery-ctrl .slide-en {display: inline-block; font-size: 2.67vw; color: #888;}
    .gallery-ctrl .gallery-pagination {margin-top: 0; width: calc(100% - 18.67vw); height: 2px; left: 50%; top: 50%; transform: translate(-50%,-50%);}
    .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {background: #9e0016 !important;}
    .gallery-ctrl .nav-btn {width: auto; height: auto; top: 50%; transform: translateY(-50%); line-height: 1; font-size: 3.20vw; background: none; border: none; margin-top: 0; color: #888;}
    .gallery-ctrl .nav-btn:hover {background: none; color: #888;}
    .gallery-ctrl .swiper-button-prev {right: initial; left: 4.67vw;}
    .gallery-ctrl .swiper-button-next {right: 4.67vw;}
}

/* pagination */
.pagination {display: flex; justify-content: center; align-items: center; margin-top: 40px;}
.pager {display: inline-block; margin: 0 2px; width: 34px; height: 34px; line-height: 34px; text-align: center; border: 1px solid #e0e0e0; font-size: 12px; color: #888; transition: .3s;}
.pager:hover, .pager.on {background: #9e0016; border-color: #9e0016; color: #fff; font-family: 'RixRak-Sans_Bold';}
.page-prev {font-size: 12px; margin-right: 12px;}
.page-next {font-size: 12px; margin-left: 12px;}
.page-more {vertical-align: middle;}
@media (max-width: 750px){
    .pagination {margin-top: 5.33vw;}
    .pager {width: 7.47vw; height: 7.47vw; line-height: 7.47vw; font-size: 2.93vw; margin: 0 0.40vw;}
    .page-prev {font-size: 2.67vw; margin-right: 2.67vw;}
    .page-next {font-size: 2.67vw; margin-left: 2.67vw;}
}


/* popup */
.popup {position: absolute; left: 0; right: 0; top: 4.5vw; bottom: 0;}
.main-popup {
    position: relative; display: block; float: left;
    width: auto; height: auto; /*min-width:200px; max-width:400px;*/
    border-radius: 16px; background-color: #fff; z-index: 99999; overflow: hidden;
    box-shadow: 0 0 5px rgba(0,0,0,0.2); cursor: move;
    margin-right: 5px; margin-bottom: 5px;
}
.main-popup img {width: 100%; object-fit: cover;}
.popup-inner {position: relative; width: 100%; height: 100%; padding-bottom: 45px;}
.popup-top {width: 100%; height: auto; padding: 10px;}
.popup-bottom {position: absolute; bottom: 0; width: 100%; height: 45px; }
.popup-bottom a {float: left; width: 50%; height: 100%; line-height: 45px; border-top: 1px solid #eee; text-align: center; font-size: 14px; color: #666;}
.popup-bottom a:nth-child(1) {border-right: 1px solid #eee;}
@media (max-width: 750px){
    .main-popup {width: auto; height: auto; min-width: 150px; max-width: 70%; float: none; position: absolute;}
    .popup-bottom {height: 10vw;}
    .popup-bottom a {width: 50%; height: 100%; line-height: 10vw; border-top: 1px solid #eee; font-size: 2.67vw;}
}