@charset "UTF-8";
.p-wrapper {
  position: relative;
  padding-bottom: var(--section-gap-md);
  margin-top: var(--section-gap-md);
  overflow-x: clip;
}
@media (max-width: 1024px) {
  .p-wrapper {
    padding-bottom: var(--section-gap-lg);
  }
}
.p-wrapper__inner {
  display: grid;
  grid-template-areas: "main side";
  grid-template-columns: 1fr 28.8rem;
  gap: 8rem 7rem;
}
@media (max-width: 1024px) {
  .p-wrapper__inner {
    grid-template-areas: "main" "side";
    grid-template-columns: 1fr;
  }
}
.p-wrapper__main {
  grid-area: main;
}
.p-wrapper__side {
  grid-area: side;
}

.p-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  container-type: size;
  pointer-events: none;
}
.p-bg__deco {
  position: absolute;
}
.p-bg__deco[data-deco="1"] {
  --c-polygon-color-percentage: 45%;
  --c-polygon-clip-path: polygon(100% 28.6%, 100% 85.43%, 37.86% 100%, 0% 56.32%, 40.98% 0%, 100% 28.6%);
  aspect-ratio: 1.026;
  translate: -50% -50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="1"] {
    top: 3%;
    left: 6.5%;
    width: 29.2rem;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="1"] {
    top: 0%;
    left: 6.5%;
    width: 15rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="1"] {
    width: 12.3rem;
  }
}
.p-bg__deco[data-deco="2"] {
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(65.97% 88.97%, 17.78% 100%, 0% 48.26%, 10.97% 12.36%, 49.46% 0%, 100% 44.65%, 65.97% 88.97%);
  aspect-ratio: 1.128;
  translate: -50% -50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="2"] {
    top: 10%;
    left: 7%;
    width: 80.7rem;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="2"] {
    top: 2.5%;
    left: -11%;
    width: 52rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="2"] {
    width: 42.3rem;
  }
}
.p-bg__deco[data-deco="3"] {
  --c-polygon-color-percentage: 69%;
  --c-polygon-clip-path: polygon(50.08% 100%, 0% 71.81%, 10.26% 10.77%, 62.73% 0%, 95.24% 31.69%, 100% 76.9%, 50.08% 100%);
  aspect-ratio: 1.081;
  translate: 50% -50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="3"] {
    top: 37%;
    right: 19.5%;
    width: 20.3rem;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-bg__deco[data-deco="3"] {
    display: none;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="3"] {
    top: 16%;
    right: 19.5%;
    width: 9.5rem;
  }
}
.p-bg__deco[data-deco="4"] {
  --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%);
  aspect-ratio: 0.877;
  translate: 50% -50%;
}
.p-bg__deco[data-deco="4"]:where(body[data-theme-color=spring] *) {
  --c-polygon-opacity: 45%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="4"] {
    top: 35.5%;
    right: -4%;
    width: 73.2rem;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="4"] {
    top: 16%;
    right: -17%;
    width: 47rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="4"] {
    width: 41.6rem;
  }
}
.p-bg__deco[data-deco="5"] {
  --c-polygon-color-percentage: 45%;
  --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%);
  aspect-ratio: 1.16;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="5"] {
    bottom: 35%;
    left: 13%;
    width: 21.6rem;
    translate: -50% 50%;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="5"] {
    top: 32%;
    left: 9.5%;
    width: 16.5rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="5"] {
    left: 11.5%;
    width: 14.8rem;
  }
}
.p-bg__deco[data-deco="6"] {
  --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%);
  aspect-ratio: 1.182;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="6"] {
    bottom: 41%;
    left: 3%;
    width: 77rem;
    translate: -50% 50%;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="6"] {
    top: 35%;
    left: -9.5%;
    width: 44rem;
    translate: -50% -50%;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="6"] {
    left: -21.5%;
    width: 40rem;
  }
}
.p-bg__deco[data-deco="7"] {
  --c-polygon-opacity: 45%;
  --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;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="7"] {
    right: 2%;
    bottom: 12.5%;
    width: 80.1rem;
    translate: 50% 50%;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="7"] {
    top: 50%;
    right: -15%;
    width: 48.2rem;
    translate: 50% -50%;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="7"] {
    right: -27%;
  }
}
.p-bg__deco[data-deco="8"] {
  --c-polygon-color-percentage: 45%;
  --c-polygon-clip-path: polygon(100% 28.6%, 100% 85.43%, 37.86% 100%, 0% 56.32%, 40.98% 0%, 100% 28.6%);
  aspect-ratio: 1.026;
  translate: -50% 50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="8"] {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="8"] {
    bottom: 36.5%;
    left: 6.5%;
    width: 15rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="8"] {
    width: 12.3rem;
  }
}
.p-bg__deco[data-deco="9"] {
  --c-polygon-opacity: 45%;
  --c-polygon-clip-path: polygon(65.97% 88.97%, 17.78% 100%, 0% 48.26%, 10.97% 12.36%, 49.46% 0%, 100% 44.65%, 65.97% 88.97%);
  aspect-ratio: 1.128;
  translate: -50% 50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="9"] {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="9"] {
    bottom: 34%;
    left: -11%;
    width: 52rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="9"] {
    width: 42.3rem;
  }
}
.p-bg__deco[data-deco="10"] {
  --c-polygon-color-percentage: 69%;
  --c-polygon-clip-path: polygon(50.08% 100%, 0% 71.81%, 10.26% 10.77%, 62.73% 0%, 95.24% 31.69%, 100% 76.9%, 50.08% 100%);
  aspect-ratio: 1.081;
  translate: 50% 50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="10"] {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="10"] {
    right: 19.5%;
    bottom: 20.5%;
    width: 12rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="10"] {
    width: 9.5rem;
  }
}
.p-bg__deco[data-deco="11"] {
  --c-polygon-opacity: 45%;
  --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%);
  aspect-ratio: 0.877;
  translate: 50% 50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="11"] {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="11"] {
    right: -17%;
    bottom: 21%;
    width: 47rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="11"] {
    width: 41.6rem;
  }
}
.p-bg__deco[data-deco="12"] {
  --c-polygon-color-percentage: 45%;
  --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%);
  aspect-ratio: 1.16;
  translate: -50% 50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="12"] {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="12"] {
    bottom: 5%;
    left: 9.5%;
    width: 16.5rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="12"] {
    left: 11.5%;
    width: 14.8rem;
  }
}
.p-bg__deco[data-deco="13"] {
  --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%);
  aspect-ratio: 1.182;
  translate: -50% 50%;
}
@media (min-width: 1025px) {
  .p-bg__deco[data-deco="13"] {
    display: none;
  }
}
@media (max-width: 1024px) {
  .p-bg__deco[data-deco="13"] {
    bottom: 2%;
    left: -9.5%;
    width: 44rem;
  }
}
@media (max-width: 525px) {
  .p-bg__deco[data-deco="13"] {
    left: -21.5%;
    width: 40rem;
  }
}
@media (min-width: 1025px) {
  .p-bg__deco:is([data-deco="5"]) {
    display: none;
  }
  @container (aspect-ratio > 1) {
    .p-bg__deco:is([data-deco="4"], [data-deco="6"]) {
      display: none;
    }
  }
}
@media (max-width: 1024px) {
  .p-bg__deco:is([data-deco="1"], [data-deco="3"], [data-deco="5"], [data-deco="8"], [data-deco="10"], [data-deco="12"]) {
    display: none;
  }
}
@media (min-width: 526px) and (max-width: 1024px) {
  @container (aspect-ratio > 0.55) {
    .p-bg__deco:is([data-deco="4"], [data-deco="6"], [data-deco="9"], [data-deco="11"]) {
      display: none;
    }
  }
}
@media (max-width: 525px) {
  @container (aspect-ratio > 0.18) {
    .p-bg__deco:is([data-deco="4"], [data-deco="6"], [data-deco="9"], [data-deco="11"]) {
      display: none;
    }
  }
}

