@charset "utf-8";

:root {
  --viewport: 390;
  --color-primary: #222;
  --color-bg-gray: #eee;
  --space-inside: calc(20 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  :root {
    --space-inside: 20px;
  }
}


.topicpath {
  padding: 2.051vw 5.128vw;
  font-size: 2.821vw;
  line-height: 1.72;
  font-weight: 300;
  color: #888;
}

@media screen and (min-width: 1024px) {
    .topicpath {
        display: block;
        font-size: 11px;
        padding: 12px 20px 25px 35px;
        margin: 0 auto;
        width: calc(100% - 120px);
    }
}

.topicpath span {
  margin: 0 0.5em;
}

.topicpath span,
.topicpath a {
  color: #222;
}


.lp-outer {
  padding-bottom: calc(80 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp-outer {
    padding-bottom: 120px;
  }
}

.lp img {
  max-width: 100%;
}

.lp-outer img {
  max-width: 100%;
}

.lp-container > *:not(:first-child):not(.section, .banner, .multiImages, .card, .other-box, .coupon, .sticky),
.lp .section > *:not(:first-child):not(.section, .banner, .multiImages, .card, .other-box, .coupon, .sticky) {
  margin-top: calc(78 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp-container > *:not(:first-child):not(.section, .banner, .multiImages, .card, .other-box, .coupon, .sticky),
  .lp .section > *:not(:first-child):not(.section, .banner, .multiImages, .card, .other-box, .coupon, .sticky) {
    margin-top: 100px;
  }
}

.lp-container > *:first-child,
.lp .section > *:first-child {
  margin-top: 0;
}

@media screen and (min-width: 1024px) {
  .lp-container > *:first-child,
  .lp .section > *:first-child {
    margin-top: 0;
  }
}

.lp .section {
  padding-block: calc(40 * (100vw / var(--viewport)));
  margin-top: 0;
}

@media screen and (min-width: 1024px) {
  .lp .section {
    padding-block: 60px;
    margin-top: 0;
  }
}

.lp .section > .bg:last-child {
  margin-bottom: calc(-14 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .section > .bg:last-child {
    margin-bottom: -11px;
  }
}

.lp .heading {
  font-size: calc(24 * (100vw / var(--viewport)));
  line-height: calc(56 / 24);
  letter-spacing: 0.02em;
  text-align: center;
  font-weight: 400;
  width: 100%;
  max-width: 1040px;
  margin-inline: auto;
  padding-inline: var(--space-inside);
}

@media screen and (min-width: 1024px) {
  .lp .heading {
    font-size: 32px;
    line-height: calc(56 / 32);
  }
}

@media screen and (min-width: 1024px) {
  .lp .heading.-left {
    text-align: left;
  }
}

@media screen and (min-width: 1024px) {
  .lp .heading.-right {
    text-align: right;
  }
}

.lp .image {
  width: 100%;
  max-width: 1040px;
  margin-inline: auto;
  padding-inline: var(--space-inside);
  text-align: center;
  display: block;
}

@media screen and (min-width: 1024px) {
  .lp .image {
    padding-inline: 20px;
  }
}

.lp .image.-full {
  max-width: 100%;
  padding-inline: 0;
}

@media screen and (min-width: 1024px) {
  .lp .image.-small {
    max-width: 720px;
  }
}

.lp .image a {
  display: block;
}

.lp .image img {
  width: auto;
  height: auto;
}

.lp .image.-full img {
  width: 100%;
}

.lp .image.-small img {
  width: 100%;
}

.lp .text {
  width: 100%;
  max-width: 720px;
  margin-inline: auto;
  padding-inline: var(--space-inside);
  font-size: calc(15 * (100vw / var(--viewport)));
  line-height: calc(25.2 / 15);
  letter-spacing: 0.02em;
  font-weight: 400;
  text-align: justify;
}

@media screen and (min-width: 1024px) {
  .lp .text {
    font-size: 16px;
    line-height: calc(28.8 / 16);
  }
}

.lp .text p {
  line-height: calc(25.2 / 15);
}

@media screen and (min-width: 1024px) {
  .lp .text p {
    line-height: calc(28.8 / 16);
  }
}

.lp .image + .text {
  margin-top: calc(20 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .image + .text {
    margin-top: 40px;
  }
}

.lp .button {
  background-color: var(--color-primary);
  color: #fff;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  text-align: center;
  min-width: calc(250 * (100vw / var(--viewport)));
  max-width: calc(100% - (100 * (100vw / var(--viewport))));
  min-height: calc(46 * (100vw / var(--viewport)));
  display: -ms-grid;
  display: grid;
  place-items: center;
  font-size: calc(15 * (100vw / var(--viewport)));
  line-height: calc(28.8 / 15);
  font-weight: 400;
  padding: calc(5 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .button {
    min-width: 382px;
    max-width: 680px;
    min-height: 55px;
    font-size: 16px;
    line-height: calc(22.4 / 16);
    letter-spacing: 0.02em;
    padding: 10px;
  }
}

.lp .button + .button {
  margin-top: calc(16 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .button + .button {
    margin-top: 16px;
  }
}

.lp .button.-full {
  max-width: 100%;
  width: 100%;
}

@media screen and (min-width: 1024px) {
  .lp .button.-full {
    max-width: 100%;
    width: 100%;
  }
}

.lp .sticky {
  margin-top: calc(60 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .sticky {
    margin-top: 120px;
  }
}

.lp .sticky__container > *:first-child {
  margin-top: 0;
}

.lp .sticky__container {
  opacity: 1;
  -webkit-transition: opacity cubic-bezier(0.4, 0, 1, 1) 0.25s;
  -o-transition: opacity cubic-bezier(0.4, 0, 1, 1) 0.25s;
  transition: opacity cubic-bezier(0.4, 0, 1, 1) 0.25s;
  z-index: 10;
  width: 100%;
  max-width: 1040px;
  margin-inline: auto;
  padding-inline: var(--space-inside);
  pointer-events: none;
}

.lp .sticky__container > * {
  pointer-events: all;
}

.lp .sticky__container.is-fix {
  z-index: -100;
  position: fixed;
  bottom: 50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  z-index: 10;
}

@media screen and (min-width: 1024px) {
  .lp .sticky__container.is-fix {
    bottom: 50px;
  }
}

.lp .sticky__container.is-hide {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}

.lp .mv {
  padding-bottom: calc(33 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .mv {
    padding-bottom: 92px;
  }
}

.lp .mv + .mv {
  margin-top: 0;
}

@media screen and (min-width: 1024px) {
  .lp .mv + .section {
    margin-top: -40px;
  }
}

@media screen and (max-width: 1023px) {
  .lp .mv__image.image {
    padding-inline: 0;
  }
}

.lp .mv__heading,
.lp .mv__text {
  margin-top: calc(25 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .mv__heading,
  .lp .mv__text {
    margin-top: 50px;
  }
}

.lp .mv__heading + .mv__text {
  margin-top: calc(2 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .mv__heading + .mv__text {
    margin-top: 21px;
  }
}

.lp .banner {
  margin-top: calc(74 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .banner {
    margin-top: 100px;
  }
}

.lp .banner + .banner {
  margin-top: calc(53 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .banner + .banner {
    margin-top: 93px;
  }
}

.lp .banner + .multiImages.-shift.-large {
  margin-top: calc(33 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .banner + .multiImages.-shift.-large {
    margin-top: 42px;
  }
}

.lp .banner + .multiImages.-shift.-large.-overlap {
  margin-top: calc(23 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .banner + .multiImages.-shift.-large.-overlap {
    margin-top: 43px;
  }
}

.lp .banner__image + .banner__text {
  margin-top: calc(16 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .banner__image + .banner__text {
    margin-top: 34px;
  }
}

@media screen and (min-width: 1024px) {
  .lp .banner__image.-auto + .banner__text,
  .lp .banner__image.-small + .banner__text {
    margin-top: 44px;
  }
}

.lp .banner__heading + .banner__image {
  margin-top: calc(13 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .banner__heading + .banner__image {
    margin-top: 26px;
  }
}

.lp .multiImages {
  margin-top: calc(57 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .multiImages {
    margin-top: 100px;
  }
}

.lp .multiImages + .multiImages {
  margin-top: calc(62 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .multiImages + .multiImages {
    margin-top: 109px;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages--banner + .multiImages--banner {
    margin-top: 90px;
  }
}

.lp .multiImages + .banner {
  margin-top: calc(65 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .multiImages + .banner {
    margin-top: 129px;
  }
}

.lp .multiImages.-overlap + .banner {
  margin-top: calc(79 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-overlap + .banner {
    margin-top: 120px;
  }
}

.lp .multiImages__heading + .multiImages__layout {
  margin-top: calc(15 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .multiImages__heading + .multiImages__layout {
    margin-top: 38px;
  }
}

.lp .multiImages__layout {
  width: 100%;
  max-width: 1040px;
  margin-inline: auto;
  padding-inline: var(--space-inside);
  position: relative;
}

@media screen and (min-width: 1024px) {
  .lp .multiImages__layout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-reverse .multiImages__layout {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}

.lp .multiImages__column {
  position: relative;
}

@media screen and (min-width: 1024px) {
  .lp .multiImages__column {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc(50% - 20px);
    flex: 0 0 calc(50% - 20px);
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift:not(.-reverse) .multiImages__column:nth-of-type(even) {
    margin-top: 100px;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-reverse .multiImages__column:nth-of-type(even) {
    margin-top: 100px;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-large:not(.-reverse) .multiImages__column:nth-of-type(even) {
    margin-top: 200px;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-large.-reverse .multiImages__column:nth-of-type(even) {
    margin-top: 200px;
  }
}

@media screen and (max-width: 1023px) {
  .lp .multiImages.-shift.-large .multiImages__column {
    padding-inline: 0 calc(100 * (100vw / var(--viewport)));
  }
}

@media screen and (max-width: 1023px) {
  .lp .multiImages.-shift.-large .multiImages__column:nth-of-type(even) {
    padding-inline: calc(100 * (100vw / var(--viewport))) 0;
  }
}

@media screen and (max-width: 1023px) {
  .lp .multiImages.-shift.-large.-reverse .multiImages__column {
    padding-inline: calc(100 * (100vw / var(--viewport))) 0;
  }
}

@media screen and (max-width: 1023px) {
  .lp .multiImages.-shift.-large.-reverse .multiImages__column:nth-of-type(even) {
    padding-inline: 0 calc(100 * (100vw / var(--viewport)));
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-overlap .multiImages__column {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 54%;
    flex: 0 0 54%;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-overlap:not(.-reverse) .multiImages__column:nth-of-type(even) {
    right: 20px;
    position: absolute;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-reverse.-overlap .multiImages__column:nth-of-type(even) {
    left: 20px;
    position: absolute;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-overlap .multiImages__layout {
    padding-bottom: 100px;
  }
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-large.-overlap .multiImages__layout {
    padding-bottom: 200px;
  }
}

.lp .multiImages__column a {
  display: block;
}

.lp .multiImages__column img {
  width: 100%;
  height: auto;
}

.lp .multiImages__column + .multiImages__column {
  margin-top: calc(20 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .multiImages__column + .multiImages__column {
    margin-top: 0;
  }
}

.lp .multiImages.-shift:not(.-large) > .multiImages__text {
  margin-top: calc(16 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift:not(.-large) > .multiImages__text {
    margin-top: 55px;
  }
}

.lp .multiImages:not(.-shift) .multiImages__text {
  margin-top: calc(25 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .multiImages:not(.-shift) .multiImages__text {
    margin-top: 55px;
  }
}

.lp .multiImages__layout > .multiImages__text {
  background-color: #eeeeeeb3;
  font-size: calc(15 * (100vw / var(--viewport)));
  line-height: calc(25.2 / 15);
  letter-spacing: 0.02em;
  padding: calc(16 * (100vw / var(--viewport))) calc(20 * (100vw / var(--viewport))) calc(14 * (100vw / var(--viewport)));
  text-align: justify;
  width: calc(100% - (68 * (100vw / var(--viewport))));
  margin-top: calc(-20 * (100vw / var(--viewport)));
  position: relative;
}
@media screen and (min-width: 1024px) {
  .lp .multiImages__layout > .multiImages__text {
    font-size: 16px;
    line-height: calc(28.8 / 16);
    letter-spacing: 0.02em;
    padding: 40px;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 100%;
    max-width: 380px;
    margin: -160px auto 0;
  }
}

@media screen and (max-width: 1023px) {
  .lp .multiImages.-shift.-large .multiImages__layout > .multiImages__text {
    margin-left: 0;
  }
}

@media screen and (max-width: 1023px) {
  .lp .multiImages.-shift.-large.-reverse .multiImages__layout > .multiImages__text {
    margin-left: auto;
    margin-right: 0;
  }
}

.lp .multiImages__layout > .multiImages__text p {
  line-height: calc(25.2 / 15);
}
@media screen and (min-width: 1024px) {
  .lp .multiImages__text p {
    line-height: calc(28.8 / 16);
  }
}
@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift .multiImages__layout > .multiImages__text {
    -webkit-transform: translateX(-89px);
    -ms-transform: translateX(-89px);
    transform: translateX(-89px);
  }
}
@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-reverse .multiImages__layout > .multiImages__text {
    -webkit-transform: translateX(89px);
    -ms-transform: translateX(89px);
    transform: translateX(89px);
  }
}

.lp .multiImages__button {
  margin-top: calc(24 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .multiImages__button {
    margin-top: 60px;
  }
}

.lp .multiImages.-shift .multiImages__button {
  margin-top: calc(24 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift .multiImages__button {
    margin-top: 52px;
  }
}

.lp .multiImages.-shift.-large .multiImages__button {
  margin-top: calc(40 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-large .multiImages__button {
    margin-top: 58px;
  }
}

.lp .multiImages.-shift.-large.-overlap .multiImages__button {
  margin-top: calc(30 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .multiImages.-shift.-large.-overlap .multiImages__button {
    margin-top: 60px;
  }
}

.lp .multiImages .banner {
  margin-top: calc(25 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .multiImages .banner {
    margin-top: 50px;
  }
}

.lp .card {
  margin-top: calc(79 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .card {
    margin-top: 120px;
  }
}

.lp .card + .card {
  margin-top: calc(65 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .card + .card {
    margin-top: 69px;
  }
}

.lp .card--itemsLink + .card--itemsLink {
  margin-top: calc(65 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .card--itemsLink + .card--itemsLink {
    margin-top: 120px;
  }
}

.lp .card + .multiImages {
  margin-top: calc(78 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .card + .multiImages {
    margin-top: 80px;
  }
}

.lp .card__container {
  width: 100%;
  max-width: 1040px;
  margin-inline: auto;
  padding-inline: var(--space-inside);
}

@media screen and (min-width: 1024px) {
  .lp .card__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

@media screen and (min-width: 1024px) {
  .lp .card.-reverse .card__container {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
}

@media screen and (min-width: 1024px) {
  .lp .card__title {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    padding-inline: 0 !important;
    margin-bottom: 36px;
  }
}

.lp .card__title + .card__image {
  margin-top: calc(13 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .card__title + .card__image {
    margin-top: 0;
  }
}

.lp .card__image img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1024px) {
  .lp .card__image {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 48%;
    flex: 0 1 48%;
  }
}

.lp .card__contents {
  margin-top: calc(16 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .card__contents {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 46%;
    flex: 0 1 46%;
    -ms-flex-item-align: start;
    align-self: flex-start;
    margin-top: 84px;
  }
}

.lp .card__heading {
  font-size: calc(20 * (100vw / var(--viewport)));
  line-height: calc(56 / 20);
  letter-spacing: 0.02em;
  font-weight: 400;
  text-align: center;
}

@media screen and (min-width: 1024px) {
  .lp .card__heading {
    font-size: 22px;
    line-height: calc(56 / 22);
    text-align: justify;
  }
}

@media screen and (min-width: 1024px) {
  .lp .card__heading + .card__text {
    margin-top: 7px;
  }
}

.lp .card__text {
  font-size: calc(15 * (100vw / var(--viewport)));
  line-height: calc(25.2 / 15);
  letter-spacing: 0.02em;
  font-weight: 400;
  text-align: justify;
}

@media screen and (min-width: 1024px) {
  .lp .card__text {
    font-size: 16px;
    line-height: calc(28.8 / 16);
  }
}

.lp .card__text p {
  line-height: calc(25.2 / 15);
}

@media screen and (min-width: 1024px) {
  .lp .card__text p {
    line-height: calc(28.8 / 16);
  }
}

@media screen and (min-width: 1024px) {
  .lp .card__text .items {
    margin-left: 0;
  }
}

.lp .card__button {
  margin-top: calc(23 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .card__button {
    min-width: 240px;
    min-height: 55px;
    margin-left: 0;
    margin-top: 33px;
  }
}

.lp .items {
  width: calc(100% - 30 * (100vw / var(--viewport)));
  margin-top: calc(23 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .items {
    margin-top: 32px;
    width: 100%;
    max-width: 328px;
    margin-inline: auto;
  }
}

.lp .items__item {
  font-size: calc(13 * (100vw / var(--viewport)));
  line-height: calc(19.5 / 13);
}

@media screen and (min-width: 1024px) {
  .lp .items__item {
    font-size: 14px;
    line-height: calc(20 / 14);
  }
}

.lp .items__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.lp .items__item + .items__item {
  margin-top: calc(14 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .items__item + .items__item {
    margin-top: 15px;
  }
}

.lp .items__row > p {
  line-height: calc(19.5 / 13);
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  max-width: 62.4%;
}
@media screen and (min-width: 1024px) {
  .lp .items__row > p {
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    max-width: 16em;
    margin-inline: 0 auto;
    line-height: calc(20 / 14);
  }
}

.lp .items__row > span:not(.items__button) {
  margin-inline: calc(16 * (100vw / var(--viewport))) calc(14 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .items__row > span:not(.items__button) {
    margin-inline: 0;
  }
}

.lp .items__button {
  background-color: var(--color-primary);
  color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: calc(40 * (100vw / var(--viewport)));
  min-height: calc(20 * (100vw / var(--viewport)));
  text-align: center;
  font-weight: 400;
  font-size: calc(11 * (100vw / var(--viewport)));
  line-height: calc(16 / 10);
  letter-spacing: 0.02em;
  text-transform: uppercase;
  display: -ms-grid;
  display: grid;
  place-items: center;
  margin-left: auto;
  align-self: baseline;
  margin-left: auto;
}
@media screen and (min-width: 1024px) {
  .lp .items__button {
    font-size: 12px;
    line-height: calc(18 / 12);
    min-width: 40px;
    min-height: 20px;
    margin-left: 12px;
  }
}

.lp .other-box {
  width: calc(100% - (40 * (100vw / var(--viewport))));
  max-width: 800px;
  margin-inline: auto;
  background-color: var(--color-bg-gray);
  padding: calc(30 * (100vw / var(--viewport)));
  margin-top: calc(39 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .other-box {
    width: 100%;
    padding: 40px;
    margin-top: 60px;
  }
}

@media screen and (min-width: 1024px) {
  .lp .other-box__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

@media screen and (min-width: 1024px) {
  .lp .other-box__image {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 230px;
    flex: 0 0 230px;
  }
}

.lp .other-box__image img {
  width: 100%;
  height: auto;
}

@media screen and (min-width: 1024px) {
  .lp .other-box__contents {
    padding-left: 30px;
    margin-top: 5px;
  }
}

.lp .other-box__heading {
  font-weight: 600;
  letter-spacing: 0.02em;
  font-size: calc(18 * (100vw / var(--viewport)));
  line-height: calc(27 / 18);
  margin-top: calc(30 * (100vw / var(--viewport)));
  text-align: center;
}
@media screen and (min-width: 1024px) {
  .lp .other-box__heading {
    font-size: 20px;
    line-height: calc(56 / 20);
    margin-top: 0;
    text-align: justify;
  }
}

.lp .other-box__heading + .other-box__text {
  margin-top: calc(20 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .other-box__heading + .other-box__text {
    margin-top: -5px;
  }
}

.lp .other-box__text {
  font-size: calc(15 * (100vw / var(--viewport)));
  line-height: calc(28.8 / 15);
  letter-spacing: 0.02em;
  font-weight: 400;
  text-align: justify;
}
@media screen and (min-width: 1024px) {
  .lp .other-box__text {
    font-size: 16px;
    line-height: calc(28.8 / 16);
  }
}
.lp .other-box__text p {
  line-height: calc(28.8 / 15);
}

@media screen and (min-width: 1024px) {
  .lp .other-box__text p {
    line-height: calc(28.8 / 16);
  }
}

.lp .coupon {
  margin-top: calc(66 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .coupon {
    margin-top: 109px;
  }
}

.lp .coupon__heading {
  font-size: calc(24 * (100vw / var(--viewport)));
  line-height: calc(56 / 24);
  letter-spacing: 0.02em;
  font-weight: 400;
}

@media screen and (min-width: 1024px) {
  .lp .coupon__heading {
    font-size: 32px;
    line-height: calc(56 / 32);
  }
}

@media screen and (min-width: 1024px) {
  .lp .coupon__heading + .coupon__text {
    margin-top: 22px;
  }
}

.lp .coupon__text {
  font-size: calc(15 * (100vw / var(--viewport)));
  line-height: calc(25.2 / 15);
  letter-spacing: 0.02em;
  font-weight: 400;
}

@media screen and (min-width: 1024px) {
  .lp .coupon__text {
    font-size: 16px;
    line-height: calc(28.8 / 16);
  }
}

.lp .coupon__text p {
  line-height: calc(25.2 / 15);
}

@media screen and (min-width: 1024px) {
  .lp .coupon__text p {
    line-height: calc(28.8 / 16);
  }
}

.lp .coupon__text + .coupon-code {
  margin-top: calc(28 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .coupon__text + .coupon-code {
    margin-top: 52px;
  }
}

.lp .coupon-code {
  width: calc(100% - (40 * (100vw / var(--viewport))));
  margin-inline: auto;
  cursor: pointer;
  text-align: center;
  padding: calc(17 * (100vw / var(--viewport))) var(--space-inside) calc(17 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .coupon-code {
    width: calc(100% - (2 * var(--space-inside)));
    max-width: 680px;
    padding-block: 30px 15px;
  }
}

.lp .coupon-code + .coupon-code {
  margin-top: calc(80 * (100vw / var(--viewport)));
}
@media screen and (min-width: 1024px) {
  .lp .coupon-code + .coupon-code {
    margin-top: 100px;
  }
}

.lp .coupon-code__heading {
  font-size: calc(14 * (100vw / var(--viewport)));
  line-height: calc(20 / 14);
  font-weight: 400;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 1024px) {
  .lp .coupon-code__heading {
    font-size: 16px;
    line-height: calc(20 / 16);
  }
}

.lp .coupon-code__code {
  font-weight: 600;
  font-size: calc(26 * (100vw / var(--viewport)));
  line-height: calc(26 / 26);
  letter-spacing: 0.02em;
  margin-top: calc(10 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .coupon-code__code {
    font-size: 31px;
    line-height: calc(56 / 31);
    margin-top: 3px;
  }
}

.lp .bg.card {
  padding-block: calc(26 * (100vw / var(--viewport))) calc(58 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .bg.card {
    padding-block: 69px 80px;
  }
}

.lp .bg.multiImages {
  padding-block: calc(60 * (100vw / var(--viewport))) calc(54 * (100vw / var(--viewport)));
}

@media screen and (min-width: 1024px) {
  .lp .bg.multiImages {
    padding-block: 80px 72px;
  }
}

.lp .bg + .bg {
  margin-top: 0 !important;
}
