:root {
  --scrollbar-size-px: 0px;
}

.contents-wrapper {
  line-height: 1;
}

.contents-wrapper div, .contents-wrapper span, .contents-wrapper applet, .contents-wrapper object, .contents-wrapper iframe,
.contents-wrapper h1, .contents-wrapper h2, .contents-wrapper h3, .contents-wrapper h4, .contents-wrapper h5, .contents-wrapper h6, .contents-wrapper p, .contents-wrapper blockquote, .contents-wrapper pre,
.contents-wrapper a, .contents-wrapper abbr, .contents-wrapper acronym, .contents-wrapper address, .contents-wrapper big, .contents-wrapper cite, .contents-wrapper code,
.contents-wrapper del, .contents-wrapper dfn, .contents-wrapper em, .contents-wrapper img, .contents-wrapper ins, .contents-wrapper kbd, .contents-wrapper q, .contents-wrapper s, .contents-wrapper samp,
.contents-wrapper small, .contents-wrapper strike, .contents-wrapper strong, .contents-wrapper sub, .contents-wrapper sup, .contents-wrapper tt, .contents-wrapper var,
.contents-wrapper b, .contents-wrapper u, .contents-wrapper i, .contents-wrapper center,
.contents-wrapper dl, .contents-wrapper dt, .contents-wrapper dd, .contents-wrapper ol, .contents-wrapper ul, .contents-wrapper li,
.contents-wrapper fieldset, .contents-wrapper form, .contents-wrapper label, .contents-wrapper legend,
.contents-wrapper table, .contents-wrapper caption, .contents-wrapper tbody, .contents-wrapper tfoot, .contents-wrapper thead, .contents-wrapper tr, .contents-wrapper th, .contents-wrapper td,
.contents-wrapper article, .contents-wrapper aside, .contents-wrapper canvas, .contents-wrapper details, .contents-wrapper embed,
.contents-wrapper figure, .contents-wrapper figcaption, .contents-wrapper footer, .contents-wrapper header, .contents-wrapper hgroup,
.contents-wrapper menu, .contents-wrapper nav, .contents-wrapper output, .contents-wrapper ruby, .contents-wrapper section, .contents-wrapper summary,
.contents-wrapper time, .contents-wrapper mark, .contents-wrapper audio, .contents-wrapper video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

.contents-wrapper article, .contents-wrapper aside, .contents-wrapper details, .contents-wrapper figcaption, .contents-wrapper figure,
.contents-wrapper footer, .contents-wrapper header, .contents-wrapper hgroup, .contents-wrapper menu, .contents-wrapper nav, .contents-wrapper section {
  display: block;
}

.contents-wrapper ol, .contents-wrapper ul {
  list-style: none;
}

.contents-wrapper blockquote, .contents-wrapper q {
  quotes: none;
}

.contents-wrapper blockquote:before, .contents-wrapper blockquote:after,
.contents-wrapper q:before, .contents-wrapper q:after {
  content: '';
  content: none;
}

.contents-wrapper table {
  border-collapse: collapse;
  border-spacing: 0;
}

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

@media screen and (min-width: 1200px) {
  .contents-wrapper .sp {
    display: none !important;
  }
}

.contents-wrapper .anchor {
  position: relative;
}

.contents-wrapper .anchor .anchor-point {
  position: absolute;
}

.seasonal-plp {
  font-family: "Noto Sans JP", sans-serif;
}

@media screen and (min-width: 769px) {
  .seasonal-plp {
    margin-bottom: calc(30 / 1366 * 100vw - 30 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp {
    margin-bottom: 30px;
  }
}

@media screen and (max-width: 768px) {
  .seasonal-plp {
    margin-bottom: calc(30 / 375 * 100vw - 30 / 375 * var(--scrollbar-size-px));
  }
}

.seasonal-plp picture {
  display: block;
}

.seasonal-plp .sound-btn {
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 20;
  border: none;
  background: transparent;
  width: 60px;
  height: 60px;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .seasonal-plp .sound-btn {
    display: none;
  }
}

.seasonal-plp .sound-btn img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  filter: drop-shadow(0 0 6px rgba(0, 0, 0, 0.5));
  transition: opacity 0.3s ease, transform 0.2s ease;
}

.seasonal-plp .sound-btn:hover img {
  transform: scale(1.05);
  opacity: 0.9;
}

@media screen and (max-width: 768px) {
  .seasonal-plp .sound-btn {
    width: 50px;
    height: 50px;
    bottom: 15px;
    right: unset;
    left: 15px;
  }
}

.seasonal-plp .fv {
  position: relative;
}

.seasonal-plp #heroVideo {
  width: 100%;
}

