html, body, header, footer, h1, h2, h3, h4, h5, h6, article, p, a, ul, ol, li, img, button, input, textarea, select {
  all: unset;
  display: revert;
  box-sizing: border-box;
}

body {
  all: unset;
  display: revert;
  padding: 0!important;
  margin: 0!important;
  font-family: "Noto Sans JP", sans-serif;
}

a {
  cursor: pointer;
}

a:active, a:visited {
  color: initial;
}

footer p, footer ul, footer li {
  all: unset;
  display: revert;
}

footer ul, footer li {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* ==========================================
   elements.css FULL RESET (No !important)
   特異性ゼロで後続CSSが確実に効く
   ========================================== */

/* すべての要素をニュートラル状態へ */
:where(*) {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  color: inherit;
  background: none;
  box-sizing: border-box;
}

/* 擬似要素の無効化（アイコン・背景などを削除） */
:where(*::before, *::after) {
  content: none;
  background: none;
  border: 0;
}

/* リストのデフォルト解除 */
:where(ul, ol, li, dl, dt, dd) {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* 見出し・テキスト要素 */
:where(h1, h2, h3, h4, h5, h6, p, span, strong, em, small) {
  font: inherit;
  font-weight: inherit;
  color: inherit;
}

/* aタグのスタイル解除 */
:where(a) {
  text-decoration: none;
  color: inherit;
}

/* 画像 / メディア要素 */
:where(img, picture, canvas, video, svg) {
  display: block;
  max-width: 100%;
  height: auto;
  background: none;
}

/* hr */
:where(hr) {
  border: 0;
  height: 1px;
  background: none;
}

/* table */
:where(table) {
  border-collapse: collapse;
  border-spacing: 0;
}

/* フォーム要素 */
:where(input, textarea, select, button) {
  font: inherit;
  border: none;
  background: none;
  padding: 0;
}

/* HTML5 セクショニング */
:where(article, aside, details, figcaption, figure, footer, header, main, nav, section) {
  display: block;
  background: none;
}