body.single-post .l-main {
  padding-top: var(--header-height);
}

.p-news-detail {
  overflow: hidden;
  background: var(--color-white);
  color: var(--color-heading);
  font-family: "Noto Sans JP", sans-serif;
}

.p-news-detail__header,
.p-news-detail__body,
.p-news-detail__navigation,
.p-news-detail__related-inner {
  width: 100%;
  max-width: calc(1040 * var(--to-rem) + var(--padding-inner) * 2);
  margin-inline: auto;
  padding-inline: var(--padding-inner);
}

.p-news-detail__header,
.p-news-detail__body {
  padding-top: calc(56 * var(--to-rem));
}

.p-news-detail__meta {
  display: flex;
  flex-wrap: wrap;
  gap: calc(16 * var(--to-rem));
  align-items: center;
}

.p-news-detail__date {
  color: var(--color-note);
  font-family: Jost, sans-serif;
  font-size: calc(15 * var(--to-rem));
  letter-spacing: 0.1em;
}

.p-news-detail__category {
  padding: calc(3 * var(--to-rem)) calc(12 * var(--to-rem));
  border: 1px solid currentcolor;
  font-size: calc(12 * var(--to-rem));
  letter-spacing: 0.06em;
}
.p-news-detail__category--notice {
  color: var(--color-navy);
}
.p-news-detail__category--works {
  color: var(--color-category-works);
}
.p-news-detail__category--recruit {
  color: var(--color-category-recruit);
}
.p-news-detail__category--media {
  color: var(--color-category-media);
}

.p-news-detail__title {
  margin: calc(22 * var(--to-rem)) 0 0;
  color: var(--color-heading);
  font-size: calc(31 * var(--to-rem));
  font-weight: 500;
  line-height: 1.65;
  letter-spacing: 0.03em;
}

.p-news-detail__hero {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: calc(480 * var(--to-rem));
  margin: calc(44 * var(--to-rem)) 0 0;
}
.p-news-detail__hero img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.p-news-detail__body p {
  margin: 0 0 1.9em;
  color: var(--color-body);
  font-size: calc(16 * var(--to-rem));
  line-height: 2.15;
}
.p-news-detail__body strong {
  color: var(--color-heading);
  font-weight: 500;
}
.p-news-detail__body h2 {
  margin: calc(56 * var(--to-rem)) 0 calc(22 * var(--to-rem));
  padding: 0 0 0 calc(16 * var(--to-rem));
  border: 0;
  border-left: calc(3 * var(--to-rem)) solid var(--color-navy);
  color: var(--color-heading);
  font-size: calc(22 * var(--to-rem));
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.04em;
}
.p-news-detail__body ul {
  margin: 0 0 1.9em;
  padding-left: 1.4em;
  list-style: disc;
  color: var(--color-body);
}
.p-news-detail__body li {
  margin: 0;
  color: var(--color-body);
  font-size: calc(16 * var(--to-rem));
  line-height: 2.15;
}
.p-news-detail__body h3 {
  margin: calc(40 * var(--to-rem)) 0 calc(16 * var(--to-rem));
  color: var(--color-heading);
  font-size: calc(19 * var(--to-rem));
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .p-news-detail__body h3 {
    margin-top: calc(32 * var(--to-rem));
    font-size: calc(18 * var(--to-rem));
  }
}
.p-news-detail__body h4 {
  margin: calc(32 * var(--to-rem)) 0 calc(12 * var(--to-rem));
  color: var(--color-heading);
  font-size: calc(17 * var(--to-rem));
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.04em;
}
@media screen and (max-width: 767px) {
  .p-news-detail__body h4 {
    margin-top: calc(28 * var(--to-rem));
    font-size: calc(16 * var(--to-rem));
  }
}
.p-news-detail__body ol {
  margin: 0 0 1.9em;
  padding-left: 1.4em;
  list-style: decimal;
  color: var(--color-body);
}
.p-news-detail__body a {
  color: var(--color-navy);
  text-decoration: underline;
  text-underline-offset: 0.2em;
  transition: opacity var(--duration);
}
@media (any-hover: hover) {
  .p-news-detail__body a:hover {
    opacity: 0.7;
  }
}
.p-news-detail__body blockquote {
  margin: 0 0 1.9em;
  padding: calc(20 * var(--to-rem)) calc(24 * var(--to-rem));
  border-left: calc(3 * var(--to-rem)) solid var(--color-line);
  background-color: var(--color-bg-soft);
}
.p-news-detail__body blockquote p {
  margin: 0;
}
.p-news-detail__body table {
  width: 100%;
  margin: 0 0 2em;
  border-collapse: collapse;
}
.p-news-detail__body th,
.p-news-detail__body td {
  padding: calc(14 * var(--to-rem)) calc(16 * var(--to-rem));
  border: 1px solid var(--color-line-weak);
  color: var(--color-body);
  font-size: calc(15 * var(--to-rem));
  line-height: 1.9;
  text-align: left;
}
.p-news-detail__body th {
  background-color: var(--color-bg-soft);
  color: var(--color-heading);
  font-weight: 500;
}

