@charset 'utf-8';
/*----------------------------------------------------------
-------------------------------------------- sec
-----------------------------------------------------------*/
.sec{
	min-height: 1000px;
	text-align: center;
	font-size: 100%;
	display: flex;
	align-items: center;
	background-color: #ffffff11;
}
.sec-wrap{
	width: 100%;
	max-width:1920px;
	padding: 0 5%;
	margin: 0 auto 0px;
	position: relative;
}
.sec-wrap.unset{
	max-width:none;
	padding: 0;
	margin: 0;
	position: relative;
}
.sec-layout{
	position:relative;
}
.sec-title{
	font-size: 300%;
}

@media screen and (max-width:900px){
	.sec-wrap{
		padding: 70% 5%;
	}
}


/*----------------------------------------------------------
-------------------------------------------- sec-movie
-----------------------------------------------------------*/
.sec-movie{
	min-height: 0;
	overflow:hidden;
}
.sec-movie video{
	max-width:100%;
	width:100vw;
}
.sec-movie .promotion-video:after{
	content:'';
	width:250px;
	height:250px;
	margin-top:-125px;
	margin-left:-125px;
	display:block;
	position:absolute;
	z-index:15;
	background-image:url(../images/sec-movie_btn.png);
	background-position:center;
	top:50%;
	left:50%;
	pointer-events:none;
	opacity:0.7;
	transform: scale(1);
	transition:0.7s;
}
.sec-movie:hover .promotion-video:after{
	opacity:0.3;
	transform:scale(0.95);
}
@media screen and (max-width:900px){
	.sec-movie video{
		max-width:160%;
		width:160vw;
		margin:-10% -30%;
	}
	.sec-movie .promotion-video:after{
		transform: scale(0.8);
	}
}
/*----------------------------------------------------------
-------------------------------------------- sec-type01
-----------------------------------------------------------*/
.sec-type01{
	min-height: 100vh;
	background-image:url(../images/sec-type01_bg.jpg);
	background-size:cover;
	background-repeat:no-repeat;
	background-position: center;
	position:relative;
	overflow:hidden;
}
.sec-type01 .logo{
	max-width:88%;
	width: 460px;
	margin: 0% auto 50px;
}
.sec-type01 .copy{
	margin: auto auto 2%;
}
.sec-type01 .copy p{
	font-size:110%;
	font-weight:300;
	letter-spacing:0.2em
}
.sec-type01 .button{
	margin: auto auto 5%;
	width: 420px;
	max-width:82%;
	/* height:100px; */
	background-image:url(../images/sec-type01_btnoff.png);
	background-repeat:no-repeat;
	background-position:center;
	background-size: contain;
	transition:0.2s;
}
.sec-type01 .button a{
	opacity:1 !important;
}
.sec-type01 .button:hover{
	background-image:url(../images/sec-type01_btnon.png);
	background-size:auto;
	background-repeat:no-repeat;
	background-position:center;
}
.sec-type01 .sec-outer{
	width: 100%;
	position:absolute;
	bottom: 6%;
	left:0;
	text-align:center;
}
.sec-type01 .sec-bottom{
	width:100%;
	margin:auto;
}
.sec-type01 .attention li{
	font-size:85%;
	text-align: center;
	opacity:0.6;
	line-height: 1.6;
	padding:0 7vw;
}
@media screen and (max-width: 900px) {
	.sec-type01{
		min-height: 0;
	}
	.sec-type01 .attention li{
		text-align: left;
	}
}
/*----------------------------------------------------------
-------------------------------------------- sec-type02
-----------------------------------------------------------*/
.sec-type02{
	min-height: 1000px;
	max-height:1000px;
	background-image:url(../images/sec-type02_bg.jpg);
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	overflow:hidden;
	/*clip-path: url(#clip-pass);*/
	background-color: transparent;
	position:relative;
	z-index: 10;
}
.sec-type02 .sec-wrap{
	max-width: 100%;
	padding: 0 0;
	text-align:center;
}
.sec-type02 .center-box h2 img{
	max-width: 1920px;
	min-width: 1300px;
	padding: 0 10% 0;
	width: 100%;
	margin:auto -500px;
}
.news-readmore{
	margin-bottom: 50px;
	padding: 18px 0px 22px 0px;
	text-align:center;
	min-width: 250px;
	border: solid 1px #FFFFFF88;
}
.news-readmore img{
	height:13px;
	line-height:1;
	opacity:0.8;
}
.sec-type02 .news-readmore{
	margin-top:-50px;
}
.sec-type02 .news-readmore img{
}
.sec-type02 .news-readmore a:hover{
	opacity:1;
}
@media screen and (max-width:800px){
	.sec-type02{
		min-height: 0;
		max-height:10000px;
		background-size:auto 150%;
		clip-path: url(unset);
		padding:25vw 0;
		margin:0;
	}
	.sec-type02 .center-box h2 img{
		min-width: 0px;
		padding: 0 0vw 0;
		width: 100%;
		margin:auto -500px;
	}
}











