/* ! normalize.css v1.0.0 | MIT License | git.io/normalize */


.absolute{
	position: absolute;
	display: block;
}

.relative{
	position: relative;
	display: block;
}

.sk-wandering-cubes {
  width: 4em;
  height: 4em;
  position: relative;
  margin: auto;
}
.sk-wandering-cubes .sk-cube {
  background-color: #00194a;
  width: 1em;
  height: 1em;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: sk-wandering-cubes 1.8s ease-in-out -1.8s infinite both;
          animation: sk-wandering-cubes 1.8s ease-in-out -1.8s infinite both;
}
.sk-wandering-cubes .sk-cube-2 {
  -webkit-animation-delay: -0.9s;
          animation-delay: -0.9s;
  background-color: #fcf800;
}

@-webkit-keyframes sk-wandering-cubes {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  25% {
    -webkit-transform: translateX(2em) rotate(-90deg) scale(0.5);
            transform: translateX(2em) rotate(-90deg) scale(0.5);
  }
  50% {
    /* Hack to make FF rotate in the right direction */
    -webkit-transform: translateX(2em) translateY(2em) rotate(-179deg);
            transform: translateX(2em) translateY(2em) rotate(-179deg);
  }
  50.1% {
    -webkit-transform: translateX(2em) translateY(2em) rotate(-180deg);
            transform: translateX(2em) translateY(2em) rotate(-180deg);
  }
  75% {
    -webkit-transform: translateX(0) translateY(2em) rotate(-270deg) scale(0.5);
            transform: translateX(0) translateY(2em) rotate(-270deg) scale(0.5);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}

@keyframes sk-wandering-cubes {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  25% {
    -webkit-transform: translateX(2em) rotate(-90deg) scale(0.5);
            transform: translateX(2em) rotate(-90deg) scale(0.5);
  }
  50% {
    /* Hack to make FF rotate in the right direction */
    -webkit-transform: translateX(2em) translateY(2em) rotate(-179deg);
            transform: translateX(2em) translateY(2em) rotate(-179deg);
  }
  50.1% {
    -webkit-transform: translateX(2em) translateY(2em) rotate(-180deg);
            transform: translateX(2em) translateY(2em) rotate(-180deg);
  }
  75% {
    -webkit-transform: translateX(0) translateY(2em) rotate(-270deg) scale(0.5);
            transform: translateX(0) translateY(2em) rotate(-270deg) scale(0.5);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}

	

/* ==========================================================================
Navigation
========================================================================== */
.nav-toggle {
    position: absolute;
    top: 0;
    right: 15px;
    z-index: 999999;
    padding: 10px 35px 16px 0px;
    cursor: pointer;
}
.nav-toggle:focus {
    outline: none;
}
.nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
    content: '';
    position: absolute;
    display: block;
    width: 35px;
    height: 5px;
    border-radius: 1px;
    background: #fff;
    cursor: pointer;
	box-shadow: 1.5px 1.5px 1.5px 1px rgba(66,32,16,0.6);
	/*box-shadow: 1.5px 1.5px 1.5px 1px rgba(102,206,209,0.6);*/
}
.nav-toggle span:before {
    top: -10px
}
.nav-toggle span:after {
    bottom: -10px
}
.nav-toggle span, .nav-toggle span:before, .nav-toggle span:after {
    -webkit-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
	
}
.nav-toggle.active span {
    background-color: transparent;
	 box-shadow: 1.5px 1.5px 1.5px 1px rgba(66,32,16,0);

}
.nav-toggle.active span:before, .nav-toggle.active span:after {
    top: 0;
}
.nav-toggle.active span:before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
	    box-shadow: 0 0 1px 1px rgba(66,32,16,0.6);
}
.nav-toggle.active span:after {
    top: 10px;
    -webkit-transform: translateY(-10px) rotate(-45deg);
    -ms-transform: translateY(-10px) rotate(-45deg);
    transform: translateY(-10px) rotate(-45deg);
	    box-shadow: 0 0 1px 1px rgba(66,32,16,0.6);
}
.navicon {
    position: relative;
    height: 26px;
}
.navicon p {
    margin: 1px 50px 0 0;
}
.navicon-fixed {
    position: fixed;
    top: 59px;
    right: 143px;
}