.p-news-detail__publication-table {
  overflow: visible;
  margin: 0 0 2em;
  border-top: 1px solid var(--color-line);
}
.p-news-detail__publication-table table {
  width: 100%;
  margin: 0;
  border: 0;
  border-collapse: collapse;
}
.p-news-detail__publication-table tr {
  display: flex;
  flex-wrap: wrap;
  gap: calc(20 * var(--to-rem));
  padding: calc(18 * var(--to-rem)) calc(4 * var(--to-rem));
  border-bottom: 1px solid var(--color-line-weak);
}
.p-news-detail__publication-table th,
.p-news-detail__publication-table td {
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
}
.p-news-detail__publication-table th {
  flex: 0 0 calc(130 * var(--to-rem));
  color: var(--color-heading);
  font-size: calc(14 * var(--to-rem));
  font-weight: 500;
}
.p-news-detail__publication-table td {
  flex: 1 1 calc(300 * var(--to-rem));
  color: var(--color-body);
  font-size: calc(15 * var(--to-rem));
  line-height: 1.9;
}

.p-news-detail__gallery {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: calc(16 * var(--to-rem));
  margin: calc(56 * var(--to-rem)) 0 0;
  padding: 0;
}
.p-news-detail__gallery figure {
  position: relative;
  overflow: hidden;
  width: 100% !important;
  aspect-ratio: 4/3;
  margin: 0;
}
.p-news-detail__gallery img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: 0;
  object-fit: cover;
}

.p-news-detail__project-text {
  margin-top: calc(56 * var(--to-rem)) !important;
}

.p-news-detail__project-buttons {
  margin-top: 0;
}
.p-news-detail__project-buttons .wp-block-button__link {
  display: inline-flex;
  gap: calc(12 * var(--to-rem));
  align-items: center;
  padding: calc(16 * var(--to-rem)) calc(36 * var(--to-rem));
  border: 1px solid var(--color-border-button);
  border-radius: 0;
  background: var(--color-white);
  color: var(--color-heading);
  font-size: calc(14 * var(--to-rem));
  letter-spacing: 0.04em;
  text-decoration: none;
  transition: border-color 0.2s, background-color 0.2s, color 0.2s;
}
@media (any-hover: hover) {
  .p-news-detail__project-buttons .wp-block-button__link:hover {
    border-color: var(--color-navy);
    background: var(--color-navy);
    color: var(--color-white);
    opacity: 1;
  }
}

.p-news-detail__project-arrow {
  flex: none;
  width: calc(17 * var(--to-rem));
  height: calc(17 * var(--to-rem));
  stroke: currentcolor;
  stroke-width: 1.6;
}

.p-news-detail__navigation {
  padding-block: calc(88 * var(--to-rem)) calc(130 * var(--to-rem));
}

.p-news-detail__related {
  padding-block: calc(88 * var(--to-rem));
  background-color: var(--color-bg-dark);
}

.p-news-detail__related .p-news-detail__related-en,
.p-news-detail__related .p-news-detail__related-ja {
  color: var(--color-white);
}

.p-news-detail__navigation-inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: calc(20 * var(--to-rem));
  align-items: center;
  padding: calc(26 * var(--to-rem)) 0;
  border-top: 1px solid var(--color-line);
  border-bottom: 1px solid var(--color-line);
}

.p-news-detail__navigation-link,
.p-news-detail__back {
  display: inline-flex;
  gap: calc(12 * var(--to-rem));
  align-items: center;
  color: var(--color-label);
  font-size: calc(14 * var(--to-rem));
  letter-spacing: 0.04em;
  text-decoration: none;
}
.p-news-detail__navigation-link svg,
.p-news-detail__back svg {
  stroke: var(--color-navy);
  stroke-width: 1.6;
}

.p-news-detail__navigation-link--next {
  justify-self: end;
}

.p-news-detail__back {
  justify-content: center;
  padding: calc(14 * var(--to-rem)) calc(34 * var(--to-rem));
  border: 1px solid var(--color-border-button);
  background: var(--color-white);
  color: var(--color-heading);
  letter-spacing: 0.06em;
  transition: border-color 0.2s, background-color 0.2s, color 0.2s;
}
@media (any-hover: hover) {
  .p-news-detail__back:hover {
    border-color: var(--color-navy);
    background: var(--color-navy);
    color: var(--color-white);
    opacity: 1;
  }
  .p-news-detail__back:hover svg {
    stroke: var(--color-white);
  }
}

