.block_wrapper{
	//border: 1px solid red;
	}

.block_wrapper{
	width: 100%;
	min-height: 100vh;
	height: auto;
	display: block;
	position: relative;
	}
.block_wrapper.codemode{
	min-height: 0;
	padding: 0;
	z-index: 5!important;
	}

.block_wrapper video{
/*
	width: auto;
	height: calc(100vh - 100px);
*/
	width: 100vw;
	height: auto;
	margin: 0 auto;
	padding: 0;
	vertical-align: top;
	}
.block_wrapper .inner_fill div.wrap_text{
	width: 100vw;
	max-width: 1024px;
	height: auto;
	margin: 0 auto;
	/*border: 1px solid red;*/
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	}

.block_wrapper .inner_fill p{
	width:auto;
	display: inline-block;
	text-align: left;
	color: #fff;
	left:auto;
	right: auto;
	top:auto;
	bottom:auto;
	}
.block_wrapper p strong,
.block_wrapper p span{
	margin-bottom: 10px;
	}
.block_wrapper .inner_fill p strong{
	font-size: 40px;
	line-height: 60px;
	}
.block_wrapper .inner_fill p span{
	font-size: 20px;
	line-height: 24px;
	}

.block_wrapper .inner_fill{
	display: block;
	margin: 0 auto;
	width: 100vw;
	/*max-width: 1024px;*/
	height: auto;
	/*max-height: calc(100vh - 200px);*/
	position: absolute;
	top:0;
	left: 0; right: 0;
	}
.block_wrapper .inner_fill div.wrap_fixed{
	position: relative;
	display: inline-block;
	/*border: 1px solid red;*/
	width: 100vw;
	max-width: 1024px;
	height: calc(100vh - 100px);
	}

.block_wrapper.Title_FadeIn_Out .inner_fill p{
	text-align: center;
	top: 45%;
	}
.block_wrapper.special_image img.vis01{
	max-width: 80vw;
	height: auto;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	opacity: 0;
	top: 0;
	bottom: auto;
	}
.block_wrapper.special_image .inner_fill .wrap_text{
	height: calc(100vh - 100px);
	}

/*
 -------------------------------- -------------------------------- --------------------------------  block_wrapper.movie
*/

	.block_wrapper.movie p{
		position: absolute;
		display: inline-block;
		top:40%;
		left: 5%;
		margin: 0 auto 0 auto;
		max-width: 1024px;
		}
	.block_wrapper .pc{ display: block!important; }
	.block_wrapper .smt{ display: none!important; }

/*
 -------------------------------- -------------------------------- --------------------------------  block_wrapper.Title_FadeIn_Out
*/

	.block_wrapper.Title_FadeIn_Out p{
		position: fixed;
		display: block;
		z-index: 1;
		top:auto;
		bottom:50vh;
		left:0;
		right: 0;
		margin: 0 auto;
		max-width: 1024px;
		width: calc(100% - 20px);
		text-align: center;
		}

/*
 -------------------------------- -------------------------------- --------------------------------  block_wrapper.Slide_from_both_sides
*/
	.block_wrapper.Slide_from_both_sides .inner_fill div.wrap_text{
		position: absolute;
		height: calc(100vh - 100px);
		}

	.block_wrapper.Slide_from_both_sides p{
		margin: 0 auto;
		text-align: center;
		position: absolute;
		top: calc(50% - 150px);
		left: 0;
		right: 0;
		}
	.block_wrapper.Slide_from_both_sides .inner_fill p strong{
		opacity: 1;
		}
/*
 -------------------------------- -------------------------------- --------------------------------  block_wrapper.block_first_tex_next_image
*/
	.block_wrapper .inner_fill div.wrap_fixed{
		max-width: none;
		}
	.block_wrapper.block_first_tex_next_image .inner_fill p{
		display: block;
		margin: 0 auto;
		position: absolute;
		top:25vh;
		opacity: 1;
		max-width: 1024px;
		width: calc(100% - 20px);
		}
	.block_wrapper.block_first_tex_next_image .inner_fill p strong{
		text-align: left;
		margin: 0;
		}
	.block_wrapper.block_first_tex_next_image .inner_fill img{
		opacity: 0;
		width: 100vw;
		max-width: none;
		height: auto;
		display: block;
		margin: 0 auto;
		}


