:root{--bg: #ffffff;--bg-soft: #f5f8fc;--text: #1f2933;--muted: #52606d;--line: #dbe3ec;--blue: #2a63a8;--blue-dark: #173a66;--orange: #f5a623;--pink: #e8628c;--accent-soft: #fff6e3;--warn-bg: #fff7e0;--warn-line: #e6c86e;--radius: 14px;--shadow: 0 2px 10px rgba(23, 58, 102, .08);color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif;line-height:1.8}a{color:var(--blue)}img{max-width:100%;height:auto}main{max-width:760px;margin:0 auto;padding:24px 16px 64px}main.wide{max-width:1040px}h1,h2,h3{line-height:1.4;color:var(--blue-dark)}h2{margin-top:2.2em;padding-left:10px;border-left:6px solid var(--orange);font-size:1.3rem}.pr-bar{margin:0;padding:6px 16px;background:var(--bg-soft);color:var(--muted);font-size:.8rem;text-align:center}.preview-bar{position:sticky;top:0;z-index:10;margin:0;padding:6px 12px;background:#7a1f3d;color:#fff;font-size:.85rem;text-align:center}.site-header{border-bottom:1px solid var(--line);background:#fff}.site-header .inner{display:flex;flex-wrap:wrap;align-items:center;gap:8px 24px;max-width:1040px;margin:0 auto;padding:10px 16px}.brand{display:flex;align-items:center;gap:8px;color:var(--blue-dark);font-weight:800;font-size:1.25rem;text-decoration:none}.brand img{border-radius:50%;border:2px solid var(--orange);background:#fff}.site-header nav{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:.92rem}.site-header nav a{color:var(--text);text-decoration:none}.site-header nav a:hover{color:var(--blue);text-decoration:underline}.site-footer{margin-top:24px;padding:28px 16px;border-top:4px solid var(--orange);background:var(--bg-soft);color:var(--muted);font-size:.85rem;text-align:center}.site-footer img{width:220px;margin-bottom:8px}.site-footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 18px;margin-bottom:8px}.hero{display:grid;gap:24px;align-items:center;padding:8px 0 20px}@media(min-width:760px){.hero{grid-template-columns:1.1fr .9fr}}.hero-logo{display:block;width:100%;max-width:460px}.hero h1{text-wrap:balance;margin:.3em 0 .4em;font-size:clamp(1.25rem,3vw,1.6rem)}.hero p{margin:.4em 0}.hero-art{overflow:hidden;border-radius:20px;background:#fff;box-shadow:var(--shadow)}.hero-art img{display:block;width:100%}.btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.btn{display:inline-block;padding:10px 20px;border:2px solid var(--blue);border-radius:999px;background:var(--blue);color:#fff;font-weight:700;text-decoration:none}.btn.sub{background:#fff;color:var(--blue)}.banner{margin:8px 0;overflow:hidden;border-radius:20px}.banner img{display:block;width:100%;max-height:340px;object-fit:cover;object-position:center 35%}.page-banner{display:block;width:100%;aspect-ratio:3 / 1;margin-bottom:16px;border-radius:var(--radius);object-fit:cover;object-position:50% 30%}.cards{display:grid;gap:14px;margin:0;padding:0;list-style:none}@media(min-width:640px){.cards.cols-3{grid-template-columns:repeat(3,1fr)}.cards.cols-2{grid-template-columns:repeat(2,1fr)}}.card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.card .thumb{display:block;width:100%;aspect-ratio:4 / 3;object-fit:cover;object-position:50% 22%;background:#fff}.card .body{padding:12px 14px 14px}.card h3{margin:0 0 4px;font-size:1.05rem}.card p{margin:0;color:var(--muted);font-size:.9rem}.badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.badge{display:inline-block;padding:0 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.75rem}.badge.job{border-color:var(--blue);color:var(--blue)}.badge.draft{border-color:var(--warn-line);background:var(--accent-soft);color:#7a5200}.notice{padding:12px 14px;border:1px solid var(--warn-line);border-radius:8px;background:var(--warn-bg);font-size:.9rem}table{width:100%;border-collapse:collapse;font-size:.95rem}th,td{padding:8px 10px;border:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--bg-soft);white-space:nowrap}.meta{color:var(--muted);font-size:.85rem}mark.review{padding:0 3px;background:#ffd75e;color:#3a2a00;font-weight:700}.review-notes{margin-top:28px;padding:12px 16px;border:2px dashed #7a1f3d;border-radius:8px;background:#fff5f8;font-size:.9rem}.review-notes h2{margin-top:0;border-left:0;padding-left:0;font-size:1.05rem;color:#7a1f3d}details{margin:8px 0;padding:8px 12px;border:1px solid var(--line);border-radius:8px}summary{cursor:pointer;font-weight:700}.tool-grid{display:grid;gap:16px}@media(min-width:640px){.tool-grid{grid-template-columns:1fr 1fr}}.tool-box{padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.tool-box h2{margin-top:0;padding-left:0;border-left:0;font-size:1.05rem}label{display:block;margin-top:10px;font-size:.9rem}input[type=number]{width:100%;padding:8px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--text);font-size:1rem}.result{margin-top:16px;padding:12px 14px;border-radius:8px;background:var(--bg-soft)}.result strong{font-size:1.3rem}.notfound{text-align:center}.notfound img{max-width:280px}main strong{font-weight:800;background:linear-gradient(transparent 62%,#f5a62361 62%)}main u{text-decoration:underline;text-decoration-color:var(--pink);text-decoration-thickness:2px;text-underline-offset:3px}main h1 strong,main h2 strong,main h3 strong,main th strong,main .btn strong{background:none}main .lead{margin:0 0 1.6em;padding:14px 16px;border-left:6px solid var(--orange);border-radius:0 var(--radius) var(--radius) 0;background:var(--accent-soft);font-size:1rem;font-weight:600;line-height:1.95}main .lead p{margin:0}main .lead-who{display:flex;align-items:center;gap:8px;margin-bottom:6px;color:var(--muted);font-size:.85rem;font-weight:700}main .lead-who img{width:28px;height:28px;border:2px solid var(--orange);border-radius:50%;background:#fff}main .mirai-note{margin:1.8em 0;padding:12px 16px 12px 14px;border:2px dashed var(--pink);border-radius:var(--radius);background:#fff5f8;line-height:1.9}main .mirai-note p{margin:0}main .mirai-note-who{display:flex;align-items:center;gap:8px;margin-bottom:4px!important;color:#b53a65;font-size:.9rem;font-weight:700}main .mirai-note-who img{width:28px;height:28px;border:2px solid var(--pink);border-radius:50%;background:#fff}.mirai{display:grid;gap:20px;align-items:center}@media(min-width:760px){.mirai{grid-template-columns:1fr 1fr}}.mirai>img,.inline-art{display:block;width:100%;height:auto;border-radius:20px;box-shadow:var(--shadow)}.inline-art{max-width:560px;margin:12px 0}.message{margin-top:16px;padding:14px 16px;border-left:6px solid var(--pink);border-radius:0 var(--radius) var(--radius) 0;background:#fff0f5;line-height:1.95}.message p{margin:0}.message .message-title{margin-bottom:4px;color:var(--muted);font-size:.85rem}
