@charset "UTF-8";
/* ^scss에서 수정해주세요!  Don't edit .css file, Only work on the scss*/
@font-face {
  font-family: "Pretendard";
  font-weight: 100;
  font-style: normal;
  src: url(../fonts/Pretendard-Thin.woff2) format("woff2"), url(../fonts/Pretendard-Thin.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 200;
  font-style: normal;
  src: url(../fonts/Pretendard-ExtraLight.woff2) format("woff2"), url(../fonts/Pretendard-ExtraLight.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 300;
  font-style: normal;
  src: url(../fonts/Pretendard-Light.woff2) format("woff2"), url(../fonts/Pretendard-Light.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 400;
  font-style: normal;
  src: url(../fonts/Pretendard-Regular.woff2) format("woff2"), url(../fonts/Pretendard-Regular.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 500;
  font-style: normal;
  src: url(../fonts/Pretendard-Medium.woff2) format("woff2"), url(../fonts/Pretendard-Medium.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 600;
  font-style: normal;
  src: url(../fonts/Pretendard-SemiBold.woff2) format("woff2"), url(../fonts/Pretendard-SemiBold.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 700;
  font-style: normal;
  src: url(../fonts/Pretendard-Bold.woff2) format("woff2"), url(../fonts/Pretendard-Bold.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 800;
  font-style: normal;
  src: url(../fonts/Pretendard-ExtraBold.woff2) format("woff2"), url(../fonts/Pretendard-ExtraBold.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Pretendard";
  font-weight: 900;
  font-style: normal;
  src: url(../fonts/Pretendard-Black.woff2) format("woff2"), url(../fonts/Pretendard-Black.woff) format("woff");
  font-display: swap;
}
@font-face {
  font-family: "KohiLearn";
  src: url(../fonts/KohiLearn.woff2) format("woff2"), url(../fonts/KohiLearn.woff) format("woff");
  font-weight: normal;
  font-display: swap;
}
html {
  /* Prevent font scaling in landscape */
  -webkit-text-size-adjust: none; /*Chrome, Safari, newer versions of Opera*/
  -moz-text-size-adjust: none; /*Firefox*/
  -ms-text-size-adjust: none; /*Ie*/
  -o-text-size-adjust: none; /*old versions of Opera*/
}

html,
a,
button,
input,
textarea {
  font-family: "Pretendard", sans-serif, "Malgun Gothic", "맑은 고딕", Roboto, Arial;
}

*,
*::before,
*::after {
  letter-spacing: -0.015em;
  line-height: 1.35;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  word-break: break-all;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html {
  height: 100vh;
  -webkit-text-size-adjust: none;
  /*Chrome, Safari, newer versions of Opera*/
  -moz-text-size-adjust: none;
  /*Firefox*/
  -ms-text-size-adjust: none;
  /*Ie*/
  -o-text-size-adjust: none;
  /*old versions of Opera*/
}

/*a,body,dd,div,dl,dt,h1,h2,h3,h4,h5,input,li,ol,p,html,ul,button,textarea*/
html,
textarea,
input {
  font-size: 14px;
  font-weight: normal;
  letter-spacing: -0.35px;
  line-height: 1.14;
  word-break: keep-all;
}

a,
body,
dd,
div,
dl,
dt,
h1,
h2,
h3,
h4,
h5,
html,
li,
ol,
p,
ul {
  padding: 0;
  margin: 0;
}

li,
ol,
ul {
  list-style: none;
}

a,
img {
  border: none;
}

img {
  max-width: 100%;
}

a + a,
img,
input + a,
input + button {
  vertical-align: middle;
}

a {
  text-decoration: none;
  display: inline-block;
  color: #313131;
  -webkit-text-fill-color: inherit;
}

button {
  color: #313131;
  -webkit-text-fill-color: inherit !important;
  appearance: none;
  -webkit-appearance: none;
}

a:hover {
  text-decoration: none;
}

button:link,
button:visited,
button:hover,
button:active,
a:link,
a:visited,
a:hover,
a:active {
  -webkit-text-fill-color: inherit;
  appearance: none;
  -webkit-appearance: none;
}

input[type=number],
input[type=password],
input[type=tel],
input[type=text],
input[type=date],
input[type=search],
select,
textarea {
  box-sizing: border-box;
  color: #313131;
  font-size: 14px;
  background: #fff;
  vertical-align: middle;
  height: 44px;
  padding-inline: 14px;
  border-radius: 5px;
  border: solid 1px #e7e8ef;
}
@media screen and (max-width: 1023.9px) {
  input[type=number],
  input[type=password],
  input[type=tel],
  input[type=text],
  input[type=date],
  input[type=search],
  select,
  textarea {
    height: 40px;
    padding-inline: 10px;
  }
}

input[type=date] {
  padding-right: 5px;
}

input {
  appearance: none;
  -webkit-appearance: none;
  -webkit-border-radius: 0;
}

textarea {
  line-height: 1.5;
  outline: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("../img/icon_arrow_down.png") no-repeat #fff;
  background-position: calc(100% - 10px) center;
  background-size: 10px auto;
  outline: none;
  padding-right: 20px;
}

/*select:disabled { background-image:url('../img/common/select_arrow_off.png'); background-color: #f8f8f8; } */
input[type=chekbox],
input[type=radio] {
  display: none;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=search] {
  padding-inline: 12px 10px;
  height: 40px;
  border: 1px solid #e7e7ea;
  -webkit-appearance: textfield;
}

input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

input::-webkit-search-decoration,
input::-webkit-search-cancel-button,
input::-webkit-search-results-button,
input::-webkit-search-results-decoration,
input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
  width: 16px;
  height: 16px;
  background: url(../img/icon_del.png) center center no-repeat;
  background-size: 10px auto;
  cursor: pointer;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

i {
  font-style: normal;
}

*,
::after,
::before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
}

table {
  border-collapse: collapse;
  width: 100%;
  border-spacing: 0;
}

th {
  text-align: center;
}

td {
  text-align: left;
}

table > caption {
  position: absolute;
  text-indent: -9999px;
}

button {
  border: 0;
  background-color: transparent;
  cursor: pointer;
}

button:disabled {
  cursor: not-allowed;
}

button,
input,
textarea {
  -webkit-appearance: none;
}

select,
textarea,
input[type=password],
input[type=number],
input[type=tel],
input[type=text] {
  width: 100%;
}

textarea {
  min-height: 150px;
  text-align: left;
  padding: 12px 15px;
}

input[type=tel] {
  min-width: 40px;
  margin-right: 4px;
}

input[type=number] {
  -moz-appearance: textfield;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #c3c0c3;
  opacity: 1;
  font-size: 14px;
}
@media screen and (max-width: 1023.9px) {
  input::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    font-size: 13px;
  }
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #c3c0c3;
  opacity: 1;
  font-size: 14px;
}
@media screen and (max-width: 1023.9px) {
  input:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    font-size: 13px;
  }
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #c3c0c3;
  opacity: 1;
  font-size: 14px;
}
@media screen and (max-width: 1023.9px) {
  input::-ms-input-placeholder,
  textarea::-ms-input-placeholder {
    font-size: 13px;
  }
}

input::placeholder,
textarea::placeholder {
  color: #c3c0c3;
  opacity: 1;
  font-size: 14px;
}
@media screen and (max-width: 1023.9px) {
  input::placeholder,
  textarea::placeholder {
    font-size: 13px;
  }
}

input:disabled {
  border: solid 1px #ececee;
  background-color: #ececee;
  cursor: not-allowed;
}

select:disabled,
input[readonly],
textarea[readonly] {
  border: solid 1px #ececee;
  background-color: #ececee;
  opacity: 1;
}

input[readonly]:focus,
textarea[readonly]:focus {
  outline: none;
}

input:focus {
  outline: none;
}

input:disabled::-webkit-input-placeholder,
input[readonly]::-webkit-input-placeholder,
textarea:disabled::-webkit-input-placeholder,
textarea[readonly]::-webkit-input-placeholder {
  color: #c3c0c3;
  opacity: 1;
}

input:disabled:-ms-input-placeholder,
input[readonly]:-ms-input-placeholder,
textarea:disabled:-ms-input-placeholder,
textarea[readonly]:-ms-input-placeholder {
  color: #c3c0c3;
  opacity: 1;
}

input:disabled::-ms-input-placeholder,
input[readonly]::-ms-input-placeholder,
textarea:disabled::-ms-input-placeholder,
textarea[readonly]::-ms-input-placeholder {
  color: #c3c0c3;
  opacity: 1;
}

input:disabled::placeholder,
input[readonly]::placeholder,
textarea:disabled::placeholder,
textarea[readonly]::placeholder {
  color: #c3c0c3;
  opacity: 1;
}

input::-ms-clear,
input::-ms-reveal,
textarea::-ms-clear,
textarea::-ms-reveal {
  display: none;
}

input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button,
textarea::-webkit-inner-spin-button,
textarea::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

textarea {
  resize: none;
}

img {
  border: 0;
  vertical-align: middle;
}

hr {
  display: block;
  width: 100%;
  height: 1px;
  border: none;
}

main,
section,
article {
  display: block;
}

fieldset,
form {
  border: none;
  outline: none;
}

address {
  font-style: normal;
}

.u-color-point {
  color: #00aeef !important;
}

.u-color-green {
  color: #3fba4d;
}

.u-color-yellow {
  color: #ffc20e;
}

@media screen and (max-width: 1023.9px) {
  .u-pc {
    display: none !important;
  }
}

@media screen and (max-width: 767.9px) {
  .u-pc-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 1023.9px) {
  .u-tablet {
    display: none !important;
  }
}
@media screen and (max-width: 767.9px) {
  .u-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 1023.9px) {
  .u-tablet-mobile {
    display: none !important;
  }
}

@media screen and (min-width: 767.9px) {
  .u-mobile {
    display: none !important;
  }
}

.u-text-center {
  text-align: center !important;
}

.u-text-right {
  text-align: right !important;
}

.u-text-left {
  text-align: left !important;
}

.u-nowrap {
  white-space: nowrap;
}

/*!스크롤*/
.scroll {
  overflow: auto;
}
.scroll::-webkit-scrollbar {
  width: 15px;
  height: 15px;
}
.scroll::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.2);
  border: 4px solid transparent;
  border-radius: 10px;
  background-clip: padding-box;
}
.scroll::-webkit-scrollbar-track {
  background-color: rgba(255, 255, 255, 0);
}
.scroll::-webkit-scrollbar-corner {
  background: rgba(0, 0, 0, 0.08);
}

.scroll-lock {
  touch-action: none;
  overflow-y: hidden !important;
}
.scroll-lock body {
  touch-action: none;
  overflow-y: hidden !important;
}

.has-link {
  cursor: pointer;
}

.loading-layer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  display: none;
  z-index: 9999;
  gap: 25px;
  color: #fff;
  font-size: 18px;
}
.loading-layer.active {
  display: flex;
}
.loading-layer .spinner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
}
.loading-layer .dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #fff;
  margin: 0 5px;
  animation: pulse 1s infinite ease-in-out;
}
.loading-layer .dot1 {
  animation-delay: 0s;
}
.loading-layer .dot2 {
  animation-delay: 0.33s;
}
.loading-layer .dot3 {
  animation-delay: 0.66s;
}
@keyframes pulse {
  0% {
    transform: scale(0.8);
    opacity: 0.5;
  }
  50% {
    transform: scale(1.2);
    opacity: 1;
  }
  100% {
    transform: scale(0.8);
    opacity: 0.5;
  }
}

.scroll--row {
  max-height: auto;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-face-color: transparent; /*스크롤*/
  scrollbar-highlight-color: #999; /*하이라이트*/
  scrollbar-3dlight-color: transparent; /*왼쪽외곽음영*/
  scrollbar-darkshadow-color: transparent; /*오른쪽외곽음영*/
  scrollbar-shadow-color: transparent; /*오른쪽 안쪽음영*/
  scrollbar-arrow-color: transparent; /*화살*/
  scrollbar-track-color: transparent; /*스크롤영역*/
  padding-bottom: 5px;
}
.scroll--row::-webkit-scrollbar {
  /*스크롤바*/
  width: 6px;
  height: 6px;
}
.scroll--row::-webkit-scrollbar-button {
  /*스크롤바 버튼(아래 위 화살표)*/
  width: 0px;
  height: 0px;
}
.scroll--row::-webkit-scrollbar-thumb {
  /*스크롤바 핸들*/
  background-color: #999;
  background-clip: padding-box;
  border-radius: 6px;
}
.scroll--row::-webkit-scrollbar-track {
  /*스크롤바 진행줄*/
  background-color: none;
}
.scroll--row::-webkit-scrollbar-track-piece {
  /*진행줄에서 핸들로 덮이지 않은 영역 */
  background-color: none;
}
.dark .scroll--row {
  scrollbar-highlight-color: #6b6b6b;
}
.dark .scroll--row::-webkit-scrollbar-thumb {
  /*스크롤바 핸들*/
  background-color: #6b6b6b;
}
.dark .scroll--row::-webkit-scrollbar-track-piece {
  /*진행줄에서 핸들로 덮이지 않은 영역 */
  background-color: #6b6b6b;
}

.swiper-slide img {
  width: 100%;
}

.swiper-pagination-bullet-active {
  background-color: #8d8d8d;
}

a.btn:hover {
  cursor: pointer;
}

.btn {
  padding: 0 38px;
  border-radius: 50px;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  letter-spacing: normal;
  box-sizing: border-box;
  line-height: initial;
  word-break: keep-all;
  white-space: nowrap;
  font-family: "KohiLearn", sans-serif;
  line-height: initial;
  min-width: 350px;
}
@media screen and (max-width: 1023.9px) {
  .btn {
    min-width: 273px;
  }
}
@media screen and (max-width: 767.9px) {
  .btn {
    min-width: 260px;
    padding-inline: 23px;
  }
}
.btn__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  gap: 44px;
}
.btn__wrap--bottom {
  text-align: center;
  margin-top: 80px;
}
@media screen and (max-width: 1023.9px) {
  .btn__wrap--bottom {
    margin-top: 47px;
  }
}
@media screen and (max-width: 767.9px) {
  .btn__wrap--m-col {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    gap: 19px;
  }
}
.btn--full {
  width: 100%;
  min-width: 100%;
}
.btn--extend {
  flex: 1;
}
.btn--point {
  background-color: #00aeef;
  color: #fff;
}
.btn--yellow {
  background: #ffc20e;
  color: #313131;
}
.btn--l {
  height: 80px;
  font-size: 30px;
}
@media screen and (max-width: 1023.9px) {
  .btn--l {
    height: 62px;
    font-size: 22px;
  }
}
@media screen and (max-width: 767.9px) {
  .btn--l {
    height: 46px;
    font-size: 19px;
  }
}
.btn--m {
  height: 70px;
  font-size: 30px;
}
@media screen and (max-width: 1023.9px) {
  .btn--m {
    height: 50px;
    font-size: 22px;
  }
}
@media screen and (max-width: 767.9px) {
  .btn--m {
    height: 45px;
    font-size: 19px;
  }
}
.btn--s {
  height: 50px;
  font-size: 16px;
}
.btn--squared {
  border-radius: 0;
}

