:root {
  font-size: 100px;
  font-family: "Pretendard JP",'Poppins', serif;
}
html {
  transition: font-size 0.3s ease-in-out;
}
body {
  background-color: #ECEFF8;
}

.text-block {
  white-space: normal;
  word-break: keep-all;
}
.breakpoint {
  display: inline-block; /* 줄바꿈 허용 포인트로 작동 */
}
.apply-period__end {
  white-space: nowrap;   /* 이 span 내부에서는 줄바꿈 금지 */
  display: inline-block; /* inline 상태에서 폭 계산을 안정화 */
}

#content {
  padding-top: 0px;
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

#content #left {
  position: fixed;
  top: 0;
  left: 0;
  width: 45%;
  height: 100%;
  margin: 0;
  padding: 0;
  background-image: url(/img/phs_poster.png);
  background-size: cover;
  background-position-x: center;
  background-position-y: center;
}

#content #right {
  position: relative;
  top: 0;
  left: 45%;
  width: 55%;
  margin: 0;
  background-color: #ECEFF8;
}

#content #right .right-wrapper {
  padding: 50px 0.65rem 100px 0.65rem;
}

#content #right .right-wrapper .section {
  padding: 0;
  margin: 100px 0 0 0;
}

.section > .title {
  font-family: "Poppins", serif;
  font-size: 0.64rem;
  font-weight: 700;
  color: #2F3346;
}

/* Title */
#title {
  text-align: center;
}
#title .tour-main-logo .tour-main-logo-img {
  width: 90%;
}
#title .tour-sub-logo {
  margin-top: 16px;
}
#title .tour-sub-logo .tour-sub-logo-img {
  display: block;
  margin: 0 auto;
  width: 45%;
}
#title .tour-title {
  margin-top: 48px;
  font-family: "Poppins", serif;
  font-size: 0.32rem;
  font-weight: 600;
  line-height: 1.4em;
  line-height: 32px;
  color: #2F3346;
}
#title .event-date {
  margin-top: 16px;
  font-family: "Poppins", serif;
  font-size: 0.24rem;
  font-weight: 600;
  line-height: 1.4em;
  color: #2F3346;
}
#title .event-time {
  margin-top: 4px;
  font-family: "Poppins", serif;
  font-size: 0.2rem;
  font-weight: 500;
  line-height: 1.4em;
  color: #2F3346;
}

/* Launch Show */
#launch-show {
  text-align: center;
}
#launch-show .sub-title {
  margin-top: 10px;
  font-size: 0.2rem;
  font-weight: 500;
  line-height: 1.4em;
  color: #2F3346;
}
#launch-show .caution {
  margin-top: 6px;
  font-size: 0.16rem;
  font-weight: 500;
  line-height: 1.4em;
  color: #FFFFFF;

  width: fit-content;
  margin: 6px auto 0;
  background-color: #2F3346;
  padding: 4px 6px;
}
#launch-show > .product > .title {
  margin-top: 30px;
  font-size: 0.26rem;
  font-weight: 600;
  line-height: 1.4em;
  color: #5586C5;
}
#launch-show > .product > .product-img {
  margin-top: 16px;
}
#launch-show > .product > .product-img > img {
  width: 80%;
}
#launch-show > .more-caution {
  margin-top: 12px;
  font-size: 0.16rem;
  font-weight: 400;
  line-height: 1.4em;
  color: #707279;
}

/* Product */
#product {
  text-align: center;
}
#product .sub-title {
  margin-top: 10px;
  font-size: 0.2rem;
  font-weight: 500;
  line-height: 1.4em;
  color: #2F3346;
}
#product .caution {
  margin-top: 6px;
  font-size: 0.16rem;
  font-weight: 500;
  line-height: 1.4em;
  color: #FFFFFF;

  width: fit-content;
  margin: 6px auto 0;
  background-color: #2F3346;
  padding: 4px 6px;
}
#product > .product {
  margin-top: 30px;
}
#product > .product > .title {
  margin-top: 30px;
  font-size: 0.26rem;
  font-weight: 600;
  line-height: 1.4em;
  color: #5586C5;
}
#product > .product > .notice {
  font-size: 0.16rem;
  font-weight: 500;
  line-height: 1.4em;
  color: #FFFFFF;

  width: fit-content;
  margin: 10px auto 0;
  background-color: #7CACEA;
  padding: 4px 6px;
}
#product > .product > .product-img {
  margin-top: 16px;
}
#product > .product > .product-img > img {
  width: 50%;
}
#product > .more-caution {
  margin-top: 12px;
  font-size: 0.16rem;
  font-weight: 300;
  line-height: 1.4em;
  color: #707279;
}