/*----------------------------------------------------------
-------------------------------------------- sec-type03
-----------------------------------------------------------*/
.sec-type03{
	min-height: 1000px;
	background-image:url(../images/sec-type03_bg.jpg);
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	text-align:left;
}
.sec-type03 .center-box{
}
.sec-type03 .center-box-wrap{
	max-width:100%;
	width: 100%;
	padding: 0 30% 0 100px;
	box-sizing: border-box;
}
.sec-type03 .news-ttl{
	margin-bottom:30px;
}
.sec-type03 .news-readmore{
}
.sec-type03 .news-readmore img{
}
.sec-type03 .news-readmore a:hover{
	opacity:1;
}
.sec-type03 .news-list{
	margin-bottom:60px;
	width:100%;
	position:relative;
}
.sec-type03 .news-list li{
	width:100%;
	position:relative;
	overflow:hidden;
}
.sec-type03 .news-list:before{
	content:'';
	height:2px;
	width:3px;
	display:block;
	position:absolute;
	left:0;
	bottom:0;
	background-image:url(../images/sec-type03_line1.png);
	background-repeat:no-repeat;
	background-position:left top;
}
.sec-type03 .news-list:after{
	content:'';
	height:2px;
	width:calc(100% - 3px);
	display:block;
	position:absolute;
	left:0;
	bottom:0;
	background-image:url(../images/sec-type03_line2.png);
	background-repeat:no-repeat;
	background-position:right top;
}
.sec-type03 .news-list li:before{
	content:'';
	height:2px;
	width:3px;
	display:block;
	position:absolute;
	left:0;
	top:0;
	background-image:url(../images/sec-type03_line1.png);
	background-repeat:no-repeat;
	background-position:left top;
}

.sec-type03 .news-list li:after{
	content:'';
	height:2px;
	width:calc(100% - 0px);
	display:block;
	position:absolute;
	left:0;
	top:0;
	background-image:url(../images/sec-type03_line2.png);
	background-repeat:no-repeat;
	background-position:right top;
}
.sec-type03 .news-list li:hover{
}
.sec-type03 .news-list .date,
.sec-type03 .news-list .s-ttl,
.sec-type03 .news-list .cate{
	line-height:80px;
	display:inline-block;
	float:left;
}
.sec-type03 .news-list .date{
	width:150px;
}
.sec-type03 .news-list .time{
	display:inline-block;
	margin-left:0.4em;
}
.sec-type03 .news-list .cate{
	width:170px;
}
.sec-type03 .news-list .cate span{
	background-color:#2b3535dd;
	text-align:center;
	display:inline-block;
	height:1.8em;
	line-height:1.8em;
	text-align:center;
	width:130px;
	vertical-align:middle;
	font-size: 80%;
}
.sec-type03 .news-list .s-ttl{
	width:calc(100% - 320px);
}
@media screen and (max-width:1300px){
	.sec-type03 .center-box-wrap{
		max-width:100%;
		width: 100%;
		padding:0 100px 0 100px;
	}
}
@media screen and (max-width:900px){
	.sec-type03{
		min-height: 0;
		padding: 26vw 12vw;
		background-image:url(../images/sec-type03_bg_sp.jpg);
		background-size:125% auto;
		background-repeat:no-repeat;
		background-position:bottom right;
		text-align:left;
	}
	.sec-type03 .center-box-wrap{
		padding:0;
	}
	.sec-type03 .news-ttl img{
		height: 45px;
	}
	.sec-type03 .news-list .date, .sec-type03 .news-list .s-ttl, .sec-type03 .news-list .cate{
	    line-height: 2;
	    display: block;
	    float: none;
	}
	.sec-type03 .news-list .cate{
		width:auto;
		display:inline-block;
		order:10;
	}
	.sec-type03 .news-list .date{
		width:auto;
		display:inline-block;
		order:11;
		margin:0 15px;
		font-size:12px;
		line-height:32px;
	}
	.sec-type03 .news-list .s-ttl{
		width:100%;
		padding-top:10px;
		order:12;
	}
	.sec-type03 .news-list li a{
		display:block;
		padding:20px 0px;
		display: flex;
		flex-wrap: wrap; 
	}
	.sec-type03 .news-list .cate span{
		height:1.8em;
		width:100px;
	}
	.sec-type03 .news-list{
		margin-bottom:40px;
	}
	.sec-type03 .news-readmore {
	    margin-bottom: 10px;
	}
}