.btn-floating {
  background: #008cc0;
  border: 2px solid #96e2ff;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.4);
  width: 115px;
  height: 115px;
  border-radius: 50%;
  position: fixed;
  bottom: 80px;
  right: 60px;
  z-index: 99;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1023.9px) {
  .btn-floating {
    width: 94px;
    height: 94px;
    right: 60px;
    bottom: 60px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767.9px) {
  .btn-floating {
    width: 79px;
    height: 79px;
    right: 13px;
    bottom: 15px;
    font-size: 14px;
    font-weight: 500;
  }
}

.chk {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  gap: 8px;
  cursor: pointer;
  line-height: initial;
}
.chk input[type=checkbox],
.chk input[type=radio] {
  display: inline-block;
  padding-right: 0;
  height: 22px;
}
.chk input[type=checkbox]::before,
.chk input[type=radio]::before {
  content: "";
  display: inline-block;
  width: 22px;
  height: 22px;
  border: 1px solid #ddd;
  cursor: pointer;
}
.chk input[type=checkbox]:checked::before,
.chk input[type=radio]:checked::before {
  background: url("../img/chk.png") no-repeat center/11px auto #00aeef;
  border-color: #00aeef;
}
.chk input[type=checkbox]:disabled,
.chk input[type=radio]:disabled {
  opacity: 0.4;
}

.btn-campaign {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
}
@media screen and (min-width: 1023.9px) {
  .btn-campaign {
    display: none;
  }
}

.btn-campaign-close {
  margin-bottom: 20px;
  width: 20px;
  margin-left: auto;
}
@media screen and (min-width: 1023.9px) {
  .btn-campaign-close {
    display: none;
  }
}

body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  min-height: calc(var(--vh, 1vh) * 100);
}

