@charset "UTF-8";
#hd{color: #000000;}
.hd_link svg path{fill : #000000}
#hd.open-about .hd_link svg path{fill:#ffffff;}
.main-visual {width: 100%;height: 100vh;background-size: cover;background-repeat: no-repeat;background-position: bottom;}
.logo{top: -100%;transition: 0.5s;}
#hd.open-about .logo{top:0}

/* 스크롤바 설정*/
body::-webkit-scrollbar {width: 8px; height: 5px;}
body::-webkit-scrollbar-thumb {height: 10%; background: rgba(19,25,33, 1);}
body::-webkit-scrollbar-track {background: rgba(19,25,33, 0.5);}

/*main*/
.inner {position: relative;}
.main-flower-bg {position: absolute; top: -80px; right: 70px; z-index: -1; background-image: url("../../images/user/flower-bg.png"); width: 642px; height: 310px;}
.main-txt {font-size: 24px; line-height: 1.6; color: #888888; margin: 94px 0 60px; font-family: 'BookkMyungjo', sans-serif;}
.main-txt .mo {display: none;}
.main-bg {margin-bottom: 70px;}
.main-bg .video-wrap {position: relative; overflow: hidden; height: 0; min-height: 490px; padding-bottom: 32.58%;}
.main-bg .main-video {position: absolute; top: 0; left: 0; width: 100%; height: 100%;object-fit: cover;}
.main-intro img {width: 100%; min-height: 975px;}
.main-bg {position: relative;}
.main-bg .video-wrap .main-video::before {content: ''; position: absolute; width: 100%; height: 75%; bottom: 0; background: linear-gradient(0deg, rgba(0,0,0,0.50) 0%, rgba(255,255,255,0) 100%);}
.main-bg .main-txt-wrap {position: absolute; left: 50px; bottom: 60px; color: #fff;}
.main-bg .main-txt-wrap h3 {font-size: 50px; font-weight: 600; font-family: 'BookkMyungjo', sans-serif;}
.main-bg .main-txt-wrap p {font-size: 20px; margin: 20px 0 30px; line-height: 1.5; font-family: 'BookkMyungjo', sans-serif;}
.main-bg .main-txt-wrap p br {display: none;}
.main-bg .main-txt-wrap span {font-size: 18px;}
.main-bg .scroll {position: absolute; right: 45px; bottom: 55px; width: 200px; height: 200px;}
.main-bg .scroll-bg {background-image: url("../../images/user/scroll.svg"); background-repeat: no-repeat; background-size: cover; display: inline-block; width: 200px; height: 200px;}
.main-bg .scroll:hover .scroll-bg {animation: rotate normal infinite 20s linear}
.main-bg .scroll-arrow {background-image: url("../../images/user/scroll-arrow.svg"); background-repeat: no-repeat; background-size: cover; display: inline-block; width: 45px; height: 80px; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%);}

.main-intro {position: relative;}
.main-intro::before {content: ''; position: absolute; width: 100%; height: 100%; bottom: 0; background: linear-gradient(0deg, rgba(0,0,0,0.20) 0%, rgba(255,255,255,0) 100%);}
.main-intro .main-intro-bg {background-image: url("../../images/user/main-intro.png"); background-repeat: no-repeat; background-size: cover;  background-position: center; width: 100%; height: 1280px;}
.main-intro .main-txt-wrap {position: absolute; top: 14%; left: 50%; transform: translateX(-50%); color: #fff; text-align: center; width: 100%;}
.main-intro .main-txt-wrap h3 {font-size: 50px; font-weight: 600; font-family: 'BookkMyungjo', sans-serif;}
.main-intro .main-txt-wrap p {font-size: 20px; margin: 25px 0 50px; line-height: 1.8;}
.main-intro .main-txt-wrap p .br-mo {display: none;}
.main-intro .main-txt-wrap .detail-btn {width: fit-content; background-color: rgba(255,255,255,0.2); border-radius: 25px; border: 1px solid #fff; font-size: 18px; font-weight: 500; color: #fff; padding: 13px 40px; display: flex; margin: 0 auto;}
.main-intro .main-txt-wrap .detail-btn:hover {background-color: rgba(255,255,255,0.7); color: #000;}

.main-program {margin: 140px 0 170px;}
.main-program .inner {display: flex; align-items: end; justify-content: space-between;}
.main-program .program-tit {font-size: 50px; font-weight: 600; font-family: 'BookkMyungjo', sans-serif;}
.main-program .tab_util {padding-bottom: 10px;
  position: absolute;
  right: 40px;
  max-width: 830px;
  overflow: hidden;
}
.main-program .tab_util ul {display: flex; }
.main-program .tab_util ul li {width: fit-content !important;}
.main-program .tab_util ul li:last-child {margin-right: 0 !important;}
/* .main-program .tab_util ul li + li {margin-left: 45px;} */
.main-program .tab_util ul li a {font-size: 20px; color: #888888; font-family: 'BookkMyungjo', sans-serif;}
.main-program .tab_util ul li.swiper-slide-thumb-active a {font-weight: 600; color: #000; text-decoration: underline; text-underline-offset: 5px;}


/*main slide1*/
.main-program .swiper {margin-top: 50px;}
.main-program .slide-con {display:grid; grid-template-columns: repeat(2, 1fr); position: relative; overflow: hidden; min-height: 456px;}
.main-program .slide-con::before {transition: all .3s; content: ""; position: absolute; left:0; right:0; background: #000; opacity: 0.7; top: 0; bottom: 0; z-index: 20;}
.main-program .swiper-slide-active .slide-con::before {opacity: 0;}

.main-program .swiper-button-prev {left: 3%; border-radius: 50%; border: 1px solid #fff; width: 50px; height: 50px; background-color: rgba(255,255,255,0.2);}
.main-program .swiper-button-prev::after {content: ''; background: url("../../images/cmn/ico-arrow.svg") no-repeat; background-size: cover; width: 18px; height: 18px; margin-left: 5px;}
.main-program .swiper-button-next {right: 3%; border-radius: 50%; border: 1px solid #fff; width: 50px; height: 50px; background-color: rgba(255,255,255,0.2);}
.main-program .swiper-button-next::after {content: ''; background: url("../../images/cmn/ico-arrow.svg") no-repeat; background-size: cover; width: 18px; height: 18px; margin-right: 5px; transform: rotate(180deg);}



.main-program .slide-txt {background-color: #F7F7F7; padding: 40px 60px; display: flex; flex-direction: column; justify-content: center; align-items: baseline; min-height: 500px;}
.main-program .slide-txt .program-name {font-size: 40px; font-weight: 600; font-family: 'BookkMyungjo', sans-serif;}
.main-program .slide-txt .program-cont {font-size: 18px; font-weight: 300; line-height: 1.5; margin: 30px 0; word-break: keep-all;}
.main-program .slide-txt .program-cont p u {font-size: 14px; text-decoration: none;}
.main-program .slide-txt .program-info {display: flex; flex-direction: column; font-size: 18px;}
.main-program .slide-txt .program-info p {display: flex; align-items: center;}
.main-program .slide-txt .program-info p span {display: inline-flex; width: 10px; height: 10px; background: #000; border-radius: 50%; margin-right: 10px;}
.main-program .slide-txt .program-info p + p {margin-top: 10px;}
.main-program .slide-txt .detail-btn {display: flex; width: fit-content; border-radius: 25px; background-color: #000; color: #fff; font-size: 18px; font-weight: 500; padding: 13px 40px; margin-top: 30px; z-index: 21;}
.main-program .slide-txt .detail-btn:hover {background-color: #fff; color: #000; outline: 1px solid #000;}
.main-program .slide-img {position: relative; padding-bottom: 70%;}
.main-program .slide-img img {width: 100%; height: 100%; object-fit: cover;}
.main-program .slide-img .img {background-repeat: no-repeat; background-position: center; background-size: cover; position: absolute; top: 0; right: 0; left: 0; bottom: 0;}
.main-program .swiper-slide-next .slide-con .slide-img {order: 1;}
.main-program .swiper-slide-next .slide-con .slide-txt {order: 2;}

.room-intro .swiper-button-prev {left: 3%;}
.room-intro .swiper-button-next {right: 3%;}
.room-intro .swiper-button-prev:after, .room-intro .swiper-button-next:after {color: #fff; font-size: 60px;}
.room-intro .swiper-slide .slide-img::before {content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(255,255,255,0.2);}
.room-intro .swiper-slide:hover .slide-txt {opacity: 1; background-color: rgba(0,0,0,0.5);}
.room-intro .slide-img img {width: 100%; object-fit: cover;}
.room-intro .slide-txt {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; opacity: 0; transition: all .2s; width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.room-intro .slide-txt .room-num {font-size: 34px; font-weight: 600; font-family: 'BookkMyungjo', sans-serif; margin-bottom: 25px;}
.room-intro .slide-txt .room-info {font-size: 20px; color: #D0D0D0; margin: 5px 0;}
.room-intro .slide-txt .detail-btn2 {font-size: 20px; color: #fff; text-decoration: underline; text-underline-offset: 3px; margin-top: 20px; transition: all .3s;}
.room-intro .slide-txt .detail-btn2:hover {scale: 1.1; transition: all .3s;}


/*swiper common*/
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {opacity: 1 !important; pointer-events: all !important;}

@keyframes rotate {
  to {
    transform: rotate(360deg);
  }
}

@media screen and (max-width: 1920px) {
  .main-flower-bg {right: 40px;}
  .main-intro .main-intro-bg {height: 975px;}
  /* .main-program .slide-img img {max-height: 545px;} */
}

@media screen and (max-width: 1500px) {
  .main-program .slide-txt {padding: 30px 50px;}
  .main-program .slide-txt .program-cont br {display: none;}
  .main-program .slide-txt .program-cont p {word-break: keep-all;}
}


@media screen and (max-width: 1280px) {
  /*main-video*/
  .main-txt {margin: 50px 0 158px; line-height: 1.8;}
  .main-bg {margin-bottom: 50px;}
  .main-bg .video-wrap {padding-bottom: 55%;}
  .main-bg .main-video {scale: 1.4;}
  .main-video .video-logo {width: 276px;}
  .main-flower-bg {top: 40px; background: url("../../images/user/flower-bg2.svg"); width: 503px; height: 282px;}
  .main-bg .main-txt-wrap h3 {font-size: 44px;}
  .main-bg .main-txt-wrap p {font-size: 18px; margin-bottom: 30px;}
  .main-bg .main-txt-wrap p br {display: block;}

  .main-bg .main-txt-wrap {left: 30px; bottom: 40px;}
  .main-bg .scroll, .main-bg .scroll-bg {width: 160px; height: 160px;}
  .main-bg .scroll {right: 30px; bottom: 40px;}
  .main-bg .scroll-arrow {width: 32px; height: 58px;}

  /*main-intro*/
  .main-intro::before {background: linear-gradient(0deg, rgba(0,0,0,0.15) 0%, rgba(255,255,255,0) 100%);}
  .main-intro .main-txt-wrap {top: 14%;}
  .main-intro .main-txt-wrap h3 {font-size: 44px;}

  /*main-program*/
  .main-program {margin: 70px 0 100px;}
  .main-program .inner {flex-direction: column; align-items: baseline;}
  .main-program .program-tit {font-size: 40px;}
  .main-program .tab_util {padding: 0; position: unset; max-width: 100%;}
  .main-program .tab_util ul {margin-top: 40px;}
  /* .main-program .tab_util ul li + li {margin-left: 30px;} */
  .main-program .tab_util ul li a {font-size: 16px;}
  .main-program .slide-txt {padding: 50px 30px; min-height: unset;}
  .main-program .slide-txt .program-name {font-size: 30px;}
  .main-program .slide-txt .program-cont, .main-program .slide-txt .program-info {font-size: 16px;}
  .main-program .swiper {margin-top: 30px;}
  .main-program .swiper-button-prev, .main-program .swiper-button-next {display: none;}
  .main-program .slide-con {min-height: unset;}

  /*room intro*/
  .room-intro .slide-img img {}
  .room-intro .slide-txt .room-name {font-size: 24px;}
  .room-intro .slide-txt .room-info {font-size: 16px; margin: 20px 0;}
  .room-intro .slide-txt .detail-btn2 {font-size: 16px;}
  .room-intro .swiper-button-prev:after, .room-intro .swiper-button-next:after {font-size: 50px;}
  
}

@media screen and (max-width: 768px) {
  /*main-video*/
  .main-txt {font-size: 20px; margin: 30px 0 138px;}
  .main-txt br {display: none;}
  .main-txt .mo {display: block;}
  .main-video .video-logo {width: 177px;}
  .main-bg .video-wrap {padding-bottom: 139.6%;}
  .main-bg .main-video {scale: 1.4;}
  .main-bg .main-txt-wrap {left: 15px; bottom: 60px;}
  .main-bg .main-txt-wrap h3 {font-size: 24px;}
  .main-bg .main-txt-wrap p, .main-bg .main-txt-wrap span {font-size: 14px;}
  .main-bg .main-txt-wrap p {margin: 15px 0 18px;}
  .main-bg {margin-bottom: 20px;}
  .main-flower-bg {width: 280px; height: 157px; background: url("../../images/user/flower-bg3.svg"); top: 90px; right: 16px;}
  .main-bg .scroll, .main-bg .scroll-bg {width: 112px; height: 112px;}
  .main-bg .scroll {right: 8px; bottom: 14px;}
  .main-bg .scroll-arrow {width: 25px; height: 44px;}

  /*main-intro*/
  .main-intro::before {background: linear-gradient(0deg, rgba(0,0,0,0.1) 0%, rgba(255,255,255,0) 100%);}
  .main-intro .main-intro-bg {height: 800px;}
  .main-intro .main-txt-wrap {top: 10%;}
  .main-intro .main-txt-wrap h3 {font-size: 30px;}
  .main-intro .main-txt-wrap p {font-size: 14px; margin: 25px 0 30px;}
  .main-intro .main-txt-wrap p .br-mo {display: block;}
  .main-intro .main-txt-wrap .detail-btn {font-size: 14px; padding: 10px 26px;}

  /*main-program*/
  .main-program {margin: 50px 0 60px;}
  .main-program .inner {align-items: center;}
  .main-program .program-tit {font-size: 30px; text-align: center;}
  .main-program .tab_util {overflow: hidden;}
  .main-program .tab_util ul {margin-top: 24px;}
  /* .main-program .tab_util ul li + li {margin-left: 18px;} */
  .main-program .slide-con {display: flex; flex-direction: column; min-width: unset;}
  .main-program .slide-txt {padding: 30px 16px 40px; text-align: center; align-items: center;}
  .main-program .slide-txt .program-name {font-size: 24px;}
  .main-program .slide-txt .program-cont, .main-program .slide-txt .program-info {font-size: 14px;}
  .main-program .slide-txt .program-cont {margin: 18px 0 20px; word-break: keep-all;}
  .main-program .slide-txt .program-cont p u {font-size: 12px;}
  .main-program .slide-txt .program-info {text-align: left;}
  .main-program .slide-txt .program-info p span {width: 8px; height: 8px;}
  .main-program .slide-txt .program-info p + p {margin-top: 8px;}
  .main-program .slide-txt .detail-btn {padding: 10px 26px; font-size: 14px; margin-top: 20px;}
  .main-program .tab_util ul li.swiper-slide-thumb-active a {text-underline-offset: 4px;}
  .main-program .swiper-slide-next .slide-con .slide-img {order: 2;}
  .main-program .swiper-slide-next .slide-con .slide-txt {order: 1;}

  /*room intro*/
  .room-intro .slide-img img {max-height: 670px;}
  .room-intro .swiper-button-prev:after, .room-intro .swiper-button-next:after {font-size: 40px;}
}
