@import url('https://fonts.googleapis.com/css2?family=Averia+Serif+Libre&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');

@media screen and (max-width: 767px) {
	html{
		height: 100%;
	}
	body{
	height: 100%;

	}

	.sp{
		display: inline-block;
	}

	.sp_b{
		display: block;
	}

	.vsp{
		display: none;
	}

	.pc, .pc_b{
		display: none;
	}
	
	
	#top_sp_box{
		width: 100%;
		padding-top: 0;
		background-color: #1c377a;
	}
	
	
	.top_cc1_sp{
		width: 14.05%;
		height: auto;
		position: absolute;
		margin-top: 46.7%;
		margin-left: 2.0%;
		z-index: 20;
	}
	
	.top_cc2_sp{
		width: 84.9%;
		height: auto;
		position: absolute;
		margin-top: 2.5%;
		margin-left: 1.0%;
		z-index: 20;
	}

	.top_logoset_sp{
		width: 100%;
		height: auto;
		position: absolute;
		margin-top: 69.1%;
		margin-left: 18.3%;
		z-index: 20;
	}

	.top_koukai_sp{
		width: 95%;
		height: auto;
		display: block;
		margin: 10px auto;
	}
	
	.top_sp_bg{
		width: 100%;
		height: auto;
		margin-top: 0px;
		margin-left: 0px;
		display: block;
		z-index: 10;
	}
	
	.kino_box{
		width: 237px;
		height: 17px;
		margin: 15px auto 20px auto;
	}
	#bnr_sp_box{
		width: 100%;
		text-align: center;
	}
	
	#bnr_sp_box img{
		display: block;
		margin: 0 auto 10px auto;
	}

	#trailer_sp_box{
		width: 100%;
		text-align: center;
		margin-bottom: 0px;
		color: #fff;
		padding-top: 20px;
		padding-bottom: 20px;
	}
	
	#trailer_sp_box img{
		width: 90%;
		height: auto;
		margin: 0 auto 15px;
	}
	
	
	
	#trailer_sp_box h3{
		font-family: 'Bebas Neue', cursive;
	}
	

	#trailer_sp_box iframe {
		width: 90%;
		height: calc(100vw * 0.6);
		margin: 0 auto;
	}
	
	.movie_nav{
		width: 90%;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		margin: 0 auto;
		padding: 0;
	}

	.movie_nav_box{
		width: 50%;
		padding: 1px;
		
	}

	.movie_nav_box_long{
		width: 100%;
		padding: 1px;
	}

	.movie_nav_btn{
		display: block;
		min-height: 40px;
		line-height: 40px;
		letter-spacing: 3px;
		text-align: center;
		text-decoration: none;
		background: #4869b8;
		font-family: 'Noto Sans JP', sans-serif;
	}

	.movie_nav_btn.selected {
		background: #fff;
	}

	a.movie_nav_btn:link,
	a.movie_nav_btn:visited
	{
		color: #fff;
	}

	a.movie_nav_btn.selected:link,
	a.movie_nav_btn.selected:visited
	{
		color: #1c3879;
	}

	.movie_nav2 .movie_nav_btn,
	.movie_nav3 .movie_nav_btn,
	.movie_nav4 .movie_nav_btn{
		line-height: 1.1em;
		font-size: 80%;
		letter-spacing: 0.1em;
		padding-top: 12px;
	}
	
	.movie_nav3 .movie_nav_btn,
	.movie_nav4 .movie_nav_btn{
		padding-top: 5px;
	}
	
	.movie_nav5 .movie_nav_btn{
		font-size: 80%;
	}
	
	
	
	
	
	
	
	
/*-----Sub-------*/


.sub_box{
	width: 100%;
	min-width: inherit;
	margin-left: auto;
	margin-right: auto;
	background-position: center top;
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;			
}

.in_box{
	margin: 0 auto;
	width: 100%;
	padding-top: 10px;
}

.txt_box{
	font-size: 12pt;
	line-height: 2.1em;
	text-align: justify;
	text-justify: inter-ideograph;
}


.pad_lr{
	padding-left: 13px;
	padding-right: 13px;
}

/*-----tw_box-------*/
#tw_box{
	padding-bottom: 50px;
	
}
	
#tw_box .in_box{
	width: 95%;
}

#tw_box ::-webkit-scrollbar {
    width: 10px;
}

