@charset "utf-8";

/* 1) box-sizing */
*, *::before, *::after { box-sizing: border-box; }

/* 2) 文字サイズ・ズーム挙動 */
html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* 3) 余白リセット */
body, h1, h2, h3, h4, h5, h6, p, figure, blockquote, dl, dd { margin: 0; }
body { line-height: 1; }

/* 4) HTML5要素 */
article, aside, details, figcaption, figure, footer, header, menu, nav, section, main { display: block; }

/* 5) 引用符 */
blockquote, q { quotes: none; }
blockquote::before, blockquote::after, q::before, q::after { content: ""; }

/* 6) リスト */
ul, ol { margin: 0; padding: 0; list-style: none;}

/* 7) テーブル */
table { border-collapse: collapse; border-spacing: 0; }

/* 8) フォーム */
button, input, select, textarea { font: inherit; color: inherit; }
input, select { vertical-align: middle; }

/* 9) リンク */
a { background: transparent; /* text-decorationはデザイン側で */ }

/* 10) 画像 */
img { vertical-align: bottom; border-style: none; }

/* 11) 補助要素（お好みで） */
abbr[title], dfn[title] { text-decoration: underline dotted; cursor: help; }
mark { background: #ff9; color: #000; font-style: italic; font-weight: bold; }
ins { background: #ff9; color: #000; text-decoration: none; }
del { text-decoration: line-through; }

/* 12) hr（必要なら） */
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