/*
 -------------------------------- -------------------------------- ------------------------- block_wrapper.block_first_image_next_tex
*/

	.block_wrapper.first_image_next_tex .inner_fill p{
		display: inline-block;
		margin: 0 auto;
		position: absolute;
		top:40%;
		left: 0;
		right: 0;
		opacity: 1;
		width:auto;
		max-width: none;
/*border: 1px solid yellow;*/
		}
	.block_wrapper.first_image_next_tex .inner_fill p strong{
		text-align: center;
		}
	.block_wrapper.first_image_next_tex .inner_fill img{
		opacity: 1;
		width: 100vw;
		max-width: none;
		height: auto;
		display: block;
		margin: 0 auto;
		}
	.block_wrapper.first_image_next_tex .inner_fill .rep_annotation{
		width: 100%;
		max-width: 1024px;
		height:100%;
		position: relative;
		margin: 0 auto;
		top:0; bottom:0;
		left:0; right:0;
		opacity: 1;
		}
	.block_wrapper.first_image_next_tex .inner_fill span.tex-annotation{
		font-size: 12px;
		line-height: 14px;
		opacity: 0;
		}

/*
 -------------------------------- -------------------------------- ------------------------- first_image_next_tex_with_zoom
*/

	.block_wrapper.first_image_next_tex_with_zoom .inner_fill p{
		display: inline-block;
		margin: 0 auto;
		position: absolute;
		top:40%;
		left: 5%;
		right: auto;
		opacity: 1;
		width:auto;
		max-width: none;
/*border: 1px solid yellow;*/
		}
	.block_wrapper.first_image_next_tex_with_zoom .inner_fill p strong{

		}
	.block_wrapper.first_image_next_tex_with_zoom .inner_fill img.background{
		opacity: 1;
		width: 100vw;
		max-width: none;
		height: auto;
		display: block;
		margin: 0 auto;
		}
	.block_wrapper.first_image_next_tex_with_zoom .inner_fill img.zoom_img{
		height: 150vh;
		display: inline-block;
		margin-top: 5%;
		margin-left: 25%;
		}




/*
 -------------------------------- -------------------------------- ------------------------- first_image_next_more_images
*/
	.block_wrapper.first_image_next_more_images .inner_fill div.wrap_fixed{
		height: 80vh;
		max-width: none;
		}

	.block_wrapper.first_image_next_more_images .inner_fill p{
		display: inline-block;
		margin: 0 auto;
		position: absolute;
		top:40%;
		left: 0;
		right: 0;
		opacity: 1;
		width:auto;
		max-width: none;
/*border: 1px solid yellow;*/
		}
	.block_wrapper.first_image_next_more_images .inner_fill p strong{
		text-align: center;
		}
	.block_wrapper.first_image_next_more_images .inner_fill p span{
		text-align: center;
		}

	.block_wrapper.first_image_next_more_images .inner_fill img.background{
		opacity: 1;
		width: 100vw;
		max-width: none;
		height: auto;
		display: block;
		margin: 0 auto;
		}
	.block_wrapper.first_image_next_more_images .inner_fill img.img_order{
		opacity: 0;
		position: absolute;
		top: 0;
		bottom:auto;
		left: 0;
		right: 0;
		margin: auto auto;
		}

	.block_wrapper.first_image_next_more_images .inner_fill .rep_annotation{
		width: 100%;
		max-width: 1024px;
		height:100%;
		position: relative;
		margin: 0 auto;
		top:0; bottom:0;
		left:0; right:0;
		opacity: 1;
		}
	.block_wrapper.first_image_next_more_images .inner_fill span.tex-annotation{
		font-size: 12px;
		line-height: 14px;
		opacity: 0;
		}


