@import"https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Noto+Sans+SC:wght@400;500;700&display=swap";*{box-sizing:border-box;margin:0;padding:0}html{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:inherit;margin:0;background:#f9fafb;color:#1f2937;line-height:1.6}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}h1{font-size:clamp(1.5rem,4vw,2.5rem)}h2{font-size:clamp(1.25rem,3vw,2rem)}h3{font-size:clamp(1rem,2.5vw,1.5rem)}p{line-height:1.75}a{color:#2563eb;text-decoration:none}a:hover{color:#1d4ed8;text-decoration:underline}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-8{gap:2rem}.text-green-500{color:#22c55e}.text-green-400{color:#4ade80}.text-emerald-500{color:#10b981}.text-blue-500{color:#3b82f6}.text-gray-400{color:#9ca3af}.text-gray-500{color:#6b7280}.bg-red-500{background-color:#ef4444}.bg-orange-400{background-color:#fb923c}.bg-yellow-400{background-color:#facc15;color:#1f2937}.bg-gray-400{background-color:#9ca3af}.m-0{margin:0}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-8{margin-top:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-8{margin-bottom:2rem}.p-2{padding:.5rem}.p-4{padding:1rem}.p-8{padding:2rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-4{padding-top:1rem;padding-bottom:1rem}@media(min-width:640px){.sm\:hidden{display:none}}@media(min-width:768px){.md\:flex-row{flex-direction:row}.md\:hidden{display:none}}@media(min-width:1024px){.lg\:flex-row{flex-direction:row}}::selection{background:#3b82f6;color:#fff}:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media print{body{background:#fff;color:#000}.no-print{display:none}}:root{--bg-primary: #FAF7F2;--bg-secondary: #F5F0E6;--bg-card: #FFFFFF;--bg-muted: #EAE5DC;--bg-hover: #F0EDE8;--text-primary: #2C2825;--text-secondary: #6B6560;--text-tertiary: #9A938D;--text-muted: #C9C2B8;--border-light: #E8E2DA;--border-lighter: #F2EBE2;--accent-brown: #8B7355;--accent-sage: #7D8A6F;--accent-clay: #A89078;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--shadow-subtle: 0 1px 3px rgba(0, 0, 0, .04);--shadow-soft: 0 2px 8px rgba(0, 0, 0, .06);--shadow-card: 0 4px 16px rgba(0, 0, 0, .08);--font-serif: "Noto Sans SC", "Noto Sans JP", sans-serif;--font-sans: "Noto Sans SC", "Noto Sans JP", sans-serif;--font-mono: "SF Mono", "Monaco", "Consolas", monospace}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);line-height:1.8;font-size:16px;-webkit-font-smoothing:antialiased;min-height:100vh}.nav{position:sticky;top:0;z-index:100;background:#faf7f2f2;backdrop-filter:blur(12px);border-bottom:1px solid var(--border-light)}.nav-inner{max-width:1000px;margin:0 auto;padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between}.nav-logo{font-family:var(--font-sans);font-size:16px;font-weight:500;letter-spacing:.08em;color:var(--text-primary);text-decoration:none}.nav-links{display:flex;gap:40px;list-style:none}.nav-links a{font-size:13px;color:var(--text-secondary);text-decoration:none;letter-spacing:.05em;transition:color .2s ease}.nav-links a:hover{color:var(--text-primary)}.breadcrumb{max-width:1000px;margin:0 auto;padding:24px 24px 0}.breadcrumb-list{display:flex;align-items:center;gap:8px;list-style:none;font-size:13px;color:var(--text-tertiary)}.breadcrumb-list a{color:var(--text-secondary);text-decoration:none;transition:color .2s ease}.breadcrumb-list a:hover{color:var(--text-primary)}.breadcrumb-separator{color:var(--text-muted)}.breadcrumb-current{color:var(--text-secondary)}@media(max-width:768px){.nav-links{display:none}.nav-inner{padding:0 20px}.breadcrumb{padding:20px 20px 0}}
