@charset "UTF-8";
.audio-player {
  width: 275px;
  max-width: 100%;
  margin-inline: auto;
  padding: 10px;
  border-radius: 8px;
  color: #262626;
}
.audio-player [hidden] {
  display: none !important;
}
.audio-player__title {
  margin: 0;
  padding: 2px 6px;
  border-radius: 90px;
  background: var(--audio-player-color, #a35062);
  color: #f9f9f9;
  font-size: 13px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0.78px;
  text-align: center;
}
.audio-player__controls {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: start;
  column-gap: 4px;
  margin-top: 6px;
  padding-left: 5px;
}
.audio-player__toggle {
  position: relative;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #fff;
  appearance: none;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.audio-player__play {
  color: var(--audio-player-color, #a35062);
  width: 40px;
  height: 40px;
}
.audio-player__pause {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 4px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--audio-player-color, #a35062);
}
.audio-player__pause::before, .audio-player__pause::after {
  content: "";
  width: 4px;
  height: 15px;
  background: currentColor;
}
.audio-player.is-playing .audio-player__play {
  display: none;
}
.audio-player.is-playing .audio-player__pause {
  display: flex;
}
.audio-player__timeline {
  min-width: 0;
}
.audio-player__seek {
  display: block;
  width: 100%;
  height: 30px;
  margin: 4px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  appearance: none;
  -webkit-appearance: none;
  background: url("../images/audio_track.svg") center/calc(100% - 6px) 20px no-repeat;
  cursor: pointer;
  touch-action: pan-y;
}
.audio-player__seek::-webkit-slider-runnable-track {
  height: 30px;
  border: 0;
  background: transparent;
}
.audio-player__seek::-moz-range-track {
  height: 30px;
  border: 0;
  background: transparent;
}
.audio-player__seek::-moz-range-progress {
  background: transparent;
}
.audio-player__seek::-webkit-slider-thumb {
  width: 31.2px;
  height: 31.2px;
  margin-top: -0.6px;
  border: 0;
  border-radius: 50%;
  -webkit-appearance: none;
  background: url("../images/audio_thumb.svg") center/contain no-repeat;
}
.audio-player__seek::-moz-range-thumb {
  width: 31.2px;
  height: 31.2px;
  border: 0;
  border-radius: 50%;
  background: url("../images/audio_thumb.svg") center/contain no-repeat;
}
.audio-player__toggle:focus-visible, .audio-player__seek:focus-visible {
  outline: 2px solid var(--audio-player-color, #a35062);
  outline-offset: 2px;
}
.audio-player__times {
  display: flex;
  justify-content: space-between;
  margin-top: -3px;
  font-family: Avenir, Arial, sans-serif;
  font-size: 10px;
  line-height: 14px;
  font-variant-numeric: tabular-nums;
}
.audio-player__status {
  margin: 6px 0 0;
  font-size: 12px;
  line-height: 1.5;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  min-width: 320px;
  overflow-x: clip;
  background: #eee9e0;
}

img {
  display: block;
  max-width: 100%;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.lp-reveal {
  opacity: 0;
  transform: translate3d(0, 5px, 0);
  transition: opacity 1.2s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0s), transform 1.2s cubic-bezier(0.22, 1, 0.36, 1) var(--reveal-delay, 0s);
}
.lp-reveal.is-revealed, .lp-reveal:focus-within {
  opacity: 1;
  transform: none;
}
.lp-reveal:focus-within {
  transition: none;
}

@media (prefers-reduced-motion: reduce) {
  .lp-reveal {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
.header,
.footer {
  position: relative;
  z-index: 2;
}

.js-common-parts-loader[data-type=header] {
  display: none;
}

.font-primary {
  font-family: "Yu Gothic Pr6N", "Yu Gothic Medium", "YuGothic", "Yu Gothic", "游ゴシック体", "游ゴシック", "Hiragino Sans", "Meiryo", sans-serif;
}

.font-secondary {
  font-family: Avenir, "Lato", sans-serif;
  font-style: normal;
}

.lp {
  position: relative;
  z-index: 1;
  background: url("../images/pc_bg.jpg") no-repeat center center/cover;
  background-attachment: fixed;
  font-feature-settings: "palt" on;
  font-family: "Yu Gothic Pr6N", "Yu Gothic Medium", "YuGothic", "Yu Gothic", "游ゴシック体", "游ゴシック", "Hiragino Sans", "Meiryo", sans-serif;
  color: #352f29;
}

@media screen and (max-width: 600px) {
  .lp {
    padding-top: 0 !important;
    margin-top: 50px;
  }
}
.lp__pc-logo,
.lp__side-nav {
  position: fixed;
  top: 0;
  width: calc(50% - 187.5px - 40px);
  height: 100%;
  z-index: -1;
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 600px) {
  .lp__pc-logo,
  .lp__side-nav {
    display: none;
  }
}
.lp__pc-logo {
  left: 0;
  padding-left: 40px;
}

.lp__pc-logo > img {
  max-width: 361px;
  width: 100%;
}

.lp__side-nav {
  right: 0;
  z-index: 1;
  padding-right: 40px;
}
.lp__side-nav > ul {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
}

.lp__side-nav li:not(.side-nav-sns) a {
  font-weight: 500;
  position: relative;
  color: #352f29;
  text-align: center;
  font-size: 13px;
  display: block;
  line-height: 1.6;
}
.lp__side-nav li:not(.side-nav-sns) a > span {
  display: block;
  color: #a35062;
  font-size: 20px;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  font-weight: 800;
  text-align: center;
}
.lp__side-nav li.side-nav-sns {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 20px;
}

.lp__main {
  width: min(100%, 375px);
  margin-inline: auto;
  background: #f5f1ed;
  padding-bottom: 50px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.lp__main--priv {
  background: #fcf8f4;
}

@media screen and (min-width: 601px) and (max-width: 728px) {
  .lp__pc-logo {
    display: none;
  }
  .lp__main {
    margin-inline-start: 0;
  }
  .lp__side-nav {
    width: calc(100% - 375px - 40px);
    font-size: 1.6vw;
  }
}
@media screen and (min-width: 729px) and (max-width: 900px) {
  .lp__side-nav {
    font-size: 1.6vw;
  }
  .lp__side-nav a {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 600px) {
  .lp__main {
    width: 100%;
    box-shadow: none;
  }
}
.lp-kv {
  background: url(../images/fv_bg.png) no-repeat top center/100% 100%;
  padding-bottom: 60px;
}
.lp-kv__hero {
  position: relative;
  overflow: hidden;
  margin-top: 10px;
  margin-bottom: 20px;
}
.lp-kv__text {
  margin-inline: auto;
}
.lp-kv__text--01 {
  width: 79.7333333333%;
}
.lp-kv__text--02 {
  width: 84%;
}
.lp-kv__badge {
  position: absolute;
  top: 0;
  left: -4.5333333333%;
  width: 33.3333333333%;
  pointer-events: none;
}
.lp-kv__badge svg {
  width: 100%;
}
.lp-kv__sound-wave {
  margin: 15px auto;
  width: 54.6666666667%;
}
.lp-kv__sound-wave svg {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  height: auto;
}

.lp-message {
  background: url(../images/message_bg.jpg) no-repeat center center/cover;
  padding: 60px 0;
}
.lp-message__content {
  width: 86.6666666667%;
  margin-inline: auto;
}

.lp-numakare {
  background: url(../images/numakare_bg.jpg) no-repeat top center/cover;
  padding-bottom: 20px;
}
.lp-numakare__title {
  width: 84%;
  margin: 40px auto;
}
.lp-numakare__teaser-image {
  position: relative;
  width: 100%;
}
.lp-numakare__teaser-image > img {
  position: absolute;
  left: 0;
  width: 100%;
  height: auto;
}
.lp-numakare__teaser-bg {
  z-index: -1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.lp-numakare__sound-wave {
  flex-shrink: 0;
}
.lp-numakare__teaser {
  position: relative;
  z-index: 1;
}
.lp-numakare__teaser--01 {
  margin-bottom: 40px;
}
.lp-numakare__teaser--01 .lp-numakare__teaser-image {
  aspect-ratio: 375/388;
  -webkit-mask: url("../images/numakare_image01_mask.svg") center/100% 100% no-repeat;
  mask: url("../images/numakare_image01_mask.svg") center/100% 100% no-repeat;
}
.lp-numakare__teaser--01 .lp-numakare__teaser-image > img {
  top: -4.381443299%;
}
.lp-numakare__teaser--01 .lp-numakare__bg-gradient {
  flex-grow: 1;
  background-image: linear-gradient(180deg, #a35062 67.25%, rgba(163, 80, 98, 0) 100%);
}
.lp-numakare__teaser--01 .lp-numakare__teaser-subtitle {
  color: #a35062;
}
.lp-numakare__teaser--01 .lp-numakare__teaser-voice dt {
  color: #a35062;
  font-weight: 600;
}
.lp-numakare__teaser--01 .lp-numakare__teaser-badge {
  right: -28px;
}
.lp-numakare__teaser--01 .audio-player {
  --audio-player-color: #a35062;
}
.lp-numakare__teaser--02 .lp-numakare__teaser-image {
  aspect-ratio: 375/388;
  -webkit-mask: url("../images/numakare_image02_mask.svg") center/100% 100% no-repeat;
  mask: url("../images/numakare_image02_mask.svg") center/100% 100% no-repeat;
}
.lp-numakare__teaser--02 .lp-numakare__teaser-image > img {
  top: -0.5154639175%;
}
.lp-numakare__teaser--02 .lp-numakare__sound-wave svg path {
  fill: #4b6e9c;
}
.lp-numakare__teaser--02 .lp-numakare__bg-gradient {
  flex-grow: 1;
  background-image: linear-gradient(180deg, #4b6e9c 67.25%, rgba(75, 110, 156, 0) 100%);
}
.lp-numakare__teaser--02 .lp-numakare__teaser-subtitle {
  color: #4b6e9c;
}
.lp-numakare__teaser--02 .lp-numakare__teaser-voice dt {
  color: #4b6e9c;
  font-weight: 600;
}
.lp-numakare__teaser--02 .lp-numakare__teaser-badge {
  left: -25px;
}
.lp-numakare__teaser--02 .audio-player {
  --audio-player-color: #4b6e9c;
}
.lp-numakare__teaser-content {
  background: #fcf8f4;
  width: 84%;
  padding: 20px;
  margin-inline: auto;
  border-radius: 6px;
  margin-top: -40px;
  position: relative;
}
.lp-numakare__teaser-subtitle {
  text-align: center;
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 15px;
}
.lp-numakare__teaser-text {
  text-align: center;
  font-size: 13px;
  margin-bottom: 20px;
}
.lp-numakare__teaser-voice dt {
  text-align: center;
  font-size: 14px;
  position: relative;
}
.lp-numakare__teaser-voice dt::before, .lp-numakare__teaser-voice dt::after {
  content: "|";
  display: inline-block;
}
.lp-numakare__teaser-voice dt::before {
  rotate: -30deg;
  margin-right: 10px;
}
.lp-numakare__teaser-voice dt::after {
  rotate: 30deg;
  margin-left: 10px;
}
.lp-numakare__teaser-badge {
  position: absolute;
  top: -60px;
}
.lp-numakare__present {
  width: 84.8%;
  margin: 20px auto 0;
  padding-bottom: 40px;
  color: #a37768;
}
.lp-numakare__present-heading {
  text-align: center;
  margin-bottom: 26px;
}
.lp-numakare__present-heading h3 {
  margin: 0;
  font-size: clamp(20px, 6.4vw, 24px);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.lp-numakare__present-dots {
  margin: 0 auto 20px;
}
.lp-numakare__present-icon {
  margin: 0 auto 10px;
}
.lp-numakare__present-card {
  border: 2px solid #a37768;
  border-radius: 5px;
  padding-bottom: 16px;
  overflow: hidden;
}
.lp-numakare__present-card + .lp-numakare__present-card {
  margin-top: 20px;
}
.lp-numakare__present-delivery {
  margin: 0;
  padding: 2px 10px;
  background: #a37768;
  color: #fcf8f4;
  font-size: 16px;
  font-weight: 600;
  line-height: 26px;
  letter-spacing: 0.06em;
  text-align: center;
}
.lp-numakare__present-count {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 10px 0;
  font-size: 20px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0.08em;
}
.lp-numakare__present-count::before {
  content: "";
  flex-shrink: 0;
  width: 22px;
  height: 19px;
  background: url(../images/icon_mic.svg) no-repeat center/contain;
}
.lp-numakare__present-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 231px;
  max-width: calc(100% - 30px);
  margin: 0 auto;
  padding: 0;
  list-style: none;
  color: #352f29;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: 0.06em;
}
.lp-numakare__present-list li {
  display: flex;
  align-items: center;
  gap: 11px;
}
.lp-numakare__present-list li::before {
  content: "";
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  background: url(../images/icon_checkbox.svg) no-repeat center/contain;
}

.lp-soyogi-fractal {
  background: #e9e7f3;
  position: relative;
  padding-top: 60px;
}
.lp-soyogi-fractal__title {
  width: 100%;
  position: absolute;
  top: -25px;
}
.lp-soyogi-fractal__title img {
  width: 52.2666666667%;
  margin-inline: auto;
}
.lp-soyogi-fractal__content {
  width: 92%;
  margin-left: auto;
}

.lp-coupon {
  background: url(../images/coupon_offer_head_bg.png) no-repeat top center/100% auto;
  position: relative;
  z-index: 1;
  padding-bottom: 80px;
  margin-bottom: -80px;
}
.lp-coupon__offer-bg {
  position: absolute;
  z-index: -1;
  top: 80px;
  left: 0;
  height: calc(100% - 80px);
  display: flex;
  flex-direction: column;
}
.lp-coupon__offer-bg--head {
  flex-shrink: 0;
}
.lp-coupon__offer-bg--foot {
  flex-shrink: 0;
}
.lp-coupon__offer-bg--body {
  flex-grow: 1;
}
.lp-coupon__title {
  padding-top: 50px;
  width: 81.3333333333%;
  margin: 0 auto 20px auto;
}
.lp-coupon__offer {
  width: 84%;
  margin: 0 auto 20px auto;
}
.lp-coupon__image {
  background: transparent;
  font-family: inherit;
  position: relative;
  margin-bottom: 15px;
  appearance: none;
}
.lp-coupon__stars {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 10px;
}
.lp-coupon__stars img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  animation: coupon-stars-blink 3s ease-in-out infinite;
}
.lp-coupon__copy-message {
  position: absolute;
  z-index: 1;
  inset: 0;
  display: grid;
  place-items: center;
  border-radius: 6px;
  background: rgba(53, 47, 41, 0.8);
  color: #fcf8f4;
  font-size: 16px;
  font-weight: 600;
  pointer-events: none;
}
.lp-coupon__copy-message[hidden] {
  display: none;
}
.lp-coupon__badge {
  position: absolute;
  top: -10px;
  right: -30px;
}
.lp-coupon__badge svg {
  width: 70px;
  height: 70px;
}
.lp-coupon__badge svg path {
  fill: #dcc198;
}
.lp-coupon__button {
  appearance: none;
  background: transparent;
  font-family: inherit;
  margin-bottom: 20px;
}
.lp-coupon__note {
  margin-top: 15px;
  font-size: 12px;
}
.lp-coupon__note-subtitle {
  text-align: center;
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  padding: 5px 0;
  margin-top: 15px;
}

.lp-campaign-x {
  position: relative;
  width: 84%;
  margin: 20px auto 0 auto;
}
.lp-campaign-x__button {
  position: absolute;
  bottom: 14px;
  left: 0;
  right: 0;
  margin: auto;
  width: 92.380952381%;
}

.lp-campaign-period {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #a35062;
  font-size: 16px;
  font-weight: 600;
}

.lp-offer {
  background: #efe4da;
  padding-top: 120px;
  padding-bottom: 40px;
}
.lp-offer__bottom {
  padding-top: 40px;
}
.lp-offer__title {
  width: 82.9333333333%;
  margin-inline: auto;
  margin-bottom: 40px;
}
.lp-offer__title-text {
  text-align: center;
  margin-bottom: 30px;
  color: #a35062;
  font-size: 28px;
  letter-spacing: 0.1em;
  font-weight: 600;
}
.lp-offer__image {
  width: 89.3333333333%;
  margin-inline: auto;
}
.lp-offer__main {
  background: #f9f9f9;
  width: 89.3333333333%;
  margin-inline: auto;
  border-radius: 0 0 10px 10px;
}
.lp-offer__contents {
  width: 92.6865671642%;
  padding: 20px 0;
  margin-inline: auto;
}
.lp-offer__prices {
  width: 91.3432835821%;
  margin-inline: auto;
  margin-bottom: 20px;
}
.lp-offer__link {
  display: block;
  width: 93.2835820896%;
  margin-inline: auto;
  margin-bottom: 10px;
}
.lp-offer__note-image {
  width: 86.1194029851%;
  margin-inline: auto;
  margin-bottom: 10px;
}
.lp-offer__note {
  width: 92.5373134328%;
  margin-inline: auto;
  font-size: 12px;
  padding-bottom: 20px;
}

.lp-about__title {
  width: 80.5333333333%;
  margin-inline: auto;
  margin-bottom: 20px;
  padding-top: 40px;
}
.lp-about__section {
  width: 89.3333333333%;
  margin: 50px auto;
  background: #fff;
  border-radius: 10px;
  padding-bottom: 30px;
}
.lp-about__section--01 .lp-about__subtitle {
  translate: 0 -65%;
  display: block;
  width: 61.6417910448%;
  margin-inline: auto;
}
.lp-about__section--01 .lp-about__heading {
  width: 82.6865671642%;
  margin-inline: auto;
}
.lp-about__section--02 .lp-about__subtitle {
  translate: 0 -65%;
  display: block;
  width: 91.3432835821%;
  margin-inline: auto;
}
.lp-about__section--02 .lp-about__heading {
  width: 78.8059701493%;
  margin-inline: auto;
}
.lp-about__section--03 .lp-about__subtitle {
  translate: 0 -65%;
  display: block;
  width: 76.4179104478%;
  margin-inline: auto;
}
.lp-about__section--03 .lp-about__heading {
  width: 85.9701492537%;
  margin-inline: auto;
}
.lp-about__kaji-yuki-recommend {
  width: 84.4776119403%;
  margin-inline: auto;
}
.lp-about__color-variations {
  position: relative;
  margin: 24px 0;
}
.lp-about__color-variations.is-enhanced .lp-about__color-viewport {
  scrollbar-width: none;
}
.lp-about__color-variations.is-enhanced .lp-about__color-viewport::-webkit-scrollbar {
  display: none;
}
.lp-about__color-sticky {
  padding: 12px 0;
}
.lp-about__color-viewport {
  overflow-x: auto;
  overscroll-behavior-x: contain;
  cursor: grab;
  -webkit-overflow-scrolling: touch;
}
.lp-about__color-viewport.is-dragging {
  cursor: grabbing;
}
.lp-about__color-list {
  display: flex;
  gap: 10px;
  width: max-content;
  margin: 0;
  padding: 0 20px;
  list-style: none;
}
.lp-about__color-item {
  flex: 0 0 var(--color-card-width, 22.3880597015%);
  width: var(--color-card-width, 22.3880597015%);
  user-select: none;
}
.lp-about__color-item figure {
  margin: 0;
}
.lp-about__color-item img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}
.lp-about__color-item figcaption {
  margin-top: 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}
.lp-about__color-item figcaption span {
  display: block;
  font-size: 12px;
}
.lp-about__color-navigation {
  width: 83.5820895522%;
  margin: 15px auto 0;
}
.lp-about__color-progress {
  display: block;
  width: 100%;
  height: 28px;
  margin: 0;
  padding: 0;
  border: 0;
  appearance: none;
  -webkit-appearance: none;
  background: transparent;
  cursor: pointer;
}
.lp-about__color-progress[hidden] {
  display: none;
}
.lp-about__color-progress::-webkit-slider-runnable-track {
  height: 2px;
  background: #4d4947;
}
.lp-about__color-progress::-moz-range-track {
  height: 2px;
  background: #4d4947;
}
.lp-about__color-progress::-moz-range-progress {
  height: 2px;
  background: #4d4947;
}
.lp-about__color-progress::-webkit-slider-thumb {
  width: 50px;
  height: 10px;
  margin-top: -4px;
  border: 0;
  border-radius: 5px;
  -webkit-appearance: none;
  background: #4d4947;
}
.lp-about__color-progress::-moz-range-thumb {
  width: 50px;
  height: 10px;
  border: 0;
  border-radius: 5px;
  background: #4d4947;
}
.lp-about__color-tones {
  width: 94.0298507463%;
  margin: 30px auto;
}
.lp-about__color-chart {
  position: relative;
}
.lp-about__color-chart-hint {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 46.1538461538%;
  max-width: 200px;
  height: auto;
  border-radius: 10px;
  pointer-events: none;
}
.lp-about__color-chart-hint[hidden] {
  display: none;
}
.lp-about__color-tabs {
  display: flex;
  gap: 9px;
  width: 89.552238806%;
  max-width: 100%;
}
.lp-about__color-tab {
  flex: 1;
  min-width: 0;
  min-height: 40px;
  padding: 8px 4px;
  border: 0;
  appearance: none;
  background: #e9e7e6;
  color: #352f29;
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.4;
  cursor: pointer;
}
.lp-about__color-tab[aria-selected=true] {
  background: #a37768;
  color: #fcf8f4;
}
.lp-about__color-panel {
  overflow-x: auto;
  background: #f7f7f5;
  overscroll-behavior-x: contain;
  scrollbar-color: #a37768 #e2d9d4;
  scrollbar-width: thin;
  -webkit-overflow-scrolling: touch;
}
.lp-about__color-panel[hidden] {
  display: none;
}
.lp-about__color-panel img {
  width: auto;
  max-width: none;
  height: 355px;
}
.lp-about__color-panel::-webkit-scrollbar {
  height: 8px;
}
.lp-about__color-panel::-webkit-scrollbar-track {
  background: #e2d9d4;
}
.lp-about__color-panel::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background: #a37768;
}
.lp-about__color-tab:focus-visible, .lp-about__color-panel:focus-visible, .lp-about__color-viewport:focus-visible, .lp-about__color-progress:focus-visible {
  outline: 2px solid #a37768;
  outline-offset: 2px;
}
.lp-about__video {
  width: 70%;
  margin-inline: auto;
  margin-top: 20px;
  position: relative;
}
.lp-about__video > video {
  background: transparent;
  width: 100%;
  height: auto;
  border-radius: 40px;
}
.lp-about__video-badge {
  position: absolute;
  top: 40px;
  right: -40px;
  width: 80px;
}
.lp-about__sec02-text {
  width: 74.1333333333%;
  margin: 30px auto 0 auto;
}
.lp-about__sec03-text--01 {
  width: 73.3333333333%;
  margin-bottom: 20px;
  margin-top: 20px;
  margin-inline: auto;
}
.lp-about__sec03-text--02 {
  width: 73.6%;
  margin-inline: auto;
}

.lp-color-scroll-frame {
  position: relative;
  z-index: 0;
  display: flow-root;
}
.lp-color-scroll-frame > .is-color-scroll-pinned {
  position: sticky;
  top: var(--color-frame-top);
}

.lp-howto {
  background: url(../images/howto_bg.jpg) no-repeat top center/cover;
  padding: 40px 0;
}
.lp-howto__title {
  width: 62.9333333333%;
  margin-inline: auto;
}
.lp-howto__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 89.3333333333%;
  margin: 20px auto 40px;
  padding: 0;
  list-style: none;
}
.lp-howto__list img {
  width: 100%;
  height: auto;
}

.lp-line-counselling {
  padding: 40px 0;
}
.lp-line-counselling__image {
  width: 84%;
  margin-inline: auto;
  margin-bottom: 20px;
}
.lp-line-counselling__link {
  width: 89.3333333333%;
  margin-inline: auto;
  margin-bottom: 20px;
  display: block;
}
.lp-line-counselling__note {
  text-align: center;
  font-size: 12px;
}

.lp-float {
  position: fixed;
  z-index: 100;
  left: var(--float-left, 0px);
  bottom: 0;
  width: var(--float-width, 100%);
  padding: 0 8px calc(8px + env(safe-area-inset-bottom, 0px));
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}
.lp-float.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}
.lp-float__link {
  display: block;
}
.lp-float__link img {
  width: 100%;
  height: auto;
}
.lp-float__link:focus-visible {
  outline: 2px solid #a37768;
  outline-offset: 2px;
}

.lp-offer__link,
.lp-float__link {
  position: relative;
}
.lp-offer__link::after,
.lp-float__link::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 43%, rgba(255, 255, 255, 0.7) 50%, transparent 57%);
  background-size: 300% 100%;
  background-position: 100% 0;
  -webkit-mask: var(--cta-shine-mask) center/100% 100% no-repeat;
  mask: var(--cta-shine-mask) center/100% 100% no-repeat;
  animation: cta-shine 3.2s ease-in-out infinite;
}

.lp-offer__link {
  --cta-shine-mask: url("../images/colorset_offer_button.png");
}

.lp-float__link {
  --cta-shine-mask: url("../images/float_button.png");
}
.lp-float__link::after {
  animation-play-state: paused;
}

.lp-float.is-visible .lp-float__link::after {
  animation-play-state: running;
}

@keyframes coupon-stars-blink {
  0%, 30%, 100% {
    opacity: 0;
    filter: brightness(1);
  }
  50% {
    opacity: 1;
    filter: brightness(1);
  }
  70% {
    opacity: 0.5;
    filter: brightness(1.4);
  }
}
@keyframes cta-shine {
  0%, 60% {
    background-position: 100% 0;
  }
  85%, 100% {
    background-position: 0% 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .lp-coupon__stars img {
    animation: none;
  }
  .lp-offer__link::after,
  .lp-float__link::after {
    animation: none;
    opacity: 0;
  }
  .lp-float {
    transition: none;
  }
}
.float-cv-banners {
  display: none;
}

.lp-priv__main-title {
  width: 80.8%;
  margin-inline: auto;
  padding: 20px 0;
}
.lp-priv__voice {
  --voice-color: #a35062;
  --voice-badge-color: #e5d4ce;
  margin-bottom: 40px;
}
.lp-priv__voice--02 {
  --voice-color: #4b6e9c;
  --voice-badge-color: #b8c5d7;
}
.lp-priv__voice-title {
  background: var(--voice-color);
  color: white;
  text-align: center;
  font-size: 32px;
  padding: 24px 0;
  font-weight: 600;
  letter-spacing: 0.1em;
}
.lp-priv__voice-image {
  container-type: inline-size;
  margin-top: 40px;
  margin-bottom: 20px;
}
.lp-priv__voice-image figure {
  display: grid;
  grid-template-columns: minmax(0, 250fr) minmax(0, 88.5fr);
  align-items: center;
  column-gap: 4.8cqw;
  padding-right: 4.9333333333%;
  margin: 0;
}
.lp-priv__voice-image figcaption {
  justify-self: center;
  width: 100%;
  max-width: var(--voice-lines-width, 23.6cqw);
}
.lp-priv__voice-image--05 {
  --voice-lines-width: 15.6cqw;
}
.lp-priv__voice-image--05 figcaption {
  justify-self: end;
  margin-right: 2.4cqw;
}
.lp-priv__voice-image--reverse {
  --voice-lines-width: 16.93333cqw;
}
.lp-priv__voice-image--reverse figure {
  grid-template-columns: minmax(0, 63.5fr) minmax(0, 250fr);
  column-gap: 8.93333cqw;
  padding-right: 0;
  padding-left: 7.4666666667%;
}
.lp-priv__voice-image--reverse .lp-priv__voice-photo {
  grid-column: 2;
  grid-row: 1;
  -webkit-mask-image: url("../images/priv_voice_mask_reverse.svg");
  mask-image: url("../images/priv_voice_mask_reverse.svg");
  transform: scaleX(-1);
}
.lp-priv__voice-image--reverse .lp-priv__voice-photo img {
  left: auto;
  right: var(--voice-photo-left, -15.2%);
  transform: scaleX(-1);
}
.lp-priv__voice-image--reverse figcaption {
  grid-column: 1;
  grid-row: 1;
}
.lp-priv__voice-lines {
  width: 100%;
  height: auto;
}
.lp-priv__voice--02 .lp-priv__voice-image {
  --voice-lines-width: 16.93333cqw;
}
.lp-priv__voice-photo {
  position: relative;
  aspect-ratio: 250/230;
  overflow: hidden;
  -webkit-mask: url("../images/priv_voice_mask.svg") center/100% 100% no-repeat;
  mask: url("../images/priv_voice_mask.svg") center/100% 100% no-repeat;
}
.lp-priv__voice-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 30%;
}
.lp-priv__sound-wave {
  position: relative;
  z-index: 1;
  width: 99.4666666667%;
  margin-inline: auto;
  color: var(--voice-color);
}
.lp-priv__sound-wave svg {
  margin-inline: auto;
}
.lp-priv__sound-wave svg path {
  fill: currentColor;
}
.lp-priv__voice-wrapper {
  position: relative;
  width: 92%;
  margin: -7px auto 0;
  padding: 15px 0 25px;
  border-radius: 10px 10px 0 0;
  background: linear-gradient(180deg, var(--voice-color) 67.25%, #fcf8f4 100%);
}
.lp-priv__voice-wrapper h3 {
  margin: 0 0 4px;
  color: #fcf8f4;
  font-size: 30px;
  font-weight: 800;
  line-height: 1.6;
  letter-spacing: 0.03em;
  text-align: center;
}
.lp-priv__voice-wrapper--reverse .lp-priv__voice-badge {
  right: auto;
  left: -9px;
}
.lp-priv__voice-content {
  width: 91.3043478261%;
  margin-inline: auto;
  padding: 20px 4.347826087% 16px;
  border-radius: 10px;
  background: #fcf8f4;
}
.lp-priv__voice-content > p {
  margin: 0 0 8px;
  color: var(--voice-color);
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-align: center;
  overflow-wrap: anywhere;
}
.lp-priv__voice-content .audio-player {
  --audio-player-color: var(--voice-color);
  width: 89.4736842105%;
  padding: 0;
  border-radius: 0;
}
.lp-priv__voice-content .audio-player__controls {
  margin-top: 0;
  padding-left: 0;
}
.lp-priv__voice-badge {
  position: absolute;
  top: 11px;
  right: -9px;
  width: 70px;
  pointer-events: none;
}
.lp-priv__voice-badge--reverse {
  right: auto;
  left: -9px;
}
.lp-priv__voice-badge svg {
  width: 100%;
}
.lp-priv__voice-badge svg path {
  fill: var(--voice-badge-color);
}
.lp-priv__after-voice {
  --voice-color: #d6aa66;
  container-type: inline-size;
  padding-bottom: 40px;
  background: #fcf8f4;
}
.lp-priv__after-voice .lp-priv__voice-content {
  padding-bottom: 20px;
  background: #fff;
}
.lp-priv__after-voice .lp-priv__voice-content > p {
  margin-inline: -8px;
  color: #c4954e;
  letter-spacing: 0.08em;
}
.lp-priv__after-title {
  margin: 0;
  padding: 20px 10px;
  background: var(--voice-color);
  color: #fcf8f4;
  font-size: 25px;
  font-size: clamp(20px, 6.66667cqw, 25px);
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.12em;
  text-align: center;
}
.lp-priv__after-photo {
  width: 66.6666666667%;
  margin: 40px auto 32px;
}
.lp-priv__after-photo img {
  width: 100%;
  height: auto;
  border-radius: 20px;
}
.lp-priv__after-card {
  display: flow-root;
  width: 92%;
  margin-inline: auto;
}
.lp-priv__after-card h3 {
  margin: 4px 0;
  color: #d3a55f;
  font-size: 30px;
  font-weight: 800;
  line-height: 1.6;
  letter-spacing: 0.03em;
  text-align: center;
}
.lp-priv__sns {
  padding-bottom: 40px;
  background: linear-gradient(to bottom, #fcf8f4 17px, #fff 17px);
}
.lp-priv__sns img {
  height: auto;
}
.lp-priv__sns-title {
  width: 39.4666666667%;
  margin: 0 auto 40px;
}
.lp-priv__sns-campaign-image {
  width: 80%;
  margin-inline: auto;
}
.lp-priv__sns-instagram {
  margin-top: 54px;
}
.lp-priv__sns-instagram .lp-priv__sns-button {
  margin-top: 17px;
}
.lp-priv__sns-instagram-image {
  width: 83.8666666667%;
  margin-inline: auto;
}
.lp-priv__sns-button {
  display: block;
  width: 77.6%;
  margin-inline: auto;
  transition: opacity 0.2s ease;
}
.lp-priv__sns-button--x {
  position: relative;
  margin-top: -8px;
}
.lp-priv__sns-button:hover {
  opacity: 0.8;
}
.lp-priv__sns-button:focus-visible {
  outline: 2px solid #a35062;
  outline-offset: 3px;
  border-radius: 10px;
}

/*# sourceMappingURL=style.css.map */