/*
 -------------------------------- -------------------------------- --------------------------------  block_wrapper.title_and_Bg_images
*/

	.block_wrapper.title_and_Bg_images .inner_fill p{
		display: block;
		margin: 0 auto;
		position: absolute;
		top:25vh;
		opacity: 1;
		max-width: 1024px;
		width: calc(100% - 20px);
		}
	.block_wrapper.title_and_Bg_images ul.rep_displayed_in_order_images{
		padding-top:250vh;
		letter-spacing: -0.4em;
		max-width: 1024px;
		margin: 0 auto;
		}
	.block_wrapper.title_and_Bg_images ul.rep_displayed_in_order_images li{
		display: inline-block;
		letter-spacing: normal;
		width: 50%;
		margin-bottom:100px;
		text-align: center;
		vertical-align: top;
		}
	.block_wrapper.title_and_Bg_images ul.rep_displayed_in_order_images li img{
		width: 80%;

		}
	.block_wrapper.title_and_Bg_images ul.rep_displayed_in_order_images li:nth-child(2n){
		margin-top: 100px;
		}
	.block_wrapper.title_and_Bg_images ul.rep_displayed_in_order_images li:nth-child(2n+1){
		margin-top: -50px;
		}




	.block_wrapper.special_image p{
		position: absolute;
		display: inline-block;
		top:30%;
		bottom:auto;
		left:0;
		right: 0;
		margin: 0 auto;
		max-width: 1024px;
		opacity: 1;
		z-index: 1;
		}
	.block_wrapper.special_image p span{

		}

.block_wrapper strong{
	display: block;
	font-size: 80px;
	font-weight: normal;
	line-height: 100px;
	}
.block_wrapper strong{
	margin-top: 0;
	}
.block_wrapper p span{
	opacity: 0;
	}

/*
	 -------------------------------- -------------------------------- --------------------------------  special_image_fadeなし
*/
.block_wrapper.special_image_normal{
	min-height: initial;
	min-height: auto;
	}

.block_wrapper.special_image_normal .inner_fill{
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	}
.block_wrapper.special_image_normal img.vis01.pc,
.block_wrapper.special_image_normal img.vis01.sp{
	margin: 0 auto;
	vertical-align: top;
	}

.block_wrapper.special_image_normal img.vis01.pc{

	}
.block_wrapper.special_image_normal img.vis01.sp{
	display: none;
	}
@media (max-width: 768px) {
.block_wrapper.special_image_normal img.vis01.pc{display: none;}
.block_wrapper.special_image_normal img.vis01.sp{display: block;}
}

/*
	 -------------------------------- -------------------------------- --------------------------------  wrap_halfvis_title
*/

ul.wrap_halfvis_title{
	max-width: 1024px;
	margin: 0 auto 40px auto;
	letter-spacing: -0.4em;
	}
ul.wrap_halfvis_title li{
	position: relative;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	width:50%;
	}

ul.wrap_halfvis_title li p{
	color: #fff;
	display: inline-block;
	font-size: 22.5px;
	line-height: 24px;
	text-align: left;
	height: 48px;
	}
@media (max-width: 768px) {

ul.wrap_halfvis_title li{
	width: 100%;
	}
ul.wrap_halfvis_title li p{
	width:calc(100% - 30px);
	}
}

/*
		 -------------------------------- -------------------------------- --------------------------------  list_toggle
	*/

ul.list_toggle{
	letter-spacing: -0.4em;
	margin: 0 auto;
	letter-spacing: -0.4em;
	max-width: 1024px;
	}
ul.list_toggle li{
	position: relative;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width:calc((100% - 40px) / 3);
	margin-right:20px;
	margin-bottom: 20px;
	}
ul.list_toggle li img{
	display: inline-block;
	margin-bottom: 20px;
	}
ul.list_toggle li:nth-child(3n){
	margin-right: 0;
	}
ul.list_toggle li p{
	text-align: left;
margin: 0;
margin-bottom: 10px;
	}
ul.list_toggle li p strong:after{
	content: "▽";
	display: inline-block;
	font-size: 11px;
	margin-left: 5px;
	}
ul.list_toggle li p strong.open:after{
	content: "△";
	}

ul.list_toggle li p strong,
ul.list_toggle li p span{
	display: block;
	width: 100%;
	}
ul.list_toggle li p strong{
	display: block;
	margin-bottom: 10px;
	font-size: 16px;
cursor: pointer;
	}
ul.list_toggle li p strong:hover{
	color: #ff6600;
	}

ul.list_toggle li p span{
	display: none;
	font-size: 13px;
	}

