@charset "UTF-8";
/* CSS Document */
	
body{
	margin:0px;
	background-color: #fff;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	color:#000;
	height:100%;
}

html{
	height:100%;
}

img { border-style:none;
	vertical-align: bottom;}

a img { border-style:none;}

a:hover img { border-style:none; }

*{
margin: 0;
padding: 0;
}

ol, ul {
	list-style: none;
}

.cf:before,
.cf:after {
  content: "";
  display: table;}
.cf:after {
  clear: both;}
.cf {
  *zoom: 1;}


/* 非表示 */
.is-hide {
    display: none;
}
/* ローディング画面をフェードアウト */
.fadeout-bg {
    transition-property: opacity;
    transition-delay: .9s;
    transition-duration: .8s;
    opacity: 0;
    pointer-events: none;
}
/* ローダーをフェードアウト */
.fadeout-loader {
    transition-property: opacity;
    transition-delay: .9s;
    transition-duration: .3s;
    opacity: 0;
    pointer-events: none;
}
/* ローディング画面 */
#loader-bg {
	background: url("images/bg/body.jpg") 100% 0 no-repeat fixed;
	background-size:cover;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 105;
}
#loader {
    height: 150px;
    left: 50%;
    margin-left: -200px;
    margin-top: -75px;
    position: fixed;
    top: 50%;
    width: 400px;
}

#spmain{
	display:none;
}

.menuarea{
	position: fixed;
	top:0;
	right:0;
	width: 100%;
    height: 100%;
  	-webkit-transition: 1.5s;
  	transition: 1.5s;
  	-webkit-transform: translate3d(0,-100%,0);
  	transform: translate3d(0,-100%,0);
	background: url("images/bg/menu.jpg") 100% 0 no-repeat fixed;
	background-size:cover;
	z-index: 90;
	padding:6% 72% 10% 9%;
	box-sizing: border-box;
}

.imgresponsive img{
	width: 100%;
	height: auto;
}
.menubtn{
	z-index: 92;
	position: fixed;
	top:2.5%;
	right:1.5%;
	width: 5%;
	cursor: pointer;
}

.showMenu .menuarea{
  	-webkit-transform: translate3d(0, 0, 0);
  	transform: translate3d(0, 0, 0);
}

#menu{
	width:100%;
	z-index: 99;
	overflow: hidden; /* heightを戻す */
	padding:10% 12% 5% 12%;
	box-sizing: border-box;
	background-color: rgba(255,255,255,0.9);
}

.menu-box img{
  width: 100%;
}

.menu-box li{
  position: relative;
  overflow: hidden;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 10%;
}


.menu-box a{
  display: block;
  position: relative;
}
  
.menu-box .hoverimg{
  position: absolute;
  top: -100%;
  left: 0;
  -webkit-transition: .4s;
     -moz-transition: .4s;
      -ms-transition: .4s;
       -o-transition: .4s;
          transition: .4s;
  z-index: 101;
}

.menu-box a:hover .hoverimg{
  top: 0%;
}


#contents_wrapper{
	width:100%;
	height: 100%;
	margin:0 auto;
	font-size: 14px;
	text-align: justify;
	word-break: break-all;
	line-height: 175%;
}

#contents_wrapper img{
	width:100%;
	height: auto;
	margin-left:auto;margin-right:auto;display:table;
}


.pcview{
	width:100%;
}

.spview{
	display: none;
}


.scrollShowEffect {
	-webkit-transition-delay: 1.5s;
	   -moz-transition-delay: 1.5s;
	    -ms-transition-delay: 1.5s;
	     -o-transition-delay: 1.5s;
	        transition-delay: 1.5s;
	-webkit-transition: all 1.5s ease-in-out;
	   -moz-transition: all 1.5s ease-in-out;
	    -ms-transition: all 1.5s ease-in-out;
	     -o-transition: all 1.5s ease-in-out;
	        transition: all 1.5s ease-in-out;
	opacity:0;
}

.scrollShowEffect-R {
	-webkit-transform: translate3d(60%, 0%, 0);
	   -moz-transform: translate3d(60%, 0%, 0);
	    -ms-transform: translate3d(60%, 0%, 0);
	     -o-transform: translate3d(60%, 0%, 0);
	        transform: translate3d(60%, 0%, 0);
}
.scrollShowEffect-L {
	-webkit-transform: translate3d(-60%, 0%, 0);
	   -moz-transform: translate3d(-60%, 0%, 0);
	    -ms-transform: translate3d(-60%, 0%, 0);
	     -o-transform: translate3d(-60%, 0%, 0);
	        transform: translate3d(-60%, 0%, 0);
}
.scrollShowEffect-B {
	-webkit-transform: translate3d(0, 50%, 0);
	   -moz-transform: translate3d(0, 50%, 0);
	    -ms-transform: translate3d(0, 50%, 0);
	     -o-transform: translate3d(0, 50%, 0);
	        transform: translate3d(0, 50%, 0);
}

