/* 会社情報の 1 枚 (corp.final-ai.com) — 案 A 星海の上に重ねる。シンプルに、事実だけを読みやすく */
[data-look="a"] .corp { max-width: 960px; margin: 0 auto; padding: 0 24px; }
@media (min-width: 900px) { [data-look="a"] .corp { padding: 0 56px; } }
[data-look="a"] .corp-hero { display: flex; flex-direction: column; align-items: center; text-align: center; padding: clamp(128px, 18vw, 184px) 0 clamp(56px, 8vw, 88px); }
[data-look="a"] .corp-mark { width: clamp(96px, 12vw, 132px); height: auto; margin-bottom: 28px; filter: drop-shadow(0 0 18px rgba(200,215,240,.2)); }
[data-look="a"] .brain-lg { width: min(88vw, 440px); margin: -24px 0 8px; filter: drop-shadow(0 0 24px rgba(200,215,240,.18)); }
[data-look="a"] .brain-md { width: min(62vw, 280px); margin: -16px 0 12px; filter: drop-shadow(0 0 20px rgba(200,215,240,.16)); }
[data-look="a"] .corp-kind { font-family: var(--mono); font-weight: 300; font-size: 11px; letter-spacing: .4em; padding-left: .4em; color: var(--fg3); margin-bottom: 14px; }
[data-look="a"] .corp-name { font-weight: 300; font-size: clamp(30px, 5.4vw, 56px); line-height: 1.3; letter-spacing: .1em; margin-right: -.1em; background: linear-gradient(180deg, #fff 30%, #b9c3d1 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
[data-look="a"] .corp-en { margin-top: 8px; font-family: var(--num); font-weight: 300; font-size: 14px; letter-spacing: .24em; color: var(--fg2); }
[data-look="a"] .corp-mission { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--line2); font-size: 15px; letter-spacing: .22em; color: var(--fg); }
[data-look="a"] .corp-sec { padding: clamp(40px, 6vw, 64px) 0; }
[data-look="a"] .corp-h { display: flex; align-items: center; gap: 14px; font-weight: 400; font-size: clamp(20px, 2.4vw, 26px); letter-spacing: .12em; margin-bottom: 8px; }
[data-look="a"] .corp-h .no { font-family: var(--mono); font-weight: 300; font-size: 11px; letter-spacing: .2em; color: var(--mk); }
[data-look="a"] .corp .company { margin-top: 20px; }
[data-look="a"] .corp .company dd { line-height: 1.85; }
[data-look="a"] .corp .company .sub { display: block; font-size: 13px; color: var(--fg2); }
[data-look="a"] .corp .company.en div { grid-template-columns: 9.5em 1fr; font-family: var(--num); font-weight: 300; letter-spacing: .02em; }
@media (min-width: 900px) { [data-look="a"] .corp .company.en div { grid-template-columns: 12em 1fr; } }
[data-look="a"] .biz li { position: relative; padding-left: 1.2em; }
[data-look="a"] .biz li::before { content: ""; position: absolute; left: 0; top: .9em; width: 6px; height: 6px; border-radius: 50%; border: 1px solid var(--mk); }
[data-look="a"] .corp-card { display: grid; gap: 8px; margin-top: 20px; padding: 28px; border-radius: 20px; border: 1px solid var(--line2); text-decoration: none; background: radial-gradient(420px 220px at 0% 0%, rgba(190,205,230,.10), transparent 70%), rgba(255,255,255,.02); transition: border-color .3s, background .3s; }
[data-look="a"] .corp-card:hover { border-color: rgba(226,232,240,.5); background-color: rgba(255,255,255,.05); }
[data-look="a"] .corp-card-k { font-family: var(--mono); font-size: 11.5px; letter-spacing: .28em; color: var(--fg2); }
[data-look="a"] .corp-card-t { font-size: clamp(16px, 1.8vw, 19px); line-height: 1.9; }
[data-look="a"] .corp-card-go { font-size: 13px; letter-spacing: .12em; color: var(--mk); }
[data-look="a"] .corp ~ .foot { margin-top: 48px; }
[data-look="a"] .landing-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; text-align: center; padding-bottom: clamp(72px, 10vw, 120px); }
[data-look="a"] .landing-links .mail { flex-basis: 100%; margin-top: 6px; font-family: var(--mono); font-size: 13px; letter-spacing: .08em; color: var(--fg3); }
[data-look="a"] .landing .corp-hero { padding-bottom: clamp(40px, 6vw, 64px); }
[data-look="a"] .corp-card-d { font-size: 14px; line-height: 1.95; color: var(--fg2); }

