@charset "UTF-8";
/*////////////////////////*/
/*ファーストビュー*/
/*////////////////////////*/


/*Scroll誘導アニメ*/
.scrolldown1{
    /*描画位置※位置は適宜調整してください*/
		position: absolute;
    left: 25px;
    bottom: 0;
    height: 150px;
    z-index: 1;
}
/*Scrollテキストの描写*/
.scrolldown1 span{
    /*描画位置*/
  position: absolute;
  left:-22px;
  top: -30px;
    /*テキストの形状*/
  color: #000;
  font-size: 0.7rem;
  letter-spacing: 0.05em;
  transform: rotate(90deg);
}
/* 線の描写 */
.scrolldown1::after{
  content: "";
    /*描画位置*/
  position: absolute;
  top: 0;
    /*線の形状*/
  width: 1px;
  height: 150px;
  background: #000;
    /*線の動き1.4秒かけて動く。永遠にループ*/
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
}
/*高さ・位置・透過が変化して線が上から下に動く*/
@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:100px;
    opacity: 1;
  }
  100%{
    height:0;
    top:150px;
    opacity: 0;
  }
}

.btn-line {
	position: absolute;
	top: 50%;
	left: 14px;
	transform: translateY(-50%);
	-webkit- transform: translateY(-50%);
}
.news-title {
	width:fit-content;
	padding:2px 8px;
	background:#25346C;
	color:#fff;
	text-align:center;
  border-radius: 30px;
  font-size:.7rem;
	width: 60px;
}

.movie-box video {
	width:123%;
	height:auto;
  object-fit: cover;
  font-family: "object-fit: cover;";
}


.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: 55%;
	left: 23%;
	transform: translateX(-50%) translateY(-50%);
	-webkit- transform: translateX(-50%) translateY(-50%);
/*	width: 33%;*/
/*	height: 100%;*/
/*	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%);
}
.text-wrap a {
		display: inline-block;
    width: 100%;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}

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

.top-logo {
	width: 150px;
	height: 150px;
}
.top-ph01 {
	width: 100%;
	height: 150px;
}

.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;
  z-index: -1;
}
.link-arow {
  background: url(/assets/images/common/icon-line.svg) no-repeat bottom center / 100px ;
}

/*slider2*/
.slider2 .slider-box {
	position: relative;
	height: 230px;
}

.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;
}


.ph-box01 {
	height:370px;
}
.ph-box02 {
	height:370px;
	margin-top:150px;
}
.ph-box03 {
	height:280px;
}


/*TRIBE PRIDE BG文字流れ*/
.scroll-infinity__item--text {
  font-family: 'Anton', sans-serif;
  width: calc(360vw / 3);
  font-size: 20rem;
  color: rgba(255,255,255,0.5);
}
@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width: calc(100vw / 6);
}
.scroll-infinity__item>img {
  width: 100%;
}


.index-ph {
		position: relative;
    top: -130px;
    left: 0;
    width: 100%;
    height: 0;
    z-index: 10;
}
.index-ph01 {
	height:300px;
	margin-top:100px;
}
.index-ph02 {
	height:300px;
	margin-top:50px;
}
.index-ph03 {
	height:300px;

}

.pt-100 {
	padding-top:100px;
}
.pt-200 {
	padding-top:200px;
}
.pb-100 {
	padding-bottom:100px;
}
.pb-200 {
	padding-bottom:200px;
}

.BTN00 a {
    display: block;
    font-size: 12px;
    line-height: 28px;
    letter-spacing: .1rem;
    color: #fff;
    width: fit-content;
    border-bottom: dotted 1px #fff;
    transition: all 0.6s ease 0s;
}
.BTN00 a:hover {
    border-bottom: solid 1px #fff;
    transition: all 0.6s ease 0s;
}
.BTN001 a {
    display: block;
    font-size: 12px;
    line-height: 28px;
    letter-spacing: .1rem;
    color: #000;
    width: fit-content;
    border-bottom: dotted 1px #000;
    transition: all 0.6s ease 0s;
}
.BTN001 a:hover {
    border-bottom: solid 1px #000;
    transition: all 0.6s ease 0s;
}

.BTN04 a {
  position: relative;
  display: block;
  font-size: 14px;
  line-height:20px;
  color: #fff;
  width: 100%;
  height: 85px;
  border:solid 1px #fff;
  padding: 20px 0 0 65px;
  transition: all 0.6s ease 0s;
}
.BTN04 a:after {
  position: absolute;
  top: 42px;
  right: 0;
  background: #fff;
  content: "";
  width: 20px;
  height: 1px;
  transition: all 0.6s ease 0s;
}
.BTN04 a:hover {
  background: #000;
  transition: all 0.6s ease 0s;
}
.BTN04 a:hover:after {
  width: 0;
  height: 1px;
  transition: all 0.6s ease 0s;
}
.BTN04 a img {
    position: absolute;
    top: 22px;
    left: 15px;
    width: 40px;
}

