@charset "UTF-8";
.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-pattern01 {
  margin-block: var(--section-gap-sm) var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern01__inner {
  container-type: inline-size;
}
.p-pattern01__header {
  --bg-color: var(--color-dark-brown);
  --text-color-main: var(--color-coral);
}
@media (min-width: 1025px) {
  .p-pattern01__header {
    font-size: 10.5rem;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern01__header {
    font-size: 8rem;
  }
}
.p-pattern01__list {
  --c-tile-column-count: 4;
  --c-tile-column-gap: 2.4rem;
  --c-tile-row-gap: 2.4rem;
  margin-top: var(--section-gap-sm);
}
@media (max-width: 1024px) {
  .p-pattern01__list {
    --c-tile-column-count: 2;
  }
}
@media (max-width: 525px) {
  .p-pattern01__list {
    --c-tile-column-gap: 1.2rem;
    --c-tile-row-gap: 1.85rem;
  }
}
.p-pattern01__item {
  font-size: 1.8rem;
}
@media (max-width: 1024px) {
  .p-pattern01__item {
    font-size: 1.55rem;
  }
}
@media (max-width: 525px) {
  .p-pattern01__item {
    font-size: 1.2rem;
  }
}
.p-pattern01__item:nth-child(3n+1) {
  --button-color: var(--color-cobalt-blue);
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 30%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-1) 18%, #fff);
}
.p-pattern01__item:nth-child(3n+1):where(body[data-theme-color=sky] *) {
  --button-color: color-mix(in srgb, var(--color-azure-blue) 45%, #fff);
  --shadow-color: oklch(from var(--color-azure-blue) calc(l * 1.25) c h / 30%);
  --hover-color: oklch(from var(--color-azure-blue) calc(l * 1.35) c h / 11%);
}
.p-pattern01__item:nth-child(3n+1):where(body[data-theme-color=rose] *) {
  --button-color: color-mix(in srgb, var(--color-palette-2) 44%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-2) 30%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-2) 10%, #fff);
}
.p-pattern01__item:nth-child(3n+1):where(body[data-theme-color=cafe] *) {
  --button-color: color-mix(in srgb, var(--color-brown) 50%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-2) 35%, transparent);
  --hover-color: color-mix(in srgb, var(--color-brown) 10%, #fff);
}
.p-pattern01__item:nth-child(3n+1):where(body[data-theme-color=lagoon] *) {
  --button-color: color-mix(in srgb, var(--color-teal) 50%, #fff);
  --shadow-color: color-mix(in srgb, #a1c3d7 35%, transparent);
  --hover-color: color-mix(in srgb, #a1c3d7 20%, #fff);
}
.p-pattern01__item:nth-child(3n+2) {
  --button-color: var(--color-brink-pink);
  --shadow-color: color-mix(in srgb, var(--color-palette-2) 40%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-2) 16%, #fff);
}
.p-pattern01__item:nth-child(3n+2):where(body[data-theme-color=sky] *) {
  --button-color: color-mix(in srgb, var(--color-palette-2) 75%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-2) 35%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-2) 10%, #fff);
}
.p-pattern01__item:nth-child(3n+2):where(body[data-theme-color=rose] *) {
  --button-color: color-mix(in srgb, var(--color-palette-3) 55%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-3) 30%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-3) 12%, #fff);
}
.p-pattern01__item:nth-child(3n+2):where(body[data-theme-color=cafe] *) {
  --button-color: color-mix(in srgb, var(--color-palette-4) 65%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 30%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-4) 10%, #fff);
}
.p-pattern01__item:nth-child(3n+2):where(body[data-theme-color=lagoon] *) {
  --button-color: color-mix(in srgb, var(--color-palette-3) 62%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 40%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-3) 10%, #fff);
}
.p-pattern01__item:nth-child(3n+3) {
  --button-color: var(--color-sea-green);
  --shadow-color: color-mix(in srgb, var(--color-palette-5) 30%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-5) 20%, #fff);
}
.p-pattern01__item:nth-child(3n+3):where(body[data-theme-color=sky] *) {
  --button-color: color-mix(in srgb, var(--color-royal-blue) 50%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-3) 40%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-3) 17%, #fff);
}
.p-pattern01__item:nth-child(3n+3):where(body[data-theme-color=rose] *) {
  --button-color: color-mix(in srgb, #c6a34d 50%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 30%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-1) 15%, #fff);
}
.p-pattern01__item:nth-child(3n+3):where(body[data-theme-color=cafe] *) {
  --button-color: color-mix(in srgb, var(--color-palette-2) 60%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-palette-5) 40%, transparent);
  --hover-color: color-mix(in srgb, var(--color-palette-2) 13%, #fff);
}
.p-pattern01__item:nth-child(3n+3):where(body[data-theme-color=lagoon] *) {
  --button-color: color-mix(in srgb, var(--color-dark-turquoise) 50%, #fff);
  --shadow-color: color-mix(in srgb, var(--color-dark-turquoise) 20%, transparent);
  --hover-color: color-mix(in srgb, var(--color-dark-turquoise) 8%, #fff);
}
.p-pattern01__link {
  --c-button01-border-color: var(--button-color);
  --c-button01-hover-border-color: var(--button-color);
  --c-button01-shadow-color: var(--shadow-color);
  --c-button01-hover-bg-color: var(--hover-color);
  width: 100%;
  min-height: 4.15em;
}
@media (min-width: 1025px) {
  .p-pattern01__link {
    column-gap: 1.25em;
  }
}
@media (max-width: 525px) {
  .p-pattern01__link {
    column-gap: 1em;
  }
}
.p-pattern01__icon {
  font-size: 1em;
  color: var(--button-color);
}

.p-pattern02 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
@media (max-width: 525px) {
  .p-pattern02 {
    margin-block: 9.5rem;
  }
}
.p-pattern02__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
@media (max-width: 525px) {
  .p-pattern02__header {
    margin-bottom: var(--section-gap-xs);
  }
}
.p-pattern02__header__deco {
  position: absolute;
}
.p-pattern02__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: -2rem;
  left: -5rem;
  width: 4.41rem;
  aspect-ratio: 1.247;
}
@media (max-width: 1024px) {
  .p-pattern02__header__deco[data-deco="1"] {
    top: -2rem;
    left: -7rem;
    width: 4.59rem;
  }
}
@media (max-width: 525px) {
  .p-pattern02__header__deco[data-deco="1"] {
    top: -0.75rem;
    left: -3rem;
    width: 2.24rem;
  }
}
.p-pattern02__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: -1.5rem;
  left: -0.5rem;
  width: 1.81rem;
  aspect-ratio: 0.841;
}
@media (max-width: 1024px) {
  .p-pattern02__header__deco[data-deco="2"] {
    top: -1.5rem;
    left: -2rem;
    width: 1.89rem;
  }
}
@media (max-width: 525px) {
  .p-pattern02__header__deco[data-deco="2"] {
    top: -0.65rem;
    left: -0.5rem;
    width: 0.924rem;
  }
}
.p-pattern02__body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-areas: "gallery main";
  grid-template-columns: 55rem 1fr;
  column-gap: 5rem;
}
@media (max-width: 1024px) {
  .p-pattern02__body {
    grid-template-areas: "gallery" "main";
    grid-template-columns: 1fr;
    row-gap: 2.5rem;
  }
}
.p-pattern02__gallery {
  display: grid;
  grid-area: gallery;
  grid-template-columns: 1fr;
  row-gap: 2.5rem;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern02__gallery {
    width: 80%;
    margin-inline: auto;
  }
}
.p-pattern02__main {
  grid-area: main;
}
.p-pattern02__list {
  --c-list-prefix-color: var(--color-text-accent);
  font-size: 2rem;
}
@media (max-width: 525px) {
  .p-pattern02__list {
    font-size: 1.6rem;
  }
}
.p-pattern02__list + .p-pattern02__list {
  margin-top: 1.5em;
}
.p-pattern02__column {
  position: relative;
  margin-top: var(--section-gap-xs);
}
.p-pattern02__column__inner {
  display: flex;
  gap: 2rem 3rem;
}
@media (max-width: 1024px) {
  .p-pattern02__column__inner {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.p-pattern02__column__heading {
  text-align: left;
}
.p-pattern02__column__main {
  flex: 1;
}
@media (min-width: 1025px) {
  .p-pattern02__column__visual {
    order: 2;
    width: 32%;
  }
}
@media (max-width: 1024px) {
  .p-pattern02__column__visual {
    order: -1;
  }
}
.p-pattern02__column__deco {
  position: absolute;
}
.p-pattern02__column__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(100% 28.6%, 100% 85.43%, 37.86% 100%, 0% 56.32%, 40.98% 0%, 100% 28.6%);
  top: 15rem;
  right: -8rem;
  width: 29rem;
  aspect-ratio: 1.026;
  translate: 50% -50%;
}
.p-pattern02__column__deco[data-deco="1"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (max-width: 1024px) {
  .p-pattern02__column__deco[data-deco="1"] {
    top: 1rem;
    right: 0.5%;
    width: 19.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern02__column__deco[data-deco="1"] {
    width: 14rem;
  }
}
.p-pattern02__deco {
  position: absolute;
}
.p-pattern02__deco[data-deco="1"] {
  --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: 2rem;
  right: 17rem;
  width: 18.6rem;
  aspect-ratio: 1.089;
  translate: 50% -50%;
}
.p-pattern02__deco[data-deco="1"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (max-width: 1024px) {
  .p-pattern02__deco[data-deco="1"] {
    top: -0.5rem;
    right: 0.5rem;
    width: 15rem;
  }
}
@media (max-width: 525px) {
  .p-pattern02__deco[data-deco="1"] {
    width: 12rem;
  }
}
.p-pattern02__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: 8rem;
  right: 22rem;
  width: 7.8rem;
  aspect-ratio: 1.126;
  translate: 50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern02__deco[data-deco="2"] {
    display: none;
  }
}
.p-pattern02__deco[data-deco="3"] {
  --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: 37rem;
  left: 22rem;
  width: 80.7rem;
  aspect-ratio: 1.128;
  translate: -50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern02__deco[data-deco="3"] {
    top: 15rem;
    left: 0%;
    width: 60rem;
  }
}
@media (max-width: 525px) {
  .p-pattern02__deco[data-deco="3"] {
    width: 42rem;
  }
}

.p-pattern03 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
@media (max-width: 525px) {
  .p-pattern03 {
    margin-block: 9.5rem;
  }
}
.p-pattern03__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
@media (max-width: 525px) {
  .p-pattern03__header {
    margin-bottom: var(--section-gap-xs);
  }
}
.p-pattern03__header__deco {
  position: absolute;
}
.p-pattern03__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: -3rem;
  right: -6rem;
  width: 4.17rem;
  aspect-ratio: 0.851;
}
@media (max-width: 1024px) {
  .p-pattern03__header__deco[data-deco="1"] {
    top: -3.5rem;
    right: -5.12rem;
    width: 3.25rem;
  }
}
@media (max-width: 525px) {
  .p-pattern03__header__deco[data-deco="1"] {
    top: -2rem;
    right: -2.5rem;
    width: 1.93rem;
  }
}
.p-pattern03__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: 1.75rem;
  right: -6.5rem;
  width: 2.65rem;
  aspect-ratio: 1.158;
}
@media (max-width: 1024px) {
  .p-pattern03__header__deco[data-deco="2"] {
    top: 0.51rem;
    right: -5.12rem;
    width: 2.2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern03__header__deco[data-deco="2"] {
    top: 0.25rem;
    right: -2.5rem;
    width: 1.23rem;
  }
}
.p-pattern03__body {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--section-gap-sm);
}
.p-pattern03__item {
  --visual-width: 45rem;
  position: relative;
  display: grid;
  gap: 2.5rem 5rem;
}
.p-pattern03__item:where(body[data-theme-color=sky] *) {
  --heading-color: var(--color-text-heading);
}
@media (max-width: 1024px) {
  .p-pattern03__item {
    grid-template-areas: "visual" "main";
    grid-template-columns: 1fr;
  }
}
.p-pattern03__item:nth-child(odd of .p-pattern03__item):where(body[data-theme-color=spring] *) {
  --heading-color: var(--color-palette-3);
  --c-marker-color: color-mix(in srgb, var(--color-palette-2) 25%, #fff);
}
.p-pattern03__item:nth-child(odd of .p-pattern03__item):where(body[data-theme-color=sky] *) {
  --c-marker-color: var(--color-palette-5);
}
.p-pattern03__item:nth-child(odd of .p-pattern03__item):where(body[data-theme-color=rose] *) {
  --heading-color: var(--color-text-heading);
  --c-marker-color: color-mix(in srgb, var(--color-palette-5) 80%, #fff);
}
.p-pattern03__item:nth-child(odd of .p-pattern03__item):where(body[data-theme-color=cafe] *) {
  --heading-color: var(--color-text-heading);
  --c-marker-color: #eedf97;
}
.p-pattern03__item:nth-child(odd of .p-pattern03__item):where(body[data-theme-color=lagoon] *) {
  --heading-color: var(--color-text-heading);
  --c-marker-color: #c1e4e5;
}
@media (min-width: 1025px) {
  .p-pattern03__item:nth-child(odd of .p-pattern03__item) {
    grid-template-areas: "main visual";
    grid-template-columns: 1fr var(--visual-width);
  }
}
.p-pattern03__item:nth-child(even of .p-pattern03__item):where(body[data-theme-color=spring] *) {
  --heading-color: var(--color-palette-5);
  --c-marker-color: color-mix(in srgb, var(--color-palette-4) 35%, #fff);
}
.p-pattern03__item:nth-child(even of .p-pattern03__item):where(body[data-theme-color=sky] *) {
  --c-marker-color: color-mix(in srgb, var(--color-palette-2) 30%, #fff);
}
.p-pattern03__item:nth-child(even of .p-pattern03__item):where(body[data-theme-color=rose] *) {
  --heading-color: #6a4e46;
  --c-marker-color: #ebe5cd;
}
.p-pattern03__item:nth-child(even of .p-pattern03__item):where(body[data-theme-color=cafe] *) {
  --heading-color: var(--color-palette-4);
  --c-marker-color: #e8dfc7;
}
.p-pattern03__item:nth-child(even of .p-pattern03__item):where(body[data-theme-color=lagoon] *) {
  --heading-color: var(--color-palette-2);
  --c-marker-color: #d3dbe9;
}
@media (min-width: 1025px) {
  .p-pattern03__item:nth-child(even of .p-pattern03__item) {
    grid-template-areas: "visual main";
    grid-template-columns: var(--visual-width) 1fr;
  }
}
.p-pattern03__item__main {
  grid-area: main;
}
.p-pattern03__item__heading {
  margin-bottom: 0.9em;
  font-family: var(--font-heading);
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.8;
  color: var(--heading-color);
}
@media (max-width: 525px) {
  .p-pattern03__item__heading {
    font-size: 2.1rem;
  }
}
.p-pattern03__item__visual {
  grid-area: visual;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern03__item__visual {
    width: 80%;
    margin-inline: auto;
  }
}
.p-pattern03__item__deco {
  position: absolute;
}
.p-pattern03__item__deco[data-deco="1"]:is(.p-pattern03__item:nth-child(odd of .p-pattern03__item) *) {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-opacity: 50%;
  --c-polygon-clip-path: polygon(75.18% 100%, 37.36% 99.95%, 0% 55.99%, 30.09% 11.42%, 73.81% 0%, 100% 53.92%, 75.18% 100%);
  top: 50%;
  right: -23%;
  width: 90rem;
  aspect-ratio: 1.278;
  translate: 50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern03__item__deco[data-deco="1"]:is(.p-pattern03__item:nth-child(odd of .p-pattern03__item) *) {
    top: 11%;
    right: -6%;
    width: 50rem;
  }
}
@media (max-width: 525px) {
  .p-pattern03__item__deco[data-deco="1"]:is(.p-pattern03__item:nth-child(odd of .p-pattern03__item) *) {
    width: 36rem;
  }
}
.p-pattern03__item__deco[data-deco="1"]:is(.p-pattern03__item:nth-child(even of .p-pattern03__item) *) {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-opacity: 43%;
  --c-polygon-clip-path: polygon(75.18% 100%, 37.36% 99.95%, 0% 55.99%, 30.09% 11.42%, 73.81% 0%, 100% 53.92%, 75.18% 100%);
  top: 50%;
  left: -27%;
  width: 90rem;
  aspect-ratio: 1.278;
  translate: -50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern03__item__deco[data-deco="1"]:is(.p-pattern03__item:nth-child(even of .p-pattern03__item) *) {
    top: 16%;
    left: -5%;
    width: 50rem;
  }
}
@media (max-width: 525px) {
  .p-pattern03__item__deco[data-deco="1"]:is(.p-pattern03__item:nth-child(even of .p-pattern03__item) *) {
    width: 34rem;
  }
}
.p-pattern03__item__deco[data-deco="2"]:is(.p-pattern03__item:nth-child(odd of .p-pattern03__item) *) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-clip-path: polygon(54.34% 100%, 0% 82.04%, 0.05% 20.52%, 50.28% 0%, 87.78% 24.72%, 100% 67.94%, 54.34% 100%);
  top: -4%;
  right: 4%;
  width: 20rem;
  aspect-ratio: 1.064;
  translate: 50% -50%;
}
.p-pattern03__item__deco[data-deco="2"]:is(.p-pattern03__item:nth-child(odd of .p-pattern03__item) *):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 69%;
}
@media (max-width: 1024px) {
  .p-pattern03__item__deco[data-deco="2"]:is(.p-pattern03__item:nth-child(odd of .p-pattern03__item) *) {
    display: none;
  }
}
.p-pattern03__item__deco[data-deco="2"]:is(.p-pattern03__item:nth-child(even of .p-pattern03__item) *) {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-clip-path: polygon(50.92% 100%, 100% 51.25%, 57.8% 0%, 0% 10.34%, 0.95% 45.97%, 9.28% 87.44%, 50.92% 100%);
  top: 14%;
  left: 3%;
  width: 21.5rem;
  aspect-ratio: 1.064;
  translate: -50% -50%;
}
.p-pattern03__item__deco[data-deco="2"]:is(.p-pattern03__item:nth-child(even of .p-pattern03__item) *):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (max-width: 1024px) {
  .p-pattern03__item__deco[data-deco="2"]:is(.p-pattern03__item:nth-child(even of .p-pattern03__item) *) {
    display: none;
  }
}

.p-pattern04 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
@media (max-width: 525px) {
  .p-pattern04 {
    margin-block: 9.5rem;
  }
}
.p-pattern04__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
@media (max-width: 525px) {
  .p-pattern04__header {
    margin-bottom: var(--section-gap-xs);
  }
}
.p-pattern04__header__deco {
  position: absolute;
}
.p-pattern04__header__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(100% 100%, 75.05% 0%, 0% 0%, 9.84% 67.89%, 100% 100%);
  top: -3.5rem;
  left: -6rem;
  width: 5rem;
  aspect-ratio: 1.094;
}
@media (max-width: 1024px) {
  .p-pattern04__header__deco[data-deco="1"] {
    top: -2.5rem;
    left: -4.5rem;
    width: 3.25rem;
  }
}
@media (max-width: 525px) {
  .p-pattern04__header__deco[data-deco="1"] {
    top: -1.5rem;
    left: -2.5rem;
    width: 2.5rem;
  }
}
.p-pattern04__header__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(100% 81.95%, 88.12% 16.15%, 61.84% 0%, 0% 14.57%, 13.22% 61.89%, 34.15% 100%, 81.51% 98.48%, 100% 81.95%);
  top: 1rem;
  left: -5.75rem;
  width: 2.8rem;
  aspect-ratio: 1.384;
}
@media (max-width: 1024px) {
  .p-pattern04__header__deco[data-deco="2"] {
    top: 0.5rem;
    left: -4rem;
    width: 2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern04__header__deco[data-deco="2"] {
    top: 0.65rem;
    left: -2.5rem;
    width: 1.4rem;
  }
}
.p-pattern04__body {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--section-gap-sm);
}
@media (max-width: 1024px) {
  .p-pattern04__body {
    row-gap: var(--section-gap-sm);
  }
}
.p-pattern04__item {
  position: relative;
}
.p-pattern04__item:where(body[data-theme-color=rose] *) {
  --heading-border-color: var(--color-palette-1);
}
.p-pattern04__item:where(body[data-theme-color=lagoon] *) {
  --heading-border-color: #cfd8e7;
}
.p-pattern04__item__inner {
  --visual-width: 30rem;
  position: relative;
  z-index: 1;
  display: grid;
}
@media (min-width: 526px) {
  .p-pattern04__item__inner {
    grid-template-areas: "visual main";
    grid-template-columns: var(--visual-width) 1fr;
    column-gap: 5rem;
  }
  .p-pattern04__item__inner:is(.p-pattern04__item:nth-child(even of .p-pattern04__item) > *) {
    grid-template-areas: "main visual";
    grid-template-columns: 1fr var(--visual-width);
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern04__item__inner {
    --visual-width: 22.5rem;
    column-gap: 3.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern04__item__inner {
    grid-template-areas: "visual" "main";
    grid-template-columns: 1fr;
    row-gap: 2.5rem;
  }
}
.p-pattern04__item__main {
  grid-area: main;
}
.p-pattern04__item__heading {
  padding-bottom: 0.45em;
  margin-bottom: 1.1em;
  font-family: var(--font-heading);
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  border-bottom: var(--border-xs) solid var(--heading-border-color, currentcolor);
}
@media (max-width: 1024px) {
  .p-pattern04__item__heading {
    font-size: 2.2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern04__item__heading {
    font-size: 1.85rem;
  }
}
.p-pattern04__item__visual {
  grid-area: visual;
  aspect-ratio: 1/1;
}
.p-pattern04__item__deco {
  position: absolute;
}
.p-pattern04__item__deco:is(.p-pattern04__item:nth-child(4n+1 of .p-pattern04__item) *) {
  --c-polygon-color: var(--color-palette-3);
  --c-polygon-opacity: 43%;
}
.p-pattern04__item__deco:is(.p-pattern04__item:nth-child(4n+2 of .p-pattern04__item) *) {
  --c-polygon-color: var(--color-palette-2);
  --c-polygon-opacity: 43%;
}
.p-pattern04__item__deco:is(.p-pattern04__item:nth-child(4n+3 of .p-pattern04__item) *) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-opacity: 40%;
}
.p-pattern04__item__deco:is(.p-pattern04__item:nth-child(4n+4 of .p-pattern04__item) *) {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-opacity: 40%;
}
.p-pattern04__item__deco:is(.p-pattern04__item:nth-child(odd of .p-pattern04__item) *) {
  --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%);
  aspect-ratio: 1.128;
}
@media (min-width: 1025px) {
  .p-pattern04__item__deco:is(.p-pattern04__item:nth-child(odd of .p-pattern04__item) *) {
    top: 24%;
    right: -40%;
    width: 80rem;
    translate: 50% -50%;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern04__item__deco:is(.p-pattern04__item:nth-child(odd of .p-pattern04__item) *) {
    top: 11%;
    left: -6%;
    width: 50rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern04__item__deco:is(.p-pattern04__item:nth-child(odd of .p-pattern04__item) *) {
    top: 17%;
    right: -15%;
    width: 36rem;
    translate: 50% -50%;
  }
}
.p-pattern04__item__deco:is(.p-pattern04__item:nth-child(even of .p-pattern04__item) *) {
  --c-polygon-clip-path: polygon(75.18% 100%, 37.36% 99.95%, 0% 55.99%, 30.09% 11.42%, 73.81% 0%, 100% 53.92%, 75.18% 100%);
  aspect-ratio: 1.278;
}
@media (min-width: 1025px) {
  .p-pattern04__item__deco:is(.p-pattern04__item:nth-child(even of .p-pattern04__item) *) {
    top: -10%;
    left: -34%;
    width: 75rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern04__item__deco:is(.p-pattern04__item:nth-child(even of .p-pattern04__item) *) {
    top: 12%;
    right: -7%;
    width: 50rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern04__item__deco:is(.p-pattern04__item:nth-child(even of .p-pattern04__item) *) {
    left: -7%;
    width: 34rem;
    translate: -50% -50%;
  }
}
.p-pattern04__deco {
  --c-polygon-clip-path: polygon(89.98% 4.15%, 100% 55.51%, 48.74% 100%, 0% 51.96%, 34.23% 0%, 89.98% 4.15%);
  position: absolute;
  top: 3.5rem;
  right: 16.5%;
  width: 23rem;
  aspect-ratio: 0.99;
  translate: 50% -50%;
}
.p-pattern04__deco:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 50%;
}
@media (max-width: 1024px) {
  .p-pattern04__deco {
    display: none;
  }
}

.p-pattern05 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
@media (max-width: 525px) {
  .p-pattern05 {
    margin-block: 9.5rem;
  }
}
.p-pattern05__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
.p-pattern05__header__deco {
  position: absolute;
}
.p-pattern05__header__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(100% 45.61%, 26.88% 0%, 0% 44.78%, 22.77% 89.25%, 91.11% 100%, 100% 45.61%);
  top: -1.75rem;
  right: -6rem;
  width: 4.15rem;
  aspect-ratio: 1.001;
}
@media (max-width: 1024px) {
  .p-pattern05__header__deco[data-deco="1"] {
    top: -1.75rem;
    right: -3.75rem;
    width: 3.25rem;
  }
}
@media (max-width: 525px) {
  .p-pattern05__header__deco[data-deco="1"] {
    top: -1rem;
    right: -2.75rem;
    width: 2.3rem;
  }
}
.p-pattern05__header__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(94.62% 11.38%, 31.81% 0%, 0% 54.56%, 51.59% 100%, 100% 59.72%, 94.62% 11.38%);
  top: -2.75rem;
  right: -1.75rem;
  width: 2.23rem;
  aspect-ratio: 1.03;
}
@media (max-width: 1024px) {
  .p-pattern05__header__deco[data-deco="2"] {
    top: -2.75rem;
    right: -0.5rem;
    width: 2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern05__header__deco[data-deco="2"] {
    top: -1.5rem;
    right: -0.25rem;
    width: 1.35rem;
  }
}
.p-pattern05__list {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--section-gap-sm);
  counter-reset: step;
}
.p-pattern05__item {
  --visual-width: 36rem;
  position: relative;
  display: grid;
  gap: 2.75rem 6rem;
  counter-increment: step;
}
@media (min-width: 526px) {
  .p-pattern05__item {
    grid-template-areas: "visual main";
    grid-template-columns: var(--visual-width) 1fr;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern05__item {
    --visual-width: 25rem;
    column-gap: 3.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern05__item {
    grid-template-areas: "visual" "main";
    grid-template-columns: 1fr;
  }
}
.p-pattern05__item:nth-child(4n+1) {
  --key-color: color-mix(in srgb, var(--color-palette-2) 80%, #fff);
  --shadow-color: var(--color-palette-5);
  --clip-path: polygon(29.23% 0%, 0% 58.5%, 57.31% 100%, 100% 50.38%, 79.48% 10.1%, 29.23% 0%);
  --polygon-translate: 1.5% 3%;
}
.p-pattern05__item:nth-child(4n+1):where(body[data-theme-color=cafe] *) {
  --key-color: var(--color-palette-2);
}
.p-pattern05__item:nth-child(4n+1):where(body[data-theme-color=lagoon] *) {
  --key-color: var(--color-palette-2);
}
.p-pattern05__item:nth-child(4n+2) {
  --key-color: var(--color-palette-3);
  --shadow-color: var(--color-palette-1);
  --clip-path: polygon(49.72% 0%, 90.18% 24.71%, 100% 54.1%, 55.74% 100%, 0% 70.5%, 6.15% 26.95%, 49.72% 0%);
  --polygon-translate: 6% 0;
}
.p-pattern05__item:nth-child(4n+3) {
  --key-color: var(--color-palette-5);
  --shadow-color: var(--color-palette-2);
  --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%);
  --polygon-translate: 3% 1.5%;
}
.p-pattern05__item:nth-child(4n+3):where(body[data-theme-color=sky] *) {
  --key-color: var(--color-sky-blue);
}
.p-pattern05__item:nth-child(4n+4) {
  --key-color: var(--color-palette-1);
  --shadow-color: var(--color-palette-3);
  --clip-path: polygon(12.18% 16.2%, 52.28% 0%, 84.26% 18.99%, 100% 84.92%, 40.61% 100%, 0% 70.95%, 12.18% 16.2%);
}
.p-pattern05__item:nth-child(4n+4):where(body[data-theme-color=sky] *) {
  --key-color: var(--color-turquoise);
}
.p-pattern05__item:nth-child(4n+4):where(body[data-theme-color=cafe] *) {
  --key-color: var(--color-palette-4);
}
.p-pattern05__item__main {
  grid-area: main;
}
@media (min-width: 1025px) {
  .p-pattern05__item__main {
    padding-top: 2.5rem;
  }
}
.p-pattern05__item__heading {
  padding-bottom: 0.6em;
  margin-bottom: 2.7rem;
  font-family: var(--font-heading);
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  border-bottom: var(--border-lg) solid var(--key-color);
}
@media (max-width: 1024px) {
  .p-pattern05__item__heading {
    font-size: 2.1rem;
  }
}
@media (max-width: 525px) {
  .p-pattern05__item__heading {
    font-size: 1.85rem;
  }
}
.p-pattern05__item__visual {
  position: relative;
  grid-area: visual;
}
.p-pattern05__item__visual img {
  box-shadow: 0.5rem 0.5rem 1rem color-mix(in srgb, var(--shadow-color) 30%, transparent);
}
.p-pattern05__item__stepper {
  position: absolute;
  z-index: 1;
  display: flex;
  flex-direction: column;
  row-gap: 0.25em;
  align-items: center;
  justify-content: center;
  width: 2.55em;
  aspect-ratio: 1.081;
  padding-bottom: 0.1em;
  font-family: var(--font-script);
  font-size: 3.6rem;
  line-height: 0;
  color: var(--color-text-contrast);
  text-align: center;
  letter-spacing: 0;
}
@media (min-width: 1025px) {
  .p-pattern05__item__stepper {
    top: 0;
    right: 0;
    translate: 40%;
  }
}
@media (max-width: 1024px) {
  .p-pattern05__item__stepper {
    top: -0.7em;
    left: -0.45em;
    font-size: 2.9rem;
  }
}
.p-pattern05__item__stepper > span {
  margin-top: 0.55em;
  font-size: 0.45em;
}
.p-pattern05__item__stepper::before {
  position: absolute;
  inset: 0;
  z-index: -1;
  content: "";
  background-color: var(--key-color);
  background-image: url("../../images/polygon-texture.webp");
  background-repeat: repeat;
  background-size: var(--texture-size-sm) auto;
  background-blend-mode: soft-light;
  clip-path: var(--clip-path);
}
.p-pattern05__item__stepper::after {
  z-index: 0;
  display: block;
  padding-top: 0.75em;
  white-space: nowrap;
  content: counter(step, decimal-leading-zero);
}
.p-pattern05__item__deco {
  position: absolute;
}
@media (min-width: 1025px) {
  .p-pattern05__item__deco {
    display: none;
  }
}
.p-pattern05__item__deco:is(.p-pattern05__item:nth-child(4n+1 of .p-pattern05__item) *) {
  --c-polygon-color: var(--color-palette-3);
  --c-polygon-opacity: 43%;
  --c-polygon-clip-path: polygon(0% 60.25%, 18.1% 22.71%, 74.87% 0%, 100% 44.48%, 89.25% 91.64%, 28.98% 100%, 0% 60.25%);
  top: 5.5rem;
  left: -13.5%;
  width: 27rem;
  aspect-ratio: 0.877;
  translate: -50% -50%;
}
.p-pattern05__item__deco:is(.p-pattern05__item:nth-child(4n+2 of .p-pattern05__item) *) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-opacity: 43%;
  --c-polygon-clip-path: polygon(34.03% 87.93%, 82.22% 100%, 100% 43.41%, 89.03% 4.14%, 45.85% 0%, 0% 39.45%, 34.03% 87.93%);
  top: 8.5rem;
  right: -16.5%;
  width: 46rem;
  aspect-ratio: 1.233;
  translate: 50% -50%;
}
.p-pattern05__item__deco:is(.p-pattern05__item:nth-child(4n+3 of .p-pattern05__item) *) {
  --c-polygon-color: var(--color-palette-1);
  --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%);
  top: 12.5rem;
  left: -11%;
  width: 34rem;
  aspect-ratio: 1.182;
  translate: -50% -50%;
}
.p-pattern05__item__deco:is(.p-pattern05__item:nth-child(4n+4 of .p-pattern05__item) *) {
  --c-polygon-color: var(--color-palette-2);
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(34.03% 87.93%, 82.22% 100%, 100% 43.41%, 89.03% 4.14%, 45.85% 0%, 0% 39.45%, 34.03% 87.93%);
  top: 10.5rem;
  right: 10%;
  width: 46rem;
  aspect-ratio: 1.233;
  translate: 50% -50%;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern05__item__deco:is(.p-pattern05__item:nth-child(4n+4 of .p-pattern05__item) *) {
    right: -10%;
  }
}
.p-pattern05__deco {
  position: absolute;
}
@media (max-width: 1024px) {
  .p-pattern05__deco {
    display: none;
  }
}
.p-pattern05__deco[data-deco="1"] {
  --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: 8.5rem;
  left: 19.5%;
  width: 20.2rem;
  aspect-ratio: 1.089;
  translate: -50% -50%;
}
.p-pattern05__deco[data-deco="1"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
.p-pattern05__deco[data-deco="2"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(65.97% 87.93%, 17.78% 100%, 0% 43.41%, 10.97% 4.14%, 54.15% 0%, 100% 39.45%, 65.97% 87.93%);
  top: 24.5rem;
  left: 2.5%;
  width: 80.7rem;
  aspect-ratio: 1.233;
  translate: -50% -50%;
}
.p-pattern05__deco[data-deco="3"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(0% 60.25%, 18.09% 22.71%, 74.87% 0%, 100% 44.48%, 89.25% 91.64%, 28.98% 100%, 0% 60.25%);
  right: -2%;
  bottom: 35%;
  width: 73.2rem;
  aspect-ratio: 0.877;
  translate: 50% 50%;
}

.p-pattern06 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern06__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
.p-pattern06__header__deco {
  position: absolute;
}
.p-pattern06__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: -2rem;
  left: -5rem;
  width: 4.41rem;
  aspect-ratio: 1.247;
}
@media (max-width: 1024px) {
  .p-pattern06__header__deco[data-deco="1"] {
    top: -2rem;
    left: -7rem;
    width: 4.59rem;
  }
}
@media (max-width: 525px) {
  .p-pattern06__header__deco[data-deco="1"] {
    top: -0.75rem;
    left: -3rem;
    width: 2.24rem;
  }
}
.p-pattern06__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: -1.5rem;
  left: -0.5rem;
  width: 1.81rem;
  aspect-ratio: 0.841;
}
@media (max-width: 1024px) {
  .p-pattern06__header__deco[data-deco="2"] {
    top: -1.5rem;
    left: -2rem;
    width: 1.89rem;
  }
}
@media (max-width: 525px) {
  .p-pattern06__header__deco[data-deco="2"] {
    top: -0.65rem;
    left: -0.5rem;
    width: 0.924rem;
  }
}
.p-pattern06__inner {
  position: relative;
  padding-bottom: var(--section-gap-xs);
}
.p-pattern06__main {
  padding-bottom: 1.5rem;
}
.p-pattern06__main .simplebar-content-wrapper {
  overscroll-behavior-x: contain;
}
.p-pattern06__notice {
  display: none;
}
.p-pattern06__notice:is(.p-pattern06:has(.simplebar-content-wrapper[data-scrollable*=x]) *) {
  display: block;
  margin-bottom: 1em;
  font-size: var(--font-size-sm);
}
.p-pattern06__table {
  --gradation-size-x: 0rem;
  --column-gap: 2.5rem;
  padding-inline: var(--current-container-padding);
  padding-bottom: 3rem;
  margin-inline: calc(var(--current-container-padding) * -1);
}
.p-pattern06__table table {
  column-gap: var(--column-gap);
}
@media (max-width: 1024px) {
  .p-pattern06__table table {
    width: fit-content;
    padding-right: var(--current-container-padding);
  }
}
.p-pattern06__table tr {
  padding-right: var(--column-gap);
}
.p-pattern06__table th > span {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.2em;
  padding: 0.34em 0.85em 0.3em;
  font-family: var(--font-maru);
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.3;
  color: var(--color-text-contrast);
  text-align: center;
  letter-spacing: 0.05em;
}
@media (max-width: 1024px) {
  .p-pattern06__table th > span {
    font-size: 1.8rem;
  }
}
@media (max-width: 525px) {
  .p-pattern06__table th > span {
    font-size: 1.6rem;
  }
}
.p-pattern06__table th > span::before {
  position: absolute;
  inset: 0;
  z-index: -2;
  content: "";
  background-color: var(--header-bg-color);
}
.p-pattern06__table th > span::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: soft-light;
  opacity: 0.3;
}
.p-pattern06__table thead {
  --header-bg-color: var(--color-denim-blue);
  margin-bottom: -2.1rem;
}
.p-pattern06__table thead:where(body[data-theme-color=rose] *) {
  --header-bg-color: var(--color-chocolate);
}
.p-pattern06__table thead:where(body[data-theme-color=cafe] *) {
  --header-bg-color: var(--color-brown);
}
.p-pattern06__table thead:where(body[data-theme-color=lagoon] *) {
  --header-bg-color: var(--color-moonstone);
}
.p-pattern06__table tbody {
  padding: 0;
  background-color: var(--color-bg-base);
}
.p-pattern06__table tbody th,
.p-pattern06__table tbody td {
  width: -webkit-fill-available;
  width: -moz-available;
  width: stretch;
  padding-block: 2.5rem;
}
.p-pattern06__table tbody tr:not(:last-child) {
  border-bottom: var(--border-xs) solid var(--c-card01-border-color);
}
.p-pattern06__table tbody tr:nth-of-type(3n + 1) {
  --header-bg-color: var(--color-palette-5);
}
.p-pattern06__table tbody tr:nth-of-type(3n + 1):where(body[data-theme-color=sky] *) {
  --header-bg-color: var(--color-sky-blue);
}
.p-pattern06__table tbody tr:nth-of-type(3n + 1):where(body[data-theme-color=rose] *) {
  --header-bg-color: #f4af98;
}
.p-pattern06__table tbody tr:nth-of-type(3n + 2) {
  --header-bg-color: var(--color-palette-2);
}
.p-pattern06__table tbody tr:nth-of-type(3n + 3) {
  --header-bg-color: var(--color-palette-3);
}
.p-pattern06__table tbody tr:has(> th > span):has(> th > img) {
  display: grid;
  grid-template-rows: auto 1fr;
}
.p-pattern06__table tbody tr:has(> th > span):has(> th > img) th,
.p-pattern06__table tbody tr:has(> th > span):has(> th > img) td {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
}
.p-pattern06__table tbody tr:has(> th > span):has(> th > img) td > * {
  grid-row: -1;
}
.p-pattern06__table tbody tr:not(:has(> th > span):has(> th > img)) th,
.p-pattern06__table tbody tr:not(:has(> th > span):has(> th > img)) td {
  padding-top: 4rem;
}
.p-pattern06__table tbody th {
  display: grid;
  align-items: center;
  min-width: 24rem;
  padding-inline: 2rem;
  background-color: color-mix(in srgb, var(--color-palette-4) 10%, #fff);
}
.p-pattern06__table tbody th:where(body[data-theme-color=sky] *) {
  background-color: color-mix(in srgb, var(--color-palette-5) 80%, #fff);
}
.p-pattern06__table tbody th:where(body[data-theme-color=rose] *) {
  background-color: #fff3ea;
}
.p-pattern06__table tbody th:where(body[data-theme-color=cafe] *) {
  background-color: color-mix(in srgb, var(--color-palette-4) 13%, #fff);
}
.p-pattern06__table tbody th:where(body[data-theme-color=lagoon] *) {
  background-color: #f1f7fa;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern06__table tbody th {
    min-width: 27rem;
  }
}
.p-pattern06__table tbody th > img {
  display: block;
}
.p-pattern06__table tbody th > img:is(span + *) {
  margin-top: 0.35em;
}
.p-pattern06__table tbody td {
  min-width: 20rem;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern06__table tbody td {
    min-width: 23rem;
  }
}
.p-pattern06__table .simplebar-track {
  inset-inline: var(--current-container-padding);
}
.p-pattern06__deco {
  position: absolute;
}
.p-pattern06__deco[data-deco="1"] {
  --c-polygon-opacity: 40%;
  --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%);
  top: 29.5rem;
  left: 0%;
  width: 77rem;
  aspect-ratio: 1.182;
  translate: -50% -50%;
}
.p-pattern06__deco[data-deco="1"]:where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 25%;
}
@media (max-width: 1024px) {
  .p-pattern06__deco[data-deco="1"] {
    top: 19rem;
    left: -5%;
    width: 53rem;
  }
}
@media (max-width: 525px) {
  .p-pattern06__deco[data-deco="1"] {
    width: 34rem;
  }
}
.p-pattern06__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(92.3% 76.98%, 100% 4.29%, 37.37% 0%, 0% 51.86%, 22.14% 76.67%, 53.35% 100%, 92.3% 76.98%);
  top: 19rem;
  right: 11.5%;
  width: 21rem;
  aspect-ratio: 1.103;
  translate: 50% -50%;
}
.p-pattern06__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (max-width: 1024px) {
  .p-pattern06__deco[data-deco="2"] {
    display: none;
  }
}
.p-pattern06__deco[data-deco="3"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(46.92% 100%, 0% 76.64%, 13.18% 22.14%, 42.09% 0%, 80.8% 25.95%, 100% 86.46%, 46.92% 100%);
  right: 5%;
  bottom: 43%;
  width: 73.2rem;
  aspect-ratio: 1.093;
  translate: 50% 50%;
}
@media (max-width: 1024px) {
  .p-pattern06__deco[data-deco="3"] {
    right: -5%;
    bottom: 10%;
    width: 53rem;
  }
}
@media (max-width: 525px) {
  .p-pattern06__deco[data-deco="3"] {
    width: 36rem;
  }
}

.p-pattern07 {
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern07__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
.p-pattern07__header__deco {
  position: absolute;
}
.p-pattern07__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: -4rem;
  right: -6rem;
  width: 4.17rem;
  aspect-ratio: 0.851;
}
@media (max-width: 1024px) {
  .p-pattern07__header__deco[data-deco="1"] {
    top: -3.5rem;
    right: -5.12rem;
    width: 3.25rem;
  }
}
@media (max-width: 525px) {
  .p-pattern07__header__deco[data-deco="1"] {
    top: -2rem;
    right: -2.5rem;
    width: 1.93rem;
  }
}
.p-pattern07__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: 0.75rem;
  right: -6.5rem;
  width: 2.65rem;
  aspect-ratio: 1.158;
}
@media (max-width: 1024px) {
  .p-pattern07__header__deco[data-deco="2"] {
    top: 0.51rem;
    right: -5.12rem;
    width: 2.2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern07__header__deco[data-deco="2"] {
    top: 0.25rem;
    right: -2.5rem;
    width: 1.23rem;
  }
}
.p-pattern07__body {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 2.4rem;
  container-type: inline-size;
}
@media (max-width: 1024px) {
  .p-pattern07__body {
    row-gap: 3.5rem;
  }
}
.p-pattern07__item {
  --visual-width: 57.6rem;
  position: relative;
  display: grid;
}
@media (min-width: 1025px) {
  .p-pattern07__item {
    column-gap: 4.1rem;
  }
  .p-pattern07__item:nth-of-type(odd) {
    --clip-path: polygon(3.09% 26.75%, 51.09% 0%, 100% 17.15%, 93.66% 79.34%, 53.37% 100%, 0% 89.55%, 3.09% 26.75%);
    grid-template-areas: "main sub";
    grid-template-columns: 1fr var(--visual-width);
  }
  .p-pattern07__item:nth-of-type(even) {
    --clip-path: polygon(96.91% 26.75%, 48.91% 0%, 0% 17.15%, 6.34% 79.34%, 46.63% 100%, 100% 89.55%, 96.91% 26.75%);
    grid-template-areas: "sub main";
    grid-template-columns: var(--visual-width) 1fr;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item {
    --clip-path: polygon(3.09% 26.75%, 51.09% 0%, 100% 17.15%, 93.66% 79.34%, 53.37% 100%, 0% 89.55%, 3.09% 26.75%);
    grid-template-areas: "sub" "main";
    grid-template-columns: 1fr;
    row-gap: 2.4rem;
  }
}
.p-pattern07__item:nth-child(4n+1) {
  --key-color: var(--color-palette-4);
}
.p-pattern07__item:nth-child(4n+1):where(body[data-theme-color=cafe] *) {
  --key-color: var(--color-palette-1);
}
.p-pattern07__item:nth-child(4n+2) {
  --key-color: var(--color-palette-1);
}
.p-pattern07__item:nth-child(4n+2):where(body[data-theme-color=sky] *) {
  --border-color: var(--color-sky-blue);
}
.p-pattern07__item:nth-child(4n+2):where(body[data-theme-color=cafe] *) {
  --key-color: var(--color-palette-4);
}
.p-pattern07__item:nth-child(4n+3) {
  --key-color: var(--color-palette-2);
}
.p-pattern07__item:nth-child(4n+4) {
  --key-color: var(--color-palette-5);
}
.p-pattern07__item:nth-child(4n+4):where(body[data-theme-color=sky] *) {
  --border-color: color-mix(in srgb, var(--color-turquoise) 65%, #fff);
}
.p-pattern07__item__main {
  grid-area: main;
}
@media (min-width: 1025px) {
  .p-pattern07__item__main {
    margin-top: 11rem;
    margin-bottom: 2.4rem;
  }
}
.p-pattern07__item__heading {
  --border-width: 0.8rem;
  --stripe-width: 0.4rem;
  --stripe-gap: 0.55rem;
  --cycle: calc(var(--stripe-width) + var(--stripe-gap));
  --tile-size: calc(var(--cycle) * 1.414);
  position: relative;
  display: flex;
  align-items: center;
  padding-bottom: 0.75em;
  font-family: var(--font-heading);
  font-size: 2.7rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
}
@media (max-width: 525px) {
  .p-pattern07__item__heading {
    --border-width: 0.75rem;
    --stripe-width: 0.3rem;
    --stripe-gap: 0.5rem;
    font-size: 1.87rem;
  }
}
.p-pattern07__item__heading::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: var(--border-width);
  content: "";
  background: repeating-linear-gradient(-45deg, var(--border-color, var(--key-color)), var(--border-color, var(--key-color)) var(--stripe-width), transparent var(--stripe-width), transparent var(--cycle));
  background-size: var(--tile-size) var(--tile-size);
}
.p-pattern07__item__content {
  margin-top: 2.5rem;
}
.p-pattern07__item__sub {
  position: relative;
  grid-area: sub;
  height: fit-content;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern07__item__sub {
    width: 83%;
    margin-inline: auto;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__sub {
    --overflow-width: 1.3rem;
    margin-inline: calc((var(--current-container-padding) + var(--overflow-width)) * -1);
  }
}
.p-pattern07__item__visual {
  filter: drop-shadow(2rem 1.5rem 0.8rem color-mix(in srgb, var(--key-color) 30%, transparent));
  transform: translateZ(0);
}
@media (max-width: 525px) {
  .p-pattern07__item__visual {
    filter: drop-shadow(1rem 0.7rem 0.5rem color-mix(in srgb, var(--key-color) 30%, transparent));
  }
}
.p-pattern07__item__figure {
  clip-path: var(--clip-path);
}
@media (max-width: 525px) {
  .p-pattern07__item__figure {
    padding-inline: var(--overflow-width);
  }
}
.p-pattern07__item__figure img {
  aspect-ratio: 1.274;
}
.p-pattern07__item__deco {
  position: absolute;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-3);
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(62.03% 100%, 24.45% 92.96%, 0% 42.21%, 42.77% 3.31%, 89.52% 0%, 100% 58.62%, 62.03% 100%);
  aspect-ratio: 1.365;
}
@media (min-width: 1025px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="1"] {
    top: 45%;
    right: -7%;
    width: 80.5rem;
    translate: 50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="1"] {
    top: 19%;
    left: -4%;
    width: 50rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="1"] {
    width: 26.8rem;
  }
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-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%);
  right: 26%;
  bottom: 7%;
  width: 20.2rem;
  aspect-ratio: 1.089;
  translate: 50% 50%;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 55%;
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="2"] {
    right: 25%;
    bottom: 17%;
    width: 15.2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+1 of .p-pattern07__item) *)[data-deco="2"] {
    width: 11rem;
  }
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(30.99% 99.05%, 71.64% 100%, 100% 55.88%, 88.5% 6.76%, 50.68% 0%, 0% 43.53%, 30.99% 99.05%);
  aspect-ratio: 1.387;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="1"]:where(body[data-theme-color=rose] *) {
  --c-polygon-opacity: 50%;
  --c-polygon-color: var(--color-palette-3);
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="1"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-4);
}
@media (min-width: 1025px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="1"] {
    top: 50%;
    left: -27%;
    width: 75rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="1"] {
    top: 40%;
    right: 1%;
    width: 55rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="1"] {
    width: 40rem;
  }
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-clip-path: polygon(35.32% 100%, 100% 79.44%, 78.16% 16.52%, 19.06% 0%, 7.06% 31.24%, 0% 70.79%, 35.32% 100%);
  aspect-ratio: 1.048;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (min-width: 1025px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="2"] {
    bottom: 12%;
    left: 10.5%;
    width: 20.6rem;
    translate: -50% 50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="2"] {
    top: 24%;
    left: 11.5%;
    width: 15.6rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+2 of .p-pattern07__item) *)[data-deco="2"] {
    width: 10.5rem;
  }
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(67.42% 90.24%, 19.53% 100%, 0% 41.39%, 9.78% 1.95%, 52.88% 0%, 100% 42.62%, 67.42% 90.24%);
  aspect-ratio: 1.39;
}
@media (min-width: 1025px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="1"] {
    top: 45%;
    right: -53%;
    width: 79.5rem;
    translate: 50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="1"] {
    top: 41%;
    left: 9%;
    width: 50rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="1"] {
    width: 36rem;
  }
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-clip-path: polygon(100% 25.95%, 81.76% 100%, 15.02% 86.25%, 0% 41.39%, 24.64% 0%, 100% 25.95%);
  aspect-ratio: 1.124;
  translate: 50% 50%;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 70%;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="2"]:where(body[data-theme-color=rose] *) {
  --c-polygon-color: var(--color-palette-5);
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="2"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-1);
}
@media (min-width: 1025px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="2"] {
    right: 2%;
    bottom: 23%;
    width: 23.3rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="2"] {
    right: 9%;
    bottom: 17%;
    width: 17.3rem;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+3 of .p-pattern07__item) *)[data-deco="2"] {
    width: 12rem;
  }
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(47.19% 0%, 8.26% 16.14%, 0% 64.31%, 31.64% 100%, 70.33% 89.83%, 100% 32.85%, 47.19% 0%);
  aspect-ratio: 1.083;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="1"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-1);
}
@media (min-width: 1025px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="1"] {
    top: 52%;
    left: -5%;
    width: 68.7rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="1"] {
    top: 50%;
    right: -14%;
    width: 50rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="1"] {
    width: 46rem;
  }
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-clip-path: polygon(100% 64.67%, 79.44% 0%, 16.52% 21.84%, 0% 80.94%, 31.24% 92.94%, 70.79% 100%, 100% 64.67%);
  aspect-ratio: 0.954;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
