.p-philosophy {
  margin-top: var(--section-gap-md);
}
.p-philosophy__lead {
  margin-block: 1em;
  font-family: var(--font-heading);
  font-size: var(--font-size-xxxl);
  color: var(--color-text-primary);
  text-align: center;
}
.p-philosophy__content {
  text-align: center;
}

.p-director-section {
  margin-top: var(--section-gap-md);
}
.p-director-section__list {
  display: grid;
  row-gap: var(--section-gap-sm);
  margin-top: var(--section-gap-sm);
}

.p-director__main {
  position: relative;
  display: grid;
  grid-template-areas: "portrait lead" "portrait content" "portrait sign";
  grid-template-columns: 1fr 1.1fr;
  column-gap: 3rem;
  container-type: inline-size;
}
@media (max-width: 1024px) {
  .p-director__main {
    grid-template-areas: "header" "portrait" "lead" "content" "sign" "career" "buttons";
    grid-template-columns: 1fr;
  }
}
.p-director__portrait {
  --animation-duration: 1.65s;
  --mask-size: 142% 142%;
  grid-area: portrait;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 50%;
}
@media (min-width: 1025px) {
  .p-director__portrait {
    margin-left: calc(50cqw - 48 * var(--vw));
  }
}
.p-director__portrait > img {
  display: block;
  width: 100%;
  aspect-ratio: 1/1;
  object-fit: cover;
}
.p-director__lead {
  grid-area: lead;
  margin-top: 5rem;
  font-family: var(--font-heading);
  font-size: var(--font-size-xxl);
  line-height: 1.85;
  color: var(--color-text-primary);
}
.p-director__content {
  grid-area: content;
  margin-top: 3rem;
}
.p-director__sign {
  grid-area: sign;
  margin-top: 5rem;
  margin-left: auto;
}
.p-director__career-list {
  --column-count: 2;
  --column-gap: 10rem;
  --row-gap: 7rem;
  margin-top: var(--section-gap-sm);
}
@media (min-width: 1025px) {
  .p-director__career-list {
    padding-inline: 5rem;
  }
}
@media (max-width: 1024px) {
  .p-director__career-list {
    --column-count: 1;
    --row-gap: 3.5rem;
  }
}
.p-director__career-list__item[data-career-size=wide] {
  width: 100%;
}
@media (min-width: 1025px) {
  .p-director__career-list .c-career__list:is([data-career-size=wide] *) {
    column-count: 2;
    column-gap: calc(var(--column-gap) + var(--left-gap));
  }
}

.p-member-section {
  margin-top: var(--section-gap-md);
}
.p-member-section__heading {
  margin-bottom: var(--section-gap-sm);
}
.p-member-section__list {
  display: grid;
  row-gap: var(--section-gap-sm);
}
@media (max-width: 1024px) {
  .p-member-section__list {
    row-gap: var(--section-gap-md);
  }
}

.p-member__sign {
  color: var(--color-text-primary);
}
.p-member__lead {
  margin-top: 5rem;
  font-family: var(--font-serif);
  font-size: var(--font-size-xl);
  letter-spacing: 0.1em;
}
.p-member__content {
  margin-top: 2.5rem;
}
.p-member__career-list {
  display: grid;
  row-gap: 3.5rem;
  margin-top: 3.5rem;
}

.p-group {
  padding-block: var(--section-gap-md);
  margin-top: var(--section-gap-md);
}
.p-group__message {
  margin-bottom: 5rem;
  text-align: center;
}
.p-group__gallery {
  display: flex;
  flex-direction: column;
  gap: 5rem;
  align-items: center;
}
@media (min-width: 1025px) {
  .p-group__gallery {
    width: 80%;
    margin-inline: auto;
  }
}

.p-recruit {
  margin-top: var(--section-gap-md);
}
.p-recruit__header {
  margin-bottom: var(--section-gap-sm);
}
.p-recruit__message {
  margin-top: 5rem;
  text-align: center;
}
.p-recruit__table {
  --border-color: rgb(var(--color-text-base-rgb) / 20%);
  max-width: 72rem;
  margin-inline: auto;
}