@import url("//fonts.googleapis.com/css2?family=M+PLUS+1p:wght@300;400;700;800;900&display=swap");
/*========================================
*	common
========================================*/
::selection {
  color: #fff;
  background: #000;
}

*,
*:after,
*:before {
  box-sizing: border-box;
}

*:focus {
  outline: 0;
}

html,
body {
  font-size: 62.5%;
  color: #fff;
  background-color: #111111;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 400;
}

body {
  width: 100%;
}

a {
  color: #000;
  text-decoration: none;
}

h1,
h2,
h3 {
  line-height: 1;
}

ul,
li {
  list-style: none;
}

tr,
th,
td {
  font-weight: normal;
  text-align: left;
}

img,
picture {
  -webkit-backface-visibility: hidden;
  width: 100%;
  max-width: 100%;
  pointer-events: none;
  vertical-align: bottom;
}

.pc-none {
  display: none;
}
@media only screen and (max-width: 767px) {
  .pc-none {
    display: block;
  }
}

@media only screen and (min-width: 767px) {
  .sp-none {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  .sp-none {
    display: none;
  }
}

.ot-floating-button__close {
  text-align: center;
}

.header__logo {
  position: absolute;
  top: 0;
  left: 0;
  width: 24vw;
  height: auto;
}
@media only screen and (min-width: 767px) {
  .header__logo {
    width: 9.5168374817vw;
    transition: all 300ms ease;
  }
  .header__logo:hover {
    opacity: 0.5;
  }
}
@media only screen and (min-width: 1367px) {
  .header__logo {
    width: 130px;
  }
}
.header__language {
  width: 32vw;
  height: auto;
  background-color: #0054d3;
  position: absolute;
  top: 0;
  right: 0;
  border-bottom-left-radius: 3.2vw;
  z-index: 10;
}
@media only screen and (min-width: 767px) {
  .header__language {
    width: 9.5168374817vw;
    border-bottom-left-radius: 1.4641288433vw;
    transition: all 300ms ease;
  }
  .header__language:hover {
    background-color: white;
  }
  .header__language:hover .header__language--icon .on {
    opacity: 1;
  }
  .header__language:hover .header__language--icon .off {
    opacity: 0;
  }
  .header__language:hover .header__language--arrow {
    border-top: 2.6666666667vw solid #003a8f;
  }
}
@media only screen and (min-width: 767px) and (min-width: 767px) {
  .header__language:hover .header__language--arrow {
    border-top: 0.7320644217vw solid #003a8f;
  }
}
@media only screen and (min-width: 767px) and (min-width: 1367px) {
  .header__language:hover .header__language--arrow {
    border-top: 10px solid #003a8f;
  }
}
@media only screen and (min-width: 767px) {
  .header__language:hover .header__language--select {
    color: #003a8f;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language {
    width: 130px;
    border-bottom-left-radius: 20px;
  }
}
.header__language.js-active {
  background-color: white;
}
.header__language.js-active .header__language--arrow {
  border-top: 0;
  border-bottom: 2.6666666667vw solid #003a8f;
}
@media only screen and (min-width: 767px) {
  .header__language.js-active .header__language--arrow {
    border-top: 0;
    border-bottom: 0.7320644217vw solid #003a8f;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language.js-active .header__language--arrow {
    border-top: 0;
    border-bottom: 10px solid #003a8f;
  }
}
.header__language.js-active .header__language--select {
  color: #003a8f;
}
.header__language--menu {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.header__language--wrapper {
  display: flex;
  padding: 3.0666666667vw 4.8vw 3.4666666667vw 6.1333333333vw;
  width: 100%;
  cursor: pointer;
  align-items: center;
}
@media only screen and (min-width: 767px) {
  .header__language--wrapper {
    padding: 1.0248901903vw 1.0980966325vw 0.878477306vw 1.0980966325vw;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language--wrapper {
    padding: 14px 15px 12px 15px;
  }
}
.header__language--wrapper:nth-child(2) {
  padding: 0 0 3.3333333333vw;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 767px) {
  .header__language--wrapper:nth-child(2) {
    padding: 0 0 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language--wrapper:nth-child(2) {
    padding: 0 0 18px;
  }
}
.header__language--wrapper:nth-child(2) .header__language--select {
  padding: 3.4666666667vw 0;
  display: block;
  width: 100%;
}
@media only screen and (min-width: 767px) {
  .header__language--wrapper:nth-child(2) .header__language--select {
    padding: 0.7320644217vw 0;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language--wrapper:nth-child(2) .header__language--select {
    padding: 10px 0;
  }
}
.header__language--wrapper:nth-child(2).js-default {
  display: none;
}
.header__language--icon {
  width: 5.4666666667vw;
  height: 5.4666666667vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .header__language--icon {
    width: 1.756954612vw;
    height: 1.756954612vw;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language--icon {
    width: 24px;
    height: 24px;
  }
}
.header__language--icon .on {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.header__language--icon.js-active .on {
  opacity: 1;
}
.header__language--icon.js-active .off {
  opacity: 0;
}
.header__language--select {
  width: 11.8666666667vw;
  height: auto;
  font-size: 5.3333333333vw;
  color: white;
  line-height: 1;
  text-align: center;
  font-weight: 800;
}
@media only screen and (min-width: 767px) {
  .header__language--select {
    width: 3.953147877vw;
    font-size: 1.756954612vw;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language--select {
    width: 54px;
    font-size: 24px;
  }
}
.header__language--arrow {
  border-top: 2.6666666667vw solid white;
  border-left: 1.5333333333vw solid transparent;
  border-right: 1.5333333333vw solid transparent;
  width: 3.0666666667vw;
}
@media only screen and (min-width: 767px) {
  .header__language--arrow {
    border-top: 0.7320644217vw solid white;
    border-left: 0.439238653vw solid transparent;
    border-right: 0.439238653vw solid transparent;
    width: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .header__language--arrow {
    border-top: 10px solid white;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    width: 12px;
  }
}

.footer {
  position: relative;
  background-color: black;
}
.footer-sns {
  background-color: rgb(34, 34, 34);
  padding: 11.3333333333vw 0 10.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .footer-sns {
    padding: 3.7335285505vw 0 3.513909224vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-sns {
    padding: 51px 0 48px;
  }
}
.footer-sns__text {
  font-size: 4.2666666667vw;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-align: center;
}
@media only screen and (min-width: 767px) {
  .footer-sns__text {
    font-size: 1.1713030747vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-sns__text {
    font-size: 16px;
  }
}
.footer-sns__list {
  display: flex;
  flex-direction: row;
  column-gap: 4.6666666667vw;
  justify-content: center;
  margin-top: 6.6666666667vw;
  flex-wrap: wrap;
  padding: 0 4vw;
  row-gap: 4vw;
}
@media only screen and (min-width: 767px) {
  .footer-sns__list {
    column-gap: 1.6105417277vw;
    margin-top: 1.8301610542vw;
    padding: 0;
    row-gap: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-sns__list {
    column-gap: 22px;
    margin-top: 25px;
  }
}
.footer-sns__link {
  display: block;
  width: 12.5333333333vw;
  transition: all 300ms ease;
}
@media only screen and (min-width: 767px) {
  .footer-sns__link:hover {
    opacity: 0.5;
  }
}
@media only screen and (min-width: 767px) {
  .footer-sns__link {
    width: 3.8067349927vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-sns__link {
    width: 52px;
  }
}
.footer-online {
  background-color: rgb(25, 25, 25);
  padding: 5.3333333333vw 0 5.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .footer-online {
    padding: 0;
    display: flex;
    justify-content: center;
    column-gap: 0.3660322108vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-online {
    column-gap: 5px;
  }
}
.footer-online__anchor {
  display: block;
  padding: 5.0666666667vw 8.8vw 2.9333333333vw;
}
@media only screen and (max-width: 767px) {
  .footer-online__anchor:last-of-type {
    padding: 2.9333333333vw 8.8vw 5.0666666667vw;
  }
}
@media only screen and (min-width: 767px) {
  .footer-online__anchor {
    padding: 2.3426061493vw 2.7818448023vw 2.3426061493vw 2.7818448023vw;
  }
  .footer-online__anchor:first-of-type {
    margin-left: 3.2210834553vw;
  }
  .footer-online__anchor:hover .footer-online__anchor--text {
    color: #0090ff;
  }
  .footer-online__anchor:hover .footer-online__anchor--text:before {
    display: block;
    content: "";
    background: url(../img/footer/arrow_h.png?v=20251022115830) no-repeat;
    background-size: cover;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-online__anchor {
    padding: 32px 38px 32px 38px;
  }
  .footer-online__anchor:first-of-type {
    margin-left: 44px;
  }
}
.footer-online__anchor--text {
  font-size: 4.2666666667vw;
  font-weight: 500;
  color: white;
  margin-inline: auto;
  width: 100%;
  margin-inline: auto;
  padding-right: 2.4vw;
  position: relative;
  line-height: 1.6;
  text-align: left;
}
@media only screen and (min-width: 767px) {
  .footer-online__anchor--text {
    font-size: 1.1713030747vw;
    padding-right: 1.6837481698vw;
    line-height: 1;
    text-align: center;
    transition: all 0.3s ease;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-online__anchor--text {
    font-size: 16px;
    padding-right: 23px;
  }
}
.footer-online__anchor--text.sp-none {
  display: none;
}
@media only screen and (min-width: 767px) {
  .footer-online__anchor--text.sp-none {
    display: block;
  }
}
.footer-online__anchor--text.pc-none {
  display: block;
}
@media only screen and (min-width: 767px) {
  .footer-online__anchor--text.pc-none {
    display: none;
  }
}
.footer-online__anchor--text:before {
  display: block;
  content: "";
  position: absolute;
  width: 2.4vw;
  height: 3.4666666667vw;
  background: url(../img/footer/arrow.png?v=20251022115830) no-repeat;
  background-size: cover;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
}
@media only screen and (min-width: 767px) {
  .footer-online__anchor--text:before {
    width: 0.6588579795vw;
    height: 0.9516837482vw;
    transition: all 0.3s ease;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-online__anchor--text:before {
    width: 9px;
    height: 13px;
  }
}
.footer-copyright {
  padding: 12.2666666667vw 0 7.7333333333vw;
}
@media only screen and (min-width: 767px) {
  .footer-copyright {
    padding: 3.074670571vw 0 2.3426061493vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright {
    padding: 42px 0 32px;
  }
}
.footer-copyright__logo {
  width: 51.6vw;
  margin: 0 auto;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__logo {
    width: 14.2752562225vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__logo {
    width: 195px;
  }
}
.footer-copyright__logo a {
  display: block;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__logo a {
    transition: all 300ms ease;
  }
}
@media only screen and (min-width: 767px) and (min-width: 767px) {
  .footer-copyright__logo a:hover {
    opacity: 0.5;
  }
}
.footer-copyright__language {
  width: 61.3333333333vw;
  height: 10.6666666667vw;
  position: relative;
  margin-top: 6.8vw;
  margin-inline: auto;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__language {
    width: 15.5197657394vw;
    height: 3.2210834553vw;
    margin-top: 2.2693997072vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__language {
    width: 212px;
    height: 44px;
    margin-top: 31px;
  }
}
.footer-copyright__language--title {
  font-size: 2.9333333333vw;
  color: #555555;
  letter-spacing: 0.12em;
  text-align: center;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__language--title {
    font-size: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__language--title {
    font-size: 12px;
  }
}
.footer-copyright__language--list {
  display: flex;
  flex-direction: row;
  column-gap: 6.1333333333vw;
  justify-content: center;
  margin-top: 2.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__language--list {
    column-gap: 1.6105417277vw;
    margin-top: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__language--list {
    column-gap: 22px;
    margin-top: 12px;
  }
}
.footer-copyright__language--item {
  font-size: 4.2666666667vw;
  font-weight: 700;
  color: #555555;
  letter-spacing: 0.12em;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__language--item {
    font-size: 1.317715959vw;
    transition: all 300ms ease;
  }
  .footer-copyright__language--item:hover {
    color: white;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__language--item {
    font-size: 18px;
  }
}
.footer-copyright__language--item.js-active {
  color: white;
}
.footer-copyright__language:before {
  display: block;
  content: "";
  position: absolute;
  width: 1.3333333333vw;
  height: 100%;
  border: 0.2666666667vw solid #555555;
  border-right: 0;
  top: 0.2666666667vw;
  left: 0;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__language:before {
    width: 0.3660322108vw;
    border: 0.0732064422vw solid #555555;
    border-right: 0;
    top: 0.0732064422vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__language:before {
    width: 5px;
    border: 1px solid #555555;
    border-right: 0;
    top: 1px;
  }
}
.footer-copyright__language:after {
  display: block;
  content: "";
  position: absolute;
  width: 1.3333333333vw;
  height: 100%;
  border: 0.2666666667vw solid #555555;
  border-left: 0;
  top: 0.2666666667vw;
  right: 0;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__language:after {
    width: 0.3660322108vw;
    border: 0.0732064422vw solid #555555;
    border-left: 0;
    top: 0.0732064422vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__language:after {
    width: 5px;
    border: 1px solid #555555;
    border-left: 0;
    top: 1px;
  }
}
.footer-copyright__text {
  font-size: 2.6666666667vw;
  letter-spacing: 0.12em;
  color: #aaaaaa;
  text-align: center;
  margin-top: 4.8vw;
  line-height: 1.5;
  padding: 0 4vw;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__text {
    font-size: 0.7320644217vw;
    margin-top: 1.9033674963vw;
    padding: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__text {
    font-size: 10px;
    margin-top: 26px;
  }
}
.footer-copyright__wrapper {
  margin-top: 12.4vw;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__wrapper {
    margin-top: 2.7818448023vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__wrapper {
    margin-top: 38px;
  }
}
.footer-copyright__company {
  font-size: 2.4vw;
  letter-spacing: 0.03em;
  text-align: center;
  line-height: 1.6;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__company {
    font-size: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__company {
    font-size: 10px;
  }
}
.footer-copyright__company:not(:first-child) {
  margin-top: 2.4vw;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__company:not(:first-child) {
    margin-top: 0.2196193265vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__company:not(:first-child) {
    margin-top: 3px;
  }
}
.footer-copyright__company img {
  width: 12.5333333333vw;
  margin: 0 0.8vw 0 1.2vw;
  vertical-align: sub;
  display: inline-block;
  line-height: 1.4;
}
@media only screen and (min-width: 767px) {
  .footer-copyright__company img {
    width: 3.513909224vw;
    margin: 0 0.2928257687vw;
  }
}
@media only screen and (min-width: 1367px) {
  .footer-copyright__company img {
    width: 48px;
    margin: 0 4px;
  }
}

@media only screen and (min-width: 767px) {
  .en .footer-online__anchor:first-of-type {
    margin-left: 0;
  }
}

.loading.js-loaded {
  opacity: 0;
}
.loading.js-loaded .loading-animate {
  opacity: 0;
}

@keyframes loading-fade {
  to {
    opacity: 1;
  }
}
.loading {
  background-color: #003a8f;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: fixed;
  z-index: 999999;
  top: 0;
  left: 0;
  pointer-events: none;
  transition: 0.5s;
  transition: opacity 1s;
  opacity: 1;
}
.loading-animate {
  font-size: 7.7333333333vw;
  font-weight: 800;
  transition: 0.3s;
  position: relative;
  z-index: 2;
  transition: all 0.2s ease;
}
@media only screen and (min-width: 767px) {
  .loading-animate {
    font-size: 2.3426061493vw;
  }
}
@media only screen and (min-width: 1367px) {
  .loading-animate {
    font-size: 32px;
  }
}
.loading-animate span {
  opacity: 0;
  display: inline-block;
  animation: loading-fade 0.7s infinite alternate;
}
.loading-animate span:nth-child(1) {
  animation-delay: 0s;
}
.loading-animate span:nth-child(2) {
  animation-delay: 0.1s;
}
.loading-animate span:nth-child(3) {
  animation-delay: 0.2s;
}
.loading-animate span:nth-child(4) {
  animation-delay: 0.3s;
}
.loading-animate span:nth-child(5) {
  animation-delay: 0.4s;
}
.loading-animate span:nth-child(6) {
  animation-delay: 0.5s;
}
.loading-animate span:nth-child(7) {
  animation-delay: 0.6s;
}

.modal.js-show {
  pointer-events: auto;
  opacity: 1;
  will-change: opacity;
}

.modal {
  width: 100vw;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  opacity: 0;
  transition: 0.6s;
  pointer-events: none;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  z-index: 9999;
  overscroll-behavior-y: contain;
  overflow-y: scroll;
  will-change: transform;
  transform: scale(1);
}
.modal-inner {
  position: relative;
  width: 100%;
  height: 100.1%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal-bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  z-index: -1;
}
@media only screen and (min-width: 767px) {
  .modal-bg.ip-goods {
    width: 100%;
  }
}
.modal-box {
  width: 100%;
  position: relative;
  position: static;
}
@media only screen and (min-width: 767px) {
  .modal-box {
    width: 58.5651537335vw;
    z-index: 100;
  }
}
.modal-box .modal-goods {
  display: none;
  height: 100.1%;
  padding-top: 24vw;
}
@media only screen and (min-width: 767px) {
  .modal-box .modal-goods {
    padding-top: 0;
  }
}
.modal-box.ip-goods {
  width: 100%;
  height: 100.1%;
  z-index: 2;
  overflow-y: scroll;
  overscroll-behavior-y: contain;
  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow-x: hidden;
}
.modal-box.ip-goods::-webkit-scrollbar {
  display: none;
}
@media only screen and (min-width: 767px) {
  .modal-box.ip-goods {
    width: 100%;
    height: 100%;
  }
}
.modal-box.ip-goods .modal-goods {
  display: block;
  place-content: center;
}
.modal-box.js-info-open {
  padding-top: 0;
  overscroll-behavior-y: contain;
}
@media only screen and (min-width: 767px) {
  .modal-box.js-info-open {
    width: 100%;
  }
}
.modal-box.js-info-open .modal-info {
  display: block;
}
@media only screen and (min-width: 767px) {
  .modal-box.js-info-open .modal-info {
    width: 100%;
  }
}
.modal-iframe {
  width: 100%;
  height: 56.2666666667vw;
}
@media only screen and (min-width: 767px) {
  .modal-iframe {
    height: 35.1390922401vw;
  }
}
.modal-closebtn {
  width: 10.6666666667vw;
  position: absolute;
  top: 6.6666666667vw;
  right: 4vw;
  transition: all 300ms ease;
  z-index: 110;
}
.modal-closebtn img {
  filter: drop-shadow(0.2666666667vw 0.2666666667vw 4vw rgba(0, 0, 0, 0.8));
}
@media only screen and (min-width: 767px) {
  .modal-closebtn {
    width: 3.6603221083vw;
    top: 2.4158125915vw;
    bottom: auto;
    right: 3.1478770132vw;
    left: auto;
    cursor: pointer;
  }
  .modal-closebtn:hover {
    transform: scale(1.1);
  }
}
@media only screen and (min-width: 1367px) {
  .modal-closebtn {
    width: 50px;
    top: 33px;
    bottom: auto;
    right: 43px;
    left: auto;
  }
}
.modal-close__text {
  position: absolute;
  width: 100%;
  font-size: 1.8666666667vw;
  letter-spacing: 0.2em;
  text-align: center;
  padding-top: 1.6vw;
  font-weight: 300;
  filter: drop-shadow(0 0 2vw rgba(0, 0, 0, 0.8));
}
@media only screen and (min-width: 767px) {
  .modal-close__text {
    font-size: 0.7320644217vw;
    padding-top: 0.878477306vw;
    filter: none;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-close__text {
    font-size: 10px;
    padding-top: 12px;
  }
}

@keyframes arrow-hide-animation {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes pic-scale-animation {
  0% {
    opacity: 0;
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@media only screen and (min-width: 767px) {
  .modal.js-show .modal-goods__selection,
  .modal.js-show .modal-goods__info {
    pointer-events: auto;
  }
}

@media only screen and (min-width: 767px) {
  .modal-goods {
    height: 100%;
  }
}
@media only screen and (min-width: 767px) {
  .modal-goods__wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    column-gap: 2.4158125915vw;
    align-items: start;
    height: 100%;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__wrapper {
    column-gap: 33px;
  }
}
.modal-goods__pic {
  margin: 0 auto;
  width: 92vw;
  border-radius: 2.6666666667vw;
  position: relative;
  overflow: hidden;
  z-index: 3;
}
@media only screen and (min-width: 767px) {
  .modal-goods__pic {
    width: 35.8711566618vw;
    height: 35.7247437775vw;
    margin: 0;
    flex-shrink: 0;
    border-radius: 1.4641288433vw;
    position: fixed;
    top: 50%;
    left: calc(50% - 23.4260614934vw);
    transform: translate(-50%, -50%);
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__pic {
    width: 490px;
    height: 488px;
    margin-left: 0;
    border-radius: 20px;
    left: calc(50% - 320px);
  }
}
.modal-goods__pic img {
  opacity: 0;
}
.modal-goods__pic.js--show img {
  animation: pic-scale-animation 400ms ease-in-out forwards;
  animation-delay: 200ms;
}
.modal-goods__pic--prev {
  position: absolute;
  width: 7.4666666667vw;
  height: 7.4666666667vw;
  top: 50%;
  left: 2vw;
  background-color: rgba(0, 0, 0, 0.35);
  border-radius: 50%;
}
.modal-goods__pic--prev.js--nonactive:before {
  display: block;
  content: "";
  opacity: 0.25;
  pointer-events: none;
}
.modal-goods__pic--prev.js--hide {
  animation: arrow-hide-animation 1s ease forwards;
}
@media only screen and (min-width: 767px) {
  .modal-goods__pic--prev {
    display: none;
  }
}
.modal-goods__pic--prev:before {
  display: block;
  content: "";
  background: url(../img/common/arrow_circle.png?v=20251022115830) no-repeat;
  width: 100%;
  height: 100%;
  background-size: 100% 100%;
}
.modal-goods__pic--next {
  position: absolute;
  width: 7.4666666667vw;
  height: 7.4666666667vw;
  top: 50%;
  right: 2vw;
  background-color: rgba(0, 0, 0, 0.35);
  border-radius: 50%;
}
.modal-goods__pic--next.js--hide {
  animation: arrow-hide-animation 1s ease forwards;
}
.modal-goods__pic--next.js--nonactive:before {
  display: block;
  content: "";
  opacity: 0.25;
  pointer-events: none;
}
@media only screen and (min-width: 767px) {
  .modal-goods__pic--next {
    display: none;
  }
}
.modal-goods__pic--next:before {
  display: block;
  content: "";
  background: url(../img/common/arrow_circle.png?v=20251022115830) no-repeat;
  width: 100%;
  height: 100%;
  transform: scale(-1, 1);
  background-size: 100% 100%;
}
@media only screen and (max-width: 767px) {
  .modal-goods__clickable {
    display: none;
  }
}
@media only screen and (min-width: 767px) {
  .modal-goods__clickable {
    position: fixed;
    left: 50%;
    top: -1.4641288433vw;
    width: calc(100% - 14.6412884334vw);
    height: 100%;
    transform: translate3d(-50%, 0, 0);
  }
}
@media only screen and (min-width: 767px) and (min-width: 1367px) {
  .modal-goods__clickable {
    width: 1160px;
  }
}
.modal-goods__box {
  position: relative;
  padding-bottom: 32vw;
}
@media only screen and (min-width: 767px) {
  .modal-goods__box {
    display: flex;
    flex-flow: wrap-reverse;
    padding-top: calc((100% - 63.6896046852vw) / 2);
    padding-bottom: calc((100% - 63.6896046852vw) / 2);
    margin-left: 38.2869692533vw;
    z-index: 2;
    pointer-events: none;
    width: 45.3879941435vw;
  }
  .modal-goods__box::-webkit-scrollbar-track {
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 0.2928257687vw;
  }
  .modal-goods__box::-webkit-scrollbar {
    width: 0.5856515373vw;
    background-color: rgba(255, 255, 255, 0.1);
  }
  .modal-goods__box::-webkit-scrollbar-thumb {
    background-color: rgb(255, 255, 255);
    border-radius: 0.2928257687vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__box {
    width: 620px;
    padding-top: calc((100% - 1030px) / 2);
    padding-bottom: calc((100% - 1030px) / 2);
    margin-left: 523px;
  }
  .modal-goods__box::-webkit-scrollbar-track {
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
  }
  .modal-goods__box::-webkit-scrollbar {
    width: 8px;
    background-color: rgba(255, 255, 255, 0.1);
  }
  .modal-goods__box::-webkit-scrollbar-thumb {
    background-color: rgb(255, 255, 255);
    border-radius: 4px;
  }
}
.modal-goods__swiper {
  mask-image: linear-gradient(90deg, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 85%, rgba(0, 0, 0, 0) 100%);
  margin: 0 0;
}
.modal-goods__swiper-slide {
  width: 16.1333333333vw;
  height: 16.1333333333vw;
  border-radius: 2.6666666667vw;
  margin-right: 1.3333333333vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper-slide {
    width: 5.9297218155vw;
    height: 5.9297218155vw;
    border-radius: 0.878477306vw;
    margin-right: 0.8052708638vw;
    cursor: pointer;
  }
  .modal-goods__swiper-slide img {
    transition: all 300ms ease;
  }
  .modal-goods__swiper-slide:hover .modal-goods__swiper--thumb img {
    opacity: 0.5;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper-slide {
    width: 81px;
    height: 81px;
    border-radius: 12px;
    margin-right: 11px;
  }
}
.modal-goods__swiper-slide.js-active:before {
  display: block;
  content: "";
  opacity: 1;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
  border: 0.4vw solid #119aff;
  border-radius: 2vw;
  opacity: 1;
  z-index: 1;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper-slide.js-active:before {
    border: 0.2196193265vw solid #119aff;
    border-radius: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper-slide.js-active:before {
    border: 3px solid #119aff;
    border-radius: 12px;
  }
}
.modal-goods__swiper-slide.js-active .modal-goods__swiper--thumb {
  opacity: 0.5;
}
.modal-goods__swiper-slide:last-child {
  margin-right: 9.8666666667vw;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper-slide:last-child {
    margin-right: 3.953147877vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper-slide:last-child {
    margin-right: 54px;
  }
}
.modal-goods__swiper--thumb {
  background-color: #202020;
  border-radius: 2.6666666667vw;
  transition: all 300ms ease;
  height: 100%;
  overflow: hidden;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--thumb {
    border-radius: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--thumb {
    border-radius: 12px;
  }
}
.modal-goods__swiper--control {
  position: relative;
  margin-top: 2.8vw;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--control {
    width: 100%;
    height: 1.5373352855vw;
    padding: 0 3.6603221083vw;
    margin-top: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--control {
    height: 21px;
    padding: 0 50px;
    margin-top: 10px;
  }
}
.modal-goods__swiper--scrollbar {
  position: relative !important;
  height: 0.2666666667vw;
  background-color: rgba(255, 255, 255, 0.3);
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--scrollbar {
    height: 0.0732064422vw;
    display: block !important;
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--scrollbar {
    height: 1px;
  }
}
.modal-goods__swiper--scrollbar .swiper-scrollbar-bar {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  height: 0.5333333333vw;
  background-color: #cccccc;
  border-radius: 20px;
  transform: translate3d(0, -50%, 0);
}
.modal-goods__swiper--scrollbar .swiper-scrollbar-bar::before {
  content: "";
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-bar {
    height: 0.2196193265vw;
    transition: all 0.2s;
    border-radius: 0px;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-bar {
    height: 3px;
  }
}
.modal-goods__swiper--scrollbar .swiper-scrollbar-drag {
  height: 0.5333333333vw;
  top: -0.1333333333vw;
  background: transparent;
  cursor: grab;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag {
    height: 0.2928257687vw;
    top: -0.0732064422vw;
  }
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:before {
    display: block;
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 0.2196193265vw;
    height: 0.2196193265vw;
    transform: translate3d(-50%, -50%, 0) scale(0.8);
    border-radius: 100%;
    background-color: #cccccc;
    transition: all 0.2s;
  }
}
@media only screen and (min-width: 767px) and (min-width: 1367px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:before {
    width: 3px;
    height: 3px;
  }
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:after {
    display: block;
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    width: 0.2196193265vw;
    height: 0.2196193265vw;
    transform: translate3d(50%, -50%, 0) scale(0.8);
    border-radius: 100%;
    background-color: #cccccc;
    transition: all 0.2s;
  }
}
@media only screen and (min-width: 767px) and (min-width: 1367px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:after {
    width: 3px;
    height: 3px;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag {
    height: 4px;
    top: -1px;
  }
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:has(span:hover):before, .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:has(span:active):before {
    display: block;
    content: "";
    transform: translate3d(-25%, -50%, 0) scale(1.8);
  }
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:has(span:hover):after, .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:has(span:active):after {
    display: block;
    content: "";
    transform: translate3d(25%, -50%, 0) scale(1.8);
  }
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:has(span:hover) .swiper-scrollbar-bar, .modal-goods__swiper--scrollbar .swiper-scrollbar-drag:has(span:active) .swiper-scrollbar-bar {
    transform: translate3d(0, -50%, 0) scale(1, 2);
  }
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag span {
    position: absolute;
    width: 100%;
    height: 2.196193265vw;
    left: 50%;
    top: 50%;
    transform: translate3d(-50%, -50%, 0);
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--scrollbar .swiper-scrollbar-drag span {
    height: 30px;
  }
}
.modal-goods__swiper--prev {
  display: none;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--prev {
    display: block;
    width: 2.3426061493vw;
    height: 2.3426061493vw;
    top: 50%;
    transform: translateY(-50%);
    margin-top: 0;
    left: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--prev {
    width: 32px;
    height: 32px;
  }
}
.modal-goods__swiper--prev:after {
  display: block;
  content: "";
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--prev:after {
    width: 2.3426061493vw;
    height: 2.3426061493vw;
    background: url(../img/common/arrow.png?v=20251022115830) no-repeat;
    background-size: cover;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--prev:after {
    width: 32px;
    height: 32px;
  }
}
.modal-goods__swiper--prev.js--nonactive {
  opacity: 0.25;
  pointer-events: none;
}
.modal-goods__swiper--next {
  display: none;
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--next {
    display: block;
    width: 2.3426061493vw;
    height: 2.3426061493vw;
    top: 50%;
    transform: translateY(-50%);
    margin-top: 0;
    right: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--next {
    width: 32px;
    height: 32px;
  }
}
.modal-goods__swiper--next:after {
  display: block;
  content: "";
}
@media only screen and (min-width: 767px) {
  .modal-goods__swiper--next:after {
    width: 2.3426061493vw;
    height: 2.3426061493vw;
    background: url(../img/common/arrow_next.png?v=20251022115830) no-repeat;
    background-size: cover;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__swiper--next:after {
    width: 32px;
    height: 32px;
  }
}
.modal-goods__swiper--next.js--nonactive {
  opacity: 0.25;
  pointer-events: none;
}
.modal-goods__selection {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0 4vw;
  margin-top: 4.5333333333vw;
  width: 100vw;
  z-index: 2;
}
@media only screen and (min-width: 767px) {
  .modal-goods__selection {
    padding: 0;
    margin-top: 1.9033674963vw;
    width: 42.4597364568vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__selection {
    margin-top: 26px;
    width: 580px;
  }
}
.modal-goods__selection--total {
  width: 16.1333333333vw;
  height: 16.1333333333vw;
  background-color: rgba(255, 255, 255, 0.1);
  font-size: 3.2vw;
  letter-spacing: 0.08em;
  text-align: center;
  border-radius: 2.6666666667vw;
  margin-right: 1.3333333333vw;
  flex-shrink: 0;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .modal-goods__selection--total {
    width: 5.9297218155vw;
    height: 5.9297218155vw;
    font-size: 1.0248901903vw;
    border-radius: 0.878477306vw;
    margin-right: 0.8052708638vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__selection--total {
    width: 81px;
    height: 81px;
    font-size: 14px;
    border-radius: 12px;
    margin-right: 11px;
  }
}
.modal-goods__selection--total > span {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.modal-goods__selection--list {
  overflow: hidden;
  display: flex;
  flex-direction: row;
  mask-image: linear-gradient(90deg, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 70%, rgba(0, 0, 0, 0) 100%);
}
.modal-goods__selection--thumb {
  width: 16.1333333333vw;
  height: 16.1333333333vw;
  background-color: white;
  border-radius: 2.6666666667vw;
  margin-right: 1.3333333333vw;
  position: relative;
  flex-shrink: 0;
}
@media only screen and (min-width: 767px) {
  .modal-goods__selection--thumb {
    width: 5.9297218155vw;
    height: 5.9297218155vw;
    border-radius: 0.878477306vw;
    margin-right: 0.8052708638vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__selection--thumb {
    width: 81px;
    height: 81px;
    border-radius: 12px;
    margin-right: 11px;
  }
}
.modal-goods__selection--thumb.js-active:before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  pointer-events: none;
  border: 0.4vw solid #119aff;
  border-radius: 2vw;
  opacity: 1;
}
@media only screen and (min-width: 767px) {
  .modal-goods__selection--thumb.js-active:before {
    border: 0.2196193265vw solid #119aff;
    border-radius: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__selection--thumb.js-active:before {
    border: 3px solid #119aff;
    border-radius: 12px;
  }
}
.modal-goods__info {
  position: relative;
  width: 92vw;
  margin-inline: auto;
  z-index: 2;
}
@media only screen and (min-width: 767px) {
  .modal-goods__info {
    width: 42.4597364568vw;
    margin: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__info {
    width: 580px;
  }
}
.modal-goods__limited {
  display: block;
  background-color: #0059ff;
  border-radius: 2.5333333333vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.1em;
  width: fit-content;
  height: 5.0666666667vw;
  padding: 1.0666666667vw 3.4666666667vw;
  margin-top: 7.0666666667vw;
}
@media only screen and (min-width: 767px) {
  .modal-goods__limited {
    height: 1.9033674963vw;
    font-size: 1.0248901903vw;
    margin-top: 0;
    padding: 0.3660322108vw 0.9516837482vw 0.5124450952vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__limited {
    height: 26px;
    font-size: 14px;
    padding: 5px 13px 7px;
  }
}
.modal-goods__limited.red {
  background-color: #bb0007;
}
.modal-goods__title {
  margin-top: 2.8vw;
  font-size: 5.6vw;
  letter-spacing: 0.08em;
  line-height: 1.2380952381;
  font-weight: 800;
  word-break: break-all;
}
@media only screen and (min-width: 767px) {
  .modal-goods__title {
    font-size: 2.0497803807vw;
    margin-top: 1.0248901903vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__title {
    font-size: 28px;
    margin-top: 14px;
  }
}
.modal-goods__type {
  margin-top: 1.6vw;
  font-size: 3.2vw;
  letter-spacing: 0.12em;
  line-height: 1.5833333333;
}
@media only screen and (min-width: 767px) {
  .modal-goods__type {
    font-size: 1.1713030747vw;
    margin-top: 0.439238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__type {
    font-size: 16px;
    margin-top: 6px;
  }
}
.modal-goods__summary {
  margin-top: 3.3333333333vw;
  font-size: 3.2vw;
  letter-spacing: 0.12em;
  line-height: 1.5833333333;
  font-weight: 300;
}
@media only screen and (min-width: 767px) {
  .modal-goods__summary {
    font-size: 1.1713030747vw;
    margin-top: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__summary {
    font-size: 16px;
    margin-top: 12px;
  }
}
.modal-goods__remark {
  margin-top: 1.4666666667vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.12em;
  line-height: 1.4;
  font-weight: 300;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .modal-goods__remark {
    font-size: 0.878477306vw;
    margin-top: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__remark {
    font-size: 12px;
    margin-top: 10px;
  }
}
.modal-goods__accordion--wrap {
  background-color: rgba(255, 255, 255, 0.05);
  border-radius: 5.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .modal-goods__accordion--wrap {
    cursor: pointer;
    border-radius: 1.2811127379vw;
    transition: all 300ms ease;
  }
  .modal-goods__accordion--wrap:hover {
    background-color: rgba(255, 255, 255, 0.25);
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__accordion--wrap {
    border-radius: 17.5px;
  }
}
.modal-goods__accordion--wrap.active:hover {
  background-color: rgba(255, 255, 255, 0.05);
}
.modal-goods__accordion--body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 300ms ease;
}
.modal-goods__accordion--details {
  margin-top: 5.4666666667vw;
  width: 92vw;
  align-content: center;
  text-align: center;
  font-size: 3.2vw;
  padding: 3.8666666667vw 0;
  border-radius: 5.3333333333vw;
  transition: all 300ms ease;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .modal-goods__accordion--details {
    margin-top: 1.4641288433vw;
    width: 100%;
    font-size: 1.0248901903vw;
    padding: 0.8052708638vw 0;
    border-radius: 1.2811127379vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__accordion--details {
    margin-top: 20px;
    width: 100%;
    font-size: 14px;
    padding: 11px 0;
    border-radius: 17.5px;
  }
}
.modal-goods__accordion--details.active .modal-goods__accordion--plus {
  display: none;
}
.modal-goods__accordion--details.active .modal-goods__accordion--minus {
  display: inline-flex;
}
.modal-goods__accordion--plus {
  width: 2.4vw;
  font-size: 4.2666666667vw;
  margin-left: 1.4666666667vw;
  display: inline-flex;
}
@media only screen and (min-width: 767px) {
  .modal-goods__accordion--plus {
    width: 0.8052708638vw;
    font-size: 1.317715959vw;
    margin-left: 0.439238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__accordion--plus {
    width: 11px;
    font-size: 18px;
    margin-left: 6px;
  }
}
.modal-goods__accordion--minus {
  width: 2.4vw;
  font-size: 4.2666666667vw;
  margin-left: 1.4666666667vw;
  display: none;
}
@media only screen and (min-width: 767px) {
  .modal-goods__accordion--minus {
    width: 0.8052708638vw;
    font-size: 1.317715959vw;
    margin-left: 0.439238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__accordion--minus {
    width: 11px;
    font-size: 18px;
    margin-left: 6px;
  }
}
.modal-goods__accordion--content {
  font-size: 3.2vw;
  padding: 3.8666666667vw 4vw 3.8666666667vw;
  line-height: 1.5;
  width: 100%;
  margin-inline: auto;
  border-top: 0.2666666667vw solid rgba(255, 255, 255, 0.05);
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .modal-goods__accordion--content {
    font-size: 1.0248901903vw;
    padding: 1.317715959vw 1.5373352855vw 1.6837481698vw;
    border-top: 0.1464128843vw solid rgba(255, 255, 255, 0.05);
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__accordion--content {
    font-size: 14px;
    padding: 18px 21px 23px;
    border-top: 2px solid rgba(255, 255, 255, 0.05);
  }
}
.modal-goods__control {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 75.7333333333vw;
  height: 15.4666666667vw;
  background-color: rgba(0, 0, 0, 0.75);
  border-top-right-radius: 5.3333333333vw;
  border-top-left-radius: 5.3333333333vw;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  z-index: 10;
}
@media only screen and (min-width: 767px) {
  .modal-goods__control {
    width: 19.0336749634vw;
    height: 4.2459736457vw;
    border-top-right-radius: 1.4641288433vw;
    border-top-left-radius: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__control {
    width: 260px;
    height: 58px;
    border-top-right-radius: 20px;
    border-top-left-radius: 20px;
  }
}
.modal-goods__control--prev {
  position: relative;
  font-size: 4.2666666667vw;
  padding: 6.2666666667vw 7.3333333333vw 4vw 10.8vw;
  display: block;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .modal-goods__control--prev {
    font-size: 1.1713030747vw;
    padding: 1.6837481698vw 1.4641288433vw 1.4641288433vw 2.4158125915vw;
    transition: all 300ms ease;
  }
  .modal-goods__control--prev:hover {
    color: white;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__control--prev {
    font-size: 16px;
    padding: 23px 20px 20px 33px;
  }
}
.modal-goods__control--prev:before {
  display: block;
  content: "";
  background-color: white;
  position: absolute;
  width: 0.2666666667vw;
  height: 4.5333333333vw;
  right: 0;
  top: 6.2666666667vw;
}
@media only screen and (min-width: 767px) {
  .modal-goods__control--prev:before {
    width: 0.0732064422vw;
    height: 1.2445095168vw;
    top: 1.6105417277vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__control--prev:before {
    width: 1px;
    height: 17px;
    top: 22px;
  }
}
.modal-goods__control--next {
  position: relative;
  font-size: 4.2666666667vw;
  padding: 6.2666666667vw 12vw 4vw 7.8666666667vw;
  display: block;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .modal-goods__control--next {
    font-size: 1.1713030747vw;
    padding: 1.6837481698vw 2.1229868228vw 1.4641288433vw 2.3426061493vw;
    transition: all 300ms ease;
  }
  .modal-goods__control--next:hover {
    color: white;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__control--next {
    font-size: 16px;
    padding: 23px 29px 20px 32px;
  }
}
.modal-goods__control--next:before {
  display: block;
  content: "";
  background-color: white;
  position: absolute;
  width: 0.2666666667vw;
  height: 4.5333333333vw;
  left: 0;
  top: 6.2666666667vw;
}
@media only screen and (min-width: 767px) {
  .modal-goods__control--next:before {
    width: 0.0732064422vw;
    height: 1.2445095168vw;
    top: 1.6105417277vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-goods__control--next:before {
    width: 1px;
    height: 17px;
    top: 22px;
  }
}

.en .modal-goods__control,
.cn .modal-goods__control,
.kr .modal-goods__control {
  width: max-content;
  column-gap: 3.6vw;
}
@media only screen and (min-width: 767px) {
  .en .modal-goods__control,
  .cn .modal-goods__control,
  .kr .modal-goods__control {
    column-gap: 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .en .modal-goods__control,
  .cn .modal-goods__control,
  .kr .modal-goods__control {
    column-gap: 18px;
  }
}

.modal-info {
  display: none;
  overflow-y: auto;
  overscroll-behavior: contain;
  overflow-x: hidden;
  height: 100svh;
  margin-inline: auto;
  padding-top: 19.7333333333vw;
  padding-bottom: 16vw;
}
.modal-info::-webkit-scrollbar {
  display: none;
}
@media only screen and (min-width: 767px) {
  .modal-info {
    width: 57.8330893119vw;
    margin-left: 0;
    height: 100vh;
    place-content: center;
    padding-top: 4.39238653vw;
    padding-bottom: 4.39238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info {
    width: 790px;
    margin-left: auto;
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.modal-info__content {
  margin-inline: auto;
  width: 84vw;
}
@media only screen and (min-width: 767px) {
  .modal-info__content {
    margin-top: 0;
    width: 52.7086383602vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content {
    padding: 0 40px;
    width: 720px;
  }
}
.modal-info__content--date {
  color: #cccccc;
  font-size: 3.7333333333vw;
  letter-spacing: 0.04em;
}
@media only screen and (min-width: 767px) {
  .modal-info__content--date {
    line-height: 1.625;
    font-size: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content--date {
    font-size: 20px;
  }
}
.modal-info__content--title {
  font-size: 5.6vw;
  letter-spacing: 0.04em;
  line-height: 1.2380952381;
  margin-top: 2.4vw;
  font-weight: 700;
}
@media only screen and (min-width: 767px) {
  .modal-info__content--title {
    line-height: 1.4;
    font-size: 2.3426061493vw;
    margin-top: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content--title {
    font-size: 32px;
    margin-top: 20px;
  }
}
.modal-info__content--main {
  overflow: hidden;
  width: 84vw;
  margin-top: 4.6666666667vw;
  border-radius: 1.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .modal-info__content--main {
    width: 52.7086383602vw;
    margin-top: 2.9282576867vw;
    border-radius: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content--main {
    width: 720px;
    margin-top: 40px;
    border-radius: 10px;
  }
}
.modal-info__content--pic {
  overflow: hidden;
  width: 84vw;
  margin-top: 4.6666666667vw;
  border-radius: 1.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .modal-info__content--pic {
    width: 52.7086383602vw;
    margin-top: 2.9282576867vw;
    border-radius: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content--pic {
    width: 720px;
    margin-top: 40px;
    border-radius: 10px;
  }
}
.modal-info__content--pic.small {
  border-radius: 0;
}
@media only screen and (min-width: 767px) {
  .modal-info__content--pic.small {
    width: 29.2825768668vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content--pic.small {
    width: 400px;
  }
}
.modal-info__content--text {
  font-size: 3.2vw;
  letter-spacing: 0.06em;
  line-height: 1.4166666667;
  margin-top: 4.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .modal-info__content--text {
    line-height: 1.375;
    font-size: 1.1713030747vw;
    margin-top: 2.9282576867vw;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content--text {
    font-size: 16px;
    margin-top: 40px;
  }
}
.modal-info__content--text [data-index] {
  display: inline-block;
  text-decoration: underline;
  text-underline-offset: 0.2666666667vw;
  cursor: pointer;
  transition: all 300ms ease;
}
@media only screen and (min-width: 767px) {
  .modal-info__content--text [data-index] {
    text-underline-offset: 0.2928257687vw;
  }
  .modal-info__content--text [data-index]:hover {
    text-decoration-color: transparent;
  }
}
@media only screen and (min-width: 1367px) {
  .modal-info__content--text [data-index] {
    font-size: 16px;
    text-underline-offset: 4px;
  }
}

.top-bg {
  background-color: #111111;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  pointer-events: none;
}
.top-bg--front {
  position: absolute;
  z-index: 10;
  background-color: transparent;
  opacity: 0;
}
.top-bg--front::before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 22.6666666667vw;
  background: url(../img/curve_bg_1.png?v=20251022115830) no-repeat;
  background-position: center bottom;
  background-size: cover;
  top: -18.6666666667vw;
  z-index: 4;
}
@media only screen and (min-width: 767px) {
  .top-bg--front::before {
    height: 8.4187408492vw;
    background: url(../img/curve_bg_1_pc.png?v=20251022115830) no-repeat;
    background-position: center bottom;
    background-size: cover;
    top: 0vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-bg--front::before {
    height: 115px;
  }
}
.top-bg--bluedot {
  width: 100%;
  height: 100%;
  position: absolute;
  background: url(../img/bg.png?v=20251022115830) repeat;
  background-size: 2vw 2vw;
  background-position: center top;
  z-index: 0;
}
@media only screen and (min-width: 767px) {
  .top-bg--bluedot {
    background-image: url(../img/bg_pc.png?v=20251022115830);
    background-size: 0.5124450952vw 0.5124450952vw;
  }
}
.top-bg--bluedot.animation {
  z-index: 1;
}
.top-curve {
  position: absolute;
  width: 100%;
  height: 22.6666666667vw;
  background: url(../img/curve_bg_1.png?v=20251022115830) no-repeat;
  background-position: center bottom;
  background-size: cover;
  top: -18.6666666667vw;
  z-index: 4;
}
@media only screen and (min-width: 767px) {
  .top-curve {
    height: 8.4187408492vw;
    background: url(../img/curve_bg_1_pc.png?v=20251022115830) no-repeat;
    background-position: center bottom;
    background-size: cover;
    top: 0vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-curve {
    height: 115px;
  }
}
.top-curve_2 {
  background-image: url(../img/curve_bg_2.png?v=20251022115830);
  z-index: 3;
}
@media only screen and (min-width: 767px) {
  .top-curve_2 {
    background-image: url(../img/curve_bg_2_pc.png?v=20251022115830);
  }
}
.top-curve_3 {
  background-image: url(../img/curve_bg_3.png?v=20251022115830);
  z-index: 2;
}
@media only screen and (min-width: 767px) {
  .top-curve_3 {
    background-image: url(../img/curve_bg_3_pc.png?v=20251022115830);
  }
}
.top-curve_4 {
  background-image: url(../img/curve_bg_4.png?v=20251022115830);
  z-index: 1;
}
@media only screen and (min-width: 767px) {
  .top-curve_4 {
    background-image: url(../img/curve_bg_4_pc.png?v=20251022115830);
  }
}
.top-curve__bottom {
  position: absolute;
  width: 100%;
  height: 22.6666666667vw;
  background: url(../img/curve_bg_bot.png?v=20251022115830) no-repeat;
  background-position: center top;
  background-size: cover;
  top: -5.3333333333vw;
  z-index: 2;
}
@media only screen and (min-width: 767px) {
  .top-curve__bottom {
    height: 8.4187408492vw;
    background: url(../img/curve_bg_bot_pc.png?v=20251022115830) no-repeat;
    background-position: center top;
    background-size: cover;
    top: -3.6603221083vw;
  }
}

.top-mv {
  position: relative;
  background-color: #003a8f;
}
.top-mv__language {
  width: 32vw;
  height: auto;
  background-color: #003a8f;
  position: absolute;
  top: 0;
  left: 0;
  border-bottom-right-radius: 3.2vw;
  z-index: 10;
}
@media only screen and (min-width: 767px) {
  .top-mv__language {
    width: 9.5168374817vw;
    border-bottom-right-radius: 1.4641288433vw;
    transition: all 300ms ease;
  }
  .top-mv__language:hover {
    background-color: white;
  }
  .top-mv__language:hover .top-mv__language--icon .on {
    opacity: 1;
  }
  .top-mv__language:hover .top-mv__language--icon .off {
    opacity: 0;
  }
  .top-mv__language:hover .top-mv__language--arrow {
    border-top: 2.6666666667vw solid #003a8f;
  }
}
@media only screen and (min-width: 767px) and (min-width: 767px) {
  .top-mv__language:hover .top-mv__language--arrow {
    border-top: 0.7320644217vw solid #003a8f;
  }
}
@media only screen and (min-width: 767px) and (min-width: 1367px) {
  .top-mv__language:hover .top-mv__language--arrow {
    border-top: 10px solid #003a8f;
  }
}
@media only screen and (min-width: 767px) {
  .top-mv__language:hover .top-mv__language--select {
    color: #003a8f;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language {
    width: 130px;
    border-bottom-right-radius: 20px;
  }
}
.top-mv__language.js-active {
  background-color: white;
}
.top-mv__language.js-active .top-mv__language--arrow {
  border-top: 0;
  border-bottom: 2.6666666667vw solid #003a8f;
}
@media only screen and (min-width: 767px) {
  .top-mv__language.js-active .top-mv__language--arrow {
    border-top: 0;
    border-bottom: 0.7320644217vw solid #003a8f;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language.js-active .top-mv__language--arrow {
    border-top: 0;
    border-bottom: 10px solid #003a8f;
  }
}
.top-mv__language.js-active .top-mv__language--select {
  color: #003a8f;
}
.top-mv__language--menu {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.top-mv__language--wrapper {
  display: flex;
  padding: 3.0666666667vw 4.8vw 3.4666666667vw 6.1333333333vw;
  width: 100%;
  cursor: pointer;
  align-items: center;
}
@media only screen and (min-width: 767px) {
  .top-mv__language--wrapper {
    padding: 1.0248901903vw 1.0980966325vw 0.878477306vw 1.0980966325vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language--wrapper {
    padding: 14px 15px 12px 15px;
  }
}
.top-mv__language--wrapper:nth-child(2) {
  padding: 0 0 3.3333333333vw;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 767px) {
  .top-mv__language--wrapper:nth-child(2) {
    padding: 0 0 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language--wrapper:nth-child(2) {
    padding: 0 0 18px;
  }
}
.top-mv__language--wrapper:nth-child(2) .top-mv__language--select {
  padding: 3.4666666667vw 0;
  display: block;
  width: 100%;
}
@media only screen and (min-width: 767px) {
  .top-mv__language--wrapper:nth-child(2) .top-mv__language--select {
    padding: 0.7320644217vw 0;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language--wrapper:nth-child(2) .top-mv__language--select {
    padding: 10px 0;
  }
}
.top-mv__language--wrapper:nth-child(2).js-default {
  display: none;
}
.top-mv__language--icon {
  width: 5.4666666667vw;
  height: 5.4666666667vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-mv__language--icon {
    width: 1.756954612vw;
    height: 1.756954612vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language--icon {
    width: 24px;
    height: 24px;
  }
}
.top-mv__language--icon .on {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.top-mv__language--icon.js-active .on {
  opacity: 1;
}
.top-mv__language--icon.js-active .off {
  opacity: 0;
}
.top-mv__language--select {
  width: 11.8666666667vw;
  height: auto;
  font-size: 5.3333333333vw;
  color: white;
  line-height: 1;
  text-align: center;
  font-weight: 800;
}
@media only screen and (min-width: 767px) {
  .top-mv__language--select {
    width: 3.953147877vw;
    font-size: 1.756954612vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language--select {
    width: 54px;
    font-size: 24px;
  }
}
.top-mv__language--arrow {
  border-top: 2.6666666667vw solid white;
  border-left: 1.5333333333vw solid transparent;
  border-right: 1.5333333333vw solid transparent;
  width: 3.0666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-mv__language--arrow {
    border-top: 0.7320644217vw solid white;
    border-left: 0.439238653vw solid transparent;
    border-right: 0.439238653vw solid transparent;
    width: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__language--arrow {
    border-top: 10px solid white;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    width: 12px;
  }
}
.top-mv__copy {
  position: absolute;
  right: 1.3333333333vw;
  bottom: 1.8666666667vw;
  display: flex;
  font-size: 2.4vw;
  z-index: 3;
}
@media only screen and (min-width: 767px) {
  .top-mv__copy {
    right: 0.5124450952vw;
    bottom: 0.7320644217vw;
    font-size: 0.6588579795vw;
  }
}
.top-mv__copy span:last-of-type {
  margin-left: 3.2vw;
}
@media only screen and (min-width: 767px) {
  .top-mv__copy span:last-of-type {
    margin-left: 0.878477306vw;
  }
}
.top-mv__bg {
  position: relative;
  background: #000;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .top-mv__bg {
    height: 156.8vw;
  }
}
@media only screen and (min-width: 767px) {
  .top-mv__bg {
    height: 56.2225475842vw;
  }
}
.top-mv__bg-img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../img/top/mv/visual.jpg?v=20251022115830) repeat-x center;
  background-size: cover;
  background-size: 346.8vw auto;
}
@media only screen and (min-width: 767px) {
  .top-mv__bg-img {
    background-image: url(../img/top/mv/visual_pc.jpg?v=20251022115830);
    background-size: 124.4509516837vw auto;
  }
}
.top-mv__bg:before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 5;
  background: #000;
}
.top-mv__bg:after {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 1;
  background: url(../img/top/mv/overlay.png?v=20251022115830) no-repeat center;
  background-size: cover;
}
@media only screen and (min-width: 767px) {
  .top-mv__bg:after {
    background-image: url(../img/top/mv/overlay_pc.png?v=20251022115830);
  }
}
.top-mv__logo {
  position: absolute;
  width: 82.4vw;
  height: 82.2666666667vw;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  z-index: 2;
}
@media only screen and (min-width: 767px) {
  .top-mv__logo {
    width: 29.2825768668vw;
    height: 29.2825768668vw;
  }
}
.top-mv__logo-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  z-index: 1;
  transform: translate3d(-50%, -50%, 0);
  background: #fff;
}
.top-mv__logo-bg:before {
  display: block;
  content: "";
  position: absolute;
  width: 100vw;
  height: 103.2vw;
  left: 50%;
  top: 50%;
  background: url(../img/top/mv/logo_glow.png?v=20251022115830) no-repeat center;
  background-size: 100% 100%;
  transform: translate3d(-50%, -50%, 0);
}
@media only screen and (min-width: 767px) {
  .top-mv__logo-bg:before {
    width: 34.9926793558vw;
    height: 34.9926793558vw;
    background-image: url(../img/top/mv/logo_glow_pc.png?v=20251022115830);
  }
}
.top-mv__logo-glow {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 156.8vw;
  z-index: 0;
  background: url(../img/top/mv/glow.png?v=20251022115830) no-repeat center;
  background-size: 100% 100%;
  transform: translate3d(-50%, -50%, 0);
}
@media only screen and (min-width: 767px) {
  .top-mv__logo-glow {
    width: 99.1947291362vw;
    height: 56.2225475842vw;
    background-image: url(../img/top/mv/glow_pc.png?v=20251022115830);
    background-size: cover;
  }
}
.top-mv__logo-img {
  position: absolute;
  width: 69.6vw;
  top: 19.2vw;
  left: 50%;
  transform: translate3d(-50%, 0, 0);
  z-index: 2;
}
@media only screen and (min-width: 767px) {
  .top-mv__logo-img {
    width: 24.6705710102vw;
    top: 6.5153733529vw;
  }
}
.top-mv__logo-img-off {
  position: relative;
  z-index: 1;
}
.top-mv__logo-img-on {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: auto;
  opacity: 0;
  z-index: 2;
}
.top-mv__wrapper {
  margin-top: 18.9333333333vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-mv__wrapper {
    margin-top: 8.0527086384vw;
    cursor: pointer;
  }
  .top-mv__wrapper:hover .top-mv__video--play {
    background-color: white;
  }
  .top-mv__wrapper:hover .top-mv__video--text {
    color: #003a8f;
  }
}
.top-mv__video {
  background-color: black;
  width: 100%;
  height: 40vw;
  overflow: hidden;
  position: relative;
}
.top-mv__video:before {
  display: block;
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 0;
  background: url(../img/bg_video.jpg?v=20251022115830) no-repeat center;
  background-size: cover;
}
.top-mv__video .mbYTP_wrapper {
  opacity: 0 !important;
}
.top-mv__video.js-show .mbYTP_wrapper {
  opacity: 1 !important;
  transition: opacity 300ms;
}
@media only screen and (min-width: 767px) {
  .top-mv__video {
    height: 36.6764275256vw;
  }
}
@media only screen and (max-width: 767px) {
  .top-mv__video iframe {
    transform: scale(1.25);
  }
}
@media only screen and (min-width: 767px) {
  .top-mv__video iframe {
    transform: unset;
  }
}
.top-mv__video--play {
  width: 29.3333333333vw;
  height: 29.3333333333vw;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.15);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  cursor: pointer;
}
@media only screen and (min-width: 767px) {
  .top-mv__video--play {
    width: 12.1522693997vw;
    height: 12.1522693997vw;
    transition: all 400ms ease;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__video--play {
    width: 166px;
    height: 166px;
  }
}
.top-mv__video--text {
  display: block;
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  text-align: center;
  letter-spacing: 0.16em;
  font-size: 5.0666666667vw;
  font-weight: 900;
}
@media only screen and (min-width: 767px) {
  .top-mv__video--text {
    font-size: 1.756954612vw;
    transition: all 400ms ease;
  }
}
@media only screen and (min-width: 1367px) {
  .top-mv__video--text {
    font-size: 24px;
  }
}

@media only screen and (min-width: 767px) {
  html:not(.ja) .top-about__item--date {
    min-width: 7.6134699854vw;
  }
}
@media only screen and (min-width: 1367px) {
  html:not(.ja) .top-about__item--date {
    min-width: 104px;
  }
}

.top-about {
  position: relative;
  background-color: #003a8f;
  padding: 18.1333333333vw 0 13.4666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-about {
    padding: 6.2225475842vw 0 2.5622254758vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about {
    padding: 85px 0 35px;
  }
}
.top-about__sub {
  font-size: 4.6666666667vw;
  line-height: 1.0625;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-align: center;
}
@media only screen and (min-width: 767px) {
  .top-about__sub {
    font-size: 1.756954612vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__sub {
    font-size: 24px;
  }
}
.top-about__title {
  margin-top: 3.7333333333vw;
  margin-inline: auto;
  width: 86.9333333333vw;
  height: auto;
  padding: 2.6666666667vw 0 2.1666666667vw;
  background-color: #0054d3;
  text-align: center;
  font-size: 10.6666666667vw;
  line-height: 1.0625;
  letter-spacing: 0.04em;
  font-family: "M PLUS 1p", sans-serif;
  font-weight: 900;
  overflow: hidden;
}
.top-about__title p {
  text-wrap: nowrap;
}
@media only screen and (min-width: 767px) {
  .top-about__title p:last-of-type {
    margin-left: 1.3909224012vw;
  }
}
@media only screen and (min-width: 767px) {
  .top-about__title {
    display: flex;
    justify-content: center;
    margin-top: 1.3909224012vw;
    font-size: 4.5387994143vw;
    width: 54.4655929722vw;
    height: 6.8814055637vw;
    padding: 1.0248901903vw 0vw;
    letter-spacing: 0.02em;
    font-weight: 800;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__title {
    margin-top: 19px;
    font-size: 62px;
    width: 744px;
    height: 94px;
    padding: 14px 0;
  }
}
.top-about__text {
  margin-top: 5.4666666667vw;
  margin-inline: auto;
  width: 86.9333333333vw;
  font-size: 3.4666666667vw;
  line-height: 1.5833333333;
  letter-spacing: 0.12em;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .top-about__text {
    margin-top: 2.0497803807vw;
    font-size: 1.317715959vw;
    width: 54.4655929722vw;
    padding: 0 2.196193265vw 0 1.6105417277vw;
    letter-spacing: 0.1em;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__text {
    margin-top: 35px;
    font-size: 18px;
    width: 744px;
    padding: 0 30px 0 22px;
  }
}
@media only screen and (min-width: 767px) {
  .top-about__box {
    width: fit-content;
    margin-inline: auto;
  }
}
.top-about__info {
  margin-top: 15.4666666667vw;
  margin-inline: auto;
  width: 86.6666666667vw;
  background-color: rgba(0, 42, 104, 0.25);
  border-radius: 5.3333333333vw;
  padding: 10.5333333333vw 2.6666666667vw 11.0666666667vw 6.4vw;
}
@media only screen and (min-width: 767px) {
  .top-about__info {
    position: relative;
    margin-top: 3.6603221083vw;
    margin-left: 0.878477306vw;
    margin-right: 0;
    width: 82.4304538799vw;
    padding: 3.2942898975vw 1.6837481698vw 2.9282576867vw 4.4655929722vw;
    border-radius: 1.4641288433vw;
    display: flex;
    flex-direction: row;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__info {
    margin-top: 50px;
    margin-left: 12px;
    width: 1126px;
    padding: 45px 23px 40px 61px;
    border-radius: 20px;
  }
}
.top-about__heading {
  font-size: 6.4vw;
  letter-spacing: 0.04em;
  font-weight: 700;
  text-align: center;
  width: 73.6vw;
}
@media only screen and (min-width: 767px) {
  .top-about__heading {
    font-size: 2.196193265vw;
    width: 100%;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__heading {
    font-size: 30px;
  }
}
.top-about__subheading {
  display: block;
  margin-top: 3.4666666667vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.12em;
  font-weight: 300;
  text-align: center;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .top-about__subheading {
    margin-top: 0.9516837482vw;
    font-size: 1.0248901903vw;
    text-align: left;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__subheading {
    margin-top: 13px;
    font-size: 14px;
  }
}
.top-about__wrapper {
  margin-top: 5.6vw;
  padding-top: 4.2666666667vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-about__wrapper {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
    border-left: 0.0732064422vw solid white;
    margin-left: 3.074670571vw;
    padding-left: 3.513909224vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__wrapper {
    border-left: 1px solid white;
    margin-left: 42px;
    padding-left: 48px;
  }
}
.top-about__wrapper:before {
  display: block;
  content: "";
  position: absolute;
  background-color: white;
  width: 73.6vw;
  height: 0.1333333333vw;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 767px) {
  .top-about__wrapper:before {
    display: none;
  }
}
.top-about__list {
  width: 77.3333333333vw;
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 3.7333333333vw;
}
.top-about__list::-webkit-scrollbar-track {
  background-color: #002f72;
}
@media only screen and (max-width: 767px) {
  .top-about__list {
    max-height: 100vw;
  }
}
.top-about__list .simplebar-vertical {
  width: 0.5333333333vw;
  background-color: #002f72;
}
@media only screen and (min-width: 767px) {
  .top-about__list .simplebar-vertical {
    width: 0.2928257687vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__list .simplebar-vertical {
    width: 4px;
  }
}
.top-about__list .simplebar-visible::before {
  position: absolute;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100%;
  height: 100%;
  opacity: 1 !important;
  background-color: #0054d3;
  border-radius: 0px !important;
}
@media only screen and (min-width: 767px) {
  .top-about__list {
    width: 55.6368960469vw;
    height: 15.3733528551vw;
    padding-right: 2.9282576867vw;
  }
  .top-about__list::-webkit-scrollbar {
    width: 0.2928257687vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__list {
    width: 760px;
    height: 210px;
    padding-right: 40px;
  }
  .top-about__list::-webkit-scrollbar {
    width: 4px;
  }
}
@media only screen and (min-width: 767px) {
  .top-about__item {
    display: flex;
    flex-direction: row;
  }
}
.top-about__item:not(:first-child) {
  margin-top: 4vw;
}
@media only screen and (min-width: 767px) {
  .top-about__item:not(:first-child) {
    margin-top: 1.756954612vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__item:not(:first-child) {
    margin-top: 24px;
  }
}
.top-about__item a:after {
  display: block;
  content: "";
  position: relative;
  display: inline-block;
  width: 3.2vw;
  height: 2.1333333333vw;
  left: 1.3333333333vw;
  top: -0.2666666667vw;
  background: url(../img/top/information/icon_blank.png?v=20251022115830) no-repeat center top;
  background-size: 100% auto;
}
@media only screen and (min-width: 767px) {
  .top-about__item a:after {
    width: 1.0980966325vw;
    height: 0.7320644217vw;
    left: 0.2928257687vw;
    top: -0.1464128843vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__item a:after {
    width: 15px;
    height: 10px;
    left: 4px;
    top: -2px;
  }
}
.top-about__item--date {
  color: #cccccc;
  font-size: 2.9333333333vw;
  letter-spacing: 0.04em;
  line-height: 1.4166666667;
  padding-left: 1.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-about__item--date {
    line-height: 1.625;
    font-size: 1.1713030747vw;
    margin-right: 1.317715959vw;
    padding-left: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__item--date {
    font-size: 16px;
    margin-right: 18px;
  }
}
.top-about__item--text {
  color: white;
  font-size: 3.2vw;
  letter-spacing: 0.06em;
  line-height: 1.4166666667;
  margin-top: 1.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-about__item--text {
    margin-top: 0;
    font-size: 1.1713030747vw;
    line-height: 1.625;
    cursor: pointer;
    transition: all 0.3s ease;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__item--text {
    font-size: 16px;
  }
}
.top-about__item--text.js-active {
  text-decoration: underline;
  text-underline-offset: 0.2666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-about__item--text.js-active {
    text-underline-offset: 0.2928257687vw;
    text-decoration-color: white;
    transition: all 300ms ease;
  }
  .top-about__item--text.js-active:hover {
    text-decoration-color: transparent;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__item--text.js-active {
    text-underline-offset: 4px;
  }
}
.top-about__item--type {
  margin-left: -1.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-about__item--type {
    margin-left: -0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__item--type {
    margin-left: -10px;
  }
}
.top-about__more {
  width: 36vw;
  height: 8vw;
  padding-top: 2.6666666667vw;
  background-color: rgb(0, 42, 104);
  text-align: center;
  font-size: 2.8vw;
  letter-spacing: 0.04em;
  border-radius: 0.8vw;
  border-bottom-right-radius: 2.4vw;
  margin: 7.3333333333vw auto 0;
  color: white;
  display: block;
}
@media only screen and (min-width: 767px) {
  .top-about__more {
    cursor: pointer;
    position: absolute;
    width: 10.2489019034vw;
    height: 2.9282576867vw;
    padding: 0;
    bottom: 3.5871156662vw;
    padding: 0.878477306vw 0;
    font-size: 1.0248901903vw;
    border-radius: 0.439238653vw;
    border-bottom-right-radius: 1.317715959vw;
    transition: ALL 300ms ease;
  }
  .top-about__more:hover {
    color: rgb(0, 42, 104);
    background-color: white;
  }
}
@media only screen and (min-width: 1367px) {
  .top-about__more {
    width: 140px;
    height: 40px;
    bottom: 49px;
    padding: 12px 0;
    font-size: 14px;
    border-radius: 6px;
    border-bottom-right-radius: 18px;
  }
}

.top-novelty {
  background-color: #003a8f;
  padding-bottom: 22.6666666667vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-novelty {
    padding-bottom: 4.7584187408vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty {
    padding-bottom: 65px;
  }
}
.top-novelty__inner {
  background-color: #0054d3;
  padding: 12.6666666667vw 0 16.1333333333vw;
  position: relative;
  z-index: 3;
}
@media only screen and (min-width: 767px) {
  .top-novelty__inner {
    padding: 5.5636896047vw 0 5.1976573939vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__inner {
    padding: 76px 0 71px;
  }
}
.top-novelty__heading {
  font-size: 9.3333333333vw;
  letter-spacing: 0.04em;
  font-weight: 800;
  text-align: center;
}
@media only screen and (min-width: 767px) {
  .top-novelty__heading {
    font-size: 3.6603221083vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__heading {
    font-size: 50px;
  }
}
.top-novelty__subheading {
  display: block;
  margin-top: 3.4666666667vw;
  font-size: 3.2vw;
  letter-spacing: 0.12em;
  font-weight: 300;
  text-align: center;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .top-novelty__subheading {
    font-size: 1.4641288433vw;
    margin-top: 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__subheading {
    font-size: 20px;
    margin-top: 18px;
  }
}
@media only screen and (min-width: 767px) {
  .top-novelty__wrapper {
    display: flex;
    flex-direction: row;
    margin-top: 3.2210834553vw;
    justify-content: center;
    column-gap: 2.4158125915vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__wrapper {
    margin-top: 44px;
    column-gap: 33px;
  }
}
.top-novelty__pic {
  margin: 7.7333333333vw auto 0;
  width: 86.6666666667vw;
  overflow: hidden;
  border-radius: 2.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-novelty__pic {
    width: 28.8433382138vw;
    margin: 0 0 0 0.7320644217vw;
    flex-shrink: 0;
    border-radius: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__pic {
    width: 394px;
    margin-left: 10px;
    border-radius: 20px;
  }
}
.top-novelty__info {
  width: 86.6666666667vw;
  margin-inline: auto;
}
@media only screen and (min-width: 767px) {
  .top-novelty__info {
    width: 40.2635431918vw;
    margin: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__info {
    width: 550px;
  }
}
.top-novelty__limited {
  display: block;
  background-color: #002f72;
  border-radius: 2.5333333333vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.1em;
  width: 17.2vw;
  height: 5.0666666667vw;
  padding: 1.0666666667vw 2.6666666667vw;
  margin-top: 5.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-novelty__limited {
    width: 6.5153733529vw;
    height: 1.9033674963vw;
    font-size: 1.0248901903vw;
    margin-top: 1.1713030747vw;
    padding: 0.439238653vw 0.9516837482vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__limited {
    width: 89px;
    height: 26px;
    font-size: 14px;
    margin-top: 16px;
    padding: 6px 13px;
  }
}
.top-novelty__title {
  margin-top: 2.8vw;
  font-size: 5.6vw;
  letter-spacing: 0.08em;
  line-height: 1.2380952381;
  font-weight: 800;
}
@media only screen and (min-width: 767px) {
  .top-novelty__title {
    font-size: 2.0497803807vw;
    margin-top: 1.0248901903vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__title {
    font-size: 28px;
    margin-top: 14px;
  }
}
.top-novelty__summary {
  margin-top: 2.6666666667vw;
  font-size: 3.2vw;
  letter-spacing: 0.12em;
  line-height: 1.5833333333;
  font-weight: 400;
}
@media only screen and (min-width: 767px) {
  .top-novelty__summary {
    font-size: 1.1713030747vw;
    margin-top: 0.878477306vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__summary {
    font-size: 16px;
    margin-top: 12px;
  }
}
.top-novelty__remark {
  margin-top: 3.4666666667vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.12em;
  line-height: 1.4;
  font-weight: 300;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .top-novelty__remark {
    font-size: 0.878477306vw;
    margin-top: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-novelty__remark {
    font-size: 12px;
    margin-top: 10px;
  }
}

.en .top-novelty__limited {
  width: fit-content;
}

.cn .top-novelty__limited {
  width: fit-content;
}

.kr .top-novelty__limited {
  width: fit-content;
}

.top-item {
  position: relative;
}
.top-item__bg {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}
.top-item__inner {
  padding: 12.6666666667vw 0 12vw;
  position: relative;
  z-index: 5;
  overflow: hidden;
}
@media only screen and (min-width: 767px) {
  .top-item__inner {
    padding: 9.8828696925vw 0 6.149341142vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__inner {
    padding: 135px 0 84px;
  }
}
.top-item__heading {
  position: relative;
  font-size: 12vw;
  letter-spacing: 0.06em;
  font-weight: 900;
  line-height: 1.0555555556;
  text-align: center;
  overflow: hidden;
  z-index: 2;
}
@media only screen and (min-width: 767px) {
  .top-item__heading {
    font-size: 6.588579795vw;
    letter-spacing: 0.04em;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__heading {
    font-size: 90px;
  }
}
.top-item__heading--default {
  position: relative;
  z-index: 2;
}
.top-item__heading--mask {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  color: #002b6b;
  z-index: 1;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.top-item__heading--fade {
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 0;
  opacity: 0;
}
.top-item__subheading {
  display: block;
  margin-top: 3.4666666667vw;
  font-size: 3.2vw;
  letter-spacing: 0.12em;
  font-weight: 300;
  text-align: center;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .top-item__subheading {
    font-size: 1.4641288433vw;
    margin-top: 1.8301610542vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__subheading {
    font-size: 20px;
    margin-top: 25px;
  }
}
.top-item__ip {
  background-color: #181818;
  width: 92vw;
  margin-inline: auto;
  border-radius: 5.3333333333vw;
  margin-top: 5.6vw;
  opacity: 0;
  transition: all 400ms;
  transform: translate3d(0, 2.6666666667vw, 0);
}
@media only screen and (min-width: 767px) {
  .top-item__ip {
    width: 92.6793557833vw;
    border-radius: 2.9282576867vw;
    margin-top: 4.2459736457vw;
    transform: translate3d(0, 1.4641288433vw, 0);
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip {
    width: 1266px;
    border-radius: 40px;
    margin-top: 58px;
    transform: translate3d(0, 20px, 0);
  }
}
.top-item__ip.js--anime {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.top-item__ip.js--anime .top-item__ip--logo {
  opacity: 1;
}
.top-item__ip.js--anime .top-item__swiper-slide,
.top-item__ip.js--anime .top-item__swiper-img {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.top-item__ip .top-item__ip--logo {
  opacity: 0;
  transition: opacity 500ms;
  transition-delay: 200ms;
}
.top-item__ip[data-name=ip1] {
  margin-top: 16.8vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip1] {
    margin-top: 4.5387994143vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip1] {
    margin-top: 62px;
  }
}
.top-item__ip[data-name=ip1] .top-item__ip--logo {
  width: 47.8666666667vw;
  padding-top: 7.0666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip1] .top-item__ip--logo {
    width: 17.4963396779vw;
    padding-top: 3.0014641288vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip1] .top-item__ip--logo {
    width: 239px;
    padding-top: 41px;
  }
}
.top-item__ip[data-name=ip2] .top-item__ip--logo {
  width: 49.8666666667vw;
  padding-top: 7.2vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip2] .top-item__ip--logo {
    width: 20.7906295754vw;
    padding-top: 2.635431918vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip2] .top-item__ip--logo {
    width: 284px;
    padding-top: 36px;
  }
}
.top-item__ip[data-name=ip3] .top-item__ip--logo {
  width: 52vw;
  padding-top: 6.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip3] .top-item__ip--logo {
    width: 20.1317715959vw;
    padding-top: 2.7086383602vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip3] .top-item__ip--logo {
    width: 275px;
    padding-top: 37px;
  }
}
.top-item__ip[data-name=ip4] .top-item__ip--logo {
  width: 62.6666666667vw;
  padding-top: 8.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip4] .top-item__ip--logo {
    width: 26.7935578331vw;
    padding-top: 2.4158125915vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip4] .top-item__ip--logo {
    width: 366px;
    padding-top: 33px;
  }
}
.top-item__ip[data-name=ip5] .top-item__ip--logo {
  width: 56.9333333333vw;
  padding-top: 6.5333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip5] .top-item__ip--logo {
    width: 21.7423133236vw;
    padding-top: 2.8550512445vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip5] .top-item__ip--logo {
    width: 297px;
    padding-top: 39px;
  }
}
.top-item__ip[data-name=ip6] .top-item__ip--logo {
  width: 46.4vw;
  padding-top: 9.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip6] .top-item__ip--logo {
    width: 20.7174231332vw;
    padding-top: 2.7086383602vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip6] .top-item__ip--logo {
    width: 283px;
    padding-top: 37px;
  }
}
.top-item__ip[data-name=ip7] .top-item__ip--logo {
  width: 29.0666666667vw;
  padding-top: 5.6vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip7] .top-item__ip--logo {
    width: 10.6881405564vw;
    padding-top: 2.3426061493vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip7] .top-item__ip--logo {
    width: 146px;
    padding-top: 32px;
  }
}
.top-item__ip[data-name=ip8] .top-item__ip--logo {
  width: 38.5333333333vw;
  padding-top: 2.9333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip8] .top-item__ip--logo {
    width: 15.6661786237vw;
    padding-top: 0.439238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip8] .top-item__ip--logo {
    width: 214px;
    padding-top: 6px;
  }
}
.top-item__ip[data-name=ip9] .top-item__ip--logo {
  width: 53.6vw;
  padding-top: 5.0666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__ip[data-name=ip9] .top-item__ip--logo {
    width: 22.4743777452vw;
    padding-top: 1.5373352855vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__ip[data-name=ip9] .top-item__ip--logo {
    width: 307px;
    padding-top: 21px;
  }
}
.top-item__ip--logo {
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .top-item__swiper {
    mask-image: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 15%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 85%, rgba(0, 0, 0, 0) 100%);
  }
}
@media only screen and (min-width: 767px) {
  .top-item__swiper .swiper-wrapper:not(:has(> *:nth-child(4):not(:last-child))) {
    transform: none !important;
    justify-content: center;
  }
}
.top-item__swiper-img {
  opacity: 0;
  transition: all 400ms ease;
  transform: translate3d(0, 2vw, 0);
}
@media only screen and (min-width: 767px) {
  .top-item__swiper-img {
    transform: translate3d(0, 1.0980966325vw, 0);
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__swiper-img {
    transform: translate3d(0, 15px, 0);
  }
}
.top-item__swiper-slide {
  width: 36vw;
  margin-top: 9.2vw;
  margin-right: 1.2vw;
  margin-left: 1.2vw;
  background-color: #202020;
  border-radius: 2.6666666667vw;
  overflow: hidden;
  pointer-events: all;
  transition: all 400ms ease;
  opacity: 0;
  transform: translate3d(0, 1.6vw, 0);
}
.top-item__swiper-slide:nth-of-type(1) {
  transition-delay: 140ms;
}
.top-item__swiper-slide:nth-of-type(1) .top-item__swiper-img {
  transition-delay: 280ms;
}
.top-item__swiper-slide:nth-of-type(2) {
  transition-delay: 200ms;
}
.top-item__swiper-slide:nth-of-type(2) .top-item__swiper-img {
  transition-delay: 340ms;
}
.top-item__swiper-slide:nth-of-type(3) {
  transition-delay: 260ms;
}
.top-item__swiper-slide:nth-of-type(3) .top-item__swiper-img {
  transition-delay: 400ms;
}
.top-item__swiper-slide:nth-of-type(4) {
  transition-delay: 320ms;
}
.top-item__swiper-slide:nth-of-type(4) .top-item__swiper-img {
  transition-delay: 460ms;
}
.top-item__swiper-slide:nth-of-type(5) {
  transition-delay: 380ms;
}
.top-item__swiper-slide:nth-of-type(5) .top-item__swiper-img {
  transition-delay: 520ms;
}
.top-item__swiper-slide:nth-of-type(6) {
  transition-delay: 440ms;
}
.top-item__swiper-slide:nth-of-type(6) .top-item__swiper-img {
  transition-delay: 580ms;
}
.top-item__swiper-slide:nth-of-type(7) {
  transition-delay: 500ms;
}
.top-item__swiper-slide:nth-of-type(7) .top-item__swiper-img {
  transition-delay: 640ms;
}
.top-item__swiper-slide:nth-of-type(8) {
  transition-delay: 560ms;
}
.top-item__swiper-slide:nth-of-type(8) .top-item__swiper-img {
  transition-delay: 700ms;
}
@media only screen and (min-width: 767px) {
  .top-item__swiper-slide {
    width: 16.8374816984vw;
    margin-top: 2.7086383602vw;
    margin-right: 0.3660322108vw;
    margin-left: 0.3660322108vw;
    margin-bottom: 1.0248901903vw;
    border-radius: 1.4641288433vw;
    transform: translate3d(0, 0.878477306vw, 0);
  }
  .top-item__swiper-slide img {
    transition: all 300ms ease;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__swiper-slide {
    width: 230px;
    margin-top: 37px;
    margin-right: 5px;
    margin-left: 5px;
    border-radius: 20px;
    transform: translate3d(0, 12px, 0);
  }
}
@media only screen and (min-width: 767px) {
  .top-item__swiper-slide.is-hovered {
    z-index: 2;
  }
  .top-item__swiper-slide.is-hovered img {
    transform: scale(1.05);
  }
}
.top-item__swiper--control {
  margin-top: 4.8vw;
  width: 33.3333333333vw;
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (min-width: 767px) {
  .top-item__swiper--control {
    margin-top: 2.635431918vw;
    width: 12.2254758419vw;
    display: none;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__swiper--control {
    width: 167px;
    margin-top: 30px;
  }
}
.top-item__swiper--total {
  font-size: 3.2vw;
}
@media only screen and (min-width: 767px) {
  .top-item__swiper--total {
    font-size: 1.1713030747vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__swiper--total {
    font-size: 16px;
  }
}
.top-item__arrow--prev {
  position: relative;
  margin-top: 0;
  top: 0;
  left: 0;
  right: 0;
  width: 2.8vw;
  height: 3.8666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__arrow--prev {
    width: 1.0248901903vw;
    height: 1.4641288433vw;
    transition: all 300ms ease;
  }
  .top-item__arrow--prev:hover {
    transform: translateX(-0.1464128843vw);
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__arrow--prev {
    width: 14px;
    height: 20px;
  }
}
.top-item__arrow--prev:after {
  display: block;
  content: "";
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/arrow.png?v=20251022115830) no-repeat;
  background-size: cover;
}
.top-item__arrow--next {
  position: relative;
  margin-top: 0;
  top: 0;
  left: 0;
  right: 0;
  width: 2.8vw;
  height: 3.8666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__arrow--next {
    width: 1.0248901903vw;
    height: 1.4641288433vw;
    transition: all 300ms ease;
  }
  .top-item__arrow--next:hover {
    transform: translateX(0.1464128843vw);
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__arrow--next {
    width: 14px;
    height: 20px;
  }
}
.top-item__arrow--next:after {
  display: block;
  content: "";
  content: "";
  width: 100%;
  height: 100%;
  background: url(../img/arrow.png?v=20251022115830) no-repeat;
  background-size: cover;
  transform: scale(-1, 1);
}
.top-item__thumb {
  display: block;
  width: 36vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-item__thumb {
    width: 16.8374816984vw;
    cursor: pointer;
  }
  .top-item__thumb:hover .top-item__thumb--plus {
    background-color: rgba(255, 255, 255, 0.1);
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__thumb {
    width: 230px;
  }
}
.top-item__thumb--plus {
  display: block;
  position: absolute;
  width: 6.9333333333vw;
  height: 6.9333333333vw;
  background-color: transparent;
  bottom: 0;
  right: 0;
  transition: all 300ms ease;
  border-top-left-radius: 2.6666666667vw;
  border-bottom-right-radius: 2.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__thumb--plus {
    width: 3.2942898975vw;
    height: 3.2942898975vw;
    border-top-left-radius: 1.4641288433vw;
    border-bottom-right-radius: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__thumb--plus {
    width: 45px;
    height: 45px;
    border-top-left-radius: 20px;
    border-bottom-right-radius: 20px;
  }
}
.top-item__thumb--plus:after {
  display: block;
  content: "";
  position: absolute;
  width: 2.6666666667vw;
  height: 2.6666666667vw;
  background: url(../img/plus.png?v=20251022115830) no-repeat;
  background-size: cover;
  bottom: 2.2666666667vw;
  right: 2.2666666667vw;
  transition: all 300ms ease;
  pointer-events: none;
}
@media only screen and (min-width: 767px) {
  .top-item__thumb--plus:after {
    width: 1.2445095168vw;
    height: 1.2445095168vw;
    bottom: 1.0248901903vw;
    right: 1.0248901903vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__thumb--plus:after {
    width: 17px;
    height: 17px;
    bottom: 14px;
    right: 14px;
  }
}
.top-item__company {
  color: #bbbbbb;
  margin-top: 5.3333333333vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.06em;
  text-align: center;
  padding-bottom: 2.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item__company {
    margin-top: 2.0497803807vw;
    font-size: 0.7320644217vw;
    padding-bottom: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__company {
    margin-top: 28px;
    font-size: 10px;
    padding-bottom: 20px;
  }
}
.top-item__company.blue {
  background: url(../img/blue_light.png?v=20251022115830) no-repeat center bottom;
  background-size: cover;
}
@media only screen and (min-width: 767px) {
  .top-item__company.blue {
    background: url(../img/blue_light_pc.png?v=20251022115830) no-repeat center bottom;
    background-size: cover;
  }
}
.top-item__company.red {
  background: url(../img/red_light.png?v=20251022115830) no-repeat center bottom;
  background-size: cover;
}
@media only screen and (min-width: 767px) {
  .top-item__company.red {
    background: url(../img/red_light_pc.png?v=20251022115830) no-repeat center bottom;
    background-size: cover;
  }
}
.top-item__attention {
  color: #bbbbbb;
  margin-top: 12.6666666667vw;
  font-size: 3.52vw;
  letter-spacing: 0.18em;
  text-align: center;
  line-height: 1.5833333333;
}
@media only screen and (min-width: 767px) {
  .top-item__attention {
    letter-spacing: 0.1em;
    margin-top: 3.8067349927vw;
    font-size: 1.4641288433vw;
    line-height: 1.52;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item__attention {
    margin-top: 52px;
    font-size: 20px;
  }
}

@media only screen and (min-width: 767px) {
  .top-nav {
    display: flex;
    flex-direction: row;
    column-gap: 1.8301610542vw;
    justify-content: center;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav {
    column-gap: 25px;
  }
}
.top-nav__blue {
  width: 92vw;
  margin: 16vw auto 0;
  border-top: 0.4vw solid #004dbf;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-nav__blue {
    width: 59.2972181552vw;
    border-top: 0.1464128843vw solid #004dbf;
    margin: 5.1244509517vw 0 0;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__blue {
    width: 810px;
    border-top: 2px solid #004dbf;
    margin: 70px 0 0;
  }
}
.top-nav__blue:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/top/item/gradient_blue.png?v=20251022115830) no-repeat;
  background-size: cover;
  width: 100%;
  height: 17.7333333333vw;
  z-index: -1;
}
@media only screen and (min-width: 767px) {
  .top-nav__blue:before {
    height: 4.3191800878vw;
    background: url(../img/top/item/gradient_blue_pc.png?v=20251022115830) no-repeat;
    background-size: cover;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__blue:before {
    height: 59px;
  }
}
.top-nav__red {
  width: 92vw;
  margin: 0 auto;
  border-top: 0.4vw solid #bb0007;
  position: relative;
  margin-top: 9.0666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__red {
    width: 29.2093704246vw;
    border-top: 0.1464128843vw solid #bb0007;
    margin: 5.1244509517vw 0 0;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__red {
    width: 399px;
    border-top: 2px solid #bb0007;
    margin: 70px 0 0;
  }
}
.top-nav__red:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  background: url(../img/top/item/gradient_red.png?v=20251022115830) no-repeat;
  background-size: cover;
  width: 100%;
  height: 15.7333333333vw;
  z-index: -1;
}
@media only screen and (min-width: 767px) {
  .top-nav__red:before {
    height: 4.3191800878vw;
    background: url(../img/top/item/gradient_red_pc.png?v=20251022115830) no-repeat;
    background-size: cover;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__red:before {
    height: 59px;
  }
}
.top-nav__red .top-nav__logo {
  margin-top: 3.6vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__red .top-nav__logo {
    margin-top: 1.6105417277vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__red .top-nav__logo {
    margin-top: 22px;
  }
}
.top-nav__red .top-nav__group {
  margin-top: 1.8666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__red .top-nav__group {
    margin-top: 0.6588579795vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__red .top-nav__group {
    margin-top: 9px;
  }
}
.top-nav__red .top-nav__pointer {
  margin-top: 3.7333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__red .top-nav__pointer {
    margin-top: 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__red .top-nav__pointer {
    margin-top: 18px;
  }
}
.top-nav__logo {
  width: 14.9333333333vw;
  margin-top: 4.4vw;
  margin-inline: auto;
}
@media only screen and (min-width: 767px) {
  .top-nav__logo {
    width: 4.6852122987vw;
    margin-top: 1.6837481698vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__logo {
    width: 64px;
    margin-top: 23px;
  }
}
.top-nav__group {
  margin-top: 4.2666666667vw;
  padding: 0 3.8666666667vw 0 3.0666666667vw;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 4.8vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__group {
    margin-top: 1.6105417277vw;
    padding: 0 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__group {
    margin-top: 22px;
    padding: 0 10px;
  }
}
.top-nav__group--list {
  width: fit-content;
}
.top-nav__ip {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: fit-content;
  height: 100%;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip:hover {
    cursor: pointer;
  }
  .top-nav__ip:hover .top-nav__pointer {
    transform: translate3d(0px, 0.3660322108vw, 0px);
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip:hover .top-nav__pointer {
    transform: translate3d(0px, 5px, 0px);
  }
}
.top-nav__ip--logo.icon1 {
  width: 22.8vw;
  margin-left: 1.4666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon1 {
    width: 7.3938506589vw;
    margin-left: 0.8052708638vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon1 {
    width: 101px;
    margin-left: 11px;
  }
}
.top-nav__ip--logo.icon2 {
  width: 21.8666666667vw;
  margin-top: 0.9333333333vw;
  margin-left: 1.2vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon2 {
    width: 6.8814055637vw;
    margin-top: 0.2928257687vw;
    margin-left: 0.6588579795vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon2 {
    width: 94px;
    margin-top: 4px;
    margin-left: 9px;
  }
}
.top-nav__ip--logo.icon3 {
  width: 22.6666666667vw;
  margin-top: 0.4vw;
  margin-left: 0.9333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon3 {
    width: 7.2474377745vw;
    margin-top: 0.2196193265vw;
    margin-left: 0.6588579795vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon3 {
    width: 99px;
    margin-top: 3px;
    margin-left: 9px;
  }
}
.top-nav__ip--logo.icon4 {
  width: 24.8vw;
  margin-left: 0.4vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon4 {
    width: 8.5651537335vw;
    margin-top: 0.2928257687vw;
    margin-left: 0.2928257687vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon4 {
    width: 117px;
    margin-top: 4px;
    margin-left: 4px;
  }
}
.top-nav__ip--logo.icon5 {
  width: 23.4666666667vw;
  margin-left: 0.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon5 {
    width: 7.5402635432vw;
    margin-top: 0.2196193265vw;
    margin-left: 0.6588579795vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon5 {
    width: 103px;
    margin-top: 3px;
    margin-left: 9px;
  }
}
.top-nav__ip--logo.icon6 {
  width: 22.2666666667vw;
  margin-left: 1.2vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon6 {
    width: 7.2474377745vw;
    margin-top: 0.2196193265vw;
    margin-left: 0.6588579795vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon6 {
    width: 99px;
    margin-top: 3px;
    margin-left: 9px;
  }
}
.top-nav__ip--logo.icon7 {
  width: 16.1333333333vw;
  margin-top: 2.4vw;
  margin-left: 4.1333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon7 {
    width: 5.0512445095vw;
    margin-top: 0.8052708638vw;
    margin-left: 2.0497803807vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon7 {
    width: 69px;
    margin-top: 11px;
    margin-left: 28px;
  }
}
.top-nav__ip--logo.icon8 {
  width: 20.5333333333vw;
  margin-left: 2vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon8 {
    width: 6.0761346999vw;
    margin-left: 1.6837481698vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon8 {
    width: 83px;
    margin-left: 23px;
  }
}
.top-nav__ip--logo.icon9 {
  width: 25.4666666667vw;
  margin-top: 2.4vw;
  margin-left: -0.8vw;
}
@media only screen and (min-width: 767px) {
  .top-nav__ip--logo.icon9 {
    width: 7.2474377745vw;
    margin-top: 1.0980966325vw;
    margin-left: 0.5856515373vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__ip--logo.icon9 {
    width: 99px;
    margin-top: 15px;
    margin-left: 8px;
  }
}
.top-nav__pointer {
  width: 24.8vw;
  height: 1.0666666667vw;
  border: 0.1333333333vw solid #555555;
  border-top: none;
  margin-top: 5.0666666667vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-nav__pointer {
    width: 8.5651537335vw;
    height: 0.5124450952vw;
    border: 0.1464128843vw solid #555555;
    border-top: none;
    margin-top: 1.8301610542vw;
    transition: all 300ms ease;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__pointer {
    width: 117px;
    height: 7px;
    border: 2px solid #555555;
    border-top: none;
    margin-top: 25px;
  }
}
.top-nav__pointer:before {
  display: block;
  content: "";
  top: -1.2vw;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  border-top: 0.8vw solid #555555;
  border-left: 0.6666666667vw solid transparent;
  border-right: 0.6666666667vw solid transparent;
}
@media only screen and (min-width: 767px) {
  .top-nav__pointer:before {
    top: -0.6588579795vw;
    border-top: 0.439238653vw solid #555555;
    border-left: 0.439238653vw solid transparent;
    border-right: 0.439238653vw solid transparent;
  }
}
@media only screen and (min-width: 1367px) {
  .top-nav__pointer:before {
    top: -9px;
    border-top: 6px solid #555555;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
  }
}

.top-feature {
  background-color: rgba(0, 0, 0, 0.25);
  padding-top: 13.8666666667vw;
  padding-bottom: 19.6vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-feature {
    padding-top: 5.6368960469vw;
    padding-bottom: 8.2723279649vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature {
    padding-top: 77px;
    padding-bottom: 113px;
  }
}
.top-feature__heading {
  font-size: 10.6666666667vw;
  letter-spacing: 0.04em;
  font-weight: 800;
  line-height: 1.0555555556;
  text-align: center;
}
@media only screen and (min-width: 767px) {
  .top-feature__heading {
    font-size: 3.6603221083vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__heading {
    font-size: 50px;
  }
}
.top-feature__subheading {
  display: block;
  margin-top: 3.4666666667vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.12em;
  font-weight: 300;
  text-align: center;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .top-feature__subheading {
    font-size: 1.317715959vw;
    margin-top: 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__subheading {
    font-size: 18px;
    margin-top: 18px;
  }
}
.top-feature__comingsoon {
  font-size: 6.4vw;
  letter-spacing: 0.04em;
  font-weight: 800;
  width: fit-content;
  margin: 45.6vw auto 34.9333333333vw;
  color: #333333;
}
@media only screen and (min-width: 767px) {
  .top-feature__comingsoon {
    font-size: 2.3426061493vw;
    margin: 14.2752562225vw auto 9.2972181552vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__comingsoon {
    font-size: 32px;
    margin: 195px auto 127px;
  }
}
.top-feature__list {
  width: 86.9333333333vw;
  margin: 9.8666666667vw auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 3.3333333333vw;
  row-gap: 3.4666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-feature__list {
    width: 81.9912152269vw;
    margin: 3.4407027818vw auto 0;
    column-gap: 2.1229868228vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__list {
    width: 1120px;
    margin: 47px auto 0;
    column-gap: 29px;
  }
}
.top-feature__item {
  width: 41.7333333333vw;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 1.3333333333vw;
  padding: 1.6vw 1.6vw 4vw;
}
@media only screen and (min-width: 767px) {
  .top-feature__item {
    background-color: #222222;
    width: 25.7686676428vw;
    border-radius: 0.7320644217vw;
    padding: 0.9516837482vw 0.878477306vw 2.5622254758vw;
    transition: all 300ms ease;
  }
  .top-feature__item:hover {
    transform: scale(1.03);
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__item {
    width: 352px;
    border-radius: 10px;
    padding: 13px 12px 35px;
  }
}
.top-feature__thumb {
  margin: 0 auto;
  width: 38.6666666667vw;
  border-radius: 1.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-feature__thumb {
    width: 23.8653001464vw;
    border-radius: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__thumb {
    width: 326px;
    border-radius: 10px;
  }
}
.top-feature__info {
  margin-inline: auto;
}
.top-feature__date {
  margin-top: 2.8vw;
  color: #cccccc;
  font-size: 2.6666666667vw;
  letter-spacing: 0.04em;
  font-weight: 700;
}
@media only screen and (min-width: 767px) {
  .top-feature__date {
    margin-top: 1.317715959vw;
    font-size: 1.0248901903vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__date {
    margin-top: 18px;
    font-size: 14px;
  }
}
.top-feature__summary {
  display: block;
  color: white;
  font-size: 3.2vw;
  line-height: 1.3333333333;
  margin-top: 2vw;
}
@media only screen and (min-width: 767px) {
  .top-feature__summary {
    margin-top: 0.9516837482vw;
    font-size: 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__summary {
    margin-top: 13px;
    font-size: 18px;
  }
}
.top-feature__summary--shiftleft {
  margin-left: -1.0666666667vw;
  margin-right: -1.0666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-feature__summary--shiftleft {
    margin-left: -0.5856515373vw;
    margin-right: -0.5856515373vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-feature__summary--shiftleft {
    margin-left: -8px;
    margin-right: -8px;
  }
}

.top-shop {
  background-color: #0054d3;
  padding: 18.1333333333vw 0 0;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-shop {
    padding: 5.8565153734vw 0 0;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop {
    padding: 80px 0 0;
  }
}
.top-shop__heading {
  font-size: 10.6666666667vw;
  letter-spacing: 0.04em;
  font-weight: 800;
  text-align: center;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-shop__heading {
    font-size: 3.6603221083vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__heading {
    font-size: 50px;
    z-index: 2;
  }
}
.top-shop__subheading {
  display: block;
  margin-top: 2.1333333333vw;
  font-size: 2.6666666667vw;
  letter-spacing: 0.12em;
  font-weight: 400;
  text-align: center;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .top-shop__subheading {
    margin-top: 1.2445095168vw;
    font-size: 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__subheading {
    margin-top: 17px;
    font-size: 18px;
  }
}
.top-shop__address {
  background-color: rgba(0, 0, 0, 0.1);
  margin-top: 9.0666666667vw;
  padding-bottom: 13.6vw;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .top-shop__address {
    width: 51.756954612vw;
    margin-inline: auto;
    margin-top: 3.4407027818vw;
    border-radius: 1.4641288433vw;
    padding: 1.9033674963vw 3.513909224vw 1.9033674963vw 3.3674963397vw;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__address {
    width: 707px;
    margin-top: 47px;
    border-radius: 20px;
    padding: 26px 48px 26px 46px;
    z-index: 2;
  }
}
.top-shop__address--list {
  display: flex;
  flex-direction: column;
  padding: 12vw 4vw 7.0666666667vw;
  row-gap: 2.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-shop__address--list {
    padding: 0;
    row-gap: 1.0248901903vw;
    justify-content: center;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__address--list {
    row-gap: 14px;
  }
}
.top-shop__address--item {
  display: flex;
  flex-direction: row;
}
.top-shop__address--type {
  color: #cccccc;
  font-size: 3.4666666667vw;
  letter-spacing: 0.04em;
  width: 18.9333333333vw;
  flex-shrink: 0;
  line-height: 1.5269230769;
}
@media only screen and (min-width: 767px) {
  .top-shop__address--type {
    width: 6.588579795vw;
    font-size: 1.1713030747vw;
    line-height: 1.625;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__address--type {
    width: 90px;
    font-size: 16px;
  }
}
.top-shop__address--text {
  color: white;
  font-size: 3.4666666667vw;
  letter-spacing: 0.08em;
  line-height: 1.5269230769;
}
@media only screen and (min-width: 767px) {
  .top-shop__address--text {
    letter-spacing: 0.03em;
    font-size: 1.1713030747vw;
    line-height: 1.625;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__address--text {
    font-size: 16px;
  }
}
.top-shop__address--map {
  width: 92vw;
  margin-inline: auto;
}
@media only screen and (min-width: 767px) {
  .top-shop__address--map {
    width: 13.5431918009vw;
    margin: 0;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__address--map {
    width: 185px;
  }
}
.top-shop__address--map iframe {
  border-radius: 2.6666666667vw;
  width: 92vw;
  height: 53.4666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-shop__address--map iframe {
    border-radius: 1.4641288433vw;
    width: 32.5768667643vw;
    height: 13.9824304539vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__address--map iframe {
    border-radius: 20px;
    width: 445px;
    height: 191px;
  }
}
.top-shop__bnr {
  margin-top: 0;
  background-color: rgba(255, 255, 255, 0.1);
}
@media only screen and (min-width: 767px) {
  .top-shop__bnr {
    background-color: transparent;
    margin-top: 3.4407027818vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__bnr {
    margin-top: 47px;
  }
}
.top-shop__swiper {
  transition-timing-function: linear;
}
@media only screen and (min-width: 767px) {
  .top-shop__swiper {
    margin-top: 3.4407027818vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__swiper {
    margin-top: 47px;
  }
}
.top-shop__swiper .swiper-wrapper {
  transition-timing-function: linear;
}
.top-shop__swiper-slide {
  width: 56.1333333333vw;
  background-color: #202020;
  border-radius: 5.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .top-shop__swiper-slide {
    width: 19.7657393851vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__swiper-slide {
    width: 270px;
  }
}
.top-shop__swiper.second .swiper-wrapper {
  animation: slide-left 50s linear infinite;
  will-change: transform;
  display: flex;
}
.top-shop__swiper.second .top-shop__bnr--group {
  display: flex;
}
@keyframes slide-left {
  0% {
    transform: translateX(-505.2vw);
  }
  100% {
    transform: translateX(0);
  }
}
.top-shop__thumb {
  display: block;
  width: 100%;
}
.top-shop__text {
  font-size: 3.7333333333vw;
  line-height: 1.4285714286;
  text-align: center;
  margin: 6.5333333333vw auto 0;
}
@media only screen and (min-width: 767px) {
  .top-shop__text {
    font-size: 1.1713030747vw;
    margin: 0;
    padding: 1.0980966325vw 0 0.878477306vw;
    background-color: rgba(255, 255, 255, 0.1);
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__text {
    font-size: 16px;
    margin: 0;
    padding: 15px 0 12px;
  }
}
.top-shop__store {
  margin-top: 5.4666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-shop__store {
    margin-top: 3.8799414348vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-shop__store {
    margin-top: 53px;
  }
}

.en .top-shop__address--map,
.cn .top-shop__address--map,
.kr .top-shop__address--map {
  flex-shrink: 0;
}

.feature-inner {
  padding: 32.2666666667vw 6.6666666667vw 16vw;
  background-color: #003a8f;
}
@media only screen and (min-width: 767px) {
  .feature-inner {
    padding: 10.2489019034vw 0 5.8565153734vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-inner {
    padding: 140px 0 80px;
  }
}
.feature-inner__heading {
  font-size: 10.6666666667vw;
  letter-spacing: 0.06em;
  font-weight: 800;
  line-height: 1.0555555556;
  text-align: center;
}
@media only screen and (min-width: 767px) {
  .feature-inner__heading {
    font-size: 3.6603221083vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-inner__heading {
    font-size: 50px;
  }
}
.feature-inner__subheading {
  display: block;
  margin-top: 3.4666666667vw;
  font-size: 3.2vw;
  letter-spacing: 0.12em;
  font-weight: 300;
  text-align: center;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .feature-inner__subheading {
    font-size: 1.317715959vw;
    margin-top: 1.317715959vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-inner__subheading {
    font-size: 18px;
    margin-top: 18px;
  }
}
.feature-content {
  margin-top: 13.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .feature-content {
    margin-top: 7.3206442167vw;
    width: 58.5651537335vw;
    margin-inline: auto;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content {
    margin-top: 100px;
    width: 800px;
  }
}
.feature-content__date {
  font-size: 3.7333333333vw;
  letter-spacing: 0.04em;
  color: #cccccc;
}
@media only screen and (min-width: 767px) {
  .feature-content__date {
    font-size: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__date {
    font-size: 20px;
  }
}
.feature-content__title {
  font-size: 5.3333333333vw;
  letter-spacing: 0.06em;
  font-weight: 700;
  line-height: 1.6;
  margin-top: 1.6vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__title {
    line-height: 1.4;
    font-size: 2.635431918vw;
    margin-top: 0.439238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__title {
    font-size: 36px;
    margin-top: 6px;
  }
}
.feature-content__subtitle {
  font-size: 5.3333333333vw;
  letter-spacing: 0.06em;
  font-weight: 700;
  line-height: 1.6;
  margin-top: 12vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__subtitle {
    line-height: 1.4;
    font-size: 2.3426061493vw;
    margin-top: 4.39238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__subtitle {
    font-size: 32px;
    margin-top: 60px;
  }
}
.feature-content__pic {
  margin-top: 8vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__pic {
    margin-top: 4.39238653vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__pic {
    margin-top: 60px;
  }
}
.feature-content__pic + .feature-content__dialog {
  margin-top: 9.3333333333vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__pic + .feature-content__dialog {
    margin-top: 0;
  }
}
.feature-content__text {
  font-size: 3.7333333333vw;
  letter-spacing: 0.08em;
  line-height: 2;
  margin-top: 5.8666666667vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__text {
    font-size: 1.1713030747vw;
    line-height: 2;
    margin-top: 2.196193265vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__text {
    font-size: 16px;
    margin-top: 30px;
  }
}
.feature-content__question {
  font-size: 4vw;
  letter-spacing: 0.08em;
  font-weight: 700;
  line-height: 1.8666666667;
  margin-top: 6.6666666667vw;
  padding-left: 8vw;
  color: #9fc5ff;
  position: relative;
}
@media only screen and (min-width: 767px) {
  .feature-content__question {
    line-height: 1.7777777778;
    font-size: 1.317715959vw;
    margin-top: 3.6603221083vw;
    padding-left: 2.9282576867vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__question {
    font-size: 18px;
    margin-top: 50px;
    padding-left: 40px;
  }
}
.feature-content__question:before {
  display: block;
  content: "";
  position: absolute;
  background-color: #9fc5ff;
  width: 5.8666666667vw;
  height: 0.2666666667vw;
  left: 0;
  top: 3.7333333333vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__question:before {
    width: 2.4890190337vw;
    height: 0.0732064422vw;
    top: 1.0980966325vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__question:before {
    width: 34px;
    height: 1px;
    top: 15px;
  }
}
.feature-content__dialog .feature-content__text {
  margin-top: 4.1333333333vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__dialog .feature-content__text {
    margin-top: 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__dialog .feature-content__text {
    margin-top: 10px;
  }
}
.feature-content__name {
  display: block;
  font-size: 3.7333333333vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  width: fit-content;
  height: auto;
  padding: 0.6666666667vw 2.4vw;
  margin-top: 6.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__name {
    font-size: 1.1713030747vw;
    margin-top: 2.9282576867vw;
    padding: 0.1464128843vw 0.7320644217vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__name {
    font-size: 16px;
    margin-top: 40px;
    padding: 2px 10px;
  }
}
.feature-content__name.blue {
  background-color: #0054d3;
  color: white;
}
.feature-content__name.white {
  color: #0054d3;
  background-color: white;
}
.feature-content__button {
  display: block;
  position: relative;
  background-color: white;
  font-size: 4.2666666667vw;
  font-weight: 700;
  letter-spacing: 0.1em;
  width: 86.6666666667vw;
  height: auto;
  padding: 6vw 7.7333333333vw 6.1333333333vw;
  margin: 10.6666666667vw auto 0;
  text-align: center;
  border-radius: 2.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .feature-content__button {
    width: 23.7920937042vw;
    font-size: 1.1713030747vw;
    margin: 5.8565153734vw auto 0;
    padding: 1.6105417277vw 2.196193265vw 1.6837481698vw;
    border-radius: 0.7320644217vw;
    transition: all 300ms ease;
  }
  .feature-content__button:hover {
    opacity: 0.5;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__button {
    width: 325px;
    font-size: 16px;
    margin: 80px auto 0;
    padding: 22px 30px 23px;
    border-radius: 10px;
  }
}
.feature-content__button span {
  color: #003a8f;
}
.feature-content__button:before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: 5.2vw;
  transform: translateY(-50%);
  width: 2.5333333333vw;
  height: 4.1333333333vw;
  background-image: url(../img/feature/arrow_btn.png?v=20251022115830);
  background-repeat: no-repeat;
  background-size: cover;
}
@media only screen and (min-width: 767px) {
  .feature-content__button:before {
    width: 0.7320644217vw;
    height: 1.1713030747vw;
    left: 1.4641288433vw;
  }
}
@media only screen and (min-width: 1367px) {
  .feature-content__button:before {
    width: 10px;
    height: 16px;
    left: 20px;
  }
}

@keyframes lp-flash-animation {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes pickup-title-animation {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  0.1% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1.2);
  }
}
@keyframes logo-zoom-animation {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  5% {
    opacity: 0.5;
  }
  90% {
    opacity: 0;
  }
  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}
@keyframes loop-mv-animation {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: -346.8vw 50%;
  }
}
@keyframes loop-mv-animation-pc {
  0% {
    background-position: 0% 50%;
  }
  100% {
    background-position: -124.4509516837vw 50%;
  }
}
.top:has(.top-item.js--anime) .top-bg--front {
  opacity: 1;
}
.top:has(.top-item.js--anime) .top-bg--bluedot.animation {
  opacity: 0;
  transform: scale(2);
  transition: opacity 400ms, transform 1200ms;
  transition-timing-function: ease-in, ease;
  transition-delay: 1200ms, 600ms;
}
.top-mv__logo {
  opacity: 0;
}
.top-mv__logo-glow {
  opacity: 0;
}
.top-mv__logo-img img {
  opacity: 0;
}
.top-mv__logo-img-off {
  transform: scale(0.8);
}
.top-mv__logo-bg:before {
  display: block;
  content: "";
  opacity: 0;
}
.top-mv__bg-img {
  animation: loop-mv-animation 32000ms linear infinite;
}
@media only screen and (min-width: 767px) {
  .top-mv__bg-img {
    animation: loop-mv-animation-pc 32000ms linear infinite;
  }
}
.top-mv__bg.js--anime:before {
  display: block;
  content: "";
  opacity: 0;
  transition: opacity 800ms;
  transition-delay: 600ms;
}
.top-mv__bg.js--anime .top-mv__logo {
  opacity: 1;
  transition: opacity 800ms;
  transition-delay: 600ms;
}
.top-mv__bg.js--anime .top-mv__logo-img-off {
  opacity: 1;
  transform: scale(1);
  transition: all 400ms;
  transition-delay: 1200ms;
}
.top-mv__bg.js--anime .top-mv__logo-img-on {
  animation: logo-zoom-animation 1000ms;
  animation-fill-mode: forwards;
  animation-delay: 1360ms;
}
.top-mv__bg.js--anime .top-mv__logo-img-on-2 {
  animation-delay: 1560ms;
}
.top-mv__bg.js--anime .top-mv__logo-bg:before {
  display: block;
  content: "";
  opacity: 1;
  transition: opacity 800ms;
  transition-delay: 1160ms;
}
.top-mv__bg.js--anime .top-mv__logo-glow {
  opacity: 1;
  transition: opacity 800ms;
  transition-delay: 1160ms;
}
.top-about__title {
  clip-path: polygon(50% 0, 50% 0, 50% 100%, 50% 100%);
}
.top-about__text {
  opacity: 0;
}
.top-about__box {
  opacity: 0;
}
.top-about.js--anime .top-about__title {
  transition: clip-path 300ms;
  clip-path: polygon(0 0, 100% 1%, 100% 100%, 0% 100%);
}
.top-about.js--anime .top-about__text {
  opacity: 1;
  transition: opacity 500ms;
  transition-delay: 150ms;
}
.top-about__box.js--anime {
  opacity: 1;
  transition: opacity 500ms;
}
.top-novelty__inner {
  opacity: 0;
}
.top-novelty.js--anime .top-novelty__inner {
  opacity: 1;
  transition: opacity 500ms;
}
.top-item .top-curve {
  height: 186.6666666667vw;
}
@media only screen and (min-width: 767px) {
  .top-item .top-curve {
    height: 80.5270863836vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item .top-curve {
    height: 1100px;
  }
}
.top-item__heading--default {
  display: block;
  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
}
.top-item.js--anime .top-item__heading--default {
  transition: all 500ms;
  transition-delay: 100ms;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.top-item.js--anime .top-item__heading--fade {
  opacity: 0;
  animation: pickup-title-animation 1200ms;
  animation-fill-mode: forwards;
  animation-delay: 400ms;
}
.top-item.js--anime .top-curve {
  transition: height 200ms;
  height: 22.6666666667vw;
}
.top-item.js--anime .top-curve_2 {
  transition-duration: 200ms;
  transition-delay: 140ms;
}
.top-item.js--anime .top-curve_3 {
  transition-duration: 230ms;
  transition-delay: 220ms;
}
.top-item.js--anime .top-curve_4 {
  transition-duration: 250ms;
  transition-delay: 280ms;
}
@media only screen and (min-width: 767px) {
  .top-item.js--anime .top-curve {
    height: 8.4187408492vw;
  }
}
@media only screen and (min-width: 1367px) {
  .top-item.js--anime .top-curve {
    height: 115px;
  }
}
.top-nav {
  opacity: 0;
}
.top-nav.js--anime {
  animation: lp-flash-animation 120ms;
  animation-iteration-count: 3;
  animation-fill-mode: forwards;
}
.top-feature {
  opacity: 0;
}
.top-feature.js--anime {
  opacity: 1;
  transition: opacity 500ms;
}
.top-shop__heading, .top-shop__subheading, .top-shop__address {
  opacity: 0;
}
.top-shop.js--anime .top-shop__heading, .top-shop.js--anime .top-shop__subheading, .top-shop.js--anime .top-shop__address {
  opacity: 1;
  transition: opacity 500ms;
}
/*# sourceMappingURL=sourcemaps/share.css.map */