/* Readable typography across the site, including mobile and contact forms. */
:root{--sans:'Noto Sans JP','Meiryo','Hiragino Sans','Hiragino Kaku Gothic ProN',sans-serif;--ink:#172f3d;--muted:#4d616b}
body{font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.9;color:var(--ink)}
h1,h2,h3,.hero h1,.intro-text .lead,.values h3,.steps h3,.fund-summary h3,.partner-card .partner-name,.mobile-nav a{font-family:var(--sans);font-weight:700;letter-spacing:.02em}
h2,.section h2{line-height:1.55;letter-spacing:.02em}
.desktop-nav{font-size:14px;font-weight:600;gap:24px;letter-spacing:0}
.desktop-nav a,.header-contact{white-space:nowrap}
.header-contact{font-size:14px;font-weight:600;padding:12px 18px}
.header-contact span{margin-left:14px}
.header{gap:28px}
.hero{height:auto;min-height:800px}
.hero-copy{padding-top:190px;padding-bottom:130px}
.hero h1{font-size:clamp(34px,3.8vw,56px);line-height:1.55;color:var(--ink)}
.hero h1>span{color:var(--ink)}
.hero-en{font-size:17px;line-height:1.8;color:#435b68}
.hero-description{font-size:17px;line-height:2;letter-spacing:.025em;max-width:500px;color:#304b5a}
.eyebrow,.hero .eyebrow,.eyebrow.dark,.fund-kicker{font-size:12px;font-weight:600;letter-spacing:.12em;color:#715b37}
.section-ja,.fund .section-ja,.contact .section-ja{font-size:14px;letter-spacing:.04em;color:#465e6b;font-weight:600}
.light-link,.text-link,.details-trigger{font-size:15px;font-weight:600;line-height:1.8}
.scroll-cue,.hero-geography{font-size:11px;letter-spacing:.08em;color:#465e6b}
.hero-geography span{font-size:13px;color:#465e6b}
.motion-toggle{width:42px;height:42px;flex-shrink:0;font-size:16px}
.intro-text .lead{font-size:25px;line-height:1.8}
.intro-text>p:not(.lead),.values p,.process-grid>div>p,.steps p,.fund-heading>p,.fund-summary>p:not(.eyebrow):not(.fund-alias),.section-heading>p,.contact-grid p{font-size:16px;line-height:1.95;color:#354d5b}
.values h3,.steps h3{font-size:23px;line-height:1.65}
.values p{max-width:none}
.value-no{font-size:15px;color:#715b37}
.value-en,.steps small,.sector-list small{font-size:12px;line-height:1.7;color:#4d616b;letter-spacing:.06em}
.sector-list{font-size:16px}
.key-facts small{font-size:12px;letter-spacing:.07em;color:#4d616b;line-height:1.7}
.key-facts>div>span,.key-facts>a>span{font-size:14px;line-height:1.8;color:#4d616b}
.key-facts strong{font-size:16px;font-weight:600;line-height:1.7}
.key-facts .fact-words{font-size:22px;line-height:1.5}
.fund-summary h3{font-size:27px;line-height:1.6}
.fund-alias{font-size:14px;color:#715b37;letter-spacing:.025em}
.fund-numbers small{font-size:13px;line-height:1.8;color:#4d616b}
.fund-numbers p span{font-family:var(--sans);font-size:18px}
.fund-details{font-size:15px;line-height:1.9;column-gap:35px}
.fund-details>div{grid-template-columns:115px minmax(0,1fr);font-size:15px;padding:20px 0}
.fund-details dt{font-size:14px;font-weight:600;color:#465e6b}
.fund-details dd{overflow-wrap:anywhere}
.fund-note,.team-note,.disclaimer{font-size:13px;line-height:1.95;color:#4d616b}
.partner-card .partner-field{font-size:14px;color:#465e6b}
.partner-card .partner-role{font-size:14px;line-height:1.8;white-space:normal;color:#4d616b}
.partner-card .partner-name{font-size:27px;line-height:1.6}
.partner-card .partner-summary{font-size:15px;line-height:1.9;color:#354d5b}
.contact-grid{max-width:none;gap:48px}
.contact-grid h3{font-size:18px;font-weight:700;line-height:1.8;letter-spacing:0}
.resource-button{font-size:16px;font-weight:600;line-height:1.8}
.resource-meta{font-size:12px;letter-spacing:.1em;color:#4d616b}
.footer-top p{font-size:14px;line-height:1.9;color:#465e6b}
.footer-top{gap:45px}
.footer-bottom small,.footer-bottom>span{font-size:12px;line-height:1.8;color:#4d616b;letter-spacing:.04em}
.dialog-role{font-size:15px;color:#465e6b}
#dialog-bio{font-size:16px;line-height:1.95}
.request-main{max-width:900px}
.request-main h1{font-family:var(--sans);font-weight:700;font-size:clamp(26px,3.2vw,38px);line-height:1.5;letter-spacing:0}
.request-intro{font-size:16px;line-height:1.95;color:#354d5b}
.request-field{font-size:16px;line-height:1.7;font-weight:600}
.request-field input,.request-field select,.request-field textarea{font:400 16px/1.7 var(--sans);color:var(--ink);border-color:#9daeb7;min-height:50px}
.request-field textarea::placeholder{color:#586b76;opacity:1}
.required{font-size:12px;color:#6d542e;font-weight:700}
.privacy-note,.form-status{font-size:14px;line-height:1.9;color:#465e6b}
.request-submit{font-size:16px;line-height:1.7;font-weight:600}
.request-back{font-size:15px;font-weight:600}
#edit-request{font-size:15px}
#request-reference{overflow-wrap:anywhere}
.text-link:hover,.light-link:hover,.header-contact:hover{color:#172f3d}
.request-submit:hover{color:#fff;background:#294c5e}
@media(max-width:1200px){
 .desktop-nav,.header-contact{display:none}
 .menu-toggle{display:block;width:44px;height:44px;padding:10px;background:none;border:0;margin-left:auto;z-index:32}
 .menu-toggle span{display:block;height:2px;background:var(--ink);margin:6px 0;transition:transform .2s}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
 .mobile-nav{position:fixed;z-index:19;background:#fff;inset:0;padding:115px 7% 30px;color:var(--ink);overflow:auto}
 .mobile-nav a{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #dce3e3;padding:20px 0;font:600 20px/1.7 var(--sans)}
 .mobile-nav small{font:13px/1.6 Arial,sans-serif;color:#4d616b}
 .menu-open{overflow:hidden}.menu-open .header{position:fixed}
}
@media(max-width:1000px){
 .fund-details{grid-template-columns:1fr}
 .footer-top{flex-wrap:wrap;gap:28px}
}
@media(max-width:900px){.intro-grid{grid-template-columns:1fr;gap:32px}}
@media(max-width:800px){
 .hero{height:auto;min-height:830px}.hero-copy{padding:145px 7% 150px}
 .hero h1{font-size:clamp(30px,5.5vw,44px)}
 .hero-description{font-size:16px}
 .fund-summary h3{font-size:25px}
 .fund-numbers{max-width:500px}
 .hero-geography{max-width:230px}
}
@media(max-width:600px){
 .partner-grid{grid-template-columns:1fr;gap:12px}
 .partner-card .partner-top{margin-bottom:18px}
 .values{grid-template-columns:1fr}
 .values article,.values article:first-child,.values article:last-child{padding:28px 0;border:0;border-bottom:1px solid #dce3e3}
 .values h3{display:block;margin:12px 0 6px}
 .values p,.value-en{margin-left:0}
 .contact-grid{grid-template-columns:1fr;gap:30px}
 .request-main{padding:42px 6% 65px}
 .request-main h1{font-size:clamp(24px,5.8vw,30px)}
}
@media(max-width:520px){
 .hero{min-height:860px}.hero-copy{padding:140px 7% 165px}
 .hero h1{font-size:clamp(26px,6.8vw,35px);line-height:1.65;letter-spacing:0}
 .hero .eyebrow{font-size:11px;letter-spacing:.07em}
 .hero-en{font-size:16px;letter-spacing:0}
 .hero-description{max-width:none;font-size:16px;line-height:2;letter-spacing:0}
 .hero-geography{max-width:200px}.hero-geography span{font-size:12px;max-width:none}
 .scroll-cue{font-size:10px;letter-spacing:.04em;max-width:85px;line-height:1.6}
 .hero-bottom{gap:10px}
 .section h2,.intro h2,.fund-heading h2,.process h2,.contact h2{font-size:clamp(26px,6.8vw,32px);line-height:1.6}
 .section-top{gap:15px;align-items:flex-start}
 .section-ja{font-size:13px;letter-spacing:0;text-align:right}
 .key-facts{gap:26px 18px}
 .key-facts>div,.key-facts>a{padding-left:14px;min-width:0}
 .key-facts small{font-size:11px;letter-spacing:.04em}
 .key-facts>div>span,.key-facts>a>span{font-size:13px}
 .key-facts .fact-words{font-size:18px;overflow-wrap:normal}
 .key-facts strong{font-size:15px}
 .fund-summary h3{font-size:22px}
 .fund-details>div{grid-template-columns:90px minmax(0,1fr);gap:14px;font-size:15px}
 .fund-numbers>div+div{padding-left:18px}
 .fund-numbers p.expiry{font-size:36px}
 .fund-numbers p span{font-size:16px;margin-left:6px}
 .footer-top p{font-size:14px}
 .footer-bottom small{font-size:12px}
}

.keep-together{white-space:nowrap}
