@charset "UTF-8";

/* ===================================================================
   - 目的：見出し/段落/リスト等の "勝手な余白" をゼロベースにする
   =================================================================== */

/* 1) Box model & base */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html:focus-within { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html:focus-within { scroll-behavior: auto; }
}

body {
  margin: 0;
  padding: 0;
}


/* 2) Typography reset */
h1, h2, h3, h4, h5, h6,
p,
figure,
blockquote,
dl, dd {
  margin: 0;
  padding: 0;
}

/* 3) Lists: 完全初期化（インデント/マーカー/余白を消す） */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

ul ul,
ol ol,
ul ol,
ol ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* 4) Tables */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* 5) Media: LP崩れ防止（はみ出し/余白/ベースライン隙間対策） */
img,
picture,
video,
canvas {
  display: block;
  max-width: 100%;
  height: auto;
}

/* SVGは height:auto が効かないことがあるので必要なら上書きで調整 */
svg {
  max-width: 100%;
  height: auto;
}

/* 6) Links: “余白起因の崩れ”を避けるために色/下線はここでは触らない */

/* 7) Forms: 余白とフォント継承だけ（見た目を壊すリセットは避ける） */
input,
button,
textarea,
select {
  margin: 0;
  font: inherit;
  color: inherit;
}

/* 8) Misc */
hr {
  margin: 0;
  border: 0;
  height: 0;
}

/* 9) Accessibility: フォーカスは消さない */
