.aim-story-page,
.aim-story-page * { box-sizing: border-box; }
.aim-story-page { --ink:#242622; --paper:#f3f1ea; --muted:#71746c; --line:#cbc9bf; --accent:#9c6844; padding-top:clamp(96px,9vw,140px); color:var(--ink); background:var(--paper); font-family:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,sans-serif; font-size:16px; line-height:1.9; letter-spacing:.035em; overflow:hidden; }
.aim-story-page :where(h1,h2,h3,h4,p,figure) { margin:0; padding:0; border:0; color:inherit; background:none; font:inherit; letter-spacing:inherit; text-align:inherit; }
.aim-story-page :where(h1,h2,h3,h4),
.aim-story-page :where(.aim-story-title,.aim-story-heading,.aim-story-chapter-title,.aim-story-featured-title,.aim-story-note-title) { margin:0; padding:0; border:0; background:none; color:inherit; font-weight:inherit; text-align:inherit; }
.aim-story-page :where(h1,h2,h3,h4,.aim-story-title,.aim-story-heading,.aim-story-chapter-title,.aim-story-featured-title,.aim-story-note-title) { max-width:100%; min-width:0; word-break:normal; line-break:strict; overflow-wrap:anywhere; text-wrap:balance; }
.aim-story-page :where(h1,h2,h3,h4)::before,
.aim-story-page :where(h1,h2,h3,h4)::after,
.aim-story-page :where(.aim-story-title,.aim-story-heading,.aim-story-chapter-title,.aim-story-featured-title,.aim-story-note-title)::before,
.aim-story-page :where(.aim-story-title,.aim-story-heading,.aim-story-chapter-title,.aim-story-featured-title,.aim-story-note-title)::after { content:none !important; display:none !important; }
.aim-story-page a { color:inherit; text-decoration:none; }
.aim-story-page img { display:block; width:100%; height:100%; object-fit:cover; }
.aim-story-page .aim-story-shell { width:min(1180px,calc(100% - 80px)); margin-inline:auto; }
.aim-story-page .aim-story-kicker { display:flex; align-items:center; gap:14px; color:var(--accent); font-size:11px; font-weight:600; line-height:1.4; letter-spacing:.22em; text-transform:uppercase; }
.aim-story-page .aim-story-kicker::before { content:""; width:34px; height:1px; background:currentColor; }
.aim-story-page .aim-story-title { font-family:var(--aim26-ja); font-size:clamp(26px,3.3vw,44px); font-weight:500; line-height:1.5; letter-spacing:.065em; }
.aim-story-page .aim-story-heading { font-family:var(--aim26-ja); font-size:clamp(23px,2.6vw,34px); font-weight:500; line-height:1.55; letter-spacing:.065em; }
.aim-story-page .aim-story-body { color:#4d504a; font-size:15px; line-height:2.08; }
.aim-story-page .aim-story-body p + p { margin-top:1.1em; }
.aim-story-page .aim-story-media { overflow:hidden; border-radius:24px; background:#dedbd1; }
.aim-story-page .aim-story-media img { transition:transform .8s cubic-bezier(.2,.65,.25,1); }
.aim-story-page a:hover .aim-story-media img { transform:scale(1.018); }

.aim-story-page .aim-story-hero { padding:70px 0 110px; }
.aim-story-page .aim-story-hero-copy { display:grid; grid-template-columns:minmax(0,.9fr) minmax(320px,.7fr); gap:8vw; align-items:end; margin:34px 0 64px; }
.aim-story-page .aim-story-lead { color:#50534d; font-size:15px; line-height:2.15; }
.aim-story-page .aim-story-hero .aim-story-media { height:min(62vw,690px); border-radius:0 0 0 64px; }

.aim-story-page .aim-story-intro { padding:145px 0; }
.aim-story-page .aim-story-intro-inner { display:grid; grid-template-columns:minmax(0,.8fr) minmax(320px,.65fr); gap:12vw; align-items:start; width:min(980px,100%); margin:auto; }
.aim-story-page .aim-story-intro .aim-story-heading { padding-top:3px; }

.aim-story-page .aim-story-movie { padding:110px 0 130px; background:#272925; color:#f3f1ea; }
.aim-story-page .aim-story-movie-head { display:flex; justify-content:space-between; gap:40px; align-items:end; margin-bottom:42px; }
.aim-story-page .aim-story-movie .aim-story-kicker { color:#c59c78; }
.aim-story-page .aim-story-movie-frame { aspect-ratio:16/9; overflow:hidden; border-radius:28px; background:#151614; }
.aim-story-page .aim-story-movie video { display:block; width:100%; height:100%; object-fit:cover; }

.aim-story-page .aim-story-timeline { padding:155px 0 80px; }
.aim-story-page .aim-story-timeline-intro { margin-bottom:80px; }
.aim-story-page .aim-story-timeline-list { position:relative; }
.aim-story-page .aim-story-timeline-list::before { content:""; position:absolute; top:12px; bottom:0; left:84px; width:1px; background:var(--line); }
.aim-story-page .aim-story-chapter { display:grid; grid-template-columns:170px minmax(0,1fr); padding-bottom:145px; position:relative; }
.aim-story-page .aim-story-year { position:relative; z-index:1; align-self:start; width:max-content; padding:0 22px 0 0; background:var(--paper); color:var(--accent); font-family:var(--aim26-en); font-size:21px; line-height:1.2; letter-spacing:.09em; }
.aim-story-page .aim-story-chapter-main { display:grid; grid-template-columns:minmax(260px,.7fr) minmax(350px,1fr); gap:7vw; align-items:start; }
.aim-story-page .aim-story-chapter:nth-child(even) .aim-story-copy { order:2; }
.aim-story-page .aim-story-chapter:nth-child(even) .aim-story-media { order:1; }
.aim-story-page .aim-story-chapter-title { margin-bottom:30px; font-family:var(--aim26-ja); font-size:clamp(22px,2.1vw,30px); font-weight:500; line-height:1.55; letter-spacing:.055em; }
.aim-story-page .aim-story-chapter .aim-story-media { aspect-ratio:4/3; }
.aim-story-page .aim-story-chapter--no-image .aim-story-chapter-main { grid-template-columns:minmax(0,680px); }
.aim-story-page .aim-story-chapter--no-image .aim-story-copy { order:initial; }

.aim-story-page .aim-story-final { padding:70px 0 160px; }
.aim-story-page .aim-story-final-inner { display:grid; grid-template-columns:minmax(0,.7fr) minmax(320px,.65fr); gap:12vw; width:min(980px,100%); margin:auto; }

.aim-story-page .aim-story-notes { padding:125px 0 130px; color:#f1f0eb; background:#292a27; }
.aim-story-page .aim-story-notes .aim-story-kicker { color:#c59c78; }
.aim-story-page .aim-story-notes-intro { display:grid; grid-template-columns:1fr .8fr; gap:10vw; margin:32px 0 60px; align-items:end; }
.aim-story-page .aim-story-notes-intro p { color:#bfc0ba; font-size:14px; line-height:2; }
.aim-story-page .aim-story-featured { display:grid; grid-template-columns:140px 1fr 42px; gap:34px; align-items:center; overflow:hidden; padding:38px 40px; border:1px solid #53544f; border-radius:28px; transition:background .25s,border-color .25s; }
.aim-story-page .aim-story-featured:hover { background:#333430; border-color:#777870; }
.aim-story-page .aim-story-featured-label { color:#c59c78; font:12px/1.4 Arial,sans-serif; letter-spacing:.2em; }
.aim-story-page .aim-story-featured-title { margin-bottom:7px; font-family:var(--aim26-ja); font-size:20px; line-height:1.6; }
.aim-story-page .aim-story-featured-text { color:#aaaDA7; font-size:13px; line-height:1.7; }
.aim-story-page .aim-story-arrow { font-size:22px; text-align:right; transition:transform .25s; }
.aim-story-page a:hover .aim-story-arrow { opacity:.7; }
.aim-story-page .aim-story-note-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:35px; border-top:0; background:transparent; }
.aim-story-page .aim-story-note-card,
.aim-story-page .aim-story-note-card:nth-child(odd),
.aim-story-page .aim-story-note-card:nth-child(even) { display:grid; grid-template-columns:35px minmax(0,1fr) 20px; gap:20px; overflow:hidden; padding:30px 24px; border:1px solid #50514d; border-radius:20px; transition:background .25s,border-color .25s; }
.aim-story-page .aim-story-note-card:hover { background:#333430; border-color:#777870; }
.aim-story-page .aim-story-note-number { color:#85867f; font:11px/1.5 Arial,sans-serif; letter-spacing:.1em; }
.aim-story-page .aim-story-note-title { margin-bottom:7px; font-size:15px; line-height:1.65; }
.aim-story-page .aim-story-note-text { color:#9e9f99; font-size:12px; line-height:1.7; }
.aim-story-page .aim-story-note-all { display:flex; justify-content:flex-end; margin-top:42px; }
.aim-story-page .aim-story-text-link { display:inline-flex; gap:24px; align-items:center; padding-bottom:7px; border-bottom:1px solid #777870; font-size:12px; letter-spacing:.13em; }

.aim-story-page .aim-story-cta { padding:145px 0 155px; text-align:center; }
.aim-story-page .aim-story-cta .aim-story-heading { margin-bottom:32px; }
.aim-story-page .aim-story-cta p { max-width:650px; margin:auto; color:#5c5f58; font-size:15px; line-height:2.1; }
.aim-story-page .aim-story-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; margin-top:46px; }
.aim-story-page .aim-story-button { display:inline-flex; justify-content:space-between; align-items:center; overflow:hidden; width:220px; min-height:58px; padding:15px 20px; border:1px solid #9c9d95; border-radius:24px; font-size:11px; letter-spacing:.13em; transition:color .25s,background .25s,border-color .25s; }
.aim-story-page .aim-story-button:hover { color:#fff; background:var(--ink); border-color:var(--ink); }

@media (max-width:900px) {
  .aim-story-page .aim-story-shell { width:min(100% - 48px,1180px); }
  .aim-story-page .aim-story-hero-copy,
  .aim-story-page .aim-story-intro-inner,
  .aim-story-page .aim-story-final-inner { grid-template-columns:1fr; gap:36px; }
  .aim-story-page .aim-story-chapter { grid-template-columns:105px minmax(0,1fr); }
  .aim-story-page .aim-story-timeline-list::before { left:48px; }
  .aim-story-page .aim-story-chapter-main { grid-template-columns:1fr; gap:38px; }
  .aim-story-page .aim-story-chapter:nth-child(even) .aim-story-copy,
  .aim-story-page .aim-story-chapter:nth-child(even) .aim-story-media { order:initial; }
}
@media (max-width:640px) {
  .aim-story-page { font-size:15px; }
  .aim-story-page .aim-story-shell { width:calc(100% - 40px); }
  .aim-story-page .aim-story-hero { padding:48px 0 80px; }
  .aim-story-page .aim-story-hero-copy { margin:26px 0 42px; }
  .aim-story-page .aim-story-hero .aim-story-media { height:70vh; min-height:460px; max-height:620px; }
  .aim-story-page .aim-story-intro { padding:100px 0; }
  .aim-story-page .aim-story-movie { padding:80px 0 90px; }
  .aim-story-page .aim-story-movie-head { display:block; }
  .aim-story-page .aim-story-movie-head .aim-story-kicker { margin-bottom:22px; }
  .aim-story-page .aim-story-timeline { padding:105px 0 45px; }
  .aim-story-page .aim-story-timeline-intro { margin-bottom:60px; }
  .aim-story-page .aim-story-timeline-list::before { left:20px; }
  .aim-story-page .aim-story-chapter { display:block; padding:0 0 100px 50px; }
  .aim-story-page .aim-story-year { margin-left:-50px; padding:0 14px 0 0; }
  .aim-story-page .aim-story-chapter-main { margin-top:27px; }
  .aim-story-page .aim-story-chapter-title { margin-bottom:22px; }
  .aim-story-page .aim-story-chapter .aim-story-media { aspect-ratio:4/3; }
  .aim-story-page .aim-story-final { padding:40px 0 110px; }
  .aim-story-page .aim-story-notes { padding:90px 0; }
  .aim-story-page .aim-story-notes-intro { grid-template-columns:1fr; gap:25px; margin:26px 0 45px; }
  .aim-story-page .aim-story-featured { grid-template-columns:1fr 25px; gap:20px; padding:28px 24px; }
  .aim-story-page .aim-story-featured-label { grid-column:1/-1; }
  .aim-story-page .aim-story-note-grid { grid-template-columns:1fr; }
  .aim-story-page .aim-story-note-grid { gap:14px; }
  .aim-story-page .aim-story-note-card,
  .aim-story-page .aim-story-note-card:nth-child(odd),
  .aim-story-page .aim-story-note-card:nth-child(even) { padding:25px 20px; }
  .aim-story-page .aim-story-cta { padding:105px 0 110px; }
  .aim-story-page .aim-story-actions { display:grid; }
  .aim-story-page .aim-story-button { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .aim-story-page *, .aim-story-page *::before, .aim-story-page *::after { scroll-behavior:auto !important; transition:none !important; }
}

/* Theme page ornaments and editor constraints are disabled only for this template. */
body.is-aim-story-page::before,
body.is-aim-story-page::after,
body.is-aim-story-page .l-wrapper::before,
body.is-aim-story-page .l-wrapper::after,
body.is-aim-story-page .l-main::before,
body.is-aim-story-page .l-main::after,
body.is-aim-story-page .l-container::before,
body.is-aim-story-page .l-container::after,
body.is-aim-story-page .detailPage::before,
body.is-aim-story-page .detailPage::after,
body.is-aim-story-page .editor-body::before,
body.is-aim-story-page .editor-body::after,
body.is-aim-story-page .bg-line,
body.is-aim-story-page .l-bg-line,
body.is-aim-story-page .center-line,
body.is-aim-story-page .page-line { display:none !important; content:none !important; opacity:0 !important; visibility:hidden !important; }

body.is-aim-story-page .l-main,
body.is-aim-story-page .l-container,
body.is-aim-story-page .detailPage,
body.is-aim-story-page .editor-body { width:100% !important; max-width:none !important; padding-left:0 !important; padding-right:0 !important; overflow:visible !important; }