.footer {
  padding: 47px 0 63px;
  background: #00aeef;
  color: rgba(255, 255, 255, 0.7);
  text-align: center;
  line-height: 1.45;
  font-size: 20px;
  font-weight: 500;
}
@media screen and (max-width: 1023.9px) {
  .footer {
    padding: 30px 60px 50px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767.9px) {
  .footer {
    padding: 20px 26px 30px;
    font-size: 12px;
    text-align: left;
  }
}
.footer__logo {
  margin-bottom: 28px;
  display: block;
}
.footer__logo img {
  max-width: 617px;
}
@media screen and (max-width: 1023.9px) {
  .footer__logo img {
    max-width: 500px;
  }
}
@media screen and (max-width: 767.9px) {
  .footer__logo img {
    max-width: 275px;
  }
}

.ellipsis {
  display: block;
  overflow: hidden;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.tit {
  font-size: 56px;
  font-family: "KohiLearn", sans-serif;
  text-align: center;
}
@media screen and (max-width: 767.9px) {
  .tit {
    font-size: 31px;
  }
}

.tit-sub {
  color: rgba(0, 0, 0, 0.55);
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  margin-top: 35px;
  word-break: keep-all;
}
@media screen and (max-width: 1023.9px) {
  .tit-sub {
    font-size: 20px;
    margin-top: 15px;
  }
}
@media screen and (max-width: 767.9px) {
  .tit-sub {
    font-size: 16px;
    margin-top: 10px;
  }
}

.tip-txt {
  color: rgba(0, 0, 0, 0.55);
  font-size: 12px;
}

.icon-must {
  color: red;
}

.agree__terms {
  padding: 10px;
  background-color: #efefef;
  color: #777;
  margin-bottom: 10px;
}

.input-form__input-field {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  gap: 10px;
}
.input-form__tit-field {
  margin-top: 30px;
  font-weight: 600;
  font-size: 16px;
  margin-bottom: 10px;
}
@media screen and (max-width: 1023.9px) {
  .input-form__tit-field {
    font-size: 14px;
  }
}

.main-visual {
  position: relative;
  overflow: hidden;
}
.main-visual__bg {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
}
@media screen and (min-width: 1900px) {
  .main-visual__bg {
    height: 900px !important;
  }
}
@media screen and (min-width: 1279.9px) {
  .main-visual__bg {
    height: 800px;
  }
}
@media screen and (max-width: 1279.9px) {
  .main-visual__bg {
    height: 515px;
  }
}
@media screen and (max-width: 767.9px) {
  .main-visual__bg {
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: auto;
    min-width: 100%;
    aspect-ratio: 0.6818181818;
  }
  .main-visual__bg > a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
  .main-visual__bg > img, .main-visual__bg > a > img {
    object-fit: cover;
    min-height: 100%;
    min-width: 100%;
    max-height: 100%;
    max-width: none;
    height: 100%;
  }
}
.main-visual__bg img {
  object-fit: cover;
  min-height: 100%;
  width: 100%;
}
@media screen and (max-width: 1279.9px) {
  .main-visual__bg img {
    aspect-ratio: 800/390;
  }
}
.main-visual__logo {
  position: absolute;
  top: 30px;
  right: 45px;
  width: 344px;
  z-index: 2;
}
@media screen and (max-width: 1279.9px) {
  .main-visual__logo {
    width: 279px;
    right: 30px;
  }
}
@media screen and (max-width: 767.9px) {
  .main-visual__logo {
    width: 150px;
    top: 15px;
    right: 15px;
  }
}
.main-visual__txt__area {
  position: absolute;
  text-align: center;
  top: 50%;
  left: 48%;
}
@media screen and (max-width: 1023.9px) {
  .main-visual__txt__area {
    left: 45%;
  }
}
@media screen and (max-width: 767.9px) {
  .main-visual__txt__area {
    top: 9%;
    left: 50%;
    transform: translate(-50%, 20px);
  }
}
.main-visual__txt1, .main-visual__txt2 {
  opacity: 0;
  transform: translateY(20px);
  animation: mvTxtUp 0.9s ease-out forwards;
  white-space: nowrap;
}
.main-visual__txt1 {
  margin-top: -103px;
  animation-delay: 0.4s !important;
  font-family: "KohiLearn", sans-serif;
  color: #fff;
  gap: 10px;
  font-size: clamp(38px, 5vw, 68px);
}
@media screen and (max-width: 1023.9px) {
  .main-visual__txt1 {
    margin-top: -85px;
  }
}
@media screen and (max-width: 767.9px) {
  .main-visual__txt1 {
    margin-top: 0;
  }
}
.main-visual__highlight-txt {
  white-space: nowrap;
  font-size: clamp(58px, 7vw, 120px);
}
.main-visual__txt2 {
  animation-delay: 1s !important;
  font-family: "KohiLearn", sans-serif;
  background: #00aeef;
  padding: 11px 10px;
  color: #fff;
  font-size: clamp(27px, 4vw, 54px);
  align-self: center;
  white-space: nowrap;
  margin-top: 0;
}
@media screen and (max-width: 767.9px) {
  .main-visual__txt2 {
    padding: 7px 0;
  }
}

.video__area {
  text-align: center;
  background: #f4f4f4;
  padding: 146px 0;
  min-height: 190px;
}
@media screen and (max-width: 1023.9px) {
  .video__area {
    padding-block: 100px;
  }
}
@media screen and (max-width: 767.9px) {
  .video__area {
    padding-block: 40px;
  }
}
.video__area iframe {
  aspect-ratio: 16/9;
  width: 100% !important;
  height: auto !important;
  max-width: 820px;
}
@media screen and (max-width: 1023.9px) {
  .video__area iframe {
    max-width: 90%;
  }
}

.child-rights__area {
  padding: 100px 20px;
}
@media screen and (max-width: 1023.9px) {
  .child-rights__area {
    padding: 85px 60px 70px;
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__area {
    padding: 40px 10px 50px;
  }
}
.child-rights__sec-tit {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
}
.child-rights__txt1 {
  font-size: 50px;
  animation-delay: 0.4s !important;
  background-image: url(../img/text_underline.jpg);
  background-repeat: no-repeat;
  background-position: bottom left;
  background-size: contain;
  padding-inline: 40px;
  padding-bottom: 10px;
  font-family: "KohiLearn", sans-serif;
}
@media screen and (max-width: 1023.9px) {
  .child-rights__txt1 {
    font-size: 32px;
    padding-bottom: 5px;
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__txt1 {
    font-size: 21px;
    padding-bottom: 2px;
    padding-inline: 20px;
  }
}
.child-rights__txt2 {
  font-size: 100px;
  animation-delay: 1s !important;
  font-family: "KohiLearn", sans-serif;
}
@media screen and (max-width: 1023.9px) {
  .child-rights__txt2 {
    font-size: 62px;
    letter-spacing: 0.25rem;
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__txt2 {
    font-size: 44px;
  }
}
.child-rights__txt2-highlight {
  font-size: 130px;
}
@media screen and (max-width: 1023.9px) {
  .child-rights__txt2-highlight {
    font-size: 88px;
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__txt2-highlight {
    font-size: 57px;
  }
}

@keyframes mvTxtUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes mvTxtUpMobile {
  to {
    opacity: 1;
    transform: translate(-50%, 0);
  }
}
[class^=child-rights__txt] {
  opacity: 0;
  transform: translateY(20px);
  max-width: 670px;
  color: #00aeef;
}
[class^=child-rights__txt].is-visible {
  animation: mvTxtUp 0.9s ease-out forwards;
}

.child-rights__list {
  margin-inline: auto;
}
@media screen and (max-width: 767.9px) {
  .child-rights__list {
    width: calc(100% + 20px);
    min-width: calc(100% + 20px);
    margin-left: -10px;
  }
}
.child-rights__list__inner {
  margin-inline: auto;
}
@media screen and (min-width: 1023.9px) {
  .child-rights__list__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 33px 33px;
    width: 100%;
    max-width: 1155px;
    margin-top: 61px;
  }
  .child-rights__list__inner > * {
    width: calc((100% - 33px * 2) / 3);
    min-width: calc((100% - 33px * 2) / 3);
  }
}
@media screen and (max-width: 1023.9px) and (min-width: 767.9px) {
  .child-rights__list__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 20px 20px;
    width: 100%;
    margin-top: 42px;
  }
  .child-rights__list__inner > * {
    width: calc((100% - 20px * 1) / 2);
    min-width: calc((100% - 20px * 1) / 2);
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__list__inner {
    margin-top: 32px;
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__list .swiper-wrapper {
    padding-bottom: 29px;
  }
}
.child-rights__list .swiper-pagination {
  bottom: 0;
}
@media screen and (min-width: 767.9px) {
  .child-rights__list .swiper-pagination {
    display: none;
  }
}

.child-rights__item {
  position: relative;
  background: #ffc20e;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.02), 0 6px 12px 0 rgba(0, 0, 0, 0.03);
  align-self: stretch;
  height: auto;
}
.child-rights__item:after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 100%;
  text-align: center;
  line-height: 100%;
  background-color: transparent;
  color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 16px;
}
.child-rights__item__tit {
  font-size: 26px;
  color: #313131;
  padding: 24px 24px 8px 24px;
  font-family: "KohiLearn", sans-serif;
}
@media screen and (max-width: 1023.9px) {
  .child-rights__item__tit {
    font-size: 24px;
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__item__tit {
    font-size: 20px;
  }
}
.child-rights__item__tit img {
  height: 29px;
}
.child-rights__item__txt {
  padding: 0 24px 24px;
  font-size: 24px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.55);
}
@media screen and (max-width: 1023.9px) {
  .child-rights__item__txt {
    font-size: 20px;
  }
}
@media screen and (max-width: 767.9px) {
  .child-rights__item__txt {
    font-size: 16px;
  }
}

.performance {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  gap: 50px;
  margin-top: 40px;
}
@media screen and (max-width: 1279.9px) {
  .performance {
    gap: 30px;
  }
}
@media screen and (max-width: 1023.9px) and (min-width: 767.9px) {
  .performance {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 11px 40px;
    width: 100%;
    width: 80%;
    margin-inline: auto;
  }
  .performance > * {
    width: calc((100% - 40px * 1) / 2);
    min-width: calc((100% - 40px * 1) / 2);
  }
}
@media screen and (max-width: 767.9px) {
  .performance {
    margin-top: 50px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    gap: 38px;
  }
}
.performance__area {
  background: #e6f8ff;
  padding-block: 100px;
  text-align: center;
}
@media screen and (max-width: 1023.9px) {
  .performance__area {
    padding-block: 82px 90px;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__area {
    padding-top: 60px;
  }
}
.performance__img {
  margin-top: 46px;
  text-align: center;
}
@media screen and (max-width: 1023.9px) {
  .performance__img {
    margin-top: 34px;
    padding-inline: 60px;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__img {
    margin-top: 22px;
    padding-inline: 26px;
  }
}
.performance__img img {
  max-width: 960px;
  width: 100%;
}
.performance__item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  text-align: center;
}
@media screen and (max-width: 1599.9px) and (min-width: 1023.9px) {
  .performance__item:last-child .performance__layer {
    right: 0;
    transform: translate(0, -100%);
  }
}
.performance__num {
  color: #00aeef;
  font-size: 56px;
  font-family: "KohiLearn", sans-serif;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
}
.performance__num:hover {
  cursor: pointer;
}
.performance__txt1 {
  font-size: 24px;
  font-weight: 700;
  color: rgba(0, 0, 0, 0.55);
}
@media screen and (max-width: 1023.9px) {
  .performance__txt1 {
    font-size: 20px;
    margin-top: 0px;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__txt1 {
    color: #00aeef;
    font-size: 16px;
  }
}
.performance__txt2 {
  color: rgba(0, 0, 0, 0.55);
  font-size: 20px;
  font-weight: 500;
  line-height: 1.4;
}
@media screen and (max-width: 1023.9px) {
  .performance__txt2 {
    font-size: 18px;
    margin-top: 3px;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__txt2 {
    color: #00aeef;
    font-size: 14px;
    margin-top: 2px;
  }
}
.performance__txt3 {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.55);
  margin-top: 8px;
}
@media screen and (min-width: 767.9px) {
  .performance__txt3 {
    display: none;
  }
}
.performance__btn-layer {
  color: #00aeef;
  font-size: 30px;
  font-weight: 600;
  font-family: "KohiLearn", sans-serif;
}
@media screen and (max-width: 767.9px) {
  .performance__btn-layer {
    display: none;
  }
}
@media screen and (min-width: 1023.9px) {
  .performance__layer {
    right: 80px;
    transform: translate(100%, -100%);
  }
}
@media screen and (max-width: 1599.9px) and (min-width: 767.9px) {
  .performance__layer {
    right: 50%;
    transform: translate(50%, -100%);
  }
}
@media screen and (min-width: 767.9px) {
  .performance__layer {
    text-align: left;
    font-size: 22px;
    font-weight: 700;
    color: #00aeef;
    border-radius: 20px;
    border: 2.5px solid #00aeef;
    background: #fff;
    padding: 20px;
    position: absolute;
    white-space: nowrap;
    top: 0px;
    font-family: "Pretendard", sans-serif;
    display: none;
  }
  .performance__layer.is-visible {
    display: block;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__layer {
    display: none;
  }
}
.performance__tip {
  height: 50px;
  border-radius: 10px;
  border: 2.5px solid #00aeef;
  background: #fff;
  padding-inline: 24px;
  font-size: 22px;
  font-weight: 700;
  color: #00aeef;
  text-align: center;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  margin-top: 40px;
  gap: 8px;
}
.performance__tip__arrow {
  border-radius: 24px;
  background: #00aeef;
  width: 24px;
  height: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
}
.performance__tip__arrow img {
  width: 12px;
}
@media screen and (max-width: 767.9px) {
  .performance__tip {
    display: none;
  }
}

.performance__slide-tit {
  font-family: "KohiLearn", sans-serif;
  margin-top: 102px;
  text-align: center;
  font-size: 47px;
}
@media screen and (max-width: 767.9px) {
  .performance__slide-tit {
    font-size: 34px;
    margin-top: 68px;
  }
}
.performance__slide-sub-tit {
  font-family: "KohiLearn", sans-serif;
  text-align: center;
  font-size: 32px;
  margin-top: 16px;
}
@media screen and (max-width: 767.9px) {
  .performance__slide-sub-tit {
    font-size: 22px;
    margin-top: 6px;
  }
}
.performance__slide__txt1 {
  font-family: "KohiLearn", sans-serif;
  font-size: 25px;
  color: #00aeef;
  margin-block: 96px 5px;
  text-align: center;
}
@media screen and (max-width: 767.9px) {
  .performance__slide__txt1 {
    font-size: 26px;
  }
}
.performance__slide__txt2 {
  color: rgba(0, 0, 0, 0.55);
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  word-break: keep-all;
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__txt2 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__slide__txt2 {
    font-size: 16px;
    padding-inline: 26px;
  }
}
.performance__slide__txt3 {
  color: rgba(0, 0, 0, 0.55);
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  margin-top: 5px;
}
@media screen and (max-width: 767.9px) {
  .performance__slide__txt3 {
    font-size: 14px;
  }
}
.performance__slide__img {
  overflow: hidden;
  height: 550px;
}
@media screen and (min-width: 767.9px) {
  .performance__slide__img {
    border-radius: 20px;
    max-width: 957px;
  }
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__img {
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(100vw - 120px);
    height: auto;
    min-width: calc(100vw - 120px);
    aspect-ratio: 1.4498933902;
    margin-inline: auto;
  }
  .performance__slide__img > a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
  }
  .performance__slide__img > img, .performance__slide__img > a > img {
    object-fit: cover;
    min-height: 100%;
    min-width: 100%;
    max-height: 100%;
    max-width: none;
    height: 100%;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__slide__img {
    min-width: 100%;
  }
}
.performance__slide__img img {
  width: 100%;
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__img img {
    object-position: center;
  }
}
.performance__slide__wrap {
  margin-top: 33px;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 1023.9px) {
  .performance__slide__wrap .swiper {
    max-width: 957px;
    margin-inline: auto;
  }
}
.performance__slide__wrap .swiper-button-next {
  margin-left: 512px;
  left: 50%;
  right: auto;
}
@media screen and (max-width: 1279.9px) {
  .performance__slide__wrap .swiper-button-next {
    left: auto;
    right: 10px;
    margin: 0;
  }
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__wrap .swiper-button-next {
    right: 30%;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__slide__wrap .swiper-button-next {
    right: 20%;
  }
}
.performance__slide__wrap .swiper-button-prev {
  margin-left: -587px;
  left: 50%;
  right: auto;
}
@media screen and (max-width: 1279.9px) {
  .performance__slide__wrap .swiper-button-prev {
    left: 10px;
    margin: 0;
  }
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__wrap .swiper-button-prev {
    left: 30%;
  }
}
@media screen and (max-width: 767.9px) {
  .performance__slide__wrap .swiper-button-prev {
    left: 20%;
  }
}
.performance__slide__wrap .swiper-button-next,
.performance__slide__wrap .swiper-button-prev {
  width: 75px;
  height: 75px;
  background-color: #dedede;
  border-radius: 50px;
  color: #8d8d8d;
  top: 245px;
  transform: translate(0);
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__wrap .swiper-button-next,
  .performance__slide__wrap .swiper-button-prev {
    width: 40px;
    height: 40px;
  }
}
.performance__slide__wrap .swiper-button-next:after,
.performance__slide__wrap .swiper-button-prev:after {
  font-size: 33px;
  font-weight: 900;
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__wrap .swiper-button-next:after,
  .performance__slide__wrap .swiper-button-prev:after {
    font-size: 0;
    background: url(../img/icon-next.png) no-repeat;
    background-position: center;
    width: 15px;
    height: 15px;
    background-size: contain;
  }
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__wrap .swiper-button-prev:after {
    transform: rotate(180deg);
  }
}
.performance__slide__wrap .swiper-horizontal > .swiper-pagination-bullets,
.performance__slide__wrap .swiper-pagination-bullets.swiper-pagination-horizontal,
.performance__slide__wrap .swiper-pagination-custom,
.performance__slide__wrap .swiper-pagination-fraction {
  bottom: auto;
  top: 587px;
}
@media screen and (max-width: 1023.9px) {
  .performance__slide__wrap .swiper-horizontal > .swiper-pagination-bullets,
  .performance__slide__wrap .swiper-pagination-bullets.swiper-pagination-horizontal,
  .performance__slide__wrap .swiper-pagination-custom,
  .performance__slide__wrap .swiper-pagination-fraction {
    top: 78%;
  }
}
.performance__slide__wrap .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.performance__slide__wrap .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  border-radius: 5px;
  -webkit-transition-duration: 0.4s;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  -ms-transition-duration: 0.4s;
  transition-duration: 0.4s;
}
.performance__slide__wrap .swiper-pagination-bullet-active {
  width: 54px;
  border-radius: 5px;
  -webkit-transition-duration: 0.4s;
  -moz-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  -ms-transition-duration: 0.4s;
  transition-duration: 0.4s;
}

.city__area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  gap: 60px;
  padding: 89px 60px 99px 13px;
  background: #f4f4f4;
  position: relative;
}
@media screen and (max-width: 1599.9px) {
  .city__area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    padding-inline: 60px;
    gap: 0;
  }
}
@media screen and (max-width: 767.9px) {
  .city__area {
    gap: 40px;
    padding: 47px 0 132px;
  }
}
.city__txt__area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  gap: 67px;
}
@media screen and (max-width: 1599.9px) and (min-width: 1279.9px) {
  .city__txt__area {
    width: 957px;
    gap: 30px;
  }
}
@media screen and (max-width: 1279.9px) {
  .city__txt__area {
    align-self: stretch;
    padding-inline: 0;
    gap: 30px;
  }
}
@media screen and (max-width: 767.9px) {
  .city__txt__area {
    gap: 23px;
    text-align: center;
  }
}
.city__tit {
  font-family: "KohiLearn", sans-serif;
  font-size: 56px;
}
@media screen and (max-width: 767.9px) {
  .city__tit {
    font-size: 32px;
  }
}
.city__txt1 {
  font-size: 24px;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.55);
}
@media screen and (max-width: 767.9px) {
  .city__txt1 {
    font-size: 16px;
  }
}
.city__txt2 {
  margin-top: 7px;
  font-size: 20px;
  font-weight: 500;
  color: rgba(0, 0, 0, 0.55);
}
@media screen and (max-width: 767.9px) {
  .city__txt2 {
    font-size: 12px;
  }
}
.city__label {
  font-size: 20px;
  font-weight: 500;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  gap: 3px;
}
@media screen and (max-width: 767.9px) {
  .city__label {
    font-size: 16px;
  }
}
.city__label__icon {
  width: 22px;
  height: 22px;
  border-radius: 20px;
}
@media screen and (max-width: 767.9px) {
  .city__label__icon {
    width: 18px;
    height: 18px;
  }
}
.city__label--blue {
  color: #00aeef;
}
.city__label--blue .city__label__icon {
  background-color: #00aeef;
}
.city__label--green {
  color: #3fba4d;
}
.city__label--green .city__label__icon {
  background-color: #3fba4d;
}
.city__label__area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  gap: 15px;
}
@media screen and (max-width: 767.9px) {
  .city__label__area {
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 24px;
  }
}

.city__map {
  position: relative;
  height: 840px;
}
@media screen and (max-width: 767.9px) {
  .city__map {
    padding-inline: 32px;
    height: auto;
    max-width: 540px;
    max-height: 840px;
  }
}
.city__map img {
  max-height: 100%;
  width: auto;
}

.city__tip {
  height: 50px;
  border-radius: 10px;
  border: 2.5px solid #00aeef;
  background: #00aeef;
  padding-inline: 24px;
  font-size: 22px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  margin-top: 40px;
  gap: 8px;
  position: absolute;
  bottom: 40px;
  right: 50%;
  transform: translateX(calc(50% + 380px));
}
@media screen and (max-width: 1023.9px) and (min-width: 767.9px) {
  .city__tip {
    right: 60px;
    transform: translateX(0);
  }
}
@media screen and (max-width: 767.9px) {
  .city__tip {
    font-size: 16px;
    height: 40px;
    bottom: 60px;
    transform: translateX(50%);
    white-space: nowrap;
  }
}
.city__tip__arrow {
  border-radius: 24px;
  background: #fff;
  width: 24px;
  height: 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
  -moz-justify-content: center;
}
.city__tip__arrow img {
  width: 12px;
}
@media screen and (max-width: 767.9px) {
  .city__tip__arrow {
    width: 20px;
    height: 20px;
  }
}

.city__name {
  border-radius: 500px;
  border: 2px solid #00aeef;
  background: #fff;
  padding: 12px 24px;
  color: #00aeef;
  font-size: 22px;
  font-weight: 700;
  min-width: 86px;
  text-align: center;
  z-index: 2;
  position: relative;
}
@media screen and (max-width: 767.9px) {
  .city__name {
    font-size: 13px;
    padding: 7px 8.5px;
    min-width: 44px;
    border-width: 1px;
  }
}
.city__name:hover {
  cursor: pointer;
  background-color: #00aeef;
  color: #fff;
}
.city__name__wrap {
  position: absolute;
  text-align: left;
}
.city__name__wrap.is-visible .city__name {
  display: block;
  background-color: #00aeef;
  color: #fff;
}
.city__name__wrap.is-visible .city__layer {
  display: block;
}
.city__name--1 {
  top: 20%;
  left: 11%;
}
@media screen and (max-width: 767.9px) {
  .city__name--1 {
    top: 18%;
    left: 15%;
  }
}
.city__name--2 {
  top: 39%;
  left: 11%;
}
@media screen and (max-width: 767.9px) {
  .city__name--2 {
    top: 40%;
    left: 15%;
  }
}
.city__name--3 {
  top: 62%;
  left: 11%;
}
@media screen and (max-width: 767.9px) {
  .city__name--3 {
    top: 61%;
    left: 19%;
  }
}
.city__name--4 {
  top: 90%;
  left: 11%;
}
@media screen and (max-width: 767.9px) {
  .city__name--4 {
    top: 93%;
    left: 22%;
  }
}
.city__name--5 {
  top: 14%;
  left: 52%;
}
@media screen and (max-width: 767.9px) {
  .city__name--5 {
    top: 12%;
    left: 52%;
  }
}
.city__name--6 {
  top: 42%;
  left: 61%;
}
@media screen and (max-width: 767.9px) {
  .city__name--6 {
    top: 43%;
    left: 58%;
  }
}
.city__name--7 {
  top: 63%;
  left: 45%;
}
@media screen and (max-width: 767.9px) {
  .city__name--7 {
    top: 61%;
    left: 48%;
  }
}

.city__name--1 .city__layer {
  left: -23px;
  transform: translate(-100%, 0);
}
@media screen and (max-width: 1023.9px) {
  .city__name--1 .city__layer {
    left: -5px;
  }
}

.city__name--2 .city__layer {
  left: -23px;
  transform: translate(-100%, 0);
}
@media screen and (max-width: 1023.9px) {
  .city__name--2 .city__layer {
    left: -5px;
  }
}

.city__name--3 .city__layer {
  left: -23px;
  transform: translate(-100%, 0);
}
@media screen and (max-width: 1023.9px) {
  .city__name--3 .city__layer {
    left: -5px;
  }
}

.city__name--4 .city__layer {
  left: -23px;
  transform: translate(-100%, 0);
}
@media screen and (max-width: 1023.9px) {
  .city__name--4 .city__layer {
    left: -5px;
  }
}

.city__layer {
  border-radius: 20px;
  border: 2.5px solid #00aeef;
  background: #fff;
  padding: 24px;
  position: absolute;
  top: 0;
  left: calc(100% + 23px);
  color: #00aeef;
  font-size: 20px;
  font-weight: 500;
  white-space: nowrap;
  display: none;
  z-index: 3;
}
@media screen and (max-width: 1023.9px) {
  .city__layer {
    padding: 10px;
    font-size: 12px;
    left: calc(100% + 5px);
  }
}
@media screen and (max-width: 767.9px) {
  .city__layer {
    left: 50% !important;
    transform: translateX(-50%) !important;
    top: 40px !important;
    border-radius: 10px;
    border-width: 1px;
  }
}
.city__layer__tit {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 5px;
}
@media screen and (max-width: 1023.9px) {
  .city__layer__tit {
    font-size: 13px;
  }
}
.city__layer__tit:not(:first-child) {
  margin-top: 28px;
}

.main-banner {
  height: 520px;
  background: url(../img/banner.jpg) no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
}
@media screen and (max-width: 1023.9px) {
  .main-banner {
    background-position: 59% bottom;
  }
}
@media screen and (max-width: 767.9px) {
  .main-banner {
    background-image: url(../img/banner_m.jpg);
    height: auto;
    min-height: 553px;
    padding-block: 45px 30px;
    background-position: center;
  }
}
.main-banner__txt__area {
  text-align: center;
  position: absolute;
  left: 45%;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 1023.9px) {
  .main-banner__txt__area {
    left: 36%;
  }
}
@media screen and (max-width: 767.9px) {
  .main-banner__txt__area {
    left: 0;
    top: auto;
    transform: translate(0);
    width: 100%;
    position: relative;
  }
}
.main-banner__tit {
  font-size: 55px;
  color: #fff;
  font-family: "KohiLearn", sans-serif;
}
@media screen and (max-width: 1023.9px) {
  .main-banner__tit {
    font-size: 44px;
  }
}
@media screen and (max-width: 767.9px) {
  .main-banner__tit {
    font-size: 34px;
  }
}
.main-banner__txt1 {
  margin-top: 11px;
  color: #fff;
  font-size: 24px;
  font-weight: 700;
}
@media screen and (max-width: 1023.9px) {
  .main-banner__txt1 {
    font-size: 20px;
    margin-top: 17px;
  }
}
@media screen and (max-width: 767.9px) {
  .main-banner__txt1 {
    font-size: 16px;
    margin-top: 4px;
    font-weight: 500;
  }
}
.main-banner__txt2 {
  margin-block: 29px 20px;
  font-size: 20px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.7);
}
@media screen and (max-width: 1023.9px) {
  .main-banner__txt2 {
    font-size: 44px;
    margin-block: 34px 25px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767.9px) {
  .main-banner__txt2 {
    font-size: 12px;
    margin-block: 20px 240px;
    font-weight: 500;
  }
}

.campaign__logo {
  width: 297px;
  position: absolute;
  left: 5%;
  top: 5%;
}
@media screen and (max-width: 1279.9px) {
  .campaign__logo {
    left: 18px;
    top: 18px;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__logo {
    width: 150px;
  }
}
.campaign__box {
  position: absolute;
  width: 350px;
  right: 3%;
  top: 5%;
  bottom: 5%;
  background: #fff;
  padding: 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  max-height: calc(var(--vh, 1vh) * 100 - 10%);
  overflow-x: hidden;
  overflow-y: auto;
  scrollbar-face-color: transparent; /*스크롤*/
  scrollbar-highlight-color: #999; /*하이라이트*/
  scrollbar-3dlight-color: transparent; /*왼쪽외곽음영*/
  scrollbar-darkshadow-color: transparent; /*오른쪽외곽음영*/
  scrollbar-shadow-color: transparent; /*오른쪽 안쪽음영*/
  scrollbar-arrow-color: transparent; /*화살*/
  scrollbar-track-color: transparent; /*스크롤영역*/
}
.campaign__box::-webkit-scrollbar {
  /*스크롤바*/
  width: 6px;
  height: 6px;
}
.campaign__box::-webkit-scrollbar-button {
  /*스크롤바 버튼(아래 위 화살표)*/
  width: 0px;
  height: 0px;
}
.campaign__box::-webkit-scrollbar-thumb {
  /*스크롤바 핸들*/
  background-color: #999;
  background-clip: padding-box;
  border-radius: 6px;
}
.campaign__box::-webkit-scrollbar-track {
  /*스크롤바 진행줄*/
  background-color: none;
}
.campaign__box::-webkit-scrollbar-track-piece {
  /*진행줄에서 핸들로 덮이지 않은 영역 */
  background-color: none;
}
.dark .campaign__box {
  scrollbar-highlight-color: #6b6b6b;
}
.dark .campaign__box::-webkit-scrollbar-thumb {
  /*스크롤바 핸들*/
  background-color: #6b6b6b;
}
.dark .campaign__box::-webkit-scrollbar-track-piece {
  /*진행줄에서 핸들로 덮이지 않은 영역 */
  background-color: #6b6b6b;
}
@media screen and (min-width: 1023.9px) {
  .campaign__box {
    display: flex !important;
  }
}
@media screen and (max-width: 1900px) {
  .campaign__box {
    padding: 15px;
    top: 15px;
    right: 15px;
    bottom: 15px;
    max-height: calc(var(--vh, 1vh) * 100 - 30px);
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-face-color: transparent; /*스크롤*/
    scrollbar-highlight-color: #999; /*하이라이트*/
    scrollbar-3dlight-color: transparent; /*왼쪽외곽음영*/
    scrollbar-darkshadow-color: transparent; /*오른쪽외곽음영*/
    scrollbar-shadow-color: transparent; /*오른쪽 안쪽음영*/
    scrollbar-arrow-color: transparent; /*화살*/
    scrollbar-track-color: transparent; /*스크롤영역*/
  }
  .campaign__box::-webkit-scrollbar {
    /*스크롤바*/
    width: 6px;
    height: 6px;
  }
  .campaign__box::-webkit-scrollbar-button {
    /*스크롤바 버튼(아래 위 화살표)*/
    width: 0px;
    height: 0px;
  }
  .campaign__box::-webkit-scrollbar-thumb {
    /*스크롤바 핸들*/
    background-color: #999;
    background-clip: padding-box;
    border-radius: 6px;
  }
  .campaign__box::-webkit-scrollbar-track {
    /*스크롤바 진행줄*/
    background-color: none;
  }
  .campaign__box::-webkit-scrollbar-track-piece {
    /*진행줄에서 핸들로 덮이지 않은 영역 */
    background-color: none;
  }
  .dark .campaign__box {
    scrollbar-highlight-color: #6b6b6b;
  }
  .dark .campaign__box::-webkit-scrollbar-thumb {
    /*스크롤바 핸들*/
    background-color: #6b6b6b;
  }
  .dark .campaign__box::-webkit-scrollbar-track-piece {
    /*진행줄에서 핸들로 덮이지 않은 영역 */
    background-color: #6b6b6b;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__box {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    z-index: 2;
    width: 100%;
    height: calc(var(--vh, 1vh) * 100);
    max-height: calc(var(--vh, 1vh) * 100);
    display: none;
  }
}
.campaign__btns {
  margin-top: auto;
  padding-top: 20px;
}
.campaign__img {
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  width: auto;
  height: 100%;
  min-width: auto;
  aspect-ratio: auto;
  min-width: 100%;
}
.campaign__img > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
.campaign__img > img, .campaign__img > a > img {
  object-fit: cover;
  min-height: 100%;
  min-width: 100%;
  max-height: 100%;
  max-width: none;
  height: 100%;
}
@media screen and (max-width: 1023.9px) {
  .campaign__img {
    padding-bottom: 50px;
  }
}
.campaign__img img {
  position: relative;
  z-index: -1;
}
@media screen and (max-width: 460px) {
  .campaign__img img {
    min-width: 460px;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__img--pc {
    display: none;
  }
}
@media screen and (max-width: 1023.9px) and (orientation: landscape) {
  .campaign__img--pc {
    display: block !important;
  }
}
@media screen and (min-width: 1023.9px) {
  .campaign__img--mobile {
    display: none;
  }
}
@media screen and (max-width: 1023.9px) and (orientation: landscape) {
  .campaign__img--mobile {
    display: none !important;
  }
}
.campaign__layout {
  height: calc(var(--vh, 1vh) * 100);
  background: url(../img/campaign.jpg) no-repeat center/cover;
}
@media screen and (max-width: 1900px) and (min-width: 1023.9px) {
  .campaign__layout {
    background-position: calc(50% - 175px) center;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__layout {
    background-image: url(../img/campaign_m.jpg);
  }
}
@media screen and (max-width: 1023.9px) and (orientation: portrait) {
  .campaign__layout {
    background-size: 140% auto;
    background-position: calc(50% - 8px) center;
  }
}
@media screen and (max-width: 1023.9px) and (orientation: landscape) {
  .campaign__layout {
    background-image: url(../img/campaign.jpg);
  }
}
.campaign__notice {
  position: absolute;
  bottom: 5%;
  left: 5%;
  color: #fff;
}
@media screen and (max-width: 1279.9px) {
  .campaign__notice {
    left: 18px;
    bottom: 18px;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__notice {
    bottom: 76px;
  }
}
.campaign__txt1 {
  color: #fff;
  font-family: "KohiLearn", sans-serif;
  font-size: 64px;
  font-weight: 400;
  line-height: 125%;
  letter-spacing: -1.92px;
}
@media screen and (max-width: 1279.9px) {
  .campaign__txt1 {
    font-size: 50px;
    margin-top: 15px;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__txt1 {
    font-size: 32px;
    margin-top: 11px;
  }
}
.campaign__txt2 {
  font-family: "KohiLearn", sans-serif;
  font-size: 64px;
  font-weight: 400;
  line-height: 125%;
  letter-spacing: -1.92px;
  padding: 3px 11px;
  background-color: #00aeef;
  margin-top: 21px;
}
@media screen and (max-width: 1279.9px) {
  .campaign__txt2 {
    font-size: 50px;
    margin-top: 15px;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__txt2 {
    font-size: 32px;
    margin-top: 5px;
  }
}
.campaign__txt3 {
  font-size: 20px;
  font-weight: 700;
  line-height: 135%;
  margin-top: 21px;
}
@media screen and (max-width: 1279.9px) {
  .campaign__txt3 {
    font-size: 18px;
    margin-top: 15px;
  }
}
@media screen and (max-width: 1023.9px) {
  .campaign__txt3 {
    font-size: 15px;
    margin-top: 11px;
  }
}

#EventSignModule #INPUT_5 .form-title h2 {
  color: #1cabe2;
}
@media screen and (max-width: 640px) {
  #EventSignModule #INPUT_5 .form-title {
    margin-top: 20px;
  }
}
#EventSignModule #INPUT_5 textarea {
  min-height: auto;
  height: 100px;
}
#EventSignModule #AGREE_TEXT .form-title {
  font-size: 15px;
}