/* Maps for ホームライフ不動産（for お客様）：資料のページ（スマートフォン）の枠組み。ページの見出し・節の切り替え・枠と図の書式は render.css */
:root {
  color-scheme: light;
  --font: "BIZ UDPGothic", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Meiryo", system-ui, sans-serif;
  --ink: #18222d; --ink-2: #44525f; --ink-3: #75828e; --ink-4: #a6b0b9;
  --line: #e3e8ec; --line-2: #eef1f4; --tint: #f6f8fa; --track: #eff2f5; --bg: #f1f4f6;
  --accent: #1c5a7a; --accent-2: #2f7aa0; --accent-bg: #e8f1f6;
  --ease: cubic-bezier(.2, .8, .2, 1);
}
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--bg); color: var(--ink); font: 14px/1.6 var(--font); font-variant-numeric: tabular-nums; -webkit-font-smoothing: antialiased; }
button { font: inherit; color: inherit; }
main { max-width: 480px; margin: 0 auto; padding: max(10px, env(safe-area-inset-top)) 0 calc(28px + env(safe-area-inset-bottom)); }

.sk { height: 120px; margin: 0 12px 12px; border-radius: 22px; background: linear-gradient(90deg, #e9edf0 0%, #f5f7f9 40%, #e9edf0 80%); background-size: 300% 100%; animation: sk 1.4s linear infinite; }
.sk.tall { height: 320px; }
@keyframes sk { from { background-position: 100% 0; } to { background-position: -50% 0; } }
.msg { margin: 40px 16px; padding: 22px 20px; background: #fff; border-radius: 22px; text-align: center; color: var(--ink-2); line-height: 1.8; }
.msg b { display: block; color: var(--ink); font-size: 16px; }
.toast { position: fixed; left: 50%; bottom: calc(24px + env(safe-area-inset-bottom)); z-index: 5; padding: 9px 15px; border-radius: 12px; background: #18222d; color: #fff; font-size: 13px; font-weight: 700; white-space: nowrap; opacity: 0; transform: translate(-50%, 10px); transition: opacity .2s, transform .3s var(--ease); pointer-events: none; }
.toast.on { opacity: 1; transform: translate(-50%, 0); }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; transition-delay: 0s !important; } }
