/* ═══════════════════════════════════════════════════════
   私たちについて（/aboutus/）ページ専用スタイル
   common.css のトークンを利用。共通クロームは chrome-b.css。
   ═══════════════════════════════════════════════════════ */

.au-wrap{color:var(--c-ink);font-family:var(--f-body)}

/* 共通ボタンの描画保証（common.css 未定義時のフォールバック含む） */
.au-wrap .btn-primary,.au-wrap .btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--f-display);font-weight:var(--fw-m);font-size:var(--t-base);border-radius:var(--r-full);transition:all var(--dur-fast) var(--ease-out)}
.au-wrap .btn-primary{background:var(--c-indigo);color:#fff;padding:14px 28px;box-shadow:var(--sh-color-l)}
.au-wrap .btn-primary:hover{background:var(--c-indigo-d)}
.au-wrap .btn-secondary{background:#fff;color:var(--c-ink);padding:13px 27px;border:1.5px solid var(--c-line)}
.au-wrap .btn-secondary:hover{border-color:var(--c-ink-3)}
.au-wrap .au-ico{width:26px;height:26px;display:block;flex:none}

/* 共通セクション */
.au-section{padding:var(--sp-24) 0}
.au-section.alt{background:var(--c-bg-alt)}
.au-section.deep{background:var(--c-bg-deep)}
.au-head{max-width:720px;margin:0 auto var(--sp-12);text-align:center}
.au-head.left{text-align:left;margin-left:0}
.au-title{font-family:var(--f-display);font-size:var(--t-2xl);font-weight:var(--fw-b);line-height:var(--lh-snug);letter-spacing:var(--ls-snug);color:var(--c-ink)}
.au-sub{font-size:var(--t-md);color:var(--c-ink-3);line-height:var(--lh-relax);margin-top:var(--sp-4)}
.au-link{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-display);font-size:var(--t-sm);font-weight:var(--fw-sb);color:var(--c-indigo);transition:gap var(--dur-fast) var(--ease-out)}
.au-link:hover{gap:10px}
.au-link::after{content:'→'}

/* ── ヒーロー ── */
.au-hero{position:relative;overflow:hidden;padding:var(--sp-24) 0;background:#101C36;isolation:isolate;min-height:clamp(440px,58vh,640px);display:flex;align-items:center}
.au-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.au-hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(16,28,54,.92) 0%,rgba(16,28,54,.68) 50%,rgba(16,28,54,.34) 100%)}
.au-hero-inner{position:relative;z-index:2;width:100%;max-width:var(--container);margin:0 auto;padding:0 var(--sp-6)}
.au-hero h1{font-family:var(--f-display);font-size:clamp(34px,5vw,60px);font-weight:var(--fw-b);line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:#fff;max-width:16em;margin-top:var(--sp-6)}
.au-hero h1 em{font-style:normal;background:linear-gradient(135deg,#8FC4FF,#C9B8FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.au-hero-lead{font-size:var(--t-md);color:rgba(255,255,255,.82);line-height:var(--lh-relax);max-width:640px;margin-top:var(--sp-6)}
.au-hero-means{margin-top:var(--sp-6);font-family:var(--f-display);font-size:var(--t-xl);font-weight:var(--fw-b);color:#fff;line-height:var(--lh-snug);letter-spacing:var(--ls-snug);max-width:640px}
.au-hero-means span{display:block;font-family:var(--f-display);font-size:var(--t-xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wider);text-transform:uppercase;color:#9EC5FF;margin-bottom:var(--sp-3)}
.au-hero-means em{font-style:normal;background:linear-gradient(135deg,#8FC4FF,#C9B8FF);-webkit-background-clip:text;background-clip:text;color:transparent}
.au-hero-ctas{display:flex;gap:var(--sp-3);flex-wrap:wrap;margin-top:var(--sp-8)}
.au-hero .eyebrow{color:rgba(255,255,255,.72)}
.au-hero .btn-secondary{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.4)}
.au-hero .btn-secondary:hover{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.7)}

/* ── MVV（理念）── */
.au-mvv{max-width:860px;margin:0 auto;text-align:center}
.au-mvv-mission{font-family:var(--f-serif);font-size:clamp(26px,3.4vw,42px);line-height:1.4;color:var(--c-ink);letter-spacing:.01em}
.au-mvv-mission b{background:var(--c-grad);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:inherit}
.au-mvv-concept{font-size:var(--t-md);color:var(--c-ink-3);line-height:var(--lh-relax);margin-top:var(--sp-6)}
.au-mvv-actions{display:flex;gap:var(--sp-4);flex-wrap:wrap;justify-content:center;margin-top:var(--sp-8)}

/* ── 経営者メッセージ ── */
.au-ceo{display:grid;grid-template-columns:220px 1fr;gap:var(--sp-12);align-items:center;max-width:960px;margin:0 auto}
.au-ceo-photo{aspect-ratio:3/4;border-radius:var(--r-2xl);background:linear-gradient(160deg,#E8F0FD,#EDE7FF);border:1px solid var(--c-line);display:flex;align-items:flex-end;justify-content:center;overflow:hidden;position:relative}
.au-ceo-photo span{font-family:var(--f-display);font-size:var(--t-xs);font-weight:var(--fw-b);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--c-ink-4);padding:var(--sp-4);text-align:center}
.au-ceo-photo img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.au-ceo-quote{font-family:var(--f-display);font-size:var(--t-xl);font-weight:var(--fw-b);line-height:1.5;letter-spacing:var(--ls-snug);color:var(--c-ink)}
.au-ceo-body{font-size:var(--t-base);color:var(--c-ink-2);line-height:var(--lh-relax);margin-top:var(--sp-5)}
.au-ceo-name{margin-top:var(--sp-6);font-family:var(--f-display)}
.au-ceo-name b{display:block;font-size:var(--t-md);font-weight:var(--fw-b);color:var(--c-ink)}
.au-ceo-name span{font-size:var(--t-sm);color:var(--c-ink-3)}

/* ── 数字 ── */
.au-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-5)}
.au-stat{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-2xl);padding:var(--sp-8) var(--sp-6);text-align:center}
.au-stat-num{font-family:var(--f-display);font-size:var(--t-3xl);font-weight:var(--fw-xb);line-height:1;letter-spacing:var(--ls-tight);background:var(--c-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.au-stat-num small{font-size:var(--t-lg);font-weight:var(--fw-b);-webkit-text-fill-color:currentColor;color:var(--c-ink-3)}
.au-stat-label{font-size:var(--t-sm);color:var(--c-ink-3);margin-top:var(--sp-3);line-height:var(--lh-normal)}

/* ── カンパニージャーニー ── */
.au-journey{margin:0 auto;border:1px solid var(--c-line);border-radius:var(--r-2xl);overflow:hidden;box-shadow:var(--sh-sm);background:#fff}
.au-journey img{width:100%;height:auto;display:block}

/* ── カルチャー ── */
.au-culture{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-6)}
.au-culture-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-2xl);padding:var(--sp-8);transition:box-shadow var(--dur-base) var(--ease-apple),transform var(--dur-base) var(--ease-apple)}
.au-culture-card:hover{box-shadow:var(--sh-lg);transform:translateY(-2px)}
.au-culture-ico{width:48px;height:48px;border-radius:var(--r-lg);background:var(--c-indigo-l);color:var(--c-indigo);display:grid;place-items:center;margin-bottom:var(--sp-5)}
.au-culture-ico .au-ico{width:26px;height:26px}
.au-culture-card h3{font-family:var(--f-display);font-size:var(--t-lg);font-weight:var(--fw-b);color:var(--c-ink);letter-spacing:var(--ls-snug);margin-bottom:var(--sp-3)}
.au-culture-card p{font-size:var(--t-base);color:var(--c-ink-3);line-height:var(--lh-relax)}
.au-culture-card .au-link{margin-top:var(--sp-4)}

/* ── 行動指針（Values）── */
.au-values{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-6)}
.au-value-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-2xl);padding:var(--sp-8);transition:box-shadow var(--dur-base) var(--ease-apple),transform var(--dur-base) var(--ease-apple)}
.au-value-card:hover{box-shadow:var(--sh-lg);transform:translateY(-2px)}
.au-value-name{font-family:var(--f-display);font-size:var(--t-xl);font-weight:var(--fw-xb);letter-spacing:var(--ls-snug);color:var(--c-ink);line-height:1;margin-top:var(--sp-2)}
.au-value-tag{font-family:var(--f-display);font-size:var(--t-md);font-weight:var(--fw-b);color:var(--c-indigo);margin:var(--sp-2) 0 var(--sp-5)}
.au-value-lines{display:flex;flex-direction:column;gap:var(--sp-2)}
.au-value-lines span{display:flex;gap:var(--sp-3);font-size:var(--t-sm);color:var(--c-ink-3);line-height:var(--lh-normal)}
.au-value-lines span::before{content:'';flex:none;width:5px;height:5px;border-radius:50%;background:var(--c-indigo);margin-top:8px}