.li_mov{
	opacity:0.4;
}

#home {
    width: 100%;
    height: 100%;
}

.blockAnime {
    display: inline-block;
    position: relative;
    overflow: hidden;
}

.blockAnime::before {
    position: absolute;
    content: '';
    display: block;
    width: 100%;
    left: 0;
    top: 0;
    bottom: 0;
    background: #fff100;
    z-index: 99;
    -webkit-transform: translate3d(-101%, 0, 0);
    transform: translate3d(-101%, 0, 0);
    -webkit-transition: 0.3s all 0.3s cubic-bezier(0, 1.07, 1, 1);
    transition: 0.3s all 0.3s cubic-bezier(0, 1.07, 1, 1);
}

.show1.blockAnime::before {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.show2.blockAnime::before {
    -webkit-transform: translate3d(105%, 0, 0);
    transform: translate3d(105%, 0, 0);
}

.blockAnime_inner {
    opacity: 0;
}

.show2 .blockAnime_inner {
    opacity: 1;
}

.showfade {
    position: relative;
    opacity: 0;
    top: 10px;
}

/* ----------------------------------------------------------------
	Apollo
-----------------------------------------------------------------*/

.effect-apollo {
	display:block;
	position:relative;
	overflow:hidden;
	padding:0;
}

.theater_page span.effect-apollo{
	padding:0;
}



.effect-apollo figcaption::before {
	position: absolute;
	top: -3%;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.3);
	content: '';
	-webkit-transition: -webkit-transform 0.5s;
	transition: transform 0.5s;
	-webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100%,0);
	transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,-100%,0);
}


.effect-apollo:hover figcaption::before {
	-webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100%,0);
	transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,45deg) translate3d(0,100%,0);
}

/* ==========================================================================
Hero
========================================================================== */

.hero {
    position: relative;
    padding: 0 0 0 0;
    color: #FFF;
}
.hero .container {
	top: 10%;
	position: relative;
	width:auto;
	margin:0;
	padding:0;
}
.hero a.nav-toggle {
	font-family: 'Mallanna', sans-serif;
	letter-spacing: 0.1em;
}
.hero .col-md-6 {
	float: right;
	text-align: right;
}
.images{
	margin:0 auto;
	position:relative;
}
.hero img {
	max-width: 100%;
	height: auto;
}
.hero .m_award{
	width: 60%;
	height: auto;
    margin: 0 auto;
}
.hero .m_logo{
	width: 80%;
	height: auto;
    margin: 8% auto 11%;
}
.hero .m_date{
	width: 64%;
	height: auto;
    margin: 0 auto;
}
.hero .col-md-6.navicon {
	float: left;
	text-align: left;
	position: fixed;
	top: 30px;
	left: 15px;
	z-index: 99;
}
.hero .nav-toggle {
	right: initial;
	left: 15px;
}
.hero .navicon p {
	margin: 27px 0 0 -0.25em;
}
.hero .col-md-6.navicon {
	float: left;
	text-align: left;
	position: fixed;
	top: 30px;
	left: 15px;
	z-index: 500;
}
.hero .nav-toggle {
	right: initial;
	left: 15px;
}

.hero .comic_banner {
    position: absolute;
    display: block;
    bottom: 6.3%;
    left: 1.1%;
    width: 11.1%;
}
.hero .comic_banner:hover{
	opacity: 0.6;
}
/*.hero .pc_banner {
    position: absolute;
    display: block;
    bottom: 28%;
    right: 1%;
    width: 28.5%;
}*/
.hero .pc_banner {
    position: absolute;
    display: block;
    bottom: 15.5%;
    right: 1%;
    width: 19.9%;
}
.hero .pc_banner a{
	display: block;
	margin-bottom: 2%
}
.hero .pc_banner a:hover{
	opacity: 0.7;
}
.hero .banner_tw {
    position: absolute;
    display: block;
    top: 3.2%;
    left: 0;
    width: 17.5%;
}
.hero .banner_tw:hover{
	opacity: 0.7;
}
.banner{
    width: 85%;
	max-width: 600px;
	margin:0 auto 40px;
}
.banner02{
	margin: 40px auto 0;
    width: 85%;
	max-width: 250px;
}
.banner a{
	margin: 0 auto 10px;
	display: block;
}
.banner .comic_banner{
    width: 70%;
	margin:  20px auto 0;
	max-width: 250px;
	display: block;
}



