:root{--bg:#f8f6f0;--card:#ffffff;--soft:#eef4f7;--navy:#1f2a44;--text:#667085;--blue:#2f5f8f;--gold:#c9a86a;--line:#e4e8ee;--shadow:0 12px 30px rgba(31,42,68,0.07)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--navy);font-family:Hiragino Mincho ProN,Yu Mincho,YuMincho,"Noto Serif JP",serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.siteHeader{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:clamp(18px,2.4vw,32px);gap:clamp(18px,2.4vw,32px);min-height:78px;padding:12px clamp(20px,4vw,64px);background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(31,42,68,.05);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:14px;min-width:250px}.brand img{width:238px;height:auto}.brand span{display:none}.mainNav{display:flex;justify-content:flex-end;gap:clamp(14px,2.4vw,34px);font-family:Hiragino Sans,Yu Gothic,Noto Sans SC,Arial,sans-serif;font-size:14px;font-weight:700}.mainNav a{padding:10px 0;color:var(--navy)}.headerActions{display:flex;align-items:center;gap:14px}.languageSwitch{display:inline-grid;grid-template-columns:repeat(3,auto);gap:2px;padding:3px;background:#f2f4f7;border:1px solid var(--line);border-radius:999px;font-family:Hiragino Sans,Yu Gothic,Noto Sans SC,Arial,sans-serif;font-size:12px;font-weight:700;white-space:nowrap}.languageSwitch a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:28px;padding:0 9px;color:var(--text);border-radius:999px}.languageSwitch a.active{color:#fff;background:var(--blue)}.contactButton,.primaryButton,.secondaryButton{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 28px;border-radius:4px;font-family:Hiragino Sans,Yu Gothic,Noto Sans SC,Arial,sans-serif;font-weight:700;letter-spacing:0}.contactButton{color:#fff;background:linear-gradient(180deg,#d4b778,#b8944c);box-shadow:0 8px 18px rgba(143,109,44,.18)}.primaryButton{color:#fff;background:var(--blue);box-shadow:0 12px 24px rgba(47,95,143,.2)}.secondaryButton{color:#9a7431;background:#fff;border:1px solid var(--gold)}.hero{position:relative;display:grid;grid-template-columns:minmax(430px,.82fr) minmax(560px,1.18fr);align-items:center;min-height:570px;overflow:hidden;background:linear-gradient(90deg,rgba(248,246,240,.98) 0,rgba(248,246,240,.9) 42%,rgba(238,244,247,.54) 100%),var(--soft)}.hero:before{position:absolute;inset:0;content:"";background:linear-gradient(90deg,rgba(248,246,240,1),rgba(248,246,240,.96) 32%,rgba(248,246,240,.08) 64%),radial-gradient(circle at 12% 82%,rgba(201,168,106,.16),transparent 24%);pointer-events:none;z-index:2}.heroText{position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;padding:clamp(44px,6vw,78px) clamp(28px,5vw,80px) clamp(44px,6vw,78px) clamp(32px,6vw,88px)}.eyebrow,.sectionTitle p{position:relative;margin:0 0 14px;color:#9b7b40;font-family:Hiragino Sans,Yu Gothic,sans-serif;font-size:13px;font-weight:700;letter-spacing:0}.eyebrow:before,.sectionTitle p:before{display:inline-block;width:24px;height:2px;margin-right:10px;vertical-align:middle;background:var(--gold);content:""}.hero h1,.pageHero h1{max-width:720px;margin:0;color:#08214a;font-size:clamp(36px,4vw,54px);font-weight:700;line-height:1.32}.heroText>p:not(.eyebrow),.pageHero>p:not(.eyebrow){max-width:560px;margin:22px 0 0;color:var(--navy);font-family:Hiragino Sans,Yu Gothic,sans-serif;font-size:17px;line-height:1.9}.heroActions{display:flex;flex-wrap:wrap;gap:20px;margin-top:28px}.heroVisual{position:relative;z-index:1;width:min(96%,980px);margin:28px 0 28px auto;padding:12px;background:rgba(255,255,255,.78);border:1px solid rgba(228,232,238,.78);border-right:0;border-radius:10px 0 0 10px;box-shadow:0 24px 64px rgba(31,42,68,.12)}.heroVisual:before{position:absolute;inset:30px auto 30px -34px;width:88px;background:rgba(255,255,255,.72);-webkit-clip-path:polygon(38% 0,100% 0,62% 100%,0 100%);clip-path:polygon(38% 0,100% 0,62% 100%,0 100%);content:"";z-index:2}.heroVisual img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px 0 0 6px;filter:saturate(.96) brightness(1.02)}.heroNote{position:absolute;z-index:3;display:grid;grid-gap:5px;gap:5px;width:min(260px,34%);padding:16px 18px;background:rgba(255,255,255,.92);border:1px solid rgba(228,232,238,.95);border-radius:8px;box-shadow:0 16px 36px rgba(31,42,68,.11);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.heroNote.primary{right:8%;bottom:11%}.heroNote.secondary{left:8%;top:10%}.heroNote span{color:#9b7b40;font-size:12px;font-weight:700}.heroNote span,.heroNote strong{font-family:Hiragino Sans,Yu Gothic,sans-serif}.heroNote strong{color:var(--navy);font-size:14px;line-height:1.6}.companyPreview,.contentPage,.ctaBlock,.pageHero,.section{width:min(1180px,calc(100% - 40px));margin:0 auto}.section{padding:42px 0 0}.section:nth-of-type(3),.section:nth-of-type(5){width:100%;padding:46px max(20px,calc((100% - 1180px) / 2)) 0;background:linear-gradient(180deg,rgba(238,244,247,.62),rgba(248,246,240,0))}.sectionTitle{margin-bottom:20px}.companyPreview h2,.contentPage h2,.ctaBlock h2,.sectionTitle h2{margin:0;color:#08214a;font-size:clamp(25px,3vw,34px);line-height:1.35}.card p,.companyPreview p,.contentPage li,.contentPage p,.ctaBlock p,.miniCard p,.partnerPanel p,.partnerPanel small,.sectionTitle span{color:var(--text);font-family:Hiragino Sans,Yu Gothic,Noto Sans SC,Arial,sans-serif;line-height:1.85}.grid{display:grid;grid-gap:18px;gap:18px}.grid.four{grid-template-columns:repeat(4,1fr)}.grid.three{grid-template-columns:repeat(3,1fr)}.card,.contentBox,.miniCard,.partnerPanel{background:var(--card);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.card{min-height:188px;padding:28px 24px;text-align:center;transition:transform .18s ease,box-shadow .18s ease}.cardLink:hover .card{transform:translateY(-3px);box-shadow:0 20px 46px rgba(31,42,68,.12)}.icon{width:40px;height:40px;margin:0 auto 14px;fill:none;stroke:#08214a;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}.card h3,.flow h3,.miniCard h3,.partnerPanel h3{margin:0 0 10px;color:#08214a;font-size:19px;line-height:1.45}.card p{margin:0;font-size:14px}.split{display:grid;grid-template-columns:1.6fr .9fr;grid-gap:22px;gap:22px;align-items:stretch}.resultGrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.miniCard,.partnerPanel{padding:22px}.miniCard p,.partnerPanel p{margin:6px 0;font-size:14px}.partnerPanel{background:linear-gradient(180deg,#fff,#fbfaf6)}.partnerPanel h3{padding-bottom:12px;border-bottom:1px solid var(--line)}.partnerPanel small{display:block;margin-top:18px;font-size:12px}.partnerLink{display:inline-flex;align-items:center;gap:8px;color:#08214a;font-weight:700;text-decoration:underline;-webkit-text-decoration-color:rgba(201,168,106,.62);text-decoration-color:rgba(201,168,106,.62);text-decoration-thickness:1px;text-underline-offset:4px}.partnerLink:after{color:var(--gold);font-family:Hiragino Sans,Yu Gothic,Noto Sans SC,Arial,sans-serif;font-size:12px;content:"↗"}.partnerLink:hover{color:var(--blue)}.flow{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:18px;gap:18px}.flow article{position:relative;min-height:176px;padding:22px 18px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.flow article:not(:last-child):after{position:absolute;top:50%;right:-16px;width:14px;height:2px;background:var(--gold);content:""}.flow span{display:block;color:var(--gold);font-family:Hiragino Sans,Yu Gothic,sans-serif;font-size:12px;font-weight:700}.flow p{font-size:13px}.companyPreview{display:grid;grid-template-columns:320px 1fr;grid-gap:30px;gap:30px;align-items:center;margin-top:42px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.companyPreview img{width:100%;aspect-ratio:4/3;border-radius:6px;object-fit:cover;object-position:28% center}dl{grid-gap:10px;gap:10px;margin:18px 0 0}dl,dl div{display:grid}dl div{grid-template-columns:130px 1fr;grid-gap:16px;gap:16px;padding-top:10px;border-top:1px solid var(--line)}dt{color:#08214a;font-weight:700}dd,dt{font-family:Hiragino Sans,Yu Gothic,sans-serif}dd{margin:0;color:var(--text)}.ctaBlock{display:grid;grid-template-columns:1fr auto;grid-gap:28px;gap:28px;align-items:center;margin-bottom:40px;padding:32px clamp(24px,5vw,62px);background:linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.86)),var(--soft);border:1px solid rgba(201,168,106,.42);border-radius:8px}.ctaBlock,.pageHero{margin-top:30px;box-shadow:var(--shadow)}.pageHero{padding:48px clamp(24px,5vw,64px);background:linear-gradient(90deg,#fff,rgba(255,255,255,.92) 52%,rgba(255,255,255,.36)),url(/images/school-hero.jpg) 100% /auto 100% no-repeat;border:1px solid var(--line);border-radius:8px}.contentPage{padding:28px 0 42px}.contentBox{padding:28px}.contentBox,.contentPage>.grid,.contentPage>.resultGrid,.contentPage>.tableLike{margin-bottom:18px}.contentBox h2:not(:first-child){margin-top:28px}.contentBox ul{padding-left:1.2em}.legalContent{display:grid;grid-gap:24px;gap:24px}.legalSection{padding-bottom:22px;border-bottom:1px solid var(--line)}.legalSection:last-child{padding-bottom:0;border-bottom:0}.legalSection h2{margin-bottom:10px;font-size:clamp(19px,2.2vw,24px)}.legalSection p+p{margin-top:6px}.introSection{display:grid;grid-template-columns:.82fr 1.18fr;grid-gap:24px;gap:24px;align-items:start}.introCopy .sectionTitle{margin-bottom:0}.checkGrid,.detailGrid,.policyGrid{display:grid;grid-gap:14px;gap:14px}.policyGrid{grid-template-columns:repeat(3,1fr)}.detailGrid{grid-template-columns:repeat(2,1fr);margin-bottom:18px}.checkGrid{grid-template-columns:repeat(3,1fr);margin-bottom:18px}.checkItem,.detailItem,.noteBox,.policyItem{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.checkItem,.detailItem,.policyItem{padding:22px}.policyItem span{display:block;width:34px;height:3px;margin-bottom:18px;background:var(--gold)}.checkItem h3,.detailItem h3,.noteBox h2,.policyItem h3{margin:0 0 10px;color:#08214a;font-size:18px;line-height:1.5}.checkItem p,.detailItem p,.flow p,.noteBox p,.policyItem p{margin:0;color:var(--text);font-family:Hiragino Sans,Yu Gothic,sans-serif;line-height:1.85}.detailItem strong{display:block;margin-bottom:8px;color:var(--gold);font-family:Hiragino Sans,Yu Gothic,sans-serif;font-size:13px}.noteBox,.noticeBand{padding:30px;background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,255,255,.9)),var(--soft)}.directorProfile{display:grid;grid-template-columns:minmax(180px,230px) 1fr;grid-gap:clamp(22px,3vw,38px);gap:clamp(22px,3vw,38px);align-items:center}.directorProfile picture{display:block}.directorProfile img{width:100%;aspect-ratio:1/1;height:auto;object-fit:cover;border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 34px rgba(31,42,68,.1)}.directorProfile h2{margin-bottom:6px}.directorProfile strong{display:block;margin-bottom:18px;color:var(--navy);font-size:22px;letter-spacing:0}.nameReading{display:block;margin-top:6px;color:var(--text);font-family:Hiragino Sans,Yu Gothic,Noto Sans SC,Arial,sans-serif;font-size:14px;font-weight:600}.companyInfoGrid{display:grid;grid-template-columns:.72fr 1.28fr;grid-gap:20px;gap:20px;align-items:start;margin-bottom:18px}.companyInfoLead{position:-webkit-sticky;position:sticky;top:102px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.companyInfoLead h2{margin:0 0 14px;color:#08214a;font-size:clamp(25px,3vw,34px)}.companyInfoLead p:not(.eyebrow){margin:0;color:var(--text);font-family:Hiragino Sans,Yu Gothic,sans-serif;line-height:1.9}.accessGrid{display:grid;grid-template-columns:.78fr 1.22fr;grid-gap:18px;gap:18px;align-items:stretch}.accessGrid .mapSection,.accessGrid .noteBox{margin-bottom:0}.mapButton{width:-moz-fit-content;width:fit-content;margin-top:18px}.mapSection{overflow:hidden;min-height:320px;margin-bottom:18px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.mapSection iframe{display:block;width:100%;height:340px;border:0}.noticeBand{width:min(1180px,calc(100% - 40px));margin:42px auto 0;border:1px solid rgba(201,168,106,.42);border-radius:8px;box-shadow:var(--shadow)}.noticeBand h2{margin:0 0 12px;color:#08214a;font-size:clamp(24px,3vw,32px)}.noticeBand p:not(.eyebrow){max-width:920px;margin:0;color:var(--text);font-family:Hiragino Sans,Yu Gothic,sans-serif;line-height:1.9}.tableLike{display:grid;grid-gap:0;gap:0;overflow:hidden;border:1px solid var(--line);border-radius:8px}.tableLike div{display:grid;grid-template-columns:210px 1fr;grid-gap:20px;gap:20px;padding:14px 18px;background:#fff;border-bottom:1px solid var(--line)}.tableLike div:last-child{border-bottom:0}.tableLike strong{color:#08214a}.tableLike span,.tableLike strong{font-family:Hiragino Sans,Yu Gothic,sans-serif}.tableLike span{color:var(--text);line-height:1.75}.contactForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px;max-width:860px}.contactForm label{display:grid;grid-gap:8px;gap:8px;color:#08214a;font-family:Hiragino Sans,Yu Gothic,sans-serif;font-weight:700}.contactForm label span{color:#9b7b40;font-size:12px}.contactForm input,.contactForm select,.contactForm textarea{width:100%;border:1px solid var(--line);border-radius:6px;padding:14px 16px;color:var(--navy);background:#fff;font:inherit}.contactForm input:focus,.contactForm select:focus,.contactForm textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,95,143,.12);outline:none}.contactForm textarea{min-height:150px;resize:vertical}.captchaField,.formStatus,.fullField{grid-column:1/-1}.captchaField{max-width:260px}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.formActions{display:flex;flex-wrap:wrap;gap:14px}.formActions button{border:0;cursor:pointer}.formStatus{margin:0;padding:12px 14px;color:var(--navy);background:var(--soft);border:1px solid var(--line);border-radius:6px}.formStatus,.siteFooter{font-family:Hiragino Sans,Yu Gothic,sans-serif}.siteFooter{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px clamp(20px,4vw,64px);color:#fff;background:#08214a;font-size:13px}.footerLinks{display:flex;flex-wrap:wrap;gap:16px}.footerLinks a:not(:last-child):after{margin-left:16px;color:rgba(255,255,255,.44);content:"|"}.js-enabled .reveal{opacity:0;transform:translateY(12px);transition:opacity .52s ease,transform .52s ease;will-change:opacity,transform}.js-enabled .reveal.is-visible{opacity:1;transform:translateY(0);will-change:auto}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js-enabled .reveal{opacity:1;transform:none;transition:none}}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (max-width:980px){.siteHeader{grid-template-columns:1fr;gap:16px}.brand{min-width:0}.brand img{width:210px}.mainNav{grid-column:auto;justify-content:flex-start;overflow-x:auto;padding-bottom:2px;gap:22px;white-space:nowrap}.headerActions{justify-content:space-between;width:100%}.accessGrid,.companyInfoGrid,.companyPreview,.ctaBlock,.directorProfile,.hero,.introSection,.split{grid-template-columns:1fr}.companyInfoLead{position:static}.hero{min-height:auto}.hero:before{background:linear-gradient(180deg,rgba(248,246,240,.42),rgba(248,246,240,1) 58%)}.heroVisual{order:-1;width:calc(100% - 28px);margin:26px auto 0;border-right:1px solid rgba(228,232,238,.78);border-radius:10px}.heroVisual:before{display:none}.heroVisual img{border-radius:6px}.heroNote{width:min(240px,42%)}.checkGrid,.detailGrid,.flow,.grid.four,.policyGrid,.resultGrid{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:1fr}.flow article:after{display:none}.ctaBlock{justify-items:start}}@media (max-width:640px){.siteHeader{position:relative;padding:10px 14px;gap:10px}.brand img{width:168px}.contactButton{min-height:40px;padding:0 14px;font-size:13px}.mainNav{width:100%;font-size:13px;gap:18px}.headerActions{align-items:stretch;flex-direction:column;gap:8px}.languageSwitch{width:100%;grid-template-columns:repeat(3,1fr)}.languageSwitch a{min-width:0;height:30px}.heroText{padding:34px 18px 40px}.heroVisual{width:calc(100% - 24px);padding:8px}.heroNote{position:static;width:auto;margin:8px 0 0;padding:12px 14px}.hero h1,.pageHero h1{font-size:30px}.heroText>p:not(.eyebrow),.pageHero>p:not(.eyebrow){font-size:15px}.heroActions,.primaryButton,.secondaryButton{width:100%}.contactForm{grid-template-columns:1fr}.captchaField{max-width:none}.formActions{width:100%}.companyPreview,.contentPage,.ctaBlock,.pageHero,.section{width:min(100% - 28px,1180px)}.pageHero{margin-top:18px;padding:34px 20px}.section:nth-of-type(3),.section:nth-of-type(5){padding-right:14px;padding-left:14px}.checkGrid,.detailGrid,.flow,.grid.four,.policyGrid,.resultGrid{grid-template-columns:1fr}.companyPreview,.contentBox{padding:20px}.legalContent{gap:18px}.legalSection{padding-bottom:18px}.directorProfile{gap:18px}.directorProfile picture{max-width:220px;margin:0 auto}.mapSection iframe{height:320px}.tableLike div,dl div{grid-template-columns:1fr;gap:6px}.siteFooter{align-items:flex-start;flex-direction:column}}