html { font-size: 14px; }
body {
  font-family: "Sawarabi Gothic", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Meiryo, メイリオ", sans-serif;
  color: #fff;
  background: #242424;
  margin: 0;
}
.inner {
  max-width: 700px;
  width: 100%;
  margin: 0 auto;
  padding: 0px 20px;
}
h1 { font-size: 2rem; }
h2 { font-size: 1.5rem; }
h3 { font-size: 1.125rem; }
h4 { font-size: 1rem; }
h5 { font-size: 0.75rem; }
h6 { font-size: 0.625rem; }
p {
  font-size: 1rem;
  margin-bottom: 0;
  line-height: 1.5rem;
  letter-spacing: .1rem;
}
span {
  font-size: 0.8rem;
  letter-spacing: .1rem;
}
ul {
  margin-bottom: 0;
  padding-inline-start: 0;
}
ul li {
  list-style: none;
}
ol {
  margin-bottom: 0;
}
dl {
  margin-bottom: 0;
}
dt, th {
  font-weight: normal;
}
dd {
  text-indent: 1em;
}
caption {
  caption-side: top;
  text-align: center;
}
th, td {
  padding: 15px;
  text-align: left;
}
tfoot td {
  text-align: left;
  font-size: 0.8rem;
}
hr {
  width: 90%;
  background-color: rgb(87, 87, 87);
}
strong {
  font-size: 1.1em;
}
a {
  position: relative;
  display: inline-block;
  transition: .3s;
  color: #fff;
  word-break: break-all;
}
a::after {
  position: absolute;
  bottom: 0px;
  left: 50%;
  content: '';
  width: 0;
  height: 1px;
  transition: .3s;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}
a.a_header::after {
  bottom: 10px;
}
/* 色と線の適用 */
a.a_red::after {
  background-color: red;
}
a.a_gray::after {
  background-color: rgb(107, 107, 107);
}
a.a_white::after {
  background-color: rgb(255, 255, 255);
}
a:hover {
  text-decoration: none;
  color: rgb(67, 93, 124);
}
a:hover::after {
  width: 80%;
}
a:hover img,
a:hover div {
  opacity: 0.7;
  filter: alpha(opacity=70);
  transition: .5s;
}
.a_div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.flex {
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  .flex {
    display: block;
  }
}
label {
  margin-bottom: 0;
}
input[type="checkbox"] {
  margin-right: 10px;
}
input[type="radio"] {
  margin: 3px 5px 0px 20px;
}
input[type="radio"]:first-child {
  margin-left: 0px;
}
button:focus {
  outline: none;
}
button:disabled {
  opacity: 0.6;
}
.spbr {
  display: none;
}
.w100 {
  width: 100%;
}
.h100 {
  height: 100%;
}
@media screen and (max-width: 767px) {
  .spbr {
    display: block;
  }
}
.hidden {
  display: none;
}
footer {
  width: 100%;
}