/*----------------------------------------------------------
-------------------------------------------- sec-type04
-----------------------------------------------------------*/
.sec-type04{
	min-height: 1000px;
	background-image:url(../images/sec-type04_bg.jpg);
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center;
	background-attachment:fixed;
	padding: 10vw 0;
}
.sec-type04 a:hover{
	opacity:1;
}
.sec-type04 .gallery-ttl{
	margin-bottom: 30px;
}
.sec-type04 .gallery-list{
	padding: 0 150px;
	width:100%;
	margin-left: 0%;
	overflow:hidden;
	margin-bottom: 0px;
	position: relative;
}
.sec-type04 .gallery-list li{
	width: 48.5%;
	margin-right:3%;
	float:left;
	position:relative;
	text-align:left;
}
.sec-type04 .gallery-list li:nth-child(2n){
	margin-right:0;
}
.sec-type04 .gallery-list li a{
	padding: 5% 0 3%;
	display:block;
}
.sec-type04 .gallery-list li:after{
	content:'';
	height:2px;
	width:calc(100% - 0px);
	display:block;
	position:absolute;
	left:0;
	bottom:0;
	background-image:url(../images/sec-type03_line2.png);
	background-repeat:no-repeat;
	background-position:right top;
}
.sec-type04 .gallery-list li:before{
	content:'';
	height:2px;
	width:3px;
	display:block;
	position:absolute;
	left:0;
	bottom:0;
	background-image:url(../images/sec-type03_line1.png);
	background-repeat:no-repeat;
	background-position:left top;
}
.sec-type04 .gallery-list li a:after{
	content:'';
	height:2px;
	width:calc(100% - 0px);
	display:block;
	position:absolute;
	left:0;
	top:0;
	background-image:url(../images/sec-type03_line2.png);
	background-repeat:no-repeat;
	background-position:right top;
}
.sec-type04 .gallery-list li a:before{
	content:'';
	height:2px;
	width:3px;
	display:block;
	position:absolute;
	left:0;
	top:0;
	background-image:url(../images/sec-type03_line1.png);
	background-repeat:no-repeat;
	background-position:left top;
}
.sec-type04 .thumb{
	background-size:cover;
	overflow:hidden;
	position:relative;
}
.sec-type04 .playimage{
	width:100%;
	opacity:0.2;
}
.sec-type04 .thumb:after{
	content:'';
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background-image:url(../images/sec-movie_btn.png);
	background-repeat:no-repeat;
	background-position:center;
	background-size:400px;
	opacity:0;
}
.sec-type04 .date{
	margin: 4% 0 0;
	font-size: 85%;
	padding:0 2%;
}
.sec-type04 .s-ttl{
	margin:1% 0 0;
	font-size:100%;
	padding:0 2%;
}
.sec-type04 .s-ttl:after{
	content:'';
	width:100px;
	height:19px;
	display:block;
	background-image:url(../images/sec-type04_btnplay.png);
	background-repeat:no-repeat;
	background-position:left top;
	margin-top: 4.5%;
	opacity:0.3;
}
.sec-type04 li:hover .thumb:after,
.sec-type04 li:hover .s-ttl:after{
	opacity:1;
}
.sec-type04 li:hover .playimage{
	opacity:0.6;
	background-color:#000000df;
	backdrop-filter:blur(1px);
}
.sec-type04 li:hover .date,
.sec-type04 li:hover .s-ttl{
	color:#FFFFFF30;
}
.sec-type04 li .playimage,
.sec-type04 li .date,
.sec-type04 li .s-ttl,
.sec-type04 li .s-ttl:after,
.sec-type04 .thumb:after{
	transition:0.4s;
}
.sec-type04 .gallery-readmore a:hover{
	opacity:0.5;
}
@media screen and (max-width:900px){
	.sec-type04{
		min-height: 0vh;
		padding: 25vw 12vw;
	}
	.sec-type04 a:hover{
		opacity:1;
	}
	.sec-type04 .gallery-ttl{
		margin-bottom: 30px;
	}
	.sec-type04 .gallery-ttl img{
		height: 85px;
		max-width: 200%;
		width: auto;
	}
	.sec-type04 .gallery-list{
		padding: 0;
		width:100%;
	}
	.sec-type04 .gallery-list li{
		width: 100%;
		margin-bottom:0%;
	}
	.sec-type04 .gallery-list li:nth-child(n){
		margin-right:0;
	}
	.sec-type04 .gallery-list li a{
		padding: 8% 0 6%;
		display:block;
	}
	.sec-type04 .gallery-list li:before{
	}
	.sec-type04 .gallery-list li:before{

	}
	.sec-type04 .gallery-list li:nth-child(n) a:after{
		display:none;
	}
	.sec-type04 .gallery-list li:nth-child(1) a:after{
		display:block;
	}
	.sec-type04 .gallery-list li:nth-child(n) a:before{
		display:none;
	}
	.sec-type04 .gallery-list li:nth-child(1) a:before{
		display:block;
	}
}

