/* Yume Academy — editorial clarity with restrained whitespace. */
:root{--paper:#fcfcfa;--ink:#262b29;--muted:#646e68;--line:#dce1da;--soft:#f2f4ef;--accent:#75634c;--measure:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Gothic",Meiryo,"Hiragino Kaku Gothic ProN",sans-serif;font-size:16px;line-height:1.95;-webkit-text-size-adjust:100%}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,code:focus-visible{outline:2px solid var(--accent);outline-offset:5px}a:hover{color:var(--accent)}p{margin:0 0 24px}h1,h2,h3,h4{font-weight:500;line-height:1.6;margin:0}img{max-width:100%;height:auto}.skip{position:absolute;top:10px;left:-9999px;background:var(--paper);padding:10px 20px;z-index:20}.skip:focus{left:10px}.site-header{max-width:calc(var(--measure) + 96px);margin:auto;padding:27px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--line)}.brand{display:block;text-decoration:none;flex:none;line-height:1.35}.brand strong{display:block;font-size:22px;letter-spacing:.08em;font-weight:600}.brand span{display:block;font-size:10px;letter-spacing:.21em;margin-top:6px;color:var(--muted)}.desktop-nav{display:flex;align-items:center;gap:25px}.desktop-nav a{text-decoration:none;font-size:13px;min-height:44px;display:flex;align-items:center;border-bottom:1px solid transparent}.desktop-nav a[aria-current]{border-color:var(--ink)}.mobile-nav{display:none}.home-main,.page-main{max-width:calc(var(--measure) + 96px);padding:0 48px;margin:auto}.hero{padding-top:70px}.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:26px}.hero h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(34px,4.7vw,64px);line-height:1.55;letter-spacing:.025em;font-weight:400;max-width:1000px}.hero h1>span{display:block}.hero-copy{max-width:780px;margin-top:32px;font-size:16px;line-height:2}.hero-art{margin-top:44px;overflow:hidden;background:#f5f4ef;border:1px solid #eceee7}.hero-art img{display:block;width:100%;aspect-ratio:1400/360;object-fit:cover}.section{position:relative;margin-top:76px;padding-top:36px;border-top:1px solid var(--line);scroll-margin-top:30px}.section-number{display:block;color:var(--muted);font-size:11px;letter-spacing:.12em;margin-bottom:16px}.section h2{font-size:26px;letter-spacing:.025em;margin-bottom:28px}.section p{max-width:820px}.text-link{display:inline-block;text-decoration:none;border-bottom:1px solid var(--ink);font-size:14px;padding:8px 0;min-height:44px;margin-top:8px}.text-link span{margin-left:30px;font-size:18px}.text-link:hover{border-color:var(--accent)}.service-pair{display:grid;grid-template-columns:1fr 1fr;gap:72px}.home-main>.section:last-child{padding-bottom:12px}.breadcrumbs{display:flex;gap:12px;font-size:11px;color:var(--muted);padding-top:27px;flex-wrap:wrap}.breadcrumbs a{text-decoration:none}.page-heading{padding:60px 0 42px;border-bottom:1px solid var(--line)}.page-heading .eyebrow{margin-bottom:16px}.page-heading h1{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:43px;letter-spacing:.03em;font-weight:400;overflow-wrap:anywhere}.page-heading p:not(.eyebrow){max-width:800px;margin:20px 0 0;color:var(--muted)}.editorial{display:grid;grid-template-columns:180px minmax(0,1fr);gap:64px;padding-top:48px}.reading{max-width:800px;min-width:0}.reading>.section:first-child{border-top:0;padding-top:0;margin-top:0}.toc{font-size:12px;color:var(--muted)}.toc details{position:sticky;top:24px}.toc summary{list-style:none;font-weight:600;min-height:44px;display:flex;align-items:center;cursor:pointer}.toc summary::-webkit-details-marker{display:none}.toc ol{list-style:none;padding:0;margin:8px 0}.toc li{border-top:1px solid var(--line)}.toc a{display:block;text-decoration:none;padding:12px 0;min-height:44px}.reading ul{padding-left:23px;margin:24px 0}.reading li{padding-left:7px;margin:16px 0}.person-name{font-size:19px;line-height:1.8;margin-bottom:32px}.timeline{margin:0 0 28px}.timeline>div{display:grid;grid-template-columns:126px 1fr;gap:22px;border-top:1px solid var(--line);padding:18px 0}.timeline dt{color:var(--muted);font-size:13px;letter-spacing:.03em}.timeline dd{margin:0;font-size:14px;line-height:1.85}.facts{margin:12px 0 30px}.facts>div{display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px;padding:24px 0;border-bottom:1px solid var(--line)}.facts dt{font-size:14px;color:var(--muted)}.facts dd{margin:0;overflow-wrap:anywhere}.section-action{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}.section-action p{font-size:14px;color:var(--muted)}.narrow{max-width:800px;margin:0 auto}.contact-panel{margin-top:45px;background:var(--soft);padding:42px}.contact-panel h2{font-size:26px;margin-bottom:24px}.contact-panel p{font-size:15px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:50px;padding:14px 24px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);font-size:14px;text-decoration:none}.button:hover{background:#414942;color:#fff}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.button.secondary:hover{border-color:var(--ink)}.contact-result{margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.contact-result code{display:block;overflow-wrap:anywhere;font-size:17px}.contact-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}[hidden]{display:none!important}.policy-body{padding-top:40px;font-size:15px;line-height:2.05}.policy-section{padding-top:36px;margin-top:24px;border-top:1px solid var(--line)}.policy-section h2{font-size:21px;line-height:1.7;margin-bottom:22px}.back-link{margin-top:52px;padding-top:25px;border-top:1px solid var(--line)}.news-labels{display:grid;grid-template-columns:130px 1fr;margin-top:36px;padding-bottom:16px;color:var(--muted);font-size:12px}.news-list{list-style:none;padding:0;margin:0}.news-list li{display:grid;grid-template-columns:130px minmax(0,1fr);gap:0;padding:27px 0;border-top:1px solid var(--line);align-items:baseline}.news-list time{font-variant-numeric:tabular-nums;color:var(--muted);font-size:12px;letter-spacing:.035em}.news-list a{display:flex;align-items:baseline;justify-content:space-between;gap:24px;text-decoration:none;font-size:15px;line-height:1.8}.news-list a span{flex:none;color:var(--muted);font-size:18px}.news-article .page-heading h1{font-size:34px;line-height:1.65}.article-date{display:block;color:var(--muted);font-size:12px;letter-spacing:.05em;margin-top:22px;font-variant-numeric:tabular-nums}.article-body{margin-top:44px;font-size:15px;line-height:2}.article-body p{margin-bottom:26px}.article-body h2,.article-body h3,.article-body h4,.article-body h5,.article-body h6{font-size:21px;margin:38px 0 22px}.article-body ul,.article-body ol{padding-left:24px;margin:26px 0}.article-body li{margin:12px 0}.article-body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;font-size:13px;margin:28px 0}.article-body th,.article-body td{border:1px solid var(--line);padding:12px 16px;text-align:left;vertical-align:top;min-width:80px;line-height:1.8}.article-body th{background:var(--soft);font-weight:500}.article-body a{overflow-wrap:anywhere}.site-footer{max-width:calc(var(--measure) + 96px);margin:100px auto 0;padding:43px 48px 30px;border-top:1px solid var(--line)}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:36px}.footer-links{display:flex;flex-wrap:wrap;gap:18px 27px;font-size:12px}.footer-links a{text-decoration:none;min-height:44px;display:flex;align-items:center}.footer-bottom{display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:11px;margin-top:39px}.footer-bottom a{text-decoration:none;display:inline-flex;align-items:center;gap:18px;min-height:44px}.footer-bottom>span{display:flex;align-items:center}
@media(max-width:1000px){.desktop-nav{gap:16px}.site-header,.home-main,.page-main,.site-footer{padding-left:32px;padding-right:32px}.editorial{grid-template-columns:150px minmax(0,1fr);gap:38px}.brand strong{font-size:20px}}
@media(max-width:760px){body{font-size:16px;line-height:1.95}.site-header{display:block;padding:22px 22px 14px}.brand strong{font-size:21px}.desktop-nav{display:none}.mobile-nav{display:block;margin-top:17px}.mobile-nav summary{list-style:none;display:flex;align-items:center;justify-content:space-between;min-height:44px;border-top:1px solid var(--line);font-size:13px;cursor:pointer}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary::after{content:'＋';font-size:20px}.mobile-nav[open] summary::after{content:'－'}.mobile-nav nav{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;padding-bottom:10px}.mobile-nav nav a{font-size:13px;text-decoration:none;padding:12px 0;border-bottom:1px solid var(--line);min-height:44px}.mobile-nav nav a[aria-current]{font-weight:600}.home-main,.page-main{padding:0 22px}.hero{padding-top:42px}.eyebrow{margin-bottom:22px}.hero h1{font-size:33px;line-height:1.65;letter-spacing:.01em}.hero-copy{font-size:15px;margin-top:26px;line-height:2}.hero-art{margin-top:30px}.hero-art img{aspect-ratio:4/3;object-fit:cover;object-position:42% center;max-width:none}.section{margin-top:49px;padding-top:25px;scroll-margin-top:24px}.section h2{font-size:23px;margin-bottom:22px}.service-pair{grid-template-columns:1fr;gap:0}.breadcrumbs{font-size:10px;gap:9px;padding-top:22px}.page-heading{padding:36px 0 28px}.page-heading h1{font-size:30px;line-height:1.65}.page-heading .eyebrow{margin-bottom:12px}.editorial{grid-template-columns:1fr;gap:30px;padding-top:24px}.toc details{position:static;padding-bottom:10px;border-bottom:1px solid var(--line)}.toc summary::after{content:'−';margin-left:auto}.toc details:not([open]) summary::after{content:'＋'}.toc ol{margin:0}.toc a{padding:9px 0}.toc li:last-child{border-bottom:0}.reading>.section:first-child{margin-top:0}.reading ul{padding-left:21px}.person-name{font-size:18px}.timeline>div{grid-template-columns:1fr;gap:5px;padding:17px 0}.timeline dd{font-size:14px}.facts>div{grid-template-columns:1fr;gap:9px;padding:19px 0}.facts dd{font-size:15px}.contact-panel{padding:28px 22px;margin-top:30px}.contact-panel h2{font-size:22px}.button{padding:13px 19px}.contact-buttons{flex-direction:column}.policy-body{padding-top:28px;font-size:15px}.policy-section{padding-top:24px;margin-top:21px}.policy-section h2{font-size:20px}.news-labels{display:none}.news-list{margin-top:28px}.news-list li{grid-template-columns:1fr;gap:8px;padding:22px 0}.news-list a{gap:15px;font-size:15px}.news-article .page-heading h1{font-size:26px;line-height:1.75}.article-body{margin-top:32px;font-size:15px;line-height:2}.article-body h2,.article-body h3,.article-body h4{font-size:20px}.article-body table{font-size:12px}.article-body th,.article-body td{padding:10px 12px}.site-footer{margin-top:66px;padding:30px 22px 20px}.footer-top{display:block}.footer-links{display:grid;grid-template-columns:1fr;margin-top:26px;gap:0}.footer-links a{min-height:42px}.footer-bottom{margin-top:25px;align-items:start;flex-direction:column;gap:10px}.back-link{margin-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{.desktop-nav,.mobile-nav,.toc,.hero-art,.site-footer,.button{display:none}.site-header{border:0}.editorial{display:block}.page-main,.home-main{max-width:none;padding:0}a{color:#000}.section{break-inside:avoid}body{background:#fff}}

/* v2: the current site's font families and the supplied official brand color. */
:root{
  --paper:#fff;
  --brand-green:#73cd9f;
  --font-body:YuGothic,"ヒラギノ角ゴ ProN W3","Lucida Grande","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,Verdana,"ＭＳ Ｐゴシック",sans-serif;
}
body{font-family:var(--font-body)}
.hero h1,.page-heading h1,h1,h2,h3,h4,h5,h6{font-family:var(--font-body)}
.site-header{display:block;max-width:none;padding:0;background:var(--brand-green);border-bottom:0}
.header-inner{max-width:calc(var(--measure) + 96px);margin:auto;padding:20px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand-logo{background:transparent;padding:0;width:180px;line-height:0;flex:none}
/* The supplied reverse PNG uses transparent logo strokes; white shows through them. */
.brand-logo img{display:block;width:100%;height:auto;background:#fff}
.desktop-nav a{font-weight:500}
.site-header a:hover{color:var(--ink)}
.hero-art{background:#fff;border:0}
.hero-art img{aspect-ratio:auto;object-fit:contain;width:100%;max-width:100%;height:auto}
.founder-intro{display:grid;grid-template-columns:180px minmax(0,1fr);gap:32px;align-items:center;margin-bottom:32px}
.founder-photo{display:block;width:180px;height:auto}
.founder-intro .person-name{margin:0;overflow-wrap:anywhere}
.social-link{display:inline-flex;align-items:center;gap:12px}
.x-mark{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:#000;flex:none}
.x-mark img{display:block;width:20px;height:20px}
@media(max-width:1000px){.header-inner{padding-left:32px;padding-right:32px}}
@media(max-width:760px){
  .header-inner{display:block;padding:22px 22px 14px}
  .mobile-nav summary,.mobile-nav nav a{border-color:rgba(38,43,41,.25)}
  .mobile-nav nav a:hover{color:var(--ink)}
  .founder-intro{grid-template-columns:1fr;gap:22px}
  .founder-photo{width:180px;max-width:100%}
  .hero-art img{aspect-ratio:auto;object-fit:contain}
}
@media print{.site-header{background:#fff}.header-inner{padding:0}.brand-logo{padding:0;width:100px}}
