@charset "utf-8";
/* スライダー */
.swiper-container .swiper-button-next, .swiper-container .swiper-button-prev {
  top: 50%;
  opacity: 0.7;
}
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 9px;
}
.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 7px;
}
.swiper-pagination-bullet{
  background: #FFFFFF;
  opacity: 1;
  width: 12px;
  height: 12px;
}
.swiper-pagination-bullet-active {
  background: #1b4a9c;
}
.fv-wrap {
  overflow: hidden;
  height: calc(100vh - 40px);
}
.swiper-container {
    height: 100%;
}
.swiper-slide {
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat;
}
.fv-copy {
  position: absolute;
  top: 50%;
  left: 15px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  color: #0070C5;
}
.fv-desc {
  font-size: 2rem;
  font-weight: 500;
}
/* //スライダー */
@media all and (max-width: 319px) {

}
@media all and (min-width: 576px) {
  /* スライダー */
  .fv-wrap {
    height: 400px;
  }

  /* //スライダー */
}

@media all and (min-width: 768px) {
  .fv-copy {
    left: 10vw;
  }

}
@media all and (min-width: 992px) {
  .fv-wrap {
    max-height : -webkit-calc(100vh - 97px);
    max-height : calc(100vh - 97px);
  }
  /* スライダー */
  .fv-wrap {
    height: 600px;
  }
  .fv-desc {
    font-size: 3.33rem;
  }
  /* //スライダー */
}
@media all and (min-width: 1200px) {
  /* スライダー */
  .fv-wrap {
    height: 700px;
  }

  /* //スライダー */
}
.top-about {
  padding-top: 31vw;
  position: relative;
}
.top-about::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 41vw;
}
.top-about.lazyloaded::before {
  background: url(../images/top/manufactory_tone.jpg) no-repeat left top/cover;
}
.top-about-box {
  color: #fff;
  padding: 3.33rem 1.66rem 2.77rem;
  background: url(../images/top/about-bg.svg) no-repeat center bottom/cover;
  position: relative;
  z-index: 20;
}
.strong-text {
  font-size: 1.75rem;
  line-height: 1.11;
}
@media all and (min-width: 576px) {

}
@media all and (min-width: 768px) {
  .top-about {
    padding-top: 0;
    padding-bottom: 4vw;
  }
  .top-about::before {
    top: auto;
    bottom: 0;
    right: 0;
    left: auto;
    width: 68%;
    height: 30vw;
  }
}
@media all and (min-width: 992px) {
  .top-about {
    padding-bottom: 6.33rem;
  }
  .top-about::before {
    height: 23rem;
  }
}
@media all and (min-width: 1200px) {
  .top-about::before {
    height: 26rem;
  }
}
@media all and (min-width: 1400px) {
}