/* ==========================================================================
grnv
========================================================================== */

.grnv{
    margin: 0;
    padding: 30px 0 76px;
    position: relative;
    text-align: left;
	background: #000;
}

.grnv i {
    margin-left: 8px;
	/*color:#053e7d;*/
}
.menu{
	text-align:center;
}
.grnv ul {
	width: 95%;
	height: auto;
	overflow: hidden;
	margin:0 auto;
	padding: 0;
	text-align:center;
	letter-spacing: -.40em;
}
.grnv ul li {
	height: auto;
	overflow: hidden;
	margin: 0 0 0.5% 0.5%;
	list-style: none;
	float: none;
	width:200px;
	display:inline-block;
	letter-spacing: 1px;
}
.grnv ul li:nth-child(1){
	margin-left: 0;
}
.grnv ul li a {
	width: 100%;
	height: auto;
	display: block;
    padding: 12px 0 8px;
    border-radius: 5px;
	border: 2px solid #fff100;
	color: #fff100;
	font-family: 'Orbitron', sans-serif;
	font-weight: 500;
	line-height: 1em;
}
.grnv ul li a:hover{
	background: #fff100;
	color: #000;
}

.grnv ul li a:hover img{
	opacity: 0.7;
}


/* ==========================================================================
visual
========================================================================== */

.visual01{
	margin: 0;
	padding: 0 0 36.4% 0;
	background: url(../img/visual_bg.jpg) no-repeat;
	background-size: cover;
	background-attachment: fixed;
	background-position: bottom center;
}

.visual02{
	margin: 0;
	padding: 0 0 36.4% 0;
	background: url(../img/visual02_bg.jpg) no-repeat;
	background-size: cover;
	background-attachment: fixed;
	background-position: center;
}


/* ==========================================================================
film_criticism
========================================================================== */

.film_criticism {
	margin: 0;
	padding: 0 6.5%;
	background: url(../img/film_criticism_bg.jpg) no-repeat;
	background-size: cover;
    background-position: right center;
}
.film_criticism .right{
	margin: 0;
	padding: 0;
	float: right;
	width: 50%;
	position: relative;
}
.film_criticism .right{
	margin: 0;
	padding: 0;
	float: right;
	width: 50%;
}
.film_criticism .relative img{
	top: 0;
	left: 0;
	opacity: 0;
	transition-duration: 0.5s;
}
.film_criticism .relative img:nth-of-type(1){
	transition-delay: 0.1s;
}
.film_criticism .relative img:nth-of-type(2){
	transition-delay: 0.2s;
}
.film_criticism .relative img:nth-of-type(3){
	transition-delay: 0.3s;
}
.film_criticism .relative img:nth-of-type(4){
	transition-delay: 0.4s;
}
.film_criticism .relative img:nth-of-type(5){
	transition-delay: 0.5s;
}
.film_criticism .relative img:nth-of-type(6){
	transition-delay: 0.6s;
}
.film_criticism .relative img:nth-of-type(7){
	transition-delay: 0.7s;
}


/* ==========================================================================
intro
========================================================================== */

.intro {
	margin: 0;
	padding: 150px 6.5%;
	background: url(../img/intro_bg.jpg) no-repeat;
	background-size: cover;
	background-position: right center;
}
.intro .left{
	margin: 0;
	padding: 0;
	float: left;
	width: 50%;
}
.intro h2{
	width: 78%;
}
.intro h3{
	width: 85%;
	margin-top: 60px;
}
.intro p{
	color: #fff;
	margin-top: 30px;
}


/* ==========================================================================
story
========================================================================== */

