:root {
  --pc: 1400 * 100vw;
  --sp: 375 * 100vw;
}

.lp ul, .lp ol, .lp li {
  margin: 0;
  list-style: none;
}
.lp img {
  width: 100%;
  height: auto;
}
.lp section {
  position: relative;
}
.lp section .section-inner {
  margin-inline: auto;
}
@media screen and (min-width: 769px) {
  .lp section .section-inner {
    width: 900px;
  }
}
@media screen and (max-width: 768px) {
  .lp section .section-inner {
    width: calc(345 / var(--sp));
  }
}
.lp section p {
  margin-top: 30px;
  font-size: 16px;
  line-height: 1.7;
}
@media screen and (max-width: 768px) {
  .lp section p {
    margin-top: calc(20 / var(--sp));
    font-size: calc(14 / var(--sp));
  }
}
.lp section p strong {
  font-weight: 700;
  font-size: 22px;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  .lp section p strong {
    font-weight: 500;
    font-size: calc(19 / var(--sp));
    letter-spacing: 0.01em;
  }
}
.lp section .note {
  margin-top: 40px;
  font-size: 14px;
  line-height: 1.85;
}
@media screen and (max-width: 768px) {
  .lp section .note {
    margin-top: calc(30 / var(--sp));
    text-align: left;
    font-weight: 350;
    font-size: calc(11 / var(--sp));
    line-height: 1.6;
  }
  .lp section .note li {
    padding-left: 1em;
    text-indent: -1em;
  }
}
.lp section .note a {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .lp section.kv {
    margin-top: calc(15 / var(--sp));
  }
}
.lp section.kv .kv-image {
  aspect-ratio: 375/187;
}
@media screen and (max-width: 768px) {
  .lp section.kv .kv-image {
    width: calc(375 / var(--sp));
    margin-left: calc(-15 / var(--sp));
  }
}
.lp section.kv .kv-catch {
  margin-top: 70px;
}
@media screen and (max-width: 768px) {
  .lp section.kv .kv-catch {
    margin-top: calc(60 / var(--sp));
  }
}
.lp section.kv .kv-catch .date {
  font-weight: 700;
  font-size: 22px;
  line-height: 1.7;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  .lp section.kv .kv-catch .date {
    font-weight: 500;
    font-size: calc(19 / var(--sp));
    line-height: 1.5;
    letter-spacing: 0.02em;
  }
}
.lp section.kv .kv-catch .message {
  margin-top: 40px;
  font-size: 16px;
  line-height: 1.7;
}
@media screen and (max-width: 768px) {
  .lp section.kv .kv-catch .message {
    margin-top: calc(34 / var(--sp));
    font-size: calc(14 / var(--sp));
  }
}
.lp section.howto {
  margin-top: 70px;
  padding-block: 80px;
  background: #F6F4E8;
}
@media screen and (max-width: 768px) {
  .lp section.howto {
    margin-top: calc(60 / var(--sp));
    padding-block: calc(50 / var(--sp));
  }
}
.lp section.howto h2, .lp section.howto h3 {
  width: 420px;
  margin-inline: auto;
  padding-block: 9px;
  border-block: 1px solid #000;
  font-weight: 500;
  font-size: 22px;
  line-height: 1.7;
}
@media screen and (max-width: 768px) {
  .lp section.howto h2, .lp section.howto h3 {
    width: 100%;
    padding-block: calc(4 / var(--sp));
    font-size: calc(19 / var(--sp));
    line-height: 1.5;
  }
}
.lp section.howto .coupon-image {
  width: 375px;
  margin-top: 40px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .lp section.howto .coupon-image {
    width: calc(259 / var(--sp));
    margin-top: calc(30 / var(--sp));
  }
}
.lp section.howto h3 {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .lp section.howto h3 {
    margin-top: calc(40 / var(--sp));
  }
}
.lp section.howto h3 + .note {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  .lp section.howto h3 + .note {
    margin-top: calc(20 / var(--sp));
  }
}
.lp section.howto .note li:nth-of-type(2) {
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  .lp section.howto .note li:nth-of-type(2) {
    margin-top: calc(20 / var(--sp));
  }
}
.lp section.howto ol.step {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 83px;
  margin-top: 40px;
}
@media screen and (max-width: 768px) {
  .lp section.howto ol.step {
    gap: 0 calc(24 / var(--sp));
    margin-top: calc(32 / var(--sp));
  }
}
.lp section.howto ol.step li {
  position: relative;
}
@media screen and (min-width: 769px) {
  .lp section.howto ol.step li {
    width: 375px;
  }
}
@media screen and (max-width: 768px) {
  .lp section.howto ol.step li {
    width: calc(160 / var(--sp));
  }
}
.lp section.howto ol.step li:not(:first-child)::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -53px;
  width: 23px;
  height: 32px;
  background-image: url(../img/arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .lp section.howto ol.step li:not(:first-child)::before {
    left: calc(-18 / var(--sp));
    width: calc(9 / var(--sp));
    height: calc(13 / var(--sp));
  }
}
.lp .all-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 350px;
  height: 50px;
  margin-top: 70px;
  margin-inline: auto;
  background: #111;
  border-radius: 4px;
  color: #fff;
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .lp .all-btn {
    width: calc(280 / var(--sp));
    height: calc(45 / var(--sp));
    border-radius: calc(4 / var(--sp));
    margin-top: calc(60 / var(--sp));
    font-size: calc(14 / var(--sp));
  }
}

@media (max-width: 767px) {
  .pc {
    display: none;
  }
}
@media (min-width: 768px) {
  .sp {
    display: none;
  }
}/*# sourceMappingURL=style.css.map */