* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 16px;
  color: #fff;
  word-break: keep-all;
  max-width: 100%;
  /* overflow-x: hidden; */
  line-height: 154%;
  /* 35px */
  letter-spacing: -1.25px;
}

@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.8/dist/web/variable/pretendardvariable-dynamic-subset.css");

@font-face {
  font-family: 'MyCustomFont';
  src: url('place/fonts/PretendardVariable.woff2') format('woff2');
  font-weight: 100, 200, 300, 400, 500, 600, 700, 800, 900;
  font-style: normal;
}

@font-face {
  font-family: 'aggro_L';
  src: url('./fonts/SBAggro_L.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'aggro_B';
  src: url('./fonts/SBAggro_M.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Ria_B';
  src: url('./fonts/RiaSans-Bold.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@font-face {
  font-family: 'Ria_R';
  src: url('./fonts/RiaSans-Regular.ttf') format('truetype');
  font-weight: bold;
  font-style: normal;
}

@media all and (max-width: 1480px) {
  html {
    font-size: 0.06756756756756757vw;
  }
}

@media all and (max-width: 1200px) {
  html {
    font-size: 0.09775171065493645vw;
  }

  article {
    width: 90%;
  }
}

@media all and (max-width: 1023px) {
  html {
    font-size: 0.09775171065493645vw;
  }
}

@media all and (max-width: 860px) {
  html {
    font-size: 0.13020833333333335vw;
  }

}

@media all and (max-width: 540px) {
  html {
    font-size: 0.26666666666666665vw;
  }
}

html,
body {
  overflow-x: hidden;
  /* 가로 스크롤 방지 */
  max-width: 100%;
  /* 가로 크기 제한 */
  font-size: 6.25%
}

body {
  font-family: 'MyCustomFont', sans-serif;
  overflow: hidden;
  background-color: #1E86F9;
  font-weight: 400;
}

img {
  display: block;
  width: 100%;
  object-fit: cover;
  object-position: center;
}

li,
ul {
  list-style: none;
  display: block;
}

a {
  text-decoration: none;
}

button {
  display: block;
  background-color: #fff;
  border: none;
  cursor: pointer;
}

section {
  width: 100%;
  margin: 0 auto;
}

article {
  width: 1200px;
  margin: 0 auto;
  padding: 120px 0;
}

h1 {
  font-size: 50px;
  font-family: 'Ria_B';
  text-align: center;
  margin-bottom: 40px;
}

h1 span {
  font-size: 50px;
  font-family: 'Ria_R';
  text-align: center;
}

h5 {
  color: #fff;
  font-size: 40px;
  font-family: 'Ria_R';
}


h4 {
  font-size: 18px;
  color: #fff;
}

.mo {
  display: none;
}

.pc {
  display: block;
}

/* 탑버튼 */
.btn_gotop {
  display: none;
  position: fixed;
  bottom: 50px;
  right: 50px;
  z-index: 999;
  outline: none;
  color: #333;
  cursor: pointer;
  text-align: center;
}

.btn_gotop .glyphicon {
  display: block;
  width: 50px;
  height: 50px;
  border-radius: 70px;
  padding: 12px;
  background-color: rgba(0, 0, 0, 0.25);
}

.btn_gotop p {
  margin-top: 4px;
  font-size: 14px;
}

.btn_gotop .glyphicon:hover {
  background-color: rgba(0, 0, 0, 0.5);
}

/* ============== main ============== */
.main {
  background: url(./img/new_img/re_01_bg.svg) center/cover no-repeat;
}

.main article {

  display: flex;
  align-items: flex-start;
}

.main article .container {
  margin-top: calc(25 / 1080 * 100vh);
  margin-bottom: calc(257 / 1080 * 100vh);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 50%;
}

.main article .container div {
  width: 170px;
  margin-bottom: 50px;
}

.main article .container h1 {
  font-size: clamp(40px, 9vw, 93px);
  font-family: 'aggro_B';
  line-height: 130%;
  margin: 5px 0 12px;
}

.main article .container h4:first-child {
  font-size: clamp(28px, 9vw, 46px);
  font-family: 'aggro_L';
  line-height: 130%;
}

.main article .container h4 {
  font-size: clamp(30px, 9vw, 56px);
  font-family: 'aggro_L';
  line-height: 130%;
}


/* ============== trophy ============== */
.trophy {
  position: relative;
  z-index: 0;
  background-color: #0050A9;
}

.trophy::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    url(./img/new_img/re_02.png) bottom right/26% auto no-repeat,
    #0050A9;
  background-blend-mode: overlay;
  z-index: -1;
}

.trophy h2 {
  font-size: 20px;
  margin-bottom: 4px;
  text-align: center;
  font-weight: 400;
}

.trophy h2 span {
  font-size: 20px;
  text-align: center;
  font-weight: 400;
  background-color: #C5F114;
  color: #111;
  padding: 0 4px;
}

.trophy div {
  width: 50%;
  margin: 35px auto;
}

.trophy h4 {
  font-size: 26px;
  text-align: center;
}

.trophy h4 span {
  font-size: 26px;
  text-align: center;
  background-color: #C5F114;
  padding: 0 4px;
  color: #111;
}

.trophy p {
  font-size: 20px;
  text-align: center;
  margin-top: 30px;
}

/* ============== video ============== */
.video {
  background-color: #0050A9;
  background-image: url(/img/new_img/re_03_bg.svg);
  background-position: right bottom;
  background-repeat: no-repeat;
  background-size: auto 100%;
}

.video article {
  padding: clamp(20px, 5vh, 55px) 0;
}

.video article h2 {
  font-size: 26px;
  font-family: 'Ria_R';
  margin-bottom: 40px;
}

.video article ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.video article ul li {
  position: relative;
  cursor: pointer;
}

.video article ul .play_ico {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 15%;
}

.instagram-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  display: none;
  /* active 시 flex */
  align-items: center;
  justify-content: center;
  z-index: 999;
}

.instagram-overlay.active {
  display: flex;
}

/* -- 여기서 크기를 조절 -- */
.popup-inner {
  width: 30vw;
  /* 최대 너비 */
  max-width: auto;
  max-height: 92vh;
  /* 높이 제한 */
  overflow: hidden;
  /* 넘치는 부분 숨기기 */
  background: #fff;
  /* 테두리나 배경을 주고 싶다면 */
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
}

/* 인스타 스크립트가 넣는 blockquote/iframe 은 내부에서 100% 채우도록 */
.popup-inner blockquote.instagram-media,
.popup-inner iframe {
  width: 100% !important;
  height: 100% !important;
}

/* ============== balloon ============== */
.balloon {
  position: relative;
}

.balloon h5 {
  text-align: center;
  font-family: 'Ria_R';
}

.balloon .fail {
  width: 200px;
  position: absolute;
  top: 0;
  right: 20%;
}

.balloon .balloon_img {
  width: 60%;
  margin: 0 auto;
}

.balloon .downtext span {
  font-size: 40px;
  font-family: 'Ria_B';
  color: #9CE840;
}

.balloon .downtext h5 {
  font-size: 30px;
  font-family: 'Ria_R';
}

.balloon .down {
  width: 78px;
  animation: circlemove 01.5s infinite linear;
  margin: 0 auto;
}

@keyframes circlemove {

  /* 0%{transform:translate(0,0);}
   100%{transform:translate(0,20px);} */
  0%,
  100% {
    transform: translate(0%, 0%);
  }

  50% {
    transform: translate(0%, 40%);
  }
}

/* ============== map ============== */
.map article>div {
  width: 40px;
  margin: 0 auto;
}

.map h5 {
  font-family: 'Ria_R';
  text-align: center;
  margin-bottom: 50px;
}

.map h5 br {
  display: none;
}

.map h5 span {
  font-size: 40px;
  font-family: 'Ria_B';
  color: #9CE840;
}

.map ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.map ul .map-area ul {
  display: flex;
  align-items: flex-start;
}

.map ul .map-area div {
  cursor: pointer;
}

.map ul .map-area ul li {
  width: 50%;
  cursor: pointer;
}

.map ul .infor {
  width: 46%;
  padding: 30px;
  border-radius: 15px;
  background-color: #fff;
}

.map ul .infor h4 {
  font-size: 26px;
  font-family: 'Ria_R';
  margin-bottom: 27px;
  color: #111;
}

.map ul .infor p {
  font-size: 18px;
  color: #111;
}

.map ul .infor p:first-child {
  font-weight: 600;
}

.map ul .infor p span {
  font-size: 18px;
  font-weight: 600;
  color: #FF496B;
}

.map ul .infor p b {
  font-size: 18px;
  color: #111;
}

.map ul .infor .imgWrap {
  height: 300px;
  overflow-y: scroll;
  display: flex;
  flex-direction: column;
  margin-top: 30px;
}

.map ul .infor .imgWrap::-webkit-scrollbar {
  /* 스크롤바의 너비 */
  width: 6px;
}

.map ul .infor .imgWrap::-webkit-scrollbar-thumb {
  /* 스크롤바의 길이 */
  height: 30%;
  /* 스크롤바의 색상 */
  background: rgb(130, 130, 130);
  border-radius: 10px;
}

.map ul .infor .imgWrap::-webkit-scrollbar-track {
  /*스크롤바 뒷 배경 색상*/
  background-color: none;
}

.map ul .infor .imgWrap li {
  width: 100%;
  margin-bottom: 24px;
}

.map ul .infor {
  display: none;
  /* 기본 숨김 */
}

/* 클릭된 리전의 설명만 보이도록 */
.map ul .infor.active {
  display: block;
}

/* ============== quality ============== */
.quality article .title {
  width: 50%;
  margin: 0 auto;
  margin-bottom: 80px;
}

.quality article ul li {
  margin-bottom: 80px;
}

.quality article .txt {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 30px;
}

.quality article .txt p {
  font-family: 'Ria_R';
  font-size: 30px;
}

.quality article .txt a {
  display: block;
  font-size: 18px;
  text-decoration: underline;
}

.quality article .txt {
  display: flex;
  gap: 8px;
  margin-bottom: 30px;
}

/* ============== convenience ============== */
.convenience article div {
  width: 40px;
  margin: 0 auto 80px;
}

.convenience .features {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}

.convenience .feature img {
  width: 100%;
  display: block;
  aspect-ratio: 1 / 1;
  transition: filter 0.3s, opacity 0.3s;
}

.convenience .feature.active img {
  filter: none;
  opacity: 1;
}

.convenience .text {
  background-color: #1C81F1;
  grid-column: 3 / 7;
  grid-row: 3;
  display: flex;
  align-items: center;
  justify-content: center;
}

.convenience .text h5 {
  font-family: 'Ria_R';
  text-align: center;

}

.convenience .text h5 span {
  font-family: 'Ria_B';
  font-size: 40px;
}

/* ============== detail ============== */
.detail article div {
  width: 40px;
  margin: 0 auto;
}

.detail article h5 {
  text-align: center;
}

.detail article h5 span {
  font-size: 40px;
  font-family: 'Ria_B';
}

.detail .conWrap {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  margin-bottom: 100px;
}

.detail .conWrap:last-child {
  margin-bottom: 120px;
}

.detail .conWrap .con1 {
  display: flex;
  /* 내부에 있는 img를 flex 컨테이너로 */

}

/* 이미지가 .con1 높이에 딱 맞도록 */
.detail .conWrap .con1 img {
  /* display: block; */
  height: 100%;
  /* 부모 높이(.con1) 만큼 */
  width: auto;
  object-fit: cover;
  /* 비율 유지 */
}

.detail .conWrap .con2 {
  width: 70%;
  padding: 50px;
  background-color: #fff;
}

.detail .conWrap .con2 h1 {
  color: #111;
}

.container {
  width: 100%;
  justify-content: center;
}

ul.tabs {
  margin: 0px;
  padding: 0px;
  list-style: none;
  display: flex;
}

ul.tabs li {
  background: none;
  box-sizing: border-box;
  flex: 1;
  color: #111;
  font-size: 20px;
  font-weight: 600;
  display: inline-block;
  padding: 10px 15px;
  cursor: pointer;
  text-align: center;
}

ul.tabs li.current {
  background: #fff;
  color: #111;
  border-bottom: 2px solid #1E86F9;
}

.tab-content {
  display: none;
  background: #fff;
}

.tab-content .tabWrap {
  display: flex;
  padding: 30px;
  justify-content: center;
  align-items: flex-start;
}

.tab-content.current {
  display: inherit;
}

.tab-content .tabWrap div:first-child {
  width: 40%;
}

.tab-content .tabWrap div:last-child {
  padding: 30px;
}

.tab-content .tabWrap div:last-child p {
  font-size: 26px;
  color: #111;
}

.tab-content .tabWrap div:last-child p.close {
  font-size: 26px;
  color: #FD756D;
}

.tab-content .tabWrap div:last-child p b {
  font-size: 26px;
  color: #111;
}

.detail .con3 {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
}

.detail .con3 ul {
  width: 50%;
}

.detail .con3 ul li {
  margin-bottom: 20px;
  display: flex;
}

.detail .con3 ul li span {
  width: 30px;
  margin-right: 12px;
}

.detail .con3 ul li p {
  font-size: 20px;
  color: #111;
}

.detail .con3 ul li p span {
  font-size: 20px;
  color: #FF0000;
}

.detail .con3 div {
  width: 50%;
}

/* ============== explore ============== */
.explore {
  background-color: #1374DF;
}

.explore article {
  padding: 50px 0;
}

.explore article>ul {
  display: flex;
  align-items: center;
  justify-content: center;
}

.explore article>ul>li {
  width: 45%;
}

.explore article>ul>li h1 {
  text-align: left;
}

.explore article>ul>li h4 {
  font-family: 'Ria_B';
  font-size: 26px;
  margin: 26px 0;
}

.explore article>ul>li p {
  font-family: 'Ria_R';
  font-size: 18px;
}

.explore article>ul>li ul {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 22px;
}


/* ================== 후기 캐러셀 ==================*/
.slide {
  padding: 120px 0;
}

.post-slider h1 {
  width: fit-content;
  margin: 0 auto;
  margin-bottom: 80px;
}

.post-wrapper {
  overflow: hidden;
  position: relative;
}

.post {
  width: 355px !important;
  margin: 0 10px;
  box-sizing: border-box;
  /* 테스트용 테두리 */
}

/* Slick 트랙을 flex 컨테이너로 */
.post-wrapper.autoplay .slick-track {
  display: flex !important;
  align-items: center;
  /* 세로 중앙 정렬 */
}

/* 개별 슬라이드도 flex로 */
.post-wrapper.autoplay .slick-slide {
  display: flex !important;
  justify-content: center;
  /* 가로 중앙 정렬(필요 시) */
  align-items: center;
  /* 세로 중앙 정렬 */
}

/* 이미지도 블록 레벨로 */
.post-wrapper.autoplay .slick-slide img {
  display: block;
  max-width: 100%;
  height: auto;
}

.autoplay .duonw {
  margin: 40px 0 20px;
}


/* ================== reserve ==================*/
.reserve .h1 {
  margin-bottom: 80px;
}

:root {
  --bg: #2f86ff;
  /* 파란 배경 */
  --line: rgba(255, 255, 255, .85);
  --dot: #d6dfeb;
  /* 기본 점 색 */
  --dot-active: #b8ff3a;
  /* 활성 점 색 */
  --dot-size: 50px;
  --line-thickness: 3px;
  --pad-y: 12px;
  --pad-x: 16px;
  --radius: 9999px;
  --font: 'MyCustomFont';
}

.stepper {
  display: grid;
  grid-template-columns: var(--dot-size) 1fr var(--dot-size) 1fr var(--dot-size);
  /* 점-라인-점-라인-점 */
  align-items: center;
  gap: 0;
  background: var(--bg);
  padding: var(--pad-y) var(--pad-x);
  border-radius: var(--radius);
  width: min(720px, 100%);
  /* 필요 시 줄 길이 조절 */
  margin: 16px auto;
  box-sizing: border-box;
  font-family: var(--font);
}

/* 점(단계) */
.stepper .dot {
  width: var(--dot-size);
  height: var(--dot-size);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-weight: 700;
  font-size: 20px;
  line-height: 1;
  user-select: none;
  color: #fff;
  /* 기본은 흰 글자 */
  background: var(--dot);
  cursor: pointer;
}

/* 활성 단계 */
.stepper .dot.active {
  background: var(--dot-active);
  color: #111;
  /* 이미지처럼 진한 글자 */
}

/* 대시 라인 */
.stepper .line {
  height: 0;
  border-top: var(--line-thickness) dashed var(--line);
}

/* (선택) 아주 작은 화면에선 살짝 키우기 */
@media (max-width: 420px) {
  :root {
    --dot-size: 32px;
  }
}

.swiper.reserve-slide {
  width: 100%;
  height: fit-content;
}

.reserve-slide .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 50px;
}

