@charset "UTF-8";

/*========= LoadingのためのCSS ===============*/

/* Loading背景画面設定　*/
#splash {
    /*fixedで全面に固定*/
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  background:#373482;
  text-align:center;
  color:#fff;
}

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width:180px;
}

/* fadeUpをするアイコンの動き */

.iconfadeUp{
animation-name: iconfadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes iconfadeUpAnime{
  from {
    opacity: 0;

  }

  to {
    opacity: 1;
  }
}

/*////////////////////////*/
/*ファーストビュー*/
/*////////////////////////*/

/*トップスライダー*/
.top-slider {
	position: relative;
	width: 100%;
  height: 100vh;
  max-height: 500px;
	/* height: calc(100vh - 80px) ; */
}


.wrapper {
  position: absolute;
  bottom: 15px;
  display: flex;
  width: 100%;
  overflow: hidden;

}
.loop_text {
  flex: 0 0 auto;
  white-space: nowrap;
  font-family: "Barlow", sans-serif;
  font-size: 80px;
  font-weight: 800;
  line-height: 80px;
  overflow: hidden;
  padding-left: 20px;
  margin-bottom: 0;
  color: rgba(255,255,255,0.5);
  }
.loop_text:nth-child(odd) {
  animation: loop 100s -50s linear infinite;
}
.loop_text:nth-child(even) {
  animation: loop2 100s linear infinite;
}

@keyframes loop {
    0% {
      transform: translateX(100%);
    }
    to {
      transform: translateX(-100%);
    }
}
@keyframes loop2 {
    0% {
      transform: translateX(0);
    }
    to {
      transform: translateX(-200%);
    }
}

span.marker {
    background: linear-gradient(transparent 50%, #d7d6e6 50%);
}

.slider1 .swiper-slide {
	height: unset;
}
.swiper-custom-parent {
  position: relative;
}
.slider1 {
  position: unset;
  width: 100%;
  height: 100%;
}
.swiper-pagination-bullet {
	width: 8%;
    height: 3px;
    border-radius: unset;
    background: #808080;
}
.top-catch {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
	width: 90%;
	height: auto;
	/* background:rgba(0,0,0,0.7); */
}
.main-logo {
	width: 200px;
	height: 150px;
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	-webkit- transform: translateY(-50%) translateX(-50%);
}

.index-ph01 {
    position: absolute;
    top: 680px;
    left: 3%;
    width: 220px;
}

/*////////////////////////*/
/*セカンドビュー*/
/*////////////////////////*/

/*slider2*/
.slider2 .slider-box {
	/* position: relative;
	height: 350px; */
}
.slider2 .swiper-pagination-bullet {
	  width: 4%;
    height: 2px;
    border-radius: unset;
    background: #000;
}
.slider2 .swiper-pagination-bullet-active {
    background: #3d578d;
}
.slider02-ph {
  height: 260px;
}
.slider02-text {
    writing-mode: vertical-rl;
    position: absolute;
    top: 0;
    right: 0;
    background: #fff;
    padding: 5px 3px;
}
.bnr-ph {
/*   position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: -1; */
}
.bnr-text {
  position: absolute;
  top: 50%;
	left: 25px;
	transform: translateY(-50%) ;
	-webkit- transform: translateY(-50%) ;
}






/*slider3*/
.slider3 .slider-box {
	position: relative;
	height: 220px;
}

/*slider4*/
.slider04-cap {
	position: absolute;
	left: 15px;
	bottom: 10px;
	padding-left: 15px;
	background: url(/assets/images/common/icon-arrow02.png) no-repeat left center / 6px 10px;
}
.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
    left: 0;
    background: #000;
}
.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
    right: 0;
    background: #000;
}
.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 1.4rem;
    color: #fff;
}


.bnr-box {
  position: relative;
  height: 180px;
  color: #fff;
  overflow-y: hidden;
}
.bnr-box02 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  color: #fff;
}
.bnr-box-img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: -1;
}
.link-arow {
  background: url(/assets/images/common/icon-line.svg) no-repeat bottom center / 100px ;
}






/*PCのみ*/
@media (min-width: 768px) {

.top-header a {
    position: absolute;
    top: 0;
    left: 0;
    width: 290px;
    height: 110px;
    z-index: 100;
    background: #373482;
    clip-path: polygon(0% 0%, 100% 0%, 85% 100%, 0% 100%);
    padding: 15px 40px 15px 10px;
}


}

@media (max-width: 768px) {
    .index-ph01 {
            display: none;
    }
    .top-header a {
        display: none;
    }
		.top-slider {
			height: 100vh;
      max-height: 380px;
			z-index: unset;
		}
		.top-catch {
			position: absolute;
			z-index: 1;
			/* top: 45%;
			left: 0;
			transform: translateY(-50%);
			-webkit- transform: translateY(-50%);
			background:rgba(0,0,0,0.7); */
		}
    .loop_text {
      font-size: 40px;
      line-height: 40px;
      }
    .slider2 .swiper-pagination-bullet {
        width: 10%;
    }

    .slider3 .slider-box {
      height: 180px;
    }

}