#tw_box ::-webkit-scrollbar-track {
  border-radius: 10px;
  box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
}

#tw_box ::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
}


/*-----INTRODUCTION-------*/

	#intro_box{
		padding-bottom: 30px;
		background-image:url(../images/intro_bg_sp.jpg);
		background-position: center top;
		background-repeat: no-repeat;
	}
	
	.intro{
		background-image: url(../images/intro_bg_sp.jpg);
		background-position: center bottom;
		background-repeat: no-repeat;
		background-size: auto 100%;
/*		padding-bottom: 450px;*/
		padding-bottom: 120%;
	}
	
	
	.intro h3{
		margin-top: 30px;
		margin-bottom: 30px;
	}
	
	.intro_lead1{
		font-size: 14pt;
	}
	
	.intro_lead2{
		font-size: 13pt;
		margin-top: 24px;
	}
	
	
	
	.intro_ptbox{
		position: relative;
		margin-top: 0px;
		margin-left: 0px;
	}
	
	.pre_intro_ptbox{
		width: 85%;
		margin: 20px auto 0;
	}

	.pre_intro_pt{
		width: 100%;
		height: auto;
	}
	
	.h3_box{
		width: calc(100% - 26px);
		margin-left: 13px;
		margin-top: 10px;
	}
	
	.h3_en{
		text-align: center;
		padding-right: 0;
	}
	
	.h3_jp{
		text-align: center;
		padding-right: 0;
	}
	
	#cmt_box .h3_jp{
		padding-right: 0;
	}
	
	

	#intro_box .txt_box{
		margin-top: 30px;
		margin-bottom: 70px;
	}


	.intro_lead{
		font-size: 14pt;
		line-height: 1.6em;
		margin-bottom: 30px;
	}

	#story{
	}
	

	.story_txt{
		width: 100%;;
		margin-top: -154px;
	}
	
	.story_lead{
		font-size: 16pt;
		text-align: center;
	}
	
	.toha_txt{
		margin-top: 55px;
		width: 100%;;
		color: #fff;
		padding-bottom: 50px;
	}


#slide_photo_box_sp{
	position: relative;
	width: 100%;
	height: 150px;
	margin: 0 auto 0 auto;
	overflow: hidden;
	z-index: 20;
}