/*----------------------------------------------------------
-------------------------------------------- body-side-progress
-----------------------------------------------------------*/

.body-side-progress{
	position:fixed;
	right:0px;
	top:50%;
	margin-top:-200px;
	z-index:1000;
	transform:scale(1);
}
.progress-list {
	position:relative;
}
.progress-item {
	position:absolute;
	top:0;
	right:0;
	opacity:0;
	transition:1s;
}
.progress-item-base{
	position:relative;
}
.progress-list.p1 .progress-item {
	opacity:0;
}
.progress-list.p1 .progress-item.p1{
	opacity:1;
	/*animation: 0.15s linear 0s 1 tenmetu_anime;*/
}
.progress-list.p1.p2 .progress-item {
	opacity:0;
}
.progress-list.p1.p2 .progress-item.p2{
	opacity:1;
	/*animation: 0.15s linear 0s 1 tenmetu_anime;*/
}
.progress-list.p1.p2.p3 .progress-item {
	opacity:0;
}
.progress-list.p1.p2.p3 .progress-item.p3{
	opacity:1;
	/*animation: 0.15s linear 0s 1 tenmetu_anime;*/
}
.progress-list.p1.p2.p3.p4 .progress-item {
	opacity:0;
}
.progress-list.p1.p2.p3.p4 .progress-item.p4{
	opacity:1;
	/*animation: 0.15s linear 0s 1 tenmetu_anime;*/
}
@keyframes tenmetu_anime{
	0%{
		opacity:0.8;
	}
	10% {
		opacity:0;
	}
	20% {
		opacity:0.9;
	}
	35% {
		opacity:0;
	}
	90% {
		opacity:0.9;
	}
	100% {
		opacity:1;
	}
}
@media screen and (max-width: 900px) {
	.body-side-progress{
		display:none;
	}
}



/*----------------------------------------------------------
-------------------------------------------- footer
-----------------------------------------------------------*/
footer{
	text-align:center;
	padding: 30px 0 45px;
	font-size:16px;
	color: #11111;
}