.p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="2"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-4);
}
@media (min-width: 1025px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="2"] {
    bottom: 5%;
    left: 29%;
    width: 19.7rem;
    translate: -50% 50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="2"] {
    top: 20%;
    left: 19%;
    width: 15.7rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern07__item__deco:is(.p-pattern07__item:nth-child(4n+4 of .p-pattern07__item) *)[data-deco="2"] {
    width: 10.5rem;
  }
}

.p-pattern08 {
  position: relative;
  margin-block: var(--section-gap-sm);
  overflow-x: clip;
}
.p-pattern08:where(body[data-theme-color=spring] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-4) 10%, #fff);
}
.p-pattern08:where(body[data-theme-color=sky] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 35%, #fff);
}
.p-pattern08:where(body[data-theme-color=rose] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-1) 15%, #fff);
}
.p-pattern08:where(body[data-theme-color=cafe] *) {
  --c-wall-bg-color: #fdf6e9;
}
.p-pattern08:where(body[data-theme-color=lagoon] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-4) 15%, #fff);
}
.p-pattern08__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
.p-pattern08__header__deco {
  position: absolute;
}
.p-pattern08__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: -1.5rem;
  left: -5.5rem;
  width: 4.41rem;
  aspect-ratio: 1.176;
}
@media (max-width: 1024px) {
  .p-pattern08__header__deco[data-deco="1"] {
    top: -2.5rem;
    left: -6rem;
    width: 4.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern08__header__deco[data-deco="1"] {
    top: -1.25rem;
    left: -2.75rem;
    width: 2.4rem;
  }
}
.p-pattern08__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: -2.75rem;
  left: -0.75rem;
  width: 1.81rem;
  aspect-ratio: 0.739;
}
@media (max-width: 1024px) {
  .p-pattern08__header__deco[data-deco="2"] {
    top: -3.75rem;
    left: -1.5rem;
    width: 1.75rem;
  }
}
@media (max-width: 525px) {
  .p-pattern08__header__deco[data-deco="2"] {
    top: -2.25rem;
    left: -0.5rem;
    width: 1.15rem;
  }
}
.p-pattern08__body {
  display: grid;
  row-gap: var(--section-gap-sm);
}
@media (min-width: 1025px) {
  .p-pattern08__list[data-column-size=sm] {
    --c-tile-column-count: 3;
    --c-tile-column-gap: 5rem;
    --c-tile-row-gap: 5rem;
  }
  .p-pattern08__list[data-column-size=md] {
    --c-tile-column-count: 2;
    --c-tile-column-gap: 6rem;
    --c-tile-row-gap: 6rem;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern08__list {
    --c-tile-column-count: 2;
    --c-tile-column-gap: 3.5rem;
    --c-tile-row-gap: 5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern08__list {
    --c-tile-column-count: 1;
    --c-tile-row-gap: 4rem;
  }
}
.p-pattern08__item:nth-child(4n+1 of .p-pattern08__item) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 50%, transparent);
}
.p-pattern08__item:nth-child(4n+1 of .p-pattern08__item):where(body[data-theme-color=sky] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 100%, transparent);
}
.p-pattern08__item:nth-child(4n+1 of .p-pattern08__item):where(body[data-theme-color=rose] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 40%, transparent);
}
.p-pattern08__item:nth-child(4n+1 of .p-pattern08__item):where(body[data-theme-color=cafe] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 30%, transparent);
}
.p-pattern08__item:nth-child(4n+1 of .p-pattern08__item):where(body[data-theme-color=lagoon] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 35%, transparent);
}
.p-pattern08__item:nth-child(4n+2 of .p-pattern08__item) {
  --shadow-color: color-mix(in srgb, var(--color-palette-5) 30%, transparent);
}
.p-pattern08__item:nth-child(4n+2 of .p-pattern08__item):where(body[data-theme-color=sky] *) {
  --shadow-color: color-mix(in srgb, var(--color-sky-blue) 43%, transparent);
}
.p-pattern08__item:nth-child(4n+2 of .p-pattern08__item):where(body[data-theme-color=rose] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-5) 70%, transparent);
}
.p-pattern08__item:nth-child(4n+2 of .p-pattern08__item):where(body[data-theme-color=cafe] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-5) 50%, transparent);
}
.p-pattern08__item:nth-child(4n+2 of .p-pattern08__item):where(body[data-theme-color=lagoon] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-5) 50%, transparent);
}
.p-pattern08__item:nth-child(4n+3 of .p-pattern08__item) {
  --shadow-color: color-mix(in srgb, var(--color-palette-2) 30%, transparent);
}
.p-pattern08__item:nth-child(4n+4 of .p-pattern08__item) {
  --shadow-color: color-mix(in srgb, var(--color-palette-3) 30%, transparent);
}
.p-pattern08__item:nth-child(4n+4 of .p-pattern08__item):where(body[data-theme-color=sky] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 100%, transparent);
}
.p-pattern08__item:nth-child(4n+4 of .p-pattern08__item):where(body[data-theme-color=rose] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-3) 40%, transparent);
}
.p-pattern08__item:nth-child(4n+4 of .p-pattern08__item):where(body[data-theme-color=cafe] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-3) 25%, transparent);
}
.p-pattern08__item__heading {
  margin-top: 3rem;
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  text-align: center;
}
@media (max-width: 525px) {
  .p-pattern08__item__heading {
    margin-top: 2.5rem;
    font-size: 1.8rem;
  }
}
.p-pattern08__item__content {
  margin-top: 1rem;
}
@media (max-width: 525px) {
  .p-pattern08__item__content {
    margin-top: 0.75rem;
  }
}
.p-pattern08__item__image {
  filter: drop-shadow(0.8rem 0.8rem 0.8rem var(--shadow-color));
}
.p-pattern08__deco {
  position: absolute;
}
.p-pattern08__deco[data-deco="1"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(42.63% 100%, 0% 69.96%, 25.93% 17.76%, 60.55% 0%, 94.2% 31.41%, 100% 94.29%, 42.63% 100%);
  top: 16rem;
  right: 3%;
  width: 67rem;
  aspect-ratio: 1.142;
  translate: 50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern08__deco[data-deco="1"] {
    top: 9rem;
    right: 21%;
    z-index: -5;
    width: 50rem;
  }
}
@media (max-width: 525px) {
  .p-pattern08__deco[data-deco="1"] {
    width: 36rem;
  }
}
.p-pattern08__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(100% 29.47%, 86.19% 82.01%, 21.63% 100%, 0% 32.79%, 52.9% 0%, 100% 29.47%);
  top: 13rem;
  right: 19%;
  width: 23.5rem;
  aspect-ratio: 1.053;
  translate: 50% -50%;
}
.p-pattern08__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (max-width: 1024px) {
  .p-pattern08__deco[data-deco="2"] {
    top: 1rem;
    right: 8%;
    width: 20rem;
    scale: -1 -1;
  }
}
@media (max-width: 525px) {
  .p-pattern08__deco[data-deco="2"] {
    width: 15rem;
  }
}