.p-side__inner {
  --c-tile-column-count: 1;
  --c-tile-gap: 5rem;
  justify-content: center;
}
@media (min-width: 526px) and (max-width: 1024px) {
  .p-side__inner {
    --c-tile-column-count: 2;
    --c-tile-column-gap: 3.5rem;
  }
}

.p-side-box {
  flex-grow: 0.35;
  padding: 3rem;
}
.p-side-box__header {
  --c-heading01-sub-size: 1.8rem;
  --c-heading01-border-width: 0.2rem;
  position: relative;
  margin-inline: auto;
  margin-top: 1rem;
  font-size: 2.3rem;
}
.p-side-box__header__deco {
  --c-polygon-parallax-speed: -0.75rem;
  --c-polygon-parallax-ratio: -10%;
  position: absolute;
  z-index: -1;
}
.p-side-box__header__deco:is(.p-side-box:nth-child(odd of .p-side-box) *) {
  --c-polygon-color: var(--color-palette-4);
  --c-polygon-color-percentage: 90%;
  --c-polygon-clip-path: polygon(62.11% 100%, 100% 77.68%, 91.05% 29.59%, 64.74% 0%, 20.52% 7.1%, 0% 28.4%, 8.42% 81.65%, 62.11% 100%);
  top: -0.8rem;
  left: -2rem;
  width: 2.8rem;
  aspect-ratio: 1.131;
}
.p-side-box__header__deco:is(.p-side-box:nth-child(odd of .p-side-box) *):where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-1);
}
.p-side-box__header__deco:is(.p-side-box:nth-child(even of .p-side-box) *) {
  --c-polygon-color: var(--color-palette-1);
  --c-polygon-color-percentage: 90%;
  --c-polygon-clip-path: polygon(42.28% 100%, 100% 77.68%, 91.05% 29.59%, 64.74% 0%, 0% 11.56%, 8.42% 81.65%, 42.28% 100%);
  top: -0.8rem;
  left: -2.6rem;
  width: 2.5rem;
  aspect-ratio: 1.131;
}
.p-side-box__header__deco:is(.p-side-box:nth-child(even of .p-side-box) *):where(body[data-theme-color=cafe] *) {
  --c-polygon-color: var(--color-palette-4);
}
.p-side-box__heading {
  margin-top: 0.2em;
  letter-spacing: 0.03em;
}
.p-side-box__body {
  margin-top: 3rem;
}
.p-side-box__list {
  font-size: 1.8rem;
}
.p-side-box__list:is(.p-side-box__item > *) {
  padding-left: 1.15em;
  margin-top: 0.75em;
  font-size: var(--font-size-md);
}
.p-side-box__item {
  padding-bottom: 0.45em;
}
.p-side-box__item:nth-child(n+2) {
  margin-top: 0.35em;
}
.p-side-box__link {
  display: block;
  line-height: 1.3;
}
.p-side-box__link:is(:not(.p-side-box__list .p-side-box__list *)) {
  padding-bottom: 0.45em;
  font-weight: bold;
  border-bottom: var(--border-xs) solid color-mix(in srgb, currentcolor 25%, #fff);
}
@media (any-hover: hover) {
  .p-side-box__link:is(:not(.p-side-box__list .p-side-box__list *)) {
    transition-duration: 0.2s;
    transition-property: color, border-color;
  }
  .p-side-box__link:is(:not(.p-side-box__list .p-side-box__list *)):hover {
    color: var(--color-text-accent);
  }
}
.p-side-box__link:is(.p-side-box__list .p-side-box__list *) {
  color: color-mix(in srgb, currentcolor 75%, #fff);
}
@media (any-hover: hover) {
  .p-side-box__link:is(.p-side-box__list .p-side-box__list *) {
    transition-duration: 0.2s;
    transition-property: color;
  }
  .p-side-box__link:is(.p-side-box__list .p-side-box__list *):hover {
    color: var(--color-text-accent);
  }
}

.p-archive-title {
  margin-inline: auto;
  margin-bottom: var(--section-gap-sm);
}
.p-archive-title .c-heading01__main {
  text-transform: capitalize;
}

.p-post-card {
  --max-title-lines: 2;
  --max-excerpt-lines: 3;
  --tag-color: var(--color-palette-3);
}
.p-post-card:where(body[data-theme-color=rose] *) {
  --tag-color: var(--color-palette-4);
}
.p-post-card:where(body[data-theme-color=cafe] *) {
  --tag-color: var(--color-palette-4);
}
.p-post-card:where(body[data-theme-color=lagoon] *) {
  --tag-color: var(--color-palette-1);
}
@media (min-width: 526px) {
  .p-post-card {
    display: flex;
    column-gap: 3rem;
    align-items: start;
  }
}
@media (max-width: 525px) {
  .p-post-card {
    display: grid;
    row-gap: 2.15rem;
  }
}
.p-post-card:nth-child(n+2) {
  margin-top: var(--section-gap-xs);
}
@media (max-width: 525px) {
  .p-post-card:nth-child(n+2) {
    margin-top: var(--section-gap-sm);
  }
}
.p-post-card__thumb {
  width: 36rem;
  aspect-ratio: 3/2;
  overflow: hidden;
}
@media (max-width: 1024px) {
  .p-post-card__thumb {
    width: 20rem;
  }
}
@media (min-width: 526px) {
  .p-post-card__thumb {
    flex-shrink: 0;
  }
}
@media (max-width: 525px) {
  .p-post-card__thumb {
    width: 100%;
  }
}
@media (any-hover: hover) {
  .p-post-card__thumb {
    background-color: var(--color-bg-base);
  }
  .p-post-card__thumb img {
    transition: opacity 0.25s;
  }
  .p-post-card__thumb:hover img {
    opacity: 0.8;
  }
}
.p-post-card__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.p-post-card__body {
  display: grid;
  row-gap: 1.75rem;
  align-content: start;
}
@media (min-width: 1025px) {
  .p-post-card__body {
    padding-top: 1.25rem;
  }
}
@media (max-width: 1024px) {
  .p-post-card__body {
    row-gap: 0.85rem;
  }
}
@media (max-width: 525px) {
  .p-post-card__body {
    row-gap: 1.15rem;
  }
}
.p-post-card__meta {
  display: flex;
  gap: 1rem;
}
.p-post-card__date {
  flex-shrink: 0;
  margin-top: 0.3rem;
  font-family: var(--font-maru);
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.03em;
}
@media (max-width: 525px) {
  .p-post-card__date {
    font-size: 1.6rem;
  }
}
.p-post-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  font-size: 1.4rem;
}
.p-post-card__tags__item {
  padding: 0.3em 0.5em 0.31em;
  line-height: 1;
  color: var(--color-text-contrast);
  background-color: var(--tag-color);
  border-radius: var(--radius-sm);
}
.p-post-card__title {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: var(--max-title-lines);
  font-family: var(--font-heading);
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  letter-spacing: 0.03em;
  word-break: break-all;
  -webkit-box-orient: vertical;
}
@media (max-width: 1024px) {
  .p-post-card__title {
    font-size: 1.8rem;
  }
}
@media (max-width: 525px) {
  .p-post-card__title {
    font-size: 1.6rem;
  }
}
@media (any-hover: hover) {
  .p-post-card__title > a {
    transition: opacity 0.2s;
  }
  .p-post-card__title > a:hover {
    opacity: 0.75;
  }
}
.p-post-card__excerpt {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: var(--max-excerpt-lines);
  line-height: 1.9;
  word-break: break-all;
  -webkit-box-orient: vertical;
}

.p-pagination {
  --button-size: 2em;
  --key-color: var(--color-text-heading);
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
  justify-content: center;
  margin-top: var(--section-gap-sm);
  font-size: 2.4rem;
  font-weight: bold;
}
.p-pagination:where(body[data-theme-color=sky] *) {
  --hover-bg-color: color-mix(in srgb, var(--color-palette-3) 20%, #fff);
}
.p-pagination:where(body[data-theme-color=rose] *) {
  --hover-bg-color: color-mix(in srgb, var(--color-palette-4) 20%, #fff);
}
@media (max-width: 1024px) {
  .p-pagination {
    font-size: 2.1rem;
  }
}
@media (max-width: 525px) {
  .p-pagination {
    font-size: 1.9rem;
  }
}
.p-pagination > .page-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--button-size);
  height: var(--button-size);
  line-height: 1;
  color: var(--key-color);
  text-align: center;
  background: var(--color-text-contrast);
  border: 0.2rem solid var(--key-color);
}
@media (any-hover: hover) {
  .p-pagination > .page-numbers[href] {
    transition-duration: 0.2s;
    transition-property: background-color;
  }
  .p-pagination > .page-numbers[href]:hover {
    background-color: var(--hover-bg-color, color-mix(in srgb, var(--key-color) 12%, #fff));
  }
}
.p-pagination > .page-numbers.current {
  color: var(--color-text-contrast);
  pointer-events: none;
  background-color: var(--key-color);
}
.p-pagination > .page-numbers.dots {
  font-family: var(--font-base);
  border: none;
}

.p-post {
  --tag-color: var(--color-palette-3);
}
.p-post:where(body[data-theme-color=cafe] *) {
  --tag-color: var(--color-palette-4);
}
.p-post:where(body[data-theme-color=lagoon] *) {
  --tag-color: var(--color-palette-1);
}
.p-post__header {
  padding-bottom: 2rem;
  margin-bottom: var(--section-gap-xs);
}
.p-post__meta {
  display: flex;
  gap: 1rem;
  align-items: center;
}
.p-post__date {
  flex-shrink: 0;
  margin-top: 0.07em;
  font-family: var(--font-maru);
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 0.03em;
}
.p-post__category {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5em;
  font-size: 1.4rem;
}
.p-post__category__link {
  padding: 0.3em 0.5em 0.31em;
  line-height: 1;
  color: var(--color-text-contrast);
  background-color: var(--tag-color);
  border-radius: var(--radius-sm);
}
@media (any-hover: hover) {
  .p-post__category__link {
    transition: opacity 0.15s;
  }
  .p-post__category__link:hover {
    opacity: 0.8;
  }
}
.p-post__title {
  display: block;
  margin-top: 1.5rem;
  font-family: var(--font-heading);
  font-size: 2.6rem;
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  letter-spacing: 0.03em;
  word-break: break-all;
  border-bottom: var(--border-md) solid var(--color-soft-khaki);
}
@media (max-width: 525px) {
  .p-post__title {
    font-size: 2.1rem;
  }
}
.p-post__eyecatch {
  width: 100%;
  margin-top: 2rem;
  overflow: hidden;
}
.p-post__eyecatch > img {
  display: block;
  width: 100%;
}
@media (max-width: 1024px) {
  .p-post__main {
    margin-inline: calc((var(--current-container-padding) - var(--container-padding-sm)) * -1);
  }
}
@media (max-width: 525px) {
  .p-post__main {
    padding-block: 3.5rem;
    padding-inline: 2rem;
    margin-inline: calc(var(--current-container-padding) * -1);
  }
}
.p-post__body h1,
.p-post__body h2,
.p-post__body h3,
.p-post__body h4,
.p-post__body h5,
.p-post__body h6 {
  --bar-width: 8px;
  position: relative;
  margin-bottom: 1em;
  font-family: var(--font-heading);
  font-weight: bold;
  line-height: 1.5;
  color: var(--color-text-heading);
  letter-spacing: 0.08em;
}
.p-post__body h1 {
  font-size: 2.3rem;
}
.p-post__body h2 {
  font-size: 2.1rem;
}
.p-post__body h3 {
  font-size: 1.95rem;
}
.p-post__body h4 {
  font-size: 1.8rem;
}
.p-post__body h5 {
  font-size: 1.65rem;
}
.p-post__body h6 {
  font-size: 1.5rem;
}
.p-post__body img {
  max-width: 100%;
}
.p-post__body iframe {
  max-width: 100%;
  margin-block: 1.5rem;
}
.p-post__body iframe[src^="https://www.youtube.com/"] {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
.p-post__body iframe[src^="https://www.google.com/maps/"] {
  width: 100%;
  height: auto;
  max-height: 50rem;
  aspect-ratio: 1.35/1;
}
.p-post__body ul,
.p-post__body ol {
  list-style: none;
}
.p-post__body ul {
  --prefix: "・";
}
.p-post__body ol {
  --prefix: counter(list) ".";
  counter-reset: list;
}
.p-post__body ol > li {
  counter-increment: list;
}
.p-post__body li {
  position: relative;
  padding-left: 1.3em;
}
.p-post__body li::before {
  position: absolute;
  top: 0;
  left: 0;
  content: var(--prefix);
}
.p-post__body p + p {
  margin-top: 1em;
}
.p-post__body a {
  text-decoration: underline;
  text-underline-offset: 0.15em;
  transition: opacity 0.2s;
}
.p-post__body a:hover {
  opacity: 0.65;
}
.p-post__body hr {
  height: 0.12rem;
  margin-block: 1em;
  background-color: color-mix(in srgb, var(--color-text-accent) 65%, #fff);
  border: none;
}
.p-post__body figure {
  width: fit-content;
}
.p-post__body figcaption {
  text-align: center;
}
.p-post__footer {
  margin-top: 5rem;
}

.p-post-nav {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 2rem;
  justify-content: space-between;
}
@media (max-width: 525px) {
  .p-post-nav {
    column-gap: 0.75rem;
  }
}
.p-post-nav__link {
  width: -webkit-fill-available;
  width: -moz-available;
  width: stretch;
  text-align: center;
}
@media (max-width: 525px) {
  .p-post-nav__link {
    column-gap: 0.35em;
    padding-inline: 1em;
    font-size: 1.2rem;
  }
}
.p-post-nav__link.is-prev {
  grid-column: 1/2;
}
.p-post-nav__link.is-index {
  grid-column: 2/3;
  justify-self: center;
}
.p-post-nav__link.is-next {
  grid-column: 3/4;
}