.l-page.novelty .l-page-main__inner {
  padding-top: 21vw;
  padding-bottom: 42.5vw;
}

.l-page.novelty .l-page-main__content {
  max-width: none;
  margin-top: 14.8vw;
}

.novelty__page-title {
  position: relative;
  width: 88.7vw;
  height: 11.7vw;
  margin: 0 auto;
}

.novelty__title-en {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  width: 100%;
  height: auto;
  transform: translate(-50%, -50%);
}

.novelty__title-svg,
.novelty__title-ja-svg {
  display: block;
  width: 100%;
  height: auto;
  overflow: visible;
}

.novelty__title-svg .c-sec__ttl__en__cont {
  position: static;
}

.novelty__title-svg .c-sec__ttl__en__cont.-normal {
  clip-path: inset(0 0 52% 0);
}

.novelty__title-svg .c-sec__ttl__en__cont.-blur {
  clip-path: inset(48% 0 0 0);
}

.novelty__title-ja {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 34.8vw;
  height: auto;
  transform: translate(-50%, -50%);
  filter: drop-shadow(0 0 10px #12122e) drop-shadow(0 0 15px #12122e);
  opacity: 0;
}
.-reveal .novelty__title-ja {
  animation: itemFadeIn 1s 0.5s ease-out forwards;
}

.novelty__anchors {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 86.1vw;
  margin: 0 auto;
}

.novelty__anchor {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26.6vw;
  height: 12.3vw;
  padding-right: 2.8vw;
  background: rgba(255, 255, 255, 0.7);
  clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px);
  color: rgba(255, 255, 255, 0.7);
  font-size: 5.1vw;
  font-weight: 800;
  letter-spacing: 0.05em;
}
.novelty__anchor::before {
  position: absolute;
  top: 1px;
  left: 1px;
  bottom: 1px;
  right: 1px;
  background: #12122e;
  clip-path: inherit;
  content: "";
}
.novelty__anchor:focus-visible::before {
  background: #172f73;
}
.novelty__anchor + .novelty__anchor {
  margin-left: 3vw;
}

.novelty__anchor-text {
  position: relative;
  transform: scaleX(0.7);
  white-space: nowrap;
}

.novelty__anchor-arrow {
  position: absolute;
  top: 42%;
  right: 3.5vw;
  width: 2vw;
  height: 2vw;
  border-right: 1px solid rgba(255, 255, 255, 0.7);
  border-bottom: 1px solid rgba(255, 255, 255, 0.7);
  transform: rotate(45deg);
  transition: transform 0.3s ease-out;
}
.novelty__list {
  width: 93.3vw;
  margin: 14.3vw auto 0;
}

.novelty__item {
  position: relative;
  scroll-margin-top: 50px;
}

.novelty__item + .novelty__item {
  margin-top: 14.3vw;
}

.novelty__badge {
  position: absolute;
  top: -5.2vw;
  left: 50%;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 49.4vw;
  height: 10.7vw;
  padding-bottom: 0.5vw;
  background: url("/assets/img/novelty/badge_center.png") center/auto 100% repeat-x;
  color: #0b2563;
  font-size: 5.6vw;
  font-weight: 900;
  letter-spacing: 0.05em;
  transform: translateX(-50%);
  border-inline: 5.1vw solid transparent;
  background-clip: padding-box;
}
.novelty__badge::before, .novelty__badge::after {
  position: absolute;
  top: 0;
  width: 5.1vw;
  height: 100%;
  background: url("/assets/img/novelty/badge_edge.png") center/100% 100% no-repeat;
  content: "";
}
.novelty__badge::before {
  left: -5.2vw;
  transform: scaleX(-1);
}
.novelty__badge::after {
  right: -5.2vw;
}
.novelty__badge span {
  flex: 0 0 auto;
  transform: scaleX(0.7);
  white-space: nowrap;
}

.novelty__panel {
  --corner-cut: 4.1vw;
  padding: 11.2vw 6.1vw 6.1vw;
  background: #0b2563;
  clip-path: polygon(var(--corner-cut) 0, calc(100% - var(--corner-cut)) 0, 100% var(--corner-cut), 100% calc(100% - var(--corner-cut)), calc(100% - var(--corner-cut)) 100%, var(--corner-cut) 100%, 0 calc(100% - var(--corner-cut)), 0 var(--corner-cut));
}

.novelty__info {
  min-width: 0;
}

.novelty__title {
  padding-bottom: 4.1vw;
  border-bottom: 1px solid rgba(51, 119, 255, 0.65);
  font-size: 6.1vw;
  font-weight: 700;
  line-height: 1.32;
}
.novelty__title span {
  display: block;
  width: 142.857%;
  transform: scaleX(0.7);
  transform-origin: left;
}

.novelty__specs {
  margin-top: 4.1vw;
  font-size: 3.8vw;
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: 1.8;
}

.novelty__spec dt, .novelty__spec dd {
  display: inline;
}
.novelty__spec dd {
  margin: 0;
}

.novelty__notes {
  margin-top: 4.1vw;
  font-size: 2.5vw;
  font-weight: 500;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.7);
}
.novelty__notes li {
  padding-left: 1em;
  text-indent: -1em;
}

