:root{--paper: #faf7f1;--paper-2: #f1ece2;--card: #ffffff;--ink: #1f2622;--ink-2: #4a534d;--moss: #1f5e4a;--moss-2: #2a7a60;--moss-bg: #e4efe8;--kaki: #b94e19;--kaki-bg: #fbe9dc;--rule: #d8d1c3;--focus: #0b5fd6;--serif: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "BIZ UDPMincho", "Yu Mincho", "YuMincho", "Noto Serif JP", serif;--sans: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "BIZ UDPGothic", "Yu Gothic UI", "Yu Gothic", Meiryo, "Noto Sans JP", sans-serif}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1.125rem;line-height:1.9}a{color:var(--moss);text-underline-offset:.22em;text-decoration-thickness:1.5px}a:hover{color:var(--kaki)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:3px}h1,h2,h3{font-family:var(--serif);line-height:1.45;letter-spacing:.03em;font-weight:700}h2{font-size:1.7rem;margin:3rem 0 1rem}h3{font-size:1.25rem;margin:2rem 0 .6rem}p{margin:0 0 1em}ul,ol{padding-left:1.4em}li{margin:.25em 0}small,.small{font-size:.9rem}.wrap{width:min(1120px,100% - 32px);margin-inline:auto}.skip{position:absolute;left:-9999px;top:0;background:var(--kaki);color:#fff;padding:.6rem 1rem;z-index:10;font-weight:700}.skip:focus{left:8px;top:8px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.num{font-variant-numeric:tabular-nums}[hidden]{display:none!important}.yabane{display:inline-block;width:1.1em;height:.7em;background:var(--kaki);clip-path:polygon(0 0,78% 0,100% 50%,78% 100%,0 100%);vertical-align:-.02em;margin-right:.45em}h2 .yabane{background:var(--moss)}.hd{background:var(--card);border-bottom:1px solid var(--rule);position:relative}.hd:after{content:"";display:block;height:5px;background:linear-gradient(90deg,var(--moss) 0 62%,var(--kaki) 62% 100%)}.hd .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;padding-block:.8rem;flex-wrap:wrap}.logo{display:flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none}.logo:hover{color:var(--ink)}.logo-mark{width:46px;height:46px;flex:none}.logo-text{display:grid;line-height:1.2}.logo-text b{font-family:var(--serif);font-size:1.3rem;letter-spacing:.04em}.logo-text small{font-size:.78rem;letter-spacing:.06em;color:var(--ink-2)}.nav{display:flex;flex-wrap:wrap;gap:.2rem}.nav a{color:var(--ink);text-decoration:none;font-weight:700;font-size:.98rem;padding:.5rem .85rem;border-radius:999px;min-height:44px;display:inline-flex;align-items:center;border:1.5px solid transparent}.nav a:hover{border-color:var(--rule);color:var(--moss)}.nav a[aria-current=page]{background:var(--moss);color:#fff}@media(max-width:820px){.hd .wrap{padding-block:.6rem;gap:.5rem}.logo-mark{width:40px;height:40px}.logo-text b{font-size:1.12rem}.nav{display:grid;grid-template-columns:repeat(4,1fr);width:100%;gap:.3rem}.nav a{font-size:.9rem;padding:.35rem .2rem;justify-content:center;text-align:center;line-height:1.25;border-radius:10px;border-color:var(--rule);background:var(--paper)}.nav a[aria-current=page]{border-color:var(--moss)}}.crumb{font-size:.95rem;margin:1.2rem auto 0;color:var(--ink-2)}.crumb a{color:var(--ink-2)}.page-title{margin:1.2rem 0 1.8rem;padding-bottom:1.2rem;border-bottom:1px solid var(--rule)}.page-title h1{font-size:clamp(1.8rem,4vw,2.5rem);margin:0}.page-title .lead{margin:.7rem 0 0;color:var(--ink-2);max-width:44em}.kicker{display:inline-flex;align-items:center;font-weight:700;color:var(--kaki);font-size:.95rem;letter-spacing:.08em;margin:0 0 .4rem}.hero{position:relative;padding:2.4rem 0 2rem;overflow:hidden}.hero .wrap{display:grid;gap:2rem;grid-template-columns:1fr;align-items:center}@media(min-width:900px){.hero{padding:3.6rem 0 2.6rem}.hero .wrap{grid-template-columns:1.15fr .85fr;gap:3rem}}.hero h1{font-size:clamp(2rem,5vw,3.4rem);margin:0 0 1rem;line-height:1.35}.hero h1 em{font-style:normal;color:var(--moss)}.hero .lead{font-size:1.15rem;color:var(--ink-2);max-width:32em;margin:0 0 1.4rem}.hero .cta{display:flex;flex-wrap:wrap;gap:.7rem}.signpost{display:grid;gap:.6rem;justify-items:start;position:relative;padding-left:14px}.signpost:before{content:"";position:absolute;left:0;top:-12px;bottom:-12px;width:14px;background:#8a6a4a;border-radius:4px}.sign{position:relative;display:flex;align-items:center;gap:.8rem;text-decoration:none;color:#fff;background:var(--moss);padding:.75rem 2.2rem .75rem 1.2rem;font-family:var(--serif);font-weight:700;font-size:1.2rem;clip-path:polygon(0 0,calc(100% - 20px) 0,100% 50%,calc(100% - 20px) 100%,0 100%);min-height:60px;width:min(100%,360px);transition:transform .15s}.sign:nth-child(2){background:var(--kaki);width:min(100%,320px)}.sign:nth-child(3){background:var(--moss-2);width:min(100%,340px)}.sign:hover{transform:translate(6px);color:#fff}.sign small{font-family:var(--sans);font-weight:400;font-size:.85rem;opacity:.92;display:block;line-height:1.3}.sign .sign-no{font-family:var(--sans);font-size:.8rem;border:1px solid rgba(255,255,255,.7);border-radius:999px;padding:0 .5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:inherit;font-weight:700;font-size:1.05rem;min-height:52px;padding:.6rem 1.6rem;border-radius:999px;border:2px solid var(--moss);background:var(--moss);color:#fff;cursor:pointer;text-decoration:none}.btn:hover{background:var(--moss-2);border-color:var(--moss-2);color:#fff}.btn.ghost{background:transparent;color:var(--moss)}.btn.ghost:hover{background:var(--moss-bg)}.btn.kaki{background:var(--kaki);border-color:var(--kaki)}.btn.kaki:hover{background:#a8471a;border-color:#a8471a}.needs{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.8rem;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.needs li{margin:0}.needs li a,.needs li .soon{display:grid;grid-template-columns:auto 1fr;gap:.8rem;align-items:center;background:var(--card);border:1.5px solid var(--rule);border-radius:14px;padding:.9rem 1rem;text-decoration:none;color:var(--ink);min-height:72px}.needs li a:hover{border-color:var(--moss);background:var(--moss-bg)}.needs li .soon{color:var(--ink-2);background:var(--paper-2)}.needs .ya{width:26px;height:18px;background:var(--kaki);clip-path:polygon(0 0,72% 0,100% 50%,72% 100%,0 100%);flex:none}.needs .soon .ya{background:#b8b0a2}.needs b{display:block;font-weight:700;line-height:1.4}.needs small{display:block;color:var(--ink-2);font-size:.88rem;line-height:1.4}.pillars{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:1rem}.pillar{background:var(--card);border:1.5px solid var(--rule);border-radius:18px;padding:1.4rem 1.4rem 1.2rem;display:flex;flex-direction:column;gap:.6rem}.pillar h3{margin:0;font-size:1.35rem}.pillar p{margin:0;color:var(--ink-2);font-size:1rem}.pillar ul{margin:.3rem 0 0;padding-left:1.2rem;font-size:1rem}.pillar .more{margin-top:auto;padding-top:.6rem;font-weight:700}.pillar--kaigo{border-top:6px solid var(--moss)}.pillar--shukatsu{border-top:6px solid var(--kaki)}.pillar--kosodate{border-top:6px solid var(--moss-2)}.desk{background:var(--card);border:1.5px solid var(--rule);border-radius:18px;padding:1.3rem 1.4rem;margin:1rem 0}.desk h3{margin:0 0 .4rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem .8rem}.desk h3 .tag{font-family:var(--sans);font-size:.82rem;font-weight:700;color:var(--moss);background:var(--moss-bg);border-radius:6px;padding:.05rem .5rem}.desk .who{color:var(--ink-2);font-size:1rem;margin:0 0 .5rem}.desk dl{display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;margin:.6rem 0 0;font-size:1rem}.desk dt{font-weight:700;color:var(--ink-2);white-space:nowrap}.desk dd{margin:0}.desk .tel{font-size:1.35rem;font-weight:700;color:var(--kaki);font-variant-numeric:tabular-nums;letter-spacing:.04em}@media(max-width:560px){.desk dl{grid-template-columns:1fr;gap:.1rem}.desk dd{margin-bottom:.5rem}}.unk{color:var(--ink-2);background:var(--paper-2);border-radius:6px;padding:.05rem .45rem;font-size:.9rem}.tbl{width:100%;border-collapse:separate;border-spacing:0;background:var(--card);border:1.5px solid var(--rule);border-radius:14px;overflow:hidden;margin:.8rem 0 1.2rem;font-size:1rem}.tbl th,.tbl td{padding:.7rem .9rem;text-align:left;vertical-align:top;border-top:1px solid var(--rule)}.tbl thead th{background:var(--moss);color:#fff;border-top:0;font-weight:700}.tbl tbody th{background:var(--paper-2);font-weight:700;white-space:nowrap}.tbl td.r{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.tbl caption{caption-side:top;text-align:left;font-weight:700;padding:.4rem 0;color:var(--ink-2);font-size:.95rem}.steps{list-style:none;margin:1.2rem 0;padding:0;counter-reset:s}.steps li{position:relative;padding:0 0 1.8rem 3.8rem;counter-increment:s;margin:0}.steps li:before{content:counter(s);position:absolute;left:0;top:.1rem;width:2.7rem;height:2.7rem;border-radius:50%;background:var(--moss);color:#fff;font-family:var(--serif);font-size:1.3rem;font-weight:700;display:grid;place-items:center}.steps li:after{content:"";position:absolute;left:1.3rem;top:3rem;bottom:.2rem;border-left:3px dotted var(--moss)}.steps li:last-child:after{display:none}.steps h3{margin:.2rem 0 .3rem}.steps p{margin:0 0 .4rem}.note{border-left:6px solid var(--kaki);background:var(--card);padding:.9rem 1.2rem;border-radius:0 12px 12px 0;margin:1.4rem 0;font-size:1rem}.note p{margin:0}.src{background:var(--paper-2);border-radius:14px;padding:1.1rem 1.3rem;margin-top:2.5rem;font-size:.95rem}.src.wrap{margin-top:2.5rem}.src h2{font-size:1.15rem;margin:0 0 .5rem}.src ol{margin:0;padding-left:1.3rem}.src li{margin:.3rem 0;word-break:break-all}.src .ca{color:var(--ink-2)}.site-grid{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.site-grid li{margin:0}.site-card{background:var(--card);border:1.5px solid var(--rule);border-radius:16px;padding:1.1rem 1.2rem;display:flex;flex-direction:column;gap:.35rem;min-height:150px;height:100%}.site-card.live{border-left:6px solid var(--moss)}.site-card.soon{border-left:6px solid #b8b0a2;background:var(--paper-2)}.site-card h3{margin:0;font-size:1.2rem;font-family:var(--sans)}.site-card .need{color:var(--ink-2);font-size:.95rem;margin:0}.site-card .meta{display:flex;flex-wrap:wrap;gap:.3rem .8rem;font-size:.9rem;color:var(--ink-2);margin:0}.site-card .meta b{color:var(--moss);font-variant-numeric:tabular-nums}.site-card .go{margin-top:auto;padding-top:.4rem;font-weight:700}.site-card .host{font-size:.85rem;color:var(--ink-2);word-break:break-all}.status{display:inline-block;font-size:.8rem;font-weight:700;border-radius:6px;padding:.05rem .5rem}.status.live{background:var(--moss-bg);color:var(--moss)}.status.soon{background:#e9e4da;color:var(--ink-2)}.pick{background:var(--card);border:1.5px solid var(--rule);border-radius:18px;padding:1.3rem 1.4rem;margin:1rem 0}.pick h3{margin:0 0 .5rem}.pick .law{font-size:.95rem;color:var(--ink-2);margin:0 0 .6rem}.pick ul{margin:0;padding-left:1.2rem;font-size:1rem}.pick .go{margin:.7rem 0 0;font-weight:700}.prose{max-width:46em}.info{width:100%;border-collapse:collapse;background:var(--card);border-radius:14px;overflow:hidden;border:1.5px solid var(--rule);margin:.8rem 0 1.2rem}.info th{width:9em;text-align:left;background:var(--paper-2);padding:.8rem 1rem;vertical-align:top;font-size:1rem}.info td{padding:.8rem 1rem;border-top:1px solid var(--rule)}.info tr:first-child td{border-top:0}.info tr+tr th{border-top:1px solid var(--rule)}@media(max-width:560px){.info th,.info td{display:block;width:100%}.info td{border-top:0;padding-top:.2rem}}.toc{background:var(--card);border:1.5px solid var(--rule);border-radius:14px;padding:.9rem 1.2rem;margin:0 0 1.5rem;font-size:1rem}.toc b{display:block;margin-bottom:.3rem}.toc ol{margin:0;padding-left:1.3rem;columns:2;column-gap:2rem}@media(max-width:560px){.toc ol{columns:1}}.ft{margin-top:4rem;background:var(--paper-2);color:var(--ink-2);border-top:5px solid var(--moss);padding:2.4rem 0 2rem;font-size:.98rem}.ft a{color:var(--moss)}.ft h2{color:var(--ink);font-size:1.1rem;margin:0 0 .5rem;font-family:var(--sans)}.ft .cols{display:grid;gap:1.6rem;grid-template-columns:1.6fr 1fr 1fr;margin-bottom:1.4rem}@media(max-width:760px){.ft .cols{grid-template-columns:1fr}}.plain{list-style:none;margin:0;padding:0}.plain li{margin:.15rem 0}.plain a{display:inline-block;padding:.25rem 0}.ft .legal{font-size:.9rem;border-top:1px solid var(--rule);padding-top:1rem}
