.aboutPage .secRule{margin-top:30px}
/* About=夕暮れの長い光(DL-015系): ページ一本の連続グラデで光が琥珀へ深まる(章の縞なし)。
   Origin(夜明け組)・Finale・doorsは自前の背景が上に乗る=夜を挟む物語の途切れはそのまま */

.aboutPage .opening{text-align:center;padding:96px 24px 84px;background:radial-gradient(ellipse 70% 100% at 50% -20%,rgba(230,172,138,.46),rgba(230,172,138,0) 70%)}
.aboutPage .opEn{font-family:var(--latin);font-size:13px;font-weight:600;letter-spacing:.4em;color:var(--rose-ink);text-transform:uppercase}
.aboutPage .opTitle{font-family:var(--serif);font-size:clamp(24px,3.2vw,34px);font-weight:600;letter-spacing:.14em;color:var(--charcoal);margin-top:16px;line-height:2}


.aboutPage .opLead{max-width:660px;margin:44px auto 0;font-family:var(--serif);font-size:15.5px;line-height:2.7;letter-spacing:.08em}
.aboutPage .opLead p+p{margin-top:1.5em}
.aboutPage .chapter{padding:84px 24px}
.aboutPage .chapInner{max-width:var(--maxw);margin:0 auto}
.aboutPage .chapGrid{display:grid;grid-template-columns:1fr 380px;gap:64px;align-items:center}
.aboutPage .chapGrid.rev{grid-template-columns:380px 1fr}
.aboutPage .chapGrid.rev .chapText{order:2}
.aboutPage .chapGrid.rev .chapVisual{order:1}
.aboutPage .chapGrid.noVisual{grid-template-columns:1fr;max-width:680px;margin:0 auto}
.aboutPage .chapGrid.noVisual .chapBody{max-width:none}
.aboutPage .chapLabel{font-family:var(--latin);font-size:11.5px;font-weight:600;letter-spacing:.34em;color:var(--rose-ink);text-transform:uppercase}
.aboutPage .chapTitle{font-family:var(--serif);font-size:clamp(20px,2.4vw,25px);font-weight:600;letter-spacing:.14em;color:var(--charcoal);margin-top:12px;line-height:1.9}
.aboutPage .chapRule{width:56px;height:1px;margin:24px 0 30px;background:linear-gradient(90deg,var(--rose),rgba(216,164,143,0));position:relative}
.aboutPage .chapRule::before{content:"";position:absolute;left:24px;top:-3px;width:6px;height:6px;transform:rotate(45deg);background:var(--rose)}
.aboutPage .chapBody{font-family:var(--serif);font-size:14.5px;line-height:2.7;letter-spacing:.07em;max-width:560px}
.aboutPage .chapBody p+p{margin-top:1.6em}
.aboutPage .chapBody em,.aboutPage .originBody em{font-style:normal;color:var(--rose-deep)}
.aboutPage .chapVisual{aspect-ratio:3/4;border-radius:4px;border:1px solid var(--hairline-soft);position:relative;overflow:hidden}
.aboutPage .chapVisual.wide{aspect-ratio:16/9}
.aboutPage .chapVisual::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 55% at 50% 30%,rgba(255,255,255,.55),rgba(255,255,255,0) 70%)}
.aboutPage .chapVisual.hasImage::before{display:none}
.aboutPage .chapVisual img{display:block;width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.aboutPage .chapVisual.hasImage > .devBadge{display:none}
.aboutPage .origin{padding:100px 24px 92px;background:radial-gradient(ellipse 50% 30% at 50% 0%,rgba(120,100,112,.22),rgba(120,100,112,0) 70%),linear-gradient(180deg,#E3D5D6 0%,#EDE0D8 34%,#F6ECDD 68%,var(--ivory) 100%)}
.aboutPage .originInner{max-width:580px;margin:0 auto;text-align:center}
.aboutPage .originTitle{font-family:var(--serif);font-size:17px;letter-spacing:.3em;color:var(--charcoal);margin-top:14px}
.aboutPage .originBody{text-align:left;margin-top:48px;font-family:var(--serif);font-size:14.5px;line-height:2.8;letter-spacing:.08em}
.aboutPage .originBody p+p{margin-top:1.8em}
.aboutPage .originBody .originQuote{text-align:center;color:var(--rose-deep)}
.aboutPage .origin.fx3 .originBody p{opacity:0;transform:translateY(14px);transition:opacity .9s ease,transform .9s ease}
.aboutPage .origin.fx3 .originBody p.vis{opacity:1;transform:translateY(0)}
.aboutPage .finale{text-align:center;padding:110px 24px 100px;background:radial-gradient(ellipse 80% 90% at 50% 110%,rgba(216,164,143,.28),rgba(216,164,143,0) 65%),linear-gradient(180deg,var(--ivory) 0%,#EFE3D2 100%)}
.aboutPage .finaleBody{max-width:560px;margin:0 auto;font-family:var(--serif);font-size:15.5px;line-height:3;letter-spacing:.1em}
.aboutPage .finaleBody p+p{margin-top:2em}
.aboutPage .nameRow{display:flex;align-items:center;justify-content:center;gap:34px;margin:64px auto 58px;flex-wrap:wrap}
.aboutPage .nameCell{text-align:center}
.aboutPage .nameWord{font-family:var(--latin);font-size:26px;font-weight:600;letter-spacing:.14em;color:var(--charcoal)}
.aboutPage .nameWord.inf{font-size:32px;color:var(--rose)}
.aboutPage .nameMean{font-size:11.5px;letter-spacing:.1em;color:var(--gray);margin-top:8px;line-height:1.9}
.aboutPage .finaleCopy{font-family:var(--serif);font-size:clamp(19px,2.4vw,24px);font-weight:600;letter-spacing:.18em;color:var(--rose-deep);margin-top:70px;line-height:2.2}
.aboutPage .infJoin{display:flex;align-items:center;justify-content:center;margin:56px auto 8px;font-family:var(--latin);font-weight:600;font-size:clamp(20px,3vw,27px);letter-spacing:.1em;color:var(--charcoal)}
.aboutPage .infJoin .wordL,.aboutPage .infJoin .wordR{transition:transform 1.4s cubic-bezier(.22,.8,.3,1)}
.aboutPage .infJoin .inf{width:1.3em;text-align:center;color:var(--rose);font-size:1.25em;line-height:1;transition:opacity 1.2s ease .9s,transform 1.2s cubic-bezier(.22,.8,.3,1) .9s;text-shadow:0 0 18px rgba(216,164,143,.55)}
.aboutPage .infJoin.preJoin .wordL{transform:translateX(-26px)}
.aboutPage .infJoin.preJoin .wordR{transform:translateX(26px)}
.aboutPage .infJoin.preJoin .inf{opacity:0;transform:scale(.4) rotate(-90deg)}
.aboutPage .infJoin.preJoin.joined .wordL,.aboutPage .infJoin.preJoin.joined .wordR{transform:translateX(0)}
.aboutPage .infJoin.preJoin.joined .inf{opacity:1;transform:scale(1) rotate(0deg)}
.aboutPage .nextDoors{padding:72px 24px 92px;background:linear-gradient(180deg,#EFE3D2 0%,var(--ivory) 30%)}
.aboutPage .doorsInner{max-width:var(--maxw);margin:0 auto}
.aboutPage .doorsHead{text-align:center;font-size:12.5px;letter-spacing:.14em;color:var(--gray);margin-bottom:34px}
.aboutPage .doors{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:860px;margin:0 auto}
.aboutPage .door{background:var(--ivory-soft);border:1px solid var(--hairline-soft);border-radius:4px;padding:26px 22px;text-align:center;transition:all .3s}
.aboutPage .door:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(120,80,60,.13);border-color:var(--hairline)}
.aboutPage .doorEn{font-family:var(--latin);font-size:11px;font-weight:600;letter-spacing:.3em;color:var(--rose-ink);text-transform:uppercase}
.aboutPage .doorJa{font-family:var(--serif);font-size:14.5px;letter-spacing:.12em;color:var(--charcoal);margin-top:10px;line-height:1.9}
.aboutPage .doorArrow{font-family:var(--latin);color:var(--rose);margin-top:12px;font-size:15px}
@media(max-width:900px){.aboutPage .opLead br{display:none}.aboutPage .chapGrid,.aboutPage .chapGrid.rev{grid-template-columns:1fr;gap:30px}.aboutPage .chapGrid.rev .chapText{order:1}.aboutPage .chapGrid.rev .chapVisual{order:2}.aboutPage .chapVisual{width:100%;max-width:340px;margin:0 auto}.aboutPage .chapter{padding:60px 20px}.aboutPage .opening{padding:72px 20px 60px}.aboutPage .doors{grid-template-columns:1fr}.aboutPage .nameRow{gap:22px}}
@media(prefers-reduced-motion:reduce){.aboutPage .origin.fx3 .originBody p{opacity:1;transform:none}.aboutPage .infJoin.preJoin .wordL,.aboutPage .infJoin.preJoin .wordR,.aboutPage .infJoin.preJoin .inf{opacity:1;transform:none}}
.legalPage{min-height:70vh;padding:88px 24px 110px;background:radial-gradient(ellipse 70% 60% at 50% -10%,rgba(232,190,166,.2),transparent 70%),var(--ivory)}
.legalInner{max-width:680px;margin:0 auto}
.legalInner h1{font-family:var(--serif);font-size:clamp(26px,4vw,36px);letter-spacing:.12em;text-align:center;color:var(--charcoal)}
.legalUpdated{text-align:center;color:var(--gray);font-size:12px;margin-top:14px}
.legalPage .secRule{width:64px;height:1px;margin:30px auto 55px;background:var(--rose)}
.legalSection{padding:0}
.legalSection+.legalSection{margin-top:46px}
.legalSection h2{font-family:var(--serif);font-size:19px;letter-spacing:.1em;color:var(--charcoal);margin-bottom:14px}
.legalSection p{font-family:var(--serif);font-size:14px;line-height:2.3;letter-spacing:.05em}
.legalSection p+p{margin-top:1.2em}
