@charset "UTF-8";
/* ========================================
画像領域指定
======================================== */
#change-img {
  display: none;
  height: calc(var(--vh, 1vh) * 100);
  margin: 0 auto;
  max-height: calc(100vw * 0.625);
  max-width: calc((var(--vh, 1vh) * 100) * 1.6);
  position: relative;
  vertical-align: top;
  width: 100vw;
}

.page-img {
  height: 100%;
  width: 100%;
}

/* =========================================================
ページングリンク
========================================================= */
.arrw__link-item {
  cursor: pointer;
  display: inline-block;
  position: absolute;
  z-index: 2;
}
.arrw__link-item a {
  display: inline-block;
  height: 100%;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  width: 100%;
}

.btn__prev,
.btn__next {
  height: 90%;
  top: 0;
  width: 5.859375%;
}

.btn__prev {
  left: 0%;
}

.btn__next {
  right: 0%;
}

.swiper-button-disabled {
  pointer-events: none;
}

/* ========================================
目次
======================================== */
.index__list-wrap {
  display: none;
  height: 44.921875%;
  left: 54.6875%;
  position: absolute;
  top: 17.578125%;
  width: 37.59765625%;
  z-index: 9999;
}
.index__list-wrap.active {
  display: block;
}

.index__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column wrap;
          flex-flow: column wrap;
  height: 100%;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.index__list-item {
  height: 6.9565217391%;
  margin-bottom: 2.5%;
  width: 45.4545454545%;
}
.index__list-item:nth-child(-n+10) {
  margin-right: 8%;
}
.index__list-item:nth-child(10), .index__list-item:nth-child(20) {
  margin-bottom: 0;
}
.index__list-item a {
  display: block;
  height: 100%;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  width: 100%;
}

/* ========================================
ページ下部リンク
======================================== */
.swiper-wrapper {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  position: absolute;
  top: 0;
}

/* stylelint-disable */
_::-webkit-full-page-media,
_:future,
:root .swiper-wrapper {
  height: 90%;
}

/* stylelint-enable */
.ft_link {
  bottom: 0;
  left: 0;
  margin: auto;
  padding: 1.5% 0 0 0;
  position: absolute;
  right: 0;
  text-align: center;
  width: 100%;
  z-index: 1;
}
.ft_link li {
  display: inline-block;
  font-size: clamp(10px, 1vw, 20px);
  margin: 0;
}
.ft_link li::after {
  content: "／";
  margin: 0 0 0 0.5em;
}
.ft_link li:last-child::after {
  display: none;
}
.ft_link a {
  color: inherit;
  cursor: pointer;
}
.ft_link a:hover {
  text-decoration: underline;
}
.ft_link .back {
  font-size: 1rem;
  font-weight: 700;
}

/* ========================================
loading
======================================== */
#loader {
  -webkit-animation: spin 0.8s linear infinite;
          animation: spin 0.8s linear infinite;
  border: 0.4vw solid #727272;
  border-radius: 50%;
  border-right-color: transparent;
  bottom: 0;
  height: 3vw;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 3vw;
  z-index: 10;
}

@-webkit-keyframes spin {
  0% {
    opacity: 0.2;
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    opacity: 1;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  100% {
    opacity: 0.2;
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    opacity: 0.2;
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    opacity: 1;
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  100% {
    opacity: 0.2;
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}