.p-mv-section {
  position: relative;
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: 1fr;
  overflow-x: clip;
  isolation: isolate;
}
.p-mv-section__deco {
  --translate: 3rem;
  position: absolute;
  animation-name: fade-in-up;
  animation-duration: 1.75s;
  animation-timing-function: var(--ease-out-expo);
  animation-delay: var(--delay, 0s);
  animation-fill-mode: backwards;
}
.p-mv-section__deco:where([data-deco="1"]) {
  --delay: 0.9s;
  --c-polygon-clip-path: polygon(48.07% 100%, 0% 66.84%, 15.11% 6.04%, 68.63% 0%, 98.79% 35.07%, 100% 81.24%, 48.07% 100%);
  top: 70%;
  left: -6.5%;
  width: 26.35rem;
  aspect-ratio: 1.089;
}
.p-mv-section__deco:where([data-deco="1"]):where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 60%;
}
.p-mv-section__deco:where([data-deco="1"]):where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 60%;
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="1"]) {
    width: 16.5rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="1"]) {
    top: 82%;
    left: -8%;
    width: 11.9rem;
  }
}
.p-mv-section__deco:where([data-deco="2"]) {
  --delay: 1.3s;
  --c-polygon-clip-path: polygon(89.66% 83.67%, 43.79% 100%, 0% 84.97%, 9.38% 25.51%, 47.98% 0%, 100% 45.92%, 89.66% 83.67%);
  top: 63%;
  left: 5%;
  width: 17.7rem;
  aspect-ratio: 1.216;
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="2"]) {
    width: 11.5rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="2"]) {
    top: 82%;
    left: 11%;
    width: 8rem;
  }
}
.p-mv-section__deco:where([data-deco="3"]) {
  --delay: 1.7s;
  --c-polygon-clip-path: polygon(100% 100%, 15.15% 88.41%, 0% 38.48%, 45.45% 0%, 100% 46.38%, 100% 100%);
  top: 62.5%;
  left: 4%;
  width: 6.6rem;
  aspect-ratio: 0.957;
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="3"]) {
    width: 4.5rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="3"]) {
    top: 82.5%;
    left: 9%;
    width: 3rem;
  }
}
.p-mv-section__deco:where([data-deco="4"]) {
  --delay: 1.1s;
  --c-polygon-clip-path: polygon(79.48% 10.1%, 100% 50.38%, 57.3% 100%, 0% 71.64%, 29.23% 0%, 79.48% 10.1%);
  top: 80%;
  left: 77.5%;
  width: 13.2rem;
  aspect-ratio: 1.069;
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="4"]) {
    width: 10.5rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="4"]) {
    top: 93%;
    left: 86%;
    width: 7.72rem;
  }
}
.p-mv-section__deco:where([data-deco="5"]) {
  --delay: 1.4s;
  --c-polygon-clip-path: polygon(100% 62.98%, 59.22% 100%, 1.89% 66.36%, 0% 25.06%, 10.23% 0%, 76.83% 19.82%, 100% 62.98%);
  top: 78%;
  left: 75%;
  width: 4.15rem;
  aspect-ratio: 0.641;
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="5"]) {
    width: 3rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="5"]) {
    top: 91%;
    left: 80%;
    width: 2.42rem;
  }
}
.p-mv-section__deco:where([data-deco="6"]) {
  --delay: 0.8s;
  --c-polygon-clip-path: polygon(100% 38.24%, 75.48% 100%, 0% 69.33%, 33.44% 13.37%, 85.69% 0%, 100% 38.24%);
  top: 57%;
  left: 64.5%;
  width: 73rem;
  aspect-ratio: 1.513;
}
.p-mv-section__deco:where([data-deco="6"]):where(body[data-theme-color=sky] *) {
  --c-polygon-opacity: 84%;
}
.p-mv-section__deco:where([data-deco="6"]):where(body[data-theme-color=rose] *) {
  --c-polygon-opacity: 67%;
}
.p-mv-section__deco:where([data-deco="6"]):where(body[data-theme-color=cafe] *) {
  --c-polygon-opacity: 67%;
}
.p-mv-section__deco:where([data-deco="6"]):where(body[data-theme-color=lagoon] *) {
  --c-polygon-opacity: 72%;
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="6"]) {
    top: 45%;
    width: 60rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="6"]) {
    top: 70%;
    left: 46%;
    width: 38.8rem;
  }
}
.p-mv-section__deco:where([data-deco="7"]) {
  --delay: 0.6s;
  --c-polygon-clip-path: polygon(91.48% 62.24%, 51.63% 100%, 0% 53.91%, 0% 33.54%, 41.89% 0%, 100% 23.98%, 91.48% 62.24%);
  top: 14%;
  left: -10.5%;
  width: 40rem;
  aspect-ratio: 0.811;
}
.p-mv-section__deco:where([data-deco="7"]):where(body[data-theme-color=sky] *) {
  --c-polygon-opacity: 100%;
}
.p-mv-section__deco:where([data-deco="7"]):where(body[data-theme-color=lagoon] *) {
  --c-polygon-opacity: 85%;
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="7"]) {
    width: 30rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="7"]) {
    top: 8%;
    left: -22.3%;
    width: 19.1rem;
  }
}
.p-mv-section__deco:where([data-deco="8"]) {
  --delay: 1s;
  --c-polygon-clip-path: polygon(81.82% 0.36%, 100% 73.78%, 44.21% 100%, 0% 67.07%, 19.63% 0%, 81.82% 0.36%);
  top: 17%;
  left: 3.7%;
  width: 13.7rem;
  aspect-ratio: 1.104;
}
.p-mv-section__deco:where([data-deco="8"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 70%;
}
.p-mv-section__deco:where([data-deco="8"]):where(body[data-theme-color=sky] *) {
  --c-polygon-color: oklch(from var(--color-palette-1) l calc(c * 1.85) h);
}
@media (max-width: 1024px) {
  .p-mv-section__deco:where([data-deco="8"]) {
    width: 10.5rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__deco:where([data-deco="8"]) {
    top: 13%;
    left: 3.7%;
    width: 6.56rem;
  }
}
.p-mv-section__visual {
  position: relative;
  z-index: 0;
  grid-row: 1/span 1;
  grid-column: 1/span 1;
  animation-name: fade-in;
  animation-duration: 3.5s;
  animation-timing-function: var(--ease-out-quint);
  animation-delay: 0.1s;
  animation-fill-mode: backwards;
}
.p-mv-section__catch {
  --translate: 0.75rem;
  position: relative;
  z-index: 1;
  display: flex;
  grid-row: 1/span 1;
  grid-column: 1/span 1;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  animation-name: fade-in-up;
  animation-duration: 1.75s;
  animation-timing-function: var(--ease-out-quint);
  animation-delay: 0.75s;
  animation-fill-mode: backwards;
}
@media (min-width: 526px) {
  .p-mv-section__catch {
    padding-top: 23rem;
    padding-right: 3rem;
    padding-bottom: 5rem;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-mv-section__catch {
    padding-top: 18rem;
  }
}
@media (max-width: 525px) {
  .p-mv-section__catch {
    justify-content: flex-start;
    padding-top: 28rem;
    padding-left: 1rem;
  }
}

.p-mv-visual {
  --scale-duration: 4750ms;
  --fade-duration: 2000ms;
  --scale: 1.05;
  --ratio: 1.517;
  --path: polygon(100% 63.88%, 100% 0%, 31.23% 0%, 0% 30.87%, 12.82% 86.82%, 51.79% 100%, 94.44% 79.04%, 100% 63.88%);
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 50%, transparent);
  width: 97%;
  margin-left: auto;
  filter: drop-shadow(3rem 2rem 1rem var(--shadow-color));
}
.p-mv-visual:where(body[data-theme-color=spring] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 45%, transparent);
}
.p-mv-visual:where(body[data-theme-color=sky] *) {
  --shadow-color: var(--color-palette-1);
}
.p-mv-visual:where(body[data-theme-color=cafe] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 70%, transparent);
}
.p-mv-visual:where(body[data-theme-color=lagoon] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 60%, transparent);
}
@media (max-width: 1024px) {
  .p-mv-visual {
    --ratio: 1.35;
    width: 99%;
  }
}
@media (max-width: 525px) {
  .p-mv-visual {
    --scale: 1.07;
    --ratio: 0.654;
    --path: polygon(16.59% 87.84%, 100% 100%, 100% 0%, 59.8% 0%, 0% 0%, 0% 56.62%, 16.59% 87.84%);
    width: 100%;
  }
}
.p-mv-visual__inner {
  aspect-ratio: var(--ratio);
  clip-path: var(--path);
}
.p-mv-visual__item {
  height: 100%;
}
.p-mv-visual__list {
  height: 100%;
}
.p-mv-visual__picture {
  position: relative;
  display: block;
  height: 100%;
  scale: var(--scale);
}
.p-mv-visual__picture:is(.swiper-slide-active *) {
  scale: 1;
  transition-timing-function: linear;
  transition-duration: var(--scale-duration);
  transition-property: scale;
}
.p-mv-visual__picture:is(.swiper-slide-prev *) {
  scale: 1;
}
.p-mv-visual__picture:is(.swiper-slide-next *) {
  scale: var(--scale);
}
.p-mv-visual__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-mv-catch {
  width: 100%;
  margin-inline: unset;
  overflow: visible;
  font-size: 3.6rem;
}
@media (max-width: 1024px) {
  .p-mv-catch {
    font-size: 2.6rem;
  }
}
@media (max-width: 525px) {
  .p-mv-catch {
    font-size: 2.4rem;
  }
}
.p-mv-catch__list {
  align-items: center;
}
.p-mv-catch__item__inner {
  display: flex;
  justify-content: flex-end;
}
.p-mv-catch__text {
  font-family: var(--font-heading);
  font-weight: bold;
  color: var(--color-text-heading);
  letter-spacing: 0.11em;
  text-shadow: 0 0 0.2em var(--color-text-contrast), 0 0 0.2em var(--color-text-contrast), 0 0 0.2em var(--color-text-contrast), 0 0 0.2em var(--color-text-contrast), 0 0 0.4em var(--color-text-contrast), 0 0 0.4em var(--color-text-contrast), 0 0 0.6em var(--color-text-contrast), 0 0 0.6em var(--color-text-contrast);
}
.p-mv-catch__text:where(body[data-theme-color=spring] *) {
  color: var(--color-deep-sea);
}
.p-mv-catch__text:where(body[data-theme-color=rose] *) {
  color: #683e3c;
}
.p-mv-catch__text:where(body[data-theme-color=cafe] *) {
  color: #683e3c;
}
.p-mv-catch__image {
  display: block;
  width: 100%;
  max-width: 12.5em;
  height: auto;
}

.p-contact {
  margin-top: 8rem;
  margin-bottom: var(--section-gap-sm);
}
@media (max-width: 525px) {
  .p-contact {
    margin-top: 5rem;
  }
}
.p-contact__inner {
  display: grid;
  grid-template-areas: "lead ..." "logo schedule" "tel schedule" "address schedule";
  grid-template-columns: 1fr 1fr;
  column-gap: 2.75rem;
}
@media (min-width: 1601px) {
  .p-contact__inner {
    max-width: 100rem;
  }
}
@media (max-width: 1024px) {
  .p-contact__inner {
    grid-template-areas: "lead" "schedule" "tel" "address";
    grid-template-columns: 1fr;
  }
}
.p-contact__lead {
  grid-area: lead;
  font-size: 1.2rem;
}
@media (max-width: 1024px) {
  .p-contact__lead {
    margin-bottom: 1.5rem;
    font-size: 1.1rem;
  }
}
.p-contact__logo {
  grid-area: logo;
  width: 100%;
  max-width: 34rem;
  margin-top: 1.5rem;
}
@media (max-width: 1024px) {
  .p-contact__logo {
    display: none;
  }
}
.p-contact__tel {
  grid-area: tel;
  width: fit-content;
  margin-top: 3.5rem;
  font-family: var(--font-english);
  font-size: 5.4rem;
  font-weight: 600;
  line-height: 1;
  color: var(--color-text-accent);
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media (min-width: 1601px) {
  .p-contact__tel {
    font-size: 4.5rem;
  }
}
@media (max-width: 1024px) {
  .p-contact__tel {
    margin-inline: auto;
    margin-top: 2.25rem;
    font-size: 3.9rem;
  }
}
.p-contact__tel__icon {
  display: inline-block;
  margin-right: 0.2em;
  font-size: 0.85em;
}
.p-contact__address {
  grid-area: address;
  margin-top: 2rem;
  font-size: var(--font-size-lg);
  letter-spacing: 0.08em;
}
@media (min-width: 1601px) {
  .p-contact__address {
    font-size: 1.45rem;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-contact__address {
    margin-inline: auto;
    font-size: var(--font-size-md);
  }
}
@media (max-width: 525px) {
  .p-contact__address {
    margin-top: 1.75rem;
    font-size: var(--font-size-xs);
  }
}
.p-contact__schedule {
  grid-area: schedule;
}

.p-banner-section {
  position: relative;
  margin-top: 10rem;
  margin-bottom: var(--section-gap-sm);
  overflow-x: clip;
  isolation: isolate;
}
@media (max-width: 1024px) {
  .p-banner-section {
    margin-top: 5rem;
  }
}
.p-banner-section__list {
  --c-tile-column-count: 2;
  --c-tile-gap: 2.4rem;
  gap: var(--c-tile-gap);
  justify-content: center;
  margin-inline: auto;
}
@media (max-width: 1024px) {
  .p-banner-section__list {
    --c-tile-gap: 1rem;
  }
}
@media (max-width: 525px) {
  .p-banner-section__list {
    --c-tile-column-count: 1;
    --c-tile-gap: 1.6rem;
  }
}
@media (any-hover: hover) {
  .p-banner-section__link {
    transition: opacity 0.23s;
  }
}
.p-banner-section__link:hover {
  opacity: 0.8;
}
.p-banner-section__deco {
  position: absolute;
}
@media (max-width: 1024px) {
  .p-banner-section__deco {
    display: none;
  }
}
.p-banner-section__deco:is(.p-banner-section:not(:has(+ .p-info-section)) *) {
  display: none;
}
.p-banner-section__deco[data-deco="1"] {
  --c-polygon-color-percentage: 38%;
  --c-polygon-clip-path: polygon(92.76% 11.17%, 100% 84.96%, 39.71% 100%, 0% 60.78%, 29.96% 0%, 92.76% 11.17%);
  top: -14rem;
  right: -8rem;
  width: 29.5rem;
  aspect-ratio: 1.045;
}
.p-banner-section__deco[data-deco="1"]:where(body[data-theme-color=cafe] *, body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 21%;
}
.p-banner-section__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(91.2% 29.73%, 100% 76.58%, 61.6% 100%, 8.8% 81.98%, 0% 27.93%, 22.4% 5.1%, 64.8% 0%, 91.2% 29.73%);
  top: 4rem;
  right: 7rem;
  width: 12.5rem;
  aspect-ratio: 1.126;
}

.p-info-section {
  position: relative;
  margin-block: var(--section-gap-sm);
  overflow-x: clip;
}
@media (max-width: 525px) {
  .p-info-section {
    margin-top: var(--section-gap-md);
  }
}
@media (min-width: 1601px) {
  .p-info-section__inner {
    --current-container-padding: var(--container-padding-lg);
  }
}
.p-info-section__body {
  margin-top: 5rem;
}
@media (min-width: 1025px) {
  .p-info-section__body {
    display: flex;
    column-gap: 3.5rem;
    justify-content: center;
  }
}
@media (max-width: 1024px) {
  .p-info-section__body {
    display: grid;
    row-gap: 5.5rem;
    margin-top: 3rem;
  }
}
.p-info-section__deco {
  position: absolute;
}
.p-info-section__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(58.19% 0%, 100% 47.42%, 63.63% 92.48%, 43.96% 100%, 0% 74.96%, 7.1% 14.19%, 58.19% 0%);
  top: -20.5rem;
  left: -32rem;
  width: 70.8rem;
  aspect-ratio: 1.112;
}
@media (max-width: 1024px) {
  .p-info-section__deco[data-deco="1"] {
    display: none;
  }
}
.p-info-section__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(39.2% 100%, 100% 67.92%, 69.11% 6.95%, 8.32% 0%, 1.1% 34.14%, 0% 75.97%, 39.2% 100%);
  bottom: -10.5rem;
  left: 4rem;
  width: 20.6rem;
  aspect-ratio: 1.091;
}
.p-info-section__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (max-width: 1024px) {
  .p-info-section__deco[data-deco="2"] {
    display: none;
  }
}
.p-info-section__deco[data-deco="3"] {
  --c-polygon-clip-path: polygon(58.19% 0%, 100% 47.42%, 63.63% 92.48%, 43.96% 100%, 0% 74.96%, 7.1% 14.19%, 58.19% 0%);
  --c-polygon-opacity: 40%;
  --c-polygon-blur-size: 3.5rem;
  top: -10rem;
  right: -24rem;
  width: 36.1rem;
  aspect-ratio: 1.112;
}
@media (min-width: 1025px) {
  .p-info-section__deco[data-deco="3"] {
    display: none;
  }
}
.p-info-section__deco[data-deco="4"] {
  --c-polygon-color-percentage: 65%;
  --c-polygon-clip-path: polygon(48.07% 100%, 0% 66.84%, 15.11% 6.04%, 68.63% 0%, 98.78% 35.07%, 100% 81.26%, 48.07% 100%);
  bottom: 11rem;
  left: -6.5rem;
  width: 15.4rem;
  aspect-ratio: 1.089;
}
.p-info-section__deco[data-deco="4"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 40%;
}
@media (min-width: 1025px) {
  .p-info-section__deco[data-deco="4"] {
    display: none;
  }
}
@media (max-width: 525px) {
  .p-info-section__deco[data-deco="4"] {
    bottom: 13.5rem;
  }
}

