@layer project {
  .p-article {
    padding-block: clamp(4rem, calc(80px / var(--design-width, 1440px) * 100vw), 5rem);
  }
  .p-article__inner {
    --minmax: max(calc(var(--content-min-margin, 24) * 1px), calc(var(--content-base-margin, 40) / var(--content-base-width, 1440) * 100vw));
    max-width: var(--content-max-width, 840px);
    margin-left: auto;
    margin-right: auto;
    width: calc(100% - var(--minmax) * 2);
  }
  .p-article__title {
    font-family: var(--ff-en), var(--ff-base);
    font-size: clamp(1.5rem, calc(28px / var(--design-width, 1440px) * 100vw), 1.75rem);
    font-weight: bold;
    text-align: center;
  }
  .p-article__content {
    margin-top: clamp(2rem, calc(40px / var(--design-width, 1440px) * 100vw), 2.5rem);
  }
  .p-article__content:not(:first-child) {
    margin-top: clamp(2rem, calc(48px / var(--design-width, 1440px) * 100vw), 3rem);
  }
  .p-article__content > *:not(:first-child) {
    margin-top: var(--stack-space, 1.5em) !important;
  }
  .p-article__content :where(h1, h2, h3, h4, h5, h6) {
    line-height: 1.4;
    font-weight: 700;
  }
  .p-article__content :where([class*=wp-block], figure, picture, img) {
    --stack-space: calc(44px / var(--fz-base, 16px) * 1rem);
  }
  .p-article__content :where([class*=wp-block], figure, picture, img) + * {
    --stack-space: calc(44px / var(--fz-base, 16px) * 1rem);
  }
  .p-article__content h1 {
    font-size: clamp(1.75rem, calc(32px / var(--design-width, 1440px) * 100vw), 2rem);
  }
  .p-article__content h2 {
    font-size: clamp(1.5rem, calc(28px / var(--design-width, 1440px) * 100vw), 1.75rem);
  }
  .p-article__content h3 {
    font-size: clamp(1.375rem, calc(24px / var(--design-width, 1440px) * 100vw), 1.5rem);
  }
  .p-article__content h4 {
    font-size: clamp(1.25rem, calc(22px / var(--design-width, 1440px) * 100vw), 1.375rem);
  }
  .p-article__content h5 {
    font-size: clamp(1.125rem, calc(20px / var(--design-width, 1440px) * 100vw), 1.25rem);
  }
  .p-article__content h6 {
    font-size: clamp(1rem, calc(18px / var(--design-width, 1440px) * 100vw), 1.125rem);
  }
  .p-article__content p {
    line-height: 1.8;
  }
  .p-article__content p:empty {
    display: none;
  }
}