.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1
}
.swiper-container-no-flexbox .swiper-slide {
  float: left
}
.swiper-container-vertical > .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column
}
.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-box-sizing: content-box;
  box-sizing: content-box
}
.swiper-container-android .swiper-slide, .swiper-wrapper {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}
.swiper-container-multirow > .swiper-wrapper {
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}
.swiper-container-free-mode > .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto
}
.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  -o-transition-property: transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform
}
.swiper-invisible-blank-slide {
  visibility: hidden
}
.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto
}
.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-transition-property: height, -webkit-transform;
  transition-property: height, -webkit-transform;
  -o-transition-property: transform, height;
  transition-property: transform, height;
  transition-property: transform, height, -webkit-transform
}
.swiper-container-3d {
  -webkit-perspective: 75pc;
  perspective: 75pc
}
.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d
}
.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 2
}
.swiper-container-3d .swiper-slide-shadow-left {
  background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(right, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(to left, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-right {
  background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(to right, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-top {
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(to top, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, 0)));
  background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, .5), transparent);
  background-image: -o-linear-gradient(top, rgba(0, 0, 0, .5), transparent);
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), transparent)
}
.swiper-container-wp8-horizontal, .swiper-container-wp8-horizontal > .swiper-wrapper {
  -ms-touch-action: pan-y;
  touch-action: pan-y
}
.swiper-container-wp8-vertical, .swiper-container-wp8-vertical > .swiper-wrapper {
  -ms-touch-action: pan-x;
  touch-action: pan-x
}
.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: 27px;
  height: 44px;
  margin-top: -22px;
  z-index: 2;
  cursor: pointer;
  background-size: 27px 44px;
  background-position: center;
  background-repeat: no-repeat
}
.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto
}
.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E")
}
.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E")
}
.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E")
}
.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E")
}
.swiper-button-lock {
  display: none
}
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: .3s opacity;
  -o-transition: .3s opacity;
  transition: .3s opacity;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 2
}
.swiper-pagination.swiper-pagination-hidden {
  opacity: 0
}
.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%
}
.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transform: scale(.33);
  -ms-transform: scale(.33);
  transform: scale(.33);
  position: relative
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  -webkit-transform: scale(.66);
  -ms-transform: scale(.66);
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  -webkit-transform: scale(.33);
  -ms-transform: scale(.33);
  transform: scale(.33)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  -webkit-transform: scale(.66);
  -ms-transform: scale(.66);
  transform: scale(.66)
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  -webkit-transform: scale(.33);
  -ms-transform: scale(.33);
  transform: scale(.33)
}
.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2
}
button.swiper-pagination-bullet {
  border: 0;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none
}
.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer
}
.swiper-pagination-bullet-active {
  opacity: 1;
  background: #007aff
}
.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0, -50%, 0);
  transform: translate3d(0, -50%, 0)
}
.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 8px
}
.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  -webkit-transition: .2s top, .2s -webkit-transform;
  transition: .2s top, .2s -webkit-transform;
  -o-transition: .2s transform, .2s top;
  transition: .2s transform, .2s top;
  transition: .2s transform, .2s top, .2s -webkit-transform
}
.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  white-space: nowrap
}
.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s left, .2s -webkit-transform;
  transition: .2s left, .2s -webkit-transform;
  -o-transition: .2s transform, .2s left;
  transition: .2s transform, .2s left;
  transition: .2s transform, .2s left, .2s -webkit-transform
}
.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  -webkit-transition: .2s right, .2s -webkit-transform;
  transition: .2s right, .2s -webkit-transform;
  -o-transition: .2s transform, .2s right;
  transition: .2s transform, .2s right;
  transition: .2s transform, .2s right, .2s -webkit-transform
}
.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, .25);
  position: absolute
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: #007aff;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  -ms-transform-origin: left top;
  transform-origin: left top
}
.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top
}
.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0
}
.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0
}
.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff
}
.swiper-pagination-progressbar.swiper-pagination-white {
  background: hsla(0, 0%, 100%, .25)
}
.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
  background: #fff
}
.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #000
}
.swiper-pagination-progressbar.swiper-pagination-black {
  background: rgba(0, 0, 0, .25)
}
.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
  background: #000
}
.swiper-pagination-lock {
  display: none
}
.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, .1)
}
.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 3;
  height: 5px;
  width: 98%
}
.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 3;
  width: 5px;
  height: 98%
}
.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, .5);
  border-radius: 10px;
  left: 0;
  top: 0
}
.swiper-scrollbar-cursor-drag {
  cursor: move
}
.swiper-scrollbar-lock {
  display: none
}
.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center
}
.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
  object-fit: contain
}
.swiper-slide-zoomed {
  cursor: move
}
.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 2;
  -webkit-transform-origin: 50%;
  -ms-transform-origin: 50%;
  transform-origin: 50%;
  -webkit-animation: a 1s steps(12, end) infinite;
  animation: a 1s steps(12, end) infinite
}
.swiper-lazy-preloader:after {
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-position: 50%;
  background-size: 100%;
  background-repeat: no-repeat
}
.swiper-lazy-preloader-white:after {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E")
}
@-webkit-keyframes a {}
@keyframes a {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg)
  }
}
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000
}
.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  -webkit-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out
}
.swiper-container-fade .swiper-slide {
  pointer-events: none;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity
}
.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-container-cube {
  overflow: visible
}
.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  -webkit-transform-origin: 0 0;
  -ms-transform-origin: 0 0;
  transform-origin: 0 0;
  width: 100%;
  height: 100%
}
.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-container-cube.swiper-container-rtl .swiper-slide {
  -webkit-transform-origin: 100% 0;
  -ms-transform-origin: 100% 0;
  transform-origin: 100% 0
}
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible
}
.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}
.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0
}
.swiper-container-flip {
  overflow: visible
}
.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1
}
.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none
}
.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto
}
.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}
.swiper-container-coverflow .swiper-wrapper {
  -ms-perspective: 75pc
}


@charset "UTF-8";
:root {
  -ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%
}
* {
  font-size: inherit;
  line-height: inherit
}
::after, ::before {
  text-decoration: inherit;
  vertical-align: inherit
}
*, ::after, ::before {
  border-style: solid;
  border-width: 0
}
* {
  margin: 0;
  padding: 0
}
:root {
  box-sizing: border-box;
  cursor: default;
  text-rendering: optimizeLegibility
}
.lazyload {
  opacity: 0;
}
.lazyloaded {
  opacity: 1;
  transition: all 500ms;
}
/* reset============================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
:focus {
  outline: 0;
}
ins {
  text-decoration: none;
}
del {
  text-decoration: line-through;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
input, button, select, textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
button {
  padding: 0;
  border: none;
  outline: none;
  font: inherit;
  color: inherit;
  background: none;
}
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}
:after, :before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
/* clearfix============================================== */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
.clearfix {
  min-height: 1px;
}
* html .clearfix {
  height: 1px;
}
/* body============================================== */
html, body {
  height: 100%;
  font-size: 1.4rem;
  color: #121111;
  line-height: 1;
  letter-spacing: 0;
  background-color: #EEECF9;
  -webkit-font-smoothing: antialiased;
  -webkit-text-rendering: optimizelegibility;
  -webkit-text-size-adjust: 100%;
  margin: auto;
  overflow-wrap: break-word;
  word-wrap: break-word;
  font-feature-settings: "palt";
  font-family: "zen-kaku-gothic-antique", sans-serif;
  font-weight: 400;
  font-style: normal;
}
html {
  font-size: 10px;
}
@media only screen and (min-width: 1800px) {
  html {
    font-size: 10px;
  }
}