.scrollShowEffect-T {
	-webkit-transform: translate3d(0, -15%, 0);
	   -moz-transform: translate3d(0, -15%, 0);
	    -ms-transform: translate3d(0, -15%, 0);
	     -o-transform: translate3d(0, -15%, 0);
	        transform: translate3d(0, -15%, 0);
}

.scrollShowEffect-Z {
	-webkit-transform: scale( 0.2,  0.2);
	transform: scale( 0.2,  0.2);
}

.scrollShowEffect.showItem {
	opacity:1;
	-webkit-transform: translate3d(0, 0, 0);
	   -moz-transform: translate3d(0, 0, 0);
	    -ms-transform: translate3d(0, 0, 0);
	     -o-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
}


.mb0{
	width:100%;
	overflow: hidden; /* heightを戻す */
}

.mb5{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 5px;
	line-height: 140%;
}

.mb10{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 10px;
}

.mb20{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 20px;
}

.mb30{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 30px;
}

.mb50{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 50px;
}

#aboutmenu_wrapper{
	width:18%;
	position: fixed;
	left:0;
	top:0;
	box-sizing: border-box;
	padding:5% 0 5% 5%;
}

.about_pt{
	width:100%;
	margin-bottom: 20%;
}

.aboutmenu{
	width:100%;
	margin-bottom: 10%;
  position: relative;
  overflow: hidden;
}


.aboutmenu a{
  display: block;
  position: relative;
}
  
.aboutmenu .hoverimg{
  position: absolute;
  top: -100%;
  left: 0;
  -webkit-transition: .4s;
     -moz-transition: .4s;
      -ms-transition: .4s;
       -o-transition: .4s;
          transition: .4s;
  z-index: 101;
}

.aboutmenu a:hover .hoverimg{
  top: 0%;
}


.pagetitle_r{
	width:300px;
	float: right;
}

.pagetitle_l{
	width:300px;
	float: left;
}

#contents{
	width:82%;
	float: right;
	box-sizing: border-box;
	padding: 5% 10% 5% 5%;
    overflow: hidden;
}

#intro_wrapper{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 100px;
}

.wrapperline{
	width:100%;
	overflow: hidden; /* heightを戻す */
	padding:0;
	display:-webkit-box;
display:-moz-box;
display:-ms-box;
display:-webkit-flexbox;
display:-moz-flexbox;
display:-ms-flexbox;
display:-webkit-flex;
display:-moz-flex;
display:-ms-flex;
display:flex;
-webkit-box-lines:multiple;
-moz-box-lines:multiple;
-webkit-flex-wrap:wrap;
-moz-flex-wrap:wrap;
-ms-flex-wrap:wrap;
flex-wrap:wrap;
}

.introbox_l{
	width:48%;
	float: left;
}

.introbox_r{
	width:48%;
	float: right;
}

.intro_photo{
	width:32%;
	float: left;
	margin-right: 2%;
}

.intro_photor{
	width:32%;
	float: right;
}


#story_wrapper{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 100px;
}

.story_photo{
	width:40%;
	float: right;
}

.story_text{
width:55%;
float: left;
}

#chara_wrapper{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 100px;
}

#cast_wrapper{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 100px;
}


.castbox{
	width:31%;
    position: relative;
    overflow: hidden;
	float: left;
	margin:1.1666666%;
    background-color: #fff;
}

.castbox:hover {
	opacity: 0.5 ;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.removebtn{
  position: fixed;
  top: 0;
  right: 0;
  width: 50px;
  cursor: pointer;
}
.cast-popup>div{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
	background-color:rgba(255,255,255,0.95);
  overflow: auto;
}
.cast-pop-box{
  z-index: 10;
  width:60%;
  margin-top: 12%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 30px;
}

body.modal-open {
  height: 100vh;
  overflow-y: hidden;
}

.castphoto{
	width:40%;
	float: left;
}


.casttext{
	width:55%;
    float: right;
}

.castname{
	width:70%;
	margin-bottom: 10px;
}

.castboxn{
width:60%;
}

#hongsangsoo_wrapper{
	width:100%;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 100px;
}


#footer_wrapper{
    width:100%;
    padding:50px 0;
    background-color: #000;
}

#footer_inner{
    width:20%;
    margin:0 auto;
}

.otherlogo{
    width:13%;
    padding:5% 0 0 5%;
    margin-bottom: 50px;
}

#contents2{
	width:70%;
	margin:0 auto;
	box-sizing: border-box;
    overflow: hidden;
	padding:0 0 5% 0;
}

#award_photo{
	width:96%;
	margin:0 auto;
	margin-bottom: 50px;
}

.award_pt{
	width:96%;
	margin:0 auto;
	margin-bottom: 50px;
	overflow: hidden;
	
}

#award_wrapper{
	width:96%;
	margin:0 auto;
	margin-bottom: 50px;
	padding-bottom: 50px;
	border-bottom: 1px solid #000;
	box-sizing: border-box;
	padding-right: 15%;
}

.commentbox{
	width:46%;
	float: left;
	margin:2%;
	box-sizing: border-box;
	padding:4%;
	border:1px solid #000;
}