.p-pattern09 {
  position: relative;
  margin-block: var(--section-gap-sm);
  overflow-x: clip;
}
.p-pattern09:where(body[data-theme-color=spring] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-sunset-orange) 15%, #fff);
}
.p-pattern09:where(body[data-theme-color=sky] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-5) 35%, #fff);
}
.p-pattern09:where(body[data-theme-color=rose] *) {
  --c-wall-bg-color: #fdefeb;
}
.p-pattern09:where(body[data-theme-color=cafe] *) {
  --c-wall-bg-color: #f1f6dc;
}
.p-pattern09:where(body[data-theme-color=lagoon] *) {
  --c-wall-bg-color: color-mix(in srgb, var(--color-palette-2) 10%, #fff);
}
.p-pattern09__header {
  margin-bottom: var(--section-gap-sm);
}
.p-pattern09__body {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--section-gap-sm);
}
.p-pattern09__item {
  position: relative;
  display: grid;
}
@media (min-width: 1025px) {
  .p-pattern09__item {
    grid-template-areas: "visual main";
    grid-template-columns: 55.2rem 1fr;
    column-gap: 6rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern09__item {
    grid-template-areas: "visual" "main";
    grid-template-columns: 1fr;
    row-gap: 1rem;
  }
}
.p-pattern09__item__main {
  grid-area: main;
  margin-top: 3rem;
}
.p-pattern09__item__heading {
  margin-bottom: 2rem;
  font-family: var(--font-heading);
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
}
@media (max-width: 525px) {
  .p-pattern09__item__heading {
    font-size: 1.85rem;
  }
}
.p-pattern09__item__visual {
  --shadow-size: 0.8rem;
  grid-area: visual;
  container-type: inline-size;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern09__item__visual {
    width: 90%;
    margin-inline: auto;
  }
}
@media (max-width: 525px) {
  .p-pattern09__item__visual {
    --shadow-size: 0.5rem;
    margin-inline: calc((var(--current-container-padding)) * -0.5);
  }
}
.p-pattern09__item__visual > img {
  display: block;
  filter: drop-shadow(var(--shadow-size) var(--shadow-size) var(--shadow-size) var(--shadow-color));
  transform: translateZ(0);
}
.p-pattern09__item__visual > img:nth-child(1) {
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 50%, transparent);
  width: 83%;
}
.p-pattern09__item__visual > img:nth-child(1):where(body[data-theme-color=sky] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 100%, transparent);
}
.p-pattern09__item__visual > img:nth-child(1):where(body[data-theme-color=cafe] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 50%, transparent);
}
.p-pattern09__item__visual > img:nth-child(1):where(body[data-theme-color=lagoon] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 60%, transparent);
}
.p-pattern09__item__visual > img:nth-child(2) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 50%, transparent);
  width: 48%;
  margin-top: -8cqw;
  margin-left: auto;
}
.p-pattern09__item__visual > img:nth-child(2):where(body[data-theme-color=sky] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-2) 30%, transparent);
}
.p-pattern09__item__visual > img:nth-child(2):where(body[data-theme-color=cafe] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-4) 35%, transparent);
}
.p-pattern09__item__visual > img:nth-child(2):where(body[data-theme-color=lagoon] *) {
  --shadow-color: color-mix(in srgb, var(--color-palette-1) 35%, transparent);
}
.p-pattern09__item__deco {
  position: absolute;
}
.p-pattern09__item__deco[data-deco="1"] {
  --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-pattern09__item__deco[data-deco="1"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 55%;
}
@media (min-width: 1025px) {
  .p-pattern09__item__deco[data-deco="1"] {
    top: 3.5rem;
    left: 1.5%;
    width: 22.8rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern09__item__deco[data-deco="1"] {
    top: 4rem;
    right: 10%;
    width: 16rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern09__item__deco[data-deco="1"] {
    top: 3rem;
    right: -1%;
    width: 11rem;
  }
}
.p-pattern09__item__deco[data-deco="2"] {
  --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%);
  z-index: -1;
  aspect-ratio: 1.03;
}
@media (min-width: 1025px) {
  .p-pattern09__item__deco[data-deco="2"] {
    top: -2rem;
    left: 11.5%;
    width: 8.25rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern09__item__deco[data-deco="2"] {
    top: 0.25rem;
    right: 20%;
    width: 6.5rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern09__item__deco[data-deco="2"] {
    top: 0.25rem;
    right: 13.5%;
    width: 5.75rem;
  }
}
.p-pattern09__deco {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(0% 55.82%, 20.66% 12.98%, 90.62% 0%, 100% 35.59%, 85.89% 89.1%, 25.7% 100%, 0% 55.82%);
  position: absolute;
  top: 16rem;
  right: 7%;
  width: 52rem;
  aspect-ratio: 1.105;
  translate: 50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern09__deco {
    top: 16rem;
    right: 7%;
    z-index: -5;
    width: 50rem;
  }
}
@media (max-width: 525px) {
  .p-pattern09__deco {
    top: 11rem;
    width: 36rem;
  }
}

.p-pattern10 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern10__body {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: var(--section-gap-sm);
}
@media (max-width: 1024px) {
  .p-pattern10__body {
    row-gap: var(--section-gap-md);
  }
}
.p-pattern10__item {
  --visual-width: 59.8rem;
  --overlap-size: 5.9rem;
  --shift-size: 7.3rem;
  position: relative;
  display: grid;
}
@media (min-width: 1025px) {
  .p-pattern10__item {
    align-items: center;
  }
  .p-pattern10__item:nth-child(odd of .p-pattern10__item) {
    --margin-inline: calc(var(--overlap-size) * -1) 0;
    grid-template-areas: "visual main";
    grid-template-columns: var(--visual-width) 1fr;
    padding-left: var(--shift-size);
  }
  .p-pattern10__item:nth-child(even of .p-pattern10__item) {
    --margin-inline: 0 calc(var(--overlap-size) * -1);
    grid-template-areas: "main visual";
    grid-template-columns: 1fr var(--visual-width);
    padding-right: var(--shift-size);
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item {
    --overlap-size: 5rem;
    grid-template-areas: "visual" "main";
    grid-template-columns: 1fr;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item {
    --overlap-size: 3.5rem;
  }
}
.p-pattern10__item__main {
  position: relative;
  z-index: 1;
  grid-area: main;
  height: fit-content;
}
@media (min-width: 1025px) {
  .p-pattern10__item__main {
    margin-inline: var(--margin-inline);
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__main {
    margin-top: calc(var(--overlap-size) * -1);
  }
}
.p-pattern10__item__main:where(body[data-theme-color=sky] *) {
  --c-card01-shadow-color: color-mix(in srgb, var(--color-palette-1) 70%, transparent);
}
.p-pattern10__item__main__deco {
  position: absolute;
}
.p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-3);
  --c-polygon-clip-path: polygon(70.85% 0%, 100% 48.87%, 85.52% 79.68%, 3.89% 100%, 0% 21.84%, 70.85% 0%);
  aspect-ratio: 1.001;
  translate: 50% -50%;
}
@media (min-width: 1025px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
    top: 0rem;
    right: 14.5%;
    width: 6rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
    top: 0.75rem;
    right: 12%;
    width: 4.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
    width: 3rem;
  }
}
.p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-color-percentage: 70%;
  --c-polygon-clip-path: polygon(77.88% 0%, 100% 58.04%, 71.09% 100%, 0% 81.73%, 22.73% 18.81%, 77.88% 0%);
  aspect-ratio: 0.899;
  translate: 50% -50%;
}
@media (min-width: 1025px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
    top: 3.5rem;
    right: 9.5%;
    width: 2.9rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
    top: 2.85rem;
    right: 7.5%;
    width: 2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
    width: 1.5rem;
  }
}
.p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-clip-path: polygon(67.14% 0%, 0% 48.87%, 16.01% 79.68%, 70% 100%, 100% 68.83%, 98.57% 20.99%, 67.14% 0%);
  aspect-ratio: 1.041;
  translate: -50% -50%;
}
.p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-4);
}
@media (min-width: 1025px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
    top: 0rem;
    left: 14.5%;
    width: 6rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
    top: 0.75rem;
    left: 12%;
    width: 4.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
    width: 3.2rem;
  }
}
.p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-color-percentage: 70%;
  --c-polygon-clip-path: polygon(22.12% 0%, 0% 58.04%, 28.91% 100%, 100% 81.73%, 77.27% 18.82%, 22.12% 0%);
  aspect-ratio: 1.034;
  translate: -50% -50%;
}
.p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-1);
}
@media (min-width: 1025px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
    top: 3.5rem;
    left: 9.5%;
    width: 2.9rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
    top: 2.85rem;
    left: 7.5%;
    width: 2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__main__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
    width: 1.5rem;
  }
}
.p-pattern10__item__heading {
  margin-bottom: 2rem;
  font-family: var(--font-heading);
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  text-align: center;
}
@media (max-width: 1024px) {
  .p-pattern10__item__heading {
    padding-bottom: 0.5em;
    margin-bottom: 1.5rem;
    border-bottom: var(--border-xs) solid currentcolor;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__heading {
    font-size: 1.85rem;
  }
}
.p-pattern10__item__visual {
  grid-area: visual;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern10__item__visual {
    margin-inline: calc(var(--current-container-padding) * -0.5);
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__visual {
    margin-inline: calc(var(--current-container-padding) * -1);
  }
}
.p-pattern10__item__deco {
  position: absolute;
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(66.81% 96.24%, 26.34% 100%, 0% 58.49%, 13.53% 9.29%, 51.43% 0%, 100% 39.37%, 66.81% 96.24%);
  aspect-ratio: 1.182;
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-4);
}
@media (min-width: 1025px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
    top: 45%;
    right: -3.5%;
    width: 63.6rem;
    translate: 50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
    right: 2%;
    bottom: 11rem;
    width: 48rem;
    scale: -1 1;
    translate: 50% 50%;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="1"] {
    width: 34rem;
  }
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-2);
  --c-polygon-clip-path: polygon(0% 47.72%, 15.98% 18.05%, 47.48% 0%, 93% 16.75%, 100% 57.17%, 97.17% 82.99%, 36.42% 100%, 0% 47.72%);
  aspect-ratio: 1.006;
  translate: -50% -50%;
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"]:where(body[data-theme-color=sky] *) {
  --c-polygon-color-percentage: 85%;
}
@media (min-width: 1025px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
    top: 4rem;
    left: 3.5%;
    width: 18.8rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
    top: 0.25rem;
    left: -1%;
    width: 15rem;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(odd of .p-pattern10__item) *)[data-deco="2"] {
    width: 11.5rem;
  }
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(66.81% 96.24%, 26.34% 100%, 0% 58.49%, 13.53% 9.29%, 51.43% 0%, 100% 39.37%, 66.81% 96.24%);
  aspect-ratio: 1.182;
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-opacity: 45%;
}
@media (min-width: 1025px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
    top: 55%;
    left: -3.5%;
    width: 67rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
    bottom: 20rem;
    left: 2%;
    width: 48rem;
    scale: -1 1;
    translate: -50% 50%;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="1"] {
    width: 45rem;
  }
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
  --c-polygon-color: var(--color-palette-5);
  --c-polygon-clip-path: polygon(35.32% 100%, 100% 79.44%, 78.16% 16.52%, 19.06% 0%, 7.06% 31.24%, 0% 70.79%, 35.32% 100%);
  aspect-ratio: 1.048;
  translate: 50% 50%;
}
.p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (min-width: 1025px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
    right: 6%;
    bottom: 4rem;
    width: 20.6rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
    right: -1%;
    bottom: 2rem;
    width: 15rem;
  }
}
@media (max-width: 525px) {
  .p-pattern10__item__deco:is(.p-pattern10__item:nth-child(even of .p-pattern10__item) *)[data-deco="2"] {
    width: 13.5rem;
  }
}