.p-info {
  --dot-size: 0.55rem;
  --dot-gap: 0.95rem;
  --border-width: 0.6rem;
  --ribbon-fold-size: 3.61%;
  --date-color: var(--color-deep-sea);
  position: relative;
  border: var(--border-width) solid var(--border-color);
  box-shadow: 0.7rem 0.7rem 1.2rem var(--shadow-color);
  isolation: isolate;
}
.p-info:where(body[data-theme-color=sky] *) {
  --date-color: #3b5165;
}
.p-info:where(body[data-theme-color=rose] *) {
  --date-color: var(--color-text-heading);
}
.p-info:where(body[data-theme-color=cafe] *) {
  --date-color: #73461f;
}
.p-info:where(body[data-theme-color=lagoon] *) {
  --date-color: var(--color-text-heading);
}
@media (min-width: 1025px) {
  .p-info {
    flex: 1;
    max-width: 60rem;
  }
}
@media (max-width: 525px) {
  .p-info {
    --ribbon-fold-size: 4.61%;
  }
}
.p-info::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  content: "";
  background-color: var(--bg-color);
}
.p-info:where(body[data-theme-color=rose] *)::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background-image: url("../../images/polygon-texture.webp");
  background-repeat: repeat;
  background-size: var(--texture-size) auto;
  background-blend-mode: multiply;
  opacity: 0.22;
}
.p-info[data-info-type=opendate] {
  --border-color: var(--color-soft-ivory);
  --bg-color: var(--color-pale-ivory);
  --dot-color: var(--color-apricot);
  --shadow-color: color-mix(in srgb, var(--color-coral-pink) 45%, transparent);
  --ribbon-color-01: #f2be36;
  --ribbon-color-02: #f9ab52;
  --ribbon-reverse-color: #996939;
}
.p-info[data-info-type=opendate]:where(body[data-theme-color=sky] *) {
  --border-color: #7bc3e9;
  --bg-color: #f0fdff;
  --dot-color: #2fafbc;
  --shadow-color: color-mix(in srgb, var(--color-palette-3) 42%, transparent);
  --ribbon-color-01: #4cbbea;
  --ribbon-color-02: #3191d0;
  --ribbon-reverse-color: #396fa8;
}
.p-info[data-info-type=opendate]:where(body[data-theme-color=rose] *) {
  --border-color: #d79292;
  --bg-color: #f4ebe8;
  --dot-color: #b67793;
  --shadow-color: color-mix(in srgb, var(--color-wheat) 50%, transparent);
  --ribbon-color-01: #d87b66;
  --ribbon-color-02: #a75c6b;
  --ribbon-reverse-color: #6c332e;
}
.p-info[data-info-type=opendate]:where(body[data-theme-color=cafe] *) {
  --border-color: var(--color-palette-2);
  --bg-color: #f4f3e8;
  --dot-color: var(--color-palette-3);
  --shadow-color: color-mix(in srgb, var(--color-wheat) 50%, transparent);
  --ribbon-color-01: #be9a6b;
  --ribbon-color-02: var(--color-palette-3);
  --ribbon-reverse-color: var(--color-brown);
}
.p-info[data-info-type=opendate]:where(body[data-theme-color=lagoon] *) {
  --border-color: #638cb8;
  --bg-color: #eff6fc;
  --dot-color: var(--color-moonstone);
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 50%, transparent);
  --ribbon-color-01: #5294c6;
  --ribbon-color-02: var(--color-moonstone);
  --ribbon-reverse-color: var(--color-moonstone);
}
.p-info[data-info-type=preview] {
  --border-color: var(--color-pale-pistachio);
  --bg-color: var(--color-mint-white);
  --dot-color: var(--color-palette-1);
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 45%, transparent);
  --ribbon-color-01: #80c5ec;
  --ribbon-color-02: #51a2ec;
  --ribbon-reverse-color: #577682;
}
.p-info[data-info-type=preview]:where(body[data-theme-color=sky] *) {
  --border-color: #81beb0;
  --bg-color: #f9fff2;
  --dot-color: #00b4b8;
  --shadow-color: color-mix(in srgb, var(--color-palette-2) 35%, transparent);
  --ribbon-color-01: #51bdb8;
  --ribbon-color-02: #2c9596;
  --ribbon-reverse-color: #2a706e;
}
.p-info[data-info-type=preview]:where(body[data-theme-color=rose] *) {
  --border-color: #af9987;
  --bg-color: #efe7dc;
  --dot-color: #b79488;
  --shadow-color: color-mix(in srgb, #acb8c2 50%, transparent);
  --ribbon-color-01: #cab384;
  --ribbon-color-02: #a59973;
  --ribbon-reverse-color: #b4894d;
}
.p-info[data-info-type=preview]:where(body[data-theme-color=cafe] *) {
  --border-color: #c0c143;
  --bg-color: #edf3dc;
  --dot-color: #b8b578;
  --shadow-color: color-mix(in srgb, #acb8c2 50%, transparent);
  --ribbon-color-01: #c6cf43;
  --ribbon-color-02: var(--color-palette-4);
  --ribbon-reverse-color: #8a9043;
}
.p-info[data-info-type=preview]:where(body[data-theme-color=lagoon] *) {
  --border-color: #7d94b4;
  --bg-color: #f0eff2;
  --dot-color: var(--color-moonstone);
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 50%, transparent);
  --ribbon-color-01: #99a0b9;
  --ribbon-color-02: #797d9f;
  --ribbon-reverse-color: #7d94b4;
}
.p-info__header {
  position: relative;
  display: inline-flex;
  min-width: 31rem;
  max-width: 100%;
  min-height: 7.71rem;
  padding-block: 1.5rem 1rem;
  margin-top: calc(-1.3rem - var(--border-width));
  isolation: isolate;
  translate: calc(var(--ribbon-fold-size) * -0.95 - var(--border-width));
}
@media (max-width: 525px) {
  .p-info__header {
    min-width: 20rem;
    min-height: 6rem;
    padding-top: 1.45rem;
  }
}
.p-info__header::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  content: "";
  background-image: linear-gradient(to right, var(--ribbon-color-01), var(--ribbon-color-02));
  clip-path: url("#p-info-ribbon");
}
.p-info__header::after {
  position: absolute;
  bottom: -2.5%;
  left: 0;
  z-index: -2;
  width: var(--ribbon-fold-size);
  aspect-ratio: 0.842;
  content: "";
  background-color: var(--ribbon-reverse-color);
  clip-path: url("#p-info-ribbon-reverse");
}
@media (max-width: 525px) {
  .p-info__header::after {
    bottom: -3.5%;
  }
}
.p-info__heading {
  padding-right: 1em;
  padding-left: 4.5rem;
  margin-left: calc(var(--ribbon-fold-size) + var(--border-width));
  font-family: var(--font-heading);
  font-size: 3.16rem;
  font-weight: bold;
  line-height: 1.25;
  color: var(--color-text-contrast);
  letter-spacing: 0.18em;
  white-space: nowrap;
}
@media (max-width: 525px) {
  .p-info__heading {
    padding-left: 3.5rem;
    font-size: 2.4rem;
  }
}
.p-info__body {
  padding: 4rem 3.5rem 3rem;
  container-type: inline-size;
}
.p-info__body:is(.p-info__header + *) {
  padding-top: 1.5rem;
}
@media (max-width: 525px) {
  .p-info__body {
    padding: 2rem;
  }
}
.p-info__date {
  --min-font-size: 1.8rem;
  position: relative;
  font-family: var(--font-heading);
  font-size: clamp(var(--min-font-size), var(--preferred-font-size), var(--max-font-size));
  font-weight: bold;
  line-height: 1.6;
  color: var(--date-color);
  text-align: center;
  letter-spacing: 0.02em;
}
.p-info__date:is([data-info-type=opendate] *) {
  --preferred-font-size: 6.85cqw;
  --max-font-size: 2.9rem;
}
@media (min-width: 1601px) {
  .p-info__date:is([data-info-type=opendate] *) {
    --max-font-size: 2.3rem;
  }
}
@media (max-width: 1024px) {
  .p-info__date:is([data-info-type=opendate] *) {
    --max-font-size: 2.6rem;
  }
}
.p-info__date:is([data-info-type=preview] *) {
  --preferred-font-size: 5.2cqw;
  --max-font-size: 2.5rem;
}
@media (min-width: 1601px) {
  .p-info__date:is([data-info-type=preview] *) {
    --max-font-size: 2.3rem;
  }
}
@media (max-width: 1024px) {
  .p-info__date:is([data-info-type=preview] *) {
    --max-font-size: 2.6rem;
  }
}
@media (max-width: 525px) {
  .p-info__date:is([data-info-type=preview] *) {
    --preferred-font-size: 7cqw;
  }
}
.p-info__date > b {
  display: inline-block;
  margin-inline: 0.1em;
  font-size: 1.35em;
}
.p-info__date > small {
  font-size: 0.8em;
}
@media (max-width: 525px) {
  .p-info__date > small {
    position: absolute;
    top: 1lh;
    translate: 0 -50%;
  }
}
.p-info__time {
  font-size: 2.5rem;
}
.p-info__message {
  position: relative;
  padding-top: 2.35rem;
  margin-top: 1.35rem;
  line-height: 1.6;
}
.p-info__message::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: var(--dot-size);
  content: "";
  background-image: radial-gradient(circle, var(--dot-color) 0 calc(var(--dot-size) / 2), transparent calc(var(--dot-size) / 2));
  background-repeat: repeat-x;
  background-position: calc(var(--dot-gap) / -2) center;
  background-size: calc(var(--dot-size) + var(--dot-gap)) var(--dot-size);
}

.p-news-wrapper {
  position: relative;
  padding-block: 21rem 16rem;
  margin-top: var(--section-gap-sm);
}
.p-news-wrapper:where(body[data-theme-color=spring] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 10%, #fff);
}
.p-news-wrapper:where(body[data-theme-color=sky] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 35%, #fff);
}
.p-news-wrapper:where(body[data-theme-color=rose] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 15%, #fff);
}
.p-news-wrapper:where(body[data-theme-color=cafe] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 17%, #fff);
}
.p-news-wrapper:where(body[data-theme-color=lagoon] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 17%, #fff);
}
@media (max-width: 1024px) {
  .p-news-wrapper {
    padding-block: 11rem;
  }
}
@media (max-width: 525px) {
  .p-news-wrapper {
    padding-block: 9rem 8rem;
  }
}

