/* ============================================================
   en-core.css — 英語版（/en/）で style.css を上書きするシート
   Loaded only by /en/ pages. Do NOT link from Japanese pages.

   日本語向けにチューニングされた指定（負の字間・詰めた行間・
   文字数基準の幅・折返し禁止）を、ラテン文字で破綻しない値に戻す。
   各ページのインライン <style> より後に評価される必要があるため、
   html[lang="en"] を付けて詳細度を上げている。
   ============================================================ */

/* ---- 字間: 日本語の大見出し用の詰めをラテン文字向けに緩める ---- */
html[lang="en"] .loader__mark,
html[lang="en"] .mobile-panel a,
html[lang="en"] .hero__title,
html[lang="en"] .section-title,
html[lang="en"] .section-title--one,
html[lang="en"] .section-title-large,
html[lang="en"] .trust__statement,
html[lang="en"] .metric strong,
html[lang="en"] .cap-card h3,
html[lang="en"] .industry h3,
html[lang="en"] .problem-row h3,
html[lang="en"] .process-list strong,
html[lang="en"] .contact__info span,
html[lang="en"] .contact__form h2,
html[lang="en"] .mobile-menu-link,
html[lang="en"] .page-hero-title,
html[lang="en"] .greeting-title,
html[lang="en"] .field-strip-title,
html[lang="en"] .feature-block-title,
html[lang="en"] .cta-banner-title,
html[lang="en"] .partner-row h3,
html[lang="en"] .sub-content h2,
html[lang="en"] .way-card h3,
html[lang="en"] .way-title,
html[lang="en"] .case-row h3 {
    letter-spacing: -.02em;
}

/* ---- 行間（見出し）: ディセンダ g / y / j が前の行と衝突しないように ---- */
html[lang="en"] .hero__title { line-height: .98; }
html[lang="en"] .section-title,
html[lang="en"] .section-title-large,
html[lang="en"] .page-hero-title,
html[lang="en"] .greeting-title,
html[lang="en"] .contact__form h2,
html[lang="en"] .cta-banner-title,
html[lang="en"] .way-title { line-height: 1.06; }
html[lang="en"] .trust__statement { line-height: 1.28; }
html[lang="en"] .cap-card h3,
html[lang="en"] .industry h3,
html[lang="en"] .problem-row h3,
html[lang="en"] .case-row h3,
html[lang="en"] .field-strip-title,
html[lang="en"] .feature-block-title,
html[lang="en"] .partner-row h3,
html[lang="en"] .way-card h3 { line-height: 1.22; }
html[lang="en"] .mobile-panel a,
html[lang="en"] .mobile-menu-link { line-height: 1.06; }

/* ---- 行間（本文）: 日本語向けの 1.8〜2.2 は英語では空きすぎる ---- */
html[lang="en"] .hero__lead,
html[lang="en"] .metric p,
html[lang="en"] .cap-card p,
html[lang="en"] .industry p,
html[lang="en"] .problem-row p,
html[lang="en"] .process-list p,
html[lang="en"] .pin__content p,
html[lang="en"] .contact__info p,
html[lang="en"] .mobile-panel p,
html[lang="en"] .mobile-menu-footer,
html[lang="en"] .page-hero-description,
html[lang="en"] .intro-text,
html[lang="en"] .greeting-text,
html[lang="en"] .feature-block-text,
html[lang="en"] .map-address,
html[lang="en"] .footer-address,
html[lang="en"] .footer-tel,
html[lang="en"] .footer-hours,
html[lang="en"] .footer-tagline,
html[lang="en"] .cta-banner-text,
html[lang="en"] .partner-row p,
html[lang="en"] .sub-content p,
html[lang="en"] .sub-content ul li,
html[lang="en"] .privacy-content p,
html[lang="en"] .privacy-content ul li,
html[lang="en"] .way-card p,
html[lang="en"] .ways-note,
html[lang="en"] .way-body > p,
html[lang="en"] .way-points li,
html[lang="en"] .case-row p {
    line-height: 1.7;
}

/* ---- service.html の一枚見出し ----
   日本語 12字を1行に収めるための nowrap。英語では確実に横溢れするため解除。 */
html[lang="en"] .section-title--one {
    white-space: normal;
    font-size: clamp(2rem, 6vw, 5.2rem);
    line-height: 1.04;
}

/* ---- hero: 12ch は英語だと数語しか入らない ---- */
html[lang="en"] .hero__title {
    max-width: 18ch;
    font-size: clamp(3rem, 8.6vw, 8.4rem);
}
@media (max-width: 720px) {
    html[lang="en"] .hero__title { font-size: clamp(2.6rem, 12.5vw, 4.4rem); }
}

/* ---- 5つの活かし方カード: 高さを内容依存にする ---- */
html[lang="en"] .way-card { min-height: auto; padding-bottom: 2rem; }
@media (min-width: 1025px) and (max-width: 1400px) {
    html[lang="en"] .ways-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* ---- 固定rem の左ラベル列: 英語ラベルは日本語より長い ---- */
html[lang="en"] .company-row { grid-template-columns: 18rem 1fr; }
html[lang="en"] .partner-row { grid-template-columns: 15rem 1.1fr 1fr; }
html[lang="en"] .section-heading { grid-template-columns: minmax(13rem, .85fr) minmax(0, 1.4fr); }
@media (max-width: 1024px) {
    html[lang="en"] .company-row,
    html[lang="en"] .partner-row,
    html[lang="en"] .section-heading { grid-template-columns: 1fr; }
}

/* ---- ナビ・フッター ---- */
html[lang="en"] .footer nav { flex-wrap: wrap; }


/* ---- service ページ: 英語の見出しは日本語より長いので寸法を分ける ---- */
html[lang="en"] .hero--service .hero__title {
    max-width: 24ch;
    font-size: clamp(1.9rem, 4.6vw, 4rem);
    line-height: 1.1;
    letter-spacing: -.04em;
}

html[lang="en"] .hero--service .hero__lead { max-width: 44rem; }

@media (max-width: 720px) {
    html[lang="en"] .hero--service .hero__title { font-size: clamp(1.7rem, 7vw, 2.4rem); }
    html[lang="en"] .hero--service .hero__lead br { display: none; }
}