@charset "utf-8";


.indMainMovie{
	width: 100%;
	height: 100vh;
	height: 100svh;
	position: relative;
    overflow: hidden;
    background-color: #000;
}
.indMainMovie .txtwrap{
	position: absolute;
	text-align: left;
	color: #fff;
	width: 100%;
	height: 100vh;
	height: 100svh;
	flex-direction: column;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	padding: 0 5%;
	z-index: 2;
}
.indMainMovie .txtwrap p{
	display: inline-block;
	font-size: clamp(14px,1.6vw,22px);
	width: 0;
	margin: 0;
	padding: 0;
	line-height: 2.5;
	white-space: nowrap;
	overflow: hidden;
	animation: flowing-anim 1.6s forwards linear;
}
@keyframes flowing-anim {
 0%{
	 width: 0%;
   }
100%{
	 width: 100%;
   }
}
.indMainMovie .txtwrap p:nth-of-type(1){animation-delay: 9.0s;}
.indMainMovie .txtwrap p:nth-of-type(2){animation-delay: 9.2s;}
.indMainMovie .txtwrap p:nth-of-type(3){animation-delay: 9.4s;}
.indMainMovie .txtwrap p:nth-of-type(4){animation-delay: 9.6s;}
.indMainMovie .txtwrap p:nth-of-type(5){animation-delay: 9.8s;}
.indMainMovie .txtwrap p:nth-of-type(6){animation-delay: 10.0s;}
.indMainMovie .txtwrap p:nth-of-type(7){animation-delay: 10.4s;}

.indMainMovie .txtwrap p.copy01{
	font-size: clamp(20px,2.4vw,30px);
	font-weight: 500;
}
.indMainMovie .txtwrap p .bg01{
/*  background: #0080cb;
  background: linear-gradient(140deg,#004097 10%, #0080cb 40%, #00aeeb 70%);
  padding: 0;
  line-height: 0.5;
  */
  font-weight: 500;
	position: relative;
}
.indMainMovie .txtwrap p .bg01:before{
	position: absolute;
	display: inline-block;
	content: "";
	width: 100%;
	height: 80%;
  background: #0080cb;
  background: linear-gradient(140deg,#004097 10%, #0080cb 40%, #00aeeb 70%);
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
}
.indMainMovie .txtwrap p .bg02{
  background: rgba(0,0,0,0.5);
}
.indMainMovie .txtwrap p small{
	font-size: 70%;
}


#video-area{
	width: 100%;
	height: 100vh;
	height: 100svh;
    position: static;
    z-index: 1;/*最背面に設定*/
    top: 0;
    right:0;
    left:0;
    bottom:0;
    overflow: hidden;
}
#video {
    /*天地中央配置*/
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 177.77777778vh; /* 16:9 の幅→16 ÷ 9＝ 177.77% */
    height: 56.25vw; /* 16:9の幅 → 9 ÷ 16 = 56.25% */
    min-width: 100%;
    min-height: 100vh;
    min-height: 100svh;
    overflow: hidden;
}
/**/

.indTtl01{
	position: relative;
	width: 100%;
	height: clamp(6rem,12vw,12rem);
	text-align: center;
	margin-bottom: clamp(2rem,4vw,4rem);
}
.indTtl01 .en{
	width: 100%;
	font-size: clamp(6rem,12vw,12rem);
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	font-style: italic;
	letter-spacing: 0.1em;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50% , -50%);
	z-index: 1;
}
.indTtl01 .jp{
	width: 100%;
	font-size: clamp(2rem,3vw,3rem);
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50% , -50%);
	z-index: 2;
}

.about{
	background-color: #006aad;
	background-image: url(../images/common/bg01.png);
	background-size: cover;
	background-position: center center;
	color: #fff;
	padding-top: 80px;
	padding-bottom: 80px;
}
.about .indTtl01 .en{
	color: #00ffff;
	opacity: 0.25;
}
.about p{
	line-height: 2.5;
}
.about .cBtn01{
	color: #0057ab !important;
	background: #fff;
}
/**/


/**/
.works .indTtl01 .en{
	color: #0082c8;
	opacity: 0.15;
}
.works .indTtl01 .jp{
	color: #0057ab;
}
.worksList .unit01{
	display: block;
	text-align: left;
	margin-bottom: 40px;
	text-decoration: none;
}
.worksList .unit01 .thumb{
	width: 100%;
	aspect-ratio: 16 / 9;
	margin-bottom: 15px;
}
.worksList .unit01 .thumb img{
	border-radius: 10px;
}
.worksList .unit01 .ttl01{
	font-size: 1.6rem;
}
.worksList .unit01 .name01{
	font-size: 1.3rem;
	font-weight: bold;
	color: #808080;
}
@media (min-width: 768px){
	.worksList{
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	.worksList .unit01{
		width: 30%;
		margin-right: 5%;
		margin-bottom: 50px;
	}
	.worksList .unit01:nth-of-type(3n){
		margin-right: 0;
	}
	.worksList .unit01 .thumb{
		max-height: 169px;
	}
}
#worksIframe{
	width:100%;
	border:0;
	min-height: 235px;
}