/*追記*/
html {
  visibility: hidden;
}
html.wf-active {
  visibility: visible;
}
/*追記ここまで*/

h1, h2, h3, h4, h5 {
  font-weight: 700;
}
img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
#container {
  width: 100%;
  height: auto;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
}
.l-main {
  width: 100%;
}
.l-container {
  position: relative;
}
.l-content {
  position: relative;
}
.meta-text {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 0;
}
.c-vrtcl {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
  font-feature-settings: 'pkna';
}
.bodr-rds {
  border-radius: 9999px;
}
a {
  color: #FFF;
  text-decoration: none;
  cursor: pointer !important;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  display: block;
}
.pc-block {
  display: block;
}
.sp-block {
  display: none;
}

/* mouse-set============================================== */
.mouse-set {
  position: relative;
  transition: all 0.5s ease;
  pointer-events: auto;
}


/* link-text ============================================== */
.link-text {
  position: relative;
  display: inline-block;
  text-align: center;
}
.u-line {
  display: block;
}
.u-line .u-line__inner {
  overflow: hidden;
  display: inline-block;
  position: relative;
  font-size: 1.6rem;
  color: #9E1A1A;
}
.u-line .u-line__inner span {
  position: relative;
  display: inline-block;
}
.u-line .u-line__inner span:before {
  content: " ";
  display: block;
  width: 100%;
  height: .1rem;
  background: #9E1A1A;
  position: absolute;
  bottom: 0;
}
.u-line.line-black .u-line__inner span:before {
  background: #000;
}
.mouse-set:hover .u-line__inner span:before {
  -webkit-animation: moveactive 0.5s cubic-bezier(0.58, 0.3, 0.005, 1) 0s 1;
  animation: moveactive 0.5s cubic-bezier(0.58, 0.3, 0.005, 1) 0s 1;
}
@-webkit-keyframes moveactive {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
  50.01% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes moveactive {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  50% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
  50.01% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes moveactive-anchor {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
  50.01% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes moveactive-anchor {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(100%);
    transform: translateY(100%);
  }
  50.01% {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
/* link-btn ============================================== */
.link-btn {
  position: relative;
}
.link-btn a {
  width: 23rem;
  text-align: center;
  position: relative;
}
.hover .link-btn:hover a {
  transform:scale(1.02,1.02);
}


/* js-scroll__anime============================================== */
.js-scroll__anime, .js-visual__anime {
  height: auto;
  display: block;
  position: relative;
}
/* text-set============================================== */
.js-text__anime {
  overflow: hidden;
  transform: translate(-100%, 0);
  -webkit-transition: all 1s cubic-bezier(0.250, 0.82, 0.355, 1);
  transition: all 1s cubic-bezier(0.250, 0.82, 0.355, 1);
}
.js-text__anime-inner {
  display: inline-block;
  transform: translate(100%, 0);
  -webkit-transition: all 1s cubic-bezier(0.250, 0.82, 0.355, 1);
  transition: all 1s cubic-bezier(0.250, 0.82, 0.355, 1);
}
.active .js-text__anime {
  transform: translate(0, 0);
}
.active .js-text__anime-inner {
  transform: translate(0, 0);
}
/* msk-set============================================== */
.msk-set {
  display: block;
  overflow: hidden;
  overflow-y: hidden;
}
.msk {
  display: inline-block;
  -webkit-transform: translateY(110%);
  transform: translateY(110%);
  transition: -webkit-transform 1.2s cubic-bezier(0.250, 0.82, 0.355, 1);
  transition: transform 1.2s cubic-bezier(0.250, 0.82, 0.355, 1);
}
.active .msk {
  -webkit-transform: translateY(0px);
  transform: translateY(0px);
}
.msk.x-msk {
  -webkit-transform: translateX(130%);
  transform: translateX(130%);
}
.msk.x-msk-b {
  -webkit-transform: translateX(-130%);
  transform: translateX(-130%);
}
.active .msk.x-msk, .active .msk.x-msk-b {
  -webkit-transform: translateX(0px);
  transform: translateX(0px);
}
/* split label ============================================== */
.split-label svg path {
  transform: translateY(120%);
  opacity: 0;
  transition: -webkit-transform 1.4s cubic-bezier(0.250, 0.82, 0.355, 1);
  transition: transform 1.4s cubic-bezier(0.250, 0.82, 0.355, 1);
}
.split-label svg path:nth-child(1), .split-label svg path:nth-child(2) {
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
}
.split-label svg path:nth-child(3) {
  transition-delay: .2s;
  -webkit-transition-delay: .2s;
}
.split-label svg path:nth-child(4) {
  transition-delay: .4s;
  -webkit-transition-delay: .4s;
}
.split-label svg path:nth-child(5), .split-label svg path:nth-child(6) {
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
}
.split-label svg path:nth-child(7), .split-label svg path:nth-child(8) {
  transition-delay: .1s;
  -webkit-transition-delay: .1s;
}
.split-label svg path:nth-child(9), .split-label svg path:nth-child(10) {
  transition-delay: .2s;
  -webkit-transition-delay: .2s;
}
.split-label svg path:nth-child(11) {
  transition-delay: .3s;
  -webkit-transition-delay: .3s;
}
.split-label svg path:nth-child(12) {
  transition-delay: 0s;
  -webkit-transition-delay: 0s;
}
.split-label svg path:nth-child(13), .split-label svg path:nth-child(14) {
  transition-delay: .1s;
  -webkit-transition-delay: .1s;
}
.split-label svg path:nth-child(15) {
  transition-delay: .2s;
  -webkit-transition-delay: .2s;
}
.split-label svg path:nth-child(16), .split-label svg path:nth-child(17) {
  transition-delay: .3s;
  -webkit-transition-delay: .3s;
}
/* js-split */
.js-scroll__split .js-split {
  opacity: 0;
}
.js-scroll__split .js-split span {
  display: inline-block;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transform: translateX(-20px);
  transform: translateX(-20px);
  opacity: 0;
}
.js-scroll__split .js-split span:nth-child(1) {
  transition-delay: .05s;
  -webkit-transition-delay: .05s;
}
.js-scroll__split .js-split span:nth-child(2) {
  transition-delay: .1s;
  -webkit-transition-delay: .1s;
}
.js-scroll__split .js-split span:nth-child(3) {
  transition-delay: .15s;
  -webkit-transition-delay: .15s;
}
.js-scroll__split .js-split span:nth-child(4) {
  transition-delay: .2s;
  -webkit-transition-delay: .2s;
}
.js-scroll__split .js-split span:nth-child(5) {
  transition-delay: .25s;
  -webkit-transition-delay: .25s;
}
.js-scroll__split .js-split span:nth-child(6) {
  transition-delay: .3s;
  -webkit-transition-delay: .3s;
}
.js-scroll__split .js-split span:nth-child(7) {
  transition-delay: .35s;
  -webkit-transition-delay: .35s;
}
.js-scroll__split .js-split span:nth-child(8) {
  transition-delay: .4s;
  -webkit-transition-delay: .4s;
}
.js-scroll__split .js-split span:nth-child(9) {
  transition-delay: .45s;
  -webkit-transition-delay: .45s;
}
.js-scroll__split .js-split span:nth-child(10) {
  transition-delay: .55s;
  -webkit-transition-delay: .55s;
}
.js-scroll__split .js-split span:nth-child(11) {
  transition-delay: .6s;
  -webkit-transition-delay: .6s;
}
.js-scroll__split .js-split span:nth-child(12) {
  transition-delay: .65s;
  -webkit-transition-delay: .65s;
}
.split-label.active svg path, .js-scroll__anime.active .split-label svg path {
  opacity: 1;
  transform: translateY(0px);
}
.js-scroll__split.active .js-split, .js-scroll__split.active .js-split span {
  opacity: 1;
  transform: translateX(0px);
}
/* delay-set============================================== */
.active .delay-01, .active .js-scroll__anime-inner.delay-01:before {
  -webkit-transition-delay: .1s;
  transition-delay: .1s;
}
.active .delay-02, .active .js-scroll__anime-inner.delay-02:before {
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
}
.active .delay-03, .active .js-scroll__anime-inner.delay-03:before {
  -webkit-transition-delay: .3s;
  transition-delay: .3s;
}
.active .delay-04, .active .js-scroll__anime-inner.delay-04:before {
  -webkit-transition-delay: .4s;
  transition-delay: .4s;
}
.active .delay-05, .active .js-scroll__anime-inner.delay-05:before {
  -webkit-transition-delay: .5s;
  transition-delay: .5s;
}
.active .delay-06 {
  -webkit-transition-delay: .6s;
  transition-delay: .6s;
}
.active .delay-07 {
  -webkit-transition-delay: .7s;
  transition-delay: .7s;
}
.active .delay-08 {
  -webkit-transition-delay: .7s;
  transition-delay: .8s;
}
.active .delay-09 {
  -webkit-transition-delay: .9s;
  transition-delay: .9s;
}
.active .delay-10 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s;
}
.active .delay-11 {
  -webkit-transition-delay: 1.1s;
  transition-delay: 1.1s;
}
.active .delay-12 {
  -webkit-transition-delay: 1.2s;
  transition-delay: 1.2s;
}
/* msk-in============================================== */
.js-scroll__anime-inner, .js-visual__anime-inner {
  -webkit-transition-timing-function: 1s cubic-bezier(0.09, 0.34, 0.63, 1);
  transition-timing-function: 1s cubic-bezier(0.09, 0.34, 0.63, 1);
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  -webkit-transform-origin: left top;
  transform-origin: left top;
}
.js-scroll__anime .js-scroll__anime-inner:before, .js-visual__anime .js-visual__anime-inner:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: block;
  margin: auto;
  background-color: #fef9ff;
  content: "";
  -webkit-transition-delay: .2s;
  transition-delay: .2s;
  -webkit-transition-timing-function: 1s cubic-bezier(0.09, 0.34, 0.63, 1);
  transition-timing-function: 1s cubic-bezier(0.09, 0.34, 0.63, 1);
  -webkit-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transform: scaleY(1);
  transform: scaleY(1);
  -webkit-transform-origin: bottom;
  transform-origin: bottom;
  width: 100%;
  height: 100%;
}
.js-scroll__anime.active .js-scroll__anime-inner:before, .js-visual__anime.active .js-visual__anime-inner:before {
  -webkit-transform: scaleY(0);
  transform: scaleY(0);
}
.js-scroll__anime.active .js-scroll__anime-inner, .js-visual__anime.active .js-visual__anime-inner {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}
/* fade-set============================================== */
.js-fade__anime {
  transition: transform 1s ease 0s, opacity 1s ease 0s;
  opacity: 0;
  transform: translate3d(0, 30px, 0);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  transition-duration: 1s;
}
.js-fade__anime.typ-b {
  transform: translate3d(0, 60px, 0);
}
.js-fade__anime.fade-left {
  transform: translate3d(-30px, 0, 0);
}
.js-fade__anime.fade-right {
  transform: translate3d(30px, 0, 0);
}
.active .js-fade__anime, .active.js-fade__anime {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
/* js-scroll__scale============================================== */
.js-scroll__scale, .js-visual__scale {
  -webkit-transform: scale(1.1) translate(-15px, 0);
  transform: scale(1.1) translate(-15px, 0);
  opacity: 0;
}
.scale-scroll-in {
  -webkit-transform: scale(1) translate(0, 0) !important;
  transform: scale(1) translate(0, 0) !important;
  opacity: 1 !important;
  transition: opacity .5s ease-in, -webkit-transform .5s;
  transition: transform .5s, opacity .5s linear;
  transition: transform .5s, opacity .5s linear, -webkit-transform 1s;
}
/* scale-set============================================== */
.js-scale__anime {
  -webkit-transform: scale(0);
  transform: scale(0);
  transition: -webkit-transform 1s cubic-bezier(0.250, 0.82, 0.355, 1);
  transition: transform 1s cubic-bezier(0.250, 0.82, 0.355, 1);
}
.active .js-scale__anime {
  -webkit-transform: scale(1.0);
  transform: scale(1.0);
}
/* vertical/side-move ============================================== */
.vertical-move, .bound-move {
  opacity: 0;
  display: none;
}
.active .vertical-move {
  -webkit-animation-name: verticalanime;
  animation-name: verticalanime;
  -webkit-animation-duration: 1.4s;
  animation-duration: 1.4s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  opacity: 1;
  display: block;
}
.active .vertical-move.bottom-move {
  -webkit-animation-name: verticalbottomanime;
  animation-name: verticalbottomanime;
}
.active .bound-move {
  -webkit-animation-name: boundanime;
  animation-name: boundanime;
  -webkit-animation-duration: 1.4s;
  animation-duration: 1.4s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  opacity: 1;
  display: block;
}
.key-delay-01 {
  -webkit-animation-delay: .1s;
  animation-delay: .1s;
}
.key-delay-02 {
  -webkit-animation-delay: .2s;
  animation-delay: .2s;
}
.key-delay-03 {
  -webkit-animation-delay: .3s;
  animation-delay: .3s;
}
.key-delay-04 {
  -webkit-animation-delay: .4s;
  animation-delay: .4s;
}
.key-delay-05 {
  -webkit-animation-delay: .5s;
  animation-delay: .5s;
}
.key-delay-06 {
  -webkit-animation-delay: .6s;
  animation-delay: .6s;
}
.key-delay-07 {
  -webkit-animation-delay: .7s;
  animation-delay: .7s;
}
.key-delay-08 {
  -webkit-animation-delay: .8s;
  animation-delay: .8s;
}
.key-delay-09 {
  -webkit-animation-delay: .9s;
  animation-delay: .9s;
}
.key-delay-10 {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}
.key-delay-11 {
  -webkit-animation-delay: 1.1s;
  animation-delay: 1.1s;
}
.key-delay-12 {
  -webkit-animation-delay: 1.2s;
  animation-delay: 1.2s;
}
.key-delay-13 {
  -webkit-animation-delay: 1.3s;
  animation-delay: 1.3s;
}
.key-delay-14 {
  -webkit-animation-delay: 1.4s;
  animation-delay: 1.4s;
}
.key-delay-15 {
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s;
}
@-webkit-keyframes verticalanime {
  0% {
    -webkit-transform: translate(0px, -500px);
    transform: translate(0px, -500px);
  }
  30% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  37% {
    -webkit-transform: translate(0px, -25px);
    transform: translate(0px, -25px);
  }
  43% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  53% {
    -webkit-transform: translate(0px, -15px);
    transform: translate(0px, -15px);
  }
  68% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
}
@keyframes verticalanime {
  0% {
    -webkit-transform: translate(0px, -500px);
    transform: translate(0px, -500px);
  }
  30% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  37% {
    -webkit-transform: translate(0px, -25px);
    transform: translate(0px, -25px);
  }
  43% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  53% {
    -webkit-transform: translate(0px, -15px);
    transform: translate(0px, -15px);
  }
  68% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  100% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
}
@-webkit-keyframes verticalbottomanime {
  0% {
    -webkit-transform: translate(0px, 150%);
    transform: translate(0px, 150%);
  }
  30% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  37% {
    -webkit-transform: translate(0px, 5%);
    transform: translate(0px, 5%);
  }
  43% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  53% {
    -webkit-transform: translate(0px, 3%);
    transform: translate(0px, 3%);
  }
  68% {
    -webkit-transform: translate(0px, 0%);
    transform: translate(0px, 0%);
  }
  100% {
    -webkit-transform: translate(0px, 0%);
    transform: translate(0px, 0%);
  }
}
@keyframes verticalbottomanime {
  0% {
    -webkit-transform: translate(0px, 150%);
    transform: translate(0px, 150%);
  }
  30% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  37% {
    -webkit-transform: translate(0px, 5%);
    transform: translate(0px, 5%);
  }
  43% {
    -webkit-transform: translate(0px, 0px);
    transform: translate(0px, 0px);
  }
  53% {
    -webkit-transform: translate(0px, 3%);
    transform: translate(0px, 3%);
  }
  68% {
    -webkit-transform: translate(0px, 0%);
    transform: translate(0px, 0%);
  }
  100% {
    -webkit-transform: translate(0px, 0%);
    transform: translate(0px, 0%);
  }
}
/* bound-move ============================================== */
@-webkit-keyframes boundanime {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0)
  }
  20% {
    -webkit-transform: scale(1.03);
    transform: scale(1.03)
  }
  40% {
    -webkit-transform: scale(.95);
    transform: scale(.95)
  }
  60% {
    -webkit-transform: scale(1.03);
    transform: scale(1.03)
  }
  80% {
    -webkit-transform: scale(.97);
    transform: scale(.97)
  }
  to {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}
@keyframes boundanime {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0)
  }
  20% {
    -webkit-transform: scale(1.03);
    transform: scale(1.03)
  }
  40% {
    -webkit-transform: scale(.95);
    transform: scale(.95)
  }
  60% {
    -webkit-transform: scale(1.03);
    transform: scale(1.03)
  }
  80% {
    -webkit-transform: scale(.97);
    transform: scale(.97)
  }
  to {
    -webkit-transform: scale(1);
    transform: scale(1)
  }
}
/* swiper============== */
.swiper-wrapper {
  transition-timing-function: linear;
}