@media (max-width: 768px) {
	
ul.list_toggle li{
	margin: 0 10px;
	width: calc(100% - 20px);
	}
ul.list_toggle li img{
	width: 100%;
	margin-bottom: 10px;
	}
ul.list_toggle li p{
	margin-bottom: 30px;
	}

}

/*
		 -------------------------------- -------------------------------- --------------------------------  list_normal
	*/

ul.list_normal{
	letter-spacing: -0.4em;
	margin: 0 auto;
	letter-spacing: -0.4em;
	max-width: 1024px;
	}
ul.list_normal li{
	position: relative;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	width:calc((100% - 45px) / 4);
	margin-right:15px;
	margin-bottom: 20px;
	}
ul.list_normal li img{
	display: inline-block;
	margin-bottom: 20px;
	}
ul.list_normal li:nth-child(4n){
	margin-right: 0;
	}
ul.list_normal li p{
	text-align: left;
margin: 0;
margin-bottom: 10px;
	}
ul.list_normal li p strong,
ul.list_normal li p span{
	display: block;
	width: 100%;
	}
ul.list_normal li p strong{
	display: block;
	margin-bottom: 10px;
	font-size: 16px;
	}

ul.list_normal li p span{
	display: none;
	font-size: 13px;
	}

@media (max-width: 768px) {
	
ul.list_normal li{
	margin: 0 0 20px 0;
	width:calc(100% - 30px);
	}
ul.list_normal li img{
	width: 100%;
	margin-bottom: 10px;
	}
ul.list_normal li p{
	margin-bottom: 30px;
	}

}


/*
	 -------------------------------- -------------------------------- --------------------------------  special_photogallery
*/

div.wrap_special_photogallery{
	max-width: 1024px;
	margin: 0 auto;
	}

ul.special_photogallery{
	letter-spacing: -0.4em;
	margin-bottom: 0;
	}
ul.special_photogallery li{
	position: relative;
	letter-spacing: normal;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	width:50%;
	}
ul.special_photogallery li:nth-child(1){
	width: 325px;
	}
ul.special_photogallery li:nth-child(2){
	width: calc(100% - 325px);
	background: #fff;
	}

ul.special_photogallery li p{
	text-align: left;
	padding: 0 25px;
	}
ul.special_photogallery li p strong{
	display: block;
	margin-bottom: 20px;
	}

.wrap_thumb_special_img{
	letter-spacing: -0.4em;
	padding: 10px 10px 5px 10px;
	}
.wrap_thumb_special_img img{
	vertical-align: top;
	letter-spacing: normal;
	width: calc((100% - 35px) / 8);
	margin-right: 5px;
	margin-bottom: 10px;
	display: inline-block;
	}
.wrap_thumb_special_img img:nth-child(8n){
	margin-right: 0;
	}
.wrap_main_special_img.pc{

	}
.wrap_main_special_img.sp{
	display: none;
	}

@media (max-width: 768px) {

li.wrap_main_special_img.pc{ display: none!important; }
.wrap_main_special_img.sp{ display: block; }

ul.special_photogallery li p{
	padding-top: 5px;
	}
ul.special_photogallery li:nth-child(1),
ul.special_photogallery li:nth-child(2){
	width: 100%;
	display: block;
	}
.wrap_thumb_special_img img,
.wrap_thumb_special_img img:nth-child(2n){
	width: calc((100% - 30px) / 4);
	margin-right: 10px;
	}
.wrap_thumb_special_img img:nth-child(4n){
	margin-right: 0;
	}

}


/*
 --------------------------------  animation Setting

*/
/*テキストフェード*/
.block_wrapper strong,
.block_wrapper p span{
	display: block;
	opacity: 0;
	}
/*スクロール*/
.block_wrapper p{
	display: block;
	margin-bottom: -200px;
	}

/*
 --------------------------------  // animation Setting

*/


.fadeTex{
	animation-name: fadeInAnime;
	animation-fill-mode:forwards;
	animation-duration:1.0s;
	animation-delay: 0.5s;
	animation-timing-function:ease;
	}
.scrollTex{
	animation-name: scrollInAnime;
	animation-fill-mode:forwards;
	animation-duration:1.0s;
	animation-delay: 0.0s;
	animation-timing-function:ease;
	}
.fadeTex_only{
	animation-name: fadeInAnime;
	animation-fill-mode:forwards;
	animation-duration:2.0s;
	animation-delay: 0.0s;
	animation-timing-function:ease;
	}

