:root{--brand:#168db3;--brand-dark:#006f8f;--brand-deep:#005168;--brand-pale:#eaf8fc;--accent:#f39800;--ink:#243843;--muted:#607783;--line:#d4e3e8;--white:#fff;--shadow:0 10px 30px #0040581f;color:var(--ink);font-synthesis:none;background:#fff;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;line-height:1.75}img{max-width:100%;height:auto;display:block}a{color:var(--brand-dark);text-underline-offset:.2em}a:hover{text-decoration-thickness:2px}button,input,textarea{font:inherit}.container{width:min(1180px,100% - 40px);margin-inline:auto}.content-narrow,.content-narrow.container{width:min(820px,100% - 40px)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;color:#fff;background:#000;padding:.7rem 1rem;position:fixed;top:8px;left:8px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{z-index:20;background:#fff;position:relative}.header-main{align-items:center;gap:2rem;min-height:102px;display:flex}.brand{color:var(--ink);align-items:center;gap:1rem;text-decoration:none;display:flex}.brand img{object-fit:contain;width:76px;height:62px}.brand-mark{border:3px solid var(--brand);width:58px;height:58px;color:var(--brand);border-radius:50%;place-items:center;font:700 2rem Georgia;display:grid}.brand small,.brand strong{display:block}.brand small{color:var(--muted);letter-spacing:.08em;font-size:.78rem}.brand strong{letter-spacing:.18em;font-family:serif;font-size:1.8rem}.site-search{border:1px solid var(--line);border-radius:3px;margin-left:auto;display:flex;overflow:hidden}.site-search input{border:0;width:220px;padding:.65rem .8rem}.site-search button{background:var(--brand);color:#fff;border:0;padding:.65rem 1rem}.nav-toggle{background:0 0;border:0;width:46px;height:46px;margin-left:auto;padding:10px;display:none}.nav-toggle span{background:var(--brand-deep);height:2px;margin:6px 0;display:block}.global-nav{background:var(--brand)}.global-nav ul{margin:0 auto;padding:0;list-style:none;display:flex}.global-nav li{border-left:1px solid #ffffff40;flex:1}.global-nav li:last-child{border-right:1px solid #ffffff40}.global-nav a{color:#fff;text-align:center;place-items:center;min-height:56px;padding:.7rem;font-weight:700;text-decoration:none;display:grid}.global-nav a:hover,.global-nav a:focus-visible{background:var(--brand-dark)}.page-heading{background:linear-gradient(135deg,var(--brand-pale),#fff);border-bottom:1px solid var(--line);padding:2.6rem 0}.page-heading h1{margin:.3rem 0 0;font-size:clamp(1.8rem,4vw,2.8rem)}.breadcrumb{color:var(--muted);flex-wrap:wrap;gap:.7rem;font-size:.84rem;display:flex}.content-section{background-color:var(--section-bg,transparent);background-image:var(--section-image,none);background-position:50%;background-size:cover;padding:clamp(3.2rem,6vw,6rem) 0}.content-section+.content-section{border-top:1px solid #d4e3e8a6}.spacing-compact{padding-block:2rem}.spacing-spacious{padding-block:7.5rem}.width-narrow .container{max-width:820px}.width-wide .container{max-width:1380px}.width-full .container{width:100%;max-width:none}.eyebrow{color:var(--brand);letter-spacing:.14em;margin:0 0 .3rem;font-size:.82rem;font-weight:800}.section-title{text-align:center;margin:0 0 2rem;font-size:clamp(1.55rem,3vw,2.25rem);line-height:1.35}.section-title:after{content:"";background:var(--brand);width:56px;height:3px;margin:.8rem auto 0;display:block}.rich-content>:first-child{margin-top:0}.rich-content>:last-child{margin-bottom:0}.rich-content h2,.rich-content h3{line-height:1.45}.rich-content table{border-collapse:collapse;width:100%;display:block;overflow:auto}.rich-content th,.rich-content td{border:1px solid var(--line);padding:.7rem}.rich-content th{background:var(--brand-pale)}.align-center{text-align:center}.align-right{text-align:right}.content-narrow .container,.content-narrow{max-width:820px}.content-wide .container{max-width:1380px}.hero-carousel{background:linear-gradient(135deg,#c9edf6,var(--brand));min-height:clamp(320px,45vw,620px);position:relative;overflow:hidden}.hero-slide{opacity:0;transition:opacity .6s;position:absolute;inset:0}.hero-slide.active{opacity:1}.hero-slide img{object-fit:cover;width:100%;height:100%}.hero-slide:after{content:"";background:linear-gradient(90deg,#0032468c,#0000 70%);position:absolute;inset:0}.hero-overlay{z-index:1;color:#fff;flex-direction:column;justify-content:center;align-items:flex-start;display:flex;position:absolute;inset:0}.hero-overlay h2{text-shadow:0 2px 12px #003;font-size:clamp(2rem,5vw,4rem)}.hero-fallback{color:#fff;background:radial-gradient(circle at 70% 30%,#ffffff59,transparent 30%),linear-gradient(135deg,var(--brand-deep),#36b6d0);place-items:center;min-height:clamp(320px,45vw,620px);display:grid}.hero-fallback p{letter-spacing:.16em;font-weight:700}.hero-fallback h1{letter-spacing:.2em;margin:.2rem 0;font-family:serif;font-size:clamp(4rem,11vw,8rem)}.carousel-controls{z-index:3;color:#fff;background:#0000008c;border-radius:999px;align-items:center;gap:.9rem;padding:.35rem .7rem;display:flex;position:absolute;bottom:1.3rem;left:50%;transform:translate(-50%)}.carousel-controls button{color:#fff;background:0 0;border:0;font-size:1.8rem}.button{border:2px solid var(--brand);background:var(--brand);color:#fff;border-radius:3px;justify-content:center;align-items:center;min-height:46px;padding:.72rem 1.35rem;font-weight:700;text-decoration:none;display:inline-flex}.button:hover{background:var(--brand-dark);border-color:var(--brand-dark)}.button.secondary{background:var(--brand-deep);border-color:var(--brand-deep)}.button.accent{background:var(--accent);border-color:var(--accent)}.button.outline{color:var(--brand-dark);background:#fff}.button[disabled]{opacity:.55;cursor:not-allowed}.button-group{flex-wrap:wrap;gap:1rem;display:flex}.button-group.align-center{justify-content:center}.button-group.align-right{justify-content:flex-end}.image-block figure{text-align:center;margin-top:0;margin-bottom:0}.image-block img{margin-inline:auto}.image-small img{max-width:420px}.image-medium img{max-width:720px}.image-large img{max-width:980px}.image-block figcaption{color:var(--muted);margin-top:.7rem;font-size:.9rem}.two-column{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(2rem,5vw,5rem);display:grid}.two-column.ratio-1-2{grid-template-columns:1fr 2fr}.two-column.ratio-2-1{grid-template-columns:2fr 1fr}.two-column>div>img{margin-bottom:1.5rem}.image-link-grid,.feature-grid,.person-grid,.card-list,.gallery-grid{grid-template-columns:repeat(var(--columns,3),minmax(0,1fr));gap:1.5rem;display:grid}.image-link-card{background:var(--brand-deep);min-height:270px;box-shadow:var(--shadow);color:#fff;text-decoration:none;position:relative;overflow:hidden}.image-link-card>img{object-fit:cover;width:100%;height:100%;transition:transform .35s}.image-link-card:after{content:"";background:linear-gradient(#0000,#003246e6);position:absolute;inset:35% 0 0}.image-link-card>span{z-index:1;position:absolute;bottom:1.2rem;left:1.3rem;right:1.3rem}.image-link-card strong,.image-link-card small{display:block}.image-link-card strong{font-size:1.25rem}.image-link-card:hover img{transform:scale(1.04)}.image-link-card:not(:has(img)){background:linear-gradient(135deg,var(--brand),var(--brand-deep));align-items:end;display:flex}.feature-section,.news-section,.progress-section{background:var(--brand-pale)}.feature-card,.person-card,.content-card{border-top:5px solid var(--accent,var(--brand));box-shadow:var(--shadow);background:#fff;padding:2rem}.feature-icon{background:var(--brand);color:#fff;border-radius:50%;place-items:center;width:58px;height:58px;font-weight:800;display:grid}.feature-card h3,.person-card h3,.content-card h3{margin:.9rem 0 .5rem}.person-card img{aspect-ratio:4/3;object-fit:cover;width:100%;margin-bottom:1rem}.role{color:var(--brand);font-weight:700}.accordion{border-top:1px solid var(--line)}.accordion details{border-bottom:1px solid var(--line)}.accordion summary{cursor:pointer;background:#fff;padding:1.2rem 3rem 1.2rem 1rem;font-weight:700}.accordion details[open] summary{color:var(--brand-dark);background:var(--brand-pale)}.accordion .rich-content{padding:1rem 1.2rem 1.5rem}.tab-buttons{border-bottom:3px solid var(--brand);flex-wrap:wrap;display:flex}.tab-buttons button{border:1px solid var(--line);background:#fff;border-bottom:0;padding:.85rem 1.4rem}.tab-buttons button[aria-selected=true]{background:var(--brand);color:#fff}.tab-panel{border:1px solid var(--line);border-top:0;padding:2rem}.news-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.news-list li{border-bottom:1px solid var(--line);grid-template-columns:10rem 1fr;gap:1rem;padding:1rem;display:grid}.news-list time,.article-list time{color:var(--muted);font-variant-numeric:tabular-nums}.more-link{text-align:center;margin-top:2rem}.article-list article{border-bottom:1px solid var(--line);padding:1.7rem 0}.article-list h2{margin:.2rem 0;font-size:1.25rem}.pdf-list{margin:0;padding:0;list-style:none}.pdf-list li{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem;display:grid}.pdf-list li>span{color:#fff;background:#d84242;padding:.15rem .45rem;font-size:.7rem;font-weight:700}.gallery-grid img{aspect-ratio:4/3;object-fit:cover;width:100%}.progress-grid{flex-wrap:wrap;justify-content:center;gap:3rem;display:flex}.progress-grid article{text-align:center}.progress-circle{background:conic-gradient(var(--color) calc(var(--value)*1%),#d7e9ed 0);border-radius:50%;place-items:center;width:150px;height:150px;display:grid;position:relative}.progress-circle:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:14px}.progress-circle strong{z-index:1;font-size:2rem;position:relative}.progress-circle small{font-size:.9rem}.form-notice{border-left:5px solid var(--accent);background:#fff7e8;margin:1.5rem 0;padding:1rem 1.2rem}.form-section form{gap:1.2rem;display:grid}.form-section label{gap:.35rem;font-weight:700;display:grid}.form-section label span{color:#b42a2a;font-size:.75rem}.form-section input,.form-section textarea{border:1px solid var(--line);background:#f4f6f7;width:100%;padding:.7rem}.article-detail{padding-block:4rem}.article-detail>header{max-width:900px}.article-detail h1{font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.4}.article-meta{color:var(--muted)}.lead{font-size:1.15rem}.article-hero{object-fit:contain;max-height:620px;margin:2rem auto}.back-link{margin-top:3rem}.site-footer{background:var(--brand-deep);color:#dff6fb}.footer-cta{grid-template-columns:repeat(3,1fr);display:grid}.footer-cta a{text-align:center;color:#fff;padding:1.2rem;font-weight:800;text-decoration:none}.footer-cta a:first-child{background:var(--accent)}.footer-cta a:nth-child(2){background:var(--brand)}.footer-cta a:nth-child(3){background:#4f8a3d}.footer-grid{grid-template-columns:1.1fr 2fr 1fr;gap:3rem;padding-block:3.5rem;display:grid}.footer-grid h2{color:#fff}.footer-grid ul{columns:2;padding:0;list-style:none}.footer-grid a{color:#dff6fb}.copyright{text-align:center;color:#b8ced4;background:#102d36;padding:1rem;font-size:.82rem}.unknown-block{background:#fff3cd;padding-block:1rem}.unknown-block p{margin:0}.legacy-embed iframe{max-width:100%}@media (width<=900px){.site-search{display:none}.nav-toggle{display:block}.global-nav{display:none}.global-nav.is-open,.global-nav ul{display:block}.global-nav li{border:0;border-bottom:1px solid #ffffff40}.two-column,.two-column.ratio-1-2,.two-column.ratio-2-1{grid-template-columns:1fr}.reverse-mobile>div:first-child{order:2}.image-link-grid,.feature-grid,.person-grid,.card-list,.gallery-grid{grid-template-columns:repeat(min(2,var(--columns,3)),minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid section:first-child{grid-column:1/-1}}@media (width<=620px){.container{width:min(100% - 28px,1180px)}.header-main{min-height:82px}.brand small{font-size:.67rem}.brand strong{font-size:1.35rem}.brand-mark{width:46px;height:46px}.image-link-grid,.feature-grid,.person-grid,.card-list,.gallery-grid{grid-template-columns:1fr}.news-list li{grid-template-columns:1fr;gap:.2rem}.footer-cta,.footer-grid{grid-template-columns:1fr}.footer-grid section:first-child{grid-column:auto}.footer-grid ul{columns:1}.hero-overlay{align-items:flex-start}.pdf-list li{grid-template-columns:auto 1fr}.pdf-list time{grid-column:2}.content-section{padding-block:3.5rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.inquiry-form-app{margin-top:2rem}.form-notice-info{border-left-color:var(--brand);background:var(--brand-pale)}.form-notice p{margin:.4rem 0 0}.inquiry-form-app form fieldset{border:0;gap:.4rem;margin:0;padding:0;display:grid}.inquiry-form-app form label{margin-top:1rem}.inquiry-form-app form label>span:not(.sr-only){margin-left:.35rem;display:inline}.inquiry-form-app input,.inquiry-form-app textarea{background:#fff;border:1px solid #9fb6c0;border-radius:3px}.inquiry-form-app input:focus,.inquiry-form-app textarea:focus{border-color:var(--brand-dark);outline:3px solid #168db340}.inquiry-form-app [aria-invalid=true]{border-color:#b42a2a;box-shadow:0 0 0 2px #b42a2a1f}.form-consent{border:1px solid var(--line);background:#f4f8fa;border-radius:3px;grid-template-columns:auto 1fr;align-items:start;padding:1rem;gap:.8rem!important}.form-consent input{height:1.2rem;margin-top:.2rem;width:1.2rem!important}.form-section .form-consent span{color:var(--ink);font-size:1rem;font-weight:500;margin:0!important}.form-section label small{color:var(--muted);font-size:.8rem}.field-help{color:var(--muted);margin:.1rem 0 0;font-size:.86rem}.field-error{color:#a51d1d;min-height:1.5em;margin:.1rem 0 0;font-size:.86rem;font-weight:700}.form-error-summary{color:#7c1414;background:#fff3f3;border:2px solid #b42a2a;margin:1.2rem 0;padding:1rem 1.2rem;font-weight:700}.form-error-summary:focus,.form-confirmation:focus,.form-complete:focus{outline-offset:4px;outline:3px solid #168db347}.form-honeypot{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.turnstile-wrap{margin-top:1rem}.form-actions{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.form-confirmation,.form-complete{border:1px solid var(--line);border-top:5px solid var(--brand);box-shadow:var(--shadow);background:#fff;padding:clamp(1.2rem,4vw,2rem)}.form-confirmation h3,.form-complete h3{color:var(--brand-deep);margin-top:0}.confirmation-list{border-top:1px solid var(--line);margin:1.5rem 0}.confirmation-list>div{border-bottom:1px solid var(--line);grid-template-columns:12rem 1fr;display:grid}.confirmation-list dt,.confirmation-list dd{margin:0;padding:.85rem 1rem}.confirmation-list dt{background:var(--brand-pale);font-weight:700}.confirmation-list dd{white-space:pre-wrap;overflow-wrap:anywhere}.form-complete [data-receipt-id]{color:var(--brand-deep);font-variant-numeric:tabular-nums;font-size:1.15rem}@media (width<=620px){.confirmation-list>div{grid-template-columns:1fr}.confirmation-list dt{padding-bottom:.35rem}.confirmation-list dd{padding-top:.35rem}.form-actions .button{width:100%}}.form-choice-group{border:0;margin:1rem 0 0;padding:0}.form-choice-group legend{font-weight:700}.form-choice-group legend small{color:var(--muted);font-size:.8rem;font-weight:400}.form-choice-options{flex-wrap:wrap;gap:.8rem 1.4rem;margin-top:.55rem;display:flex}.form-choice-options label{align-items:center;gap:.45rem;font-weight:500;margin:0!important;display:inline-flex!important}.form-choice-options input{height:1.1rem;margin:0;width:1.1rem!important}.input-with-unit{align-items:center;gap:.45rem;display:flex}.input-with-unit input{width:min(11rem,100%)}.required-mark{color:#b42a2a;font-size:.8em;font-weight:700}.join-form-introduction{line-height:1.9}.join-privacy{border:1px solid var(--line);background:#f9fcfd;margin-top:1.4rem;padding:clamp(1rem,3vw,1.6rem)}.join-privacy h3{color:var(--brand-deep);margin:1.3rem 0 .75rem;font-size:1.2rem}.join-privacy h4{color:var(--brand-dark);margin:1.3rem 0 .35rem;font-size:1.02rem}.join-privacy p{margin:.7rem 0}.join-privacy ol{margin:.45rem 0 1rem;padding-left:1.5rem}.join-receipt-note{margin-top:1.5rem}.form-complete+.join-receipt-note{border-left-color:var(--brand)}@media (width<=620px){.form-choice-options{gap:.6rem;display:grid}.join-privacy{padding:1rem}}