/* Sales Schedule */
#sales-schedule {
  text-align: center;
}
#sales-schedule > .box {
  border: 1px solid #5586C5;
  width: 90%;
  margin: 24px auto;
}
#sales-schedule > .box.premium-package {
  margin-top: 32px;
}
#sales-schedule > .box > .header {
  background-color: #5586C5;
  color: white;
  font-size: 0.24rem;
  font-weight: 600;
  line-height: 1.4em;
  padding: 20px;
}
#sales-schedule > .box > .body {
  padding: 24px 16px;
  background-color: #FFFFFF;
}
#sales-schedule > .box > .body .payment-method {
  color: #5586C5;
  font-size: 0.2rem;
  font-weight: 600;
  line-height: 1.4em;
}
#sales-schedule > .box > .body .payment-method.convenience-store {
  margin-top: 24px;
}
#sales-schedule > .box > .body .period {
  margin-top: 6px;
  color: #5586C5;
  font-size: 0.16rem;
  font-weight: 400;
  line-height: 1.4em;
}
#sales-schedule > .box > .body .action-btns {
  margin-top: 24px;
  display: flex;
  justify-content: center;
  gap: 16px;
}
#sales-schedule > .box > .body .action-btns .go-to-sales-page {
  border: none;
  padding: 12px 32px;
  background-color: #326AB2;
  color: #FFFFFF;
  font-size: 0.2rem;
  font-weight: 600;
  line-height: 1.4em;
  border-radius: 46px;
}
#sales-schedule > .box > .body .action-btns .go-to-sales-page[disabled] {
  background-color: #D1D1D1;
}

/* Naxna */
#brand {
  text-align: center;
}
#brand .title-img img {
  width: 25%;
  display: block;
  margin: 0 auto;
}
#brand .description {
  margin-top: 32px;
  font-size: 0.16rem;
  font-weight: 400;
  line-height: 1.4em;
  color: #53688A;
}#brand .product-package-img {
  margin-top: 32px;
}
#brand .product-package-img img {
  width: 60%;
}

/* Notice */
#notice {
  padding: 20px;
  background-color: #729BDD;
  border-radius: 20px;
  color: #FFFFFF;
  font-size: 0.24rem;
  font-weight: 500;
  line-height: 1.4em;
  text-align: center;
  width: 90%;
  margin: 80px auto;
}

/* Contact */
#contact {
  margin-top: 80px;
}
#contact .contact-item:not(:first-child) {
  margin-top: 32px;
}
#contact .contact-item .title {
  color: #5586C5;
  font-size: 0.24rem;
  font-weight: 600;
  line-height: 1.4em;
}
#contact .contact-item .content {
  margin-top: 12px;
  font-size: 0.18rem;
  font-weight: 500;
  line-height: 1.4em;
  color: #5586C5;
  opacity: 0.8;
}
#contact .contact-item .content a{
  border-bottom: 1px solid #5586C5;
}
#contact .contact-item .content .small {
  font-size: 0.14rem;
  font-weight: 500;
  line-height: 1.4em;
}
#contact .contact-item .sponsor-logo-list {
  display: flex;
  gap: 16px;
  align-items: center;
  margin-top: 12px;
}
#contact .sponsor-logo img {
  display: block;
}

/* Footer */
#footer {
  background-color: #C5D5EF;
  color: white;
  font-size: 0.12rem;
  text-align: center;
  padding-top: 40px;
  padding-bottom: 80px;
  position: relative;
  bottom: 0;
  z-index: 10;
  width: 100%;
}

@media (min-width: 1921px) {
  :root {
    font-size: 100px;
  }
}

@media (max-width: 1501px) {
  :root {
    font-size: 100px;
  }
}

@media (max-width: 1201px) {
  :root {
    font-size: 90px;
  }
}

@media (max-width: 981px) {
  #content #left {
    position: relative;
    width: 100%;
    height: auto;
    padding: 125% 0 0 0;
  }
  #content #right {
    left: 0;
    width: 100%;
  }
  #content #right .right-wrapper {
    padding: 45px 15px 20px 15px;
  }

  /* Footer */
  #footer {
    margin-top: 65px;
  }
}

@media (max-width: 520px) {
  /* Title */
  #title .tour-main-logo .tour-main-logo-img {
    width: 100%;
  }
  #title .tour-sub-logo .tour-sub-logo-img {
    width: 70%;
  }
  /* Launch Show */
  #launch-show > .product > .title {
    font-size: 0.22rem;
  }
  #launch-show > .product > .product-img > img {
    width: 100%;
  }
  /* Product */
  #product > .product > .title {
    font-size: 0.22rem;
  }
  #product > .product > .product-img > img {
    width: 95%;
  }
  /* Sales Schedule */
  #sales-schedule > .box {
    width: 100%;
  }
  #sales-schedule > .box > .header {
    padding: 16px;
  }
  #sales-schedule > .box > .body .action-btns {
    display: flex;
    flex-direction: column;
    gap: 14px;
  }
  /* Naxna */
  #brand .title-img img {
    width: 60%;
  }
  #brand .product-package-img img {
    width: 100%;
  }

  /* Footer */
  #footer {
    margin-top: 65px;
  }
}
