
:root{--paper:#f8f5ef;--ink:#272c36;--muted:#616671;--line:#dedbd4;--card:#fffdf9;--accent:#a24d34;--soft:#f1e5d8;--night:#293340}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a:hover{color:var(--accent)}.notice{background:var(--night);color:#f7f3ed;font-size:12px;text-align:center;padding:9px 20px;letter-spacing:.04em}.wrap{max-width:1060px;margin:auto;padding:0 28px}.head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:27px 0;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:25px;font-weight:750;letter-spacing:.12em;white-space:nowrap}.brand small{font-size:10px;letter-spacing:.17em;display:block;font-weight:600;color:var(--muted)}nav{display:flex;gap:24px;font-size:13px}nav a{text-decoration:none;padding:8px 0}nav a[aria-current=page]{border-bottom:2px solid var(--accent)}.eyebrow{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.13em;margin:0 0 17px}.hero{padding:55px 0 42px;display:grid;grid-template-columns:minmax(0,1fr) 255px;gap:46px;align-items:center}h1{font-size:clamp(28px,3.4vw,43px);line-height:1.5;font-weight:700;letter-spacing:.015em;margin:0 0 20px}h2{font-size:23px;line-height:1.5;margin:0 0 17px}h3{font-size:18px;margin:0 0 12px}.lede{color:var(--muted);margin:0;max-width:620px;font-size:15px}.note{background:var(--soft);border-radius:12px;padding:26px;font-size:14px}.avatar{width:54px;height:54px;background:var(--night);border-radius:50%;color:var(--paper);display:grid;place-items:center;font-family:Georgia,serif;font-size:28px;margin-bottom:15px}.note strong{display:block;font-size:17px}.note p{margin:7px 0 0;color:#575349}.section-label{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:22px}.section-label h2{font-size:18px;margin:0}.small{font-size:12px;color:var(--muted)}.cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{display:block;background:var(--card);border:1px solid var(--line);padding:27px 28px;border-radius:11px;text-decoration:none;transition:border-color .15s}.card:hover{border-color:var(--accent)}.card .type{font-size:11px;color:var(--accent);letter-spacing:.08em}.card h3{font-size:21px;line-height:1.65;margin:14px 0 10px}.card p{font-size:14px;color:var(--muted);margin:0 0 24px}.arrow{display:block;font-size:13px;font-weight:650}.status{margin:28px 0 40px;padding:19px 22px;border-left:3px solid #c3b49e;background:#eeeae2;font-size:13px;color:#59584f}.footer{margin-top:45px;padding:24px 0 30px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;align-items:baseline;font-size:12px;color:var(--muted)}.footer a{font-size:12px}.article{max-width:780px;margin:0 auto;padding:43px 0 16px}.article h1{font-size:32px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:25px}.tag{display:inline-block;background:var(--soft);color:#76543b;border-radius:5px;padding:3px 10px;font-size:11px;margin:0 0 16px}.panel{margin:28px 0;border:1px solid var(--line);background:var(--card);border-radius:11px;padding:25px 28px}.panel p{margin:10px 0;font-size:15px}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid var(--line);padding:12px 0;text-align:left;vertical-align:top}th{width:34%;font-weight:600}tr:last-child th,tr:last-child td{border-bottom:0}.placeholder{color:#71716c}button{font:inherit}.disabled{display:block;width:100%;border:1px solid #c9c5bf;color:#73706c;background:#eae7e1;border-radius:7px;padding:14px 18px;text-align:center;font-size:14px;cursor:not-allowed}details{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}summary{cursor:pointer;font-weight:650;font-size:15px}details p{color:var(--muted);font-size:14px}.rule{padding:18px 0;border-bottom:1px solid var(--line)}.rule:last-child{border-bottom:0}.rule h3{font-size:16px;margin:0 0 5px}.rule p{margin:0;font-size:14px;color:var(--muted)}.empty{padding:25px;text-align:center;background:#f0ede7;border-radius:9px;color:var(--muted);font-size:14px}.skip{position:absolute;left:-9999px}.skip:focus{position:fixed;left:15px;top:15px;background:white;padding:12px;z-index:100}
@media(max-width:700px){.wrap{padding:0 20px}.head{align-items:flex-start;flex-direction:column;gap:12px;padding:21px 0 17px}nav{gap:20px;font-size:12px;flex-wrap:wrap}.brand{font-size:24px}.hero{display:block;padding:33px 0 29px}.hero h1{font-size:28px}.note{margin-top:26px;padding:20px;display:grid;grid-template-columns:44px 1fr;column-gap:14px}.avatar{width:44px;height:44px;font-size:24px;margin:0;grid-row:1/3}.note p{font-size:13px}.cards{grid-template-columns:1fr;gap:15px}.card{padding:23px}.card h3{font-size:20px}.footer{flex-direction:column;gap:8px;margin-top:28px}.article{padding-top:28px}.article h1{font-size:27px}.panel{padding:21px 19px}.section-label{gap:10px}.section-label .small{font-size:10px}.notice{font-size:10px;padding:8px 10px}}

/* General information pages: readable type, restrained surfaces and clear focus. */
:root{--paper:#f7fcfb;--ink:#223a3c;--muted:#50686b;--line:#d1e4e1;--card:#ffffff;--accent:#087970;--soft:#e8f6f2;--night:#175c58}
body{line-height:1.85;overflow-wrap:anywhere} .wrap{max-width:1080px}
.notice{font-size:13px;letter-spacing:0;padding:10px 20px;background:var(--soft);color:var(--night);border-bottom:1px solid var(--line)}
.brand small{font-size:12px;letter-spacing:.06em;font-weight:400}
nav{font-size:14px;gap:20px} nav a{min-height:44px;display:inline-flex;align-items:center}
h1{letter-spacing:0;line-height:1.5}.hero{padding:48px 0;gap:40px}.lede{font-size:16px}
.eyebrow{font-size:13px;letter-spacing:.04em}.note{border-radius:4px;padding:24px}.note p{color:var(--muted)}
.cards{gap:20px}.card{border-radius:4px;padding:28px}.card .type{font-size:13px;letter-spacing:0}.card h3{font-size:21px}.card p{font-size:15px}.arrow{font-size:14px}
.small,.footer,.footer a,.breadcrumb{font-size:13px}.section-label .small{font-size:13px}.section-label{flex-wrap:wrap;gap:8px}
.article{max-width:740px;padding-top:40px}.article h1{font-size:clamp(26px,3.2vw,36px)}
.panel{border-radius:4px;padding:28px 30px;margin:28px 0}.panel p{font-size:16px;margin:14px 0}.panel p.small{font-size:13px}
.rule{padding:20px 0}.rule p{font-size:15px}.rule h3{font-size:17px}
table{font-size:15px;line-height:1.8}caption{text-align:left;color:var(--muted);font-size:13px;padding-bottom:12px}th,td{padding:14px 12px;overflow-wrap:anywhere}th{width:32%}thead{background:var(--soft)}tbody th{padding-left:0}
.status{font-size:14px;border-left-color:var(--accent);background:var(--soft);color:var(--ink)}
.tag{color:var(--night)}.empty{background:var(--soft)}.placeholder{color:var(--muted)}
.disabled{border-color:var(--line);color:var(--muted);background:#edf4f3}
.avatar{background:#d1eee6;color:var(--night)}
.footer{align-items:center}.footer a{display:inline-flex;align-items:center;min-height:44px}
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex='-1']:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
.skip:focus{color:var(--ink);border:2px solid var(--accent);max-width:calc(100% - 30px)}
main,section[id]{scroll-margin-top:24px}.section-nav{display:flex;flex-wrap:wrap;gap:4px 20px;margin:26px 0}.section-nav a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}
@media(max-width:700px){.wrap{padding:0 20px}.head{gap:8px}.notice{font-size:12px;padding:10px 16px}nav{font-size:14px;gap:16px}.hero{padding:30px 0}.hero h1{font-size:28px}.hero h1 br{display:none}.note{margin-top:24px}.note p{font-size:14px}.cards{gap:16px}.card{padding:22px}.panel{padding:22px 18px}.article{padding-top:28px}.panel h2{font-size:21px}.footer{align-items:flex-start}.section-label .small{font-size:13px}th,td{padding:12px 8px}th{width:35%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Keep the decorative initial centered when text is enlarged. */
.avatar{line-height:1}

/* Comfortable local typography; no external font requests. */
body{font-family:"BIZ UDPGothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.95}
h1,h2,h3,.brand{font-family:"Hiragino Maru Gothic ProN","UD Digi Kyokasho NK-R","BIZ UDPGothic",sans-serif;font-weight:700;line-height:1.65}
.brand{letter-spacing:.06em}.panel,.card,.note{border-radius:14px}
.article{max-width:760px}.article .panel p{max-width:42em}
.topic-nav{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 36px;padding:22px;background:var(--soft);border-radius:14px}
.topic-nav strong{flex-basis:100%;font-size:15px}.topic-nav a{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:8px 16px;min-height:44px;text-decoration:underline}
.section-nav a{text-decoration:underline}.panel h2{font-size:23px}
@media(max-width:700px){.topic-nav{padding:18px;gap:8px}.topic-nav a{font-size:14px;padding:8px 12px}.panel h2{font-size:21px}}

/* Completed local palette: green only. */
:root{--paper:#f7fcfb}
.notice{background:var(--soft)}
.hero .eyebrow{color:var(--accent)}
.note{background:var(--soft);border:1px solid var(--line)}
.avatar{background:#d1eee6;color:var(--night)}
.topic-nav{background:var(--soft);border:1px solid var(--line)}
.topic-nav a{color:var(--night);background:var(--card);border-color:var(--line)}
.topic-nav a:hover{box-shadow:inset 0 0 0 1px currentColor;text-decoration-thickness:2px}
.card{border-top:3px solid var(--accent)}
.card .type,.card .arrow{color:var(--accent)}
.panel[id="environment"],.panel[id="demo"],.panel[id="requirements"],.panel[id="questions"]{border-top:3px solid var(--accent)}
.panel[id="environment"] h2,.panel[id="demo"] h2,.panel[id="requirements"] h2,.panel[id="questions"] h2{color:var(--night)}
.panel[id="price"]{border-top:3px solid var(--accent)}
.panel[id="price"] h2{color:var(--night)}
.table-wrap a{color:var(--accent)}
.section-nav a,.contact-address{color:var(--accent)}
#contact{border-top:3px solid var(--accent)}