.fadeOutTex{
	animation-name: fadeOutAnime;
	animation-fill-mode:forwards;
	animation-duration:1s;
	animation-delay: 1.0s;
	}
.fadeIn_and_Out{
	animation-name: fadeIn_and_Out_Anime;
	animation-fill-mode:forwards;
	animation-duration:2s;
	animation-delay: 0.0s;
	}
.fadeVis{
	animation-name: fadeInAnime;
	animation-fill-mode:forwards;
	animation-duration:3s;
	animation-delay: 0.0s;
	}
.fadeVis.vis01,
.fadeVis.vis02,
.fadeVis.vis03{
	animation-name: fadeInAnime;
	animation-fill-mode:forwards;
	animation-delay: 0s;
	animation-duration:5s;
	}
.fadeVis.vis01{
	z-index: 10;
	}
img.zoom_img.zoomOut{
	animation-name: zoomOutAnime;
	animation-fill-mode:forwards;
	animation-delay: 0s;
	animation-duration:0.75s;
	}

@keyframes zoomOutAnime{
  0% {
	height: 150vh;
	margin-left: 25%
  }

  100% {
	height: 60vh;
	margin-left: 45%
  }
}
	@keyframes zoomOutAnime_sp{
	  0% {
		height: 100vh;
		margin-top: 35%;
		margin-left: 0;
	  }
	
	  100% {
		height: 60vh;
		  margin-top: 30%;
		margin-left: 5%
	  }
	}

@keyframes fadeInAnime{
  0% {
	opacity: 0;
  }

  100% {
	opacity: 1;
  }
}
@keyframes scrollInAnime{
  0% {
	margin-bottom: -200px;
  }

  100% {
	margin-bottom: 0px;
  }
}
@keyframes fadeIn_and_Out_Anime{
  0% {
	opacity: 0;
  }
  70% {
	opacity: 1;
  }
  100% {
	opacity: 0;
  }
}

@keyframes fadeInAnime_only{
  0% {
	opacity: 0;
  }

  100% {
	opacity: 1;
  }
}
@keyframes fadeOutAnime{
  0% {
	opacity: 1;
  }

  100% {
	opacity: 0;
  }
}
/*
 -------------------------------- -------------------------------- --------------------------------  display on
*/
.elem {
  position: relative;
/*
  width: 300px;
  height: 300px;
  margin: 500px auto 0;
  background: rgb(0, 125, 185);
*/
  opacity: 0.1;
  transition: 1s;
}

.isAnimate {
  opacity: 1;
}


.gr_img_slide {
	width: 100%;
	height: 100vh;
	}
.gr_img_slide .img_left,
.gr_img_slide .img_right{
	position: fixed;
	top:auto;
	bottom:0;
	display: block;
	opacity: 0.5;
	left: auto;
	right: auto;
	height: 80%;
	}
.gr_img_slide .img_left{
	left: -200vw;
	}
.gr_img_slide .img_right{
	right: -200vw;
	}

.gr_img_slide strong{
	display: block;
	position: absolute;
	top:0;
	bottom:0;
	left: 0; right: 0;
	margin: auto auto;
	font-size: 40px;
	font-weight: normal;
	line-height: 7vh;
	color: #fff;

	margin-bottom: 30px;

	z-index: 10;
	
	/*animation Setting*/
	opacity: 0;
	margin-top: 100px;
	}


.slideVis_left{
	animation-name: slideVis_left;
	animation-fill-mode:forwards;
	animation-duration:1s;
	animation-delay: 0.0s;
	left: -200vw;
	}
.slideVis_right{
	animation-name: slideVis_right;
	animation-fill-mode:forwards;
	animation-duration:1s;
	animation-delay: 0.5s;
	right: -200vw;
	}
@keyframes slideVis_left{
  0% {
	opacity: 0;
	left: -200vw;
  }
  100% {
	opacity: 1;
	left: 0;
  }
}
@keyframes slideVis_right{
  0% {
	opacity: 0;
	right: -200vw;
  }

  100% {
	opacity: 1;
	right: 0;
  }
}