@media screen and (min-width: 769px) {
  .seasonal-plp .detail-box {
    margin-top: calc(30 / 1366 * 100vw - 30 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .detail-box {
    margin-top: 30px;
  }
}

@media screen and (max-width: 768px) {
  .seasonal-plp .detail-box {
    margin-top: calc(30 / 375 * 100vw - 30 / 375 * var(--scrollbar-size-px));
  }
}

.seasonal-plp .plp-title {
  font-weight: 400;
  text-align: center;
  margin-bottom: 0;
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .seasonal-plp .plp-title {
    font-size: calc(18 / 1366 * 100vw - 18 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-title {
    font-size: 18px;
  }
}

@media screen and (max-width: 768px) {
  .seasonal-plp .plp-title {
    font-size: calc(16 / 375 * 100vw - 16 / 375 * var(--scrollbar-size-px));
  }
}

.seasonal-plp .plp-text {
  text-align: center;
  margin-bottom: 0;
  line-height: 1.4;
}

@media screen and (min-width: 769px) {
  .seasonal-plp .plp-text {
    margin-top: calc(20 / 1366 * 100vw - 20 / 1366 * var(--scrollbar-size-px));
    font-size: calc(14 / 1366 * 100vw - 14 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-text {
    margin-top: 20px;
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-text {
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  .seasonal-plp .plp-text {
    font-size: calc(14 / 375 * 100vw - 14 / 375 * var(--scrollbar-size-px));
    margin-top: calc(20 / 375 * 100vw - 20 / 375 * var(--scrollbar-size-px));
  }
}

.seasonal-plp .plp-btn {
  margin-left: auto;
  margin-right: auto;
  background-color: black;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (min-width: 769px) {
  .seasonal-plp .plp-btn {
    margin-top: calc(20 / 1366 * 100vw - 20 / 1366 * var(--scrollbar-size-px));
    width: calc(220 / 1366 * 100vw - 220 / 1366 * var(--scrollbar-size-px));
    height: calc(46 / 1366 * 100vw - 46 / 1366 * var(--scrollbar-size-px));
    border-radius: calc(35 / 1366 * 100vw - 35 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-btn {
    margin-top: 20px;
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-btn {
    width: 220px;
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-btn {
    height: 46px;
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-btn {
    border-radius: 35px;
  }
}

@media screen and (max-width: 768px) {
  .seasonal-plp .plp-btn {
    margin-top: calc(22 / 375 * 100vw - 22 / 375 * var(--scrollbar-size-px));
    width: calc(220.5 / 375 * 100vw - 220.5 / 375 * var(--scrollbar-size-px));
    height: calc(46.5 / 375 * 100vw - 46.5 / 375 * var(--scrollbar-size-px));
    border-radius: calc(35 / 375 * 100vw - 35 / 375 * var(--scrollbar-size-px));
  }
}

.seasonal-plp .plp-btn p {
  color: white;
  margin-bottom: 0;
  font-weight: 500;
  line-height: 0;
}

@media screen and (min-width: 769px) {
  .seasonal-plp .plp-btn p {
    font-size: calc(16 / 1366 * 100vw - 16 / 1366 * var(--scrollbar-size-px));
  }
}

@media screen and (min-width: 769px) and (min-width: 1366px) {
  .seasonal-plp .plp-btn p {
    font-size: 16px;
  }
}

@media screen and (max-width: 768px) {
  .seasonal-plp .plp-btn p {
    font-size: calc(16 / 375 * 100vw - 16 / 375 * var(--scrollbar-size-px));
  }
}