/* ── セクション CTA（中央）── */
.au-cta-center{display:flex;justify-content:center;margin-top:var(--sp-12)}

/* ── 働き方 ── */
.au-work{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5)}
.au-work-item{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-xl);padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-3)}
.au-work-item .au-ico{width:26px;height:26px;color:var(--c-indigo)}
.au-work-item b{font-family:var(--f-display);font-size:var(--t-md);font-weight:var(--fw-sb);color:var(--c-ink)}
.au-work-item p{font-size:var(--t-sm);color:var(--c-ink-3);line-height:var(--lh-relax)}

/* ── 人を知る（社員紹介）── */
.au-people{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-5)}
.au-person{display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-line);border-radius:var(--r-2xl);overflow:hidden;text-decoration:none;color:inherit;transition:box-shadow var(--dur-base) var(--ease-apple),transform var(--dur-base) var(--ease-apple)}
.au-person:hover{box-shadow:var(--sh-lg);transform:translateY(-3px)}
.au-person-thumb{aspect-ratio:4/3;background:linear-gradient(160deg,#EDE7FF,#E8F0FD);display:grid;place-items:center;overflow:hidden}
.au-person-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.au-person-thumb b{font-family:var(--f-display);font-size:var(--t-2xl);font-weight:var(--fw-xb);color:#fff;width:64px;height:64px;border-radius:var(--r-full);background:var(--c-grad);display:grid;place-items:center;box-shadow:var(--sh-md)}
.au-person-body{padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-2)}
.au-person-role{font-family:var(--f-display);font-size:var(--t-xs);font-weight:var(--fw-b);letter-spacing:normal;color:var(--c-ink-4)}
.au-person-title{font-size:var(--t-sm);font-weight:var(--fw-sb);color:var(--c-ink);line-height:var(--lh-normal)}

/* ── Life at Discoveries（フィード）── */
.au-life{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-5)}
.au-life-card{background:#fff;border:1px solid var(--c-line);border-radius:var(--r-xl);padding:var(--sp-6);text-decoration:none;color:inherit;transition:box-shadow var(--dur-base) var(--ease-apple)}
.au-life-card:hover{box-shadow:var(--sh-md)}
.au-life-tag{display:inline-block;font-family:var(--f-display);font-size:var(--t-xs);font-weight:var(--fw-b);letter-spacing:normal;color:var(--c-violet);margin-bottom:var(--sp-3)}
.au-life-card h4{font-family:var(--f-display);font-size:var(--t-base);font-weight:var(--fw-sb);color:var(--c-ink);line-height:var(--lh-normal)}

/* ── 採用 CTA ── */
.au-ctaband{background:linear-gradient(135deg,#1A3560 0%,#0066CC 100%);border-radius:var(--r-2xl);padding:var(--sp-16) var(--sp-12);text-align:center;color:#fff;max-width:var(--container);margin:0 auto}
.au-ctaband h2{font-family:var(--f-display);font-size:var(--t-2xl);font-weight:var(--fw-b);line-height:var(--lh-snug);letter-spacing:var(--ls-snug)}
.au-ctaband p{font-size:var(--t-md);color:rgba(255,255,255,.85);line-height:var(--lh-relax);margin-top:var(--sp-4);max-width:560px;margin-left:auto;margin-right:auto}
.au-ctaband-btns{display:flex;gap:var(--sp-3);flex-wrap:wrap;justify-content:center;margin-top:var(--sp-8)}
.au-btn-w{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--f-display);font-size:var(--t-base);font-weight:var(--fw-m);padding:14px 28px;border-radius:var(--r-full);background:#fff;color:var(--c-indigo)}
.au-btn-w:hover{background:#F0F5FF}
.au-btn-ghostw{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--f-display);font-size:var(--t-base);font-weight:var(--fw-m);padding:14px 28px;border-radius:var(--r-full);background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.4)}
.au-btn-ghostw:hover{background:rgba(255,255,255,.1)}

/* ── レスポンシブ ── */
@media(max-width:900px){
  .au-stats{grid-template-columns:repeat(2,1fr)}
  .au-culture,.au-people,.au-life{grid-template-columns:1fr 1fr}
  .au-work{grid-template-columns:1fr}
  .au-ceo{grid-template-columns:1fr;text-align:center}
  .au-ceo-photo{max-width:220px;margin:0 auto}
}
@media(max-width:600px){
  .au-section{padding:var(--sp-16) 0}
  .au-stats,.au-culture,.au-people,.au-life{grid-template-columns:1fr}
}