/* header============================================== */
#l-header {
  width: 100%;
	max-width: 200rem;
  height: auto;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 0;
  -webkit-transition: all .1s linear;
  transition: all .1s linear;
  z-index: 30;
}
.l-header__body {
  width: calc(100% - 0rem);
  margin: 0 auto;
  height: auto;
  position: relative;
  display: flex;
  justify-content: flex-end;
}
.l-header__sitename {
  width: auto;
  position: absolute;
  left: 3.5rem;
  top: 3rem;
  display: flex;
  align-items: center;
}
.l-header__sitename {
  width: 25.8rem;
}
.l-header__social {
  position: absolute;
  right: 4rem;
  top: 3rem;
  display: flex;
  align-items: center;
}
.l-header__social a {
  width: 4.4rem;
  height: 4.4rem;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.l-header__social a:before {
  width: 4.4rem;
  height: 4.4rem;
  z-index: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #121111;
  top: 0;
  border-radius: 50%;
  position: absolute;
  content: '';
  -webkit-transform: scale(1.0);
  transform: scale(1.0);
  transition: -webkit-transform 1s cubic-bezier(0.250, 0.82, 0.355, 1);
  transition: transform 1s cubic-bezier(0.250, 0.82, 0.355, 1);
}
.hover .l-header__social:hover a:before {
  -webkit-transform: scale(1.15);
  transform: scale(1.15);
}
.l-header__social a p {
  width: 2rem;
  position: relative;
  z-index: 2;
}

/* l-main__visual ============================================== */
.l-main__visual {
  width: 100%;
  position: relative;
  z-index: 2;
	overflow: hidden;
}
.l-main__body {
  width: calc(100% - 5rem);
  max-width: 110rem;
  height: 65rem;
  position: relative;
  margin: 0 auto;
  z-index: 2;
  display: flex;
}
.l-main__text {
  width: 50rem;
  position: absolute;
  top: 24%;
  left: 0;
  z-index: 2;
}
.l-main__text-inner {
  width: 100%;
	font-weight: bold;
}
.sub-copy {
  font-size: 2.4rem;
	position: relative;
}
.sub-copy :before {
    background-image: url(../img/common/speech_pc.png);
    background-repeat: no-repeat;
    background-position: center left;
    position: absolute;
		bottom: -1.5rem;
		left: 0;
    content: '';
    z-index: 2;
    display: block;
    background-size: contain;
    width: 47.2rem;
    height: 1.1rem;
    background-size: 100% 100%;
}
.sub-copy__logo {
	height: 1.25em;
	width: auto;
	vertical-align: -0.2em;
	margin-right: -0.2em;
}
.main-copy {
  font-size: 5.4rem;
	margin-top: 3.2rem;
	letter-spacing: .015em;
}
.main-copy p:last-child {
  margin-top: 1.8rem;
	padding-bottom: .2rem;
}
.main-copy p:last-child span {
  position: relative;
}
.main-copy p:last-child span:before{
  position: absolute;
	content:'！';
	top: 0rem;
	right: -4rem;
}
.l-main__btn {
  margin: 4.8rem 0 0;
	width: 48rem;
}
.l-main__btn-inner {
  display: flex;
	justify-content: space-between;
}
.l-main__img {
  width: 56rem;
  position: relative;
  margin: 0 0 0 auto;
  z-index: 0;
}
.l-main__img-inner {
  width: 100%;
  position: absolute;
	top: 16%;
    left: -1%;
}
.l-main__img-inner p {
  width: 100%;
}
.l-main__flow {
  width: 100%;
	position: absolute;
	z-index: 1;
	left: 0;
	right: 0;
	margin: auto;
	bottom: -.3rem;
}
.l-main__cover {
  width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 0;
    z-index: 0;
    max-width: 150rem;
}
.l-main__cover p {
  position: absolute;
	top: 0;
}
.l-main__cover p:first-child {
    width: 69rem;
    left: -3rem;
    top: -8rem;
}
.l-main__cover p:nth-child(2) {
  width: 77rem;
    right: -4rem;
    top: -6rem;
}

/* text common ============================================== */
.p-section__index {
  font-size: 3.8rem;
  text-align: center;
}

/* section-cover ============================================== */
.section-cover {
  position: relative;
}
.section-cover:before {
  width: 100%;
  height: 100%;
  position: absolute;
  content: '';
  left: 0;
  top: 0;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 0;
  background-position: center center;
  background-image: url(../img/cover/section-cover.jpg);
  overflow: hidden;
}

/* p-top-guide ============================================== */
.p-top-guide {
  width: 100%;
  position: relative;
  z-index: 0;
}
.p-top-guide__body {
  width: calc(100% - 0rem);
  margin: 0 auto;
  position: relative;
  padding: 10.5rem 0 2rem;
  z-index: 10;
}
.guide-index {
	display: flex;
	align-items: center;
	justify-content: center;
}
.guide-index span {
  font-size: 3rem;
	display: inline-block;
}
.guide-index span:first-child {
  font-size: 4rem;
}
.guide-index span:nth-child(2) {
  font-size: 3.3rem;
	padding-top: .8rem;
}
.guide-push {
  position: relative;
	margin: 3.5rem 0 0;
	display: flex;
	justify-content: center;
}
.guide-push__text {
    font-size: 3.3rem;
	font-weight: 700;
	text-align: center;
	display: inline-block;
}
.guide-push__text:before,
.guide-push__text:after{
  position: absolute;
	content:'';
	background-image: url(../img/common/line-right.png);
    background-repeat: no-repeat;
    background-position: center center;
		top: 0rem;
    right: -3rem;
    z-index: 2;
    display: block;
    background-size: contain;
    width: 2rem;
    height: 5rem;
}
.guide-push__text:after{
	background-image: url(../img/common/line-left.png);
	right: auto;
	left: -3.5rem;
}
.guide-push__text span {
  font-size: 3.2rem;
  background-color: #FFF;
	border-radius: .6rem;
	text-align: center;
	padding: .8rem .9rem;
	display: inline-block;
}
.guide-gallery {
  width: 100%;
  max-width: 200rem;
  position: relative;
  margin: 5.8rem auto 0;
}
.gallery-lst {
  width: 10%;
}
.gallery-lst__thumb {
  width: 100%;
}
.gallery-lst__thumb span {
  padding: 70% 0;
}
.visual-lst {
  width: 100%;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.visual-lst__inner {
  width: 100%;
  height: 100%;
}
.visual-lst__inner span {
  display: block;
  width: 100%;
  height: 100%;
  -webkit-background-size: cover;
  background-size: cover;
  background-position: 50% 50%;
}

/* p-top-function ============================================== */
.p-top-function {
  width: 100%;
  position: relative;
  z-index: 0;
}
.p-top-function__body {
  width: calc(100% - 6rem);
	max-width: 100rem;
  margin: 0 auto;
  position: relative;
  padding: 13rem 0 2rem;
  z-index: 10;
}
.function-index {
  position: relative;
}
.function-index h2 {
  font-size: 3.8rem;
	text-align: center;
}
.function-unit {
  width: 100%;
	margin: 5rem auto 0;
	display: flex;
	justify-content: space-between;
}
.function-lst {
  width: 28.5%
}
.function-lst__img {
  width: 100%;
}
.function-lst__text {
  margin: 1.8rem 0 0;
}
.function-lst__text h3 {
  font-size: 2rem;
	line-height: 1.4;
	letter-spacing: .02em;
	position: relative;
}
.function-lst__text h3:before {
  position: absolute;
	content:'';
	background-image: url(../img/common/parts01.png);
    background-repeat: no-repeat;
    background-position: center center;
		top: .5rem;
    left: 0rem;
    z-index: 2;
    background-size: contain;
    width: 2rem;
    height: 1.8rem;
		display: none;
}
.function-lst:nth-child(2) .function-lst__text h3:before {
	background-image: url(../img/common/parts02.png);
		top: .5rem;
    width: 1rem;
    height: 2rem;
}
.function-lst:nth-child(3) .function-lst__text h3:before {
	background-image: url(../img/common/parts03.png);
	top: .3rem;
    width: 1.8rem;
    height: 2.2rem;
}
.function-lst__text h3 span {
	display: inline-block;
}
.function-lst__text p {
  font-size: 1.4rem;
	line-height: 1.6;
	margin: 1.1rem 0 0;
}


/* p-top-outlook ============================================== */
.p-top-outlook {
  width: calc(100% - 6rem);
	max-width: 100rem;
  position: relative;
  z-index: 0;
	border-radius: 2rem;
	overflow: hidden;
	margin: 12rem auto 14.5rem;
	padding:  6.3rem 0 6.3rem;
}
.p-top-outlook__body {
  width: calc(100% - 0rem);
  position: relative;
	z-index: 2;
}
.outlook-index {
  position: relative;
}
.outlook-label {
  font-size: 1.8rem;
	text-align: center;
	font-weight: 700;
}
.outlook-label span {
   border: solid 1px #121111;
	 padding: .8rem 1rem;
	 display: inline-block;
}
.outlook-index h2 {
  font-size: 3.2rem;
	text-align: center;
	margin: 3rem 0 0;
	letter-spacing: .01em;
}
.outlook-index h2 p:nth-child(2) {
  margin: 1.2rem 0 0;
}
.outlook-index h2 span {
      padding-bottom: .3rem;
}
.outlook-read {
  font-size: 1.6rem;
    line-height: 1.8;
    text-align: center;
    margin: 2rem 0 0;
    letter-spacing: .03em;
}
.outlook-cover {
  width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 0;
}
.outlook-cover p {
  position: absolute;
	top: 0;
}
.outlook-cover p:first-child {
      width: 35rem;
    left: -8rem;
    top: -8rem;
}
.outlook-cover p:nth-child(2) {
  width: 55rem;
    right: -10rem;
    top: -13rem;
}


/* p-top-install ============================================== */
.p-top-install {
  width: 100%;
  position: relative;
  z-index: 0;
	background-color: #E1DEF4;
}
.p-top-install__body {
  width: calc(100% - 6rem);
	max-width: 74rem;
  margin: 0 auto;
  position: relative;
  padding: 6.5rem 0 6.5rem;
  z-index: 2;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.install-unit {
  position: relative;
	width: 48rem;
	margin-top: 3rem;
}
.install-unit__inner {
  display: flex;
	justify-content: space-between;
}
.install-lst {
  width: 46%;
}
.install-lst .link-btn {
        width: 100%;
    }
.install-lst .link-btn a {
  width: 100%;
}
.qr-img {
  width: 15rem;
	margin: 3rem auto 0;
}
.install-note {
  width: 100%;
    margin: 2.5rem 0 0;
    padding-left: 6.5rem;
}
.install-note p {
  font-size: 1rem;
	line-height: 1.5;
	display: flex;
}
.install-note p:first-child {
  margin-bottom: 1rem;
}
.install-note span {
  display: inline-block;
}
.install-img {
  width: 18rem;
}


/* p-top-series ============================================== */
.p-top-function {
  width: 100%;
  position: relative;
  z-index: 0;
}
.p-top-series__body {
  width: calc(100% - 6rem);
	max-width: 100rem;
  margin: 0 auto;
  position: relative;
  padding: 10rem 0 10rem;
  z-index: 10;
}
.series-index {
  position: relative;
	text-align: center;
}
.series-index h2 {
  font-size: 3.8rem;
}
.series-index p {
  font-size: 1.8rem;
	margin: 2rem auto 0;
}
.series-unit {
  width: 100%;
	margin: 5rem auto 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.series-lst {
  width: 48.5%;
	/*margin-bottom: 3rem;*/
}
.series-lst:nth-child(n+3) {
  margin-bottom: 0;
}
.series-lst a {
  width: 100%;
	height: 100%;
	padding: 1.7rem 3rem 1.7rem;
	color: #121111;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	border-radius: 1rem;
	overflow: hidden;
	background-color: #FFF;
}
.series-lst a::after {
    content: '';
    position: absolute;
    z-index: 1;
    opacity: 0;
    width: 100%;
    height: 100%;
		border-radius: 1rem;
    -webkit-box-shadow: 0 0 0 2px #E1DEF4, 0 0 0 2px #E1DEF4 inset;
    box-shadow: 0 0 0 2px #E1DEF4, 0 0 0 2px #E1DEF4 inset;
    -webkit-transition: .3s cubic-bezier(.55, .085, .68, .53);
    transition: .3s cubic-bezier(.55, .085, .68, .53);
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.hover .series-lst:hover a::after {
  opacity: 1;
}
.series-lst__text {
  position: relative;
}
.series-lst__text p {
  font-size: 1.4rem;
	line-height: 1;
}
.series-lst__text h3 {
	position: relative;
	margin: 1.2rem 0 0;
}
.series-lst.dl-sound .series-lst__text h3 {
  width: 21.5rem;
}
.series-lst.dlsite-library .series-lst__text h3 {
  width: 22.5rem;
}
.series-lst.dl-playbox .series-lst__text h3 {
  width: 20rem;
}
.series-lst__img {
  width: 13.5rem;
	border-radius: 1rem;
	margin: 0;
	overflow: hidden;
}
.series-lst:nth-child(2) .series-lst__img{
  border: solid 1px #D7D3ED;
}

/* l-footer ============================================== */
.l-footer {
  width: 100%;
	position: relative;
	background-color: #FFF;
}
.l-footer__body {
  position: relative;
}
.l-footer__nav {
  width: 100%;
	display: flex;
	justify-content: center;
	padding: 5rem 0;
}
.l-footer__nav-inner {
  display: flex;
}
.l-footer__nav p {
  font-size: 1.4rem;
	font-weight: 700;
	margin: 0 2.5rem;
}
.l-footer__nav a {
  color: #121111;
	position: relative;
	display: inline-block;
}
.l-footer__nav a:hover {
  color: #888;
}
.l-footer__copyright {
  background-color: #121111;
	padding: 3rem 0;
}
.l-footer__copyright p {
  font-size: 1.2rem;
	font-weight: 700;
	text-align: center;
	color: #D0D0D0;
	letter-spacing: .05em;
}


@media screen and (max-width: 1200px) {
.l-main__body {
    max-width: 96rem;
    height: 60rem;
		width: calc(100% - 8rem);
}
.l-main__text {
    width: 46rem;
		top: 26%;
}
.sub-copy {
    font-size: 2.0rem;
}
.sub-copy :before {
    width: 39.7rem;
}
.main-copy {
    font-size: 5rem;
}
.l-main__btn {
    margin: 4rem 0 0;
    width: 100%;
}
.link-btn {
    width: 48%;
}
.link-btn a {
    width: 100%;
}
.l-main__img {
    width: 50rem;
}
.l-main__img-inner {

}
.l-main__cover p:first-child {
            width: 65rem;
        left: -4rem;
        top: -12rem;
}
.l-main__cover p:nth-child(2) {
    width: 72rem;
    right: -10rem;
    top: -8rem;
}


	
}
@media screen and (max-width: 1024px) {
.l-header__sitename {
    width: 20rem;
}
.l-header__social {
    right: 3rem;
}
.l-header__social a {
    width: 3.8rem;
    height: 3.8rem;
}
.l-header__social a:before {
    width: 3.8rem;
    height: 3.8rem;
}
.l-header__social a p {
    width: 1.4rem;
}
.l-main__body {
        max-width: 76rem;
        height: 54rem;
				 
}
    .l-main__text {
        top: 28%;
				width: 41rem;
    }
    .sub-copy {
        font-size: 1.6rem;
    }
     .sub-copy :before {
        width: 31.5rem;
    }
		.main-copy {
        font-size: 4rem;
        margin-top: 2.8rem;
    }
		.main-copy p:last-child span:before{
	right: -3rem;
}
		    .l-main__btn {
        margin: 3.4rem 0 0;
			}
			.l-main__img {
        width: 40rem;
    }
		.l-main__img-inner {
    top: 21%;
    left: 4%;
}
.l-main__cover p:first-child {
           width: 54rem;
        left: -3rem;
        top: -7rem;
}
.l-main__cover p:nth-child(2) {
    width: 57rem;
        right: -7rem;
        top: -3rem;
}


		.p-top-guide__body {
    padding: 8.5rem 0 2rem;
}
.guide-index span:first-child {
    font-size: 3.5rem;
}
.guide-index span:nth-child(2) {
    font-size: 3rem;
}
.guide-push {
    margin: 2.7rem 0 0;
}
.guide-push__text {
    font-size: 2.5rem;
}
.guide-push__text span {
    font-size: 2.4rem;
    border-radius: .4rem;
    padding: .6rem .7rem;
}
.guide-push__text:before,
.guide-push__text:after {
    top: .3rem;
    right: -2rem;
    width: 1.4rem;
    height: 3rem;
}
.guide-push__text:after {
    left: -2.5rem;
}
.guide-gallery {
    margin: 4rem auto 0;
}
.p-top-function__body {
   width: calc(100% - 12rem);
    padding: 11rem 0 2rem;
}
.function-index h2 {
    font-size: 3rem;
}
.function-unit {
    margin: 3.5rem auto 0;
}
.function-lst__text h3 {
    font-size: 1.8rem;
    line-height: 1.3;
}
.function-lst__text p {
    font-size: 1.3rem;
    margin: 1rem 0 0;
}
.function-lst__text p br {
  display: none;
}
.p-top-outlook {
    width: calc(100% - 12rem);
    border-radius: 1rem;
    margin: 8rem auto 12.5rem;
}
.outlook-label {
    font-size: 1.5rem;
}
.outlook-label span {
    padding: .6rem .8rem;
}
.outlook-index h2 {
    font-size: 2.6rem;
    margin: 2.3rem 0 0;
}
.outlook-read {
    font-size: 1.5rem;
}


/* p-top-series ============================================== */
.p-top-series__body {
  width: calc(100% - 12rem);
  padding: 8rem 0 8rem;
}
.series-index h2 {
  font-size: 3rem;
}
.series-index p {
  font-size: 1.5rem;
	margin: 1.7rem auto 0;
}
.series-unit {
    margin: 4rem auto 0;
}
.series-lst__img {
    width: 10.5rem;
}
.series-lst__text h3 {
	margin: 1rem 0 0;
}
.series-lst.dl-sound .series-lst__text h3 {
  width: 18.5rem;
}
.series-lst.dlsite-library .series-lst__text h3 {
  width: 19.5rem;
}
.series-lst.dl-playbox .series-lst__text h3 {
  width: 17rem;
}
 
}


@media screen and (max-width: 959px) {


.l-main__body {
        max-width: 60rem;
        height: auto;
        display: block;
				padding: 13rem 0 0rem;
    }
		.l-main__text {
		 position: static;
		 width: 100%;
		 margin: 0 auto;
		}
		.sub-copy {
        font-size: 2.4rem;
    }
		.sub-copy :before {
        width: 47rem;
        height: 1.075rem;
        background-size: 100% 100%;
    }
		    .main-copy {
        font-size: 6rem;
        margin-top: 3.2rem;
    }
				.main-copy p:last-child span:before{
	right: -4.5rem;
}
		.l-main__img {
        width: 60rem;
        margin: 5rem auto 0;
    }
		.l-main__img-inner {
		  position: static;
		}
		.l-main__cover p:first-child {
        width: 18.7rem;
        left: -11.5rem;
        top: 8rem;
    }
		    .l-main__cover p:nth-child(2) {
       width: 44.2rem;
        right: -15rem;
        top: -10rem;
    }
		    .p-top-function__body {
        width: calc(100% - 6rem);
    }
		.function-lst {
    width: 30%;
}
    .function-lst__text h3 {
        font-size: 1.5rem;
        line-height: 1.3;
    }
		
		
		
    .p-top-outlook {
        width: calc(100% - 6rem);
    }
		.outlook-cover p:first-child {
    width: 27rem;
    left: -8rem;
    top: -6rem;
}
.outlook-cover p:nth-child(2) {
    width: 47rem;
    right: -12rem;
    top: -11rem;
}

		.p-top-install__body {
    width: calc(100% - 12rem);
    padding: 5.5rem 0 5.5rem;
		max-width: 65rem;
}
.install-unit {
    width: 40rem;
}
.install-img {
  width: 16.5rem;
}
.install-note {
    padding-left: 2.3rem;
}

/* p-top-series ============================================== */
.p-top-series__body {
  width: calc(100% - 6rem);
}
.series-lst a {
    padding: 1.3rem 2rem 1.3rem;
    border-radius: .5rem;
}
.series-lst__img {
    width: 8rem;
		margin: 0 0 0 1rem;
		border-radius: .5rem;
}
.series-lst.dl-sound .series-lst__text h3 {
  width: 15.5rem;
}
.series-lst.dlsite-library .series-lst__text h3 {
  width: 16.5rem;
}
.series-lst.dl-playbox .series-lst__text h3 {
  width: 15rem;
}

	
}


@media screen and (max-width: 768px) {

    .p-top-install__body {
        width: calc(100% - 8rem);
    }


.l-footer__nav {
    padding: 4rem 0;
}
.l-footer__nav-inner {
  flex-wrap: wrap;
	justify-content: center;
}
.l-footer__nav p {
    font-size: 1.2rem;
    margin: 0;
    text-align: center;
		width: 44%;
}
.l-footer__nav p:nth-child(-n+2){
  margin-bottom: 3.5rem;
}

}



@media screen and (max-width: 640px) {
 .l-header__sitename {
        width: 16.5rem;
        left: 1.5rem;
        top: 2.2rem;
    }
		    .l-header__social {
        right: 1.2rem;
				top: 1.1rem;
    }
		.l-header__social a {
    width: 4.4rem;
    height: 4.4rem;
	}
	.l-header__social a:before {
        width: 3.6rem;
        height: 3.6rem;
				-webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        top: 50%;
		}
		    .l-main__body {
        max-width: 100%;
        padding: 9rem 0 0rem;
				width: calc(100% - 4rem);
    }
		.sub-copy {
        font-size: 1.4rem;
				text-align: center;
    }
		.sub-copy span {
		  display: inline-block;
			position: relative;
		}
		.sub-copy :before {
    background-image: url(../img/common/speech_sp.png);
		width: 100%;
		bottom: -1.6rem;
	}
		    .main-copy {
        font-size: 3.5rem;
        margin-top: 2rem;
        text-align: center;
        letter-spacing: 0;
    }
		.main-copy p:last-child {
    margin-top: 0.8rem;
		padding: 0 1.7rem .2rem 0;
}
				.main-copy p:last-child span:before{
	right: -2.5rem;
}
    .l-main__btn {
        margin: 2.2rem auto 0;
				width: calc(100% - 2rem);
				max-width: 42rem;
    }
		    .l-main__img {
        margin: 2.5rem auto 0;
        width: calc(100% - 0rem);
				max-width: 42rem;
    }
				.l-main__cover p:first-child {
        width: 10.3rem;
        top: 8rem;
        left: -6.5rem;
    }
		    .l-main__cover p:nth-child(2) {
        width: 26.8rem;
        right: -8rem;
        top: -8rem;
    }
		    .p-top-guide__body {
        padding: 7rem 0 2rem;
    }
		    .guide-push {
        margin: 1.8rem 0 0;
    }
		  .guide-index span:first-child {
        font-size: 3rem;
    }
		    .guide-index span:nth-child(2) {
        font-size: 2.5rem;
    }
		    .guide-push__text {
        font-size: 1.9rem;
    }
		.guide-push__text span {
        font-size: 1.9rem;
    }
		.guide-push__text span:nth-child(-n+2) {
		  margin-bottom: 1rem;
		}
		.guide-push__text .sp-block {
		  display: block;
		}
		    .guide-push__text:before,
				.guide-push__text:after {
        top: auto;
        right: -1.3rem;
        width: 1rem;
        height: 2rem;
        bottom: 0.4rem;
    }
		    .guide-push__text:after {
        left: -1.7rem;
    }
		    .guide-gallery {
        margin: 2.7rem auto 0;
    }
		    .p-top-function__body {
        width: calc(100% - 0rem);
        padding: 8rem 0 2rem;
    }
		    .function-index h2 {
        font-size: 2.5rem;
    }
		    .function-unit {
        margin: 2.5rem auto 0;
        display: block;
        width: calc(100% - 10rem);
    }
		    .function-lst {
        width: 100%;
				margin-bottom: 4.8rem;
    }
		.function-lst:last-child {
		  margin-bottom: 0;
		}
		    .function-lst__text {
        margin: 1.4rem 0 0;
    }
		.function-lst__text h3 {
        font-size: 1.8rem;
    }
		.function-lst__text h3:before {
        top: .55rem;
        width: 1.6rem;
        height: 1.4rem;
    }
		    .function-lst:nth-child(2) .function-lst__text h3:before {
        top: .4rem;
        width: .8rem;
        height: 1.8rem;
    }
		    .function-lst:nth-child(3) .function-lst__text h3:before {
        width: 1.4rem;
        height: 1.7rem;
        top: .3rem;
    }
    .function-lst__text p {
        margin: .8rem 0 0;
    }
		
		
		
		    .p-top-outlook {
        width: calc(100% - 8rem);
        padding: 4.3rem 0 3.8rem;
        margin: 2.5rem auto 5.5rem;
				border-radius: 1rem;
    }
		.outlook-label {
        font-size: 1.3rem;
    }
		    .outlook-label span {
        padding: .4rem .6rem;
    }
		.outlook-index h2 {
        font-size: 1.8rem;
        margin: 1rem 0 0;
    }
		.outlook-index h2 p:first-child {
		  line-height: 1.4;
		}
		.outlook-index h2 p:nth-child(2) {
    margin: .3rem 0 0;
}
.outlook-index h2 p .sp-block {
  display: block;
}
    .outlook-read {
        font-size: 1.2rem;
        margin: .8rem 0 0;
				letter-spacing: 0;
    }
		.outlook-read .sp-block {
		  display: block;
		}
				.outlook-cover p:first-child {
    width: 23rem;
        left: -7rem;
        top: -4rem;
}
.outlook-cover p:nth-child(2) {
    width: 36rem;
        right: -13rem;
        top: -6rem;
}
		
		
		.p-top-install__body {
        width: calc(100% - 6rem);
        padding: 4rem 0 3.8rem;
        max-width: 100%;
				display: block;
    }
		.install-unit {
        width: 100%;
				margin: 0 auto 0;
				max-width: 42rem;
    }
		  
		.qr-img,
		.install-img {
		  display: none;
		}
		    .install-note {
        padding-left: 0;
        margin: 2rem auto 0;
    }
		.install-note p:first-child {
    margin-bottom: .7rem;
}
.install-note p span br {
  display: none;
}
.l-footer__nav {
        padding: 3rem 0 3.6rem;
    }
.l-footer__nav p:nth-child(-n+2){
  margin-bottom: 2.6rem;
}
.l-footer__copyright {
    padding: 1.8rem 0;
}
.l-footer__copyright p {
    font-size: 1.1rem;
}


/* p-top-series ============================================== */
.p-top-series__body {
  width: calc(100% - 6rem);
	        padding: 4.2rem 0 4.5rem;
}
.series-index h2 {
        font-size: 2.5rem;
    }
		    .series-index p {
        font-size: 1.3rem;
        margin: 1.2rem auto 0;
    }
    .series-unit {
        margin: 2.2rem auto 0;
        display: block;
    }
	.series-lst {
    width: 100%;
    margin-bottom: 1.4rem;
}
.series-lst:nth-child(n+3) {
    margin-bottom: 2rem;
}
.series-lst:last-child {
    margin-bottom: 0;
}
.series-lst a {
    padding: 1.3rem 1.5rem 1.3rem;
}
.series-lst__text p {
    font-size: 1.2rem;
}
.series-lst__img {
        width: 10rem;
        margin: 0;
}
 
 
}

@media screen and (max-width: 450px) {
.outlook-cover p:first-child {
    width: 27%;
        left: -13%;
        top: 2%;
}
.outlook-cover p:nth-child(2) {
          width: 69%;
        right: -12%;
        top: -19%;
}


}

@media screen and (max-width: 375px) {
.p-top-outlook {
        padding: 3.4rem 0 3.4rem;
    }
}

@media screen and (max-width: 360px) {
    .function-unit {
        width: calc(100% - 6rem);
    }
		    .p-top-outlook {
        width: calc(100% - 4rem);
    }
    .l-footer__nav p {
        font-size: 1.1rem;
        width: 50%;
    }
		
		

.series-lst.dlsite-library .series-lst__text h3 {
  width: 14.5rem;
}
.series-lst.dl-playbox .series-lst__text h3 {
  width: 13rem;
}


    .series-lst__img {
        width: 7rem;
			}


 
}
@media screen and (max-width: 320px) {
     .main-copy {
        font-size: 3rem;
			}
							.main-copy p:last-child span:before{
	right: -2.2rem;
}
		    .outlook-index h2 {
        font-size: 1.7rem;
			}

}