@import url("//fonts.googleapis.com/earlyaccess/notosansjp.css");
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap");
/* ---------- setting ---------- ---------- */
/* ----------------------------------------------------------
.slick-slider
---------------------------------------------------------- */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}
.slick-slider li {
  list-style: none;
}
.slick-slider .slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-slider .slick-list:focus {
  outline: none;
}
.slick-slider .slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}
.slick-slider .slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-slider .slick-track:before, .slick-slider .slick-track:after {
  content: "";
  display: table;
}
.slick-slider .slick-track:after {
  clear: both;
}
.slick-loading .slick-slider .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.mod-product-slider {
  position: relative;
}
.mod-product-slider img {
  width: 100%;
}
.mod-product-slider ._btn-prev {
  position: absolute;
  bottom: 18px;
  left: calc(50% - 100px);
  height: 34px;
  width: 34px;
  cursor: pointer;
  background: url(/common/images/icon/arrow3.png) left top no-repeat;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 1;
  transform: rotate(180deg);
}
.mod-product-slider ._btn-prev:hover {
  opacity: 0.8;
}
.mod-product-slider ._btn-next {
  position: absolute;
  bottom: 18px;
  right: calc(50% - 100px);
  height: 34px;
  width: 34px;
  cursor: pointer;
  background: url(/common/images/icon/arrow3.png) left top no-repeat;
  background-size: cover;
  background-repeat: no-repeat;
  z-index: 1;
}
.mod-product-slider ._btn-next:hover {
  opacity: 0.8;
}
.mod-product-slider ._slide-dots {
  width: 100%;
  padding: 30px 0;
  display: flex;
  justify-content: center;
}
.mod-product-slider ._slide-dots li {
  display: inline-block;
  width: 10px;
  height: 10px;
  border: 2px solid #fff;
  margin: 0 8px;
  border-radius: 50%;
}
.mod-product-slider ._slide-dots li button {
  display: none;
}
.mod-product-slider ._slide-dots li.slick-active {
  background: #14497c;
  border: 2px solid #14497c;
}

.mod-anim {
  opacity: 0;
  transition-delay: 0.2s;
  transition-duration: 0.7s;
  transition-property: opacity, transform;
}
.mod-anim.is-fade.js-active {
  opacity: 1;
}
.mod-anim.is-top {
  transform: translate(0, -100px);
}
.mod-anim.is-top.js-active {
  opacity: 1;
  transform: translate(0, 0);
}
.mod-anim.is-bottom {
  transform: translate(0, 100px);
}
.mod-anim.is-bottom.js-active {
  opacity: 1;
  transform: translate(0, 0);
}
.mod-anim.is-right {
  transform: translate(100px, 0);
}
.mod-anim.is-right.js-active {
  opacity: 1;
  transform: translate(0, 0);
}
.mod-anim.is-left {
  transform: translate(-100px, 0);
}
.mod-anim.is-left.js-active {
  opacity: 1;
  transform: translate(0, 0);
}
.mod-anim.is-zoom {
  transform: scale(0, 0);
}
.mod-anim.is-zoom.js-active {
  opacity: 1;
  transform: scale(1, 1);
}
.mod-anim.is-zoom2 {
  transform: scale(0, 0);
  transition-timing-function: cubic-bezier(0, 0.75, 0.6, 1.4);
}
.mod-anim.is-zoom2.js-active {
  opacity: 1;
  transform: scale(1, 1);
}
.mod-anim i {
  font-style: normal;
}
.mod-anim.is-chara {
  font-style: normal;
  display: inline-block;
  opacity: 0.1;
  transition-delay: 0.2s;
  transition-duration: 0.7s;
  transition-property: opacity, transform;
}
.mod-anim.js-active.is-chara {
  opacity: 1;
}

.mod-anim.is-delay-00 {
  transition-delay: 0s;
}
.mod-anim.is-delay-01 {
  transition-delay: 0.1s;
}
.mod-anim.is-delay-02 {
  transition-delay: 0.2s;
}
.mod-anim.is-delay-03 {
  transition-delay: 0.3s;
}
.mod-anim.is-delay-04 {
  transition-delay: 0.4s;
}
.mod-anim.is-delay-05 {
  transition-delay: 0.5s;
}
.mod-anim.is-delay-06 {
  transition-delay: 0.6s;
}
.mod-anim.is-delay-07 {
  transition-delay: 0.7s;
}
.mod-anim.is-delay-08 {
  transition-delay: 0.8s;
}
.mod-anim.is-delay-09 {
  transition-delay: 0.9s;
}
.mod-anim.is-delay-10 {
  transition-delay: 1s;
}
.mod-anim.is-delay-11 {
  transition-delay: 1.1s;
}
.mod-anim.is-delay-12 {
  transition-delay: 1.2s;
}
.mod-anim.is-delay-13 {
  transition-delay: 1.3s;
}
.mod-anim.is-delay-14 {
  transition-delay: 1.4s;
}
.mod-anim.is-delay-15 {
  transition-delay: 1.5s;
}
.mod-anim.is-delay-16 {
  transition-delay: 1.6s;
}
.mod-anim.is-delay-17 {
  transition-delay: 1.7s;
}
.mod-anim.is-delay-18 {
  transition-delay: 1.8s;
}
.mod-anim.is-delay-19 {
  transition-delay: 1.9s;
}
.mod-anim.is-delay-20 {
  transition-delay: 2s;
}

/* ----------------------------------------------------------
loop
---------------------------------------------------------- */
.mod-anim.is-fadeloop.js-active {
  animation: infinite_loop_opacity 1s ease-in-out 0s infinite alternate;
}
.mod-anim.is-vertical-loop.js-active {
  opacity: 1;
  animation: infinite_loop_bounce 1s ease-in-out 0s infinite alternate;
}
.mod-anim.is-rotate {
  display: block;
  opacity: 1;
  animation: infinite_loop_rotate 1s linear 0s infinite;
}

/* ----------------------------------------------------------
@keyframes
---------------------------------------------------------- */
@keyframes infinite_loop_opacity {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes infinite_loop_bounce {
  0% {
    transform: translate3d(0, 0, -5px);
  }
  100% {
    transform: translate3d(0, 5px, 0);
  }
}
@keyframes infinite_loop_rotate {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(359deg);
  }
}
.mod-index-anim .is-fig {
  opacity: 0;
  transition-duration: 0.4s;
  transform: scale(0.4);
  transform-origin: center bottom;
}
.mod-index-anim .is-fig._p1 {
  transition-delay: 1s;
}
.mod-index-anim .is-fig._p2 {
  transition-delay: 1.05s;
}
.mod-index-anim .is-fig._p3 {
  transition-delay: 1.1s;
}
.mod-index-anim .is-fig._p4 {
  transition-delay: 1.15s;
}
.mod-index-anim .is-fig._p5 {
  transition-delay: 1.2s;
}
.mod-index-anim .is-fig._p6 {
  transition-delay: 1.25s;
}
.mod-index-anim .is-fig._p7 {
  transition-delay: 1.3s;
}
.mod-index-anim .is-fig._p8 {
  transition-delay: 1.35s;
}
.mod-index-anim .is-fig._p9 {
  transition-delay: 1.4s;
}
.mod-index-anim .is-fig._p10 {
  transition-delay: 1.45s;
}
.mod-index-anim.js-active .is-fig {
  opacity: 1;
  transform: scale(1);
}