.column-ph {
	height:230px;
}
.rank {
    position: absolute;
    top: 210px;
    left: 14px;
    width: 40px;
    height: 40px;
    line-height: 40px;
    background: #AC8C36;
    color: #fff;
    text-align: center;
    font-size: .9rem;
    font-weight: 600;
}





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

		#header {
			position:fixed;
		}

		/*トップスライダー*/
		.top-slider {
		    position: relative;
		    width: 100%;
		    height: 100vh;
		    z-index: 100;
		    background: #fff;
		}
		#pc-top-header {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			z-index: 1;
		}
		#pc-top-header #h_top{
			align-items: start;
		}
		#pc-top-header #h_top .h_logo {
			height: 180px;
		}
		.bg-top {
			position: absolute;
			top: 0;
			left: 50px;
			width : calc(100% - 50px) ;
			height : calc(100vh - 50px) ;
		}
		.news-box {
			position: absolute;
			bottom: 0;
			left: 50px;
			width : calc(100% - 50px) ;
			height : 40px ;
		}

		/*TRIBE PRIDE BG文字流れ*/
		.scroll-infinity {
			position: absolute;
		    top: -130px;
		    width:100%;
		}


		.movie-box {
		    position: absolute;
		    top: 60%;
		    left: 30%;
			  transform: translateY(-50%);
			  -webkit- transform: translateY(-50%);
		    width: 800px;
		    height: 650px;
		}
		.mask {
		  -webkit-clip-path: url(#svgPath);
		  clip-path: url(#svgPath);
		}
		.bg01 {
			position: absolute;
	    top: 0;
	    left: 15%;
	    width: 30%;
	    height: 65%;
	    background: rgba(255,255,255,0.5);
		}
		.bg02 {
			position: absolute;
	    bottom: 0;
	    right: 0;
	    width: 35%;
	    height: 30%;
	    background: rgba(0,0,54,0.2);
		}
}

@media (max-width: 768px) {

		.scrolldown1{
		    /*描画位置※位置は適宜調整してください*/
				position: absolute;
		    left: unset;
		    right: 20px;
		    bottom: unset;
		    top: 60%;
		    height: 150px;
		    z-index: 1;
		}

		.top-slider {
			height: calc(100vh - 60px) ;
			z-index: unset;
		}
		.top-catch {
			width: 90%;
	    top: 50%;
	    left: 5%;
	    transform: unset;
		}
		.main-logo {
		    padding: 30px;
		}
		.h300 {
			height: 220px;
		}
		.ph-box01 {
			height:270px;
		}
		.ph-box02 {
			height:270px;
			margin-top:80px;
		}
		.ph-box03 {
		    height: 160px;
		}
		.ph-box03 span {
		    display: block;
		    height: 160px;
		}

		/*TRIBE PRIDE BG文字流れ*/
		.scroll-infinity__item--text {
		  width: calc(360vw / 3);
		  font-size: 6rem;
		}
		.scroll-infinity {
			position: absolute;
		    top: 600px;
		    width:100%;
		}

		/*slider2*/
		.slider2 .slider-box {
			height: 150px;
		}

		.bg-top {
			position: relative;
			overflow: hidden;
			height : calc(100vh - 210px) ;
		}

		.movie-box {
		    position: absolute;
		    top: 30%;
		    left: 50%;
			  transform: translateX(-50%)  translateY(-50%);
			  -webkit- transform: translateX(-50%)  translateY(-50%);
		    width: 350px;
		    height: 240px;
		}
		.mask {
		  -webkit-clip-path: url(#svgPathsp);
		  clip-path: url(#svgPathsp);
		}
		.bg01 {
			position: absolute;
	    top: 0;
	    left: 0;
	    width: 60%;
	    height: 20%;
	    background: rgba(255,255,255,0.5);
		}
		.bg02 {
			position: absolute;
	    bottom: 0;
	    right: 0;
	    width: 60%;
	    height: 20%;
	    background: rgba(0,0,54,0.2);
		}

		.py-sp-0 {
			padding-top:0;
			padding-bottom:0;
		}
		.py-sp-50 {
			padding-top:50px;
			padding-bottom:50px;
		}
		.pt-sp-50 {
			padding-top:50px;
		}
		.pt-sp-100 {
			padding-top:100px;
		}
		.column-ph {
		    height: 130px;
		}
		.rank {
		    top: 110px;
		}




}