.commentname1{
	width:100%;
	font-size: 20px;
	font-weight: bold;
	color: rgba(126,15,17,1.00);
	text-align: right;;
}

.commentname2{
	width:100%;
	font-size: 12px;
	font-weight: bold;
	color:#666;
	text-align: right;
}

.keisyo{
	width:100%;
	text-align: center;
	font-size: 11px;
}

.tieupbox{
	width:100%;
	box-sizing: border-box;
	padding:5%;
	overflow: hidden;
	box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.4);
}

.tieupbox a{
	color: rgba(205,0,3,1.00);
	text-decoration: none;
}

.tieupbox a:hover{
	color:  #ccc;
	text-decoration: underline;
}

.tieup_l{
	width:30%;
	float: left;
	box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.4);
}

.tieup_r{
	width:67%;
	float: right;
}

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

#loader {
    height: 224px;
    left: 50%;
    margin-left: -150px;
    margin-top: -112px;
    position: fixed;
    top: 50%;
    width: 300px;
}
	

.menuarea{
	position: fixed;
	top:0;
	right:0;
	width: 100%;
    height: auto;
  	-webkit-transition: 1.2s;
  	transition: 1.2s;
  	-webkit-transform: translate3d(0,-100%,0);
  	transform: translate3d(0,-100%,0);
	background:none;
	z-index: 90;
	padding:0;
	box-sizing: border-box;
	background-color: rgba(255,255,255,0.9);
}

.menubtn{
	z-index: 92;
	position: fixed;
	top:2.5%;
	right:1.5%;
	width: 12%;
	cursor: pointer;
}

#menu{
	width:100%;
	z-index: 99;
	overflow: hidden; /* heightを戻す */
	padding:20% 10%;
	box-sizing: border-box;
	background-color:none;
}


.menu-box li{
  position: relative;
  overflow: hidden;
  width: 46%;
  float: left;
  margin:2%;
  margin-bottom: 0;
  padding:1%;
  border-bottom:1px solid #ccc;
  box-sizing: border-box;
}

	
#spmain{
	display: inherit;
	width:100%;
}
	

div.sptrailer {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
	margin-bottom: 20px;
}
 
div.sptrailer iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#sptrailerarea{
	width:90%;
	margin:0 auto;
	margin-bottom:30px;
	display: inherit;
	margin-top:30px;
}

.pcview{
	display: none;
}

.spview{
	display: inherit;
	width:100%;
}
	

#aboutmenu_wrapper{
	width:40%;
	position: inherit;
	left:0;
	top:0;
	box-sizing: border-box;
	padding:7% 0 5% 5%;
}

.about_pt{
	width:100%;
	margin-bottom: 0;
}

.aboutmenu{
	display: none;
}

.pagetitle_r{
	width:70%;
	float: right;
}

.pagetitle_l{
	width:70%;
	float: left;
}

#contents{
	width:80%;
	float: none;
	box-sizing: border-box;
	padding: 5% 0;
    overflow: hidden;
	margin: 0 auto;
}

.introbox_l{
	width:100%;
	float: none;
	margin-bottom: 50px;
}

.introbox_r{
	width:100%;
	float: none;
}

.story_photo{
	width:100%;
	float: none;
	margin-bottom: 20px;
}

.story_text{
	width:100%;
	float: none;
	margin-bottom: 20px;
}

.castbox{
	width:44%;
    position: relative;
    overflow: hidden;
	float: left;
	margin:3%;
    background-color: #fff;
}

.cast-pop-box{
  z-index: 10;
  width:80%;
  margin-top: 12%;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 30px;
}


.castphoto{
	width:100%;
	float: none;
	margin-bottom: 20px;
}

.casttext{
	width:100%;
	float: none;
}

.castname{
	width:100%;
	margin-bottom: 10px;
}

.castboxn{
	width:100%;
}


#footer_inner{
    width:70%;
    margin:0 auto;
}

.otherlogo{
    width:40%;
    padding:5% 0 0 5%;
    margin-bottom: 50px;
}

#contents2{
	width:80%;
	margin:0 auto;
	box-sizing: border-box;
    overflow: hidden;
	padding:5% 0;
}

#award_photo{
	width:100%;
	margin:0 auto;
	margin-bottom: 50px;
}

.award_pt{
	width:100%;
	margin:0 auto;
	margin-bottom: 50px;
	overflow: hidden;
	
}

#award_wrapper{
	width:100%;
	margin:0 auto;
	margin-bottom: 50px;
	padding-bottom: 0px;
	border-bottom: none;
	box-sizing: border-box;
	padding-right: 0;
}

.commentbox{
	width:100%;
	float: left;
	margin:0;
	box-sizing: border-box;
	padding:7%;
	box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.4);
	margin-bottom: 30px;
}

.tieupbox{
	width:100%;
	box-sizing: border-box;
	padding:7%;
	overflow: hidden;
	border:1px solid #ccc;
}

.tieup_l{
	width:100%;
	float: none;
	margin-bottom: 20px;
	box-shadow: 1px 1px 1px 1px rgba(0,0,0,0.4);
}

.tieup_r{
	width:100%;
	float: none;
}

	
}