.p-news-section {
  --tab-color-01: var(--color-palette-5);
  --tab-color-02: var(--color-palette-2);
  --tab-color-03: var(--color-palette-1);
  position: relative;
  overflow-x: clip;
}
.p-news-section:where(body[data-theme-color=sky] *) {
  --tab-color-01: var(--color-azure-blue);
  --tab-color-02: #95baff;
  --tab-color-03: #83b8b4;
}
.p-news-section:where(body[data-theme-color=rose] *) {
  --tab-color-01: #8c8c8c;
  --tab-color-02: color-mix(in srgb, var(--color-palette-2) 90%, #fff);
  --tab-color-03: var(--color-wheat);
}
.p-news-section:where(body[data-theme-color=cafe] *) {
  --tab-color-01: var(--color-palette-3);
  --tab-color-02: var(--color-palette-4);
  --tab-color-03: var(--color-wheat);
}
.p-news-section:where(body[data-theme-color=lagoon] *) {
  --tab-color-01: var(--color-palette-3);
  --tab-color-02: var(--color-palette-2);
  --tab-color-03: #63adce;
}
.p-news-section__inner {
  display: grid;
  align-items: flex-start;
}
@media (min-width: 1025px) {
  .p-news-section__inner {
    grid-template-areas: "header body" "buttons body";
    grid-template-rows: auto 1fr;
    grid-template-columns: minmax(30rem, auto) 1fr;
    column-gap: 3.5rem;
  }
}
@media (max-width: 1024px) {
  .p-news-section__inner {
    grid-template-areas: "header" "body" "buttons";
    grid-template-columns: 1fr;
  }
}
.p-news-section__header {
  grid-area: header;
  height: fit-content;
}
@media (min-width: 1025px) {
  .p-news-section__header {
    width: fit-content;
    margin-inline: auto;
    font-size: 6.8rem;
  }
}
@media (max-width: 1024px) {
  .p-news-section__header {
    margin-inline: auto;
    margin-bottom: 2.5rem;
  }
}
.p-news-section__header__deco {
  position: absolute;
}
.p-news-section__header__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(79.84% 0%, 100% 81.98%, 37.07% 100%, 0% 38.51%, 26.71% 0.16%, 79.84% 0%);
  top: -3rem;
  left: -5rem;
  width: 4.41rem;
  aspect-ratio: 1.247;
}
@media (max-width: 1024px) {
  .p-news-section__header__deco[data-deco="1"] {
    top: -3.07rem;
    left: -6.86rem;
    width: 4.59rem;
  }
}
@media (max-width: 525px) {
  .p-news-section__header__deco[data-deco="1"] {
    top: -1.5rem;
    left: -3.35rem;
    width: 2.24rem;
  }
}
.p-news-section__header__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(20.01% 19.82%, 77.51% 0%, 100% 61.69%, 35.21% 100%, 0% 62.98%, 20.01% 19.82%);
  top: -2rem;
  left: -0.5rem;
  width: 1.81rem;
  aspect-ratio: 0.841;
}
@media (max-width: 1024px) {
  .p-news-section__header__deco[data-deco="2"] {
    top: -2.56rem;
    left: -2.05rem;
    width: 1.89rem;
  }
}
@media (max-width: 525px) {
  .p-news-section__header__deco[data-deco="2"] {
    top: -1.25rem;
    left: -1rem;
    width: 0.924rem;
  }
}
.p-news-section__body {
  grid-area: body;
}
.p-news-section__tabs {
  display: flex;
  flex-wrap: nowrap;
  column-gap: 1rem;
}
@media (max-width: 1024px) {
  .p-news-section__tabs {
    column-gap: 0.75rem;
  }
}
.p-news-section__tab {
  position: relative;
  z-index: 0;
  min-width: 9.6rem;
  padding: 0.85em;
  overflow: clip;
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: var(--font-weight-bold);
  line-height: 1;
  color: var(--color-text-contrast);
  text-align: center;
  border-top-left-radius: var(--radius-md);
  border-top-right-radius: var(--radius-md);
}
@media (max-width: 1024px) {
  .p-news-section__tab {
    flex: 1;
    max-width: 40%;
    font-size: 1.6rem;
  }
}
@media (max-width: 525px) {
  .p-news-section__tab {
    max-width: 50%;
  }
}
.p-news-section__tab::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  content: "";
  background-color: var(--tab-color);
}
.p-news-section__tab::after {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background-image: url("../../images/polygon-texture.webp");
  background-repeat: repeat;
  background-size: var(--texture-size-sm) auto;
  mix-blend-mode: soft-light;
}
@media (any-hover: hover) {
  .p-news-section__tab::before {
    transition: background-color 0.2s;
  }
  .p-news-section__tab[aria-selected=false]:hover::before {
    background-color: color-mix(in srgb, var(--tab-color) 75%, #fff);
  }
}
.p-news-section__tab:nth-child(3n+1) {
  --tab-color: var(--tab-color-01);
}
.p-news-section__tab:nth-child(3n+2) {
  --tab-color: var(--tab-color-02);
}
.p-news-section__tab:nth-child(3n+3) {
  --tab-color: var(--tab-color-03);
}
.p-news-section__panels {
  position: relative;
  display: grid;
  grid-area: panels;
  grid-template-rows: 1fr;
  grid-template-columns: 1fr;
  margin-top: -1px;
  background-color: var(--color-white);
}
.p-news-section__buttons {
  position: relative;
  z-index: 1;
  display: flex;
  gap: 2rem;
  align-items: center;
  justify-content: center;
}
@media (min-width: 1025px) {
  .p-news-section__buttons {
    flex-direction: column;
    width: fit-content;
    min-width: 12em;
    margin-inline: auto;
    margin-top: 3rem;
  }
}
@media (max-width: 1024px) {
  .p-news-section__buttons {
    margin-top: 2rem;
  }
}
@media (min-width: 1025px) {
  .p-news-section__button {
    width: -webkit-fill-available;
    width: -moz-available;
    width: stretch;
  }
}
.p-news-section__deco {
  position: absolute;
}
.p-news-section__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(68% 0%, 100% 58.22%, 57.8% 96.62%, 37.78% 100%, 0% 64.39%, 16.89% 3.27%, 68% 0%);
  top: -43rem;
  right: -44rem;
  width: 83.6rem;
  aspect-ratio: 1.202;
}
@media (max-width: 1024px) {
  .p-news-section__deco[data-deco="1"] {
    top: -34.82rem;
    right: -63.49rem;
    width: 85.2rem;
  }
}
@media (max-width: 525px) {
  .p-news-section__deco[data-deco="1"] {
    top: -17rem;
    right: -31rem;
    width: 41.6rem;
  }
}
.p-news-section__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(48.07% 100%, 0% 66.84%, 15.11% 6.04%, 68.63% 0%, 98.78% 35.07%, 100% 81.26%, 48.07% 100%);
  top: -22rem;
  right: 22rem;
  width: 18.6rem;
  aspect-ratio: 1.089;
}
.p-news-section__deco[data-deco="2"]:where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 70%;
}
.p-news-section__deco[data-deco="2"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 60%;
}
@media (max-width: 1024px) {
  .p-news-section__deco[data-deco="2"] {
    top: -20.48rem;
    right: 1.02rem;
    width: 19.58rem;
  }
}
@media (max-width: 525px) {
  .p-news-section__deco[data-deco="2"] {
    top: -10rem;
    right: 0.5rem;
    width: 9.56rem;
  }
}

.p-news-panel {
  position: relative;
  grid-row: 1/1;
  grid-column: 1/1;
  padding: 1.85rem;
  border-top: 0.4rem solid var(--border-color);
}
@media (min-width: 526px) {
  .p-news-panel {
    padding-left: 3.5rem;
  }
}
@media (max-width: 525px) {
  .p-news-panel {
    padding-right: 0.85rem;
  }
}
.p-news-panel:nth-child(3n+1) {
  --border-color: var(--tab-color-01);
}
.p-news-panel:nth-child(3n+2) {
  --border-color: var(--tab-color-02);
}
.p-news-panel:nth-child(3n+3) {
  --border-color: var(--tab-color-03);
}
.p-news-panel[aria-hidden=true] {
  visibility: hidden;
  opacity: 0;
}
.p-news-panel__main {
  --scrollbar-size: 10px;
  max-height: 28rem;
  opacity: 0;
  transition: opacity 0.2s;
}
.p-news-panel__main[data-simplebar=init] {
  opacity: 1;
}
.p-news-panel__list {
  padding-block: 1rem;
  padding-right: 1.75rem;
}

.p-news {
  --gap-y: 1em;
  --border-width: 0.1rem;
  --border-dash-size: 0.3rem;
  --border-gap: 0.3rem;
  --border-color: var(--color-border);
  --tag-color: var(--color-palette-3);
}
.p-news:where(body[data-theme-color=rose] *) {
  --tag-color: var(--color-palette-4);
}
.p-news:where(body[data-theme-color=cafe] *) {
  --tag-color: #be966e;
}
.p-news:where(body[data-theme-color=lagoon] *) {
  --tag-color: var(--color-palette-1);
}
.p-news + .p-news {
  padding-top: 1em;
  margin-top: 1em;
  background-image: linear-gradient(to right, var(--border-color) var(--border-dash-size), transparent var(--border-dash-size));
  background-repeat: repeat-x;
  background-size: calc(var(--border-dash-size) + var(--border-gap)) var(--border-width);
}
.p-news__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3em 0.85em;
  align-items: center;
}
.p-news__date {
  flex-shrink: 0;
  font-family: var(--font-maru);
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.07em;
  white-space: nowrap;
}
.p-news__tags {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 0.25em 0.5em;
  font-size: 1.4rem;
  line-height: 1;
}
.p-news__tag {
  padding: 0.35em 0.75em 0.23em;
  line-height: 1;
  color: var(--color-text-contrast);
  background-color: var(--tag-color);
  border-radius: var(--radius-sm);
}
.p-news__title {
  margin-top: 1rem;
  font-family: var(--font-heading);
  font-weight: var(--font-weight-bold);
  line-height: 1.35;
  letter-spacing: 0.07em;
}
.p-news__body {
  margin-top: 0.5rem;
}

.p-calendar-section {
  position: relative;
  margin-top: 7rem;
  overflow-x: clip;
}
@media (max-width: 525px) {
  .p-calendar-section {
    margin-top: 5rem;
  }
}
@media (min-width: 1601px) {
  .p-calendar-section__inner {
    --current-container-padding: var(--container-padding-lg);
  }
}
.p-calendar-section__list {
  --c-tile-column-count: 2;
  --c-tile-column-gap: 3rem;
  --c-tile-row-gap: 3rem;
}
@media (max-width: 1024px) {
  .p-calendar-section__list {
    --c-tile-column-count: 1;
  }
}
.p-calendar-section__item {
  min-height: 420px;
  aspect-ratio: 1/0.85;
}
@media (max-width: 1024px) {
  .p-calendar-section__item:nth-child(n+2) {
    display: none;
  }
}
@media (max-width: 525px) {
  .p-calendar-section__item {
    aspect-ratio: 1/1.25;
  }
}
.p-calendar-section__item > iframe {
  width: 100%;
  height: 100%;
}
.p-calendar-section__button {
  margin-top: 4rem;
}
@media (min-width: 1025px) {
  .p-calendar-section__button {
    margin-left: auto;
  }
}
@media (max-width: 1024px) {
  .p-calendar-section__button {
    margin-inline: auto;
    margin-top: 2rem;
  }
}
.p-calendar-section__deco {
  position: absolute;
}
.p-calendar-section__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(52.67% 100%, 0% 64.43%, 37.09% 0%, 96.02% 13.41%, 100% 82.99%, 52.67% 100%);
  --c-polygon-opacity: 1;
  --c-polygon-blur-size: 1rem;
  top: -13rem;
  left: 4rem;
  width: 30rem;
  aspect-ratio: 1.025;
}
.p-calendar-section__deco[data-deco="1"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 70%;
}
.p-calendar-section__deco[data-deco="1"]:where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 60%;
}
.p-calendar-section__deco[data-deco="1"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 50%;
}
@media (max-width: 1024px) {
  .p-calendar-section__deco[data-deco="1"] {
    top: -25.9rem;
    left: -23.72rem;
    width: 36.44rem;
  }
}
@media (max-width: 525px) {
  .p-calendar-section__deco[data-deco="1"] {
    top: -19rem;
    left: -15rem;
    width: 21.7rem;
  }
}
.p-calendar-section__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(63.21% 0%, 0% 41.62%, 32.86% 100%, 95.51% 84.83%, 100% 38.95%, 63.21% 0%);
  top: -15.5rem;
  left: 15rem;
  width: 10.5rem;
  aspect-ratio: 1.055;
}
@media (max-width: 1024px) {
  .p-calendar-section__deco[data-deco="2"] {
    top: -28.89rem;
    left: -8.24rem;
    z-index: -1;
    width: 14.5rem;
  }
}
@media (max-width: 525px) {
  .p-calendar-section__deco[data-deco="2"] {
    top: -18.5rem;
    left: -5rem;
    width: 7.57rem;
  }
}
.p-calendar-section__deco[data-deco="3"] {
  --c-polygon-clip-path: polygon(26.19% 93.08%, 0% 42.38%, 24.3% 0%, 85.34% 4.91%, 100% 69.43%, 64.7% 100%, 26.19% 93.08%);
  right: 5rem;
  bottom: 5.5rem;
  width: 28.9rem;
  aspect-ratio: 1.216;
}
.p-calendar-section__deco[data-deco="3"]:where(body[data-theme-color=sky] *) {
  --c-polygon-color-percentage: 37%;
}
.p-calendar-section__deco[data-deco="3"]:where(body[data-theme-color=rose] *) {
  --c-polygon-opacity: 55%;
}
.p-calendar-section__deco[data-deco="3"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 29%;
}
.p-calendar-section__deco[data-deco="3"]:where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 29%;
}
@media (max-width: 1024px) {
  .p-calendar-section__deco[data-deco="3"] {
    right: -21.58rem;
    bottom: -13.46rem;
    width: 42.06rem;
  }
}
@media (max-width: 525px) {
  .p-calendar-section__deco[data-deco="3"] {
    right: -12rem;
    bottom: -9.5rem;
    width: 22rem;
  }
}
.p-calendar-section__deco[data-deco="4"] {
  --c-polygon-clip-path: polygon(31.75% 100%, 100% 65.94%, 74.61% 0%, 10.26% 6.5%, 0% 53.79%, 31.75% 100%);
  right: 4.5rem;
  bottom: 24rem;
  width: 8.3rem;
  aspect-ratio: 1.094;
}
@media (max-width: 1024px) {
  .p-calendar-section__deco[data-deco="4"] {
    right: 8.66rem;
    bottom: -11.43rem;
    width: 11rem;
  }
}
@media (max-width: 525px) {
  .p-calendar-section__deco[data-deco="4"] {
    right: 3.25rem;
    bottom: -9rem;
    width: 6.35rem;
  }
}
.p-calendar-section__deco[data-deco="5"] {
  --c-polygon-opacity: 55%;
  --c-polygon-clip-path: polygon(59.16% 94.4%, 11% 100%, 0% 55.77%, 16.58% 9.98%, 54.62% 0%, 100% 34.4%, 59.16% 94.4%);
  bottom: -14.34rem;
  left: -32.77rem;
  width: 58.55rem;
  aspect-ratio: 0.952;
}
@media (min-width: 1025px) {
  .p-calendar-section__deco[data-deco="5"] {
    display: none;
  }
}
@media (max-width: 525px) {
  .p-calendar-section__deco[data-deco="5"] {
    bottom: -7rem;
    left: -16rem;
    width: 36.4rem;
  }
}

