:root, body {
  --pc-content-width: min(100vw, 1920px);
  --sp-content-width: 100vw;
}

@media screen and (min-width: 1280px) {
  .spp__container {
    --pc-content-width: min(calc(100vw - 144px), 1776px);
  }
}
@media screen and (min-width: 1024px) and (max-width: 1279px) {
  .spp__container {
    --pc-content-width: calc(100vw - 128px);
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .spp__container {
    --sp-content-width: calc(100vw - 88px);
  }
}
@media screen and (min-width: 540px) and (max-width: 767px) {
  .spp__container {
    --sp-content-width: calc(100vw - 72px);
  }
}
@media screen and (min-width: 480px) and (max-width: 539px) {
  .spp__container {
    --sp-content-width: calc(100vw - 56px);
  }
}
@media screen and (max-width: 479px) {
  .spp__container {
    --sp-content-width: calc(100vw - 40px);
  }
}

.lp-smartseries {
  /* ----------------------------------------
  	keyvisual
  ---------------------------------------- */
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__content {
    height: 100%;
    display: flex;
    align-items: center;
  }
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__inner {
    margin-top: calc(-0.03125 * var(--pc-content-width));
    padding-left: calc(0.0833333333 * var(--pc-content-width));
  }
}
@media screen and (max-width: 1023px) {
  .lp-smartseries .keyvisual .keyvisual__inner {
    padding-top: calc(0.0426666667 * var(--sp-content-width));
    padding-inline: calc(0.0533333333 * var(--sp-content-width));
  }
}
.lp-smartseries .keyvisual .keyvisual__introduction {
  line-height: 1.5;
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__introduction {
    font-size: calc(0.0182291667 * var(--pc-content-width));
  }
}
@media screen and (max-width: 1023px) {
  .lp-smartseries .keyvisual .keyvisual__introduction {
    font-size: calc(0.048 * var(--sp-content-width));
  }
}
.lp-smartseries .keyvisual .keyvisual__title {
  line-height: 1.5;
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__title {
    margin-top: calc(0.0083333333 * var(--pc-content-width));
    margin-bottom: calc(0.0166666667 * var(--pc-content-width));
    font-size: calc(0.025 * var(--pc-content-width));
  }
}
@media screen and (max-width: 1023px) {
  .lp-smartseries .keyvisual .keyvisual__title {
    margin-top: calc(0.0213333333 * var(--sp-content-width));
    margin-bottom: calc(0.064 * var(--sp-content-width));
    font-size: calc(0.064 * var(--sp-content-width));
  }
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__name {
    margin-block: calc(0.0083333333 * var(--pc-content-width));
  }
}
@media screen and (max-width: 1023px) {
  .lp-smartseries .keyvisual .keyvisual__name {
    margin-block: calc(0.0213333333 * var(--sp-content-width));
  }
}
.lp-smartseries .keyvisual .keyvisual__link {
  line-height: 1.5;
  position: relative;
  display: inline-block;
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__link {
    padding-right: calc(0.0114583333 * var(--pc-content-width));
  }
}
@media screen and (max-width: 1023px) {
  .lp-smartseries .keyvisual .keyvisual__link {
    padding-right: calc(0.0453333333 * var(--sp-content-width));
  }
}
.lp-smartseries .keyvisual .keyvisual__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  border-style: solid;
  border-color: #633889 transparent transparent transparent;
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__link::after {
    border-width: calc(0.0041666667 * var(--pc-content-width)) calc(0.0036458333 * var(--pc-content-width)) 0 calc(0.0036458333 * var(--pc-content-width));
  }
}
@media screen and (max-width: 1023px) {
  .lp-smartseries .keyvisual .keyvisual__link::after {
    border-width: calc(0.0133333333 * var(--sp-content-width)) calc(0.012 * var(--sp-content-width)) 0 calc(0.012 * var(--sp-content-width));
  }
}
@media screen and (min-width: 1024px) {
  .lp-smartseries .keyvisual .keyvisual__note {
    position: absolute;
    left: calc(0.0833333333 * var(--pc-content-width));
    bottom: calc(0.0125 * var(--pc-content-width));
  }
}
@media screen and (max-width: 1023px) {
  .lp-smartseries .keyvisual .keyvisual__note {
    margin-top: calc(0.0586666667 * var(--sp-content-width));
  }
}