/* 言葉の切替 (2026-09-29 daiki「デフォルトを英語、日本語切り替えボタン」)。英語が / 、日本語が /ja/ 。
   考え方の参考: nickautomatic「Simple language toggle」codepen.io/nickautomatic/pen/jbmwPB (JS なしで、キーボードとタッチで押せる切替)。
   作品のコードは CodePen に取得を断られたため写していない。見た目は承認済みの .btn-ghost の丸い細線を転用した */
[data-look="a"] .lang { display: inline-flex; align-items: center; gap: 2px; height: 38px; padding: 3px; border: 1px solid var(--line2); border-radius: 999px; background: rgba(255,255,255,.02); }
[data-look="a"] .lang a { display: inline-grid; place-items: center; height: 100%; min-width: 42px; padding: 0 11px; border-radius: 999px; font-size: 12.5px; line-height: 1; letter-spacing: .06em; text-decoration: none; color: var(--fg3); transition: color .2s, background .2s; }
[data-look="a"] .lang a:hover { color: var(--fg); }
[data-look="a"] .lang a[aria-current="page"] { color: var(--fg); background: rgba(226,232,240,.13); box-shadow: 0 0 0 1px rgba(226,232,240,.2) inset; }
[data-look="a"] .lang a[lang="en"] { font-family: var(--num); font-weight: 500; letter-spacing: .1em; }
[data-look="a"] .lang a[lang="ja"] { font-family: var(--jp); font-weight: 500; }
[data-look="a"] .bar .brand, [data-look="a"] .bar .lang, [data-look="a"] .bar .bar-cta { flex-shrink: 0; white-space: nowrap; }
/* 狭い画面 (iPhone の 375〜390px) でも 1 行に収める。ロゴ・札・お問い合わせを縮めず、余白と字間を詰める */
@media (max-width: 480px) {
  [data-look="a"] .bar { gap: 8px; }
  [data-look="a"] .bar-cta { padding: 0 12px !important; letter-spacing: .02em; }
  [data-look="a"] .lang a { min-width: 36px; padding: 0 8px; font-size: 12px; }
}
@media (max-width: 400px) { [data-look="a"] .brand .logo { height: 26px; } }
@media (max-width: 370px) { [data-look="a"] .brand .logo { height: 23px; } [data-look="a"] .bar-cta { font-size: 12px !important; padding: 0 10px !important; } }

/* 英語版の字 (Inter)。日本語の混ざる所だけ ZenKaku に戻す */
[data-look="a"]:lang(en) body { font-family: "InterV", "ZenKaku", "Helvetica Neue", Arial, sans-serif; letter-spacing: .005em; }
[data-look="a"]:lang(en) [lang="ja"] { font-family: var(--jp); }
[data-look="a"]:lang(en) .btn { font-family: var(--num); letter-spacing: .03em; }
[data-look="a"]:lang(en) .corp-name { letter-spacing: .04em; margin-right: -.04em; }
[data-look="a"]:lang(en) .corp-mission { font-weight: 300; font-size: 16px; letter-spacing: .06em; }
[data-look="a"]:lang(en) .corp-h { letter-spacing: .03em; }
[data-look="a"]:lang(en) .company div { grid-template-columns: 8.2em 1fr; }
[data-look="a"]:lang(en) .company dt { letter-spacing: .02em; }
[data-look="a"]:lang(en) .company dd { line-height: 1.7; }
[data-look="a"]:lang(en) .corp-card-t { line-height: 1.5; font-weight: 300; font-size: clamp(18px, 2vw, 21px); }
[data-look="a"]:lang(en) .corp-card-d { line-height: 1.75; }
@media (min-width: 900px) { [data-look="a"]:lang(en) .company div { grid-template-columns: 12em 1fr; } }