.story {
	margin: -4.4% 0 0 0;
	padding: 0 6.5%;
}
.story .story_bg {
    top: 0;
    left: 50%;
    width: 110vw;
    height: 100%;
    transform: translate(-50%,0) rotate(-5deg);
    overflow: hidden;
}
.story .story_bg .inner {
    background: url(../img/story_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
    transform: rotate(5deg);
    top: -11vh;
    right: 0%;
    width: 100%;
    height: 118vh;
    position: absolute;
}
.story .txt{
	position: relative;
	margin: 0 auto;
	padding: 250px 0 80px;
	width: 45%;
	z-index: 1;
}
.story h2{
	width: 76%;
	margin: 0 auto;
}
.story p{
	color: #fff;
	margin-top: 150px;
}

.story_img {
	margin: -5.5% 0 0 0;
    padding: 0;
	background: #000;
}


/* ==========================================================================
note
========================================================================== */

.note {
	margin: 0;
	padding: 25px;
	background: #000;
}
.note .conts {
	max-width: inherit;
	background: url(../img/note_bg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
.note .left{
    position: absolute;
    width: 50%;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);
	padding: 0 10%;
}
.note .right{
	margin: 0;
	padding: 5%;
	float: right;
	width: 50%;
	background: rgba(255,241,0,0.7);
}
.note h2{
	width: 100%;
}
.note h3{
	width: 85%;
	margin-top: 60px;
}
.note ul{
	margin: 0;
	padding: 0;
}
.note li{
	width: 49%;
	float: left;
	margin-bottom: 25px;
}
.note li:nth-child(even){
	float: right;
}
.note li:nth-child(5){
	margin-bottom: 0;
}
.note li a{
	background: #000;
	display: block;
	position: relative;
	overflow: hidden;
}
.note li a img{
    transition: all 1000ms cubic-bezier(0.23, 1, 0.32, 1);
}
.note li a:hover img{
	opacity: 0.7;
    transform: scale(1.2);
}
.note li a span {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    font-size: 14px;
    text-align: center;
    width: 70%;
    height: 22px;
    transition: all 600ms;
    color: #fff100;
	border: #fff100 solid 1px;
    padding: 10px 0;
    box-sizing: content-box;
	opacity: 0;
}
.note li a:hover span {
	opacity: 1;
}
.note li a span:hover{
	background: rgba(0,0,0,0.4)
}

.note li p{
	color: #000;
	margin-top: 14px;
}
.n_modal{
	display: none;
}
.n_modal_conts{
	background: rgba(255,241,0,0.9);
	padding: 8%;
	color: #000;
}
.n_modal_conts .image{
	margin-bottom: 50px;
}
.n_modal_conts h3{
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 35px;
}


/* ==========================================================================
cast staff
========================================================================== */

.cast_staff{
	background: url("../img/cast_bg.jpg") no-repeat #000;
	background-size: 100% auto;
	background-position: top;
	padding: 113px 0 200px;
	margin: 0;
}
.cast_staff .conts{
	padding: 0 5%;
}

/*  cast  */

.cast h2{
	width: 28%;
	margin: 0 auto 95px;
}
.cast ul{
	margin: 0 0 25px;
	padding: 0;
}
.cast ul li{
    width: 30.3333%;
    float: left;
    margin: 0px 0 25px 4.5%;
}
.cast li:nth-child(1){
	margin-left: 0;
}
.cast ul:nth-of-type(1) li:nth-child(1){
	margin: 0 auto;
	float: none;
}
.cast li a{
	display: block;
}
.cast li a:hover{
	opacity: 0.6;
}
.cast li p{
	color: #f8f400;
	font-weight: 900;
	margin-top: 14px;
}
.cast li p span{
	color: #fff;
	font-weight: normal;
}

/*  staff  */

.staff{
	margin-top: 100px
}
.staff h2{
	width: 16%;
	margin: 0 auto 95px;
}
.staff ul{
	margin: 0 0 75px;
	padding: 0;
}
.staff ul:nth-of-type(2){
	margin: 0;
}
.staff ul:nth-of-type(1) li:nth-child(1){
	margin: 0 auto;
	float: none;
    width: 30.3333%;
}
.staff ul:nth-of-type(2) li{
    width: 48%;
    float: left;
    margin: 0px 0 25px;
	text-align: center;
	border: 1px solid rgba(255,255,255,0.5)
}
.staff ul:nth-of-type(2) li:nth-child(2){
    float: right;
}
.staff li a{
	display: block;
}
.staff li a:hover{
	opacity: 0.6;
}
.staff li p{
	color: #f8f400;
	font-weight: 900;
	margin-top: 14px;
}
.staff li p span{
	color: #fff;
	font-weight: normal;
}



/* ----------------------------------------------------------------
	cast_dit
-----------------------------------------------------------------*/


.cast_dit{
	margin: 0;
	padding: 95px;
	background: #000;
}

.cast_dit .inner{
    min-height: 100vh;
	position: relative;
}

.cast_dit .inner::after{
	content: "";
	height: 100%;
	width: 100%;
	max-width: 400px;
	background: #fff100;
	opacity: 0.7;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

#content01 .inner{
	background: url(../img/cast01_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
}
#content02 .inner{
	background: url(../img/cast02_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
}
#content03 .inner{
	background: url(../img/cast03_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top left;
}
#content04 .inner{
	background: url(../img/cast04_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
}
#content05 .inner{
	background: url(../img/cast05_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top left;
}
#content06 .inner{
	background: url(../img/cast06_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
}
#content07 .inner{
	background: url(../img/cast07_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top left;
}
#content08 .inner{
	background: url(../img/staff01_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
}
#content09 .inner,
#content10 .inner{
	background: url(../img/staff02_bg.jpg) no-repeat;
    background-size: cover;
    background-position: top center;
}

.modal-contents{
	display:block;
	margin:0;
	padding: 0;
	color: #000;
	position: relative;
	z-index: 1;
}

.cast_dit .modal_txt{
	margin: 0;
	padding: 2.5% 2.5% 130px;
	max-width: 400px;
}
.cast_dit h4{
	margin: 0;
	padding: 0;
	font-weight: 700;
	font-size: 18px;
}

.cast_dit h4 span{
	font-weight: normal;
}

.cast_dit p{
	margin: 65px 0 0;
	padding:0;
	font-size:14px;
	line-height: 2em;
}

.close_a{
	position:absolute;
    top: 15px;
    right: 15px;
	z-index: 3
}

.cast_dit .cast_name{
	position: absolute;
    bottom: 0;
    left: 0;
    width: auto;
    height: 100px;
    z-index: 1;
}

.close_button{
	width: 50px;
    height: 50px;
	margin:0;
	padding:0;
	display:block;
	cursor: pointer;
}

.modal-contents .close_button{
	width:150px;
	height:auto;
	margin:3% auto;
	padding:0;
	display:block;
}

.modal-contents span.border{
	display: block;
	margin: 0 auto 5%;
	padding: 0;
	width: 1px;
	height: 140px;
	background: #fff;
}


.cf_dit h2{
	width:53%;
	margin:0 auto;
	padding:50px 0 30px 0;
}

.cf_dit p{
	width:100%;
	margin:0;
	padding:30px 0 0 0;
	font-size:14px;
	line-height: 2em;
}



/* ==========================================================================
comic
========================================================================== */

.comic{
	background: url("../img/comic_bg.jpg") no-repeat #000;
	background-size: cover;
	background-attachment: fixed;
	padding: 200px 0 80px;
	margin: 0;
}

.comic .conts{
	width: 50%;
}
.comic h2{
	width: 62%;
	margin: 0 auto;
	margin-bottom: 50px;
}
.comic p{
	text-align: right;
	color: #fff;
}
.comic img{
	margin-bottom: 30px;
}

.release_date{
	margin: 0 auto;
	padding-top: 60vh;
	width: 36%;
}

/* ==========================================================================
media query
========================================================================== */


@media screen and (max-width:1200px){


footer li{margin-right:10%;}
	
.feature-content{width:55%;}


.overlay ul li {
	width: 31.333%;
	margin: 0 2% 2% 0 !important;
}
.overlay ul li:nth-child(3), .overlay ul li:nth-child(6), .overlay ul li:nth-child(9) {
	margin: 0 0 2% 0;
}
}

@media screen and (max-width:1024px){
	
.note li p {
	letter-spacing: -1px;
}	
.note li p br {
	display: none;
}	

	
}



@media screen and (max-width:991px){



.container {
	width: 100%;
}
.hero {
	padding: 0;
}
	

footer ul.snsnavi {
	width: 90%;
	height: auto;
	overflow: hidden;
	margin: 30px 5% 0 5%;
}
footer ul.snsnavi li {
	width: 25%;
	height:auto;
	float: left;
	margin: 0;
	padding:  0 5px 10px 5px;	
}
footer ul.snsnavi li a img {
	width: 100%;
}


footer ul.bannernav {
	width: 90%;
	height: auto;
	overflow: hidden;
	margin: 30px 5% 0 5%;
}
footer ul.bannernav li {
	width: 25%;
	height:auto;
	float: left;
	margin: 0;
	padding:  0 5px 10px 5px;	
}
footer ul.bannernav li a img {
	width: 100%;
}

footer ul.corpnavi {
	width: 90%;
	margin: 30px 5% 0 5%;
	overflow: hidden;
}
.overlay ul li a {
	font-size: 13px;
}

}

@media screen and (min-width:801px){

.sp{ display:none !important;}

}
@media screen and (max-width:800px){
	
body.news {
    background:#fff;
    padding: 5% 0 10% 0;
}	
.news dl {
    padding: 30px 0 50px 0;
}	
.news dl dt span {
    float: none;
	padding-left: 0;
}
	
.blockAnime::before {
    background: #fff100;
}
	
/* ==========================================================================
display:none;
========================================================================== */

.hero .navicon p { display:none;}
.pc { display:none !important;}

/* display:none; end */	

/* ==========================================================================
nav
========================================================================== */


.grnv ul {
	max-width: 450px
}
	
.grnv ul li {
    margin: 0 0 5px 2.5%;
    width: 48%;
}
.grnv ul li:nth-child(odd) {
    margin-left: 0;
}
	
.hero .col-md-6.navicon {
    top: 9px;
    left: -5px;
}	
.sns { width: 100%;}
.sns { width: 100%;}
.sns li {
   /* display: block;*/
    margin: 15px auto;
}	
.sns li:last-child {
   /* display: block;*/
    margin: 15px auto;
}	

/* ==========================================================================
main
========================================================================== */

.images {
    margin: 0 auto;
    position: relative;
}
.hero .m_award {
    width: 75%;
    height: auto;
    margin: 0 auto;
}
.hero .m_logo {
    width: 100%;
    height: auto;
    margin: 19% auto 20%;
}
.hero .m_date {
    width: 80%;
    height: auto;
    margin: 0 auto;
}
	
	


/* ==========================================================================
visual
========================================================================== */

.visual01{
	margin: 0;
	padding: 0;
	background: none;
}

.visual02{
	margin: 0;
	padding: 0;
	background: none;
}
	
	
.film_criticism {
    margin: 0;
    padding: 0 6.5%;
    background: none;
}
	
.film_criticism .right {
    margin: 0;
    padding: 0;
    float: none;
    width: 100%;
}

/* ==========================================================================
intro
========================================================================== */
	
.intro {
    margin: 0;
    padding: 0;
    background: none;
}
	
.intro .left {
    margin: 0;
    padding: 50px 6.5%;
    float: none;
    width: 100%;
}
		
/* ==========================================================================
story
========================================================================== */

.story {
    margin: -4.4% 0 0 0;
    padding: 0;
}
	
.story .story_bg {
    display: none;
}
	
.story .txt {
    position: relative;
    margin: 0 auto;
    padding: 50px 6.5% 80px;
    width: 100%;
    z-index: 0;
}

.story p {
    color: #fff;
    margin-top: 50px;
}
	
.story h2 {
    width: 30%;
    margin: 0 auto;
}

		
/* ==========================================================================
note
========================================================================== */	
	
.note .conts {
    max-width: inherit;
    background: none;
}
	
.note .left {
    position: inherit;
    width: auto;
    top: auto;
    left: 0;
    transform: translate(0);
    padding: 20% 10%;
	    background: url(../img/note_bg.jpg) no-repeat;
    background-size: cover;
    background-position: center;
}
	
.note h2 {
    width: 65%;
}

.note .right {
    margin: 0;
    padding: 5%;
    float: none;
    width: 100%;
    background: rgba(255,241,0,0.7);
}
	
.cast_staff {
    background: url(../img/cast_bg.jpg) no-repeat #000;
    background-size: 100% auto;
    background-position: top;
    padding: 50px 0 100px;
    margin: 0;
}
	
.cast li p span {
    display: block;
}	
.staff li p span {
    display: block;
}
.staff h2 {
    width: 32%;
    margin: 0 auto 45px;
}
	
.cast_dit {
    margin: 0;
    padding: 40px;
    background: #000;
}	
#content01 .inner,	
#content02 .inner,	
#content03 .inner,	
#content04 .inner,	
#content05 .inner,	
#content06 .inner,	
#content07 .inner,	
#content08 .inner,	
#content09 .inner,	
#content10 .inner {
    background: none;
	min-height: inherit;
}
.cast_dit .inner::after {
    max-width: inherit;
}
.cast_dit .modal_txt {
    margin: 0;
    padding: 5% 5% 35%;
    max-width: inherit;
}
#content08 .modal_txt,
#content09 .modal_txt,
#content10 .modal_txt {
    padding: 5% 5% ;
}
.cast_dit p {
    margin: 30px 0 0;
}
.cast_dit .cast_name {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    z-index: 1;
}	
	
.comic {
    background: url(../img/comic_bg.jpg) no-repeat #000;
    background-size: 100% auto;
	background-position: top center;
    background-attachment: inherit;
    padding: 100px 0 40px;
    margin: 0;
}
	
.comic h2 {
    width: 90%;
    margin: 0 auto;
    margin-bottom: 50px;
}
	
.comic .conts {
    width: 87%;
}

.release_date {
    margin: 0 auto;
    padding-top: 50px;
	width: 70%;
}
	
/* ==========================================================================
flickity
========================================================================== */
.features-slider li p {
    color: #000;
}	

.features-slider {
	padding: 80px 5% 40px 5%;
}
.features-img, .features-bg {
	height: auto;
	/*min-height: 300px;*/
}


/* ==========================================================================
manu
========================================================================== */
.overlay ul{margin-left:0px;}
.overlay ul li {
	width: 48%;
	margin: 0 4% 4% 0;
}
.overlay ul li:nth-child(even) {
	margin: 0 0 5% 0;
}
.overlay ul li a{padding:10px 0;min-width:100%;font-size:11px; display: block;}
.overlay ul.icon li {
	width: 52%;
	margin: 0 !important;
}
.overlay ul.icon li:nth-child(even) {
	width: 48%;
	margin: 0;
}
.overlay ul li a i {
	width: 20%;
}
.overlay ul.icon li a{padding:0;min-width:100%;font-size:12px; display: block;}


/* ==========================================================================
footer
========================================================================== */
footer {
	padding: 10px 0px;
}
footer ul.snsnavi li {
	width: 50%;
	height:auto;
	float: left;
	margin: 0;
	padding:  0 5px 10px 5px;	
}

footer ul.bannernav li {
	width: 50%;
	height:auto;
	float: left;
	margin: 0;
	padding:  0 5px 10px 5px;	
}

footer ul.corpnavi {
	margin: 20px 5%;
}
footer ul.corpnavi li {
	width: 50%;
	display: block;
	text-align: left;
	float: left;
}

footer .footer-logo {
	padding-bottom: 40px;
}

@media screen and (max-width:640px){
	

#colorbox {
	min-height: 100vh;
}
	
.note li {
    width: 100%;
    float: none;
    margin-bottom: 25px;
}
.note li:nth-child(even) {
    float: none;
}
	
.cast ul li {
    width: 100%;
    float: left;
    margin: 0px auto 30px;
}

.staff ul:nth-of-type(1) li:nth-child(1) {
    margin: 0 auto;
    float: none;
    width: 100%;
}
	
.staff ul:nth-of-type(2) li {
    width: 100%;
    float: left;
    margin: 0px 0 25px;
    text-align: center;
    border: 1px solid rgba(255,255,255,0.5);
}
	
}