.p-feature-section {
  position: relative;
  z-index: 0;
  padding-top: 16rem;
  padding-bottom: 11rem;
  overflow-x: clip;
}
@media (max-width: 1024px) {
  .p-feature-section {
    padding-top: 6rem;
    padding-bottom: 9rem;
  }
}
@media (max-width: 525px) {
  .p-feature-section {
    padding-top: 5rem;
    padding-bottom: 7rem;
  }
}
.p-feature-section__header {
  margin-inline: auto;
}
.p-feature-section__header__deco {
  position: absolute;
}
.p-feature-section__header__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(60.66% 0%, 100% 60.76%, 48.96% 100%, 0% 62.86%, 13.62% 20.55%, 60.66% 0%);
  top: -2rem;
  left: -6.75rem;
  width: 4.68rem;
  aspect-ratio: 1.176;
}
@media (max-width: 1024px) {
  .p-feature-section__header__deco[data-deco="1"] {
    top: -2.2rem;
    left: -2.5rem;
    width: 2.5rem;
  }
}
.p-feature-section__header__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(1.1% 33.29%, 50.2% 0%, 100% 48.37%, 51.73% 100%, 0% 76.93%, 1.1% 33.29%);
  top: -3rem;
  left: -2rem;
  width: 1.7rem;
  aspect-ratio: 0.74;
}
@media (max-width: 1024px) {
  .p-feature-section__header__deco[data-deco="2"] {
    top: -3rem;
    left: 0;
    width: 0.9rem;
  }
}
.p-feature-section__body {
  container-type: inline-size;
}
.p-feature-section__list {
  display: grid;
  row-gap: 15rem;
  margin-top: var(--section-gap-md);
  counter-reset: feature;
}
@media (max-width: 1024px) {
  .p-feature-section__list {
    row-gap: 8rem;
    margin-top: 3.5rem;
  }
}
.p-feature-section__deco {
  position: absolute;
}
@media (max-width: 1024px) {
  .p-feature-section__deco {
    display: none;
  }
}
.p-feature-section__deco[data-deco="1"] {
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(65.97% 88.97%, 17.78% 100%, 0% 48.26%, 10.97% 12.36%, 49.46% 0%, 100% 44.65%, 65.97% 88.97%);
  top: -28rem;
  left: -37rem;
  width: 80.6rem;
  aspect-ratio: 1.128;
}
.p-feature-section__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(20.35% 100%, 0% 30.99%, 69.47% 0%, 100% 49.17%, 74.04% 92.98%, 20.35% 100%);
  top: 13rem;
  left: 4rem;
  width: 28.5rem;
  aspect-ratio: 1.178;
}
.p-feature-section__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
  --c-polygon-opacity: 100%;
}
.p-feature-section__deco[data-deco="3"] {
  --c-polygon-clip-path: polygon(49.72% 0%, 100% 54.1%, 55.74% 100%, 0% 70.5%, 6.15% 26.95%, 49.72% 0%);
  top: 30.5rem;
  left: 22.5rem;
  width: 7.87rem;
  aspect-ratio: 1.033;
}

