.knb-earth-page { --ew-paper:#f7f6ef; --ew-ink:#172a2c; --ew-green:#206366; --ew-line:#d3dcd4; --ew-muted:#5b6c6b; }
.knb-earth-page { background:var(--ew-paper); }
.knb-earth-page :is(#content,#content-in) { width:100%; max-width:none; padding:0; margin-top:0; }
.knb-earth-page #main.main { width:100%; max-width:none; padding:0; border:0; background:transparent; }
.knb-earth-page .sidebar { display:none; }
.knb-earth-page .article { width:calc(100% - 64px); max-width:1120px; padding:0; margin:0 auto; }
.knb-earth-page .entry-content { margin:0; }
.knb-earth-page .article-header .eye-catch-wrap { display:none; }
.knb-earth-page .article-header .sns-share { display:none; }
.knb-earth-page .article-header .date-tags { display:none; }
.knb-earth-page .article-header .entry-title { color:var(--ew-muted); font-size:12px; font-weight:400; line-height:1.8; letter-spacing:.025em; margin:18px 0 12px; padding:0; border:0; }
.knb-earth-page .entry-content .ew-workbench, .knb-earth-page .entry-content .ew-workbench * { box-sizing:border-box; }
.knb-earth-page .entry-content .ew-workbench { color:var(--ew-ink); font-size:16px; line-height:1.85; margin:16px 0 70px; min-width:0; font-family:inherit; }
.knb-earth-page .ew-workbench a { color:var(--ew-green); text-underline-offset:5px; }
.knb-earth-page .ew-workbench a:focus-visible, .knb-earth-page .ew-workbench button:focus-visible, .knb-earth-page .ew-workbench input:focus-visible, .knb-earth-page .ew-workbench select:focus-visible, .knb-earth-page .ew-workbench summary:focus-visible { outline:3px solid #1a797e; outline-offset:4px; }
.knb-earth-page .ew-workbench p { margin:0; }
.knb-earth-page .ew-workbench h2, .knb-earth-page .ew-workbench h3 { color:var(--ew-ink); background:none; border:0; padding:0; margin:0; border-radius:0; box-shadow:none; }
.knb-earth-page .ew-nav { display:flex; flex-wrap:wrap; border-block:1px solid var(--ew-line); gap:0 32px; padding:14px 0; font-size:13px; }
.knb-earth-page .ew-nav a { display:flex; gap:18px; align-items:center; text-decoration:none; padding:5px 0; }
.knb-earth-page .ew-nav a[aria-current] { font-weight:700; color:var(--ew-ink); }
.knb-earth-page .ew-nav a[aria-current]::before { content:""; width:5px; height:5px; background:var(--ew-green); border-radius:50%; }
.knb-earth-page .ew-nav a span { color:var(--ew-muted); }
.knb-earth-page .ew-hero { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:32px; align-items:center; padding:54px 0 40px; }
.knb-earth-page .ew-eyebrow { font-size:10px; line-height:1.6; letter-spacing:.16em; color:var(--ew-muted); font-weight:650; }
.knb-earth-page .ew-hero h2 { font-size:clamp(30px,4.2vw,49px); font-weight:650; line-height:1.5; letter-spacing:.045em; margin:15px 0 20px; }
.knb-earth-page .ew-intro { font-size:14px; color:var(--ew-muted); line-height:2; }
.knb-earth-page .ew-dial { position:relative; width:210px; aspect-ratio:1; font-size:9px; color:var(--ew-muted); font-variant-numeric:tabular-nums; }
.knb-earth-page .ew-dial-orbit { position:absolute; inset:18px; border:1px solid #9dbaae; border-radius:50%; }
.knb-earth-page .ew-dial-orbit::before, .knb-earth-page .ew-dial-orbit::after { position:absolute; content:""; inset:14px; border:1px solid #e1e6dc; border-radius:50%; }
.knb-earth-page .ew-dial-orbit::after { inset:30px; }
.knb-earth-page .ew-dial-axis { position:absolute; inset:41px 104px; border-left:1px solid #b2c7bb; transform:rotate(23deg); }
.knb-earth-page .ew-dial-point { position:absolute; top:32px; right:44px; width:8px; height:8px; border-radius:50%; background:var(--ew-green); box-shadow:0 0 0 5px var(--ew-paper); }
.knb-earth-page .ew-dial-top { position:absolute; top:0; left:50%; transform:translateX(-50%); }
.knb-earth-page .ew-dial-right { position:absolute; top:50%; right:-4px; transform:translateY(-50%); background:var(--ew-paper); }
.knb-earth-page .ew-dial-bottom { position:absolute; bottom:0; left:50%; transform:translateX(-50%); }
.knb-earth-page .ew-dial-left { position:absolute; top:50%; left:-4px; transform:translateY(-50%); background:var(--ew-paper); }
.knb-earth-page .ew-dial-center { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:126px; background:var(--ew-paper); text-align:center; font-size:21px; font-weight:600; letter-spacing:.15em; color:var(--ew-green); }
.knb-earth-page .ew-dial-center small { display:block; font-size:8px; font-weight:500; letter-spacing:.17em; }
.knb-earth-page .ew-purpose { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--ew-line); }
.knb-earth-page .ew-purpose a { display:grid; grid-template-columns:22px 1fr; column-gap:9px; padding:19px 14px 18px 0; text-decoration:none; }
.knb-earth-page .ew-purpose a + a { border-left:1px solid var(--ew-line); padding-left:19px; }
.knb-earth-page .ew-purpose a > span { font-size:10px; padding-top:4px; color:var(--ew-muted); }
.knb-earth-page .ew-purpose strong { font-size:15px; font-weight:650; }
.knb-earth-page .ew-purpose small { grid-column:2; font-size:10px; line-height:1.8; color:var(--ew-muted); }
.knb-earth-page .ew-model-note { padding:19px 0 23px; font-size:12px; line-height:1.9; color:var(--ew-muted); }
.knb-earth-page .ew-model-note > span { display:inline-block; border:1px solid var(--ew-line); padding:0 7px; margin-right:9px; font-size:10px; color:var(--ew-ink); }
.knb-earth-page .ew-tool-heading { display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:15px 0; border-top:1px solid var(--ew-ink); }
.knb-earth-page .ew-tool-heading p { font-size:15px; font-weight:650; }
.knb-earth-page .ew-workbench .earth-rot-tool { width:100%; max-width:none; margin:0; padding:26px; border:1px solid var(--ew-line); background:#fffef9; border-radius:3px; color:var(--ew-ink); box-shadow:0 8px 30px #273e3010; font-family:inherit; }
.knb-earth-page .ew-workbench .earth-rot-lead { font-size:12px; line-height:1.8; color:var(--ew-muted); margin:0 0 23px; }
.knb-earth-page .ew-workbench .earth-rot-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 22px; }
.knb-earth-page .ew-workbench .earth-rot-field { min-width:0; }
.knb-earth-page .ew-workbench .earth-rot-field:first-child { grid-column:1/-1; }
.knb-earth-page .ew-workbench .earth-rot-field--wide { grid-column:auto; }
.knb-earth-page .ew-workbench .earth-rot-field label { font-size:12px; font-weight:650; line-height:1.7; margin-bottom:7px; }
.knb-earth-page .ew-workbench .earth-rot-field input, .knb-earth-page .ew-workbench .earth-rot-field select { display:block; width:100%; min-width:0; max-width:100%; height:49px; background:#fff; border:1px solid #aebfb4; border-radius:2px; padding:10px 12px; font-size:16px; line-height:1.5; color:var(--ew-ink); box-shadow:none; font-family:inherit; }
.knb-earth-page .ew-workbench .earth-rot-field input[type="date"] { min-height:49px; appearance:auto; -webkit-appearance:auto; }
.knb-earth-page .ew-workbench .earth-rot-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:25px 0 0; }
.knb-earth-page .ew-workbench .earth-rot-button { width:100%; min-width:0; min-height:46px; border:1px solid #abbeb3; border-radius:2px; background:#fffefa; color:var(--ew-green); padding:11px 8px; font-size:13px; font-weight:650; font-family:inherit; line-height:1.6; cursor:pointer; box-shadow:none; }
.knb-earth-page .ew-workbench .earth-rot-button--primary { grid-column:1/-1; background:var(--ew-green); color:white; border-color:var(--ew-green); font-size:16px; min-height:54px; }
.knb-earth-page .ew-workbench .earth-rot-button--sub { color:var(--ew-muted); border-color:var(--ew-line); font-weight:400; }
.knb-earth-page .ew-workbench .earth-rot-button:hover { background:#e9f0e7; }
.knb-earth-page .ew-workbench .earth-rot-button--primary:hover { background:#174f52; }
.knb-earth-page .ew-workbench .earth-rot-button:disabled { cursor:default; background:#f1f2eb; color:#687870; border-color:#dde3d9; }
.knb-earth-page .ew-workbench .earth-rot-result { min-width:0; min-height:85px; border:1px solid #c8d8cc; border-radius:2px; margin:25px 0 0; padding:21px 18px; background:#edf3e9; font-size:13px; line-height:1.9; overflow-wrap:anywhere; word-break:normal; }
.knb-earth-page .ew-workbench .earth-rot-result p { margin:6px 0; }
.knb-earth-page .ew-workbench .earth-rot-result--note { background:#f4f5ef; color:var(--ew-muted); border-color:var(--ew-line); }
.knb-earth-page .ew-workbench .earth-rot-result--error { background:#fff2eb; border-color:#d6a992; color:#813e2b; }
.knb-earth-page .ew-workbench .earth-rot-result-main { font-size:15px; line-height:1.9; margin-bottom:16px; overflow-wrap:anywhere; }
.knb-earth-page .ew-workbench .earth-rot-result-main strong { display:block; font-size:clamp(24px,3.5vw,36px); font-weight:650; letter-spacing:.015em; line-height:1.6; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.knb-earth-page .ew-workbench .earth-rot-detail { border-top:1px solid #c8d8cc; padding-top:12px; margin-top:17px; }
.knb-earth-page .ew-workbench .earth-rot-detail summary { cursor:pointer; font-size:12px; font-weight:650; }
.knb-earth-page .ew-workbench .earth-rot-detail pre { background:transparent; white-space:pre-wrap; overflow-wrap:anywhere; overflow:visible; color:var(--ew-muted); font-size:11px; line-height:1.9; border:0; padding:12px 0 0; margin:0; }
.knb-earth-page .ew-workbench .earth-rot-small { color:var(--ew-muted); font-size:11px; line-height:1.9; }
.knb-earth-page .ew-input-status { min-height:44px; padding:10px 0 0; color:var(--ew-muted); font-size:11px; line-height:1.8; }
.knb-earth-page .ew-result-stale .earth-rot-result { background:#f4f1e9; border-style:dashed; }
.knb-earth-page .ew-result-stale .earth-rot-result::before { content:"前回の入力による表示"; display:block; color:#805a31; font-size:11px; font-weight:650; margin-bottom:10px; }
.knb-earth-page .ew-model { display:grid; grid-template-columns:1fr 1fr; gap:32px; border-block:1px solid var(--ew-line); margin-top:38px; padding:30px 0; }
.knb-earth-page .ew-model h3 { font-size:21px; font-weight:600; line-height:1.75; margin:12px 0 17px; }
.knb-earth-page .ew-model p:not(.ew-eyebrow) { font-size:12px; line-height:2; color:var(--ew-muted); }
.knb-earth-page .ew-model p strong { color:var(--ew-ink); font-size:16px; font-weight:600; font-variant-numeric:tabular-nums; }
.knb-earth-page .ew-measure { align-self:center; min-width:0; }
.knb-earth-page .ew-measure p { display:flex; justify-content:space-between; font-size:10px; }
.knb-earth-page .ew-measure-line { display:flex; justify-content:space-between; border-top:1px solid #8da69a; margin:15px 0 10px; }
.knb-earth-page .ew-measure-line i { height:12px; width:1px; background:#8da69a; margin-top:-6px; }
.knb-earth-page .ew-measure p strong { font-size:12px; }
.knb-earth-page .ew-measure small { display:block; text-align:center; font-size:10px; color:var(--ew-muted); margin-top:20px; }
.knb-earth-page .ew-next { padding:23px 0; border-bottom:1px solid var(--ew-line); }
.knb-earth-page .ew-next p { font-size:12px; color:var(--ew-muted); margin-bottom:6px; }
.knb-earth-page .ew-next a { font-size:14px; font-weight:650; }
.knb-earth-page .ew-reading-link { display:flex; justify-content:space-between; padding:20px 0; font-size:12px; text-decoration:none; }
.knb-earth-page #ew-reading, .knb-earth-page #earth-rot-tool, .knb-earth-page #ew-model { scroll-margin-top:24px; }
.knb-earth-page .ew-reading { max-width:800px; margin:0 auto; }
.knb-earth-page .ew-tool-return { border:1px solid var(--ew-line); padding:14px; font-size:14px; }
.knb-earth-page .ew-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; border-top:1px solid var(--ew-line); }
.knb-earth-page .ew-facts article { padding:25px 25px 25px 0; border-bottom:1px solid var(--ew-line); }
.knb-earth-page .ew-facts article:nth-child(2) { border-left:1px solid var(--ew-line); padding-left:25px; padding-right:0; }
.knb-earth-page .ew-facts article:last-child { grid-column:1/-1; }
.knb-earth-page .ew-facts h3 { font-size:21px; line-height:1.7; margin:10px 0; }
.knb-earth-page .ew-facts p { font-size:13px; line-height:1.9; color:var(--ew-muted); }
.knb-earth-page .ew-facts .ew-fact-value { font-size:29px; color:var(--ew-green); line-height:1.8; font-weight:550; margin:12px 0; font-variant-numeric:tabular-nums; }
.knb-earth-page .ew-fact-value span { font-size:12px; font-weight:400; margin:0 5px; }
.knb-earth-page .ew-facts a { font-size:12px; display:inline-block; margin-top:15px; }
.knb-earth-page .ew-concept .ew-next h3 { font-size:20px; margin:12px 0; }
.knb-earth-page .ew-concept .ew-next a { display:inline-block; border:1px solid var(--ew-green); padding:13px 18px; margin-top:12px; text-decoration:none; }
.knb-earth-page .ew-sources { padding-top:15px; color:var(--ew-muted); font-size:10px; }
@media (max-width:700px) {
  .knb-earth-page .article { width:calc(100% - 36px); }
  .knb-earth-page .ew-hero { grid-template-columns:minmax(0,1fr) 128px; gap:15px; padding:35px 0 28px; }
  .knb-earth-page .ew-hero h2 { font-size:30px; margin-top:12px; }
  .knb-earth-page .ew-intro { font-size:12px; }
  .knb-earth-page .ew-dial { width:128px; transform:scale(.95); }
  .knb-earth-page .ew-dial-orbit { inset:15px; }
  .knb-earth-page .ew-dial-orbit::before { inset:9px; }
  .knb-earth-page .ew-dial-orbit::after { inset:18px; }
  .knb-earth-page .ew-dial-axis { inset:29px 64px; }
  .knb-earth-page .ew-dial-point { top:22px; right:31px; width:6px; height:6px; }
  .knb-earth-page .ew-dial-center { width:88px; font-size:15px; }
  .knb-earth-page .ew-dial-center small { font-size:6px; }
  .knb-earth-page .ew-purpose a, .knb-earth-page .ew-purpose a + a { padding:16px 8px; grid-template-columns:1fr; }
  .knb-earth-page .ew-purpose a > span { padding:0 0 4px; }
  .knb-earth-page .ew-purpose strong { font-size:13px; }
  .knb-earth-page .ew-purpose small { grid-column:1; font-size:9px; margin-top:5px; }
  .knb-earth-page .ew-workbench .earth-rot-tool { padding:20px 16px; }
  .knb-earth-page .ew-model { grid-template-columns:1fr; gap:25px; }
  .knb-earth-page .ew-measure { padding:10px 7px; }
}
@media (max-width:440px) {
  .knb-earth-page .article-header .entry-title { font-size:10px; margin:14px 0 10px; }
  .knb-earth-page .ew-nav { gap:5px 16px; font-size:11px; padding-block:10px; }
  .knb-earth-page .ew-nav a { gap:8px; }
  .knb-earth-page .ew-hero { grid-template-columns:minmax(0,1fr); position:relative; min-height:0; }
  .knb-earth-page .ew-dial { position:absolute; top:31px; right:0; width:128px; transform:scale(.7); transform-origin:top right; opacity:.7; }
  .knb-earth-page .ew-hero h2 { font-size:32px; max-width:calc(100% - 50px); margin-bottom:18px; }
  .knb-earth-page .ew-hero-copy > .ew-eyebrow { max-width:calc(100% - 80px); font-size:8px; }
  .knb-earth-page .ew-hero-copy .ew-intro br { display:none; }
  .knb-earth-page .ew-purpose a, .knb-earth-page .ew-purpose a + a { padding-inline:7px; }
  .knb-earth-page .ew-purpose strong { font-size:12px; }
  .knb-earth-page .ew-purpose small { font-size:9px; }
  .knb-earth-page .ew-tool-heading { flex-direction:column; gap:2px; }
  .knb-earth-page .ew-workbench .earth-rot-grid { gap:16px 12px; }
  .knb-earth-page .ew-workbench .earth-rot-field label { font-size:11px; }
  .knb-earth-page .ew-workbench .earth-rot-field input, .knb-earth-page .ew-workbench .earth-rot-field select { padding-inline:8px; }
  .knb-earth-page .ew-workbench .earth-rot-result { padding:17px 12px; }
  .knb-earth-page .ew-workbench .earth-rot-button { font-size:11px; }
  .knb-earth-page .ew-workbench .earth-rot-button--primary { font-size:15px; }
  .knb-earth-page .ew-facts .ew-fact-value { font-size:23px; }
  .knb-earth-page .ew-facts article { padding-right:12px; }
  .knb-earth-page .ew-facts article:nth-child(2) { padding-left:12px; }
  .knb-earth-page .ew-fact-value span { font-size:10px; margin:0 2px; }
}
@media (prefers-reduced-motion:reduce) { .knb-earth-page .ew-workbench *, .knb-earth-page .ew-workbench *::before, .knb-earth-page .ew-workbench *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
