.shikoh-project-page {
  --ink: #171717;
  --line: #d8d8d8;
  background: #fff;
  color: var(--ink);
  font-family: "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  margin: 0;
}

.shikoh-project-menu {
  background: transparent;
  border: 0;
  height: 48px;
  padding: 0;
  position: fixed;
  right: 28px;
  top: 26px;
  width: 54px;
  z-index: 10002;
}

.shikoh-project-menu i,
.shikoh-project-menu i::before,
.shikoh-project-menu i::after {
  background: var(--ink);
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  width: 32px;
}

.shikoh-project-menu i { left: 11px; top: 24px; }
.shikoh-project-menu i::before { top: -7px; }
.shikoh-project-menu i::after { top: 7px; }

.shikoh-project-overlay {
  background: rgba(255,255,255,.98);
  height: 0;
  inset: 0 0 auto;
  overflow: hidden;
  position: fixed;
  transition: height .6s ease;
  z-index: 10001;
}

.shikoh-project-overlay.open { height: 100vh; }
.shikoh-project-overlay nav { align-items: center; display: flex; gap: 7vw; height: 100%; justify-content: center; }
.shikoh-project-overlay a { color: var(--ink); font: 13px serif; letter-spacing: .2em; padding: 20px; text-decoration: none; writing-mode: vertical-rl; }
.shikoh-project-main { padding: 12vh 3vw 14vh; }
.shikoh-project-type { font: 11px/1.4 sans-serif; letter-spacing: .18em; text-transform: uppercase; }
.shikoh-project-title { font: 400 clamp(38px,6vw,86px)/1.15 serif; margin: 28px 0 70px; }
.shikoh-project-hero { display: block; margin-bottom: 7vw; width: 100%; }
.shikoh-project-video { aspect-ratio: 16/9; background: #111; margin-bottom: 7vw; }
.shikoh-project-video iframe,
.shikoh-project-video video { display: block; height: 100%; object-fit: contain; width: 100%; }
.shikoh-project-content { font: 14px/2 sans-serif; }
.shikoh-project-content .wp-block-gallery { gap: 3vw; margin: 7vw 0; }
.shikoh-project-content img { height: auto; width: 100%; }
.shikoh-project-footer { border-top: 1px solid var(--line); font: 10px sans-serif; letter-spacing: .12em; padding: 24px 3vw; }

@media (max-width: 767px) {
  .shikoh-project-menu { right: 12px; top: 16px; }
  .shikoh-project-overlay nav { flex-direction: column; gap: 8px; }
  .shikoh-project-overlay a { padding: 10px; writing-mode: horizontal-tb; }
  .shikoh-project-main { padding: 80px 20px 90px; }
}