.p-pattern11 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
@media (min-width: 1025px) {
  .p-pattern11__wrapper {
    padding-block: 7rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern11__wrapper {
    padding-block: 5.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern11__wrapper {
    padding-block: 4rem;
  }
}
@media (min-width: 1025px) {
  .p-pattern11 .c-card01__ribbon {
    --c-card01-ribbon-width: 7.3rem;
    right: 5rem;
  }
}
.p-pattern11__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-xs);
}
.p-pattern11__heading {
  font-family: var(--font-heading);
  font-size: 2.8rem;
  font-weight: bold;
  color: var(--key-color);
  text-align: center;
  letter-spacing: 0.05em;
}
.p-pattern11__content {
  margin-top: 2.5rem;
  font-size: 1.5rem;
}
.p-pattern11__grid {
  margin-top: 5rem;
}
@media (min-width: 1025px) {
  .p-pattern11__grid {
    --c-tile-column-gap: 5rem;
    --c-tile-column-count: 2;
    max-width: 85rem;
    margin-inline: auto;
  }
}
@media (max-width: 1024px) {
  .p-pattern11__grid {
    --c-tile-column-count: 1;
    margin-top: 3.5rem;
  }
}
.p-pattern11__list {
  --c-list-prefix-color: var(--color-text-accent);
  font-size: 2rem;
}
@media (max-width: 525px) {
  .p-pattern11__list {
    font-size: 1.6rem;
  }
}
.p-pattern11__deco {
  position: absolute;
}
.p-pattern11__deco[data-deco="1"] {
  --c-polygon-opacity: 43%;
  --c-polygon-clip-path: polygon(47.62% 0%, 8.66% 16.51%, 0% 64.69%, 31.24% 100%, 69.92% 89.45%, 100% 32.26%, 47.62% 0%);
  top: 35%;
  left: 6%;
  width: 75rem;
  aspect-ratio: 1.085;
  translate: -50% -50%;
}
.p-pattern11__deco[data-deco="1"]:where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-opacity: 38%;
}
@media (max-width: 1024px) {
  .p-pattern11__deco[data-deco="1"] {
    top: 16rem;
    left: 11%;
    width: 50rem;
    scale: -1 1;
  }
}
@media (max-width: 525px) {
  .p-pattern11__deco[data-deco="1"] {
    top: 9rem;
    width: 34rem;
  }
}
.p-pattern11__deco[data-deco="2"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(42.63% 100%, 0% 69.96%, 25.93% 17.76%, 60.55% 0%, 94.2% 31.41%, 100% 94.29%, 42.63% 100%);
  right: 7.5%;
  bottom: 46%;
  width: 67rem;
  aspect-ratio: 1.142;
  translate: 50% 50%;
}
@media (max-width: 1024px) {
  .p-pattern11__deco[data-deco="2"] {
    right: 16%;
    bottom: 13rem;
    width: 50rem;
  }
}
@media (max-width: 525px) {
  .p-pattern11__deco[data-deco="2"] {
    bottom: 11rem;
    width: 36rem;
  }
}