.p-news-detail__related-heading {
  margin-bottom: calc(32 * var(--to-rem));
}

.p-news-detail__related-en {
  display: block;
  color: var(--color-navy);
  font-family: Jost, sans-serif;
  font-size: calc(13 * var(--to-rem));
  letter-spacing: 0.24em;
}

.p-news-detail__related-ja {
  margin-block-start: calc(8 * var(--to-rem));
  color: var(--color-heading);
  font-size: calc(30 * var(--to-rem));
  font-weight: 500;
  letter-spacing: 0.06em;
}

.p-news-detail__related-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: calc(24 * var(--to-rem));
}

.p-news-detail__related-card {
  display: block;
  border: 1px solid var(--color-line);
  background: var(--color-white);
  text-decoration: none;
  transition: border-color 0.25s;
}
@media (any-hover: hover) {
  .p-news-detail__related-card:hover {
    border-color: var(--color-navy);
    opacity: 1;
  }
  .p-news-detail__related-card:hover img {
    scale: 1.05;
  }
}

.p-news-detail__related-image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16/10;
  background: var(--color-bg-thumb);
}
.p-news-detail__related-image img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.5s ease;
}

.p-news-detail__related-content {
  padding: calc(22 * var(--to-rem)) calc(24 * var(--to-rem)) calc(26 * var(--to-rem));
}

.p-news-detail__related-meta {
  display: flex;
  flex-wrap: wrap;
  gap: calc(12 * var(--to-rem));
  align-items: center;
}

.p-news-detail__related-date {
  color: var(--color-note);
  font-family: Jost, sans-serif;
  font-size: calc(13 * var(--to-rem));
  letter-spacing: 0.08em;
}

.p-news-detail__related-category {
  padding: calc(2 * var(--to-rem)) calc(10 * var(--to-rem));
  border: 1px solid currentcolor;
  font-size: calc(11 * var(--to-rem));
  letter-spacing: 0.06em;
}
.p-news-detail__related-category--notice {
  color: var(--color-navy);
}
.p-news-detail__related-category--works {
  color: var(--color-category-works);
}
.p-news-detail__related-category--recruit {
  color: var(--color-category-recruit);
}
.p-news-detail__related-category--media {
  color: var(--color-category-media);
}

.p-news-detail__related-title {
  margin: calc(12 * var(--to-rem)) 0 0;
  color: var(--color-heading);
  font-size: calc(15 * var(--to-rem));
  line-height: 1.75;
}

@media screen and (max-width: 767px) {
  .p-news-detail__header,
  .p-news-detail__body,
  .p-news-detail__navigation,
  .p-news-detail__related-inner {
    padding-right: calc(24 * var(--to-rem));
    padding-left: calc(24 * var(--to-rem));
  }
  .p-news-detail__header,
  .p-news-detail__body {
    padding-top: calc(40 * var(--to-rem));
  }
  .p-news-detail__title {
    font-size: calc(24 * var(--to-rem));
  }
  .p-news-detail__hero {
    height: calc(240 * var(--to-rem));
    margin-top: calc(32 * var(--to-rem));
  }
  .p-news-detail__body h2 {
    margin-top: calc(44 * var(--to-rem));
    font-size: calc(20 * var(--to-rem));
  }
  .p-news-detail__publication-table tr {
    gap: calc(8 * var(--to-rem));
  }
  .p-news-detail__publication-table th,
  .p-news-detail__publication-table td {
    flex-basis: 100%;
  }
  .p-news-detail__gallery {
    margin-top: calc(40 * var(--to-rem));
  }
  .p-news-detail__project-text {
    margin-top: calc(44 * var(--to-rem)) !important;
  }
  .p-news-detail__project-buttons .wp-block-button,
  .p-news-detail__project-buttons .wp-block-button__link {
    width: 100%;
  }
  .p-news-detail__project-buttons .wp-block-button__link {
    justify-content: center;
  }
  .p-news-detail__navigation {
    padding-block: calc(64 * var(--to-rem)) calc(96 * var(--to-rem));
  }
  .p-news-detail__related {
    padding-block: calc(64 * var(--to-rem));
  }
  .p-news-detail__navigation-inner {
    display: flex;
    flex-direction: column;
    gap: calc(14 * var(--to-rem));
    align-items: stretch;
  }
  .p-news-detail__navigation-link,
  .p-news-detail__back {
    justify-content: center;
    width: 100%;
    min-height: calc(48 * var(--to-rem));
  }
  .p-news-detail__navigation-spacer {
    display: none;
  }
  .p-news-detail__related-heading {
    flex-wrap: wrap;
  }
  .p-news-detail__related-grid {
    grid-template-columns: 1fr;
  }
}