@import url('/fonts.css');
.archive-page{padding-block:65px}.archive-page>h1{font-size:42px;color:var(--olive-dark);margin-bottom:45px}.archive-content{max-width:920px;line-height:1.9}.archive-content h2{font-size:28px;margin:42px 0 18px;padding-top:24px;border-top:1px solid var(--line)}.archive-content p{margin-bottom:18px}.archive-content ol,.archive-content ul{padding-left:1.5em;margin-bottom:22px}.archive-content li{margin-bottom:9px}.archive-content table{border-collapse:collapse;width:100%;margin:20px 0}.archive-content td{border:1px solid var(--line);padding:12px;vertical-align:top}.archive-content td:first-child{width:30%;font-weight:700;background:#f7f8f2}.archive-content .wp-block-media-text{display:grid;grid-template-columns:minmax(0,30%) minmax(0,1fr);gap:38px;align-items:center}.archive-content .wp-block-media-text__media img{width:100%;height:auto;display:block}.archive-content .has-text-align-right{text-align:right}.archive-content dt{font-weight:700;margin-top:18px}.archive-content dd{margin:5px 0 0}@media(max-width:700px){.archive-page{padding-block:42px}.archive-page>h1{font-size:34px;margin-bottom:30px}.archive-content h2{font-size:25px}.archive-content .wp-block-media-text{grid-template-columns:1fr;gap:20px}.archive-content .wp-block-media-text__media img{max-width:220px}.archive-content td:first-child{width:36%}}
:root{--ink:#161c1d;--muted:#49514d;--olive:#65732d;--olive-dark:#485522;--paper:#fff;--tint:#f5f6ee;--line:#d9ddcc;--radius:7px}
body{font-family:'Noto Sans JP',sans-serif;font-size:16px;line-height:1.8;color:var(--ink)}
html{scroll-padding-top:30px}h1,h2,h3{letter-spacing:-.035em}h1{font-weight:800}h2{font-weight:800}h3{font-weight:700}p{margin:0 0 12px}button,a{touch-action:manipulation}.container{width:min(1272px,calc(100% - 128px));margin-inline:auto}.wrap{max-width:1100px}.icon{width:52px;height:52px;flex-shrink:0;object-fit:contain}.arrow{width:24px;height:24px;margin-left:18px}.button{gap:12px;min-height:66px;padding:16px 30px;font-size:19px;font-weight:700;border-radius:8px}.button .arrow{filter:brightness(0) invert(1);margin-left:24px}.text-link{gap:10px;font-size:16px;min-height:44px;font-weight:700;color:var(--ink);text-decoration:underline;text-underline-offset:8px}.text-link .arrow{width:19px;height:19px;margin-left:0}.small-only{display:none}.mini-label{color:var(--olive-dark);font-size:15px;font-weight:700;margin-bottom:15px}.site-header{background:#fff;border:0}.header-inner{min-height:110px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-size:23px;color:var(--olive-dark);gap:18px;font-weight:800}.brand img{width:92px;height:92px;padding:9px}.brand small{display:block;font-size:10px;letter-spacing:.13em;font-weight:500;line-height:1.3;margin-top:4px}.site-header nav{gap:25px}.site-header nav a{font-size:14px;font-weight:700;white-space:nowrap}.site-header nav .nav-contact{padding:9px 22px;color:#fff;background:var(--olive);border-radius:7px;min-height:48px}.menu-toggle{display:none}.home-hero{background:#fbfcf9 url('/assets/hero-workspace.png') center center/cover no-repeat;padding:43px 0 48px;min-height:465px;display:flex;align-items:center}.home-hero h1{font-size:clamp(38px,4.15vw,62px);line-height:1.38;margin-bottom:26px;letter-spacing:-.045em;max-width:950px}.home-hero h1 span,.detail-hero h1 span{color:var(--olive-dark)}.home-hero p{font-size:20px;line-height:1.8;max-width:800px}.hero-actions{display:flex;align-items:center;gap:38px;margin-top:29px}.journey{background:#eaf0dd;padding:39px 0 35px}.journey ol{padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.step-title{display:flex;align-items:center;gap:20px}.step-number{font-size:21px;display:flex;width:66px;height:66px;border-radius:50%;align-items:center;justify-content:center;flex-shrink:0;color:var(--olive-dark);background:#f9fbf4}.journey li:nth-child(2) .step-number{color:#fff;background:var(--olive)}.step-title h2{font-size:23px;line-height:1.5;margin:0 0 4px;letter-spacing:-.04em}.step-title h3{font-size:15px;margin:0;color:var(--olive-dark)}.step-detail{display:flex;gap:27px;align-items:center;margin-top:27px}.step-detail p{margin:0;font-size:16px;line-height:1.8}.work-examples{padding:45px 0 43px}.work-intro{display:flex;justify-content:space-between;align-items:center;gap:45px;margin-bottom:30px}.work-intro h2{font-size:39px;margin:0;white-space:nowrap}.work-intro p{font-size:16px;max-width:520px;margin:0}.example-row{display:grid;grid-template-columns:95px 1fr 1fr;gap:35px;align-items:start}.example-row .mini-label{border-top:1px solid #adb684;padding-top:13px;width:75px}.example-row article{display:flex;gap:25px}.example-row article:last-child{border-left:1px solid #bcc3a5;padding-left:38px}.example-row h3{font-size:21px;margin-bottom:9px}.example-row p{font-size:15px;margin-bottom:0}.people-band{background:#f7f8f2;padding:22px 0}.people-inner{display:grid;grid-template-columns:1.18fr 1fr;gap:40px;align-items:center}.profile{display:flex;align-items:center;gap:36px}.profile-photo{width:205px;height:205px;object-fit:contain;display:block}.profile .mini-label{font-size:15px;margin-bottom:15px}.profile h2{font-size:28px;margin-bottom:9px;line-height:1.5}.profile h2 small{font-size:19px;font-weight:600}.profile p{font-size:16px;margin-bottom:0}.profile .text-link{font-size:13px}.seminar-entry{border-left:1px solid #b5bea0;padding-left:42px;display:flex;gap:25px;align-items:flex-start}.seminar-entry .icon{width:62px;height:62px;margin-top:42px}.seminar-entry h2{font-size:26px;margin:0 0 10px}.seminar-entry p{font-size:16px;margin-bottom:6px}.seminar-entry details{border:0;padding:0}.seminar-entry summary,.finance-section summary{font-size:16px;text-decoration:underline;text-underline-offset:7px;list-style-position:inside}.seminar-entry details p{font-size:15px;line-height:1.9}.finance-section{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:38px;padding:40px 0 28px}.finance-section h2{font-size:30px;line-height:1.5;margin-bottom:12px;color:var(--olive-dark)}.finance-section p{font-size:15px;line-height:1.8}.finance-section article{display:flex;gap:23px}.finance-section article:last-child{border-left:1px solid #b5bea0;padding-left:35px}.finance-section h3{font-size:21px;margin:0 0 10px}.finance-section details{border:0;padding:0}.finance-section details p{font-size:15px;padding-top:10px}.finance-section details .text-link{font-size:14px}.finance-section .icon{width:55px;height:55px}.contact-band{background:#36471c url('/assets/closing-leaves.png') center/cover no-repeat;color:#fff;padding:25px 0 28px}.contact-band h2{font-size:34px;line-height:1.6;margin:0 0 20px}.contact-band-row{display:flex;gap:52px;align-items:center}.contact-band .light{background:#fff;color:var(--olive-dark);border-color:#fff;min-width:460px}.contact-band .light:hover{background:#edf1e3}.contact-band .light .arrow{filter:none}.contact-band-row>p{font-size:13px;line-height:1.7;margin:0;border-left:1px solid #bdc4ac;padding-left:40px}.contact-band .text-link{color:#fff;font-size:13px}.contact-band .text-link .arrow{filter:brightness(0) invert(1)}.site-footer{margin:0;background:#fff;padding:28px 0 20px}.footer-row p{margin:8px 0 0;color:var(--muted)}.footer-row a{font-size:12px}.preview-note{font-size:11px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:10px}.detail-hero{padding-block:65px}.detail-hero h1{font-size:52px;line-height:1.5}.detail-hero .lead{font-size:19px;max-width:800px}.detail-hero .button{margin-top:15px}.detail-section{padding-block:55px;border-top:1px solid var(--line)}.detail-section h2{font-size:32px;line-height:1.55}.detail-section .icon{margin-bottom:20px}.detail-section ul{padding-left:22px}.detail-section .section-head ul{margin:0}.deliverables{font-size:19px;line-height:2.6}.detail-section .small{margin-top:20px}.detail-section details p{max-width:900px}.form-shell{padding-top:45px}.form-shell h1{font-size:40px}.review{font-size:12px}.checkbox{padding:14px 0}.form-shell button{min-height:52px}button:disabled{opacity:.6;cursor:wait}.site-header .secondary{background:#fff;color:var(--olive-dark)}
@media(max-width:1200px){.container{width:calc(100% - 72px)}.brand{font-size:19px}.brand img{width:75px;height:75px}.site-header nav{gap:16px}.site-header nav a{font-size:12px}.step-title{gap:12px}.step-title h2{font-size:20px}.step-title h3{font-size:13px}.journey ol{gap:24px}.step-number{width:52px;height:52px}.step-detail{gap:15px}.work-intro h2{font-size:32px}.work-intro p{font-size:14px}.profile-photo{width:160px;height:160px}.profile{gap:23px}.profile h2{font-size:25px}.profile h2 small{font-size:15px}.people-inner{gap:24px}.seminar-entry{padding-left:24px;gap:18px}.seminar-entry .icon{width:45px;height:45px}.finance-section{gap:24px}.finance-section h2{font-size:25px}.finance-section h3{font-size:18px}.finance-section article{gap:14px}.finance-section article:last-child{padding-left:24px}.finance-section .icon{width:43px;height:43px}}
@media(max-width:1060px){.header-inner{min-height:88px;flex-wrap:wrap;gap:0;position:relative}.menu-toggle{display:inline-flex;min-height:44px;padding:8px 14px;font-size:13px}.site-header nav{display:none;flex-direction:column;gap:0;align-items:stretch;width:100%;padding:10px 0 20px}.site-header nav.is-open{display:flex}.site-header nav a{font-size:15px;min-height:48px;border-top:1px solid var(--line)}.site-header nav .nav-contact{justify-content:center;margin-top:10px}.home-hero h1{font-size:4.4vw}.home-hero p{font-size:17px}.hero-actions{gap:24px}.hero-actions .button{font-size:17px}.hero-actions .text-link{font-size:14px}.journey ol{gap:24px}.step-title{align-items:flex-start}.step-number{width:40px;height:40px;font-size:16px}.step-title h2{font-size:18px}.step-detail .icon{width:38px;height:38px}.step-detail p{font-size:14px}.work-intro{display:block}.work-intro p{margin-top:18px}.example-row{grid-template-columns:1fr 1fr}.example-row>.mini-label{grid-column:1/-1;margin:0}.people-inner{grid-template-columns:1fr}.seminar-entry{padding:25px 0 0;border-left:0;border-top:1px solid var(--line);gap:25px}.seminar-entry .icon{margin-top:15px}.finance-section{grid-template-columns:1fr 1fr}.finance-section>div{grid-column:1/-1}.finance-section>div p{max-width:550px}.finance-section h2{font-size:30px}.contact-band h2{font-size:28px}.contact-band .light{min-width:0}.contact-band-row{gap:30px}.contact-band-row>p{padding-left:26px}.contact-band .button{font-size:17px;padding-inline:24px}}
@media(max-width:640px){.container{width:calc(100% - 40px)}.header-inner{min-height:86px}.brand{gap:7px;font-size:16px;white-space:normal}.brand img{width:60px;height:60px;padding:5px}.brand small{font-size:7px;letter-spacing:.06em}.menu-toggle{font-size:12px;padding:8px 10px}.home-hero{min-height:0;padding:34px 0 190px;background-size:auto 350px;background-position:right bottom;background-color:#fff}.home-hero h1{font-size:clamp(24px,7.25vw,43px);line-height:1.5;letter-spacing:-.055em;margin-bottom:20px;max-width:none}.home-hero p{font-size:15px;max-width:none;line-height:1.9}.desktop-only{display:none}.small-only{display:initial}.hero-actions{flex-direction:column;align-items:flex-start;gap:10px;margin-top:23px}.button{min-height:58px;padding:14px 20px;font-size:17px;gap:8px}.home-hero .button{min-width:260px}.button .arrow{margin-left:14px}.hero-actions .text-link{font-size:13px;background:#ffffffed;padding:0 5px}.journey{padding:30px 0}.journey ol{display:grid;grid-template-columns:1fr;gap:24px}.journey li{border-bottom:1px solid #d2dbbf;padding-bottom:24px}.journey li:last-child{border:0;padding:0}.step-title{align-items:center;gap:17px}.step-number{width:46px;height:46px;font-size:16px}.step-title h2{font-size:20px}.step-title h3{font-size:13px}.step-detail{margin-top:14px;gap:25px;padding-left:4px}.step-detail .icon{width:36px;height:36px}.step-detail p{font-size:14px}.work-examples{padding:38px 0}.work-intro{margin-bottom:27px}.work-intro h2{font-size:clamp(23px,6.4vw,31px);white-space:normal}.work-intro p{font-size:14px;margin-top:17px}.example-row{grid-template-columns:1fr;gap:22px}.example-row article{gap:20px}.example-row article:last-child{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:24px}.example-row .icon{width:40px;height:40px}.example-row h3{font-size:18px}.example-row p{font-size:14px}.people-band{padding:28px 0}.profile{align-items:flex-start;gap:18px;flex-wrap:wrap}.profile-photo{width:106px;height:106px}.profile>div{flex:1;min-width:195px}.profile .mini-label{font-size:12px;margin-bottom:10px}.profile h2{font-size:23px}.profile h2 small{display:block;font-size:12px;margin-bottom:3px}.profile p{font-size:13px}.people-inner{gap:26px}.seminar-entry{gap:20px}.seminar-entry .icon{width:39px;height:39px}.seminar-entry h2{font-size:22px}.seminar-entry p{font-size:14px}.seminar-entry .mini-label{font-size:13px}.seminar-entry details .text-link{font-size:14px}.finance-section{grid-template-columns:1fr;gap:28px;padding:38px 0}.finance-section>div{grid-column:auto}.finance-section h2{font-size:27px}.finance-section h3{font-size:20px}.finance-section article{gap:22px}.finance-section article:last-child{border-left:0;padding:24px 0 0;border-top:1px solid var(--line)}.finance-section p{font-size:14px}.finance-section .icon{width:42px;height:42px}.contact-band{padding:32px 0;background-position:70% center}.contact-band h2{font-size:25px;line-height:1.55;margin-bottom:25px}.contact-band-row{display:block}.contact-band-row .button{width:100%;font-size:16px;padding-inline:14px}.contact-band-row>p{padding:20px 0 0;border:0;font-size:12px;margin-top:8px}.contact-band .text-link{font-size:12px}.site-footer{padding-block:26px}.site-footer .footer-row{display:block}.site-footer .footer-row>div+div{margin-top:18px}.footer-row a{font-size:11px;margin-right:12px}.preview-note{font-size:10px}.detail-hero{padding-block:40px}.detail-hero h1{font-size:29px;line-height:1.6}.detail-hero .lead{font-size:15px}.detail-hero .button{width:100%;font-size:16px}.detail-section{padding-block:38px}.detail-section h2{font-size:26px}.detail-section p,.detail-section li{font-size:15px}.detail-section .split,.detail-section .section-head{gap:25px}.detail-section .deliverables{font-size:15px;line-height:2.3}.detail-section .icon{width:42px;height:42px;margin-bottom:12px}.form-shell h1{font-size:30px}.form-shell .actions{margin-top:24px}.form-shell .actions button{font-size:14px}details summary{font-size:15px}.form-shell{padding-top:26px}.form-shell .notice{font-size:13px}.review{font-size:10px}.form-shell .field-hint{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(min-width:1201px){.home-hero{padding-block:26px 30px}.home-hero h1{font-size:72px;line-height:1.32;letter-spacing:-.035em;max-width:1000px}.work-intro h2{font-size:43px}}

.archive-content figure{margin:0}.archive-content .wp-block-media-text{align-items:start}.archive-content .wp-block-media-text__content h2{margin-top:0}.archive-content .wp-block-vk-blocks-spacer{display:none}.archive-content .wp-block-media-text__media img{max-width:260px}.archive-content .wp-block-table{overflow-wrap:anywhere}@media(max-width:700px){.archive-content .wp-block-media-text{grid-template-columns:1fr}.archive-content .wp-block-media-text__media img{max-width:190px}.archive-content td{padding:10px;font-size:14px}}

.course-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.course-list article+article{border-left:1px solid var(--line);padding-left:28px}.course-list h2{font-size:27px}@media(max-width:900px){.course-list{grid-template-columns:1fr;gap:28px}.course-list article+article{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}}

.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#send-status{margin-block:16px}#turnstile-widget{margin-block:20px}#send-button{margin-right:16px}a:focus-visible,button:focus-visible{outline:3px solid #65732d;outline-offset:4px}

/* A quiet entry for visitors seeking vocational training. */
.vocational-entry{padding-bottom:40px}.vocational-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;background:#f7f8f2;border:1px solid var(--line);border-radius:8px;padding:26px 30px}.vocational-inner h2{font-size:22px;margin:0 0 8px;color:var(--olive-dark)}.vocational-inner p{font-size:14px;margin:0;max-width:680px}.vocational-inner>.text-link{flex-shrink:0;font-size:15px}
@media(max-width:900px){.vocational-inner{align-items:flex-start;flex-direction:column;gap:12px}}
@media(max-width:640px){.vocational-entry{padding-bottom:32px}.vocational-inner{padding:22px}.vocational-inner h2{font-size:20px}}