.photo_slider_sp{
	width: 5556px;
	height: 150px;
	background-repeat:repeat-x;
	position:absolute;
	margin-top:0;
	margin-left:0;
	z-index:20;
	align-content:flex-start;
	background-image: url(/images/scrl_pt_sp.jpg);
}

	
	
	
	/*-----COMMENT-------*/
	#cmt_box{
		padding-bottom: 80px;
	}

	.pre_cmt_pt{
		width: 100%;
		height: auto;
	}
	
	#cmt_box .txt_box{
		margin-top: 30px;
		margin-bottom: 0px;
	}

	.cmt_ptbox{
		position: relative;
		margin-top: 0px;
		margin-left: 0px;
	}
	
	.pre_cmt_ptbox{
		width: 85%;
		margin: 20px auto 0;
	}

	.pre_cmt_pt{
		width: 100%;
		height: auto;
	}

	/*------- CAST ----------------*/
	#cast_box h3{
		margin-bottom: 20px;
	}
	
	.cast_inbox{
		padding: 0 13px;
/*		display: block;*/
	}
	
	.cast_txtbox{
		width: 45%;
		min-width: inherit;
		margin: 0 2.0% 4%;
	}

	.cast_ptname{
		width: 18%;
		font-size: 5.0vw;
	}
	
	.cast7 .cast_ptname, .cast8 .cast_ptname, .cast9 .cast_ptname, .cast10 .cast_ptname, .cast11 .cast_ptname, .cast12 .cast_ptname, .cast13 .cast_ptname, .cast14 .cast_ptname, .cast15 .cast_ptname{
		font-size: 5.0vw;
	}
	.btn_plus1{
		width: 16.9%;
		height: auto;
	}
	
	
	.cast_proftx{
		width: 16%;
		height: 16%;
		font-size: 27pt;
		line-height: 0.5em;
	}
	
	/*-----STAFF-------*/
	#staff_box h3{
		margin-bottom: 20px;
	}

	.staff_inbox{
		padding: 0 13px;
		display: block;
	}
	
	.staff_txtbox{
		width: 100%;
		height: auto;
		min-width: inherit;
	}
	
	.staff_ptbox{
		height: auto;
	}
	
	.btn_plus2{
		width: 8.4%;
		height: auto;
	}
	
	.staff_proftx{
		width: 10%;
		height: 27%;
		font-size: 27pt;
		line-height: 0.5em;
	}
	
	.staff_pt1{
		width: 23.9%;
		height: 100%;
	}
	
	.staff_namebox{
		width: 260px;
		margin: 0px auto 0;
	}
	
	.staff_roll{
		padding-bottom: 8px;
	}

	.staff_name{
		font-size: 16pt;
		padding-top: 8px;
	}


	/*----------CAST Mado------------*/

	#white_layer{
		position: fixed;
		z-index: 15000;
		background-color: #000;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		filter: alpha(opacity=0);
		opacity: 0.0;
		display: none;
		margin:0 auto;
		cursor: pointer;

	}


	#cast_mado{
		position: absolute;
		color: #000;
		background-color: #fff;
		z-index: 20000;
		background-image: url(../images/btn_tojiru1.png);
		background-size: 25px 25px;
		background-repeat: no-repeat;
		background-position: top 4px right 4px;
		cursor: pointer;
		display: none;
		-ms-filter: "alpha( opacity=0 )";
		filter: alpha( opacity=0 );
		opacity: 0.0;
	/*	box-shadow:0px 0px 6px 1px rgba(0, 0, 0, 0.35);*/
	}

	#cast_mado.staff_mado{
		color: #fff;
		background-color: #1c3879;
		background-image: url(../images/btn_tojiru2.png);
	}



	.cast_mados{
		width: 100%;
	/*	height: 700px;*/
	/*	position: absolute;*/
		margin-top: 0px;
		margin-left: 0px;
		display: none;
		z-index: 20000;
		padding: 15px
	}

	
	.cast_mados .txt_box{
		display: block;
	}
	
	.cast_mados .cast_ptm{
		width: 85%;
		margin: 0 auto 15px;
		display: block;
	}
	
	
	/*------- FOOTER ----------------*/
	#footer{
		background-color: #1c3879;
		padding-top: 50px;
		padding-bottom: 50px;
		text-align: center;
	}

	.sub_logo{
		width: 90%;
		height: auto;
	}


	.btn_back{
		margin-top: 30px;
	}
	

.btn_back_{
	width: 175px;
	height: 175px;
	text-align: center;
	background-color: #000;
	color: #fff;
font-family: 'Bebas Neue', cursive;
	font-size: 16pt;
	padding-top: 52px;
	margin: 0 auto;
	cursor: default;
	transition: 0.7s;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
}

.btn_back:hover{
	transition: 0.7s;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-ms-filter: "alpha( opacity=80 )";
	filter: alpha( opacity=80 );
	opacity: 0.8;
	cursor: pointer;
}









	
	
	
	
	#ftr_sp_box{
		width: 100%;
		text-align: center;
		padding-bottom: 20px;
		background-color: #1c377a
	}
	
	
	.pre_bl_sp{
		width: 95%;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	
	#ftr_sp_bnr{
		width: 100%;
		text-align: center;
		padding-top: 20px;
	}
	
	#ftr_sp_bnr img{
		width: 90%;
		margin: 0 auto 8px auto;
	}
	
	#top_sp_tw{
		display: inline-block;
		margin-top: 0px;
		margin-right: auto;
		margin-left: auto;
		margin-bottom: 0px;
		padding-right: 0px;
		padding-left: 0px;
		padding-bottom: 10px;
		clear: both;
		height: 100px;
/*		width: 233px;*/
/*		width: 157px;*/
	}
	
	.fb{
		margin-top: 10px;
		margin-right: 0px;
		margin-bottom: 0;
		float: left;
		margin-left: 0;
	}


	.tw{
		margin-top: 10px;
		margin-right: 0px;
		margin-left: 5px;
		margin-bottom: 0;
		float: left;
		width: 36px;
	}


	.lineb{
		margin-top: 10px;
		margin-right: 0px;
		margin-left: 5px;
		margin-bottom: 0;
		float: left;
		width: 37px;
	}

	.eigacom{
		margin-left: 5px;
		text-align: left;
		float: left;
		margin-top: 10px;
		height: 60px;
/*		width: 36px;*/
	}
	


	
}

@media screen and (max-width: 330px) {
	.vsp{
		display: inline-block;
	}

}
