@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&family=Shippori+Mincho:wght@500;600;700&display=swap');
:root{--ink:#1f302c;--muted:#64736d;--line:#dce4df;--paper:#f5f7f6;--white:#fff;--green:#315b4d;--pale:#e7efea;--accent:#c58d56}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP",sans-serif;line-height:1.8}a{color:inherit;text-decoration:none}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:1rem;z-index:20}.site-header{background:rgba(255,255,255,.88);border-bottom:1px solid var(--line)}.header-inner,.footer-inner{max-width:1160px;margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#fff;font-family:"Shippori Mincho",serif;font-size:22px}.brand strong{display:block;font-size:15px;letter-spacing:.04em}.brand small{display:block;color:var(--muted);font-size:9px;letter-spacing:.13em}.top-nav{display:flex;gap:28px;font-size:12px;color:#53635c}.top-nav a:hover,.text-link:hover{color:var(--accent)}main{max-width:1160px;margin:auto;padding:0 28px}.hero{display:grid;grid-template-columns:1.55fr .75fr;gap:8%;padding:92px 4px 70px;align-items:center}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:700;color:var(--green);margin:0 0 16px}.hero h1,.feature h2,.about-section h2,.trust-strip h2{font-family:"Shippori Mincho",serif;font-weight:600;letter-spacing:.03em;line-height:1.5}.hero h1{font-size:clamp(32px,4vw,49px);margin:0 0 20px}.hero-lead{max-width:650px;color:#596861;font-size:14px;line-height:2.1}.search-form{display:flex;max-width:590px;margin-top:28px;background:#fff;border:1px solid var(--line);padding:6px;border-radius:5px}.search-form input{flex:1;min-width:0;border:0;padding:12px 14px;font:inherit;font-size:13px;outline:none;background:transparent}.search-form button{border:0;background:var(--green);color:#fff;padding:0 26px;border-radius:3px;font:inherit;font-size:12px;cursor:pointer}.search-hint{font-size:10px;color:#87938d}.hero-aside{border-left:1px solid #cbd8d0;padding:14px 0 14px 30px}.aside-line{height:3px;width:36px;background:var(--accent);margin-bottom:24px}.aside-label{font-size:10px;color:var(--muted);letter-spacing:.14em}.aside-big{font-family:"Shippori Mincho",serif;font-size:25px;line-height:1.6;margin:12px 0}.aside-small{font-size:11px;color:var(--muted);line-height:2}.quick-links{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:20px 0;margin-bottom:85px}.quick-links a{padding:4px 20px;border-right:1px solid var(--line);font-size:12px;font-weight:600}.quick-links a:last-child{border:0}.quick-links span{color:var(--accent);font-size:10px;margin-right:13px}.section{padding:0 0 90px}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:26px}.section-heading h2,.about-section h2{font-family:"Shippori Mincho",serif;font-size:30px;font-weight:600;margin:0}.section-heading>p{font-size:11px;color:var(--muted)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category-card{background:#fff;border:1px solid var(--line);padding:23px 22px 20px;min-height:220px;position:relative;transition:transform .2s,border-color .2s}.category-card:hover,.article-card:hover{transform:translateY(-3px);border-color:#9eb5a7}.category-number{font-size:10px;color:var(--accent);letter-spacing:.1em}.category-icon{display:block;font-size:24px;color:var(--green);margin:8px 0}.category-card h3{font-size:16px;margin:0 0 8px}.category-card p,.article-card p{font-size:11px;color:var(--muted);line-height:1.9}.card-arrow,.read-more{font-size:10px;color:var(--green);font-weight:700}.feature{display:grid;grid-template-columns:1fr 1.1fr;background:#e9efeb;margin:0 0 90px;min-height:310px}.feature-image{position:relative;overflow:hidden;background:#24473d;display:grid;place-items:center;min-height:300px}.feature-tag{position:absolute;top:22px;left:24px;color:#d6e1da;font-size:9px;letter-spacing:.16em}.feature-graphic{font-family:"Shippori Mincho",serif;font-size:90px;line-height:1.05;color:#e1ebe4;opacity:.9;z-index:1;letter-spacing:.1em}.contour{position:absolute;width:390px;height:260px;border:1px solid rgba(255,255,255,.2);border-radius:48% 52% 60% 40%;transform:rotate(-25deg)}.contour-one{left:-90px;top:30px}.contour-two{right:-100px;bottom:-80px;width:470px;height:330px}.feature-copy{padding:48px 7%}.feature h2{font-size:25px;margin:0 0 18px}.feature-copy>p:not(.eyebrow):not(.source-note){font-size:12px;color:#5e6c65;line-height:2}.text-link{display:inline-flex;gap:22px;border-bottom:1px solid var(--green);padding:8px 0;font-size:12px;font-weight:700;margin-top:12px}.source-note{font-size:9px;color:#78877f;margin-top:22px}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.filter-button{border:1px solid var(--line);background:transparent;border-radius:30px;padding:8px 17px;font:inherit;font-size:10px;color:var(--muted);cursor:pointer}.filter-button.active,.filter-button:hover{background:var(--green);border-color:var(--green);color:#fff}.article-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.article-card{background:#fff;border:1px solid var(--line);padding:24px;min-height:190px;transition:transform .2s,border-color .2s}.article-link{display:block}.article-meta{display:flex;justify-content:space-between;color:#87938d;font-size:9px;letter-spacing:.04em}.article-meta span:first-child{color:var(--green);font-weight:700}.article-card h3{font-size:16px;line-height:1.65;margin:18px 0 8px}.article-card p{margin:0 0 18px}.placeholder-card{background:#f9faf9}.placeholder-card .read-more{color:#9a8b7c}.no-results{padding:25px;color:var(--muted);font-size:13px}.trust-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:42px 0;margin:0 0 80px;display:grid;grid-template-columns:1fr 1.2fr auto;align-items:center;gap:35px}.trust-strip h2{font-size:25px;margin:0}.trust-strip>p{font-size:11px;color:var(--muted);line-height:2}.trust-strip .text-link{white-space:nowrap}.about-section{padding:0 0 90px}.about-columns{display:grid;grid-template-columns:1fr 1fr;gap:60px;color:var(--muted);font-size:12px;line-height:2.1}.about-columns ul{margin:0;padding-left:18px}.site-footer{background:#203c34;color:#eaf0ec;padding:25px max(28px,calc((100% - 1104px)/2)) 22px}.footer-inner{padding:0;max-width:1104px}.footer-brand .brand-mark{background:#eaf0ec;color:var(--green)}.footer-brand small{color:#aabbb1}.footer-inner>p{font-size:10px;color:#aabbb1}.disclaimer{max-width:1104px;margin:20px auto 0;border-top:1px solid #49645b;padding-top:14px;font-size:9px;color:#b9c8c0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:800px){.top-nav{gap:14px}.hero{grid-template-columns:1fr;padding:65px 0 50px}.hero-aside{display:none}.quick-links{margin-bottom:60px}.category-grid{grid-template-columns:repeat(2,1fr)}.feature{grid-template-columns:1fr}.feature-image{min-height:220px}.trust-strip{grid-template-columns:1fr;gap:10px}.trust-strip .text-link{justify-self:start}.section{padding-bottom:65px}}
@media(max-width:560px){.header-inner{padding:14px 18px}.top-nav{display:none}main{padding:0 18px}.hero{padding-top:48px}.hero h1{font-size:32px}.hero-lead{font-size:12px}.quick-links{grid-template-columns:repeat(2,1fr);row-gap:14px}.quick-links a:nth-child(2){border:0}.category-grid,.article-grid{grid-template-columns:1fr}.category-card{min-height:190px}.section-heading{display:block}.section-heading>p{margin-top:8px}.feature-copy{padding:32px 24px}.feature h2{font-size:21px}.about-columns{grid-template-columns:1fr;gap:15px}.footer-inner{align-items:flex-start;flex-direction:column;gap:10px}.site-footer{padding-left:18px;padding-right:18px}}
