@layer base{:root{color-scheme:light dark;--brand:#00a0e9;--accent:light-dark(#0069a6,#5cc3f5);--accent-strong:light-dark(#004f7e,#9bdcfb);--fg:light-dark(#1d2733,#e4e9ef);--muted:light-dark(#5a6573,#a3adb8);--bg:light-dark(#fff,#131a22);--tint:light-dark(#f2f6f9,#1c252f);--line:light-dark(#d8e0e7,#2e3a46);--ink:#1d2733;--font:system-ui, -apple-system, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic UI", Meiryo, sans-serif;--max-w:68rem;--gutter:1rem;--radius:.375rem}html{font-family:var(--font);color:var(--fg);background:var(--bg);-webkit-text-size-adjust:100%;line-height:1.8}body{overflow-wrap:anywhere;margin:0}img{max-width:100%;height:auto}a{color:var(--accent);text-underline-offset:.2em}a:hover{color:var(--accent-strong)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.container{max-width:var(--max-w);padding-inline:var(--gutter);margin-inline:auto}.skip-link{z-index:100;background:var(--bg);padding:.5rem 1rem;position:absolute;top:0;left:-999px}.skip-link:focus{left:0}.site-header{color-scheme:light;--fg:#1d2733;--line:#d8e0e7;--bg:#fff;--muted:#5a6573;--accent:#0069a6;color:var(--fg);border-bottom:1px solid var(--line);z-index:20;background:#fff;position:relative}.site-header:before{content:"";background:var(--brand);height:4px;display:block}.site-header .container{flex-wrap:wrap;align-items:center;gap:.5rem 1rem;padding-block:.75rem;display:flex}.site-title{line-height:0;display:block}.site-title img{width:auto;height:4rem}.site-menu{display:contents}.site-nav{flex:1 1 0;min-width:0}.site-nav ul{flex-wrap:wrap;justify-content:flex-end;gap:.25rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.site-nav li{position:relative}.site-nav a,.site-nav summary{color:var(--fg);cursor:pointer;font-size:.95rem;text-decoration:none}.site-nav a:hover,.site-nav summary:hover{color:var(--accent)}.site-nav summary{list-style:none}.site-nav summary::-webkit-details-marker{display:none}.site-nav summary:after{content:"";vertical-align:.2em;border-bottom:1.5px solid;border-right:1.5px solid;width:.4em;height:.4em;margin-left:.45em;transition:transform .15s;display:inline-block;transform:rotate(45deg)}.site-nav details[open] summary:after{vertical-align:-.05em;transform:rotate(-135deg)}.site-nav details ul{z-index:10;background:var(--bg);border:1px solid var(--line);border-top:3px solid var(--brand);border-radius:0 0 var(--radius) var(--radius);min-width:18rem;padding:.5rem 1rem;display:block;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 8px 24px #1d27331f}.site-nav details ul a{padding:.4rem 0;display:block}.nav-toggle{border:1px solid var(--line);border-radius:var(--radius);font:inherit;color:var(--fg);cursor:pointer;background:0 0;align-items:center;gap:.5rem;padding:.45rem .7rem;display:none}.nav-toggle-bar{background:currentColor;width:1.25rem;height:2px;display:block;position:relative}.nav-toggle-bar:before,.nav-toggle-bar:after{content:"";background:currentColor;width:100%;height:2px;transition:transform .2s;position:absolute;left:0}.nav-toggle-bar:before{top:-6px}.nav-toggle-bar:after{top:6px}.is-open .nav-toggle-bar{background:0 0}.is-open .nav-toggle-bar:before{transform:translateY(6px)rotate(45deg)}.is-open .nav-toggle-bar:after{transform:translateY(-6px)rotate(-45deg)}.nav-toggle-label{font-size:.8rem}@media (width<=56rem){.nav-toggle{flex-shrink:0;display:inline-flex}.site-menu{border-top:1px solid var(--line);flex-direction:column;flex-basis:100%;gap:1rem;padding-top:.5rem;display:none}.is-open .site-menu{display:flex}.site-nav{flex:none}.site-nav ul{flex-direction:column;justify-content:flex-start;gap:0}.site-nav>ul>li{border-bottom:1px solid var(--line)}.site-nav>ul>li>a,.site-nav summary{padding:.75rem 0;font-weight:600;display:block}.site-nav details ul{box-shadow:none;border:0;min-width:0;padding:0 0 .5rem 1rem;position:static}.site-nav details ul a{color:var(--muted);padding:.45rem 0}.site-header .search-toggle{order:0;margin-left:auto}body.menu-open{overflow:hidden}}@media (width<=31rem){.site-title{flex-basis:100%}.site-title img{width:18.75rem;max-width:100%;height:auto}}.search-toggle{border:1px solid var(--line);border-radius:var(--radius);width:2.4rem;height:2.4rem;color:var(--fg);flex-shrink:0;order:1;justify-content:center;align-items:center;display:inline-flex}.search-toggle:hover{color:var(--accent);border-color:var(--accent)}#search,.search-dialog-ui{--pagefind-ui-primary:var(--accent);--pagefind-ui-text:var(--fg);--pagefind-ui-border:var(--line);--pagefind-ui-font:var(--font);--pagefind-ui-background:var(--bg);--pagefind-ui-tag:var(--tint)}#search{margin-top:1rem}.search-dialog{border:1px solid var(--line);background:var(--bg);width:min(44rem,100% - 2rem);max-height:min(40rem,100dvh - 4rem);color:var(--fg);border-radius:.5rem;margin:2rem auto auto;padding:0;box-shadow:0 20px 50px #1d273340}.search-dialog::backdrop{background:#1d27338c}.dialog-head{justify-content:space-between;align-items:center;padding:.75rem 1rem .25rem;font-weight:700;display:flex}.dialog-close{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:.1rem .4rem;font-size:1.6rem;line-height:1}.dialog-close:hover{color:var(--fg)}.search-dialog-ui{padding:.5rem 1rem 1rem}main{padding-block:1.25rem 4rem}main.full{padding-block:0 4rem}.breadcrumb ol{color:var(--muted);flex-wrap:wrap;gap:0 .5rem;margin:0 0 1.5rem;padding:0;font-size:.85rem;list-style:none;display:flex}.breadcrumb li+li:before{content:"›";margin-right:.5rem}.breadcrumb a{color:inherit}.prose{max-width:50rem}.prose h1{border-bottom:2px solid var(--line);margin:0 0 1.5rem;padding-bottom:.75rem;font-size:1.85rem;line-height:1.35;position:relative}.prose h1:after{content:"";background:var(--brand);width:4rem;height:2px;position:absolute;bottom:-2px;left:0}.prose hgroup h1{margin-bottom:.25rem}.prose .title-en{color:var(--muted);margin-top:0;font-size:.95rem}.prose h2{border-left:4px solid var(--brand);background:var(--tint);margin-top:2.75rem;padding:.35rem 0 .35rem .85rem;font-size:1.4rem;line-height:1.4}.prose h3{border-bottom:1px solid var(--line);margin-top:2rem;padding-bottom:.25rem;font-size:1.15rem}.prose h4{margin-top:1.5rem;font-size:1rem}.prose table{border-collapse:collapse;width:100%;margin-block:1rem;font-size:.95rem}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.5rem .75rem}.prose th{background:var(--tint);white-space:nowrap;font-weight:600}@media (width<=40rem){.prose th{white-space:normal}}.prose blockquote{border-left:.25rem solid var(--line);color:var(--muted);margin:1rem 0;padding:.5rem 1rem}.prose .note{border:1px solid var(--line);border-left:4px solid var(--brand);background:var(--tint);margin-block:1rem;padding:.75rem 1rem}.prose .note>:first-child{margin-top:0}.prose .note>:last-child{margin-bottom:0}.prose figure{margin:1rem 0}.prose figcaption{color:var(--muted);margin-top:.35rem;font-size:.9rem}.prose iframe{aspect-ratio:4/3;border:0;width:100%;height:auto;max-height:28rem;margin-block:1rem;display:block}.img-text{border:1px dashed var(--line);background:var(--tint);max-width:100%;color:var(--fg);padding:.75rem 1rem;display:inline-block}.button,.prose .button{border:1px solid var(--accent);border-radius:var(--radius);background:var(--bg);color:var(--accent);padding:.55rem 1.4rem;font-weight:600;text-decoration:none;display:inline-block}.button:hover,.prose .button:hover{background:var(--accent);color:var(--bg)}.columns{gap:1.5rem;margin-block:1rem;display:grid}.columns-2{grid-template-columns:repeat(2,minmax(0,1fr))}.columns-3{grid-template-columns:repeat(3,minmax(0,1fr))}.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=48rem){.columns{grid-template-columns:1fr}.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}}.cards .column{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.cards .column>*{margin:0 1rem .5rem}.cards .column>:last-child{margin-top:auto;margin-bottom:1rem}.cards .column>:has(>img:only-child){order:-1;margin:0 0 1rem}.cards .column img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.prose .cards h3{border:0;margin-top:0;padding:0;font-size:1.1rem}.gallery ul{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.5rem;margin-block:1rem;padding:0;list-style:none;display:grid}.gallery img{aspect-ratio:3/2;object-fit:cover;border-radius:.25rem;width:100%;display:block}.meta{color:var(--muted);margin-top:-.75rem;font-size:.9rem}.section-pages{max-width:50rem;margin-top:3.5rem}.section-pages h2,.sitemap h2{font-size:1.2rem}.section-pages ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.section-pages a{border-bottom:1px solid var(--line);padding:.85rem .5rem;font-weight:600;text-decoration:none;display:block}.section-pages a:hover{background:var(--tint)}.section-pages a span{color:var(--muted);font-size:.85rem;font-weight:400;display:block}.sitemap{max-width:50rem}.sitemap ul ul{margin-top:.25rem}.news{max-width:50rem}.news-list{border-top:1px solid var(--line);min-height:3rem;margin:0;padding:0;list-style:none}.news-list li{border-bottom:1px solid var(--line);grid-template-columns:6.5rem 7.5rem 1fr;align-items:baseline;gap:.25rem 1rem;padding:.8rem .25rem;display:grid}.news-list time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem}.news-source{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;justify-self:start;padding:0 .5rem;font-size:.75rem;line-height:1.6}.news.is-loading .news-list{opacity:.6}.news-status:empty{display:none}.news-status,.news-sources{color:var(--muted);font-size:.9rem}@media (width<=40rem){.news-list li{grid-template-columns:auto 1fr}.news-list a{grid-column:1/-1}}.site-footer{background:var(--ink);color:#c9d2dc;border-top:4px solid var(--brand);padding-block:3rem 2rem;font-size:.9rem}.site-footer a{color:#e4e9ef;text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.footer-nav{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1.5rem 2rem;display:grid}.footer-nav h2{color:#fff;border-bottom:1px solid #3a4756;margin:0 0 .5rem;padding-bottom:.4rem;font-size:.95rem}.footer-nav ul{margin:0;padding:0;list-style:none}.footer-nav li{padding-block:.15rem}.footer-bottom{border-top:1px solid #3a4756;margin-top:2.5rem;padding-top:1.5rem}.footer-bottom p{margin:.25rem 0}.footer-name{color:#fff;font-weight:600;line-height:1.6}.footer-name span{color:#c9d2dc;font-size:.85rem;font-weight:400}.footer-links{flex-wrap:wrap;gap:.25rem 1.25rem;margin:1rem 0;padding:0;list-style:none;display:flex}.copyright{color:#9aa6b2;font-size:.8rem}}