:root {
  --swiper-theme-color: #9CE840 !important;
}

.swiper.reserve-slide .swiper-slide .pc {
  display: block;
}

.swiper.reserve-slide .swiper-slide .mo {
  display: none;
}

.reserve h4 {
  font-family: 'Ria_B';
  font-size: 30px;
  margin: 120px auto 50px;
  text-align: center;
}

.reserve .button-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.reserve .button-wrap button {
  padding: 16px 45;
  border-radius: 90rem;
  background-color: #9CE840;
  margin-bottom: 120px;
}

.reserve .button-wrap button a b {
  font-family: 'Ria_B';
  font-size: 26px;
  color: #111;
}

.reserve .button-wrap button a p {
  font-family: 'Ria_R';
  font-size: 20px;
  color: #111;
}

.reserve .week {
  display: flex;
  gap: 12px;
  margin: 0 auto;
  align-items: center;
  justify-content: center;
  margin-bottom: 50px;
}

.reserve .week h4 span {
  display: block;
  width: 32px;
  height: 32px
}

.reserve .week h4 {
  font-family: 'Ria_B';
  font-size: 30px;
  margin: 0px;
}

.reserve ul li {
  width: 100%;
  background-color: #1074E2;
  padding: 24px 30px;
  border-radius: 15px;
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 12px;
}