.novelty__media {
  min-width: 0;
  margin-top: 4.1vw;
}

.novelty__slider {
  overflow: hidden;
}

.novelty__slide {
  background: #fff;
  aspect-ratio: 1;
}
.novelty__slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.novelty__pagination {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 2.3vw;
  margin-top: 3vw;
}
.novelty__pagination .swiper-pagination-bullet {
  width: 1.5vw;
  height: 1.5vw;
  margin-inline: 1.1vw !important;
  border-radius: 0;
  background: #fff;
  opacity: 0.45;
  transform: rotate(45deg);
}
.novelty__pagination .swiper-pagination-bullet-active {
  opacity: 1;
}

.novelty__anchors,
.novelty__item {
  opacity: 0;
  filter: blur(10px);
}

.novelty__anchors.-reveal {
  animation: blurIn 0.6s 0.4s ease-out forwards;
}

.novelty__item.-reveal {
  animation: blurIn 0.6s ease-out forwards;
}

.l-page.novelty .c-paging {
  margin-top: 10.8vw;
}

.l-page.novelty .c-paging__item.-back {
  animation: none;
}
.l-page.novelty .c-paging__item.-back.-reveal {
  animation: blurIn 0.6s ease-out forwards;
}

.l-page.novelty .c-pagetop {
  display: block;
}

@media (min-width: 800px) {
  .l-page.novelty .l-page-main__inner {
    padding-top: min(10.75vw, 129px);
    padding-bottom: min(18.8333333333vw, 226px);
  }
  .l-page.novelty .l-page-main__content {
    margin-top: min(10vw, 120px);
  }
  .novelty__page-title {
    width: min(45.8333333333vw, 550px);
    height: min(7.0833333333vw, 85px);
  }
  .novelty__title-ja {
    width: min(11.3333333333vw, 136px);
  }
  .novelty__anchors {
    width: min(73.6666666667vw, 884px);
  }
  .novelty__anchor {
    width: min(11.1666666667vw, 134px);
    height: min(4.6666666667vw, 56px);
    padding-right: min(1.1666666667vw, 14px);
    font-size: min(2vw, 24px);
  }
  .novelty__anchor + .novelty__anchor {
    margin-left: min(1.3333333333vw, 16px);
  }
  .novelty__anchor-arrow {
    right: min(1.3333333333vw, 16px);
    width: min(0.75vw, 9px);
    height: min(0.75vw, 9px);
  }
  .novelty__list {
    width: min(92.1666666667vw, 1106px);
    margin-top: min(6.6666666667vw, 80px);
  }
  .novelty__item + .novelty__item {
    margin-top: min(5.3333333333vw, 64px);
  }
  .novelty__badge {
    top: max(-1.75vw, -21px);
    width: min(17.5vw, 210px);
    height: min(3.5vw, 42px);
    padding-bottom: min(0.1666666667vw, 2px);
    border-inline-width: min(1.6666666667vw, 20px);
    font-size: min(2vw, 24px);
  }
  .novelty__badge::before, .novelty__badge::after {
    width: min(1.6666666667vw, 20px);
  }
  .novelty__badge::before {
    left: max(-1.6666666667vw, -20px);
  }
  .novelty__badge::after {
    right: max(-1.6666666667vw, -20px);
  }
  .novelty__panel {
    --corner-cut: min(1.6666666667vw, 20px);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    min-height: min(45.4166666667vw, 545px);
    padding: min(4.6666666667vw, 56px) min(4vw, 48px) min(4vw, 48px);
  }
  .novelty__info {
    width: calc(100% - min(39.1666666667vw, 470px));
  }
  .novelty__title {
    padding-bottom: min(1.3333333333vw, 16px);
    font-size: min(2.5vw, 30px);
  }
  .novelty__specs {
    margin-top: min(1.3333333333vw, 16px);
    font-size: min(1.4166666667vw, 17px);
  }
  .novelty__notes {
    margin-top: min(1.3333333333vw, 16px);
    font-size: min(1vw, 12px);
  }
  .novelty__media {
    width: min(35.8333333333vw, 430px);
    margin-top: 0;
  }
  .novelty__pagination {
    margin-top: min(1.5vw, 18px);
    min-height: min(0.8333333333vw, 10px);
  }
  .novelty__pagination .swiper-pagination-bullet {
    width: min(0.6666666667vw, 8px);
    height: min(0.6666666667vw, 8px);
    margin-inline: min(0.5vw, 6px) !important;
  }
  .l-page.novelty .c-paging {
    margin-top: 100px;
  }
}

@media (hover: hover) and (pointer: fine) and (min-width: 800px) {
  .novelty__anchor:hover .novelty__anchor-arrow {
    transform: translateY(min(0.3333333333vw, 4px)) rotate(45deg);
  }
}

@media (max-width: 799px) {
  .novelty__badge {
    background: url("/assets/img/novelty/badge_sp.svg") center/100% 100% no-repeat;
    background-origin: border-box;
    background-clip: border-box;
  }
  .novelty__badge::before, .novelty__badge::after {
    display: none;
  }
}

@media (min-width: 800px) and (max-width: 1199px) {
  .l-page.novelty .c-paging {
    margin-top: 8.3vw;
  }
}