@charset "utf-8";
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  --color-frame: #0ba2b4;
  --color-bg   : #0d334e;
  --width-max: 640px;
}

body {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  background-color: var(--color-bg);
}

img {
  vertical-align : bottom;
}

.wrapper {
  position: relative;
  margin: 0 auto;
  max-width: var(--width-max);
  min-height: 100vh;
  box-shadow: 1rem 0 2rem #000, -1rem 0 2rem #000;
}
.wrapper::before {
  content: '';
  position: fixed;
  width: 100%;
  max-width: var(--width-max);
  height: 100vh;
  background-image: url('../img/bg.png');
  background-size: cover;
  background-position: center;
  z-index: -1;
}

header {
  padding: 2rem;
}

h1 img {
  width: 100%;
}

footer {
  padding: 1rem 0;
}

footer p {
  color: #fff;
  text-align: center;
}

main {
  max-width: var(--width-max);
  margin: 0 1rem;
  padding: 2rem 0 0;
  color: #fff;
}

h2 {
  background-color: var(--color-frame);
  border-radius: 1rem;
  line-height: 4rem;
  text-align: center;
  font-size: 1.3rem;
  margin-bottom: 1rem;
}

h3 {
  font-size: 1.2rem;
  margin-bottom: 1rem;
}

a {
  color: #fff;
}
.txtcenter {
  text-align: center;
}

.article-body {
  border: 2px solid var(--color-frame);
  border-radius: 1rem;
  background-color: var(--color-bg);
  margin-bottom: 3rem;
  padding: 1.5rem;
}

.article-body p {
  line-height: 1.5rem;
  margin-bottom: 1rem;
  font-size: 1rem;
}

section {
  margin: 2rem 0;
}

ul, ol {
  margin-left: 1.5rem;
}

li {
  margin-bottom: .75rem;
  line-height: 1.5rem;
  font-size: 1rem;
}

.parentheses li {
  list-style-type: none;
  margin-left: .3rem;
  text-indent: -1.8rem;
}
.parentheses li:before {
  content: '(' counter(list-item) ')';
  margin-right: .5rem;
}
