@charset "utf-8";

/* base */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-size: 16px;
}

body {
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-feature-settings: "palt"1;
  font-kerning: normal;
  -webkit-font-kerning: normal;
  line-height: 2;
  letter-spacing: 0.01em;
  font-family: YakuHanMPs, "IBM Plex Serif", "Zen Old Mincho", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  margin: 0;
  padding: 0;
  background-color: #FFFFFF;
  color: #6B6A6B;
}

body.essay {
  background-color: #F3F2F1;
}

body.holos {
  background-color: #F1F3F3;
}

img {
  vertical-align: bottom;
  height: auto;
  width: 100%;
}

::selection {
  background: #6B6A6B;
  color: #F1F1F1;
}

::-moz-selection {
  background: #F1F1F1;
}

/* link */
a:link, a:visited, a:active {
  color: #6B6A6B;
  text-decoration: none;
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  -o-transition: all .4s ease;
  transition: all .4s ease;
}

a:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha(opacity=60)";
  -webkit-transition: all .4s ease;
  -moz-transition: all .4s ease;
  -o-transition: all .4s ease;
  transition: all .4s ease;
}

/* text */
.en {
  font-family: "IBM Plex Serif", serif;
  font-weight: 400;
  letter-spacing: 0.025em;
}

.goth {
  font-family: "Zen Kaku Gothic New", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
  font-weight: 400;
  letter-spacing: 0.07em;
}

.rl {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-feature-settings: "vkrn";
  letter-spacing: 0.12em;
  line-height: 2;
  text-align: left;
}

.spbr {
  display: none;
}

.pcbr {
  display: block;
}

/* fadein */
.fadein {
  opacity: 0;
  transition: all 1s;
}

/* page fadein */
@keyframes pageIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@-webkit-keyframes pageIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

/* iOS */
input[type="submit"], input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration, input[type="button"]::-webkit-search-decoration {
  display: none;
}

input[type="submit"]::focus, input[type="button"]::focus {
  outline-offset: -2px;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  outline: none;
  background: transparent;
}

button, input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  border: none;
  outline: none;
  background: transparent;
}

input[type="radio"] {
  display: inline-block;
}

input[type="radio"]:checked+label {
  background: #ff0000;
}

/* wordpress */
#wpadminbar .ab-empty-item, #wpadminbar a.ab-item, #wpadminbar>#wp-toolbar span.ab-label, #wpadminbar>#wp-toolbar span.noticon {
  color: #F1F1F1 !important;
}

/* sp */
@media screen and (max-width: 600px) {
  html {
    font-size: 14px;
  }

  .spbr {
    display: block;
  }

  .pcbr {
    display: none;
  }
}

/* media screen */
@media screen and (min-width: 601px) and (max-width: 1280px) {
  html {
    font-size: 13px;
  }
}

@media screen and (min-width: 1281px) and (max-width: 1300px) {
  html {
    font-size: 13.18px;
  }
}

@media screen and (min-width: 1301px) and (max-width: 1325px) {
  html {
    font-size: 13.36px;
  }
}

@media screen and (min-width: 1326px) and (max-width: 1350px) {
  html {
    font-size: 13.54px;
  }
}

@media screen and (min-width: 1351px) and (max-width: 1375px) {
  html {
    font-size: 13.72px;
  }
}

@media screen and (min-width: 1376px) and (max-width: 1400px) {
  html {
    font-size: 13.9px;
  }
}

@media screen and (min-width: 1401px) and (max-width: 1425px) {
  html {
    font-size: 14.08px;
  }
}

@media screen and (min-width: 1426px) and (max-width: 1450px) {
  html {
    font-size: 14.26px;
  }
}

@media screen and (min-width: 1451px) and (max-width: 1475px) {
  html {
    font-size: 14.44px;
  }
}

@media screen and (min-width: 1476px) and (max-width: 1500px) {
  html {
    font-size: 14.62px;
  }
}

@media screen and (min-width: 1501px) and (max-width: 1525px) {
  html {
    font-size: 14.8px;
  }
}

@media screen and (min-width: 1526px) and (max-width: 1550px) {
  html {
    font-size: 14.98px;
  }
}

@media screen and (min-width: 1551px) and (max-width: 1575px) {
  html {
    font-size: 15.16px;
  }
}

@media screen and (min-width: 1576px) and (max-width: 1600px) {
  html {
    font-size: 15.34px;
  }
}

@media screen and (min-width: 1601px) and (max-width: 1625px) {
  html {
    font-size: 15.52px;
  }
}

@media screen and (min-width: 1626px) and (max-width: 1650px) {
  html {
    font-size: 15.7px;
  }
}

@media screen and (min-width: 1651px) and (max-width: 1675px) {
  html {
    font-size: 15.88px;
  }
}

@media screen and (min-width: 1676px) and (max-width: 1700px) {
  html {
    font-size: 16px;
  }
}