@charset "UTF-8";
:root {
  --w-full: 430px;
  --w-wrap: 90vw;
  --w-pc: 602px;
  --c-co: #ed2978;
  --c-accent: #f7a821;
  --c-txt: #333;
}

html, body {
  font-size: 62.5%;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
}

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  width: 100%;
  min-height: 100dvh;
  height: 100%;
  position: relative;
  z-index: 1;
  color: var(--c-txt);
}

h1, h2, h3, h4, h5 {
  line-height: 1;
}

p, a, li {
  line-height: 1;
}

p {
  text-align: justify;
}

img {
  display: block;
  width: 100%;
  height: auto;
}

@media (any-hover: hover) and (pointer: fine) {
  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}
.l__content {
  contain: content;
}
.l__main {
  width: min(100vw, var(--w-pc));
  margin-inline: auto;
}
.l__wrapper {
  width: 100%;
  overflow: hidden;
}
.l__container {
  width: min(var(--w-wrap), 546px);
  margin-inline: auto;
}
.l__container_s {
  width: min(81.4vw, 490px);
  margin-inline: auto;
}

.m__fv {
  width: 100%;
  height: 100vh;
  height: 100dvh;
  background: linear-gradient(209deg, rgba(237, 41, 120, 0.25), rgba(247, 168, 33, 0.25) 24%, rgba(237, 41, 120, 0.25));
}
@media (width >= 602px) {
  .m__fv {
    height: 1120px;
  }
}
.m__fv img {
  width: 100%;
  height: calc(100vh - 32.79vw);
  height: calc(100dvh - 32.79vw);
  object-fit: contain;
  object-position: center center;
}
@media (width >= 602px) {
  .m__fv img {
    height: auto;
  }
}
.m__fv.-type2026 {
  height: auto;
  background: linear-gradient(204deg, #f47fae, #facb7a 24%, #f47fae);
  padding-block-end: min(13.95vw, 84px);
}
.m__fv_txts {
  font-size: min(6.28vw, 37.8px);
  display: grid;
  grid-template-columns: 1.4074074074em 1fr 1.4074074074em;
  align-items: center;
  margin-block-start: min(9.3vw, 40px);
}
.m__fv_txts::before, .m__fv_txts::after {
  content: "";
  display: block;
  width: 100%;
  height: 3.8518518519em;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.m__fv_txts::before {
  background-image: url(../images/deco-attention-l.svg);
}
.m__fv_txts::after {
  background-image: url(../images/deco-attention-r.svg);
}
.m__fv_txts .-txt0 {
  color: #fff;
  font-weight: 700;
  line-height: 1.59;
  text-align: center;
}
.m__fv_txts .-txt0 span {
  display: inline-block;
  color: var(--c-co);
  padding-inline: 0.3em;
  margin-inline-end: 0.2em;
  background-color: #fff;
}
.m__fv_txts.-typelist .-txt0 {
  font-size: min(5.12vw, 30.8px);
  margin-block-end: 0.2em;
}
.m__fv_txts.-typelist .-txt0 span {
  font-size: min(6.51vw, 39.2px);
  vertical-align: sub;
}
.m__fv_txts.-typelist .-txt0 li {
  font-size: min(3.72vw, 22.4px);
}
.m__fv_txts.-typelist .-txt0 li::before {
  content: "●";
  margin-inline-end: 0.2em;
}
.m__fv_txts.-typelist .-txt0 li:not(:first-child) {
  margin-block-start: 0.25em;
}
.m__fv_txts.-typeBadge {
  position: relative;
}
.m__fv_txts.-typeBadge .-txt0, .m__fv_txts.-typeBadge .-txt1 {
  color: #fff;
  font-weight: 700;
  line-height: 1.59;
  text-align: center;
}
.m__fv_txts.-typeBadge .-txt0 {
  font-size: min(5.12vw, 30.8px);
  margin-block-end: 0.2em;
}
.m__fv_txts.-typeBadge .-txt1 {
  font-size: min(3.72vw, 22.4px);
}
.m__fv_txts.-typeBadge .-txt1 span {
  font-size: min(6.51vw, 39.2px);
}
.m__fv_txts.-typeBadge .-img {
  position: absolute;
  top: 0;
  right: 11%;
  width: min(18.6vw, 112px);
  height: min(18.6vw, 112px);
}
.m__fv_txt1 {
  font-size: min(5.35vw, 32.2px);
  color: #fff;
  font-weight: 700;
  line-height: 1;
  margin-block-start: min(5.58vw, 24px);
  display: grid;
  grid-template-columns: 0.7391304348em max-content 0.7391304348em;
  gap: 0.4347826087em;
  place-items: center;
  place-content: center;
}
.m__fv_txt1::before, .m__fv_txt1::after {
  content: "";
  display: block;
  width: 100%;
  height: 1.347826087em;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.m__fv_txt1::before {
  background-image: url(../images/deco-w-slash-l.svg);
}
.m__fv_txt1::after {
  background-image: url(../images/deco-w-slash-r.svg);
}
.m__fv_txt2 {
  font-size: min(3.72vw, 22.4px);
  font-weight: 700;
  color: #fff;
  text-align: center;
  line-height: 1.75;
  margin-block-start: 0.6em;
}
.m__cta {
  display: block;
  z-index: 10;
  transition: opacity 0.4s ease, visibility 0.4s ease, scale 0.3s;
}
.m__cta.-fixed {
  position: fixed;
  bottom: 0;
  left: 0;
  opacity: 1;
  visibility: visible;
}
.m__cta.-fixed.is-hidden {
  opacity: 0;
  visibility: hidden;
}
@media (width >= 602px) {
  .m__cta.-fixed {
    left: calc((100vw - var(--w-pc)) / 2);
  }
}
.m__cta .-inside {
  opacity: 0;
  visibility: hidden;
}
.m__cta .-inside.is-visible {
  opacity: 1;
  visibility: visible;
}
.m__cta:focus-visible {
  scale: 1.02;
}
@media (any-hover: hover) {
  .m__cta:hover {
    scale: 1.02;
  }
}
.m__cta_area h2 {
  font-size: min(5.35vw, 32.2px);
  color: var(--c-co);
  font-weight: 500;
  display: grid;
  grid-template-columns: 0.6086956522em max-content 0.6086956522em;
  width: fit-content;
  margin-inline: auto;
}
.m__cta_area h2::before, .m__cta_area h2::after {
  content: "";
  height: 0.8695652174em;
  width: 2px;
  background-color: var(--c-co);
}
.m__cta_area h2::before {
  rotate: -15deg;
  transform-origin: bottom right;
}
.m__cta_area h2::after {
  rotate: 15deg;
  transform-origin: bottom left;
}
.m__cta_area p {
  font-size: min(3.95vw, 23.8px);
  font-weight: 500;
  text-align: center;
  line-height: 1.65;
  margin-block-start: 0.9411764706em;
}
.m__bnrs {
  margin-block-start: min(13.95vw, 60px);
}
.m__bnrs li {
  position: relative;
  z-index: 1;
  width: 90%;
  margin-inline: auto;
}
.m__bnrs li::after {
  content: "";
  width: min(21.63vw, 130.2px);
  aspect-ratio: 1/1;
  position: absolute;
  top: max(-4.88vw, -29.4px);
  left: max(-6.05vw, -36.4px);
  background-image: url(../images/badge-picup.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 2;
}
.m__bnrs li:not(:first-of-type) {
  margin-block-start: 30px;
}
.m__bnrs a {
  display: block;
  transition: opacity 0.3s;
}
.m__bnrs a:focus-visible {
  opacity: 0.7;
}
@media (any-hover: hover) {
  .m__bnrs a:hover {
    opacity: 0.7;
  }
}
.m__lead .-lead {
  display: block;
  font-size: min(6.28vw, 37.8px);
  font-weight: 700;
  color: #fff;
  line-height: 1;
}
.m__lead .-lead span {
  line-height: 1;
  display: block;
  background: linear-gradient(95deg, rgba(237, 41, 120, 0.7), rgba(247, 168, 33, 0.7) 100%);
  width: fit-content;
  padding-inline: 0.1666666667em;
  padding-block: 0.1851851852em;
  margin-inline: auto;
  white-space: nowrap;
}
.m__lead .-lead span:nth-of-type(2) {
  margin-block-start: 0.2222222222em;
}
.m__lead .-txt {
  display: block;
  font-size: 1.5rem;
  line-height: 1.8;
  margin-block-start: 1.6em;
  width: 85%;
  margin-inline: auto;
}
@media (width >= 602px) {
  .m__lead .-txt {
    font-size: 1.8rem;
  }
}
.m__tokuten {
  padding-block: min(13.95vw, 84px);
}
.m__tokuten_heading {
  font-size: min(5.81vw, 35px);
  color: var(--c-co);
  display: grid;
  grid-template-columns: 1.04em 1fr 1.04em;
  align-items: center;
  width: 95%;
  margin-inline: auto;
}
.m__tokuten_heading::before, .m__tokuten_heading::after {
  content: "";
  display: block;
  aspect-ratio: 13 / 31;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.m__tokuten_heading::before {
  background-image: url(../images/bracket-angle-l.svg);
}
.m__tokuten_heading::after {
  background-image: url(../images/bracket-angle-r.svg);
}
.m__tokuten_heading h2 span {
  display: block;
  text-align: center;
  line-height: 1;
}
.m__tokuten_heading h2 .-span1 {
  font-size: 0.6em;
  margin-block-end: 0.5em;
  font-weight: 500;
}
.m__tokuten_heading h2 .-span2 {
  font-weight: 700;
}
.m__tokuten_lead {
  font-size: min(3.49vw, 21px);
  color: var(--c-co);
  line-height: 1.67;
  text-align: center;
  font-weight: 500;
  margin-block-start: 1em;
  margin-block-end: 1.6em;
}
.m__tokuten_lead span {
  display: inline-block;
  position: relative;
}
.m__tokuten_lead span::after {
  content: "";
  width: 100%;
  height: 4px;
  display: block;
  border-top: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  position: absolute;
  bottom: 0;
  left: 0;
}
.m__tokuten_list {
  font-size: min(3.49vw, 21px);
  margin-block-start: 20px;
}
.m__tokuten_list li[class^=-item] {
  background-color: #fff;
  padding-block: 1em;
  padding-inline: 1em;
  display: grid;
  grid-template-columns: max-content 1fr;
  align-items: center;
  gap: 1em;
  border-radius: 1em;
}
.m__tokuten_list li[class^=-item]:not(:first-of-type) {
  margin-block-start: 0.6666666667em;
}
.m__tokuten_list li[class^=-item] ul li {
  display: grid;
  grid-template-columns: 0.6666666667em 1fr;
  gap: 0.5em;
}
.m__tokuten_list li[class^=-item] ul li::before {
  content: "●";
  font-size: 0.6666666667em;
  line-height: 2.25;
}
.m__tokuten_list .-txt0 {
  font-weight: 500;
  line-height: 1.53;
}
.m__tokuten_list .-tag {
  font-size: min(3.02vw, 18.2px);
  background-image: url(../images/bg-tag.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: top center;
  width: 4.6153846154em;
  height: 5.3846153846em;
  padding-block-start: 0.6923076923em;
  color: var(--c-co);
}
.m__tokuten_list .-tag span {
  display: block;
}
.m__tokuten_list .-tag .-ja {
  font-weight: 500;
  line-height: 1.4;
  text-align: center;
}
.m__tokuten_list .-tag .u__en {
  font-size: 2.1538461538em;
  font-weight: 500;
  text-align: center;
}
.m__tokuten_list .-item1 > .-txt0 {
  display: block;
}
.m__tokuten_list .-item1-txt1 {
  display: block;
  font-size: 1.6em;
  font-weight: 500;
  color: var(--c-co);
  line-height: 1.67;
}
.m__tokuten_list .-item1-txt2 {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 0.2em;
  align-items: end;
  margin-block-start: 0.2em;
}
.m__tokuten_list .-item1-txt2 .-large {
  font-size: 1.5333333333em;
  color: var(--c-co);
  font-weight: 500;
}
.m__tokuten_list .-item1-txt2 .-large .u__en {
  font-size: 1.2173913043em;
}
.m__tokuten_list .-item2 .-txt0 {
  display: block;
}
.m__tokuten_list .-item2 .-large {
  display: block;
  color: var(--c-co);
  font-size: 1.8666666667em;
  line-height: 1.43;
  font-weight: 500;
}
.m__tokuten_list .-item3 > .-txt0 {
  display: block;
}
.m__tokuten_list .-item3 .-fee {
  display: grid;
  grid-template-columns: max-content 0.5333333333em 1fr;
  margin-block-start: 0.6666666667em;
  gap: 0.6666666667em;
}
.m__tokuten_list .-item3 ul {
  width: fit-content;
}
.m__tokuten_list .-item3 ul li {
  line-height: 1.8;
}
.m__tokuten_list .-item3 .-bracket {
  border-block: 1px solid var(--c-txt);
  border-right: 1px solid var(--c-txt);
}
.m__tokuten_list .-item3 .-large {
  font-size: 1.3333333333em;
  color: var(--c-co);
  font-weight: 500;
  align-self: center;
  white-space: nowrap;
}
.m__tokuten_list .-item4 > .-txt0 {
  display: block;
}
.m__tokuten_list .-item4 .-caution {
  display: block;
  font-size: 0.8666666667em;
  color: #797979;
  text-align: end;
  margin-block-start: 0.6em;
}
.m__tokuten_list .-item6 > .-txt0 {
  display: block;
}
.m__tokuten_list .-item7 > .-txt0 {
  display: block;
}
.m__tokuten_list .-item7 ul {
  margin-block-start: 0.6666666667em;
}
.m__tokuten_list .-item7 ul li:not(:first-of-type) {
  margin-block-start: 0.5em;
}
.m__tokuten_list .-item7 .u__en {
  color: var(--c-co);
  font-weight: 500;
  font-size: 1.4666666667em;
}
.m__tokuten_list .-item7 .-large {
  color: var(--c-co);
  font-weight: 500;
  font-size: 1.1333333333em;
}
.m__tokuten_list2026 {
  font-size: min(3.49vw, 21px);
  width: min(86.05vw, 518px);
  margin-inline: auto;
}
.m__tokuten_list2026 li.-item {
  border-radius: 1em;
  padding-block-start: 0.2666666667em;
  padding-block-end: 2em;
  padding-inline: 0.2666666667em;
  background-color: #fff;
}
.m__tokuten_list2026 li.-item:not(:first-of-type) {
  margin-block-start: 1em;
}
.m__tokuten_list2026 li.-item.is-finished {
  position: relative;
}
.m__tokuten_list2026 li.-item.is-finished::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: inherit;
}
.m__tokuten_list2026 li.-item.is-finished::after {
  content: "終了しました";
  display: grid;
  place-content: center;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-5deg);
  width: fit-content;
  height: 2em;
  padding-inline: 2.4em;
  white-space: nowrap;
  font-size: min(5.12vw, 30.8px);
  font-weight: bold;
  line-height: 1;
  color: #fff;
  background-color: #000;
}
.m__tokuten_list2026 .-heading0 {
  font-size: 1.2em;
  font-weight: 700;
  letter-spacing: 0.05em;
  height: min(8.84vw, 53.2px);
  border-radius: 0.7222222222em 0.7222222222em 0 0;
  display: grid;
  place-content: center;
  place-items: center;
}
.m__tokuten_list2026 .-heading0.-type1 {
  background-color: var(--c-co);
  color: #fff;
}
.m__tokuten_list2026 .-heading0.-type2 {
  background-color: #f47fae;
  color: #fff;
}
.m__tokuten_list2026 .-heading0.-type3 {
  background-color: #fbd4e4;
  color: var(--c-co);
}
.m__tokuten_list2026 .-heading1 {
  font-size: 1.2em;
  font-weight: 700;
  color: var(--c-co);
  display: grid;
  grid-template-columns: 3.3333333333em max-content;
  place-content: center;
  place-items: center;
  gap: 0.5555555556em;
  margin-block-start: 0.4444444444em;
  margin-block-end: 0.5555555556em;
}
.m__tokuten_list2026 .-heading1 .-badge {
  width: 3.3333333333em;
  aspect-ratio: 1/1;
  display: grid;
  place-content: center;
  place-items: center;
  background-image: url(../images/bg-tokuten-badge.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.m__tokuten_list2026 .-heading1 .-txt-l {
  font-size: 1.3333333333em;
}
.m__tokuten_list2026 .-heading3 {
  color: var(--c-co);
  font-weight: 500;
  line-height: 1;
  padding-block: 0.5em;
  text-align: center;
  background: linear-gradient(to right, rgba(253, 233, 241, 0), #fde9f1 50%, rgba(253, 233, 241, 0));
}
.m__tokuten_list2026 .-fee-l {
  font-size: 2em;
  font-weight: 700;
  color: var(--c-co);
  text-align: center;
  margin-block-start: 0.3em;
  margin-block-end: 0.5em;
}
.m__tokuten_list2026 .-fee-l .u__en {
  font-size: 1.2666666667em;
  font-weight: 600;
  vertical-align: -0.02em;
}
.m__tokuten_list2026 .-fee-m {
  font-size: 1.5333333333em;
  font-weight: 500;
  color: var(--c-co);
  text-align: center;
  margin-block-start: 0.6em;
  margin-block-end: 1em;
}
.m__tokuten_list2026 .-fee-m .u__en {
  font-size: 1.2173913043em;
  font-weight: 500;
  vertical-align: -0.02em;
}
.m__tokuten_list2026 .-innerlist {
  font-size: 1.2666666667em;
  font-weight: 500;
  margin-block-start: 0.4210526316em;
  width: fit-content;
  margin-inline: auto;
  margin-block-start: 1em;
}
.m__tokuten_list2026 .-inneritem::before {
  content: "●";
  font-size: 0.7894736842em;
  color: var(--c-co);
  display: inline-block;
  vertical-align: 0.15em;
  margin-inline-end: 0.4em;
}
.m__tokuten_list2026 .-inneritem:not(:first-of-type) {
  margin-block-start: 0.6315789474em;
}
.m__price {
  font-size: min(3.49vw, 21px);
}
.m__price h2 {
  font-size: min(5.12vw, 30.8px);
  font-weight: 700;
  color: var(--c-co);
  height: 4.0909090909em;
  display: grid;
  place-items: center;
  background-image: url(../images/deco-foop.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.m__price_main {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 1.3333333333em;
  align-items: center;
  width: fit-content;
  margin-inline: auto;
  margin-block-start: 1em;
}
.m__price_main .-txt0 {
  display: block;
  font-weight: 500;
  line-height: 1.4;
}
.m__price_main .-price .-txt {
  font-weight: 500;
  display: inline-block;
  margin-inline-end: 0.4em;
}
.m__price_main .-price .u__en {
  font-size: 3.3333333333em;
  font-weight: 500;
  color: var(--c-co);
}
.m__price_main .-price .-ja {
  font-size: 1.6em;
  font-weight: 700;
  color: var(--c-co);
}
.m__price_list {
  font-size: 1.5rem;
  width: min(81.4vw, 490px);
  margin-inline: auto;
  background-color: rgba(237, 41, 120, 0.1);
  border-radius: min(4.65vw, 28px);
  padding-block: 1.6em;
  padding-inline: 1.6em;
  margin-block-start: 1.3333333333em;
  display: flex;
  flex-flow: row wrap;
  gap: 0 1em;
}
@media (width >= 602px) {
  .m__price_list {
    font-size: 1.8rem;
  }
}
.m__price_list li {
  line-height: 2.07;
}
.m__price_list li::before {
  content: "●";
  width: 1em;
  height: auto;
  height: 2.07em;
}
.m__price_list li .-detail {
  font-size: 0.8666666667em;
  line-height: 1.69;
  padding-inline-start: 1.1em;
}
.m__price_list li .-detail span {
  display: inline-block;
}
.m__price .-caution {
  width: min(84.65vw, 509.6px);
  margin-inline: auto;
  font-size: 0.8666666667em;
  line-height: 1.77;
  margin-block-start: 0.5em;
}
.m__lineup {
  font-size: min(3.49vw, 21px);
  padding-block: 1.3333333333em;
  margin-block-start: 2.6666666667em;
}
.m__lineup .-heading {
  font-size: 1.4666666667em;
  font-weight: 700;
  color: var(--c-co);
  text-align: center;
}
.m__lineup_cont {
  aspect-ratio: 39 / 25;
  background-image: url(../images/frame-lineup.svg);
  background-size: contain;
  background-position: top center;
  background-repeat: no-repeat;
  padding-block: 1.6666666667em;
  margin-block-start: 0.5333333333em;
}
.m__lineup_cont .-txt0 {
  text-align: center;
  line-height: 1.47;
}
.m__lineup_cont .-txt0 .-fees {
  color: var(--c-co);
  font-weight: 700;
}
.m__lineup_cont .-txt0 .-fees .u__en {
  font-size: 2em;
  font-weight: 500;
}
.m__lineup_cont .-txt1 {
  font-size: 1.2em;
  color: var(--c-co);
  font-weight: 500;
  text-align: center;
  line-height: 1.56;
  display: grid;
  grid-template-columns: 1.0555555556em max-content 1.0555555556em;
  place-content: center;
  place-items: center;
  gap: 0.6em;
  margin-block-start: 0.8333333333em;
}
.m__lineup_cont .-txt1::before, .m__lineup_cont .-txt1::after {
  content: "";
  width: 1.0555555556em;
  aspect-ratio: 19 / 47;
  display: block;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.m__lineup_cont .-txt1::before {
  background-image: url(../images/deco-lineup-l.svg);
}
.m__lineup_cont .-txt1::after {
  background-image: url(../images/deco-lineup-r.svg);
}
.m__reason h2 {
  font-size: min(5.12vw, 30.8px);
  color: var(--c-accent);
  font-weight: 700;
  display: grid;
  place-items: center;
  padding-block-end: 0.4545454545em;
  background-image: url(../images/deco-bar.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: bottom center;
}
.m__reason h2 span {
  display: grid;
  grid-template-columns: max-content 2.1818181818em;
  align-items: end;
  line-height: 1.82;
}
.m__reason h2 span::after {
  content: "";
  aspect-ratio: 48 / 59;
  background-image: url(../images/deco-finger.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.m__reason_list {
  font-size: 1.5rem;
  margin-block-start: 0.6666666667em;
}
@media (width >= 602px) {
  .m__reason_list {
    font-size: 1.8rem;
  }
}
.m__reason_list li {
  background-color: rgba(247, 168, 33, 0.1);
  padding-block: 1.3333333333em;
  padding-inline: 1.6666666667em;
  font-weight: 400;
  line-height: 1.67;
  border-radius: 1em;
}
.m__reason_list li:not(:first-of-type) {
  margin-block-start: 10px;
}
.m__step {
  padding-block: min(13.95vw, 84px);
}
.m__step h2 {
  font-size: min(5.12vw, 30.8px);
  color: var(--c-co);
  display: grid;
  grid-template-columns: 1.3636363636em 1fr 1.3636363636em;
  height: 3.7272727273em;
}
.m__step h2::before, .m__step h2::after {
  content: "";
  height: 100%;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}
.m__step h2::before {
  background-image: url(../images/bracket-square-l.svg);
}
.m__step h2::after {
  background-image: url(../images/bracket-square-r.svg);
}
.m__step h2 .-inner {
  display: flex;
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  gap: 0.4em;
}
.m__step h2 .-inner .-ja {
  font-weight: 700;
  line-height: 1.36;
}
.m__step h2 .-inner .u__en {
  font-weight: 500;
  font-size: 3.6363636364em;
}
.m__step_cont {
  font-size: 1.5rem;
  margin-block-start: 1.8666666667em;
}
@media (width >= 602px) {
  .m__step_cont {
    font-size: 1.8rem;
  }
}
.m__step_cont .-item {
  display: grid;
  grid-template-columns: 4.6666666667em 1fr;
  grid-template-rows: 4.6666666667em 1fr;
  gap: 0.4em 1em;
}
.m__step_cont .-item .-tab {
  aspect-ratio: 1/1;
  background-color: var(--c-co);
  border-radius: 50%;
  display: grid;
  place-items: center;
  place-content: center;
  grid-area: 1/1/2/2;
}
.m__step_cont .-item .-tab span {
  display: block;
  color: #fff;
  font-weight: 500;
}
.m__step_cont .-item .-tab .-num {
  font-size: 1.8666666667em;
}
.m__step_cont .-item .-detail {
  grid-area: 1/2/3/3;
  padding-block-end: 2em;
}
.m__step_cont .-item .-detail h3 {
  font-size: 1.2em;
  color: var(--c-co);
  font-weight: 500;
  margin-block-end: 1em;
}
.m__step_cont .-item .-detail p {
  line-height: 1.67;
  font-weight: 400;
}
.m__step_cont .-item:not(:last-of-type)::after {
  content: "";
  width: 3px;
  display: block;
  background-color: var(--c-co);
  grid-area: 2/1/3/2;
  justify-self: center;
}
.m__step_cont .-item:not(:first-of-type) {
  margin-block-start: 0.4em;
}
.m__faq {
  font-size: 1.5rem;
}
@media (width >= 602px) {
  .m__faq {
    font-size: 1.8rem;
  }
}
.m__faq h2 {
  font-size: min(7.44vw, 44.8px);
}
.m__faq h2 span {
  display: block;
  text-align: center;
  color: var(--c-accent);
  font-weight: 500;
}
.m__faq h2 .u__en {
  font-size: 0.5625em;
  margin-block-end: 0.5em;
}
.m__faq .-txt0 {
  font-weight: 500;
  text-align: center;
  margin-block-start: 1em;
}
.m__faq_list {
  margin-block-start: 1.4666666667em;
}
.m__faq_list li {
  background-color: rgba(247, 168, 33, 0.05);
  border-radius: 1em;
  padding-block-start: 1.2em;
  padding-block-end: 0.6em;
  padding-inline: 1.6666666667em;
}
.m__faq_list li:not(:first-of-type) {
  margin-block-start: 1.5333333333em;
}
.m__faq_list .-q {
  display: grid;
  grid-template-columns: 1.6em 1fr 1.2em;
  gap: 1em;
  padding-block-end: 0.6em;
  cursor: pointer;
}
.m__faq_list .-q::after {
  content: "";
  aspect-ratio: 2/1;
  background-image: url(../images/arrow-down-or.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  margin-block-start: 0.8em;
  rotate: 180deg;
  transition: rotate 0.3s;
}
.m__faq_list .-q.is-open::after {
  rotate: initial;
}
.m__faq_list .-a {
  display: grid;
  grid-template-columns: 1.6em 1fr;
  gap: 1em;
  padding-block-start: 0.7333333333em;
  padding-inline-end: 3em;
  overflow: hidden;
}
.m__faq_list .-head {
  font-size: 1.6em;
  color: var(--c-accent);
  font-weight: 500;
}
.m__faq_list .-txt-q {
  font-size: 1.1333333333em;
  font-weight: 500;
  line-height: 1.65;
}
.m__faq_list .-txt-a {
  font-weight: 400;
  line-height: 1.67;
}
.m__faq_list .-detail {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s, padding-block 0.3s;
}
.m__faq_list .-detail.is-open {
  border-top: 1px solid var(--c-accent);
  padding-block: 0.7333333333em 0.6em;
  grid-template-rows: 1fr;
}
.m__shops {
  padding-block: min(9.3vw, 56px);
}
.m__shops_list {
  color: #fff;
  font-size: 1.5rem;
}
@media (width >= 602px) {
  .m__shops_list {
    font-size: 1.8rem;
  }
}
.m__shops_list li {
  display: grid;
  grid-template-columns: 1fr 30%;
  gap: 1.3333333333em;
}
.m__shops_list li:not(:first-of-type) {
  margin-block-start: 2em;
}
.m__shops_list .-data h3 {
  padding-block-end: 0.4em;
  border-bottom: 1px solid #fff;
  font-weight: 700;
}
.m__shops_list .-data .-address {
  font-size: 0.8em;
  line-height: 1.33;
  margin-block-start: 0.4em;
  font-weight: 500;
}
.m__shops_list .-data .-tel {
  font-size: min(5.58vw, 33.6px);
  font-weight: 600;
  display: block;
  margin-block: 0.2em;
}
.m__shops_list .-data .-oh {
  font-size: 0.8em;
  font-weight: 500;
}
.m__shops_list .-data .-oh .u__en {
  font-size: 1.1666666667em;
  font-weight: 600;
  display: inline-block;
  margin-inline-start: 0.4em;
}
.m__shops_list .-data .-caution {
  font-size: 0.7333333333em;
  margin-block-start: 1em;
  line-height: 1.45;
}
.m__btn_gallery {
  font-size: min(5.12vw, 30.8px);
  display: grid;
  place-items: center;
  width: 15em;
  aspect-ratio: 66 / 13;
  border-radius: 0.4545454545em;
  border: 2px solid var(--c-accent);
  background-color: #fff;
  box-shadow: 3px 3px 6px 0 rgba(208, 143, 32, 0.3);
  background-image: url(../images/arrow-next-or.svg);
  background-size: 0.5909090909em;
  background-repeat: no-repeat;
  background-position: right 1.1363636364em center;
  margin-inline: auto;
}
.m__btn_gallery span {
  color: var(--c-accent);
  font-weight: 700;
  display: block;
  line-height: 1;
  width: fit-content;
  height: 1.1818181818em;
  padding-inline-end: 1.5454545455em;
  background-image: url(../images/ico-search.svg);
  background-size: 1.1818181818em;
  background-repeat: no-repeat;
  background-position: right center;
  margin-inline-end: 1.1363636364em;
}
.m__btn_shops {
  font-size: min(4.19vw, 25.2px);
  background-color: #fff;
  color: var(--c-accent);
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
  width: 18.3333333333em;
  aspect-ratio: 11 / 3;
  border-radius: 0.5555555556em;
  margin-inline: auto;
  display: grid;
  place-items: center;
  background-image: url(../images/arrow-next-or.svg);
  background-size: 0.5555555556em;
  background-repeat: no-repeat;
  background-position: right 1.6666666667em center;
  transition: opacity 0.3s;
  margin-block-start: 1.7777777778em;
}
.m__btn_shops:focus-visible {
  opacity: 0.7;
}
@media (any-hover: hover) {
  .m__btn_shops:hover {
    opacity: 0.7;
  }
}

.u__for-sr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
.u__en {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}
@media (width >= 602px) {
  .u__grad_main::before {
    content: "";
    display: block;
    width: 100%;
    height: 100vh;
    position: fixed;
    inset: 0;
    background-image: linear-gradient(240deg, #ed2978 0%, #f7a821 76%, #ed2978 100%);
    opacity: 0.1;
    z-index: -1;
  }
}
.u__grad_pk {
  background: linear-gradient(201deg, rgba(237, 41, 120, 0.25), rgba(247, 168, 33, 0.25) 24%, rgba(237, 41, 120, 0.25) 100%);
}
.u__bg_wt {
  background-color: #fff;
}
.u__bg_pk {
  background-color: rgba(237, 41, 120, 0.05);
}
.u__bg_or {
  background-color: var(--c-accent);
}
.u__mbs_80 {
  margin-block-start: min(18.6vw, 80px);
}
.u__mbs_70 {
  margin-block-start: min(16.28vw, 70px);
}
.u__mbs_60 {
  margin-block-start: min(13.95vw, 60px);
}
.u__mbs_40 {
  margin-block-start: min(9.3vw, 40px);
}

.footer {
  background-color: #fff;
  padding-block-start: min(5.58vw, 33.6px);
  padding-block-end: min(32.79vw, 197.4px);
}
.footer img {
  width: 48%;
  margin-inline: auto;
}
.footer p {
  margin-block-start: 20px;
}
.footer .-catch {
  display: block;
  font-size: clamp(9px, 2.09vw, 12.6px);
  text-align: center;
  font-weight: 500;
}
.footer .-name {
  display: block;
  font-size: clamp(12px, 2.79vw, 16.8px);
  margin-block-start: 0.6em;
  text-align: center;
  font-weight: 500;
}

.slider__ttl {
  font-size: min(4.65vw, 28px);
  color: var(--c-accent);
  font-weight: 500;
  width: 100%;
  aspect-ratio: 13 / 2;
  display: grid;
  grid-template-columns: 2.1em max-content 2.1em;
  margin-inline: auto;
}
.slider__ttl h2 {
  width: fit-content;
  align-self: center;
}
.slider__ttl::before, .slider__ttl::after {
  content: "";
  display: block;
  aspect-ratio: 21 / 22;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.slider__ttl::before {
  background-image: url(../images/deco-kira-l.svg);
  align-self: start;
}
.slider__ttl::after {
  background-image: url(../images/deco-kira-r.svg);
  align-self: end;
}
.slider__main .-txt {
  font-size: 1.5rem;
  line-height: 1.8;
  display: block;
  width: 17em;
  margin-inline: auto;
  margin-block-end: 2em;
}
@media (width >= 602px) {
  .slider__main .-txt {
    font-size: 1.8rem;
  }
}
.slider__main .splide__slide {
  padding-inline: min(1.16vw, 7px);
}
.slider__main .splide__slide img {
  border-radius: min(4.65vw, 20px);
}
.slider__main .splide__arrows {
  width: 91%;
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  position: absolute;
  top: 50%;
  left: 5%;
  z-index: 2;
  translate: 0 -50%;
}
.slider__main .splide__arrow {
  width: min(9.3vw, 40px);
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 0.3s;
}
.slider__main .splide__arrow:focus-visible {
  opacity: 0.7;
}
@media (any-hover: hover) {
  .slider__main .splide__arrow:hover {
    opacity: 0.7;
  }
}
.slider__main .splide__arrow svg {
  display: none;
}
.slider__main .splide__arrow--prev {
  background-image: url(../images/arrow-slide-l.svg);
}
.slider__main .splide__arrow--next {
  background-image: url(../images/arrow-slide-r.svg);
}
.slider__main .splide__pagination {
  margin-block-start: min(4.19vw, 20px);
  gap: min(4.65vw, 20px);
}
.slider__main .splide__pagination__page {
  width: clamp(10px, 2.33vw, 14px);
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 1px solid var(--c-accent);
  transition: all 0.3s;
}
.slider__main .splide__pagination__page.is-active {
  background-color: var(--c-accent);
}
.slider__main .splide__pagination__page:focus-visible {
  background-color: var(--c-accent);
  opacity: 0.7;
}
@media (any-hover: hover) {
  .slider__main .splide__pagination__page:hover {
    background-color: var(--c-accent);
    opacity: 0.7;
  }
}
.slider__common_wrap1 {
  padding-inline-end: min(4.65vw, 28px);
}
.slider__common_wrap2 {
  padding-inline-start: min(4.65vw, 28px);
}/*# sourceMappingURL=style.css.map */