@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;
	}

	/*-----Loading-------*/
	#loading {
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0;
		z-index: 999;
		background: #fff;
		text-align: center;
		color: #fff;
		display: none;
	}

	#loading_logo {
		position: absolute;
		width: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	#loading_logo img {
		width: 90%;
		height: auto;
	}

	/*-----HEADER-------*/
	#header_sp {
		width: 100%;
		height: 4.6rem;
		position: fixed;
		top: 0;
		z-index: 300;
		color: #FFFFFF;
		background-color: #00653a;
	}

	#header_sp_sns {
		/*		text-align: center;*/
		width: calc(100% - 4.6rem);
		color: rgba(0, 0, 0, 1.00);
	}

	#header_sp_sns a {
		color: #FFFFFF;
		font-size: 17pt;
		margin: 0 0.9rem;
		line-height: 4.4rem;
	}

	/*-----Main-------*/
	main {
		min-width: inherit;
	}

	/*-----TOP-------*/

	#top_sp_box {
		width: 100%;
		margin-top: 4.6rem;
	}



	.top_logoset_sp,
	.top_cc_sp,
	.top_koukai_sp {
		width: 100%;
		height: auto;
		position: absolute;
		margin-top: 0px;
		margin-left: 0px;
		z-index: 20;
	}

	.top_bg_sp {
		width: 100%;
		height: auto;
		margin-top: 0px;
		margin-left: 0px;
		display: block;
		z-index: 10;
	}

	/*-----mvtk-------*/
	#mvtk_box{
		min-width:inherit;
	}






	#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: 0px;
	padding-top: 30px;
	padding-bottom: 20px;
	}

	#trailer_sp_box h3 {
		font-family: "Poltawski Nowy", serif;
		font-weight: 400;
		color: #000;
		margin-top: 0px;
		font-size: 16pt;
		margin-bottom: 20px;
	}
	
	#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-top: 7px;
		margin-right: auto;
		margin-left: auto;
		margin-bottom: 0;
		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;*/
		padding: 5px 0;
		text-align: center;
		text-decoration: none;
		background-color: #00653a;
		border: 1px #00653a solid;
	}

	.movie_nav_btn.selected {
		background-color: #f5f3f3;
		border: 1px #00653a solid;
	}

	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: #00653a;
	}





	#ftr_sp_box {
		width: 100%;
		text-align: center;
		padding-bottom: 20px;

	}



	.pre_bl_sp {
		width: 95%;
		height: auto;
		display: block;
		margin: 0 auto;
	}

	#ftr_naka{
		width: 100%;
	}

	/*------- SNS ----------------*/
	#top_tw{
		margin-top: 30px;
	}

	.sns {
		margin-top: 0px;
		margin-right: 0px;
		margin-bottom: 0;
		float: left;
		margin-left: 5px;
	}


	.fb {
		margin: -4px 0px 0px 5px;
		padding: 0px;
		display: inline;
		float: left;
	}


	/*------- SUB PAGE ----------------*/
	.sub_box {
		min-width: inherit;
	}

	.in_box {
		width: 100%;
	}

	.pad_lr {
		padding-left: 20px;
		padding-right: 20px;
	}



	h3{
		font-size: 20pt;
		margin-top: 30px;
		margin-bottom: 30px;
	}

	/*------- INTRODUCTION ----------------*/
	#intro_box{
		padding-bottom: 50px;
	}

	#intro_box .in_box{
		margin-top: -6%;
	}
	
	#intro_box h3{
		margin-bottom: 20px;
	}

	.intro_midasi{
		margin-bottom: 30px;
	}
	
	#intro_box .txt_box{
		padding: 0 50px;
		line-height: 1.4em;
	}

	.intro_reviews{
		margin-top: 60px;
		font-size: 12pt;
	}

	.review{
		width: 44%;
	}



	
	/*------- STORY ----------------*/
	#story_box{
		padding-top: 1px;
		padding-bottom: 0px;
	}
	#story_box .txt_box{
		padding: 0 50px;
		line-height: 1.4em;
	}


	.story_bg{
		margin-top: -9%;
	}

	.black{
		background-color: #000;
	}


	/*------- CAST ----------------*/
	#cast_box{
		padding-top: 50px;
		padding-bottom: 50px;
		background-position: 1% 1%, 99% 1%, 1% 99%, 99% 99%;
		background-size: 16%;
	}

	#cast_box .in_box{
		justify-content: center;
	}


	.prof_btn {
		width: 80%;
		margin-bottom: 40px;
	}
	.cast_pbox::after{
		right: 3px;
		bottom: 3px;
		width: 23px;
		height: 23px;
	}

	.cast_b1{
		margin-top: -13%;
		margin-left: 2%;
		width: 18%;
		height: auto;
	}

	.cast_b2{
		margin-top: -18%;
		margin-left: 2%;
		width: 18%;
		height: auto;
	}

	.cast_name{
		font-size: 13pt;
		margin-top: 8px;
		line-height: 1.2em;
}

	.cast_role{
		font-size: 7pt;
	}


	/*----------Profile Mado------------*/

	.prof_mados {
		padding: 40px 20px 30px;
		font-size: 11pt;
		line-height: 1.7em;
	}

	.prof_mados .chara_ptS,
	.prof_mados .cast_ptS{
		width: 70%;
		height: auto;
		display: block;
		margin: 0 auto;
	}

	.cast_flex{
		display: block;
	}


	.cast_madotxt {
		text-align: justify;
		text-justify: inter-ideograph;
		margin-left:0;
	}

	.prof_mados .chara_name,
	.prof_mados .cast_name {
		font-size: 18pt;
		margin-top: 20px;
		margin-bottom: 15px;
		text-align: center;
	}

	.prof_mados .staff_name {
		font-size: 18pt;
		margin-bottom: 15px;
		text-align: center;
	}

	/*------- STAFF ----------------*/
	#staff_box{
		padding-top: 50px;
		padding-bottom: 80px;
		background-position: 1% 1%, 99% 1%, 1% 99%, 99% 99%;
		background-size: 16%;
	}

	#staff_box h3{
		margin-bottom: 40px;
	}



	#staff_box .txt_box{
		text-align: left;
		padding: 0 10px
	}
	
	#staff_box .cast_name{
		font-size: 17pt;
	}

	#staff_box .cast_role{
		font-size: 13pt;
	}
	/*------- FOOTER ----------------*/

	footer{
		min-width:inherit;
		padding: 50px 0 50px;
	}
	
	
	.ftr_logo{
		width: 95%;
		height: auto;
	}
	





}

@media screen and (max-width: 330px) {
	.vsp {
		display: inline-block;
	}

}
