@charset "utf-8";
/*=============================================================
 #mainVisual
=============================================================*/
#container {
  padding: 0;
}
#container .pageTtl{
	position: fixed;
	top: 40px;
	left: 280px;
	z-index: 100;
	font-size: 28px;
	color: #fff;
}
#container .pageTtl h1{
	display: flex;
	align-items: center;
	text-shadow: #000 0px 0 8px;
}
#container .pageTtl .fontJNS{
	display: inline-block;
	padding: 0 0 0 0.5em;
	font-size: 61px;
	color: #e50012;
}
[data-scroll-direction="horizontal"] [data-scroll-container] {
	white-space: nowrap;
	overflow: hidden;
	overflow-x: scroll;
	 -ms-overflow-style: none;
 scrollbar-width: none;
 min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
 min-height: calc(var(--vh, 1vh) * 100);
}
.contents-wrapper{
	position: relative;
	background-color: #e50012;
}
#section1{
	position: relative;
 padding: 0 0 0 240px;
 min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
 min-height: calc(var(--vh, 1vh) * 100);
}
#section1Inner{
	display: flex;
 min-height: 100vh; /* カスタムプロパティ未対応ブラウザ用のフォールバック */
 min-height: calc(var(--vh, 1vh) * 100);
	position: relative;
}
.contents-wrapper figure {
	height: 100%;
}
.contents-wrapper img {
	max-width: none !important;
	width: auto !important;
	height: 100vh !important;
}




article .btn{
	display: inline-block;
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 100;
}
article .labelTxt{
	width: 100px;
	height: 23px;
	transition:all 0.4s ease 0.2s;
}
.end article .labelTxt{
	display: none;
}
article .labelTxt img{
	width: 100px !important;
	height: 23px !important;
}
article .label{
	display: none;
	padding: 5px 0 5px 30px;
	background: url("../img/arw_black.png") no-repeat left center;
	background-size: 20px 20px;
	font-size: 16px;
	transition:all 0.4s ease 0.2s;
}
.end article .label{
	display: inline-block;
}


	.boxSp{
		display: none;
	}
/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:899px){
/*=============================================================
 #mainVisual
=============================================================*/	
#header {
	background: #000;
}
#header h1 a span.txt{
 color: #fff !important;
}
#container .pageTtl{
	position: absolute;
	top: 82px;
	left: 25px;
	font-size: 16px;
}
#container .pageTtl h1{
	display: flex;
	align-items: center;
	text-shadow: #000 0px 0 8px;
}
#container .pageTtl .fontJNS{
	font-size: 32px;
}	
#section1{
	position: relative;
 padding: 0 0 0 0;
}
	.contents-wrapper{
		display: none;
	}
	
	
.boxSp{
	position: relative;
	display: block;
	background-color: #000;
	padding: 160px 0 0;
}
.boxSp figure {
	display: block;
}
.boxSp img {
	width: 100%;
	height: auto;
}
article	.boxSp .btn{
	display: none;
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 100;
	transition:all 0.4s ease 0.2s;
}
.end article	.boxSp .btn{
	display: inline-block;
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 100;
	transition:all 0.4s ease 0.2s;
}
article .label{
	display: inline-block;
	padding: 5px 0 5px 30px;
	background: url("../img/arw_black.png") no-repeat left center;
	background-size: 20px 20px;
	font-size: 16px;
}
	
}