@keyframes slideVis_left_sp{
  0% {
	opacity: 0;
	left: -200vw;
  }
  100% {
	opacity: 1;
	left: -20vw;
  }
}
@keyframes slideVis_right_sp{
  0% {
	opacity: 0;
	right: -200vw;
  }

  100% {
	opacity: 1;
	right: -20vw;
  }
}


/* //Fixed Setting */


 
#specialblock_1.block_wrapper .inner_fill.fixed{
	position: fixed;
	top:54px;
	left: 0;
	right: 0;
	margin: 0 auto!important;
	width: calc(100vw - 0px);
	}
 
#specialblock_1{
	z-index: 1;
	padding-top:54px;
	margin-top:-54px;
	}



 
#specialblock_2.block_wrapper .inner_fill.fixed{
	position: fixed;
	top:54px;
	left: 0;
	right: 0;
	margin: 0 auto!important;
	width: calc(100vw - 0px);
	}
 
#specialblock_2{
	z-index: 2;
	padding-top:54px;
	margin-top:-54px;
	}



 
#specialblock_3.block_wrapper .inner_fill.fixed{
	position: fixed;
	top:54px;
	left: 0;
	right: 0;
	margin: 0 auto!important;
	width: calc(100vw - 0px);
	}
 
#specialblock_3{
	z-index: 3;
	padding-top:54px;
	margin-top:-54px;
	}



 
#specialblock_4.block_wrapper .inner_fill.fixed{
	position: fixed;
	top:54px;
	left: 0;
	right: 0;
	margin: 0 auto!important;
	width: calc(100vw - 0px);
	}
 
#specialblock_4{
	z-index: 4;
	padding-top:54px;
	margin-top:-54px;
	}



 
#specialblock_5.block_wrapper .inner_fill.fixed{
	position: fixed;
	top:54px;
	left: 0;
	right: 0;
	margin: 0 auto!important;
	width: calc(100vw - 0px);
	}
 
#specialblock_5{
	z-index: 101;
	padding-top:54px;
	margin-top:-55px;
	}



/*
------------------------------------------------------------------------------------------------------------------------------ SmartPhpne
*/
@media (max-width: 768px) {

	.block_wrapper video{
	width: 100vw;
	height: auto;}

	.block_wrapper.first_image_next_tex_with_zoom .inner_fill p{
		top: 5%;
		}

	.block_wrapper .smt{ display: block!important; }
	.block_wrapper .pc{ display: none!important; }

	.block_wrapper .inner_fill div.wrap_text{

		}

	.block_wrapper .inner_fill p{
		margin-top: 20px;
		width: calc(100% - 10%);
		}
	.block_wrapper .inner_fill p strong{
		font-size: 35px;
		line-height: 45px;
		}
	.block_wrapper .inner_fill p span{
		font-size: 18px;
		line-height: 22px;
		}

	.block_wrapper.special_image p span{font-size: 40px; line-height: 50px;}

	.gr_img_slide .img_left,
	.gr_img_slide .img_right{
		bottom: 60px; max-width: 150%;
		}
	.block_wrapper.special_image p{
		top: 22vh;
		bottom: auto;
		}
	.block_wrapper.special_image img.vis01{
		max-width: 160vw;
		left: -30vw;
		}
.block_wrapper.first_image_next_tex_with_zoom .inner_fill img.zoom_img{
		height: 100vh;
		margin-top: 35%;
		margin-left: 0;
		}

	img.zoom_img.zoomOut{
		animation-name: zoomOutAnime_sp;
		animation-fill-mode:forwards;
		animation-delay: 0s;
		animation-duration:0.75s;
		}

.block_wrapper.first_image_next_tex .inner_fill p,
.block_wrapper.title_and_Bg_images .inner_fill p{
	left: 5%;
	}

.gr_img_slide .img_left,
.gr_img_slide .img_right{
	height: 50%;
	}

.slideVis_left{
	animation-name: slideVis_left_sp;
	animation-fill-mode:forwards;
	animation-duration:1s;
	animation-delay: 0.0s;
	left: -200vw;
	}
.slideVis_right{
	animation-name: slideVis_right_sp;
	animation-fill-mode:forwards;
	animation-duration:1s;
	animation-delay: 0.5s;
	right: -200vw;
	}


}


/*
------------------------------------------------------------------------------------ 個別ブロック
*/