.p-feature {
  --content-opacity: 0.3;
  --container-gap: calc(50 * var(--vw) - 50cqw);
  position: relative;
  display: grid;
}
@media (min-width: 1025px) {
  .p-feature {
    grid-template-areas: "heading figure" "lead figure" "content figure" "buttons figure";
    grid-template-rows: auto auto auto 1fr;
    grid-template-columns: auto 77rem;
    column-gap: 5rem;
    margin-right: calc(var(--container-gap) * -1);
  }
}
@media (max-width: 1024px) {
  .p-feature {
    grid-template-areas: "heading" "figure" "lead" "content" "buttons";
    grid-template-columns: auto;
  }
}
.p-feature:nth-child(4n+1) {
  --lead-text-color: var(--color-vivid-azure);
  --lead-highlight-color: color-mix(in srgb, var(--color-palette-5) 25%, #fff);
  --number-polygon-color: color-mix(in srgb, var(--color-palette-3) 50%, #fff);
  --number-polygon-clip-path: polygon(0% 47.06%, 29.41% 0%, 70.59% 8.82%, 100% 44.12%, 80.39% 85.29%, 25.49% 100%, 0% 47.06%);
  --number-polygon-aspect-ratio: 1.5;
  --number-polygon-width: 5.1rem;
  --figure-shadow-color: color-mix(in srgb, var(--color-palette-2) 70%, #fff);
  --figure-clip-path: polygon(0% 50.15%, 32.99% 0%, 100% 6.87%, 100% 73.48%, 81.95% 91.67%, 13.93% 100%, 0% 50.15%);
}
.p-feature:nth-child(4n+1):where(body[data-theme-color=sky] *) {
  --lead-text-color: var(--color-azure-blue);
  --lead-highlight-color: color-mix(in srgb, var(--color-palette-4) 90%, #fff);
  --number-polygon-color: var(--color-palette-5);
  --figure-shadow-color: var(--color-palette-3);
}
.p-feature:nth-child(4n+1):where(body[data-theme-color=rose] *) {
  --lead-text-color: var(--color-rose-taupe);
  --lead-highlight-color: #ffedad;
  --number-polygon-color: var(--color-palette-5);
  --figure-shadow-color: color-mix(in srgb, var(--color-palette-2) 70%, #fff);
}
.p-feature:nth-child(4n+1):where(body[data-theme-color=cafe] *) {
  --lead-text-color: #734f55;
  --lead-highlight-color: #e1d7c6;
  --number-polygon-color: var(--color-palette-5);
  --figure-shadow-color: color-mix(in srgb, var(--color-palette-4) 100%, #fff);
}
.p-feature:nth-child(4n+1):where(body[data-theme-color=lagoon] *) {
  --lead-text-color: var(--color-moonstone);
  --lead-highlight-color: #d0e9eb;
  --number-polygon-color: color-mix(in srgb, var(--color-palette-4) 85%, #fff);
  --figure-shadow-color: #427d7a;
}
.p-feature:nth-child(4n+2) {
  --lead-text-color: var(--color-amber);
  --lead-highlight-color: color-mix(in srgb, var(--color-palette-2) 25%, #fff);
  --number-polygon-color: color-mix(in srgb, var(--color-palette-1) 40%, #fff);
  --number-polygon-clip-path: polygon(97.92% 84.21%, 41.67% 100%, 0% 52.63%, 50% 0%, 100% 28.95%, 97.92% 84.21%);
  --number-polygon-aspect-ratio: 1.263;
  --number-polygon-width: 4.8rem;
  --figure-shadow-color: color-mix(in srgb, var(--color-palette-1) 100%, #fff);
  --figure-clip-path: polygon(16.18% 22.93%, 58.84% 0%, 100% 17.83%, 100% 81.97%, 46.62% 100%, 0% 68.35%, 16.18% 22.93%);
}
.p-feature:nth-child(4n+2):where(body[data-theme-color=sky] *) {
  --lead-text-color: #2fafbc;
  --lead-highlight-color: color-mix(in srgb, var(--color-palette-1) 100%, #fff);
  --number-polygon-color: color-mix(in srgb, var(--color-palette-3) 43%, #fff);
  --figure-shadow-color: var(--color-palette-1);
  --figure-shadow-percentage: 65%;
}
.p-feature:nth-child(4n+2):where(body[data-theme-color=rose] *) {
  --lead-text-color: #634806;
  --lead-highlight-color: #f1e2d4;
  --number-polygon-color: var(--color-palette-1);
  --figure-shadow-color: var(--color-palette-1);
  --figure-shadow-percentage: 30%;
}
.p-feature:nth-child(4n+2):where(body[data-theme-color=cafe] *) {
  --lead-text-color: #6f7306;
  --lead-highlight-color: #f1eab4;
  --number-polygon-color: color-mix(in srgb, var(--color-palette-1) 80%, #fff);
  --figure-shadow-color: #c8ba8e;
}
.p-feature:nth-child(4n+2):where(body[data-theme-color=lagoon] *) {
  --lead-text-color: var(--color-palette-3);
  --lead-highlight-color: #d1ecf8;
  --number-polygon-color: #d4dfd6;
  --figure-shadow-color: var(--color-palette-1);
}
.p-feature:nth-child(4n+3) {
  --lead-text-color: var(--color-emerald-green);
  --lead-highlight-color: color-mix(in srgb, var(--color-palette-4) 40%, #fff);
  --number-polygon-color: color-mix(in srgb, var(--color-palette-2) 30%, #fff);
  --number-polygon-clip-path: polygon(0.93% 41.01%, 40.32% 0%, 100% 21.13%, 86.96% 88.81%, 0% 100%, 0.93% 41.01%);
  --number-polygon-aspect-ratio: 1.268;
  --number-polygon-width: 4.5rem;
  --figure-shadow-color: color-mix(in srgb, var(--color-palette-3) 70%, #fff);
  --figure-clip-path: polygon(18.7% 6.97%, 59.15% 0%, 100% 10.84%, 100% 77.88%, 87.79% 95.45%, 35.25% 100%, 0% 56.95%, 18.7% 6.97%);
}
.p-feature:nth-child(4n+3):where(body[data-theme-color=sky] *) {
  --lead-text-color: var(--color-azure-blue);
  --lead-highlight-color: color-mix(in srgb, var(--color-palette-1) 100%, #fff);
  --number-polygon-color: color-mix(in srgb, var(--color-palette-1) 100%, #fff);
  --figure-shadow-color: var(--color-palette-3);
}
.p-feature:nth-child(4n+3):where(body[data-theme-color=rose] *) {
  --lead-text-color: var(--color-chocolate);
  --lead-highlight-color: #fcea99;
  --number-polygon-color: #e6bac8;
  --figure-shadow-color: color-mix(in srgb, var(--color-palette-3) 85%, #fff);
}
.p-feature:nth-child(4n+3):where(body[data-theme-color=cafe] *) {
  --lead-text-color: var(--color-brown);
  --lead-highlight-color: var(--color-palette-5);
  --number-polygon-color: #dbe590;
  --figure-shadow-color: var(--color-pale-silver);
}
.p-feature:nth-child(4n+3):where(body[data-theme-color=lagoon] *) {
  --lead-text-color: var(--color-moonstone);
  --lead-highlight-color: #e4e8ea;
  --number-polygon-color: color-mix(in srgb, var(--color-palette-3) 26%, #fff);
  --figure-shadow-color: var(--color-palette-3);
}
.p-feature:nth-child(4n+4) {
  --lead-text-color: var(--color-salmon-pink);
  --lead-highlight-color: color-mix(in srgb, var(--color-palette-1) 30%, #fff);
  --number-polygon-color: color-mix(in srgb, var(--color-palette-3) 30%, #fff);
  --number-polygon-clip-path: polygon(2.08% 15.79%, 58.33% 0%, 100% 47.37%, 50% 100%, 0% 71.05%, 2.08% 15.79%);
  --number-polygon-aspect-ratio: 1.263;
  --number-polygon-width: 4.8rem;
  --figure-shadow-color: color-mix(in srgb, var(--color-palette-5) 70%, #fff);
  --figure-clip-path: polygon(48.18% 0%, 100% 9.95%, 100% 70.91%, 50.13% 100%, 0% 75.49%, 8.83% 23.22%, 48.18% 0%);
}
.p-feature:nth-child(4n+4):where(body[data-theme-color=sky] *) {
  --lead-text-color: #5d7793;
  --lead-highlight-color: #d7f4f6;
  --figure-shadow-color: var(--color-palette-5);
  --figure-shadow-percentage: 65%;
}
.p-feature:nth-child(4n+4):where(body[data-theme-color=rose] *) {
  --lead-text-color: var(--color-rose-taupe);
  --lead-highlight-color: var(--color-palette-5);
  --number-polygon-color: var(--color-palette-5);
  --figure-shadow-color: var(--color-palette-5);
  --figure-shadow-percentage: 60%;
}
.p-feature:nth-child(4n+4):where(body[data-theme-color=cafe] *) {
  --lead-text-color: #805946;
  --lead-highlight-color: #fff4b8;
  --number-polygon-color: #eddfce;
  --figure-shadow-color: var(--color-palette-5);
  --figure-shadow-percentage: 60%;
}
.p-feature:nth-child(4n+4):where(body[data-theme-color=lagoon] *) {
  --lead-text-color: var(--color-moonstone);
  --lead-highlight-color: #dff0ec;
  --number-polygon-color: color-mix(in srgb, #69869b 30%, #fff);
  --figure-shadow-color: var(--color-palette-5);
  --figure-shadow-percentage: 60%;
}
.p-feature__heading {
  --number-font-size: 3.2rem;
  position: relative;
  z-index: 1;
  grid-area: heading;
  width: fit-content;
  height: fit-content;
  padding-top: 1em;
  font-family: var(--font-script);
  font-size: 2.4rem;
  font-weight: normal;
  line-height: 0;
  color: var(--color-text-heading);
  letter-spacing: 0;
  counter-increment: feature;
}
@media (min-width: 1025px) {
  .p-feature__heading {
    margin-top: 4.5rem;
    opacity: var(--content-opacity);
    transition: opacity 0.5s;
  }
  .p-feature__heading:is(.p-feature[data-is-inview=true] *) {
    opacity: 1;
  }
}
@media (max-width: 525px) {
  .p-feature__heading {
    --number-font-size: 2.4rem;
    font-size: 2rem;
  }
}
.p-feature__heading::after {
  margin-left: 0.35em;
  font-size: var(--number-font-size);
  content: counter(feature, decimal-leading-zero);
}
.p-feature__heading__polygon {
  position: absolute;
  top: 50%;
  right: calc(var(--number-font-size) / 2 * 1.25);
  z-index: -1;
  display: block;
  width: calc(var(--number-font-size) * 1.5);
  aspect-ratio: var(--number-polygon-aspect-ratio);
  filter: blur(0.3rem);
  translate: 50% -50%;
}
@media (max-width: 1024px) {
  .p-feature__heading__polygon {
    width: calc(var(--number-font-size) * 1.65);
  }
}
.p-feature__heading__polygon::before {
  position: absolute;
  inset: 0;
  content: "";
  background-color: var(--number-polygon-color);
  clip-path: var(--number-polygon-clip-path);
}
.p-feature__lead {
  --c-lead-text-color: var(--lead-text-color);
  --c-lead-highlight-color: var(--lead-highlight-color);
  grid-area: lead;
  margin-top: 4rem;
  font-family: var(--font-maru);
  font-weight: bold;
  opacity: var(--content-opacity);
  transition: opacity 0.5s;
}
.p-feature__lead:is(.p-feature[data-is-inview=true] *) {
  opacity: 1;
}
@media (max-width: 1024px) {
  .p-feature__lead {
    margin-top: 3.5rem;
  }
}
@media (max-width: 525px) {
  .p-feature__lead {
    margin-top: 2.5rem;
    font-size: 2.6rem;
  }
}
.p-feature__content {
  grid-area: content;
  margin-top: 3rem;
  opacity: var(--content-opacity);
  transition: opacity 0.5s;
}
.p-feature__content:is(.p-feature[data-is-inview=true] *) {
  opacity: 1;
}
@media (max-width: 1024px) {
  .p-feature__content {
    margin-top: 2rem;
  }
}
.p-feature__buttons {
  display: flex;
  flex-wrap: wrap;
  grid-area: buttons;
  gap: 2rem;
  align-items: flex-start;
  margin-top: 3.75rem;
  opacity: var(--content-opacity);
  transition: opacity 0.5s;
}
.p-feature__buttons:is(.p-feature[data-is-inview=true] *) {
  opacity: 1;
}
@media (max-width: 1024px) {
  .p-feature__buttons {
    flex-direction: column;
    align-items: flex-end;
    margin-top: 2rem;
  }
}
.p-feature__figure {
  position: relative;
  grid-area: figure;
  filter: drop-shadow(2rem 1.5rem 0.8rem color-mix(in srgb, var(--figure-shadow-color) var(--figure-shadow-percentage, 30%), transparent));
}
@media (max-width: 1024px) {
  .p-feature__figure {
    margin-inline: calc(var(--container-gap) * -1);
  }
  .p-feature__figure:is(.p-feature:nth-child(4n+1) *) {
    margin-top: 1.75rem;
  }
  .p-feature__figure:is(.p-feature:nth-child(4n+2) *) {
    margin-top: -1.75rem;
  }
  .p-feature__figure:is(.p-feature:nth-child(4n+3) *) {
    margin-top: 0.5rem;
  }
}
@media (max-width: 525px) {
  .p-feature__figure {
    --overflow-width: 3rem;
    margin-left: calc((var(--container-gap) + var(--overflow-width)) * -1);
    filter: drop-shadow(1rem 0.5rem 0.5rem color-mix(in srgb, var(--figure-shadow-color) var(--figure-shadow-percentage, 40%), transparent));
  }
}
.p-feature__figure__inner {
  aspect-ratio: 1.283;
  clip-path: var(--figure-clip-path);
}
@media (max-width: 525px) {
  .p-feature__figure__inner {
    padding-left: var(--overflow-width);
  }
}
.p-feature__deco {
  position: absolute;
}
.p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="1"]) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 50%;
  --c-polygon-clip-path: polygon(33.19% 96.24%, 73.66% 100%, 100% 58.49%, 86.47% 9.29%, 48.57% 0%, 0% 39.37%, 33.19% 96.24%);
  aspect-ratio: 1.182;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="1"]) {
    top: -26rem;
    right: -31rem;
    width: 77rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="1"]) {
    top: 16.38rem;
    right: -36.86rem;
    width: 78.03rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="1"]) {
    top: 8rem;
    right: -18rem;
    width: 38.1rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="2"]) {
  --c-polygon-color: var(--color-palette-2);
  --c-polygon-color-percentage: 80%;
  --c-polygon-opacity: 100%;
  --c-polygon-clip-path: polygon(10.13% 86.82%, 0% 31.72%, 69.6% 0%, 100% 40.65%, 84.21% 100%, 10.13% 86.82%);
  aspect-ratio: 0.993;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="2"]) {
    top: -1rem;
    right: 67rem;
    width: 8.8rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="2"]) {
    top: 6.14rem;
    left: -10.24rem;
    width: 12.29rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="2"]) {
    top: 3rem;
    left: -5rem;
    width: 6rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="3"]) {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-color-percentage: 67%;
  --c-polygon-opacity: 100%;
  --c-polygon-clip-path: polygon(79.55% 11.86%, 100% 70.34%, 61.36% 100%, 23.48% 94.07%, 0% 64.41%, 18.94% 0%, 18.94% 0%, 79.55% 11.86%);
  aspect-ratio: 1.119;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="3"]) {
    top: 3.5rem;
    right: 59rem;
    width: 13.2rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="3"]) {
    top: 11.26rem;
    left: -2.56rem;
    width: 18.43rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="3"]) {
    top: 5.5rem;
    left: -1.25rem;
    width: 9rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="5"]) {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(70.51% 100%, 28.81% 96.8%, 0% 53.7%, 4.18% 18.55%, 39.8% 0%, 100% 41.57%, 70.51% 100%);
  bottom: -29.5rem;
  left: -67rem;
  width: 99.6rem;
  aspect-ratio: 1.781;
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+1) *):is([data-deco="5"]) {
    display: none;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="1"]) {
  --c-polygon-color: var(--color-palette-2);
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(67.01% 95%, 28.57% 100%, 0% 70.55%, 3.46% 27.22%, 44.71% 0%, 100% 39.76%, 67.01% 95%);
  aspect-ratio: 1.085;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="1"]) {
    top: -17rem;
    right: -48rem;
    width: 91.85rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="1"]) {
    top: -8.19rem;
    right: -47.1rem;
    width: 80.69rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="1"]) {
    top: -4rem;
    right: -23rem;
    width: 39.4rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="2"]) {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-clip-path: polygon(0% 72.65%, 44.49% 0%, 86.54% 11.64%, 100% 62.92%, 59.32% 100%, 0% 72.65%);
  aspect-ratio: 1.414;
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="2"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 65%;
  --c-polygon-opacity: 100%;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="2"]) {
    top: 0.5rem;
    right: 70rem;
    width: 12.6rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="2"]) {
    top: 0;
    left: -12.29rem;
    width: 16.08rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="2"]) {
    top: 0;
    left: -6rem;
    width: 7.85rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="3"]) {
  --c-polygon-color: var(--color-palette-3);
  --c-polygon-clip-path: polygon(0% 57.14%, 27.18% 0%, 92.82% 19.05%, 100% 91.67%, 33.33% 100%, 0% 57.14%);
  aspect-ratio: 1.161;
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="3"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 60%;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="3"]) {
    top: 4.5rem;
    right: 63rem;
    width: 14rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="3"]) {
    top: 5.63rem;
    left: -4.1rem;
    width: 17.9rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="3"]) {
    top: 2.75rem;
    left: -2rem;
    width: 8.74rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="4"]) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-color-percentage: 55%;
  --c-polygon-opacity: 100%;
  --c-polygon-clip-path: polygon(23.82% 91.58%, 0% 43.84%, 29.18% 0%, 68.79% 17.66%, 100% 53.94%, 49.97% 100%, 23.82% 91.58%);
  top: 40.5rem;
  right: 39rem;
  width: 33.8rem;
  aspect-ratio: 1.275;
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="4"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 80%;
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="4"]) {
    display: none;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="6"]) {
  --c-polygon-color: var(--color-palette-2);
  --c-polygon-color-percentage: 60%;
  --c-polygon-opacity: 100%;
  --c-polygon-clip-path: polygon(39.2% 100%, 100% 67.91%, 69.11% 6.95%, 8.32% 0%, 1.1% 34.14%, 0% 75.97%, 39.2% 100%);
  bottom: -17.5rem;
  left: -21rem;
  width: 17.2rem;
  aspect-ratio: 1.091;
}
.p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="6"]):where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 85%;
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+2) *):is([data-deco="6"]) {
    display: none;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="1"]) {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 48%;
  --c-polygon-clip-path: polygon(64.85% 94.01%, 24% 100%, 0% 62.92%, 7.76% 26.57%, 44.84% 0%, 100% 28.6%, 64.85% 94.01%);
  aspect-ratio: 1.202;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="1"]) {
    top: -15rem;
    right: -53rem;
    width: 107.45rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="1"]) {
    top: -2.05rem;
    right: -65.54rem;
    width: 100.35rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="1"]) {
    top: -1rem;
    right: -32rem;
    width: 49rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="2"]) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-clip-path: polygon(4% 71.96%, 0% 28.97%, 68.8% 0%, 100% 71.96%, 45.6% 100%, 4% 71.96%);
  aspect-ratio: 1.168;
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="2"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 65%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="2"]):where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 85%;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="2"]) {
    top: 0.5rem;
    right: 71rem;
    width: 9.45rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="2"]) {
    top: 1.02rem;
    left: -10.24rem;
    width: 12.29rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="2"]) {
    top: 0.5rem;
    left: -5rem;
    width: 6rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="3"]) {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-clip-path: polygon(62.11% 100%, 100% 77.68%, 91.05% 29.59%, 64.74% 0%, 20.53% 7.1%, 0% 28.4%, 8.42% 81.66%, 62.11% 100%);
  aspect-ratio: 1.131;
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="3"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 60%;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="3"]) {
    top: 4.5rem;
    right: 63rem;
    width: 12.5rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="3"]) {
    top: 7.17rem;
    left: -4.1rem;
    width: 16.9rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="3"]) {
    top: 3.5rem;
    left: -2rem;
    width: 8.25rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="4"]) {
  --c-polygon-color: var(--color-palette-3);
  --c-polygon-color-percentage: 55%;
  --c-polygon-opacity: 100%;
  --c-polygon-clip-path: polygon(100% 50.74%, 55.67% 0%, 0% 30.35%, 23.84% 93.79%, 71.22% 100%, 100% 50.74%);
  top: 44.5rem;
  right: 51rem;
  width: 28rem;
  aspect-ratio: 1.249;
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="4"]):where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 30%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="4"]):where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 30%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="4"]):where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 45%;
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="4"]) {
    display: none;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="5"]) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(33.19% 96.24%, 73.66% 100%, 100% 58.49%, 86.47% 9.29%, 48.57% 0%, 0% 39.37%, 33.19% 96.24%);
  bottom: -51.5rem;
  left: -79rem;
  width: 99.6rem;
  aspect-ratio: 1.182;
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+3) *):is([data-deco="5"]) {
    display: none;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="1"]) {
  --c-polygon-color: var(--color-palette-3);
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 47%;
  --c-polygon-clip-path: polygon(93.56% 83.2%, 26.63% 100%, 0% 58.17%, 17.97% 12.21%, 51.13% 0%, 100% 39.88%, 93.56% 83.2%);
  aspect-ratio: 1.207;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="1"]):where(body[data-theme-color=sky] *) {
  --c-polygon-opacity: 20%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="1"]):where(body[data-theme-color=lagoon] *) {
  --c-polygon-opacity: 20%;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="1"]) {
    top: -2rem;
    right: -40rem;
    width: 95.6rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="1"]) {
    top: -6.14rem;
    right: -57.34rem;
    width: 99.94rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="1"]) {
    top: -3rem;
    right: -28rem;
    width: 48.8rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="2"]) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-clip-path: polygon(18.37% 72.54%, 0% 24.51%, 50% 0%, 100% 26.47%, 62.37% 100%, 18.37% 72.54%);
  aspect-ratio: 0.961;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="2"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 40%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="2"]):where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 60%;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="2"]) {
    top: 0.5rem;
    right: 70rem;
    width: 9.8rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="2"]) {
    top: 1.54rem;
    left: -10.24rem;
    width: 13.93rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="2"]) {
    top: 0.75rem;
    left: -5rem;
    width: 6.8rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="3"]) {
  --c-polygon-color: var(--color-palette-2);
  --c-polygon-clip-path: polygon(83.97% 18.64%, 52.67% 0%, 12.21% 15.25%, 0% 71.19%, 41.22% 100%, 100% 84.75%, 83.97% 18.64%);
  aspect-ratio: 1.11;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="3"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 60%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="3"]):where(body[data-theme-color=sky] *) {
  --c-polygon-color-percentage: 85%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="3"]):where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 85%;
}
@media (min-width: 1025px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="3"]) {
    top: 3.5rem;
    right: 63rem;
    width: 13.1rem;
  }
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="3"]) {
    top: 6.14rem;
    left: -5.12rem;
    width: 18.6rem;
  }
}
@media (max-width: 525px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="3"]) {
    top: 3rem;
    left: -2.5rem;
    width: 9.08rem;
  }
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="4"]) {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-clip-path: polygon(26.57% 100%, 0% 47.87%, 32.56% 0%, 76.74% 19.28%, 100% 45.72%, 65.66% 92.71%, 26.57% 100%);
  top: 45.5rem;
  right: 36rem;
  width: 30.3rem;
  aspect-ratio: 1.248;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="4"]):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 55%;
}
.p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="4"]):where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 60%;
}
@media (max-width: 1024px) {
  .p-feature__deco:is(.p-feature:nth-child(4n+4) *):is([data-deco="4"]) {
    display: none;
  }
}

