@charset "utf-8";

#header2 nav ul li.m0 a{
	color:#FAFAFA;
	background-color:#353E41;
	}
#header2 nav ul li.m0 a:after{
	border-color:#FAFAFA;
	}
header{
	position:absolute;
	left:0;
	top:0;
	z-index:100;
	height:100%;
	}
header nav ul li a{
	color:#FAFAFA;
	}
header nav ul li a:hover{
	color:#FAFAFA;
	}
header nav ul li a:before{
	background:#FAFAFA;
	}
#loading{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	overflow:hidden;
	zoom:1;
	z-index:3000;
	background:url(../img/home/loading.gif) no-repeat center center;
	-webkit-background-size:44px auto;
	background-size:44px auto;
	background-color:#FFF;
	transition:1s;
	opacity:100;
	}
#loading.finish{
	opacity:0;
	z-index:-1000;
	}
#moviebg{
	position:relative;
	top:0;
	left:0;
	width:100%;
	height:100%;
	overflow:hidden;
	zoom:1;
	z-index:0;
	}
#moviebg:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background-color:#001F40;
	position:absolute;
	left:0;
	top:0;
	filter:alpha(opacity=20);
	-moz-opacity:0.2;
	opacity:0.2;
	z-index:-2;
	transition:1s;
	}
#moviebg video{
	position:absolute;
	right:0;
	bottom:0;
	width:100%;
	height:100%;
	z-index:-3;
	}
#moviebg h2{
	position:absolute;
	z-index:10;
	left:8%;
	bottom:100px;
	font-size:90px;
	font-weight:700;
	color:#FAFAFA;
	letter-spacing:-0.02em;
	opacity:0;
	margin-left:-60px;
	}
#moviebg h2 br{
	display:none;
	}
#sec1{
	background:url(../img/home/sec1bg.webp) no-repeat center center;
	background-attachment:fixed;
	-webkit-background-size:cover;
	background-size:cover;
	overflow:hidden;
	zoom:1;
	padding:360px 0 300px 0;
	position:relative;
	}
#sec1:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	background-color:#001428;
	position:absolute;
	left:0;
	top:0;
	filter:alpha(opacity=60);
	-moz-opacity:0.6;
	opacity:0.6;
	z-index:1;
	}
#sec1 h2{
	font-size:38px;
	color:#FAFAFA;
	font-weight:400;
	font-family:'Noto Serif JP';
	text-align:center;
	line-height:1.9;
	position:relative;
	z-index:2;
	}
#sec1 h2 span{
	font-family:'Noto Serif JP';
	line-height:1.9;
	font-weight:400;
	}
#sec1 p{
	font-size:16px;
	color:#FAFAFA;
	font-weight:500;
	max-width:560px;
	margin:55px auto 0 auto;
	position:relative;
	z-index:2;
	}
#sec1 ul{
	max-width:1320px;
	margin:140px auto 0 auto;
	overflow:hidden;
	zoom:1;
	position:relative;
	z-index:2;
	}
#sec1 ul li{
	float:left;
	width:48%;
	}
#sec1 ul li:nth-of-type(2){
	float:right;
	margin-top:180px;
	}
#sec2{
	overflow:hidden;
	zoom:1;
	position:relative;
	margin-top:240px;
	padding:0 110px 840px 70px;
	}
#sec2:before{
	content:"";
	display:block;
	width:63%;
	height:650px;
	background:url(../img/home/sec2bg.webp) no-repeat left center;
	-webkit-background-size:cover;
	background-size:cover;
	position:absolute;
	right:0;
	top:0;
	z-index:-1;
	}
#sec2:after{
	content:"";
	display:block;
	width:100%;
	height:620px;
	background:url(../img/home/sec2bg2.webp) no-repeat center center;
	background-attachment:fixed;
	-webkit-background-size:cover;
	background-size:cover;
	position:absolute;
	left:0;
	bottom:0;
	}
#sec2 h2{
	max-width:1180px;
	margin:0 auto;
	}