/*独自記述*/

/*---------------

Contra Z ローカルCSS

----------------*/

.wrap-special_content_2021{
background:#000;
}

.wrap_product_all{
	margin-top:-100px;
	}

.block_wrapper .inner_fill{
	position: relative;
	}

.block_wrapper.movie_scroll .inner_fill .wrap_text{
	position: absolute;
	top: auto;
	bottom: 90px;
	}

.block_wrapper .inner_fill p{
	display: block;
	width: 100%;
	text-align: center;
	}
.block_wrapper .inner_fill p strong{
	opacity: 0;
	width: 100%;
	font-size:5em;
	}
.block_wrapper .inner_fill p span{
	opacity: 0;
	}
.block_wrapper .inner_fill p strong,
.block_wrapper .inner_fill p span,
.block_wrapper .inner_fill p span sub{
	font-weight: bold;
	}
.block_wrapper .inner_fill p span sub{
	display: inline-block;
	}

.wrap_fix_nav{
	position: fixed;
	top:auto;
	bottom:20px;
	left:auto;
	right: 20px;
	display: block;
	z-index: 102;
	color:#fff;
	text-align: right;
	touch-action: none;
	}
.wrap_fix_nav.-hide{
	display: none;
}
.wrap_fix_nav a{
	display: inline-block;
	text-align: right;
	color:#fff;
	border-bottom:1px solid #fff;
	padding-bottom: 5px;
	font-size: 12px;
	}
.wrap_fix_nav a:hover{
	color:#ff6600;
	border-color:#ff6600;
	}
@media (max-width: 764px) {

	.wrap_fix_nav{
		top:auto;
		bottom:59px;
		padding:10px;
		width: 50vw;
		left: auto;
		right: 0;
		}

}


.block_wrapper.unprecedented_Power .inner_fill .wrap_text,
.block_wrapper.dynamic_power_system .inner_fill .wrap_text,
.block_wrapper.durapower_chuck .inner_fill .wrap_text{
	position: relative;
	text-align: center;
	display: block;
	width: 100%;
	}
.block_wrapper.unprecedented_Power .inner_fill .wrap_text{
	margin-top: -120px;
	margin-bottom:auto;
	}
.block_wrapper.unprecedented_Power .inner_fill .wrap_text strong{
	font-size:4em;
	margin-bottom:0px;
	}
	.block_wrapper.unprecedented_Power .inner_fill .wrap_text strong.multiline{
	font-size: 2em;
	margin-bottom: 0px;
	}
.block_wrapper.unprecedented_Power .inner_fill .wrap_text span{
	font-size:16px;
	margin-bottom:20px;
	}
.block_wrapper.unprecedented_Power .inner_fill .wrap_text span sub{
	margin: 0; padding: 0;
	font-size:16px;
	vertical-align: baseline;
	}

@media (max-width: 764px) {
	.block_wrapper.unprecedented_Power .inner_fill video{
		margin-top: -50px;
		}
	.block_wrapper.unprecedented_Power .inner_fill .wrap_text{
		margin-top: 50px;
		}
	.block_wrapper.unprecedented_Power .inner_fill .wrap_text strong{
		font-size: 1.8em;
		line-height: 1.1em;
		margin-bottom: 10px;
		}
	.block_wrapper.unprecedented_Power .inner_fill .wrap_text strong.multiline{
		font-size: 1.2em;
		margin-bottom: 10px;
		}
	.block_wrapper.unprecedented_Power .inner_fill .wrap_text span{
		font-size: 0.8em;
		padding: 0 20px;
		}
}

.block_wrapper.dynamic_power_system .inner_fill .wrap_text{
	margin-top: -140px;
	margin-bottom:250px;
	max-width: 900px;
	}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text strong{
		font-size: 3.5em;
		margin-bottom:50px;
		margin-bottom: 20px;
		}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text span{
		display: inline-block;
		max-width: calc(100% - 20px);
		font-size: 16px;
		}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text span sub{
		margin: 0; padding: 0;
		font-size:16px;
		vertical-align: baseline;
		display: inline-block;
		}