.reserve ul li span {
  width: 30px;
  display: block;
}

.reserve ul li p {
  font-size: 24px;
  font-weight: 500;
}

/* ================== poto ==================*/
.poto h1 {
  margin-bottom: 12px;
}

.poto p {
  font-size: 22px;
  margin-bottom: 80px;
  text-align: center;
}

.poto p span {
  font-size: 22px;
  color: #9CE840;
}

/* ================== event ==================*/
.event {
  background-color: #000;
}

.event .title {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  justify-content: center;
}

.event .title span {
  font-size: 40px;
}

.event .title h1 span {
  font-size: 50px;
}

.gradient-text {
  /* 1) 그라데이션 배경 지정 */
  background: linear-gradient(90deg, #13C0FF 0%, var(--Color-9, #9CE840) 67.79%);
  /* 2) 배경을 텍스트에만 보이게 자르기 */
  -webkit-background-clip: text;
  background-clip: text;
  /* 3) 원래 텍스트 컬러는 지우기 */
  -webkit-text-fill-color: transparent;
  font-family: 'Ria_B';
}

.event h2 {
  font-size: 20px;
  font-family: 'Ria_R';
  margin-bottom: 80px;
  text-align: center;
}

.event h2 .br2 {
  display: none;
}

.event h2 b {
  font-size: 20px;
  font-family: 'Ria_B';
}

.event .con h5 {
  ackground: linear-gradient(90deg, #13C0FF 0%, var(--Color-9, #9CE840) 67.79%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: 'Ria_B';
  margin-bottom: 50px;
  text-align: center;
}

.event .con {
  border: 2px solid;
  /* 실제 컬러는 없어도 무방 */
  border-image-source: linear-gradient(90deg, #13C0FF 0%, var(--Color-9, #9CE840) 67.79%);
  border-image-slice: 1;
  padding: 50px 30px;
  border-radius: 15px;
  margin-bottom: 80px;
}

.event .con ul {
  display: flex;
  align-items: center;
  gap: 20px;
}

.event .con>ul>li {
  width: 49%;
  gap: 20px;
  padding: 30px;
  border-radius: 15px;
}

.event .con1 ul li {
  background-color: #1C1A22;

}

.event .con1 li {
  height: 308px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.event .con1 .imgWrap1 {
  width: 134px;
}

.event .con1 div:last-child p {
  font-size: 24px;
  font-weight: 600;
}

.event .con1 div:last-child h4 {
  font-size: 26px;
  font-family: 'Ria_B';
}

.event .con1 div:last-child p:last-child {
  font-size: 20px;
  font-weight: 400;
}

.event .con1 .imgWrap div {
  width: 100px;
  margin-bottom: 12px;
}

.event .con2 h5 {
  margin-bottom: 12px;
}

.event .con2>p {
  font-size: 18px;
  text-align: center;
  margin-bottom: 50px;
}

.event .con2 .con1-1 {
  width: 49%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 0;
}

.event .con2 .con1-1 div {
  width: 100%;
  background-color: #1C1A22;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: calc(100% / 3);
  cursor: pointer;
  border-radius: 15px;
  padding: 0 30px;
}

.event .con2 .con1-1 div ul {
  display: flex;
  align-items: center;
  gap: 12px;
}

.event .con2 .con1-2 {
  height: 308px;
}

.event .con2 .con1-1 div ul li:first-child {
  width: 60px;
}

.event .con2 .con1-1 div ul li:last-child {
  font-size: 24px;
}

.event .con2 .con1-1 .imgWrap1 span {
  display: block;
  width: 30px;
  height: 30px;
  background-image: url(./img/new_img/re_015_ico1.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.event .con2 .con1-2 {
  padding: 24px 30px;
  background-color: #1C1A22;
  display: none;
  overflow-y: scroll;
}

.event .con2 .con1-2::-webkit-scrollbar {
  width: 6px;
}

.event .con2 .con1-2::-webkit-scrollbar-thumb {
  height: 5%;
  border-radius: 10px;
  background: #696378;
}

.event .con2 .con1-2 h4 {
  font-size: 26px;
  font-weight: 600;
  margin-bottom: 20px;
}

.event .con2 .con1-2 b {
  font-size: 24px;
  font-weight: 600;
}

.event .con2 .con1-2 b:last-child {
  margin-top: 20px;
}

.event .con2 .con1-2 p {
  font-size: 18px;
  font-weight: 400;
}

.event .con2 .imgWrap1.current span {
  background-image: url(./img/new_img/re_015_ico1h.svg);
}

.event .con2 .con1-2.current {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

.event .con2 .con1-2,
.event .con2 .con1-1 {
  height: 308px;
}

.event .con3 ul {
  width: 100%;
  display: flex;
  flex-direction: column;
}

.event .con3 h5 {
  margin-bottom: 80px;
}

.event .con3 ul li {
  width: 100%;
  background-color: #1C1A22;
  padding: 24px 30px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.event .con3 ul li:last-child {
  align-items: flex-start;
}

.event .con3 ul li p {
  font-size: 24px;
  font-weight: 600;
}

.event .con3 ul li h6 {
  font-size: 24px;
  font-weight: 400;
}


/* ============== add06 ============== */
.add06 {
  background-color: #fff;
}

.add06 h1 {
  margin-bottom: 80px;
  color: #111;
}

.add06 article .curriculum-wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.add06 article .curriculum-wrap .curriculum {
  width: 49%;
}

/* 질문 */
.que {
  position: relative;
  padding: 24px 16px;
  cursor: pointer;
  font-size: 18px;
  border-top: 1px solid #111;
  display: flex;
  align-items: flex-start;
}

.curriculum {
  border-bottom: 1px solid #111;
}

.que span {
  color: #111;
  font-size: 20px;
  font-weight: 400;
  display: block;
}

.que span:nth-child(2) {
  width: 93%;
}

.que .Q {
  color: #111;
  margin-right: 5px;
}


/* 답변 */
.anw {
  display: none;
  overflow: hidden;
  font-size: 18px;
  line-height: 160%;
  letter-spacing: -0.05625rem;
  padding: 27px 16px;
}

.anw a {
  font-size: 18px;
  color: blue;
  border-bottom: 1px solid #111;
  overflow-wrap: anywhere;
}

.arrow-wrap {
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translate(0, -50%);
  width: 22px;
}

/* 답변( .anw )를 숨기고, max-height 트랜지션 걸기 */
.add06 .anw {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.3s ease;
}

/* 열렸을 때 on 클래스가 붙은 .que 바로 다음 .anw */
.add06 .que.on+.anw {
  /* 콘텐츠 높이만큼 충분히 확장 */
  max-height: 1000px;
  /* or 원하는 충분히 큰 값 */
}

.anw span {
  color: #111;
  font-size: 18px;
  word-break: keep-all;
}

/* on */
.anw {
  display: none;
  overflow: hidden;
}

.que.on+.anw {
  display: block;
}

.que .arrow-top {
  display: none;
}

.que.on .arrow-top {
  display: block;
}

.que.on .arrow-bottom {
  display: none;
}

.que.on {
  border-bottom: 1px solid #111;
}

.que.on>span {
  font-weight: bold;
}

/* ============== add06 ============== */
.upright .title {
  display: flex;
  justify-content: center;
}

.upright .title span {
  width: 60px;
}

.upright .title h4 {
  font-size: 35px;
  font-family: 'Ria_R';
  text-align: center;
  margin-bottom: 0;
}

.upright h4 {
  font-size: 35px;
  font-family: 'Ria_B';
  margin-bottom: 80px;
  text-align: center;
}

.upright .button-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.upright .button-wrap button {
  width: 30%;
  padding: 16px 45px;
  border-radius: 90rem;
  background-color: #9CE840;
  margin-bottom: 120px;
}

.upright .button-wrap button a b {
  font-family: 'Ria_R';
  font-size: 20px;
  color: #111;
}

.upright .button-wrap button a h4 {
  font-family: 'Ria_B';
  font-size: 26px;
  color: #111;
  margin-bottom: 0;
}

.upright .button-wrap button a p {
  font-family: 'Ria_R';
  font-size: 20px;
  color: #111;
}

.upright .Blogo {
  width: 300px;
  margin: 0 auto;
}

footer {
  background-color: #fff;
}

footer section {
  padding: 15px 0;
}

footer section.top1 {
  border-top: 1px solid #DFDFDF;
  border-bottom: 1px solid #DFDFDF;
}

footer article {
  padding: 0;
}

footer .top1 article {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

footer .top1 article .logowrap {
  display: flex;
  align-items: center;
}

footer .top1 article .logowrap .logo {
  width: 116px;
  height: auto;
  margin: 0px 34px 0px 0px;
}

footer .top1 article .logotext {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

footer .top1 .pc {
  display: block;
  display: flex;
  justify-content: space-between;
}

footer .top1 .mo {
  display: none;
}

footer .top1 article .logotext p {
  font-size: 16px;
  color: #111;
  font-weight: 500;
}

footer .top1 article .logotext span {
  font-size: 12px;
  margin: 0 20px;
  color: #111;
  font-weight: 500;
}

footer .top1 article .sns {
  display: flex;
  align-items: center;
}

footer .top1 article .sns span {
  width: 22px;
  height: 22px;
  margin: 0px 22px 0px 0px;
  cursor: pointer;
}

footer .top1 article .sns .youtube {
  background-image: url(./img/new_img/youtube.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

footer .top1 article .sns .youtube:hover {
  background-image: url(./img/new_img/youtube_h.png);
}

footer .top1 article .sns .face-book {
  background-image: url(./img/new_img/face-book.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

footer .top1 article .sns .face-book:hover {
  background-image: url(./img/new_img/face-book_h.png);
}

footer .top1 article .sns .insta {
  background-image: url(./img/new_img/insta.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

footer .top1 article .sns .insta:hover {
  background-image: url(./img/new_img/insta_h.png);
}

footer .top1 article .sns .blog {
  background-image: url(./img/new_img/blog.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

footer .top1 article .sns .blog:hover {
  background-image: url(./img/new_img/blog_h.png);
}



@media all and (max-width: 1200px) {
  article {
    width: 90%;
  }
}

@media all and (max-width: 860px) {
  article {
    padding: 90px 0;
  }

  h1 {
    font-size: 35px;
    font-family: 'Ria_B';
    text-align: center;

  }

  h1 span {
    font-size: 35px;
    font-family: 'Ria_R';
    text-align: center;
  }

  h5 {
    color: #fff;
    font-size: 28px;
  }

  h4 {
    color: #fff;
    font-size: 18px;
  }

  .main {
    background: url(./img/new_img/re_01_bgmo.svg) center / cover no-repeat;
    height: 100vh;

  }

  .main article .container {
    width: 100%;
  }

  .main article .container div {
    margin-bottom: 30px;
  }

  .video {
    background-image: none;
    background-color: #00448F;
  }

  .video article ul {
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(3, 1fr);

  }

  .popup-inner {
    width: 70%;
  }

  .trophy div {
    width: 100%;
  }

  .balloon .balloon_img.pc {
    display: none;
  }

  .balloon .balloon_img.mo {
    display: block;
  }

  .balloon .balloon_img {
    width: 100%;
  }

  .trophy::before {
    background: url(./img/new_img/re_02.png) bottom right / 40% auto no-repeat, #0050A9;
  }

  .balloon .downtext {
    margin-top: 40px;
  }

  .balloon .downtext span {
    font-size: 30px;
  }

  .balloon .fail {
    width: 100px;
  }

  .map h5 span {
    font-size: 28px;
  }

  .map h5 br {
    display: block;
  }

  .map .map-wrapper {
    flex-direction: column;
  }

  .map ul .map-area {
    width: 100%;
  }

  .map ul .infor {
    width: 100%;
    margin-top: 40px;
  }

  .quality .pc {
    display: none;
  }

  .quality .mo {
    display: block;
  }

  .quality article {
    padding-bottom: 0;
  }

  .quality article .title {
    width: 100%;
    margin-bottom: 40px;
  }

  .convenience .features {
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(4, 1fr);
    gap: 0;
  }

  .convenience .text {
    /* 1) 한 줄에 4칸이니, 1 / -1 로 전부 차지 */
    grid-column: -3 / -1;
    /* 2) 또는 2칸만 차지하려면 원하는 시작·끝 라인 지정 */
    /* grid-column: 2 / 4; */
    grid-row: 4;
    /* 필요하면 변경 가능 */
  }

  .convenience .feature img {
    width: 100%;
    /* 부모 그리드 칸 전체 너비 차지 */
    height: auto;
    /* 폭에 맞춰 종횡비 유지 */
    object-fit: contain;
    /* 여백 없이 꽉 채우되 비율 유지 */
  }

  .convenience .text h5 span {
    font-size: 28px;
  }

  .detail article {
    padding-bottom: 0;
  }

  .detail article h5 {
    margin-bottom: 40px;
  }

  .detail article h5 span {
    font-size: 28px;
  }

  .detail .conWrap {
    flex-direction: column;
  }

  .detail .conWrap .con1 .pc {
    display: none;
  }

  .detail .conWrap .con1 .mo {
    display: block;
  }

  .detail .conWrap .con2 {
    width: 100%;
    padding: 50px 20px;
  }

  .tab-content .tabWrap {
    flex-direction: column;
    align-items: center;
  }

  .detail .conWrap .con1 {
    width: 100%;
  }

  .detail .conWrap .con1 img {
    height: auto;
    width: 100%;
  }

  .detail .con3 {
    flex-direction: column;
  }

  .tab-content .tabWrap div:first-child {
    width: 50%;
  }

  .detail .con3 ul,
  .detail .con3 div {
    width: 100%;
  }

  .explore article>ul {
    flex-direction: column;
  }

  .explore article>ul>li {
    width: 100%;
  }

  .reserve h4 {
    margin: 90px auto 40px;
  }

  .swiper.reserve-slide .swiper-slide .pc {
    display: none;
  }

  .swiper.reserve-slide .swiper-slide .mo {
    display: block;
  }

  .reserve-slide .swiper-slide {
    margin-bottom: 30px;
  }

  .reserve .button-wrap {
    flex-direction: column;
    margin-bottom: 90px;
  }

  .reserve .button-wrap button {
    width: 100%;
    margin-bottom: 24px;
  }

  .reserve ul li {
    align-items: flex-start;
  }

  .poto p {
    text-align: center;
    margin-bottom: 40px;
  }

  .poto article {
    padding-top: 0;
  }

  .event .title h1 span {
    font-size: 35px;
  }

  .reserve ul li p {
    width: 90%;
    font-size: 18px;
  }

  .event h2 .br2 {
    display: block;
  }

  .event .con ul {
    flex-direction: column;
  }

  .event .con1 ul li {
    width: 100%;
    padding: 24px;
  }

  .event .con2 .con1-1 {
    width: 100%;
    height: auto;
    flex-direction: row;
    justify-content: space-between;
  }

  .event .con2 .con1-1 div {
    height: auto;
    flex-direction: column;
    padding: 30px 0;
  }

  .event .con2 .con1-1 div ul {
    flex-direction: row;
  }

  .event .con2 .con1-1 .imgWrap1 span {
    display: none;
  }

  .event .con2 .con1-1 div ul li:last-child {
    display: none;
  }

  .event .con2 .con1-2 {
    width: 100%;
  }

  .event .con3 h5,
  .event .con h5 {
    margin-bottom: 40px;
  }

  .add06 article .curriculum-wrap {
    flex-direction: column;
  }

  .add06 article .curriculum-wrap .curriculum {
    width: 100%;
  }

  .add06 article .curriculum-wrap .curriculum:first-child {
    border-bottom: none;
  }

  .add06 h1 {
    margin-bottom: 40px;
  }

  .upright h4 {
    margin-bottom: 40px;
  }

  .upright .button-wrap {
    flex-direction: column;
    gap: 24px;
    margin-bottom: 90px;
  }

  .upright .button-wrap button {
    width: 90%;
    padding: 16px 24px;
    margin-bottom: 0;
  }

  footer .top1 .pc {
    display: none;
  }

  footer .top1 .mo {
    display: block;
  }

  footer .top1 .mo .logowrap {
    display: flex;
    justify-content: space-between;
  }

  footer .top1 .mo .logowrap .logo {
    width: 100px;
  }

  footer .top1 .mo .logotext p {
    font-size: 12px;
  }

  footer .top1 .mo .logotext {
    margin-top: 12px;
  }

  footer .top1 article .logotext span {
    font-size: 10px;
    margin: 0 10px;
    font-weight: 400;
  }

  .btn_gotop {
    right: 20px;
  }

  .slide {
    padding: 90px 0;
  }

  .post-slider h1 {
    margin-bottom: 20px;
  }
}

@media all and (max-width: 540px) {
  .trophy::before {
    background: url(./img/new_img/re_02.png) bottom right / 64% auto no-repeat, #0050A9;
  }

  ul.tabs {
    overflow-x: scroll;
  }

  ul.tabs {
    -ms-overflow-style: none;
    /* IE and Edge */
    scrollbar-width: none;
    /* Firefox */
  }

  ul.tabs::-webkit-scrollbar {
    display: none;
    /* Chrome, Safari and Opera */
  }

  .tab-content .tabWrap div:first-child {
    width: 100%;
  }

  .detail .con3 ul li p {
    width: 90%;
  }

  .convenience .features {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(7, 1fr);

  }

  .convenience .text {
    grid-row: 1;
  }

  .convenience article div {
    margin: 0 auto 40px;
  }

  .quality article ul li {
    margin-bottom: 40px;
  }

  .main {
    height: 70vh;
  }

  .popup-inner {
    width: 90%;
  }

  .event .con1 .imgWrap1,
  .event .con1 .imgWrap div {
    width: 27%;
  }

  .event .con1 li {
    flex-direction: column;
  }

  .event .con1 .imgWrap {
    display: flex;
    gap: 12px;
    justify-content: center;
  }

  .event .con1 li {
    height: fit-content;
  }

  .event .con1 div:last-child p {
    margin: 0 auto;
    text-align: center;
  }

  .event .con1 div:last-child h4 {
    margin: 0 auto;
    text-align: center;
  }

  .event .con1 div:last-child p:last-child {
    margin: 0 auto;
    text-align: center;
  }

  .event .con2 .con1-1 div {
    padding: 16px 0;
  }

  .event .con2>p {
    font-size: 17px;
    margin-bottom: 40px;
  }

  .event .con2 .con1-2 h4 {
    font-size: 22px;
    margin-bottom: 16px;
  }

  .event .con2 .con1-2 b {
    font-size: 20px
  }

  .event .con2 .con1-2 p {
    font-size: 16px;
    margin-bottom: 12px;
  }

  .event .con2 .con1-2 {
    padding: 24px 20;
  }

  .event .con2 .con1-2.current {
    gap: 8px;
  }

  .event .con3 ul li p,
  .event .con3 ul li h6 {
    font-size: 18px;
  }

  .event .con:last-child {
    margin-bottom: 0;
  }

  .event .con3 ul li {
    padding: 20px;
  }

  .event .con3 ul li p,
  .event .con3 ul li h6 {
    font-size: 16px;
  }

  .event .con2 h5 {
    margin-bottom: 16px;
  }

  .event .con1 div:last-child p {
    font-size: 20px;
  }

  .event .con1 div:last-child h4 {
    font-size: 24px;
  }

  .event .con1 div:last-child p:last-child {
    font-size: 18px;
  }

  .reserve h4 {
    font-size: 24px;
  }

  .detail .con3 {
    margin-top: 0;
  }

  .convenience .text h5 span {
    font-size: 24px;
  }

  .convenience .text h5 {
    font-size: 24px;
  }

  .trophy h4 {
    font-size: 24px;
  }

  .trophy h4 span {
    font-size: 24px;
  }

  .trophy p br {
    display: none;
  }

  .video article h2 {
    font-size: 24px;
    margin: 0 auto 40px;
  }

  .map article>div {
    width: 30px;
    margin-bottom: 12px;
  }

  .map ul .infor h4 {
    font-size: 20px;
    margin-bottom: 16px;
  }

  .quality article .txt p {
    font-size: 24px;
  }

  .convenience article div {
    width: 30px;
    margin-bottom: 12px;
  }

  .detail article div {
    width: 30px;
    margin-bottom: 12px;
  }

  .tab-content .tabWrap div:last-child p b {
    font-size: 20px;
  }

  .tab-content .tabWrap div:last-child p,
  .tab-content .tabWrap div:last-child p.close {
    font-size: 20px;
  }

  .detail .con3 ul li p,
  .detail .con3 ul li p span {
    font-size: 18px;
  }

  .explore article>ul>li h4 {
    font-size: 24px;
  }

  .explore article>ul>li p {
    font-size: 17px;
  }

  .reserve .button-wrap button a b {
    font-size: 20px;
  }

  .reserve .button-wrap button a p {
    font-size: 18px;
  }

  .reserve h4 {
    margin-bottom: 40px;
  }

  .reserve .week {
    margin-bottom: 40px;
  }

  .reserve ul li {
    padding: 20px;
  }

  .reserve ul li span {
    width: 24px;
  }

  .reserve ul li p {
    font-size: 16px;
  }

  .poto p,
  .poto p span {
    font-size: 18px;
  }

  .event .title h1 {
    margin-bottom: 30px;
  }

  .event .title h1 {
    margin-bottom: 16px;
  }

  .event h2 {
    font-size: 18px;
  }

  .event h2 b {
    font-size: 18px;
  }

  .event h2 {
    margin-bottom: 40px;
  }

  .event .con {
    padding: 30px;
  }

  .event .con1 div:last-child p {
    font-size: 18px;
  }

  .event .con1 div:last-child h4 {
    font-size: 20px;
  }

  .upright .button-wrap button a b {
    font-size: 18px;
  }

  .upright .button-wrap button a h4 {
    font-size: 24px;
  }

  .upright .button-wrap button a p {
    font-size: 18px;
  }

  .upright .Blogo {
    width: 60%;
  }

  .upright .title h4 {
    font-size: 30px;
  }

  .upright h4 {
    font-size: 30px;
  }

}