#sec2 h3{
	max-width:1180px;
	margin:0 auto;
	padding:80px 0px 0 0px;
	font-size:38px;
	font-family:'Noto Serif JP';
	line-height:1.6;
	font-weight:400;
	}
#sec2 p{
	max-width:1180px;
	margin:0 auto;
	padding:30px 650px 0 0px;
	line-height:2.6;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	}
#sec2 h4{
	max-width:1180px;
	margin:0 auto;
	padding-top:55px;
	}
#sec2 ul{
	max-width:1180px;
	margin:160px auto 0 auto;
	overflow:hidden;
	zoom:1;
	position:relative;
	}
#sec2 ul:after{
	content:"";
	display:block;
	width:1px;
	height:100%;
	position:absolute;
	left:32.5%;
	top:0;
	background-color:#D7D7D7;
	}
#sec2 ul:before{
	content:"";
	display:block;
	width:1px;
	height:100%;
	position:absolute;
	right:32.5%;
	top:0;
	background-color:#D7D7D7;
	}
#sec2 ul li{
	float:left;
	width:30%;
	margin-right:5%;
	}
#sec2 ul li:last-of-type{
	margin-right:0;
	}
#sec2 ul li h5{
	font-size:29px;
	font-weight:700;
	text-align:center;
	}
#sec2 ul li h5 a:hover{
	text-decoration:none;
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	}
#sec2 ul li h5 span{
	font-size:44px;
	font-weight:400;
	font-family:'EB Garamond';
	display:block;
	}
#sec2 ul li p{
	max-width:300px;
	padding:22px 0 35px 0;
	line-height:2.1;
	font-size:15px;
	}
#sec2 ul li h6 a{
	position:relative;
	display:block;
	}
#sec2 ul li h6 a:after{
	content:"";
	display:block;
	width:28px;
	height:28px;
	background-color:#353E41;
	border-radius:400px;
	-webkit-border-radius:400px;
	-moz-border-radius:400px;
	-o-border-radius:400px;
	-ms-border-radius:400px;
	position:absolute;
	right:15px;
	bottom:15px;
	}
#sec2 ul li h6 a:before{
	content:"";
	width:4px;
	height:4px;
	border-top:2px solid #FAFAFA;
	border-right:2px solid #FAFAFA;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	display:block;
	position:absolute;
	right:27px;
	bottom:26px;
	z-index:1;
	}
#sec2 ul li h6 a:hover:after,
#sec2 ul li h6 a:hover:before{
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	}
#sec3{
	max-width:1360px;
	margin:0 auto;
	padding:140px 110px 0 340px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	position:relative;
	overflow:hidden;
	zoom:1;
	min-height:445px;
	}
#sec3 h2{
	position:absolute;
	left:70px;
	top:180px;
	}
#sec3 article{
	float:right;
	width:820px;
	max-width:100%;
	border-bottom:1px solid #D7D7D7;
	padding:38px 40px 40px 40px;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	}
#sec3 article:last-of-type{
	border-bottom:0;
	}
#sec3 article time{
	display:block;
	font-size:20px;
	color:#969696;
	font-family:'EB Garamond';
	letter-spacing:0.06em;
	font-weight:400;
	}
#sec3 article h3{
	margin-top:12px;
	font-size:19px;
	font-weight:700;
	}
#sec3 article h3 a{
	display:block;
	position:relative;
	padding-right:50px;
	}
#sec3 article h3 a:after{
	content:"";
	display:block;
	position:absolute;
	right:0px;
	top:50%;
	margin-top:-5px;
	width:10px;
	height:10px;
	border-top:2px solid #353E41;
	border-right:2px solid #353E41;
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	-o-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
	transition:0.3s;
	}
#sec3 article h3 a:hover:after{
	margin-right:-5px;
	}
#sec3 h4{
	position:absolute;
	left:70px;
	top:380px;
	}
@media screen and (max-width:1400px){
#moviebg h2{
	font-size:80px;
	}
}
@media screen and (max-width:1380px){
#sec2 p{	
	width:530px;
	max-width:52%;
	padding:30px 0 0 0;
	margin:0;
	}