@media (max-width: 764px) {
	.block_wrapper.dynamic_power_system .inner_fill video{
		margin-top: -50px;
		}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text{
		margin-top: -30px;
		}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text strong{
		font-size: 1.5em;
		line-height: 1.1em;
		margin-bottom: 10px;
		}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text span{
	
		}

	.block_wrapper.dynamic_power_system .inner_fill .wrap_text span,
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text span sub{
		font-size: 1em;
		font-size: 0.8em;
		padding: 0;
		text-align: left;
		}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text span br{
		display: none;
		}
	.block_wrapper.dynamic_power_system .inner_fill .wrap_text span sub{
		padding: 0;
		font-size: 1em;
		}

}

.block_wrapper.durapower_chuck .inner_fill .wrap_text{
	margin-top: -140px;
	margin-bottom: 290px;
	}
	.block_wrapper.durapower_chuck .inner_fill .wrap_text strong{
		font-size: 3.5em;
		margin-bottom:10px;
		}
	.block_wrapper.durapower_chuck .inner_fill .wrap_text span{
		display: inline-block;
		font-size: 16px;
		max-width: calc(100% - 20px);
		}
	.block_wrapper.durapower_chuck .inner_fill .wrap_text  span sub{
		margin: 0; padding: 0;
		font-size:16px;
		vertical-align: baseline;
		}


@media (max-width: 764px) {

	.block_wrapper.durapower_chuck .inner_fill video{
	margin-top: -50px;
		}
	.block_wrapper.durapower_chuck .inner_fill .wrap_text{
		margin-top: 0px;
		}
	.block_wrapper.durapower_chuck .inner_fill .wrap_text strong{
		font-size: 1.5em;
		line-height: 1.1em;
		margin-bottom: 10px;
		}

			.block_wrapper.durapower_chuck .inner_fill .wrap_text span,
			.block_wrapper.durapower_chuck .inner_fill .wrap_text span sub{
				font-size: 1em;
				font-size: 0.8em;
				padding: 0 10px;
				text-align: left;
				}
			.block_wrapper.durapower_chuck .inner_fill .wrap_text span sub{
				font-size: 1em;
				padding: 0;
				}
		}


.block_wrapper.new_chuck_mechanism{
	position: relative;
	}
.block_wrapper.new_chuck_mechanism .inner_fill{
	margin-top: -20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	}

.block_wrapper.new_chuck_mechanism .inner_fill video.pc{
	max-height: calc(60vh - 50px);
	margin-top: -22px;
	order: 2;
	}

.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text{
	position: static;
	max-width: 1000px;
	display: block;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	order: 1;
	}
	
.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	margin-top: 38px;
	margin-bottom: 0;
	}
.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p strong{
	font-size: 1.5em;
	line-height: 1.5em;
	order: 2;
	}
.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p strong span{
	display: inline-block;
	}
.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p strong.multiline{
	font-size: 2em;
	order: 1;
	}

.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p span.texbox_basic_copy,
.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p span.texbox_basic_copy sub{
	font-size: 16px;
	margin-bottom: 57px;
	order: 1;
	}
.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p span.texbox_basic_copy sub{
	margin: 0; padding: 0;
	vertical-align: baseline;
	}


@media (max-width: 764px) {
	.block_wrapper.new_chuck_mechanism .inner_fill video.smt{
		order: 2;
	}
	.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text{
		position: relative;
		top: 10px;
		}
	.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p strong{
			font-size: 1.2em;
			line-height: 1.2em;
			margin-bottom: 15px;
			}

	.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p {
		margin-top: 0;
	}
	.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p strong.multiline{
		font-size: 1.5em;
		}
	.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p span.texbox_basic_copy,
	.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p span.texbox_basic_copy sub{
		font-size: 1em;
		font-size: 0.8em;
		padding: 0 5px;
		}
	.block_wrapper.new_chuck_mechanism .inner_fill .wrap_text p span.texbox_basic_copy sub{
		font-size: 1em;
		padding: 0;
		}
}

p.comments.onlyComment {
	//background: red;
	margin-top: -80px;
	padding-top: 0;
	z-index: 1000;
	padding-bottom: 100px;
}


/* /独自記述ココまで*/


.wrap_product_all{
	margin-top: -54px;
	z-index: 100;
	position: relative;
	background: #fff;
	padding-top: 100px;
	}

.js_section {
	touch-action: none;
}