html, body {
  padding: 10px;
}

:root {
  font-family: "ヒラギノ丸ゴ ProN";
}

h1 {
  text-align: center;
}

h2 {
  padding-top: 1rem;
}

h2, h3 {
  text-align: center;
  font-family: 'ＭＳ 明朝', 'MS Mincho','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
}

h3 {
  text-align: center;
  padding-bottom: 16px;
}

/* Theme */
/* Dark */
@media (prefers-color-scheme: dark) {
  :root {
    background-color: #000b1c;
    color: #fff;
  }

  .noticeText {
    color: #fff;
  }

  a:not(.link) {
    color: white;
  }

  @media screen and (min-width: 625px) {
    a:not(.link):hover {
      color: silver;
    }
  }

  .reference, .date {
    color: silver;
  }
}

/* Light */
@media (prefers-color-scheme: light) {
  :root {
    background-color: #fffdfa;
  }

  .noticeText, .noticeLi {
    color: black;
  }

  a:not(.link) {
    color: black;
  }

  @media screen and (min-width: 625px) {
    a:not(.link):hover {
      color: gray;
    }
  }

  .reference, .date {
    color: gray;
  }
}

/* Over 625px */
@media screen and (min-width: 625px) {
  body {
    width: 90%;
    max-width: 1400px;
    margin-left: auto;
    margin-right: auto;
  }

  .sitemap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem
  }

  .grid {
    flex: 1;
  }
}

/* Under 625px */
@media screen and (max-width: 625px) {
  .grid {
    margin-bottom: 1rem;
    max-height: 100%;
  }
}

.grid {
  padding: 1rem;
  border-radius: 10px;
}

h3.titleUnderline {
  text-decoration: underline;
  text-decoration-thickness: 3px;
  text-underline-offset: 1rem;
}

h3.greece {
  text-decoration-color: rgb(0, 166,72);
}

h3.hebrew {
  text-decoration-color: rgb(75, 109, 167);
}

h3.pub {
  text-decoration-color: rgb(228, 102, 2);
}

p:not(.noticeText) {
  padding-left: 1rem;
  padding-right: 1rem;
}

.chapter {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: bold;
  font-size: x-large;
  padding-left: 1rem;
}

.reference {
  text-align: right;
  padding-right: 1rem;
}

.date {
  margin: 0;
}

p.author {
  text-align: right;
  padding-right: 1rem;
}

.back {
  text-align: center;
}

/* 共有ボタン */

@media (prefers-color-scheme: dark) {
  .share, .link {
    color: black;
    background-color: white;
    border: 2px solid black;
  }

  a.link {
    color: black;
  }

  @media screen and (min-width: 500px) {
    .share:hover, .link:hover {
      color: white;
      background: black;
      border: 2px solid white;
    }

    a.link:hover {
      color: white;
    }
  }
}

@media (prefers-color-scheme: light) {
  .share, .link {
    color: white;
    background-color: black;
    border: 2px solid white;
  }

  a.link {
    color: white;
  }

  @media screen and (min-width: 500px) {
    .share:hover, .link:hover {
      color: black;
      background: white;
      border: 2px solid black;
    }

    a.link:hover {
      color: black;
    }
  }
}

.share, .link {
  padding: 0.5rem 1rem;
  min-width: 75px;
  max-height: 40px;
  font-size: small;
  font-family: "ヒラギノ丸ゴ ProN";
  text-decoration: none;
  display: block;
  text-align: center;
}

.share {
  border-radius: 30px;
}

ul {
  list-style: none;
  padding-left:0;
}

a.link {
  text-decoration: none;
}

/* article nav */

div:not(.notice, .sitemap, .grid) {
  display: flex;
  justify-content: space-between
}

.notice {
  font-family: sans-serif;
  padding: 0.5em 1em;
  margin: 2em 0;
}

.noticeTitle {
  text-decoration: underline;
  text-decoration-color: rgb(228, 102, 2);
  text-decoration-thickness: 3px;
  text-underline-offset: 1rem;
  font-size: larger;
  margin-top: 1rem;
  padding: 0;
  text-align: center;
  font-weight: bold;
}

.noticeText {
  font-size: large;
}

.noticeDate {
  margin: 0;
  padding: 0;
  text-align: right;
}

.noticeUl {
  list-style:inside
}