#sec2 ul li p{
	width:auto;
	max-width:auto;
	margin:0 auto;
	}
}
@media screen and (max-width:1220px){
#moviebg h2{
	font-size:70px;
	}
}
@media screen and (max-width:1120px){
#sec2 ul li h5{
	font-size:22px;
	}
}
@media screen and (max-width:1060px){
#moviebg h2{
	font-size:58px;
	}
}
@media screen and (max-width:900px){
#moviebg h2{
	bottom:70px;
	font-size:70px;
	letter-spacing:0em;
	margin-left:-20px;
	left:9%;
	}
#moviebg h2 br{
	display:block;
	}
#sec1{
	padding:170px 7% 160px 7%;
	background:url(../img/home/sec1bgsp.webp) no-repeat center center;
	background-attachment:scroll;
	-webkit-background-size:cover;
	background-size:cover;
	}
#sec1 h2{
	font-size:30px;
	}
#sec1 p{
	font-size:15px;
	max-width:none;
	margin:40px auto 0 auto;
	line-height:2.6;
	}
#sec1 ul{
	margin:90px auto 0 auto;
	}
#sec1 ul li{
	width:85%;
	}
#sec1 ul li:nth-of-type(2){
	margin-top:50px;
	}
#sec2{
	margin-top:0;
	padding:440px 0 510px 0;
	}
#sec2:before{
	width:100%;
	height:350px;
	}
#sec2:after{
	background-attachment:scroll;
	height:350px;
	}
#sec2 h2{
	padding:0 7%;
	text-align:center;
	}
#sec2 h3{
	padding:50px 7% 0 7%;
	font-size:30px;
	text-align:center;
	}
#sec2 p{
	max-width:none;
	width:auto;
	padding:40px 7% 0 7%;
	font-size:16px;
	}
#sec2 h4{
	max-width:none;
	text-align:center;
	padding:60px 7% 20px 7%;
	}
#sec2 ul{
	max-width:600px;
	margin:80px auto 0 auto;
	padding:0 7%;
	}
#sec2 ul:after{
	display:none;
	}
#sec2 ul:before{
	display:none;
	}
#sec2 ul li{
	float:none;
	width:auto;
	margin-right:0;
	padding:45px 0 45px 0;
	border-top:1px solid #D7D7D7;
	}
#sec2 ul li:last-of-type{
	padding-bottom:0;
	}
#sec2 ul li h5{
	font-size:26px;
	}
#sec2 ul li h5 span{
	font-size:30px;
	margin-bottom:5px;
	}
#sec2 ul li p{
	max-width:none;
	padding:15px 0 25px 0;
	}
#sec3{
	padding:140px 7% 0 7%;
	min-height:auto;
	}
#sec3 h2{
	position:relative;
	left:auto;
	top:auto;
	text-align:center;
	padding-bottom:30px;
	}
#sec3 article{
	float:none;
	width:auto;
	padding:28px 0px 28px 0px;
	}
#sec3 article time{
	font-size:19px;
	}
#sec3 article h3{
	margin-top:5px;
	font-size:18px;
	}
#sec3 article h3 a{
	padding-right:40px;
	}
#sec3 article h3 a:after{
	right:5px;
	margin-top:-3px;
	width:6px;
	height:6px;
	}
#sec3 h4{
	position:relative;
	left:auto;
	top:auto;
	text-align:center;
	padding-top:60px;
	}
}
@media screen and (max-width:650px){
#sec1 h2{
	font-size:26px;
	}
#sec1 h2 span{
	display:inline-block;
	}
#sec2 h3{
	font-size:26px;
	}
}
@media screen and (max-width:550px){
#moviebg h2{
	font-size:46px;
	}
#sec2{
	padding:340px 0 410px 0;
	}
#sec2:before{
	height:250px;
	}
#sec2:after{
	height:250px;
	background-position:20% 45%;
	-webkit-background-size:auto 220%;
	background-size:auto 220%;
	}
}
@media screen and (max-width:380px){
#moviebg h2{
	font-size:40px;
	}
#sec2 h3{
	font-size:23px;
	}
}