.p-greeting {
  --image-shadow-opacity: 57%;
  position: relative;
  overflow-x: clip;
}
.p-greeting:where(body[data-theme-color=spring] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-sunset-orange) 15%, #fff);
  --c-lead-text-color: var(--color-amber);
  --c-lead-highlight-color: color-mix(in srgb, var(--color-palette-1) 30%, #fff);
}
.p-greeting:where(body[data-theme-color=sky] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-2) 13%, #fff);
  --c-lead-text-color: #5489af;
  --c-lead-highlight-color: #d9eef9;
}
.p-greeting:where(body[data-theme-color=rose] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-2) 5%, #fff);
  --image-shadow-opacity: 43%;
  --c-lead-text-color: #634806;
  --c-lead-highlight-color: #f8dbd0;
}
.p-greeting:where(body[data-theme-color=cafe] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-2) 5%, #fff);
  --image-shadow-opacity: 43%;
  --c-lead-text-color: #634806;
  --c-lead-highlight-color: #efe6ca;
}
.p-greeting:where(body[data-theme-color=lagoon] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 5%, #fff);
  --c-lead-highlight-color: #c8e4ee;
}
@media (max-width: 1024px) {
  .p-greeting:not(:has(.p-greeting__buttons)) {
    padding-bottom: 20rem;
  }
}
@media (max-width: 525px) {
  .p-greeting:not(:has(.p-greeting__buttons)) {
    padding-bottom: 16rem;
  }
}
.p-greeting__inner {
  container-type: inline-size;
}
.p-greeting__header {
  margin-inline: auto;
}
.p-greeting__header__deco {
  position: absolute;
}
.p-greeting__header__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(11.57% 100%, 0% 25.34%, 59.2% 0%, 100% 54.44%, 11.57% 100%);
  top: -1rem;
  right: -6rem;
  width: 4.17rem;
  aspect-ratio: 0.851;
}
@media (max-width: 1024px) {
  .p-greeting__header__deco[data-deco="1"] {
    top: -3.5rem;
    right: -5.12rem;
    width: 3.25rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__header__deco[data-deco="1"] {
    top: -2rem;
    right: -2.5rem;
    width: 1.93rem;
  }
}
.p-greeting__header__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(0% 63.29%, 50.2% 100%, 100% 65.14%, 67.46% 0%, 34.3% 4.17%, 0% 63.29%);
  top: 3.75rem;
  right: -6.5rem;
  width: 2.65rem;
  aspect-ratio: 1.158;
}
@media (max-width: 1024px) {
  .p-greeting__header__deco[data-deco="2"] {
    top: 0.51rem;
    right: -5.12rem;
    width: 2.2rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__header__deco[data-deco="2"] {
    top: 0.25rem;
    right: -2.5rem;
    width: 1.23rem;
  }
}
.p-greeting__body {
  --column-gap: 9rem;
  --ovarlap-width: 3rem;
  display: grid;
}
@media (min-width: 1025px) {
  .p-greeting__body {
    grid-template-areas: "portrait main" "portrait buttons";
    grid-template-rows: auto auto;
    grid-template-columns: 63.6rem 1fr;
    column-gap: var(--column-gap);
    margin-top: 13.5rem;
    margin-left: calc(var(--container-padding-md) * -1);
  }
}
@media (max-width: 1024px) {
  .p-greeting__body {
    grid-template-areas: "portrait" "main" "buttons";
    grid-template-rows: auto auto auto;
    grid-template-columns: 1fr;
    margin-top: 3.5rem;
  }
}
.p-greeting__portrait {
  grid-area: portrait;
  filter: drop-shadow(2rem 1.5rem 1.5rem color-mix(in srgb, var(--color-palette-4) var(--image-shadow-opacity), #fff));
}
@media (max-width: 1024px) {
  .p-greeting__portrait {
    margin-right: var(--container-padding-md);
    margin-left: calc(var(--container-padding-lg) * -1);
    filter: drop-shadow(1rem 1rem 1rem color-mix(in srgb, var(--color-palette-4) var(--image-shadow-opacity), #fff));
  }
}
.p-greeting__main {
  position: relative;
  grid-area: main;
  height: fit-content;
  padding-top: 2.5rem;
}
.p-greeting__main::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background-color: var(--color-white);
  clip-path: polygon(54.9% 0, 100% 12.75rem, 100% calc(100% - 9.8rem), 62.1% 100%, 0 calc(100% - 14.24rem), 0 8.43rem);
}
@media (min-width: 1025px) {
  .p-greeting__main::before {
    top: -10rem;
    bottom: -8.5rem;
    margin-right: calc(var(--container-padding-md) * -1);
    margin-left: calc((var(--column-gap) + var(--ovarlap-width)) * -1);
  }
}
@media (max-width: 1024px) {
  .p-greeting__main::before {
    top: -18rem;
    bottom: -8rem;
    margin-inline: calc(50cqw - 50 * var(--vw));
    clip-path: polygon(67.5% 0, 100% 6.95rem, 100% calc(100% - 7rem), 33.9% 100%, 0 calc(100% - 5.93rem), 0 5.05rem);
  }
}
@media (max-width: 525px) {
  .p-greeting__main::before {
    clip-path: polygon(67.5% 0, 100% 6.95rem, 100% calc(100% - 4.64rem), 33.9% 100%, 0 calc(100% - 3.93rem), 0 5.05rem);
  }
}
@media (max-width: 1024px) {
  .p-greeting__lead {
    margin-top: 2rem;
  }
}
.p-greeting__content {
  margin-top: 2rem;
}
.p-greeting__sign {
  margin-top: 4rem;
  margin-left: auto;
}
.p-greeting__buttons {
  position: relative;
  z-index: 1;
  display: flex;
  flex-wrap: wrap;
  grid-area: buttons;
  gap: 2rem;
  align-items: flex-start;
  justify-content: flex-end;
  margin-top: 5rem;
}
.p-greeting__buttons:has(> :nth-child(2)) {
  justify-content: center;
}
@media (max-width: 1024px) {
  .p-greeting__buttons {
    align-items: flex-end;
    margin-top: 3.5rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__buttons {
    flex-direction: column;
  }
}
.p-greeting__deco {
  position: absolute;
}
.p-greeting__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(0% 59.98%, 18.08% 17.69%, 88.12% 0%, 100% 33.1%, 89.27% 85.05%, 29% 100%, 0% 59.98%);
  aspect-ratio: 1.036;
}
.p-greeting__deco[data-deco="1"]:where(body[data-theme-color=sky] *) {
  --c-polygon-opacity: 88%;
}
@media (min-width: 1025px) {
  .p-greeting__deco[data-deco="1"] {
    top: 2.5rem;
    right: -20rem;
    width: 57.7rem;
  }
}
@media (max-width: 1024px) {
  .p-greeting__deco[data-deco="1"] {
    top: 15.65rem;
    right: -22.53rem;
    width: 59.39rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__deco[data-deco="1"] {
    top: 13.5rem;
    right: -11rem;
    width: 29rem;
  }
}
.p-greeting__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(100% 85.22%, 86.81% 16.09%, 31.96% 0%, 0% 59.29%, 41.64% 100%, 100% 85.22%);
  aspect-ratio: 1.236;
}
@media (min-width: 1025px) {
  .p-greeting__deco[data-deco="2"] {
    top: 38rem;
    right: 17rem;
    width: 11.66rem;
  }
}
@media (max-width: 1024px) {
  .p-greeting__deco[data-deco="2"] {
    top: 23.89rem;
    right: 6.1rem;
    width: 13.18rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__deco[data-deco="2"] {
    top: 18.5rem;
    right: 2rem;
    width: 7.41rem;
  }
}
.p-greeting__deco[data-deco="3"] {
  --c-polygon-opacity: 100%;
  --c-polygon-color-percentage: 55%;
  --c-polygon-clip-path: polygon(26.72% 0.93%, 60.26% 0%, 91.59% 17.81%, 100% 64.32%, 68.73% 89.85%, 45.09% 100%, 0% 57.03%, 26.72% 0.93%);
  aspect-ratio: 0.974;
}
@media (min-width: 1025px) {
  .p-greeting__deco[data-deco="3"] {
    top: 26rem;
    left: -9.5rem;
    width: 29.7rem;
  }
}
@media (max-width: 1024px) {
  .p-greeting__deco[data-deco="3"] {
    top: -1.02rem;
    left: -23.55rem;
    width: 34.61rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__deco[data-deco="3"] {
    top: -0.5rem;
    left: -11.5rem;
    width: 16.9rem;
  }
}
.p-greeting__deco[data-deco="4"] {
  --c-polygon-clip-path: polygon(5.38% 11.37%, 68.2% 0%, 100% 54.56%, 48.41% 100%, 0% 59.72%, 5.38% 11.37%);
  aspect-ratio: 1.03;
}
@media (min-width: 1025px) {
  .p-greeting__deco[data-deco="4"] {
    top: 28rem;
    left: 14.5rem;
    width: 10.75rem;
  }
}
@media (max-width: 1024px) {
  .p-greeting__deco[data-deco="4"] {
    top: 5.12rem;
    left: 5.12rem;
    width: 9.32rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__deco[data-deco="4"] {
    top: 2.5rem;
    left: 2.5rem;
    width: 4.55rem;
  }
}
.p-greeting__deco[data-deco="5"] {
  --c-polygon-color-percentage: 45%;
  --c-polygon-clip-path: polygon(0% 47.72%, 15.98% 18.05%, 47.48% 0%, 93% 16.75%, 100% 57.17%, 97.17% 83%, 36.42% 100%, 0% 47.72%);
  aspect-ratio: 1.006;
}
.p-greeting__deco[data-deco="5"]:where(body[data-theme-color=rose] *) {
  --c-polygon-color-percentage: 25%;
}
.p-greeting__deco[data-deco="5"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 13%;
}
.p-greeting__deco[data-deco="5"]:where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 13%;
}
@media (min-width: 1025px) {
  .p-greeting__deco[data-deco="5"] {
    right: 40rem;
    bottom: 11rem;
    width: 27rem;
  }
}
@media (max-width: 1024px) {
  .p-greeting__deco[data-deco="5"] {
    bottom: 7.68rem;
    left: -10.24rem;
    width: 27.55rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__deco[data-deco="5"] {
    bottom: 3.75rem;
    left: -5rem;
    width: 13.45rem;
  }
}
.p-greeting__deco[data-deco="6"] {
  --c-polygon-clip-path: polygon(0% 44.85%, 72.21% 0%, 100% 45.75%, 78.13% 90.32%, 10% 100%, 0% 44.85%);
  aspect-ratio: 0.859;
}
@media (min-width: 1025px) {
  .p-greeting__deco[data-deco="6"] {
    right: 61.5rem;
    bottom: 22.5rem;
    width: 7.08rem;
  }
}
@media (max-width: 1024px) {
  .p-greeting__deco[data-deco="6"] {
    bottom: 12.43rem;
    left: 4.14rem;
    width: 9.83rem;
  }
}
@media (max-width: 525px) {
  .p-greeting__deco[data-deco="6"] {
    bottom: 9rem;
    left: 3rem;
    width: 4.8rem;
  }
}

.p-service-section {
  position: relative;
  padding-top: 12rem;
  padding-bottom: 11rem;
  overflow-x: clip;
}
@media (max-width: 1024px) {
  .p-service-section {
    padding-top: 6rem;
  }
}
.p-service-section__header {
  margin-inline: auto;
}
.p-service-section__list {
  --c-tile-column-count: 6;
  --c-tile-column-gap: 2.25rem;
  --c-tile-row-gap: 5.5rem;
  justify-content: center;
  margin-top: 7rem;
}
@media (max-width: 1024px) {
  .p-service-section__list {
    --c-tile-column-count: 3;
    --c-tile-column-gap: 3rem;
    --c-tile-row-gap: 3rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__list {
    --c-tile-column-count: 2;
    --c-tile-column-gap: 2.15rem;
    --c-tile-row-gap: 2.5rem;
    margin-top: 3rem;
  }
}
.p-service-section__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  justify-content: center;
  margin-top: 6.5rem;
}
@media (max-width: 1024px) {
  .p-service-section__buttons {
    margin-top: 5rem;
  }
}
.p-service-section__button {
  width: min(25.5rem, 100%);
}
@media (max-width: 1024px) {
  .p-service-section__button {
    width: min(21.25rem, 100%);
  }
}
.p-service-section__deco {
  position: absolute;
}
.p-service-section__deco[data-deco="1"] {
  --c-polygon-opacity: 100%;
  --c-polygon-color-percentage: 20%;
  --c-polygon-clip-path: polygon(62.91% 89.34%, 23.58% 100%, 0% 41.62%, 13.5% 8.96%, 68.32% 0%, 100% 51.83%, 62.91% 89.34%);
  aspect-ratio: 1.108;
}
.p-service-section__deco[data-deco="1"]:where(body[data-theme-color=sky] *) {
  --c-polygon-color-percentage: 50%;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="1"] {
    top: -2.5rem;
    right: -40rem;
    width: 88.3rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="1"] {
    top: 21rem;
    right: -22.53rem;
    width: 50.39rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="1"] {
    top: 23.5rem;
    right: -11rem;
    width: 29rem;
  }
}
.p-service-section__deco[data-deco="2"] {
  --c-polygon-opacity: 100%;
  --c-polygon-color-percentage: 40%;
  --c-polygon-clip-path: polygon(100% 76.48%, 87.57% 11.6%, 33.38% 0%, 0% 63.11%, 40.06% 100%, 100% 76.48%);
  aspect-ratio: 1.092;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="2"] {
    top: -6.5rem;
    right: -12rem;
    width: 36.7rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="2"] {
    display: none;
  }
}
.p-service-section__deco[data-deco="3"] {
  --c-polygon-clip-path: polygon(77.43% 100%, 100% 27.59%, 44.17% 0%, 0% 52.36%, 12.27% 87.66%, 77.43% 100%);
  aspect-ratio: 1.055;
}
.p-service-section__deco[data-deco="3"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 55%;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="3"] {
    top: 13.5rem;
    right: 17.5rem;
    width: 7.76rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="3"] {
    top: 6.14rem;
    right: 2.05rem;
    width: 10.16rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="3"] {
    top: 3rem;
    right: 1rem;
    width: 4.96rem;
  }
}
.p-service-section__deco[data-deco="4"] {
  --c-polygon-opacity: 47%;
  --c-polygon-color-percentage: 100%;
  --c-polygon-clip-path: polygon(61.5% 88.06%, 21.68% 100%, 0% 43.47%, 14.66% 10.85%, 69.97% 0%, 100% 49.8%, 61.5% 88.06%);
  aspect-ratio: 0.985;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="4"] {
    top: -48rem;
    left: -44.6rem;
    width: 89.1rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="4"] {
    top: -37.89rem;
    left: -36.66rem;
    width: 68.81rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="4"] {
    top: -18.5rem;
    left: -17.9rem;
    width: 33.6rem;
  }
}
.p-service-section__deco[data-deco="5"] {
  --c-polygon-color-percentage: 67%;
  --c-polygon-clip-path: polygon(26.72% 0.93%, 60.26% 0%, 91.59% 17.81%, 100% 64.32%, 68.73% 89.85%, 45.09% 100%, 0% 57.03%, 26.72% 0.93%);
  aspect-ratio: 0.974;
}
.p-service-section__deco[data-deco="5"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 46%;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="5"] {
    top: 3rem;
    left: 12.9rem;
    width: 25rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="5"] {
    top: -12.8rem;
    right: -12.29rem;
    width: 27.44rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="5"] {
    top: -6.25rem;
    right: -6rem;
    width: 13.4rem;
  }
}
.p-service-section__deco[data-deco="6"] {
  --c-polygon-clip-path: polygon(0% 69.42%, 20.5% 100%, 81.34% 90.49%, 100% 40.9%, 53.69% 0%, 6.41% 24.32%, 0% 69.42%);
  aspect-ratio: 0.995;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="6"] {
    right: 15.6rem;
    bottom: 1.5rem;
    width: 15.9rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="6"] {
    display: none;
  }
}
.p-service-section__deco[data-deco="7"] {
  --c-polygon-opacity: 70%;
  --c-polygon-clip-path: polygon(0% 72.26%, 0.24% 38.66%, 19.2% 7.6%, 66.14% 0%, 90.65% 31.76%, 100% 55.61%, 55.33% 100%, 0% 72.26%);
  aspect-ratio: 1.022;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="7"] {
    bottom: -7.5rem;
    left: -10rem;
    width: 31.6rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="7"] {
    bottom: 8.19rem;
    left: -7.58rem;
    width: 22.73rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="7"] {
    bottom: 4rem;
    left: -3.7rem;
    width: 11.1rem;
  }
}
.p-service-section__deco[data-deco="8"] {
  --c-polygon-clip-path: polygon(72.23% 100%, 8.39% 83.04%, 0% 29.41%, 53.25% 0%, 100% 17.38%, 97.99% 67.72%, 72.23% 100%);
  aspect-ratio: 0.94;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="8"] {
    bottom: -1.5rem;
    left: 15.1rem;
    width: 8.1rem;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="8"] {
    bottom: 10.24rem;
    left: 8.52rem;
    width: 8.52rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="8"] {
    bottom: 5rem;
    left: 4.16rem;
    width: 4.16rem;
  }
}
.p-service-section__deco[data-deco="9"] {
  --c-polygon-opacity: 100%;
  --c-polygon-color-percentage: 15%;
  --c-polygon-clip-path: polygon(61.5% 100%, 21.71% 99.61%, 0% 49.36%, 14.66% 12.32%, 69.97% 0%, 100% 56.55%, 61.5% 100%);
  aspect-ratio: 1.119;
}
@media (min-width: 526px) {
  .p-service-section__deco[data-deco="9"] {
    display: none;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="9"] {
    top: 50%;
    left: -14.6rem;
    width: 33.8rem;
  }
}
.p-service-section__deco[data-deco="10"] {
  --c-polygon-opacity: 100%;
  --c-polygon-color-percentage: 25%;
  --c-polygon-clip-path: polygon(52.4% 100%, 19.28% 86.91%, 0% 48.35%, 44.19% 0%, 88.14% 31.68%, 100% 62.66%, 52.4% 100%);
  aspect-ratio: 1.059;
}
@media (min-width: 1025px) {
  .p-service-section__deco[data-deco="10"] {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-service-section__deco[data-deco="10"] {
    right: -19rem;
    bottom: -8.26rem;
    width: 40rem;
  }
}
@media (max-width: 525px) {
  .p-service-section__deco[data-deco="10"] {
    right: -18.5rem;
    bottom: -5.5rem;
    width: 32.7rem;
  }
}

@property --shade-stop {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 55%;
}
@property --shade-soft {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}
.p-service {
  container-type: inline-size;
  filter: drop-shadow(0.5rem 0.5rem 0.6rem color-mix(in srgb, var(--shadow-color) var(--shadow-opacity, 50%), transparent));
  transform: translateZ(0);
}
.p-service:where(body[data-theme-color=rose] *) {
  color: #3b3743;
}
.p-service:where(body[data-theme-color=cafe] *) {
  color: #463823;
}
@media (any-hover: hover) {
  .p-service {
    transition: filter 0.3s;
  }
  .p-service:has(> .p-service__link:hover) {
    filter: drop-shadow(0.35rem 0.35rem 0.8rem color-mix(in srgb, var(--shadow-color) 50%, transparent));
  }
}
.p-service:nth-child(4n+1) {
  --bg-color: color-mix(in sRGB, var(--color-palette-1) 35%, #fff);
  --shade-color: color-mix(in sRGB, var(--color-palette-1) 20%, #fff);
  --shadow-color: color-mix(in sRGB, var(--color-palette-5) 100%, #fff);
  --icon-color: var(--color-cobalt-blue);
  --clip-path: polygon(100% 85.71%, 38.42% 100%, 0% 83.16%, 1.69% 69.92%, 7.89% 21.43%, 50% 0%, 93.68% 27.5%, 95.58% 44.97%, 100% 85.71%);
}
.p-service:nth-child(4n+1):where(body[data-theme-color=sky] *) {
  --bg-color: color-mix(in sRGB, var(--color-palette-2) 46%, #fff);
  --shade-color: color-mix(in sRGB, var(--color-palette-2) 25%, #fff);
  --shadow-color: var(--color-palette-3);
  --shadow-opacity: 50%;
  --icon-color: var(--color-azure-blue);
}
.p-service:nth-child(4n+1):where(body[data-theme-color=rose] *) {
  --bg-color: color-mix(in sRGB, var(--color-rose-taupe) 46%, #fff);
  --shade-color: color-mix(in sRGB, var(--color-rose-taupe) 12%, #fff);
  --shadow-color: var(--color-palette-2);
  --shadow-opacity: 37%;
  --icon-color: var(--color-chocolate);
}
.p-service:nth-child(4n+1):where(body[data-theme-color=cafe] *) {
  --bg-color: color-mix(in sRGB, var(--color-palette-2) 46%, #fff);
  --shade-color: color-mix(in srgb, var(--color-palette-2) 20%, transparent);
  --shadow-color: var(--color-palette-2);
  --shadow-opacity: 37%;
  --icon-color: var(--color-chocolate);
}
.p-service:nth-child(4n+1):where(body[data-theme-color=lagoon] *) {
  --bg-color: color-mix(in sRGB, #0c7d98 46%, #fff);
  --shade-color: color-mix(in srgb, #0c7d98 12%, transparent);
  --shadow-color: #0c7d98;
  --shadow-opacity: 37%;
  --icon-color: #006085;
}
.p-service:nth-child(4n+2) {
  --bg-color: color-mix(in sRGB, var(--color-palette-2) 35%, #fff);
  --shade-color: color-mix(in sRGB, var(--color-palette-2) 15%, #fff);
  --shadow-color: color-mix(in sRGB, var(--color-palette-3) 100%, #fff);
  --icon-color: var(--color-brink-pink);
  --clip-path: polygon(100% 37.53%, 97.7% 44.57%, 79.58% 100%, 0% 79.69%, 1.24% 70.2%, 8.9% 11.82%, 72.25% 0%, 100% 37.53%);
}
.p-service:nth-child(4n+2):where(body[data-theme-color=sky] *) {
  --bg-color: #c2dceb;
  --shade-color: color-mix(in sRGB, #c2dceb 50%, #fff);
  --shadow-color: #bfdbef;
  --shadow-opacity: 90%;
  --icon-color: var(--color-royal-blue);
}
.p-service:nth-child(4n+2):where(body[data-theme-color=rose] *) {
  --bg-color: #d4cec7;
  --shade-color: color-mix(in sRGB, #d4cec7 45%, #fff);
  --shadow-color: var(--color-palette-1);
  --shadow-opacity: 45%;
  --icon-color: #634806;
}
.p-service:nth-child(4n+2):where(body[data-theme-color=cafe] *) {
  --bg-color: color-mix(in sRGB, var(--color-palette-5) 100%, #fff);
  --shade-color: color-mix(in srgb, var(--color-palette-5) 30%, transparent);
  --shadow-color: var(--color-palette-1);
  --shadow-opacity: 70%;
  --icon-color: #6a5207;
}
.p-service:nth-child(4n+2):where(body[data-theme-color=lagoon] *) {
  --bg-color: color-mix(in sRGB, #a8d8d4 100%, #fff);
  --shade-color: color-mix(in srgb, #a8d8d4 39%, transparent);
  --shadow-color: var(--color-palette-2);
  --shadow-opacity: 43%;
  --icon-color: #0086a1;
}
.p-service:nth-child(4n+3) {
  --bg-color: color-mix(in sRGB, var(--color-palette-5) 35%, #fff);
  --shade-color: color-mix(in sRGB, var(--color-palette-5) 15%, #fff);
  --shadow-color: color-mix(in sRGB, var(--color-palette-1) 100%, #fff);
  --icon-color: var(--color-sea-green);
  --clip-path: polygon(100% 36.73%, 97.73% 45.11%, 86.32% 87.25%, 38.42% 100%, 0% 83.16%, 0.76% 70.88%, 2.63% 40.81%, 28.42% 5.1%, 84.21% 0%, 100% 36.73%);
}
.p-service:nth-child(4n+3):where(body[data-theme-color=sky] *) {
  --bg-color: #d4ecfa;
  --shade-color: color-mix(in sRGB, #d4ecfa 45%, #fff);
  --shadow-color: #6dafcc;
  --shadow-opacity: 50%;
  --icon-color: #3a4e77;
}
.p-service:nth-child(4n+3):where(body[data-theme-color=rose] *) {
  --bg-color: #e5d0a2;
  --shade-color: color-mix(in sRGB, #e5d0a2 25%, #fff);
  --shadow-color: var(--color-palette-3);
  --shadow-opacity: 60%;
  --icon-color: var(--color-chocolate);
}
.p-service:nth-child(4n+3):where(body[data-theme-color=cafe] *) {
  --bg-color: #dfd2b1;
  --shade-color: color-mix(in srgb, #dfd2b1 25%, transparent);
  --shadow-color: var(--color-palette-3);
  --shadow-opacity: 40%;
  --icon-color: var(--color-chocolate);
}
.p-service:nth-child(4n+3):where(body[data-theme-color=lagoon] *) {
  --bg-color: #b1d8e6;
  --shade-color: color-mix(in srgb, #59b2bb 25%, transparent);
  --shadow-color: #59b2bb;
  --shadow-opacity: 60%;
  --icon-color: #2373a1;
}
.p-service:nth-child(4n+4) {
  --bg-color: color-mix(in sRGB, var(--color-palette-3) 35%, #fff);
  --shade-color: color-mix(in sRGB, var(--color-palette-3) 15%, #fff);
  --shadow-color: color-mix(in sRGB, var(--color-palette-2) 100%, #fff);
  --icon-color: var(--color-deep-saffron);
  --clip-path: polygon(100% 83.16%, 30.16% 100%, 6.79% 68.76%, 0% 59.69%, 11.11% 20.92%, 44.45% 0%, 88.36% 15.3%, 93.57% 45.7%, 100% 83.16%);
}
.p-service:nth-child(4n+4):where(body[data-theme-color=sky] *) {
  --bg-color: var(--color-misty-white);
  --shade-color: color-mix(in sRGB, var(--color-misty-white) 45%, #fff);
  --shadow-color: var(--color-palette-2);
  --shadow-opacity: 40%;
  --icon-color: color-mix(in srgb, var(--color-text-base) 89%, #fff);
}
.p-service:nth-child(4n+4):where(body[data-theme-color=rose] *) {
  --bg-color: #ebccb5;
  --shade-color: color-mix(in sRGB, #ebccb5 25%, #fff);
  --shadow-color: var(--color-palette-5);
  --shadow-opacity: 90%;
  --icon-color: var(--color-rose-taupe);
}
.p-service:nth-child(4n+4):where(body[data-theme-color=cafe] *) {
  --bg-color: #cacebd;
  --shade-color: color-mix(in srgb, #cacebd 25%, transparent);
  --shadow-color: var(--color-palette-4);
  --shadow-opacity: 43%;
  --icon-color: #676125;
}
.p-service:nth-child(4n+4):where(body[data-theme-color=lagoon] *) {
  --bg-color: #abd7ee;
  --shade-color: color-mix(in srgb, #7d9ddd 16%, transparent);
  --shadow-color: #50648c;
  --shadow-opacity: 25%;
  --icon-color: #3379a3;
}
.p-service__link {
  --shade-stop: 55%;
  --shade-soft: 55%;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  aspect-ratio: 0.969;
  padding: 10cqw;
  background-color: var(--bg-color);
  background-image: url("../../images/polygon-texture.webp");
  background-repeat: repeat;
  background-size: var(--texture-size) auto;
  background-blend-mode: soft-light;
  clip-path: var(--clip-path);
}
.p-service__link::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background-image: linear-gradient(164.67deg, transparent var(--shade-stop), var(--shade-color) var(--shade-soft));
  mix-blend-mode: multiply;
}
@media (any-hover: hover) {
  .p-service__link::before {
    transition: --shade-stop 0.9s var(--ease-out-expo), --shade-soft 0.9s var(--ease-out-expo);
  }
}
@media (any-hover: hover) {
  .p-service__link:hover {
    --shade-stop: 0%;
    --shade-soft: 0%;
  }
}
.p-service__icon {
  font-size: 45cqw;
  color: var(--icon-color);
  text-align: center;
}
.p-service__name {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2lh;
  margin-top: 0.25em;
  font-family: var(--font-maru);
  font-size: clamp(var(--font-size-sm), 10cqw, var(--font-size-lg));
  font-weight: bold;
  line-height: 1.2;
  text-align: center;
}

.p-facility-section {
  position: relative;
  padding-top: 19rem;
  padding-bottom: 19rem;
  margin-top: 2.5rem;
  overflow-x: clip;
}
@media (min-width: 1025px) {
  .p-facility-section {
    margin-bottom: 11.5rem;
  }
  .p-facility-section:where(body[data-theme-color=spring] *) {
    --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 10%, #fff);
  }
  .p-facility-section:where(body[data-theme-color=sky] *) {
    --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 20%, #fff);
  }
  .p-facility-section:where(body[data-theme-color=rose] *) {
    --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 10%, #fff);
  }
  .p-facility-section:where(body[data-theme-color=lagoon] *) {
    --c-wall-bg-color: color-mix(in srgb, var(--color-palette-5) 10%, #fff);
  }
}
@media (max-width: 1024px) {
  .p-facility-section {
    padding-top: 13rem;
    padding-bottom: 8rem;
    margin-top: -2rem;
  }
  .p-facility-section:where(body[data-theme-color=spring] *) {
    --c-wall-bg-color: linear-gradient(to bottom, color-mix(in srgb, var(--color-powder-blue) 90%, #fff), var(--color-white));
  }
  .p-facility-section:where(body[data-theme-color=sky] *) {
    --c-wall-bg-color: linear-gradient(to bottom, color-mix(in srgb, var(--color-palette-1) 67%, #fff), var(--color-white));
  }
  .p-facility-section:where(body[data-theme-color=rose] *) {
    --c-wall-bg-color: linear-gradient(to bottom, color-mix(in srgb, var(--color-palette-2) 20%, #fff), var(--color-white));
  }
  .p-facility-section:where(body[data-theme-color=cafe] *) {
    --c-wall-bg-color: linear-gradient(to bottom, color-mix(in srgb, var(--color-palette-2) 30%, #fff), var(--color-white));
  }
  .p-facility-section:where(body[data-theme-color=lagoon] *) {
    --c-wall-bg-color: linear-gradient(to bottom, color-mix(in srgb, #637fa8 17%, #fff), var(--color-white));
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-facility-section {
    margin-bottom: 2.5rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section {
    padding-top: 8.5rem;
    padding-bottom: 7rem;
    margin-top: -1.5rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section::before {
    bottom: 5rem;
  }
}
.p-facility-section__inner {
  display: grid;
  container-type: inline-size;
}
@media (min-width: 1025px) {
  .p-facility-section__inner {
    grid-template-areas: "header buttons" "main main";
    grid-template-rows: auto auto;
    grid-template-columns: auto 1fr;
    column-gap: 12rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__inner {
    grid-template-areas: "header" "main" "buttons";
    grid-template-columns: auto;
  }
}
.p-facility-section__header {
  grid-area: header;
}
@media (max-width: 1024px) {
  .p-facility-section__header {
    margin-inline: auto;
  }
}
.p-facility-section__header__deco {
  position: absolute;
}
.p-facility-section__header__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(0% 100%, 24.95% 0%, 100% 0%, 90.16% 67.89%, 0% 100%);
  top: -3.5rem;
  right: -6rem;
  width: 5rem;
  aspect-ratio: 1.094;
}
@media (max-width: 1024px) {
  .p-facility-section__header__deco[data-deco="1"] {
    top: -3.5rem;
    right: -5.12rem;
    width: 3.25rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__header__deco[data-deco="1"] {
    top: -2rem;
    right: -2.5rem;
    width: 1.93rem;
  }
}
.p-facility-section__header__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(0% 81.95%, 11.88% 16.15%, 38.16% 0%, 100% 14.57%, 86.78% 61.89%, 65.85% 100%, 18.49% 98.48%, 0% 81.95%);
  top: 1rem;
  right: -5.75rem;
  width: 2.8rem;
  aspect-ratio: 1.384;
}
@media (max-width: 1024px) {
  .p-facility-section__header__deco[data-deco="2"] {
    top: 0.51rem;
    right: -5.12rem;
    width: 2.2rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__header__deco[data-deco="2"] {
    top: 0.25rem;
    right: -2.5rem;
    width: 1.23rem;
  }
}
.p-facility-section__main {
  position: relative;
  grid-area: main;
  margin-top: 5.5rem;
}
@media (max-width: 1024px) {
  .p-facility-section__main {
    margin-top: 13rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__main {
    margin-top: 9rem;
  }
}
@media (min-width: 1025px) {
  .p-facility-section__main__bg {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__main__bg {
    position: absolute;
    inset-inline: 0;
    top: -10.5rem;
    z-index: -2;
    aspect-ratio: 1.85;
    margin-inline: calc(50cqw - 50 * var(--vw));
    background-color: var(--color-bg-base);
    clip-path: polygon(13.31% 0%, 0% 4.66%, 0% 89.72%, 65.6% 100%, 100% 58.89%, 100% 17.28%, 13.31% 0%);
  }
}
@media (max-width: 525px) {
  .p-facility-section__main__bg {
    top: -7.5rem;
    aspect-ratio: 1.542;
  }
}
.p-facility-section__buttons {
  display: flex;
  flex-wrap: wrap;
  grid-area: buttons;
  gap: 2rem;
  align-items: center;
}
@media (min-width: 1025px) {
  .p-facility-section__buttons {
    padding-bottom: 1rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__buttons {
    justify-content: center;
    margin-top: 4rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__buttons {
    margin-top: 3rem;
  }
}
.p-facility-section__button {
  width: min(25.5rem, 100%);
}
@media (max-width: 1024px) {
  .p-facility-section__button {
    width: min(21.25rem, 100%);
  }
}
.p-facility-section__deco {
  position: absolute;
}
.p-facility-section__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(53.55% 100%, 20.21% 85.96%, 0% 46.93%, 42.77% 0%, 87.38% 32.9%, 100% 64.15%, 53.55% 100%);
  aspect-ratio: 1.074;
}
.p-facility-section__deco[data-deco="1"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 100%;
  --c-polygon-opacity: 55%;
}
.p-facility-section__deco[data-deco="1"]:where(body[data-theme-color=sky] *) {
  --c-polygon-opacity: 50%;
}
@media (min-width: 1025px) {
  .p-facility-section__deco[data-deco="1"] {
    top: -6.5rem;
    right: -30rem;
    width: 78.5rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__deco[data-deco="1"] {
    display: none;
  }
}
.p-facility-section__deco[data-deco="2"] {
  --c-polygon-opacity: 75%;
  --c-polygon-color-percentage: 50%;
  --c-polygon-clip-path: polygon(2.23% 46.12%, 16.93% 17.45%, 45.94% 0%, 87.85% 16.18%, 100% 64.57%, 70.49% 100%, 0% 80.41%, 2.23% 46.12%);
  aspect-ratio: 1.056;
}
.p-facility-section__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-opacity: 100%;
  --c-polygon-color-percentage: 40%;
}
@media (min-width: 1025px) {
  .p-facility-section__deco[data-deco="2"] {
    top: 31rem;
    left: -18rem;
    width: 29.4rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__deco[data-deco="2"] {
    top: 31.08rem;
    left: -16.43rem;
    width: 28.5rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__deco[data-deco="2"] {
    top: 22.5rem;
    left: -9rem;
    width: 15.7rem;
  }
}
.p-facility-section__deco[data-deco="3"] {
  --c-polygon-opacity: 100%;
  --c-polygon-color-percentage: 100%;
  --c-polygon-clip-path: polygon(68.75% 100%, 100% 33.02%, 49.54% 0%, 0% 45.18%, 7.3% 80.55%, 68.75% 100%);
  aspect-ratio: 1.048;
}
@media (min-width: 1025px) {
  .p-facility-section__deco[data-deco="3"] {
    top: 33.5rem;
    left: 4rem;
    width: 7.76rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__deco[data-deco="3"] {
    top: 32.5rem;
    left: 6.66rem;
    width: 7rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__deco[data-deco="3"] {
    top: 23rem;
    left: 3.25rem;
    width: 4.4rem;
  }
}
.p-facility-section__deco[data-deco="4"] {
  --c-polygon-opacity: 55%;
  --c-polygon-color-percentage: 100%;
  --c-polygon-clip-path: polygon(75.07% 100%, 30.97% 89.97%, 0% 44.52%, 47% 0%, 83.59% 32.61%, 100% 64.64%, 75.07% 100%);
  aspect-ratio: 1.302;
}
.p-facility-section__deco[data-deco="4"]:where(body[data-theme-color=sky] *) {
  --c-polygon-opacity: 80%;
}
@media (min-width: 1025px) {
  .p-facility-section__deco[data-deco="4"] {
    right: -23.6rem;
    bottom: -8rem;
    width: 57.1rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__deco[data-deco="4"] {
    right: -34.15rem;
    bottom: 6.26rem;
    width: 82.61rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__deco[data-deco="4"] {
    right: -24rem;
    bottom: 5.5rem;
    width: 41.8rem;
  }
}
.p-facility-section__deco[data-deco="5"] {
  --c-polygon-color-percentage: 80%;
  --c-polygon-clip-path: polygon(81.8% 100%, 18.18% 94.25%, 0% 40.29%, 44.74% 0%, 92.28% 9.35%, 100% 61.83%, 81.8% 100%);
  aspect-ratio: 1.144;
}
@media (min-width: 1025px) {
  .p-facility-section__deco[data-deco="5"] {
    right: 23.9rem;
    bottom: 2rem;
    width: 10rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__deco[data-deco="5"] {
    top: 26rem;
    right: 10.24rem;
    width: 9.4rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__deco[data-deco="5"] {
    top: 18.5rem;
    right: 5rem;
    width: 5.56rem;
  }
}
.p-facility-section__deco[data-deco="6"] {
  --c-polygon-opacity: 47%;
  --c-polygon-clip-path: polygon(50.92% 100%, 18.08% 88.09%, 0% 50.12%, 46.02% 0%, 89.12% 30.16%, 100% 60.79%, 50.92% 100%);
  aspect-ratio: 1.039;
}
@media (min-width: 1025px) {
  .p-facility-section__deco[data-deco="6"] {
    bottom: 1.5rem;
    left: -39rem;
    width: 77.6rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__deco[data-deco="6"] {
    display: none;
  }
}
.p-facility-section__deco[data-deco="7"] {
  --c-polygon-clip-path: polygon(18.8% 17.09%, 72.63% 0%, 100% 53.36%, 64.13% 100%, 14.84% 89.35%, 0% 53.92%, 18.8% 17.09%);
  aspect-ratio: 1.119;
}
.p-facility-section__deco[data-deco="7"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 60%;
}
@media (min-width: 1025px) {
  .p-facility-section__deco[data-deco="7"] {
    bottom: 0;
    left: -3.6rem;
    width: 19.6rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-section__deco[data-deco="7"] {
    top: 17.5rem;
    right: -10.31rem;
    width: 24.67rem;
  }
}
@media (max-width: 525px) {
  .p-facility-section__deco[data-deco="7"] {
    top: 14.5rem;
    right: -6.5rem;
    width: 14rem;
  }
}

.p-facility-slider {
  --fade-width: 3rem;
  margin-right: calc(50cqw - 50 * var(--vw));
}
.p-facility-slider__list {
  --swiper-wrapper-transition-timing-function: var(--ease-out-cubic);
}
.p-facility-slider__item {
  --shadow-size: 0.8rem;
  width: fit-content;
  height: fit-content;
  padding-right: 2.4rem;
  padding-bottom: calc(var(--shadow-size) * 3);
  filter: drop-shadow(var(--shadow-size) var(--shadow-size) var(--shadow-size) color-mix(in srgb, var(--shadow-color) var(--shadow-opacity, 50%), transparent));
}
@media (min-width: 1601px) {
  .p-facility-slider__item {
    padding-right: 3rem;
  }
}
@media (max-width: 525px) {
  .p-facility-slider__item {
    --shadow-size: 0.4rem;
    padding-right: 1.8rem;
  }
}
.p-facility-slider__item[data-interval-index="1"] {
  --shadow-color: var(--color-palette-3);
}
.p-facility-slider__item[data-interval-index="1"]:where(body[data-theme-color=sky] *) {
  --shadow-opacity: 40%;
}
.p-facility-slider__item[data-interval-index="1"]:where(body[data-theme-color=rose] *) {
  --shadow-color: var(--color-wheat);
  --shadow-opacity: 50%;
}
.p-facility-slider__item[data-interval-index="1"]:where(body[data-theme-color=cafe] *) {
  --shadow-opacity: 35%;
}
.p-facility-slider__item[data-interval-index="1"]:where(body[data-theme-color=lagoon] *) {
  --shadow-opacity: 35%;
}
.p-facility-slider__item[data-interval-index="2"] {
  --shadow-color: var(--color-palette-5);
}
.p-facility-slider__item[data-interval-index="2"]:where(body[data-theme-color=sky] *) {
  --shadow-color: oklch(from var(--color-palette-5) calc(l * 0.9) calc(c * 1.2) h);
  --shadow-opacity: 85%;
}
.p-facility-slider__item[data-interval-index="2"]:where(body[data-theme-color=rose] *) {
  --shadow-color: var(--color-palette-5);
  --shadow-opacity: 85%;
}
.p-facility-slider__item[data-interval-index="2"]:where(body[data-theme-color=cafe] *) {
  --shadow-color: var(--color-palette-5);
  --shadow-opacity: 80%;
}
.p-facility-slider__item[data-interval-index="2"]:where(body[data-theme-color=lagoon] *) {
  --shadow-opacity: 65%;
}
.p-facility-slider__item[data-interval-index="3"] {
  --shadow-color: var(--color-palette-1);
}
.p-facility-slider__item[data-interval-index="3"]:where(body[data-theme-color=sky] *) {
  --shadow-color: oklch(from var(--color-palette-1) calc(l * 0.9) calc(c * 1.2) h);
  --shadow-opacity: 85%;
}
.p-facility-slider__item[data-interval-index="3"]:where(body[data-theme-color=rose] *) {
  --shadow-color: var(--color-palette-1);
  --shadow-opacity: 60%;
}
.p-facility-slider__item[data-interval-index="3"]:where(body[data-theme-color=cafe] *) {
  --shadow-opacity: 73%;
}
.p-facility-slider__item[data-interval-index="4"] {
  --shadow-color: var(--color-palette-2);
}
.p-facility-slider__item[data-interval-index="4"]:where(body[data-theme-color=sky] *) {
  --shadow-color: oklch(from var(--color-palette-2) l calc(c * 0.9) h);
  --shadow-opacity: 40%;
}
.p-facility-slider__item[data-interval-index="4"]:where(body[data-theme-color=rose] *) {
  --shadow-opacity: 27%;
}
.p-facility-slider__item[data-interval-index="4"]:where(body[data-theme-color=cafe] *) {
  --shadow-opacity: 35%;
}
.p-facility-slider__item[data-interval-index="4"]:where(body[data-theme-color=lagoon] *) {
  --shadow-opacity: 35%;
}
.p-facility-slider__item[data-interval-index="5"] {
  --shadow-color: var(--color-palette-4);
}
.p-facility-slider__item[data-interval-index="5"]:where(body[data-theme-color=sky] *) {
  --shadow-opacity: 100%;
}
.p-facility-slider__item[data-interval-index="5"]:where(body[data-theme-color=rose] *) {
  --shadow-color: var(--color-palette-4);
  --shadow-opacity: 27%;
}
.p-facility-slider__item[data-interval-index="5"]:where(body[data-theme-color=cafe] *) {
  --shadow-opacity: 27%;
}
.p-facility-slider__item[data-interval-index="5"]:where(body[data-theme-color=lagoon] *) {
  --shadow-opacity: 70%;
}
.p-facility-slider__image {
  width: 74.4rem;
  aspect-ratio: 744/528;
  object-fit: cover;
}
@media (min-width: 1601px) {
  .p-facility-slider__image {
    width: 64rem;
  }
}
@media (max-width: 1024px) {
  .p-facility-slider__image {
    width: 53rem;
  }
}
@media (max-width: 525px) {
  .p-facility-slider__image {
    width: 29.6rem;
    aspect-ratio: 296/250;
  }
}
.p-facility-slider__pagination {
  --swiper-pagination-bullet-horizontal-gap: 0;
  --swiper-pagination-bullet-width: 3rem;
  --swiper-pagination-bullet-height: 0.6rem;
  --swiper-pagination-bullet-border-radius: 0;
  --swiper-pagination-bullet-inactive-opacity: 1;
  --swiper-pagination-bullet-inactive-color: color-mix(in srgb, var(--color-text-base) 25%, #fff);
  --swiper-pagination-bullet-active-opacity: 1;
  --swiper-pagination-color: var(--color-palette-4);
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  column-gap: 0.8rem;
  padding-right: var(--container-padding-md);
  margin-top: 2.5rem;
}
.p-facility-slider__pagination:where(body[data-theme-color=sky] *, body[data-theme-color=lagoon] *) {
  --swiper-pagination-color: var(--color-text-accent);
}
@media (max-width: 1024px) {
  .p-facility-slider__pagination {
    --swiper-pagination-bullet-width: 1.8rem;
    --swiper-pagination-bullet-height: 0.4rem;
    column-gap: 0.6rem;
  }
}
.p-facility-slider__pagination > .swiper-pagination-bullet {
  flex-shrink: 1;
  transition: background-color 0.2s;
}