.sw-root,:root{--sw-bg:#1f2440;--sw-ink:#f6e8cf;--sw-ink-soft:#b7aec6;--sw-accent:#f2a03d}*{box-sizing:border-box}.sw-brand__mark,.sw-copy__eyebrow,.sw-copy__num,.sw-hint,.sw-route{display:none!important}body{margin:0;background:var(--sw-bg);color:var(--sw-ink);font-family:Hiragino Sans,Noto Sans JP,Yu Gothic,system-ui,sans-serif;-webkit-font-smoothing:antialiased}a{color:var(--sw-accent)}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px clamp(16px,4vw,40px);background:color-mix(in srgb,var(--sw-bg) 82%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(246,232,207,.12)}.site-header__brand{font-weight:700;letter-spacing:.02em;color:var(--sw-ink);text-decoration:none;font-size:.95rem}.site-header__nav{display:flex;gap:clamp(12px,2.5vw,26px);flex-wrap:wrap}.site-header__nav a{color:var(--sw-ink-soft);text-decoration:none;font-size:.88rem}.site-header__nav a:hover,.site-header__nav a[aria-current=page]{color:var(--sw-accent)}.site-main{max-width:860px;margin:0 auto;padding:clamp(28px,6vw,64px) clamp(16px,4vw,40px) 80px}.site-footer{padding:32px clamp(16px,4vw,40px) 48px;border-top:1px solid rgba(246,232,207,.12);color:var(--sw-ink-soft);font-size:.82rem;text-align:center}.page-eyebrow{color:var(--sw-accent);font-size:.8rem;letter-spacing:.22em;font-weight:700;margin:0 0 10px}.page-title{font-size:clamp(1.7rem,4.5vw,2.4rem);line-height:1.3;margin:0 0 14px}.page-lead{color:var(--sw-ink-soft);line-height:2;margin:0 0 36px}.section-title{font-size:1.25rem;margin:48px 0 16px;padding-left:12px;border-left:4px solid var(--sw-accent)}.card{background:rgba(246,232,207,.05);border:1px solid rgba(246,232,207,.12);border-radius:14px;padding:22px 24px}.card+.card{margin-top:18px}.profile{display:flex;gap:20px;align-items:flex-start}.profile__avatar{flex:0 0 auto;width:72px;height:72px;border-radius:50%;display:grid;place-items:center;font-size:1.6rem;font-weight:700;color:#1f2440;background:linear-gradient(135deg,var(--sw-accent),#e8618c)}.profile__name{margin:0;font-size:1.1rem}.profile__role{color:var(--sw-accent);font-size:.82rem;margin:2px 0 10px}.profile__bio{color:var(--sw-ink-soft);line-height:1.9;margin:0;font-size:.92rem}.profile__links{margin-top:10px;font-size:.85rem}@media (max-width:560px){.profile{flex-direction:column}}.report-list{list-style:none;padding:0;margin:0;display:grid;grid-gap:18px;gap:18px}.report-card{display:block;text-decoration:none;color:inherit;transition:border-color .2s,transform .2s}.report-card:hover{border-color:var(--sw-accent);transform:translateY(-2px)}.report-card__meta{display:flex;gap:12px;align-items:center;color:var(--sw-ink-soft);font-size:.8rem;margin-bottom:8px}.report-card__badge{color:var(--sw-accent);border:1px solid color-mix(in srgb,var(--sw-accent) 55%,transparent);border-radius:999px;padding:2px 10px;font-weight:700}.report-card__title{margin:0 0 6px;font-size:1.08rem}.report-card__excerpt{margin:0;color:var(--sw-ink-soft);font-size:.88rem;line-height:1.8}.article-body{line-height:2.05;font-size:.98rem}.article-body h2{font-size:1.25rem;margin:44px 0 14px;padding-left:12px;border-left:4px solid var(--sw-accent)}.article-body h3{font-size:1.05rem;margin:32px 0 10px;color:var(--sw-accent)}.article-body p{margin:0 0 1.2em}.article-body img{display:block;max-width:100%;border-radius:12px;margin:28px auto;border:1px solid rgba(246,232,207,.12)}.article-body blockquote{margin:24px 0;padding:12px 20px;border-left:4px solid var(--sw-accent);background:rgba(246,232,207,.05);border-radius:0 10px 10px 0;color:var(--sw-ink-soft)}.article-body ol,.article-body ul{padding-left:1.4em}.article-body li{margin-bottom:.4em}.article-footer{margin-top:48px;padding-top:24px;border-top:1px solid rgba(246,232,207,.12)}.contact-form{display:grid;grid-gap:20px;gap:20px}.contact-form label{display:grid;grid-gap:8px;gap:8px;font-size:.9rem;font-weight:700}.contact-form .required{color:var(--sw-accent);font-size:.75rem;margin-left:6px}.contact-form input,.contact-form textarea{font:inherit;color:var(--sw-ink);background:rgba(246,232,207,.06);border:1px solid rgba(246,232,207,.2);border-radius:10px;padding:12px 14px}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--sw-accent);outline-offset:1px}.btn-primary{font:inherit;font-weight:700;cursor:pointer;border:0;border-radius:999px;padding:14px 34px;color:#1f2440;background:var(--sw-accent);justify-self:start}.btn-primary:disabled{opacity:.55;cursor:default}.form-status{border-radius:10px;padding:14px 16px;font-size:.9rem;line-height:1.8}.form-status--ok{background:rgba(127,176,105,.15);border:1px solid #7fb069}.form-status--error{background:rgba(232,97,140,.15);border:1px solid #e8618c}