/* 公開前調整：既存の本文・素材を保った配置と文字の階層。 */
.hero-art .character-lineup{grid-template-columns:repeat(6,minmax(0,1fr));gap:0 4px;max-width:470px;margin:auto;padding:12px 0 22px}
.hero-art .character-lineup figure:first-child{grid-column:3/5;grid-row:1;z-index:1}
.hero-art .character-lineup figure:nth-child(2){grid-column:1/3;grid-row:2}
.hero-art .character-lineup figure:nth-child(3){grid-column:3/5;grid-row:2}
.hero-art .character-lineup figure:nth-child(4){grid-column:5/7;grid-row:2}
.hero-art .character-lineup figure:first-child img{height:218px;width:180px;max-width:none;position:relative;left:50%;translate:-50% 0}
.hero-art .character-lineup figure:not(:first-child) img{height:165px}
.hero-art .character-lineup figcaption{margin-top:5px;color:var(--navy);font-weight:700}
.hero-art .character-lineup figure:first-child figcaption{font-size:13px;margin-bottom:6px}
.lesson-visual .character-pair{max-width:220px;gap:16px;margin:-10px auto 18px}
.lesson-visual .character-pair img{height:112px;width:calc(50% - 8px)}
.lesson-copy{align-self:center}
.individual-friends h3{font-size:23px;letter-spacing:0;margin:12px 0}
.individual-friends .role{display:block;font-size:13px;line-height:1.85;min-height:48px}
.individual-friends p{font-size:16px;line-height:2}
.roadmap{background:linear-gradient(180deg,#edf4ef 0,#f7f9f4 650px);border-top:1px solid #cfdfd4}
.roadmap .roadmap-primary{font-size:clamp(27px,3.1vw,40px);line-height:1.7;letter-spacing:.01em;margin:0 0 18px}
.roadmap-primary em{font-style:normal;color:var(--green);background:linear-gradient(transparent 78%,#d6e7dc 78%)}
.roadmap-intro{font-size:18px;margin-bottom:32px}
.roadmap-illustration{margin:0 auto 48px;max-width:900px;border:1px solid #d6e2d8;border-radius:16px;overflow:hidden;background:#fff}
.roadmap-illustration img{display:block;width:100%;height:auto}
.roadmap-original-heading{font-size:27px;margin-bottom:26px}
.roadmap-speech{border:1px solid #9bbdaa;box-shadow:0 10px 30px #193b4508;padding:28px 32px}
.roadmap-speech::before{border-color:#9bbdaa}
.roadmap-speech p{font-size:20px;font-weight:700;line-height:1.9}
.roadmap-speech .role{font-size:14px}
@media(max-width:1000px) and (min-width:761px){.individual-friends h3{font-size:19px}.individual-friends p{font-size:15px}}
@media(max-width:760px){
 .hero-art .character-lineup{max-width:380px;gap:0 3px}
 .hero-art .character-lineup figure:first-child img{height:190px;width:145px}
 .hero-art .character-lineup figure:not(:first-child) img{height:135px}
 .hero-art .character-lineup figcaption{font-size:10px}
 .hero-art .art-caption{letter-spacing:.04em;gap:12px}
 .lesson-visual .character-pair{margin:-8px auto 16px;max-width:190px}
 .lesson-visual .character-pair img{height:100px}
 .individual-friends h3{font-size:21px}
 .individual-friends .role{font-size:12px;min-height:0}
 .individual-friends p{font-size:15px;line-height:2}
 .roadmap .roadmap-primary{font-size:27px;line-height:1.7}
 .roadmap-intro{font-size:16px;line-height:1.9}
 .roadmap-original-heading{font-size:24px}
 .roadmap-illustration{margin-bottom:34px;border-radius:10px}
 .roadmap-teacher{gap:14px}
 .roadmap-speech{padding:20px 18px}
 .roadmap-speech p{font-size:16px}
}
@media(max-width:440px){
 .individual-friends{grid-template-columns:1fr;gap:32px}
 .character-portrait{padding:18px;margin-bottom:18px}
 .character-portrait img{height:230px}
 .individual-friends h3{font-size:23px}
 .individual-friends .role{font-size:13px}
 .individual-friends p{font-size:16px}
}
.keep-word{display:inline-block}

/* 正式ロゴ原本：画像加工なし、縦横比を保持。 */
.brand{display:block;line-height:0;background:transparent;padding:0;border-radius:0}
.brand picture{display:block;width:210px}
.brand picture img{display:block;width:100%;height:auto;object-fit:contain}
.header{min-height:104px;height:auto;padding-block:10px}
.footer .brand picture{width:200px}
@media(max-width:760px){
 .header{min-height:82px;gap:12px}
 .header .brand picture{width:170px}
 .footer .brand picture{width:210px}
}
@media(max-width:380px){
.header .brand picture{width:68px}
}

/* 原本PNGをそのまま表示。背景だけを外部アルファマスクで非表示にする。 */
.brand picture img{mask:url('../assets/images/yanana-fx-main-mask.svg') center/100% 100% no-repeat;clip-path:inset(4% 1% 2% 1%)}
.section-brand-heading{display:flex;align-items:center;gap:18px;margin-bottom:24px}
.seminar .seminar-dates{font-size:14px;line-height:1.8;color:var(--navy);margin:12px 0 0;font-weight:500}
.section-brand-heading .eyebrow{margin:0;line-height:1.7;min-width:0}
.section-brand-mark{display:flex;align-items:center;justify-content:center;flex:0 0 64px;width:64px;height:64px}
.section-emblem{display:block;width:64px;height:auto;margin:0;object-fit:contain;opacity:1;mask:url('../assets/images/yanana-fx-emblem-mask.svg') center/100% 100% no-repeat;clip-path:inset(1% 5% 3% 5%)}
.section-heading>.section-brand-heading,.seminar .wrap>.section-brand-heading{justify-content:flex-start;text-align:left}
.philosophy .section-brand-mark{background:#e5ede6;border-radius:50%}
.philosophy .section-emblem{width:58px}
.header .brand picture{width:252px}
@media(max-width:1000px) and (min-width:761px){.header{gap:18px}.header nav{gap:12px}.header .brand picture{width:240px}}
@media(max-width:760px){
 .section-brand-heading{gap:12px;margin-bottom:22px}
 .section-brand-mark{flex-basis:48px;width:48px;height:48px}
 .section-emblem{width:48px}
 .philosophy .section-emblem{width:44px}
 .section-brand-heading .eyebrow{font-size:10px;letter-spacing:.1em}
 .header{padding-inline:16px;gap:10px}
 .header .brand picture{width:204px}
 .header .button.small{font-size:11px;padding:10px;gap:8px}
}
@media(max-width:380px){
 .header .brand picture{width:82px}
 .header .brand picture img{mask-image:url('../assets/images/yanana-fx-emblem-mask.svg');clip-path:inset(1% 5% 3% 5%)}
}

/* 本番公開前の見出し・未公開教材表示 */
.section-brand-heading{justify-content:flex-start;text-align:left}
.terms-status{margin:24px 0 32px}
.terms-upcoming{font-size:14px;line-height:2;color:#52666c}
.terms-upcoming strong{font-size:11px;letter-spacing:.08em;font-weight:600}
