:root{--ink:#203b49;--green:#356650;--muted:#586d64;--line:#dfe7e1;--pale:#f1f6f0;--warm:#faf8f2}*{box-sizing:border-box}body{margin:0;color:var(--ink);font:16px/1.85 'Yu Gothic','Meiryo',sans-serif;background:#fff}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #9b6510;outline-offset:4px}.skip{position:absolute;top:-100px;left:12px;background:#fff;padding:10px;z-index:10}.skip:focus{top:12px}.stage{font-size:12px;text-align:center;background:var(--ink);color:#fff;padding:6px 12px}header{border-bottom:1px solid var(--line)}.header-inner,.footer-inner{max-width:1180px;margin:auto;padding:22px 32px}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{font-weight:bold;font-size:25px;letter-spacing:.07em;display:flex;align-items:center;gap:12px}.brand small{display:block;font-size:11px;font-weight:normal;letter-spacing:.08em}.brand-symbol{font-size:39px;color:var(--green);line-height:1}nav{display:flex;gap:24px;font-size:14px}nav a{display:flex;align-items:center;min-height:44px}.hero{max-width:1180px;margin:auto;padding:64px 32px 48px;display:grid;grid-template-columns:1.65fr 1fr;align-items:center;gap:30px}.eyebrow{font-size:11px;color:var(--green);font-weight:bold;letter-spacing:.15em;margin:0 0 16px}h1{font-size:40px;line-height:1.55;margin:0 0 20px;overflow-wrap:anywhere}h2{font-size:27px;line-height:1.6;margin:0 0 16px}h3{font-size:19px;line-height:1.65;margin:12px 0}.lead{font-size:16px;color:var(--muted);margin:0 0 20px}.hint,small{font-size:12px;color:var(--muted)}.search{display:flex;padding:6px;border:1px solid #b6c8bd;gap:8px;border-radius:8px;background:white;margin:20px 0;max-width:650px}.search input{border:0;min-width:0;width:100%;padding:10px}.search button{flex-shrink:0}input,button,textarea{font:inherit;color:inherit}button,.button{display:inline-block;background:var(--green);color:#fff;border:0;border-radius:6px;min-height:44px;padding:12px 19px;font-size:14px;text-align:center;cursor:pointer}button:hover,.button:hover{background:#294e3e}.secondary{background:#fff;border:1px solid #8ba795;color:var(--green)}.secondary:hover{background:var(--pale)}.promise{display:flex;justify-content:center;gap:55px;background:#f7f9f6;border-block:1px solid var(--line);padding:16px 24px;font-size:13px}.promise span:before{content:'✓';color:var(--green);margin-right:10px}.section{max-width:1180px;margin:auto;padding:50px 32px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}.card{padding:25px 23px;border:1px solid var(--line);border-radius:10px;min-width:0;background:#fff}.card p{color:var(--muted);font-size:14px}.card h3 a{display:block}.card:hover{box-shadow:0 8px 25px #203b490a}.number{display:inline-block;color:var(--green);background:var(--pale);font-size:12px;letter-spacing:.08em;border-radius:6px;padding:7px 11px}.category h3{display:flex;justify-content:space-between}.tool-section{background:var(--pale);border-radius:12px;max-width:1116px;padding:35px}.breadcrumb{font-size:13px;margin:0 0 24px}.breadcrumb a,.back-link,.source{color:var(--green);text-decoration:underline}.reading{max-width:820px}.reading h1{font-size:32px}.reading h2{font-size:23px;margin-top:32px}.reading p{overflow-wrap:anywhere}.conclusion{background:var(--pale);border-left:4px solid var(--green);padding:22px;border-radius:6px;margin:26px 0}.conclusion h2{margin-top:0}.conclusion p{margin-bottom:0}.checklist label{display:flex;gap:12px;align-items:start;padding:10px 0;min-height:44px;border-bottom:1px solid var(--line)}input[type=checkbox]{width:20px;height:20px;flex-shrink:0;accent-color:var(--green);margin-top:5px}.back-link{display:inline-flex;align-items:center;min-height:44px;margin-top:22px}.inputs{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}#tool label{display:block;font-size:14px;font-weight:bold;margin:12px 0}#tool input,#tool textarea{display:block;width:100%;border:1px solid #9bac9e;border-radius:5px;padding:12px;margin-top:6px;background:#fff;font-weight:normal;font-size:16px}textarea{resize:vertical;line-height:1.7}fieldset{min-width:0;border:1px solid var(--line);border-radius:8px;padding:16px}legend{font-size:14px;font-weight:bold;padding:0 8px}.note{background:var(--warm);padding:20px;border-radius:7px;font-size:14px}details{border:1px solid var(--line);border-radius:8px;padding:18px;margin:24px 0}summary{min-height:44px;cursor:pointer}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.result:not(:empty){background:var(--pale);border-radius:8px;padding:24px;margin:24px 0}.result h2{margin-top:0}.amount{font-size:26px;font-weight:bold;color:var(--green)}#error{color:#982828;font-weight:bold}#status{color:var(--green)}.result dl{margin:0}.result dt{font-weight:bold;margin-top:14px}.result dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.result pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere}.schedule-list{padding-left:23px}.schedule-list li{margin:12px 0}.check-row{padding:16px 0;border-bottom:1px solid #becfc2}.check-row label{display:flex;gap:12px}.check-row small{display:block;margin-left:32px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{padding:10px 8px;border-bottom:1px solid #b7c9bb;text-align:left}caption{text-align:left;font-weight:bold;margin-bottom:12px}footer{background:#f6f8f5;border-top:1px solid var(--line)}.footer-inner{font-size:13px;color:var(--muted);padding-block:35px}footer .brand{font-size:22px;color:var(--ink)}footer a{min-height:44px;display:inline-flex;align-items:center}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}#search-results .card{margin:18px 0}#search-results h2{margin:0;font-size:22px}#print-inputs{display:none}.illustration{height:290px;position:relative;border-radius:50% 50% 14% 14%;background:var(--warm);width:100%;max-width:345px;justify-self:center;overflow:hidden}.illustration>p{position:absolute;bottom:7px;left:0;width:100%;text-align:center;font-size:12px;letter-spacing:.08em;color:var(--green)}.sun{position:absolute;top:25px;right:38px;width:49px;height:49px;background:#e9d9a6;border-radius:50%}.car-body{position:absolute;left:38px;right:35px;bottom:75px;height:65px;background:#789784;border:2px solid #356650;border-radius:25px 30px 12px 12px;z-index:2}.car-window{position:absolute;left:50px;top:-46px;width:130px;height:48px;background:#d9e8df;border:5px solid #789784;outline:2px solid #356650;border-radius:47px 52px 0 0}.car-window:after{content:'';position:absolute;left:63px;height:100%;width:4px;background:#789784}.car-body i{position:absolute;width:35px;height:35px;background:#374953;border:6px solid #e9dfc9;border-radius:50%;bottom:-17px;left:30px}.car-body i+i{left:auto;right:30px}.road{position:absolute;bottom:55px;left:20px;right:20px;height:3px;background:#b8c8bd}.paper{position:absolute;background:white;left:36px;top:71px;width:97px;height:127px;border:2px solid #c6ceb9;border-radius:4px;transform:rotate(-8deg)}.paper b{display:block;height:4px;background:#afc3b5;margin:21px 14px}.screen{position:absolute;left:133px;bottom:83px;width:150px;height:102px;background:#e3eee7;border:7px solid #72917d;border-radius:6px}.screen:after{content:'';position:absolute;left:63px;top:94px;width:10px;height:15px;background:#72917d}.screen div{margin:15px;background:#faf8f2;height:38px;border-left:4px solid #d3bc80}.desk{position:absolute;bottom:63px;left:26px;right:26px;height:7px;background:#b59d74;border-radius:3px}
@media(max-width:1000px){.cards{grid-template-columns:repeat(2,1fr)}h1{font-size:34px}.tool-section{margin-inline:32px}.promise{gap:25px}}@media(max-width:640px){.header-inner{padding:16px 20px;flex-wrap:wrap;gap:12px}.brand{font-size:22px}nav{width:100%;gap:12px;justify-content:space-between;font-size:12px}.hero{display:flex;flex-direction:column;align-items:stretch;padding:34px 20px;gap:12px}h1{font-size:28px}.reading h1{font-size:27px}h2{font-size:24px}.lead{font-size:15px}.illustration{height:225px;max-width:300px;align-self:center}.sun{top:16px}.car-body{bottom:70px}.car-window{left:36px;width:120px}.road{bottom:49px}.screen{left:123px;width:139px;bottom:78px}.paper{left:33px;top:49px}.desk{bottom:58px}.promise{display:block;padding:14px 20px}.promise span{display:block}.section{padding:38px 20px}.cards{grid-template-columns:1fr;gap:14px}.tool-section{margin:0 20px;padding:26px 20px}.inputs{grid-template-columns:1fr}.card{padding:22px}.actions button{flex:1 1 145px}fieldset{padding:12px}.result:not(:empty){padding:18px}.footer-inner{padding:30px 20px}.amount{font-size:23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{@page{size:A4;margin:15mm}body{font-size:11pt;color:#000;background:#fff;line-height:1.6}.skip,.stage,header,footer,.breadcrumb,.back-link,#tool,.tool-page>.lead,.tool-page>noscript{display:none!important}.section{padding:0;max-width:none}.reading h1{font-size:20pt}.reading h2{font-size:15pt}.result:not(:empty){background:transparent;border:1px solid #aaa;padding:12px;margin:12px 0}.result{break-inside:auto}#print-inputs{display:block;margin:15px 0}#print-inputs dd{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}#print-inputs dt{font-weight:bold;margin-top:8px}.check-row,.schedule-list li,fieldset{break-inside:avoid}.amount{color:#000;font-size:17pt}a{color:#000}.hint,small{color:#333}.result pre{white-space:pre-wrap}}
/* /ie/ と同じヘッダー位置とコンパクトなホーム入口 */
.news-ticker{display:flex;align-items:center;gap:8px;flex:1;min-width:0;background:#142d49;color:#ffe46b;border-radius:6px;padding:6px 8px;height:44px;line-height:1.35}.ticker-label{font-size:11px;font-weight:bold;flex:none;border-right:1px solid #ffe46b66;padding-right:7px}.ticker-window{flex:1;min-width:0;overflow:hidden;height:36px;display:flex;align-items:center}.ticker-link{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;width:100%;flex:none;color:#ffe46b;font-size:14px;font-weight:bold;line-height:18px;overflow-wrap:anywhere}.ticker-pause{flex:none;min-width:28px;min-height:32px;padding:0;background:transparent;color:#ffe46b;font-size:14px}.ticker-items[hidden]{display:none}.ticker-link:focus-visible{outline:2px solid #ffe46b;outline-offset:-2px}
.compact-home .header-inner{padding:12px 28px;gap:16px}.compact-home .brand{font-size:22px}.compact-home .brand-symbol{font-size:36px}.compact-home .hero{padding:20px 28px 14px;grid-template-columns:minmax(0,1fr) 260px;gap:32px}.compact-home .hero .eyebrow{margin-bottom:6px;font-size:10px}.compact-home .hero h1{font-size:28px;line-height:1.4;margin-bottom:8px}.compact-home .hero .lead{font-size:13px;line-height:1.7;margin-bottom:10px}.compact-home .hero h1 br{display:none}.compact-home .illustration{height:190px}.compact-home .sun{width:32px;height:32px;top:12px}.compact-home .car-body{left:20px;right:20px;bottom:55px;height:53px}.compact-home .car-window{left:42px;top:-36px;height:38px;width:108px}.compact-home .road{bottom:35px}.compact-home .illustration>p{bottom:0;font-size:10px}.compact-home .screen{left:103px;bottom:60px;width:128px;height:84px}.compact-home .screen:after{top:77px}.compact-home .paper{left:26px;top:28px;width:85px;height:105px}.compact-home .paper b{margin:19px 12px}.compact-home .desk{bottom:40px}.compact-home .search{margin:12px 0 4px;padding:4px}.compact-home .search input{min-height:44px;padding:8px;font-size:16px}.compact-home .hero .hint{margin:5px 0;font-size:11px}.home-entrances{max-width:1180px;margin:auto;padding:4px 28px 10px}.home-entrances h2{font-size:18px;margin-bottom:8px}.home-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home-category{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:10px;min-height:70px}.home-category>span:nth-child(2){flex:1;min-width:0}.home-category strong{display:block;font-size:14px;line-height:1.5}.home-category small{display:block;font-size:10px;line-height:1.5;margin-top:3px}.home-category .number{font-size:11px;padding:4px 6px}.home-category:hover{background:var(--pale)}.home-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:1124px;margin:0 auto;gap:8px;width:auto}.home-shortcuts a{display:flex;align-items:center;justify-content:center;background:var(--pale);border-radius:6px;min-height:44px;padding:6px 8px;font-size:12px}.home-more{max-width:1124px;margin:8px auto 12px;border:1px solid var(--line);border-radius:8px}.home-more>summary{font-size:12px;min-height:44px;padding:10px 14px;line-height:2}.home-more>summary span{float:right;color:var(--muted);font-size:10px}.home-more[open]>summary{border-bottom:1px solid var(--line)}.compact-home .footer-inner{padding:12px 28px;font-size:11px;display:flex;align-items:center;flex-wrap:wrap;gap:4px 15px}.compact-home .footer-inner .brand{font-size:16px}.compact-home .footer-inner p{margin:0}.compact-home .footer-inner>a:not(.brand){font-size:11px}
@media(max-width:1000px) and (min-width:641px){.header-inner{flex-wrap:wrap}.news-ticker{min-width:220px}.header-inner>nav{font-size:12px;gap:16px}.compact-home .hero{grid-template-columns:minmax(0,1fr) 200px;gap:18px}.home-shortcuts,.home-more{margin-inline:28px}}
@media(max-width:640px){.header-inner{column-gap:10px}.header-inner>.brand{font-size:18px;gap:6px}.header-inner>.brand .brand-symbol{font-size:30px}.brand small{font-size:9px}.news-ticker{gap:4px;padding:4px 6px;min-width:0;height:44px}.ticker-label{font-size:10px;padding-right:4px}.ticker-link{font-size:13px;line-height:18px}.ticker-pause{min-width:24px}.header-inner>nav{width:100%}.compact-home .header-inner{padding:8px 16px 6px;gap:4px 10px}.compact-home .header-inner>.brand{font-size:18px;gap:6px}.compact-home nav{font-size:11px}.compact-home .hero{display:block;padding:10px 16px}.compact-home .hero h1{font-size:23px;line-height:1.4;margin-bottom:8px}.compact-home .hero .lead{font-size:12px;line-height:1.6;margin-bottom:8px}.compact-home .hero .lead br{display:none}.compact-home .illustration{display:none}.home-entrances{padding:0 16px 10px}.home-entrances h2{font-size:16px}.home-category-grid{grid-template-columns:1fr;gap:6px}.home-category{min-height:46px;padding:7px 8px;gap:8px}.home-category strong{font-size:12px}.home-category small{display:none}.home-shortcuts{grid-template-columns:1fr;gap:6px;margin:0 16px}.home-shortcuts a{font-size:11px;min-height:44px}.home-more{margin:6px 16px 8px}.home-more>summary{font-size:11px;padding:6px 10px;line-height:1.8}.home-more>summary span{float:none;display:block;margin-left:14px}.compact-home .footer-inner{padding:8px 16px;gap:2px 10px}.compact-home footer .brand,.compact-home footer p:nth-child(2){display:none}}
@media(max-width:640px) and (max-height:740px){.compact-home .hero .eyebrow,.compact-home .hero .lead,.compact-home .hero .hint{display:none}.compact-home .brand small{display:none}.compact-home .hero{padding-top:4px;padding-bottom:8px}.compact-home .hero h1{font-size:21px;line-height:1.3}.compact-home .footer-inner{padding-block:4px}}
@media(prefers-reduced-motion:reduce){.ticker-pause{display:none}}@media print{.news-ticker{display:none!important}}
.home-more{padding:0}.compact-home .hero .hint{display:none}.compact-home .stage{font-size:10px;padding:4px 12px}.ticker-pause:hover{background:#25465e}

/* WorldScene depth layer. Geometry, content, routes and ticker timing stay unchanged. */
:root{--ws-depth-line:#d5e1d8;--ws-depth-shadow:0 1px 2px #243e3110,0 7px 18px #243e310c,0 20px 40px #243e3106;--ws-depth-raised:0 2px 4px #243e3112,0 10px 24px #243e3112,0 24px 42px #243e3109}
.portal-grid-five{grid-template-columns:repeat(5,minmax(0,1fr))}.portal-coming{cursor:default}.portal-coming .portal-icon svg{display:none}.portal-coming .portal-icon:before{content:'＋';display:block;width:24px;height:24px;text-align:center}.portal-coming .portal-open{color:#607169}.portal-grid-five .portal-card{padding-inline:14px}.portal-grid-five .portal-card h3{font-size:21px}
body{background:radial-gradient(ellipse at 8% 6%,#eef4ea8c,transparent 42%),radial-gradient(ellipse at 94% 14%,#f3ecd866,transparent 38%),linear-gradient(180deg,#fff 0%,#fcfdf9 55%,#f8faf5 100%);background-attachment:scroll}
header,.site-header{background:linear-gradient(180deg,#fff,#fcfdfb);box-shadow:0 1px 0 #ffffff inset,0 3px 15px #243e3108;border-bottom-color:var(--ws-depth-line)}
.brand-icon,.brand-symbol{text-shadow:0 2px 0 #ffffff,0 4px 8px #35665018}
.portal-card,.category-card,.home-category,.card,.app-card,.approach-grid article,.shortcut,.quick-card{background:linear-gradient(155deg,#fff 0%,#fff 62%,#f6faf5 100%);border-color:var(--ws-depth-line);box-shadow:0 1px 0 #fff inset,var(--ws-depth-shadow);position:relative;transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}
.portal-card .portal-icon,.home-symbol,.number,.home-category-icon,.portal-orbit span{background:linear-gradient(150deg,#f8fbf5,#e8f0e5);box-shadow:0 1px 0 #fff inset,0 2px 5px #35665010}
.portal-orbit{background:linear-gradient(145deg,#f7f8ef,#eaf1e3);box-shadow:0 1px 1px #fff inset,0 14px 28px #5263490d;outline:1px solid #e5ebdf}
.portal-orbit span{background:none;box-shadow:none;filter:drop-shadow(0 2px 1px #ffffff)}
.shop-art,.illustration,.home-art,.home-illustration{background:linear-gradient(145deg,#faf9f1,#ecf2e8);box-shadow:0 1px 0 #fff inset,0 12px 25px #5263490b;outline:1px solid #e6ecdf}
.shop,.car-body,.paper,.sheet,.house-art{box-shadow:0 3px 4px #334c3913,0 8px 13px #334c3910}
.search{background:linear-gradient(180deg,#fff,#fcfdfb);box-shadow:0 2px 3px #243e3105 inset,0 3px 10px #243e3107;border-color:#aebfb2}
.search input{background:transparent}
button,.button,.button-primary{box-shadow:0 1px 0 #ffffff2b inset,0 2px 3px #243e3112,0 5px 12px #243e310c}
.language-button{box-shadow:0 1px 0 #fff inset,0 2px 5px #243e3108}
.news-ticker{background:linear-gradient(125deg,#203b49,#294b50);box-shadow:0 1px 0 #ffffff18 inset,0 2px 4px #203b4914,0 5px 12px #203b490c}
.ticker-pause{box-shadow:0 1px 0 #ffffff2b inset,0 2px 4px #091e251c}
.home-shortcuts a,.home-chips span,.chips a,.chips button,.chips span,.portal-tool{background:linear-gradient(145deg,#f8fbf6,#edf4e9);box-shadow:0 1px 0 #fff inset,0 2px 5px #243e3106;border-color:var(--ws-depth-line)}
.portal-tool{background:none;box-shadow:none}
.home-more,details,fieldset,.tool-banner,.tool-panel,.conclusion,.result-panel,.promotion,.note,.calculator-panel{background:linear-gradient(135deg,#f8fbf5,#f1f6ec);box-shadow:0 1px 0 #fff inset,0 3px 8px #243e3107;border-color:var(--ws-depth-line)}
.home-more>summary{background:linear-gradient(160deg,#fff,#f5f9f1);box-shadow:0 1px 0 #fff inset;border-radius:inherit}
.home-more[open]>.section,.home-more-content{background:#ffffffc9}
.reading pre,pre.template,.template,.template-box{background:linear-gradient(140deg,#fffdf7,#f5f2e8);box-shadow:0 1px 0 #fff inset,0 3px 7px #4e422207;border-color:#e3dfd1}
input[type=number],input[type=text],input[type=date],select,textarea{box-shadow:0 1px 3px #203b4908 inset;background-color:#fff}
table{background:#ffffffb8}thead{background:linear-gradient(150deg,#f4f8f0,#e9f1e4)}
.difference,.metric,.result,.stat-card{box-shadow:0 1px 0 #fff inset,0 3px 7px #243e3107}
footer,.app-divider,.existing-app-content{background:linear-gradient(150deg,#f9fbf6,#f1f5eb);border-top-color:var(--ws-depth-line)}
footer{box-shadow:0 -1px 0 #fff inset,0 -4px 16px #243e3104}
.existing-app-content .stats{background:linear-gradient(140deg,#fff,#f8faf4);box-shadow:0 1px 0 #fff inset,var(--ws-depth-shadow);border-color:var(--ws-depth-line)}
.existing-app-content .showcase img{box-shadow:0 2px 3px #243e3112,0 12px 24px #243e3110}
@media(hover:hover) and (pointer:fine){.portal-card:hover,.category-card:hover,.home-category:hover,.card:hover,.app-card:hover{box-shadow:0 1px 0 #fff inset,var(--ws-depth-raised);border-color:#9cb39f;transform:translateY(-2px)}}
@media(max-width:640px){.portal-card,.category-card,.home-category,.card,.app-card,.approach-grid article{box-shadow:0 1px 0 #fff inset,0 2px 4px #243e310b,0 7px 15px #243e3109}.shop-art,.illustration,.home-art,.home-illustration{box-shadow:0 1px 0 #fff inset,0 6px 15px #5263490a}}
@media(max-width:1000px){.portal-grid-five{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-coming{grid-column:1/-1}.portal-grid-five .portal-card{padding-inline:20px}}
@media(max-width:640px){.portal-grid-five .portal-card{padding-inline:11px}.portal-grid-five .portal-card h3{font-size:18px}.portal-coming .portal-description,.portal-coming .portal-tool{min-height:0}}
@media(prefers-reduced-motion:reduce){.portal-card,.category-card,.home-category,.card,.app-card,.approach-grid article{transition:none;transform:none!important}}
@media(forced-colors:active){*{box-shadow:none!important;text-shadow:none!important}body,header,.site-header{background:Canvas}.news-ticker{background:Canvas;border:1px solid CanvasText}}
@media print{*{box-shadow:none!important;text-shadow:none!important;filter:none!important}body,header,footer,.portal-card,.card,fieldset,.home-category,.category-card,.home-more,.note,.conclusion{background:#fff!important}a{transform:none!important}.news-ticker{background:#fff;color:#000}}