.p-pattern12 {
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern12__body {
  display: grid;
  row-gap: var(--section-gap-sm);
}
@media (max-width: 525px) {
  .p-pattern12__body {
    row-gap: 6rem;
  }
}
.p-pattern12__item {
  --visual-width: 36rem;
  position: relative;
  display: grid;
  gap: 2.75rem 6rem;
}
.p-pattern12__item:where(body[data-theme-color=sky] *) {
  --heading-border-color: var(--color-pale-blue);
}
.p-pattern12__item:where(body[data-theme-color=rose] *) {
  --heading-border-color: var(--color-palette-1);
}
.p-pattern12__item:where(body[data-theme-color=cafe] *) {
  --heading-border-color: #9b8756;
}
@media (min-width: 1025px) {
  .p-pattern12__item:nth-child(odd of .p-pattern12__item) {
    grid-template-areas: "main visual";
    grid-template-columns: 1fr var(--visual-width);
  }
  .p-pattern12__item:nth-child(even of .p-pattern12__item) {
    grid-template-areas: "visual main";
    grid-template-columns: var(--visual-width) 1fr;
  }
}
@media (max-width: 1024px) {
  .p-pattern12__item {
    grid-template-areas: "visual" "main";
    grid-template-columns: 1fr;
  }
}
.p-pattern12__item__main {
  grid-area: main;
}
.p-pattern12__item__heading {
  padding-bottom: 0.35em;
  margin-bottom: 3rem;
  font-family: var(--font-heading);
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  border-bottom: var(--border-lg) solid var(--heading-border-color, color-mix(in srgb, currentcolor 25%, #fff));
}
@media (max-width: 525px) {
  .p-pattern12__item__heading {
    margin-bottom: 2.1rem;
    font-size: 1.85rem;
  }
}
.p-pattern12__item__list {
  --c-list-prefix-color: var(--color-text-accent);
}
.p-pattern12__item__visual {
  grid-area: visual;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern12__item__visual {
    width: 80%;
    margin-inline: auto;
  }
}
.p-pattern12__item__deco {
  position: absolute;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+1 of .p-pattern12__item) *) {
  --c-polygon-color: var(--color-palette-2);
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+1 of .p-pattern12__item) *):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 60%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+1 of .p-pattern12__item) *):where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 80%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+2 of .p-pattern12__item) *) {
  --c-polygon-color: var(--color-palette-4);
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+2 of .p-pattern12__item) *):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 70%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+2 of .p-pattern12__item) *):where(body[data-theme-color=cafe] *) {
  --c-polygon-color-percentage: 70%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+2 of .p-pattern12__item) *):where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 70%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+3 of .p-pattern12__item) *) {
  --c-polygon-color: var(--color-palette-5);
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+3 of .p-pattern12__item) *):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 50%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+3 of .p-pattern12__item) *):where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 75%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+4 of .p-pattern12__item) *) {
  --c-polygon-color: var(--color-palette-1);
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+4 of .p-pattern12__item) *):where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 50%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(4n+4 of .p-pattern12__item) *):where(body[data-theme-color=lagoon] *) {
  --c-polygon-color-percentage: 85%;
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(odd of .p-pattern12__item) *) {
  --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%);
  aspect-ratio: 1.089;
}
@media (min-width: 1025px) {
  .p-pattern12__item__deco:is(.p-pattern12__item:nth-child(odd of .p-pattern12__item) *) {
    top: 3.5rem;
    right: 5%;
    width: 20rem;
    translate: 50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern12__item__deco:is(.p-pattern12__item:nth-child(odd of .p-pattern12__item) *) {
    top: 3rem;
    left: 13%;
    width: 18rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern12__item__deco:is(.p-pattern12__item:nth-child(odd of .p-pattern12__item) *) {
    left: 4%;
    width: 15.8rem;
  }
}
.p-pattern12__item__deco:is(.p-pattern12__item:nth-child(even of .p-pattern12__item) *) {
  --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%);
  aspect-ratio: 1.089;
}
@media (min-width: 1025px) {
  .p-pattern12__item__deco:is(.p-pattern12__item:nth-child(even of .p-pattern12__item) *) {
    top: 20rem;
    left: 0%;
    width: 20rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern12__item__deco:is(.p-pattern12__item:nth-child(even of .p-pattern12__item) *) {
    top: 3rem;
    right: 13%;
    width: 18rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern12__item__deco:is(.p-pattern12__item:nth-child(even of .p-pattern12__item) *) {
    right: 4%;
    width: 15.8rem;
  }
}

.p-pattern13 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern13__header {
  padding-block: 1rem;
  margin-bottom: var(--section-gap-sm);
  background-color: var(--color-bg-base);
  border: var(--border-lg) solid var(--color-text-heading);
}
@media (max-width: 525px) {
  .p-pattern13__header {
    border-width: var(--border-md);
  }
}
.p-pattern13__heading {
  border-bottom: none;
}
.p-pattern13__group {
  --row-gap: 3.5rem;
  display: grid;
  row-gap: var(--row-gap);
}
@media (min-width: 1025px) {
  .p-pattern13__group {
    grid-template-columns: fit-content(45%) 1fr;
    column-gap: 6rem;
  }
}
.p-pattern13__item {
  display: grid;
  padding-bottom: var(--row-gap);
  border-bottom: var(--border-xs) solid var(--color-border);
}
@media (min-width: 1025px) {
  .p-pattern13__item {
    grid-template-columns: subgrid;
    grid-column: 1/-1;
    align-items: center;
    padding-inline: 5rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern13__item {
    row-gap: 1.5rem;
  }
}
.p-pattern13__item__heading {
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
}
@media (min-width: 1025px) {
  .p-pattern13__item__heading {
    min-width: 15em;
  }
}
@media (max-width: 525px) {
  .p-pattern13__item__heading {
    font-size: 1.85rem;
  }
}
.p-pattern13__item table {
  width: -webkit-fill-available;
  width: -moz-available;
  width: stretch;
  line-height: 1.5;
}
.p-pattern13__item table tbody {
  row-gap: 1.35em;
}
.p-pattern13__item table tr {
  column-gap: 2.5em;
}
@media (max-width: 1024px) {
  .p-pattern13__item table tr {
    column-gap: 2em;
  }
}
.p-pattern13__item table th,
.p-pattern13__item table td {
  word-break: keep-all;
  overflow-wrap: anywhere;
}
.p-pattern13__item table th {
  font-weight: normal;
}
.p-pattern13__item table td {
  align-self: center;
}
.p-pattern13__item table td:last-of-type {
  color: var(--color-text-heading);
  text-align: right;
}
.p-pattern13__note {
  margin-top: 1.25rem;
  font-size: var(--font-size-sm);
  text-align: right;
}
.p-pattern13__deco {
  position: absolute;
}
.p-pattern13__deco[data-deco="1"] {
  --c-polygon-opacity: 43%;
  --c-polygon-clip-path: polygon(47.62% 0%, 8.66% 16.51%, 0% 64.69%, 31.24% 100%, 69.92% 89.45%, 100% 32.26%, 47.62% 0%);
  aspect-ratio: 1.182;
}
@media (min-width: 1025px) {
  .p-pattern13__deco[data-deco="1"] {
    top: 55%;
    left: -10%;
    width: 71rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern13__deco[data-deco="1"] {
    top: 3rem;
    right: -7%;
    width: 50rem;
    scale: -1 1;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern13__deco[data-deco="1"] {
    width: 34rem;
  }
}
.p-pattern13__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(92.3% 76.98%, 100% 4.29%, 37.37% 0%, 0% 51.86%, 22.14% 76.67%, 53.35% 100%, 92.3% 76.98%);
  aspect-ratio: 1.103;
}
.p-pattern13__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (min-width: 1025px) {
  .p-pattern13__deco[data-deco="2"] {
    top: 1rem;
    right: 9%;
    width: 20rem;
    translate: 50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern13__deco[data-deco="2"] {
    top: 1rem;
    left: 7%;
    width: 15rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern13__deco[data-deco="2"] {
    width: 10rem;
  }
}
.p-pattern13__deco[data-deco="3"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(9.27% 75.95%, 48.48% 100%, 92.7% 77.36%, 100% 27.55%, 65.73% 0%, 0% 9.37%, 9.27% 75.95%);
  top: 24rem;
  right: -10%;
  width: 68rem;
  aspect-ratio: 1.021;
  translate: 50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern13__deco[data-deco="3"] {
    display: none;
  }
}

.p-pattern14 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern14__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
.p-pattern14__header__deco {
  position: absolute;
}
.p-pattern14__header__deco[data-deco="1"] {
  --c-polygon-clip-path: polygon(100% 45.61%, 26.88% 0%, 0% 44.78%, 22.77% 89.25%, 91.11% 100%, 100% 45.61%);
  top: -1.25rem;
  right: -6rem;
  width: 4.15rem;
  aspect-ratio: 1.001;
}
@media (max-width: 1024px) {
  .p-pattern14__header__deco[data-deco="1"] {
    top: -1.75rem;
    right: -3.75rem;
    width: 3.25rem;
  }
}
@media (max-width: 525px) {
  .p-pattern14__header__deco[data-deco="1"] {
    top: -1rem;
    right: -2.75rem;
    width: 2.3rem;
  }
}
.p-pattern14__header__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(94.62% 11.38%, 31.81% 0%, 0% 54.56%, 51.59% 100%, 100% 59.72%, 94.62% 11.38%);
  top: -2.25rem;
  right: -1.75rem;
  width: 2.23rem;
  aspect-ratio: 1.03;
}
@media (max-width: 1024px) {
  .p-pattern14__header__deco[data-deco="2"] {
    top: -2.75rem;
    right: -0.5rem;
    width: 2rem;
  }
}
@media (max-width: 525px) {
  .p-pattern14__header__deco[data-deco="2"] {
    top: -1.5rem;
    right: -0.25rem;
    width: 1.35rem;
  }
}
.p-pattern14__intro {
  margin-bottom: var(--section-gap-xs);
  text-align: center;
}
.p-pattern14__list {
  --c-term-list-term-text-align: left;
}
@media (min-width: 1025px) {
  .p-pattern14__list {
    --c-term-list-term-min-width: 15em;
    max-width: 93.6rem;
    margin-inline: auto;
  }
}
@media (max-width: 1024px) {
  .p-pattern14__list {
    --c-term-list-term-font-size: 1.75rem;
  }
}
@media (min-width: 1025px) {
  .p-pattern14 .c-term-list__term {
    padding-inline: 5rem;
  }
}
.p-pattern14__deco {
  position: absolute;
}
.p-pattern14__deco[data-deco="1"] {
  --c-polygon-opacity: 43%;
  --c-polygon-clip-path: polygon(47.62% 0%, 8.66% 16.51%, 0% 64.69%, 31.24% 100%, 69.92% 89.45%, 100% 32.26%, 47.62% 0%);
  aspect-ratio: 1.182;
  translate: -50% -50%;
}
@media (min-width: 1025px) {
  .p-pattern14__deco[data-deco="1"] {
    top: 63%;
    left: -3.5%;
    width: 71rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern14__deco[data-deco="1"] {
    top: 10rem;
    left: -15%;
    width: 50rem;
  }
}
@media (max-width: 525px) {
  .p-pattern14__deco[data-deco="1"] {
    top: 5rem;
    left: -17%;
    width: 34rem;
  }
}
.p-pattern14__deco[data-deco="2"] {
  --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;
}
.p-pattern14__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 55%;
}
@media (min-width: 1025px) {
  .p-pattern14__deco[data-deco="2"] {
    top: 10rem;
    right: 13.5%;
    width: 21.5rem;
    translate: 50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern14__deco[data-deco="2"] {
    top: -3rem;
    left: 7%;
    width: 15rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern14__deco[data-deco="2"] {
    width: 10rem;
  }
}
.p-pattern14__deco[data-deco="3"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(43.2% 100%, 11.82% 80.18%, 0% 41.58%, 45.24% 0%, 100% 10.67%, 99.97% 79.36%, 43.2% 100%);
  top: 33rem;
  right: 1%;
  width: 66rem;
  aspect-ratio: 0.899;
  translate: 50% -50%;
}
@media (max-width: 1024px) {
  .p-pattern14__deco[data-deco="3"] {
    display: none;
  }
}

.p-pattern15 {
  position: relative;
  margin-block: var(--section-gap-lg);
  overflow-x: clip;
}
.p-pattern15__header {
  position: relative;
  width: fit-content;
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
.p-pattern15__header__deco {
  position: absolute;
}
.p-pattern15__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: -2rem;
  left: -5rem;
  width: 4.41rem;
  aspect-ratio: 1.247;
}
@media (max-width: 1024px) {
  .p-pattern15__header__deco[data-deco="1"] {
    top: -2rem;
    left: -7rem;
    width: 4.59rem;
  }
}
@media (max-width: 525px) {
  .p-pattern15__header__deco[data-deco="1"] {
    top: -0.75rem;
    left: -3rem;
    width: 2.24rem;
  }
}
.p-pattern15__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: -1.5rem;
  left: -0.5rem;
  width: 1.81rem;
  aspect-ratio: 0.841;
}
@media (max-width: 1024px) {
  .p-pattern15__header__deco[data-deco="2"] {
    top: -1.5rem;
    left: -2rem;
    width: 1.89rem;
  }
}
@media (max-width: 525px) {
  .p-pattern15__header__deco[data-deco="2"] {
    top: -0.65rem;
    left: -0.5rem;
    width: 0.924rem;
  }
}
.p-pattern15__body {
  display: grid;
  row-gap: var(--section-gap-sm);
  padding-block: 7rem;
}
@media (max-width: 1024px) {
  .p-pattern15__body {
    padding-block: 5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern15__body {
    padding-block: 3rem;
  }
}
@media (min-width: 1025px) {
  .p-pattern15__item {
    width: min(93.6rem, 100%);
    margin-inline: auto;
  }
}
.p-pattern15__item__heading {
  padding-top: 0.75em;
  font-family: var(--font-script);
  font-size: 3rem;
  line-height: 1;
  color: var(--color-text-heading);
  text-align: center;
  text-transform: uppercase;
  background-color: color-mix(in srgb, currentcolor 10%, #fff);
}
.p-pattern15__item__heading:where(body[data-theme-color=cafe] *) {
  background-color: color-mix(in srgb, var(--color-palette-1) 35%, #fff);
}
@media (max-width: 525px) {
  .p-pattern15__item__heading {
    font-size: 1.85rem;
  }
}
.p-pattern15__item__course {
  margin-top: 5rem;
}
@media (min-width: 1025px) {
  .p-pattern15__item__course {
    --column-gap: 5.6rem;
    --arrow-size: calc(var(--column-gap) * 0.45);
    display: flex;
    flex-wrap: nowrap;
    column-gap: var(--column-gap);
    justify-content: center;
  }
  .p-pattern15__item__course:has(.p-pattern15__item__stage:nth-of-type(3)) {
    --column-gap: 3.6rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern15__item__course {
    --row-gap: 5rem;
    --arrow-size: calc(var(--row-gap) * 0.45);
    display: flex;
    flex-direction: column;
    row-gap: var(--row-gap);
    align-items: center;
  }
}
@media (max-width: 525px) {
  .p-pattern15__item__course {
    --row-gap: 3.6rem;
    margin-top: 3rem;
  }
}
.p-pattern15__item__stage {
  position: relative;
}
@media (min-width: 1025px) {
  .p-pattern15__item__stage {
    max-width: 75%;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-pattern15__item__stage {
    max-width: 83%;
  }
}
.p-pattern15__item__stage:nth-of-type(3n + 1) {
  --polygon-color: color-mix(in srgb, var(--color-palette-1) 70%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 1):where(body[data-theme-color=sky] *) {
  --polygon-color: color-mix(in srgb, var(--color-palette-1) 100%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 1):where(body[data-theme-color=cafe] *) {
  --polygon-color: color-mix(in srgb, var(--color-palette-4) 100%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 1):where(body[data-theme-color=lagoon] *) {
  --polygon-color: color-mix(in srgb, var(--color-palette-1) 100%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 2) {
  --polygon-color: color-mix(in srgb, var(--color-palette-2) 70%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 2):where(body[data-theme-color=cafe] *) {
  --polygon-color: color-mix(in srgb, var(--color-palette-2) 100%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 2):where(body[data-theme-color=lagoon] *) {
  --polygon-color: color-mix(in srgb, var(--color-palette-2) 90%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 3) {
  --polygon-color: color-mix(in srgb, var(--color-palette-3) 70%, #fff);
}
.p-pattern15__item__stage:nth-of-type(3n + 3):where(body[data-theme-color=lagoon] *) {
  --polygon-color: color-mix(in srgb, var(--color-palette-3) 60%, #fff);
}
.p-pattern15__item__stage:not(:first-of-type)::before {
  position: absolute;
  content: "";
  background-color: var(--color-text-accent);
}
@media (min-width: 1025px) {
  .p-pattern15__item__stage:not(:first-of-type)::before {
    top: 50%;
    left: calc(var(--column-gap) / -2);
    width: var(--arrow-size);
    aspect-ratio: 0.806;
    clip-path: polygon(100% 50%, 0% 100%, 0% 0%, 100% 50%);
    translate: -45% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern15__item__stage:not(:first-of-type)::before {
    top: calc(var(--row-gap) / -2);
    left: 50%;
    height: var(--arrow-size);
    aspect-ratio: 1.24;
    clip-path: polygon(50% 100%, 0% 0%, 100% 0%, 50% 100%);
    translate: -50% -45%;
  }
}
.p-pattern15__item__stage figure > figcaption {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  padding-top: 1em;
  font-family: var(--font-script);
  font-size: 2.6rem;
  line-height: 0;
  color: var(--color-text-heading);
  letter-spacing: 0;
  text-shadow: 0 0 0.1em var(--color-text-contrast), 0 0 0.1em var(--color-text-contrast), 0 0 0.1em 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.3em var(--color-text-contrast), 0 0 0.4em var(--color-text-contrast);
  translate: 0 -60%;
}
@media (max-width: 525px) {
  .p-pattern15__item__stage figure > figcaption {
    font-size: 2rem;
  }
}
.p-pattern15__item__stage figure > figcaption::before {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1;
  width: 1.25em;
  aspect-ratio: 1;
  content: "";
  background-color: var(--polygon-color);
  background-image: url("../../images/polygon-texture.webp");
  background-repeat: repeat;
  background-blend-mode: overlay;
  clip-path: polygon(95.65% 100%, 14.49% 88.41%, 0% 38.48%, 43.48% 0%, 100% 30.44%, 95.65% 100%);
  translate: -42% -42%;
}
.p-pattern15__item__info {
  display: grid;
  row-gap: 0.5em;
  margin-top: 3.5rem;
}
@media (max-width: 525px) {
  .p-pattern15__item__info {
    margin-top: 2rem;
  }
}
@media (min-width: 1025px) {
  .p-pattern15__item__info > div {
    display: flex;
    flex-wrap: nowrap;
  }
}
.p-pattern15__item__info dt {
  font-weight: bold;
}
.p-pattern15__item__info dt::before {
  margin-right: 0.3em;
  color: var(--color-text-accent);
  content: "■";
}
.p-pattern15__item__info dt::after {
  content: "：";
}
.p-pattern15__deco {
  position: absolute;
}
.p-pattern15__deco[data-deco="1"] {
  --c-polygon-opacity: 43%;
  --c-polygon-clip-path: polygon(65.97% 87.93%, 17.78% 100%, 0% 43.41%, 10.97% 4.14%, 54.15% 0%, 100% 39.45%, 65.97% 87.93%);
  aspect-ratio: 1.233;
  translate: -50% -50%;
}
@media (min-width: 1025px) {
  .p-pattern15__deco[data-deco="1"] {
    top: 60rem;
    left: -3.5%;
    width: 80.5rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern15__deco[data-deco="1"] {
    top: 29rem;
    left: 10%;
    width: 55rem;
    scale: -1 1;
  }
}
@media (max-width: 525px) {
  .p-pattern15__deco[data-deco="1"] {
    top: 20rem;
    width: 34rem;
  }
}
.p-pattern15__deco[data-deco="2"] {
  --c-polygon-clip-path: polygon(51.79% 100%, 0% 75.94%, 6.18% 14.71%, 57.75% 0%, 92.26% 28.87%, 100% 73.28%, 51.79% 100%);
  aspect-ratio: 1.074;
}
.p-pattern15__deco[data-deco="2"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 45%;
}
@media (min-width: 1025px) {
  .p-pattern15__deco[data-deco="2"] {
    top: 28rem;
    left: 6.5%;
    width: 20.5rem;
    translate: -50% -50%;
  }
}
@media (max-width: 1024px) {
  .p-pattern15__deco[data-deco="2"] {
    top: 14rem;
    right: 6%;
    width: 19rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-pattern15__deco[data-deco="2"] {
    top: 10rem;
    right: 1%;
    width: 13.5rem;
  }
}
.p-pattern15__deco[data-deco="3"] {
  --c-polygon-opacity: 40%;
  --c-polygon-clip-path: polygon(42.63% 100%, 0% 69.96%, 25.93% 17.76%, 60.55% 0%, 94.2% 31.41%, 100% 94.3%, 42.63% 100%);
  aspect-ratio: 1.142;
  translate: 50% 50%;
}
@media (min-width: 1025px) {
  .p-pattern15__deco[data-deco="3"] {
    right: 3%;
    bottom: 36%;
    width: 67rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern15__deco[data-deco="3"] {
    right: 9%;
    bottom: 8rem;
    width: 48rem;
    scale: 1 -1;
  }
}
@media (max-width: 525px) {
  .p-pattern15__deco[data-deco="3"] {
    width: 36rem;
  }
}
.p-pattern15__deco[data-deco="4"] {
  --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%);
  aspect-ratio: 1.089;
  translate: 50% 50%;
}
.p-pattern15__deco[data-deco="4"]:where(body[data-theme-color=spring] *) {
  --c-polygon-color-percentage: 60%;
}
@media (min-width: 1025px) {
  .p-pattern15__deco[data-deco="4"] {
    right: 10.5%;
    bottom: 19%;
    width: 20.2rem;
  }
}
@media (max-width: 1024px) {
  .p-pattern15__deco[data-deco="4"] {
    right: 39.5%;
    bottom: 1rem;
    width: 16.5rem;
  }
}
@media (max-width: 525px) {
  .p-pattern15__deco[data-deco="4"] {
    width: 14rem;
  }
}