:root{--c-primary: #1a4a3a;--c-primary-hover: #245e4b;--c-accent: #c9943a;--c-bg: #f5f3ef;--c-bg-card: #ffffff;--c-text: #2c2c2c;--c-text-muted: #6b6b6b;--c-border: #e2ddd6;--c-success: #2d7a4f;--c-warning: #b8760f;--c-danger: #c0392b;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--shadow-sm: 0 1px 3px rgba(0,0,0,.08);--shadow-md: 0 4px 12px rgba(0,0,0,.1);--font: "Hiragino Kaku Gothic ProN", "Noto Sans JP", "Yu Gothic", sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);font-size:16px;line-height:1.7;background:var(--c-bg);color:var(--c-text);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:var(--c-primary);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1100px;margin:0 auto;padding:0 20px}.site-header{background:var(--c-primary);color:#fff;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px #0003}.site-header .container{display:flex;align-items:center;justify-content:space-between;height:60px}.site-logo{display:flex;align-items:center;gap:8px;color:#fff;font-size:1.1rem;font-weight:700;text-decoration:none;letter-spacing:.02em}.site-logo:hover{text-decoration:none;opacity:.9}.logo-icon{font-size:1.3rem}.logo-sub{font-size:.7rem;color:#fff9;font-weight:400}.site-nav{display:flex;gap:4px}.site-nav a{color:#ffffffd9;font-size:.875rem;padding:6px 12px;border-radius:var(--radius-sm);transition:background .15s,color .15s}.site-nav a:hover{background:#ffffff1f;color:#fff;text-decoration:none}.site-nav a.active{color:#fff;background:#ffffff26}.site-footer{background:var(--c-primary);color:#ffffffb3;margin-top:80px;padding:40px 0 24px;font-size:.875rem}.footer-inner{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:24px;margin-bottom:32px}.footer-brand{color:#fff;font-weight:700;font-size:1rem;margin-bottom:6px}.footer-desc{font-size:.8rem;color:#ffffff8c}.footer-links{display:flex;gap:20px;flex-wrap:wrap}.footer-links a{color:#ffffffb3;font-size:.8rem}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:20px;font-size:.75rem;color:#ffffff73;text-align:center}.footer-disclaimer{margin-top:8px;font-size:.72rem;color:#ffffff59}.page-hero{background:linear-gradient(135deg,var(--c-primary) 0%,#2a6b55 100%);color:#fff;padding:48px 0 40px}.hero-eyebrow{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--c-accent);margin-bottom:8px}.hero-title{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:700;line-height:1.3;margin-bottom:12px}.hero-desc{font-size:.95rem;color:#ffffffbf;max-width:540px;line-height:1.7}.breadcrumb{font-size:.8rem;color:#ffffff8c;margin-bottom:16px;display:flex;gap:6px;align-items:center}.breadcrumb a{color:#fff9}.breadcrumb a:hover{color:#fff}.breadcrumb span{color:#ffffff59}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin-top:40px}.tool-card{background:var(--c-bg-card);border:1px solid var(--c-border);border-radius:var(--radius-lg);padding:28px;text-decoration:none;color:var(--c-text);transition:box-shadow .2s,transform .2s,border-color .2s;display:block;box-shadow:var(--shadow-sm)}.tool-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--c-primary);text-decoration:none}.tool-card-icon{font-size:2rem;margin-bottom:12px}.tool-card-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--c-accent);margin-bottom:6px}.tool-card-title{font-size:1.1rem;font-weight:700;color:var(--c-primary);margin-bottom:8px}.tool-card-desc{font-size:.875rem;color:var(--c-text-muted);line-height:1.6}.tool-card-arrow{margin-top:16px;font-size:.8rem;color:var(--c-primary);font-weight:600}.tool-card-badge{display:inline-block;background:var(--c-accent);color:#fff;font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:20px;margin-left:6px;vertical-align:middle}.section-title{font-size:1.3rem;font-weight:700;color:var(--c-primary);margin-bottom:4px}.section-sub{font-size:.875rem;color:var(--c-text-muted);margin-bottom:24px}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-32{margin-top:32px}.mt-48{margin-top:48px}@media (max-width: 640px){.site-nav{display:none}.footer-inner{flex-direction:column}}
