/* ==========================================================================
   editorial.css — GO OUT 風エディトリアル再スキン（下層ページ共通）
   style.css の後に読み込んで上書きする想定
   ========================================================================== */

:root{
  --font-display: 'Anton', 'Noto Sans JP', sans-serif;
  --font-grotesk: 'Archivo', 'Montserrat', sans-serif;
  --font-jp-bold: 'Noto Sans JP', sans-serif;
}

/* ── 見出し・キッカー ── */
.eyebrow{
  font-family:var(--font-grotesk); font-weight:800; font-size:11px;
  letter-spacing:.2em; text-transform:uppercase; color:var(--pink);
}
.section--dark .eyebrow{ color:var(--green-light); }

.section-title{
  font-family:var(--font-jp-bold); font-weight:900;
  font-size:clamp(1.6rem,3.4vw,2.4rem); line-height:1.32; letter-spacing:.01em;
  color:var(--green-dark);
}
.section--dark .section-title{ color:#fff; }

.lead-quote{
  font-family:var(--font-jp-bold); font-weight:700;
  font-size:clamp(1.15rem,2.3vw,1.6rem); line-height:1.65; color:var(--green-dark);
  border-left:3px solid var(--pink); padding-left:1.2rem; font-style:normal;
}
.section--dark .lead-quote{ color:var(--green-light); border-left-color:var(--pink); }

/* ── ページヒーロー（フルブリード写真） ── */
.page-hero{
  min-height:clamp(420px,60vh,600px);
  display:flex; align-items:flex-end;
  padding:calc(var(--header-h) + 4rem) 0 3.2rem;
  background-size:cover !important; background-position:center !important;
  position:relative; overflow:hidden;
}
.page-hero::before{ display:none !important; }
.page-hero::after{
  content:''; position:absolute; inset:0; z-index:0; pointer-events:none;
  background:linear-gradient(180deg, rgba(15,30,22,.4) 0%, rgba(15,30,22,.15) 42%, rgba(15,30,22,.82) 100%);
}
.page-hero .container{ position:relative; z-index:1; }
.page-hero h1{
  font-family:var(--font-jp-bold); font-weight:900;
  font-size:clamp(2.2rem,5.2vw,3.8rem); line-height:1.14; letter-spacing:.02em;
  color:#fff; text-shadow:0 2px 24px rgba(0,0,0,.4);
}
.page-hero h1 small{
  font-family:var(--font-display); font-weight:400;
  letter-spacing:.05em; color:var(--green-light); text-shadow:none;
}
.page-hero .eyebrow{ color:var(--green-light); }
.page-hero__lede{ color:rgba(255,255,255,.86); }
.breadcrumb, .breadcrumb a{ color:rgba(255,255,255,.75); }

/* ── ボタン（角ばり＋ホバーリフト） ── */
.btn{
  border-radius:2px !important;
  font-family:var(--font-jp-bold); font-weight:700;
  transition:transform .2s, background .2s, border-color .2s, color .2s, box-shadow .2s;
}
.btn:hover{ transform:translateY(-2px); }

/* ── service-card（番号付きカード） ── */
.service-card{
  border-radius:2px;
  border:1.5px solid rgba(52,94,70,.12);
  transition:transform .22s, box-shadow .22s, border-color .22s;
}
.service-card:hover{ transform:translateY(-4px); box-shadow:0 16px 34px rgba(0,0,0,.1); border-color:var(--green-mid); }
.section--dark .service-card{ border-color:rgba(255,255,255,.14); }
.service-card__num{
  font-family:var(--font-display); font-weight:400;
  font-size:2.4rem; line-height:1; color:var(--pink);
}
.section--dark .service-card__num{ color:var(--green-light); }
.service-card__title{ font-family:var(--font-jp-bold); font-weight:800; }

/* ── fact-card ── */
.fact-card{ border-radius:2px; }
.fact-card__num{ font-family:var(--font-display); font-weight:400; color:var(--pink); letter-spacing:.01em; }
.section--dark .fact-card__num{ color:var(--green-light); }

/* ── feature-row のビジュアル枠 ── */
.feature-row__visual{
  border-radius:2px; font-size:3.2rem;
  background:var(--green-pale);
  border:1.5px solid rgba(52,94,70,.12);
}
.section--dark .feature-row__visual{ background:rgba(255,255,255,.05); border-color:rgba(255,255,255,.14); }
.feature-row__body h3{ font-family:var(--font-jp-bold); font-weight:800; color:var(--green-dark); }
.section--dark .feature-row__body h3{ color:var(--green-light); }

/* ── menu-item ── */
.menu-item{ border-radius:2px; overflow:hidden; }
.menu-item__photo{ border-radius:0; font-size:3rem; }
.menu-item__name{ font-family:var(--font-jp-bold); font-weight:800; }
.menu-item__price{ font-family:var(--font-grotesk); font-weight:700; }
.badge{ font-family:var(--font-grotesk); font-weight:700; letter-spacing:.1em; border-radius:2px; }

/* ── timeline / strengths / vision（About） ── */
.timeline-item__year{ font-family:var(--font-grotesk); font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.timeline-item__title{ font-family:var(--font-jp-bold); font-weight:800; }
.strength-item{ border-radius:2px; }
.strength-item__title{ font-family:var(--font-jp-bold); font-weight:800; }
.vision-box blockquote{ font-family:var(--font-jp-bold); font-weight:900; }
.profile-body h2{ font-family:var(--font-jp-bold); font-weight:900; }
.profile-body__name-en{ font-family:var(--font-display); }

/* ── contact form ── */
.contact-info__label{ font-family:var(--font-grotesk); font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.contact-form{ border-radius:2px !important; }
.form-control{ border-radius:2px !important; }
label{ font-family:var(--font-jp-bold); font-weight:700; }

/* ── フッターロゴ画像 ── */
.footer-logo__img{ height:40px; width:auto; display:block; filter:brightness(0) invert(1); }

/* ==========================================================================
   フルブリード画像バンド（下層ページ用）
   ========================================================================== */
.imgband{ position:relative; min-height:clamp(300px,46vh,460px); display:flex; align-items:center; overflow:hidden; }
.imgband__media{ position:absolute; left:0; right:0; top:-14%; height:128%; z-index:0; background-size:cover; background-position:center; will-change:transform; }
.imgband__scrim{ position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, rgba(15,30,22,.72) 0%, rgba(15,30,22,.3) 55%, rgba(15,30,22,.05) 100%); }
.imgband__caption{ position:relative; z-index:2; color:#fff; }
.imgband__kicker{ font-family:var(--font-grotesk); font-weight:800; font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--green-light); }
.imgband__quote{ font-family:var(--font-jp-bold); font-weight:900; font-size:clamp(1.6rem,3.6vw,2.6rem); line-height:1.32; margin-top:.7rem; text-shadow:0 2px 24px rgba(0,0,0,.35); }

/* ── 写真を入れたビジュアル枠（feature-row / menu） ── */
.feature-row__visual{ overflow:hidden; padding:0; min-height:clamp(240px,28vw,340px); background:var(--base); }
.feature-row__visual img{ width:100%; height:100%; object-fit:cover; }
.menu-item__photo{ overflow:hidden; padding:0; }
.menu-item__photo img{ width:100%; height:100%; object-fit:cover; min-height:180px; }

/* ── 4項目の fact-grid（SP:2×2 / PC:4列） ── */
.fact-grid.fact-grid--4{ grid-template-columns:repeat(2,1fr); }
@media(min-width:769px){ .fact-grid.fact-grid--4{ grid-template-columns:repeat(4,1fr); } }

/* ── INFORMATION / お知らせ（アイキャッチなしリスト） ── */


@media(max-width:600px){
}
