/* about のページ固有スタイル（ワイヤーフレーム src/about/index.html の <style> から変換） */
.ab-sec{padding:96px 0}
  .ab-sec.alt{background:var(--light)}
  .ab-h2{font-family:var(--serif);font-size:30px;font-weight:700;color:var(--dark);letter-spacing:.05em;line-height:1.45;position:relative;padding-bottom:20px;margin-bottom:14px}
  .ab-h2 .accent{color:var(--primary)}
  .ab-h2::after{content:'';position:absolute;left:0;bottom:0;width:56px;height:2px;background:var(--primary)}
  .ab-sec .intro{font-size:14.5px;color:var(--text);line-height:2.05;max-width:680px;margin-bottom:44px}
  /* values */
  .val-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .val-card{background:#fff;border:1px solid var(--rule);border-top:3px solid var(--primary);padding:32px 28px}
  .val-card .k{font-size:10.5px;letter-spacing:.2em;color:var(--accent);font-weight:700}
  .val-card h3{font-family:var(--serif);font-size:19px;font-weight:700;color:var(--dark);letter-spacing:.04em;margin:12px 0 10px;line-height:1.5}
  .val-card p{font-size:13px;color:var(--muted);line-height:1.9}
  .val-card p b{color:var(--text);font-weight:700}
  /* timeline */
  .tl{list-style:none;border-left:2px solid var(--rule);margin-left:6px;max-width:760px}
  .tl li{position:relative;padding:0 0 34px 34px}
  .tl li:last-child{padding-bottom:0}
  .tl li::before{content:'';position:absolute;left:-8px;top:5px;width:13px;height:13px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 3px var(--light)}
  .ab-sec.alt .tl li::before{box-shadow:0 0 0 3px var(--light)}
  .tl .yr{font-family:var(--serif);font-size:18px;font-weight:700;color:var(--primary);letter-spacing:.04em}
  .tl h3{font-size:15px;font-weight:700;color:var(--dark);margin:4px 0 6px;letter-spacing:.03em}
  .tl p{font-size:13px;color:var(--muted);line-height:1.85}
  /* timeline + 京都本店写真 2col */
  .tl-layout{display:grid;grid-template-columns:1fr .82fr;gap:52px;align-items:start}
  .tl-layout .tl{max-width:none}
  .tl-photo{margin:0;position:sticky;top:96px}
  .tl-photo .ph{aspect-ratio:3/4;border:1px solid var(--rule);background:repeating-linear-gradient(45deg,#faf9f5,#faf9f5 12px,#f1f0ea 12px,#f1f0ea 24px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center;padding:28px}
  .tl-photo .ph .t{font-size:10px;letter-spacing:.2em;font-weight:700;color:var(--primary);background:#fff;border:1px solid var(--rule);padding:3px 10px;border-radius:9999px}
  .tl-photo .ph .c{font-size:14px;color:var(--dark);font-weight:600;line-height:1.7}
  .tl-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;border:1px solid var(--rule)}
  .tl-photo figcaption{font-size:11px;color:var(--muted);margin-top:10px;line-height:1.7}
  /* info */
  .info-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}
  .info-grid h3{font-family:var(--serif);font-size:17px;font-weight:700;color:var(--dark);letter-spacing:.06em;margin-bottom:8px}
  @media (max-width:920px){
    .val-grid{grid-template-columns:1fr}
    .info-grid{grid-template-columns:1fr;gap:36px}
    .ab-h2{font-size:25px}
    .tl-layout{grid-template-columns:1fr;gap:30px}
    .tl-photo{position:static}
    .tl-photo img{aspect-ratio:4/3;object-position:50% 38%}
  }
