/* ゼロ旅 サイト共通スタイル(手帳調 — アプリと同じパレット) */
:root{
  --paper:#f6f1e5; --paper2:#fdfaf2; --ink:#3b342a; --ink2:#7a6f5d; --ink3:#a99c86;
  --line:#e3dac6; --accent:#b3543f; --accent2:#8a6d3b; --good:#3f7d4e;
}
*{margin:0;padding:0;box-sizing:border-box}
body{
  background:var(--paper); color:var(--ink);
  font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",system-ui,sans-serif;
  line-height:1.9; font-size:15px;
}
.wrap{max-width:760px;margin:0 auto;padding:0 20px}
header.site{
  padding:18px 0; border-bottom:1px solid var(--line); background:var(--paper2);
}
header.site .wrap{display:flex;justify-content:space-between;align-items:center}
.logo{font-weight:800;letter-spacing:.15em;text-decoration:none;color:var(--ink);font-size:18px}
.logo span{color:var(--accent)}
nav.site a{color:var(--ink2);text-decoration:none;font-size:12px;margin-left:14px}
nav.site a:hover{color:var(--accent)}
main{padding:36px 0 60px}
h1{font-size:26px;letter-spacing:.04em;margin-bottom:6px}
h2{font-size:18px;margin:34px 0 10px;padding-bottom:6px;border-bottom:1px dashed var(--line)}
h3{font-size:15px;margin:22px 0 6px;color:var(--accent2)}
p{margin-bottom:12px}
ul,ol{margin:0 0 12px 22px}
li{margin-bottom:4px}
.sub{color:var(--ink2);font-size:13px}
.sheet{
  background:var(--paper2);border:1px solid var(--line);border-radius:12px;
  padding:22px;margin:18px 0;box-shadow:0 2px 10px rgba(59,52,42,.08);
}
.notice{
  background:#f2ead4;border-radius:10px;padding:12px 16px;font-size:13px;margin:16px 0;
}
.btn{
  display:inline-block;background:var(--ink);color:var(--paper2);text-decoration:none;
  padding:12px 26px;border-radius:10px;font-weight:700;font-size:14px;
}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid var(--ink3)}
.hero{text-align:center;padding:44px 0 30px}
.hero .mountain{font-size:56px}
.hero h1{font-size:34px;margin:10px 0 4px}
.hero .tagline{font-size:16px;color:var(--ink2);margin-bottom:22px}
.badges{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.badge-soon{
  border:1px solid var(--line);border-radius:10px;padding:10px 18px;
  color:var(--ink3);font-size:13px;background:var(--paper2);
}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:20px 0}
.feature{background:var(--paper2);border:1px solid var(--line);border-radius:12px;padding:18px}
.feature .ico{font-size:28px}
.feature b{display:block;margin:6px 0 4px}
.feature p{font-size:13px;color:var(--ink2);margin:0}
footer.site{
  border-top:1px solid var(--line);padding:26px 0 40px;background:var(--paper2);
  font-size:12px;color:var(--ink2);
}
footer.site a{color:var(--ink2)}
footer.site .links{margin-bottom:10px}
footer.site .links a{margin-right:16px;text-decoration:none}
footer.site .links a:hover{color:var(--accent)}
table{width:100%;border-collapse:collapse;font-size:13px;margin:12px 0}
th,td{border-bottom:1px dashed var(--line);padding:8px 6px;text-align:left;vertical-align:top}
th{color:var(--ink2);font-weight:600;white-space:nowrap}
details{margin-bottom:10px;background:var(--paper2);border:1px solid var(--line);border-radius:10px;padding:12px 16px}
summary{cursor:pointer;font-weight:700;font-size:14px}
details p{margin:10px 0 0;font-size:14px}
@media (max-width:520px){ .hero h1{font-size:28px} nav.site a{margin-left:10px} }
