:root{color-scheme:light;--paper:#faf8f1;--ink:#26382f;--moss:#526c54;--line:#dce1d4}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Gothic",Meiryo,sans-serif;line-height:1.9}a{color:#35563a;text-underline-offset:.22em}a:hover{color:#152f1a}a:focus-visible{outline:3px solid #526c54;outline-offset:5px}header,footer{max-width:1120px;margin:auto;padding:24px 28px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:16px}header a{text-decoration:none}.brand{display:flex;align-items:center;gap:12px;font-weight:bold}.brand img{width:38px;height:38px}nav{font-size:13px}main{max-width:1120px;margin:auto;padding:56px 28px 72px}h1,h2,h3{font-family:"Yu Mincho",serif;font-weight:500;line-height:1.6}h1{font-size:clamp(32px,5vw,54px);margin:12px 0 24px}h2{font-size:25px;margin:40px 0 16px}h3{font-size:22px}.eyebrow{font-size:12px;letter-spacing:.17em;color:var(--moss)}.hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.hero p{max-width:440px}.hero img{width:100%;height:auto;border-radius:22px}.lead{font-size:18px;line-height:2.1}.tag{display:inline-block;border:1px solid var(--line);padding:4px 12px;margin:4px 4px 4px 0;border-radius:30px;font-size:12px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:42px 0}.card{padding:24px;border-top:1px solid var(--line)}.card h3{margin:8px 0}.card p{font-size:14px}.note{font-size:13px;color:#536455}.policy{max-width:810px}.policy h1{font-size:30px}.policy h2{padding-top:14px;border-top:1px solid var(--line);margin-top:42px}.policy p{margin:22px 0;overflow-wrap:anywhere;white-space:pre-line}.policy-nav{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:13px;margin:24px 0 38px}.support{padding:28px;background:#eef1e7;border-radius:16px}footer{border-top:1px solid var(--line);font-size:12px;display:flex;justify-content:space-between;gap:20px}.back{font-size:13px}.site-note{margin-top:50px;font-size:12px;color:#536455}@media(max-width:720px){header,footer{padding:20px}main{padding:32px 22px 50px}.hero{grid-template-columns:1fr;gap:24px}.hero img{max-width:480px;margin:auto}.cards{grid-template-columns:1fr;gap:4px}.card{padding:18px 0}.policy h1{font-size:27px}footer{flex-direction:column;gap:4px}}
:root { scroll-padding-top: 20px; }
header { flex-wrap: wrap; }
.site-nav { display: flex; flex-wrap: wrap; gap: 4px 16px; }
.site-nav a { display: inline-flex; align-items: center; min-height: 44px; }
.ponj-home { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.ponj-home img { width: 24px; height: 24px; flex-shrink: 0; }
.hero > div { min-width: 0; }
.seasonal-showcase { padding: 24px; background: #f1eee4; border: 1px solid #e3e1d4; border-radius: 22px; }
.showcase-title { margin: 0 0 20px; font-family: "Yu Mincho", serif; font-size: 24px; line-height: 1.6; text-align: center; }
.seasonal-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.seasonal-card { margin: 0; min-width: 0; }
.seasonal-card img { width: 100%; height: auto; border-radius: 0; }
.seasonal-card figcaption { margin-top: 8px; color: #526c54; font-size: 12px; line-height: 1.7; text-align: center; }
.seasonal-card figcaption span { display: block; font-size: 11px; letter-spacing: .06em; }
.showcase-note { margin: 18px 0 0; text-align: center; color: #536455; font-size: 13px; }
@media (max-width: 720px) { .seasonal-showcase { width: min(100%, 520px); margin-inline: auto; } }
@media (max-width: 420px) { .seasonal-showcase { padding: 20px 14px; } .seasonal-grid { gap: 16px 12px; } .showcase-title { font-size: 22px; } }

/* APKの配布 */
.product-download { margin-top: 26px; }
.download-button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; min-height: 52px; max-width: 100%; padding: 12px 24px; border-radius: 6px; background: #35563a; color: #fff; font-weight: 600; text-decoration: none; }
.download-button:hover { background: #173e37; color: #fff; }
.download-version { margin: 12px 0 0; font-size: .875rem; color: #35563a; line-height: 1.8; }
.download-help { margin: 10px 0 0; max-width: 36em; font-size: .8125rem; color: #536455; line-height: 1.8; }
