@charset "UTF-8";
/* CSS Document */
	
body{
	margin:0px;
	background-color:#e8e0be;
	font-family: 'Shippori Mincho', serif , "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
	font-weight: 400;
	font-size: 17px;
	line-height: 32px;
	color:#231815;
	height:100%;
	box-sizing: border-box;
	background: url("images/bg.jpg") 100% 0 no-repeat fixed;
	background-size:cover;
	background-position:  right top;
}

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;}


.pcview{
	width:100%;
}

.spview{
	display: none;
}

.scrollShowEffect1 {
	-webkit-transition: all 1.0s;
	   -moz-transition: all 1.0s;
	    -ms-transition: all 1.0s;
	     -o-transition: all 1.0s;
	        transition: all 1.0s;
	-webkit-transition-delay: 0s;
	   -moz-transition-delay: 0s;
	    -ms-transition-delay: 0s;
	     -o-transition-delay: 0s;
	        transition-delay: 0s;
	opacity:0;
}

.scrollShowEffect2 {
	-webkit-transition: all 1.0s;
	   -moz-transition: all 1.0s;
	    -ms-transition: all 1.0s;
	     -o-transition: all 1.0s;
	        transition: all 1.0s;
	-webkit-transition-delay: 0.3s;
	   -moz-transition-delay: 0.3s;
	    -ms-transition-delay: 0.3s;
	     -o-transition-delay: 0.3s;
	        transition-delay: 0.3s;
	opacity:0;
}

.scrollShowEffect3 {
	-webkit-transition: all 1.0s;
	   -moz-transition: all 1.0s;
	    -ms-transition: all 1.0s;
	     -o-transition: all 1.0s;
	        transition: all 1.0s;
	-webkit-transition-delay: 1.0s;
	   -moz-transition-delay: 1.0s;
	    -ms-transition-delay: 1.0s;
	     -o-transition-delay: 1.0s;
	        transition-delay: 1.0s;
	opacity:0;
}


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

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

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

.scrollShowEffect-O {
	-webkit-transform: scale( 1.2,  1.2);
	transform: scale( 1.2,  1.2);
}


.scrollShowEffect1.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);
}

.scrollShowEffect2.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);
}

.scrollShowEffect3.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;
}


.loading{
  width: 100vw;
  height: 100vh;
  background-color: #e8e0be;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1300;
}

.loading img{
  width: 380px;
}

#spmenu{
    display: none;
}

#header_wrapper{
	width:100%;
    height:46px;
	padding:3px 2% 0 2%;
	box-sizing: border-box;
	overflow: hidden;
    position: fixed;
    left:0;
    top:0;
	z-index: 100;
	font-family: 'Patua One', cursive;
	background-color:#46341d;
    border-bottom: 6px double #000;
}
  
.headermenu nav{
	display: inline-block;
	width: 100%;
	text-align: center;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
}
  
.showNavi .headermenu nav{
  opacity:1;
  -webkit-transition-delay:2.2s;
  transition-delay:2.2s;
}

.headermenu nav ul li {
	display: inline-block;
	box-sizing: border-box;
	margin-right: 2%;
}

.headermenu img{
    height: 40px;
    width:auto;
}

.headermenu a{
  display: block;
  position: relative;
}
  
.headermenu .hoverimg{
  position: absolute;
  left: 0;
  bottom:0;
  -webkit-transition: 1s;
     -moz-transition: 1s;
      -ms-transition: 1s;
       -o-transition: 1s;
          transition: 1s;
  z-index: 301;
	outline: none;
	opacity: 0;
}

.headermenu a:hover .hoverimg{
  	left: 0%;
	text-decoration: transparent;
	opacity: 1;
}

#top_wrapper{
    width:100%;
	height: auto;
    position: relative;
	overflow: hidden;
    margin-top:46px;
}

#top_wrapper img{
	width:100%;
	height: auto;
}

#spmain{
    display: none;
}

#topmain{
    width:100%;
}

.topstar{
    width:90px;
    position: absolute;
    left:1.5%;
    top:3%;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
}
  
.showNavi .topstar{
  opacity:1;
  -webkit-transition-delay:2.2s;
  transition-delay:2.2s;
}

.topstar a{
  display: block;
  position: relative;
}
  
.topstar .hoverimg{
  position: absolute;
  left: 0;
  bottom:0;
  -webkit-transition: 1s;
     -moz-transition: 1s;
      -ms-transition: 1s;
       -o-transition: 1s;
          transition: 1s;
  z-index: 301;
	outline: none;
	opacity: 0;
}

.topstar a:hover .hoverimg{
  	left: 0%;
	text-decoration: transparent;
	opacity: 1;
}

.toplogo_wrapper{
	width:38%;
    position: absolute;
    right: 6%;
    top:8%;
}

.toplogo{
	width:100%;
	margin:0 auto;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
	margin-bottom: 10px;
}
  
.showNavi .toplogo{
  opacity:1;
  -webkit-transition-delay:1.2s;
  transition-delay:1.2s;
}

.topbiling{
	width:90%;
	margin-left: 10%;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
	margin-bottom: 30px;
}
  
.showNavi .topbiling{
  opacity:1;
  -webkit-transition-delay:1.5s;
  transition-delay:1.5s;
}

.topday{
	width:90%;
	margin-left: 10%;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
	margin-bottom: 30px;
}
  
.showNavi .topday{
  opacity:1;
  -webkit-transition-delay:1.8s;
  transition-delay:1.8s;
}

.btn_wrapper{
	width:80%;
	margin-left: 20%;
	margin-bottom: 20px;
	overflow: hidden;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
}
  
.showNavi .btn_wrapper{
  opacity:1;
  -webkit-transition-delay:2.2s;
  transition-delay:2.2s;
}

.btn{
	width:49%;
	float: left;
	margin-right: 2%;
}


.btn a{
  display: block;
  position: relative;
}
  
.btn .hoverimg{
  position: absolute;
  left: 0;
  bottom:0;
  -webkit-transition: 1s;
     -moz-transition: 1s;
      -ms-transition: 1s;
       -o-transition: 1s;
          transition: 1s;
  z-index: 301;
	outline: none;
	opacity: 0;
}

.btn a:hover .hoverimg{
  	left: 0%;
	text-decoration: transparent;
	opacity: 1;
}

.btn:nth-child(2) {
  margin-right:0;
}

.pcbr {
display:inline;
}


.ticket_wrapper{
	width:55%;
	margin-left: 45%;
	overflow: hidden;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
    margin-bottom: 20px;
}
  
.showNavi .ticket_wrapper{
  opacity:1;
  -webkit-transition-delay:2.4s;
  transition-delay:2.4s;
}

.ticket_wrapper img {
	transition-duration: 0.5s;
}
.ticket_wrapper img:hover {
	opacity: 0.5;
	transition-duration: 0.5s;
}

.mvtkbtn{
	width:50.4%;
	float: left;
    background-color: #fff;
}

.mjrbtn{
	width:47%;
	float: right;
    background-color: #fff;
}

.topcatch1{
    width:2%;
    position: absolute;
    left: 48%;
    top:16%;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
    transform: translateY(-70px);/* X軸方向に100px */
}
  
.showNavi .topcatch1{
  opacity:1;
  -webkit-transition-delay:2.6s;
  transition-delay:2.6s;
  transform: translateY(0);
}

.topcatch2{
    width:23%;
    position: absolute;
    left: 30%;
    top:66%;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
    transform: translateX(50px);/* X軸方向に100px */
}
  
.showNavi .topcatch2{
  opacity:1;
  -webkit-transition-delay:2.9s;
  transition-delay:2.9s;
  transform: translateX(0);
}


.removebtn{
  position: fixed;
  top: 3%;
  right: 3%;
  width: 60px;
  cursor: pointer;
}

.mvtk-popup>div{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color:rgba(233,224,191,0.95);
}

.mvtk-pop-box{
  z-index: 10;
  width:100%;
}

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

#top_mvtk{
	width:100%;
	margin:0 auto;
	overflow: hidden;
    padding:20%;
    box-sizing: border-box;
}

#mvtk-widgets-container{
	text-align: center;
	margin:0 auto;
}

#news_wrapper{
	width:100%;
	height: auto;
	box-sizing: border-box;
	background-color:rgba(70,52,29,0.8);
	padding:7% 15%; 
	color: #e8e0be;
	font-size: 15px;
	line-height: 23px;
	font-feature-settings: "palt";
	overflow: hidden;
}


.wp-apicard li{
	width:30%;
	float: left;
	margin-right: 5%;
}

.wp-apicard li:nth-child(3) {
  margin-right: 0;
}

.item_img {
  display: block;
  width: 100%;
  height: 213px;
  overflow: hidden;
  border:6px solid #fff;
  box-sizing: border-box;
}
.item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.4s ease;
}
.item_img:hover img {
  transform: scale(1.1);
}

.newsday{
	font-size: 12px;
	letter-spacing: 3px;
	font-weight: 700;
	margin-top:10px;
}


.newsmore{
	width:30%;
	margin:0 auto;
	box-sizing: border-box;
    border:1px solid #e8e0be;
	margin-top: 70px;
    transition: 0.7s;
	font-family: 'Marcellus', serif;
	font-weight: 400;
}


.newsmore a{
	display: block;
	color: #e8e0be;
	padding:1% 2%;
	text-align: center;
    font-family: 'Red Rose', cursive;
    font-weight: 500;
	font-size: 14px;
    letter-spacing: 3px;
	text-decoration: none;
}

.newsmore:hover{
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
	background-color:#e8e0be;
}

.newsmore a:hover{
	color: rgba(70,52,29,1.0);
}

.pagetitle1{
    width:100%;
    border-top:2px solid #e8e0be;
    border-bottom:2px solid #e8e0be;
    padding:5px 0;
    text-align: center;
    font-family: 'Red Rose', cursive;
    font-weight: 500;
    font-size: 16px;
    line-height: 16px;
    letter-spacing: 3px;
    color: #e8e0be;
    margin-bottom: 30px;
}

.pagetitle2{
    width:100%;
    border-top:2px solid #231815;
    border-bottom:2px solid #231815;
    padding:5px 0;
    text-align: center;
    font-family: 'Red Rose', cursive;
    font-weight: 500;
    font-size: 20px;
    line-height: 20px;
    letter-spacing: 3px;
    color: #231815;
    margin-bottom: 30px;
}

#intro_wrapper{
	width:100%;
	height: auto;
    overflow: hidden;
}

#intro_wrapper img{
	width:100%;
	height: auto;
}

#intro_inner{
	width:100%;
	box-sizing: border-box;
	padding:5% 15%;
	overflow: hidden;
}

.introphoto{
    width:25%;
    float: left;
}


#story_wrapper{
	width:100%;
	height: auto;
    overflow: hidden;
    background-color: #040507;
    color: #e8e0be;
}

#story_wrapper img{
	width:100%;
	height: auto;
}

#story_inner{
	width:100%;
	box-sizing: border-box;
	padding:5% 15% 5% 15%;
	overflow: hidden;
}

#footer{
    width:100%;
    box-sizing: border-box;
    padding:5% 0;
    border-top:6px double #231815;
}

#footer img{
    width:100%;
    height: auto;
}

#footer_logo{
    width:40%;
    margin:0 auto;
}

#content{
    position: relative;
}

#topBtn {
    /*-----必須-----*/
    position: fixed;
    bottom: 30px;
    right: 30px;
     
    /*-----装飾-----*/
    width: 4%;
    text-align: center;
    color: #fff;
	z-index: 102;
}

#cast_wrapper{
	width:100%;
	height: auto;
    overflow: hidden;
}

#cast_wrapper img{
	width:100%;
	height: auto;
}

#cast_inner{
	width:100%;
	box-sizing: border-box;
	padding:5% 7%;
	overflow: hidden;
}

.cast_left{
    width:32.5%;
    float: left;
}

.cast_right{
    width:65.5%;
    float: right;
}

.castbtn01{
    width:100%;
}

.castbtn01 a{
  display: block;
  position: relative;
  outline: none;
}
  
.castbtn01 .hoverimg{
  position: absolute;
  left: 0;
  bottom:0;
  -webkit-transition: 1.3s;
     -moz-transition: 1.3s;
      -ms-transition: 1.3s;
       -o-transition: 1.3s;
          transition: 1.3s;
  z-index: 90;
  outline: none;
  opacity: 0;
}

.castbtn01 a:hover .hoverimg{
  	bottom: 0;
	text-decoration: transparent;
	opacity: 1;
}

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

.castsnname{
    width:100%;
}

.castbtn04{
    width:23%;
    float: left;
    margin-right: 2.666666%;
    margin-bottom: 2.666666%;
}

.castbtn04:nth-child(4n) {
  margin-right: 0;
}

.castbtn04 a{
  display: block;
  position: relative;
  outline: none;
}
  
.castbtn04 .hoverimg{
  position: absolute;
  left: 0;
  bottom:0;
  -webkit-transition: 1.3s;
     -moz-transition: 1.3s;
      -ms-transition: 1.3s;
       -o-transition: 1.3s;
          transition: 1.3s;
  z-index: 90;
  outline: none;
  opacity: 0;
}

.castbtn04 a:hover .hoverimg{
  	bottom: 0;
	text-decoration: transparent;
	opacity: 1;
}

.castcontents{
    width:100%;
    box-sizing: border-box;
    padding:7% 25%;
}

.castcontents img{
    width:100%;
    height: auto;
}

.castphoto{
    width:50%;
    margin:0 auto 30px;
}

.castname{
    width:60%;
    margin:0 auto 30px;
}

.casttext{
    width:100%;
    border-top:3px double #000;
    border-bottom:3px double #000;
    padding: 30px 0;
    font-size: 15px;
    line-height: 28px;
}

#staff_wrapper{
	width:100%;
	height: auto;
    overflow: hidden;
    background-color:rgba(255,255,255,1.00);
}

#staff_wrapper img{
	width:100%;
	height: auto;
}

#staff_inner{
	width:100%;
	box-sizing: border-box;
	padding:5% 15%;
	overflow: hidden;
}

.staffbox{
    width:100%;
    margin:0 auto 60px;
    overflow: hidden;
}

.staffphoto{
    width:28%;
    float: left;
}

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

.staffname{
    width:300px;
    margin-bottom:10px;
}

.stafftext{
    width:100%;
    border-top:3px double #000;
    border-bottom:3px double #000;
    padding: 10px 0;
    font-size: 15px;
    line-height: 28px;
}

#books_wrapper{
	width:100%;
	height: auto;
    overflow: hidden;
    background-color:#750000;
}

#books_wrapper img{
	width:100%;
	height: auto;
}

#books_inner{
	width:100%;
	box-sizing: border-box;
	padding:5% 15%;
	overflow: hidden;;
    color: #e8e0be;
    text-align: center;
}


.bookspt1{
    margin-bottom: 5px;
}

.bookspt2{
    font-size: 14px;
}

.booksmidashi{
    width:40%;
    margin:0 auto 50px;
}

.booksbox{
    width:100%;
    overflow: hidden;
    margin:0 auto 50px;
}

.booksimg{
    width:20%;
    margin:0 auto 20px;
    background-color: #fff;
}

.booksimg img {
	transition-duration: 0.5s;
}
.booksimg img:hover {
	opacity: 0.5;
	transition-duration: 0.5s;
}

.bookstext{
    width:100%;
    text-align: center;
}

.bookstitle1{
    width:100%;
    font-size: 24px;
    font-weight: 700;
    line-height: 24px;
    margin-bottom: 5px;
}

.bookstitle2{
    width:100%;
    font-size: 14px;
    font-weight: 500;
    line-height: 14px;
    margin-bottom: 15px;
}

.bookstitle3{
    width:100%;
    font-size: 16px;
    font-weight: 500;
    line-height: 16px;
    margin-bottom: 40px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

.booksname1{
    width:100%;
    font-size: 18px;
    font-weight: 700;
    line-height: 18px;
    margin-bottom: 10px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

.booksname2{
    width:100%;
    font-size: 14px;
    font-weight: 400;
    line-height: 24px;
    color: #e8e0be;
    margin-bottom: 40px;
}

.books_wrap{
    width:100%;
    overflow: hidden;
    text-align: center;
}

.books_series{
    width:24%;
	display:inline-block;
    margin:0.5% 0.2%;
    box-sizing: border-box;
    padding:3%;
    border:1px solid #fff;
    text-align: center;
}

.books_series_img{
    width:70%;
    margin:0 auto 20px;
    background-color: #fff;
}

.books_series_img img {
	transition-duration: 0.5s;
}
.books_series_img img:hover {
	opacity: 0.5;
	transition-duration: 0.5s;
}

.books_series_title{
    width:100%;
    font-size: 14px;
    font-weight: 700;
    line-height: 14px;
}

.spotify{
    width:70%;
    margin-left: 30%;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
}
  
.showNavi .spotify{
  opacity:1;
  -webkit-transition-delay:2.2s;
  transition-delay:2.2s;
}

#comment_wrapper{
	width:100%;
	height: auto;
	box-sizing: border-box;
  	background: url("images/comment/bg.jpg") 100% 0 no-repeat fixed;
  	background-size:cover;
	color: #e8e0be;
	font-size: 15px;
	line-height: 27px;
	font-weight: 500;
	font-feature-settings: "palt";
	overflow: hidden;
}

#comment_wrapper img{
	width:100%;
	height: auto;
}

#comment_inner{
	width:100%;
	height: auto;
	box-sizing: border-box;
	padding:5% 10% 10% 10%;
	text-align: center;
}

.clogo{
    width:30%;
    margin:0 auto 50px;
}


.ctitle{
    width:100%;
    border-top:2px solid #e8e0be;
    border-bottom:2px solid #e8e0be;
    padding:5px 0;
    text-align: center;
    font-family: 'Red Rose', cursive;
    font-weight: 500;
    font-size: 16px;
    line-height: 16px;
    letter-spacing: 3px;
    color: #e8e0be;
    margin-bottom: 70px;
}


.commentbox{
	width:100%;
	margin-bottom: 5%;
}

.commenttext{
	width:100%;
	font-size: 20px;
	line-height: 35px;
	font-weight: 600;
	margin-bottom: 20px;
	color: #e8e0be;
}

.commentname1{
	width:100%;
	font-size: 24px;
	font-weight: 600;
	color:#fff;
}

.commentname2{
	font-size: 12px;
	font-weight: bold;
	padding-left: 5px;
	vertical-align: middle;
	color:#fff;
}

.cbtn{
	width:20%;
    margin:0 auto;
	position: relative;
	overflow: hidden;
	line-height: 100%;
}

.cbtn a{
  display: block;
  position: relative;
}
  
.cbtn .hoverimg{
  position: absolute;
  left: 0;
  bottom:0;
  -webkit-transition: 1s;
     -moz-transition: 1s;
      -ms-transition: 1s;
       -o-transition: 1s;
          transition: 1s;
  z-index: 301;
	outline: none;
	opacity: 0;
}

.cbtn a:hover .hoverimg{
  	left: 0%;
	text-decoration: transparent;
	opacity: 1;
}

.toplogo{
	width:100%;
	margin:0 auto;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
	margin-bottom: 10px;
}
  
.showNavi .toplogo{
  opacity:1;
  -webkit-transition-delay:1.2s;
  transition-delay:1.2s;
}

.topcbtn{
    width:12%;
    position: absolute;
    left:3%;
    bottom:15%;
	opacity: 0;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
	margin-bottom: 10px;
}
  
.showNavi .topcbtn{
  opacity:1;
  -webkit-transition-delay:2.2s;
  transition-delay:2.2s;
}

.topcbtn img {
	transition-duration: 0.5s;
}
.topcbtn img:hover {
	opacity: 0.5;
	transition-duration: 0.5s;
}

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

.loading img{
  width: 280px;
  padding-bottom: 50px;
}
	
.pcview{
	display: none;
}

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

.pcbr {
	display:none;
}

#header_wrapper{
    display: none;
}

#spmenu{
	display: inherit;
}
	
.btn-trigger_fix{
	width:75px;
	height:75px;
	position: fixed;
	top:2%;
	right: 2%;
	z-index: 90;
	background:#46341d;
	border-radius: 50%;
	box-sizing: border-box;
	border:6px double #e8e0be;
}

.btn-trigger {
  position: relative;
  width: 36px;
  height: 31px;
  cursor: pointer;
  margin-left: 13px;
  margin-top:18px;
}
.btn-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #e8e0be;
  border-radius: 2px;
}
.btn-trigger, .btn-trigger span {
  display: inline-block;
  transition: all .5s;
  box-sizing: border-box;
}
.btn-trigger span:nth-of-type(1) {
  top: 0;
}
.btn-trigger span:nth-of-type(2) {
  top: 14.5px;
}
.btn-trigger span:nth-of-type(3) {
  bottom: 0;
}

#btn08.active span:nth-of-type(1) {
  -webkit-transform: translateY(15px) rotate(-315deg);
  transform: translateY(15px) rotate(-315deg);
}
#btn08.active span:nth-of-type(2) {
  opacity: 0;
}
#btn08.active span:nth-of-type(3) {
  -webkit-transform: translateY(-15px) rotate(315deg);
  transform: translateY(-15px) rotate(315deg);
}

nav.globalMenuSp {
  position: fixed;
  z-index : 50;
  top  : 0;
  left : 0;
  background:rgba(70,52,29,0.95);
  box-sizing: border-box;
  padding:25% 10%;
  width: 100%;
  height: 100%;
  margin-left:100%;
  text-align: center;
  opacity: 0;
  -webkit-transition-property: all;
     -moz-transition-property: all;
      -ms-transition-property: all;
       -o-transition-property: all;
          transition-property: all;
  -webkit-transition: .6s ease;
     -moz-transition: .6s ease;
      -ms-transition: .6s ease;
       -o-transition: .6s ease;
          transition: .6s ease;
}

nav.globalMenuSp.active {
  opacity: 100;
  margin-left:0;
}

.menu {
	width:49%;
    float: left;
    z-index: 1;
	box-sizing: border-box;
	padding:0;
    margin-right: 2%;
    margin-bottom: 2%;
    text-align: 100%;
}


.menu:nth-child(2n) {
	margin-right: 0;
}

.sptwitter{
    width:30px;
    margin:0 auto;
}

	
.brtext::before {
	content: "\A" ;
	white-space: pre ;
}	

#top_wrapper{
    width:100%;
	height: auto;
    position: inherit;
	overflow: hidden;
    margin-top:0;
    background-color: #e8e0be;
    padding-bottom: 50px;
}

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

#topmain{
    display: none;
}

.topstar{
    width:15%;
    position: inherit;
    left:0;
    top:0;
    margin:0 auto;
	opacity: 1;
}


.toplogo_wrapper{
	width:90%;
    position: inherit;
    right: 0;
    top: 0;
    margin:0 auto 20px;
}

.toplogo{
    display: none;
}

.topbiling{
    display: none;
}

.topday{
    display: none;
}

.btn_wrapper{
	width:100%;
	margin-left: 0;
	margin-bottom: 20px;
	overflow: hidden;
	opacity: 1;
}

.ticket_wrapper{
	width:100%;
	margin-left: 0;
	overflow: hidden;
	opacity: 1;
}

.topcatch1{
    display: none;
}

.topcatch2{
    display: none;
}

#news_wrapper{
	width:100%;
	height: auto;
	box-sizing: border-box;
	background-color: #222;
	padding:10% 10%; 
	color: #fff;
	font-size: 15px;
	line-height: 23px;
	font-feature-settings: "palt";
	overflow: hidden;
}

.wp-apicard li{
	width:48%;
	float: left;
	margin-right: 4%;
	font-size: 13px;
	line-height: 20px;
}
	
.wp-apicard li:nth-child(2) {
	margin-right: 0;
}

.wp-apicard li:nth-child(3) {
	display: none;
}
	

.item_img {
  display: block;
  width: 100%;
  height: 120px;
  overflow: hidden;
  border:6px solid #fff;
  box-sizing: border-box;
}

.newsmore{
	width:100%;
	margin:0 auto;
	box-sizing: border-box;
	margin-top: 30px;
	margin-bottom: 50px;
}
	
ul.wp-apicard li img{
	width:100%;
	height: 100px;
	object-fit: cover;
}

#intro_inner{
	width:100%;
	box-sizing: border-box;
	padding:10%;
	overflow: hidden;
}

.introphoto{
    width:50%;
    float: left;
}

#story_inner{
	width:100%;
	box-sizing: border-box;
	padding:10%;
	overflow: hidden;
}

#footer{
    width:100%;
    box-sizing: border-box;
    padding:10% 0;
    border-top:6px double #231815;
}

#footer_logo{
    width:80%;
    margin:0 auto;
}

#topBtn {
    /*-----必須-----*/
    position: fixed;
    bottom: 30px;
    right: 30px;
     
    /*-----装飾-----*/
    width: 10%;
    text-align: center;
    color: #fff;
	z-index: 102;
}


#cast_inner{
	width:100%;
	box-sizing: border-box;
	padding:10%;
	overflow: hidden;
}

.cast_left{
    width:100%;
    float: none;
    margin-bottom: 40px;
}

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

.castsn{
    width:60%;
    margin:0 auto;
    margin-bottom: 20px;
}

.castsnname{
    width:80%;
    margin:0 auto;
}

.castbtn04{
    width:49%;
    float: left;
    margin-right: 2%;
    margin-bottom: 5%;
}

.castbtn04:nth-child(2n) {
  margin-right: 0;
}


.castcontents{
    width:100%;
    box-sizing: border-box;
    padding:15% 10%;
}

.castphoto{
    width:80%;
    margin:0 auto 30px;
}

.castname{
    width:100%;
    margin:0 auto 30px;
}

#staff_inner{
	width:100%;
	box-sizing: border-box;
	padding:10%;
	overflow: hidden;
}

.staffbox{
    width:100%;
    margin:0 auto 60px;
    overflow: hidden;
}

.staffphoto{
    width:60%;
    float: none;
    margin:0 auto;
    margin-bottom: 20px;
}

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

.staffname{
    width:80%;
    margin:0 auto;
    margin-bottom:20px;
}

.stafftext{
    width:100%;
    border-top:3px double #000;
    border-bottom:3px double #000;
    padding: 20px 0;
    font-size: 15px;
    line-height: 28px;
}


#books_inner{
	width:100%;
	box-sizing: border-box;
	padding:10%;
	overflow: hidden;;
    color: #e8e0be;
}



.booksmidashi{
    width:90%;
    margin:0 auto 50px;
}


.booksimg{
    width:40%;
    margin:0 auto 20px;
}

.bookstext{
    width:100%;
    text-align: center;
}

.bookstitle1{
    width:100%;
    font-size: 20px;
    font-weight: 700;
    line-height: 20px;
    margin-bottom: 5px;
}

.bookstitle2{
    width:100%;
    font-size: 13px;
    font-weight: 500;
    line-height: 13px;
    margin-bottom: 15px;
}

.bookstitle3{
    width:100%;
    font-size: 14px;
    font-weight: 500;
    line-height: 14px;
    margin-bottom: 40px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

.booksname1{
    width:100%;
    font-size: 13px;
    font-weight: 700;
    line-height: 13px;
    margin-bottom: 10px;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

.booksname2{
    width:100%;
    font-size: 13px;
    font-weight: 400;
    line-height: 23px;
    color: #e8e0be;
    margin-bottom: 40px;
}

.books_series{
    width:46%;
	display:inline-block;
    margin:1.8% 0.2%;
    box-sizing: border-box;
    padding:0;
    border:1px solid #fff;
    text-align: center;
}

.books_series_img{
    width:100%;
    margin:0 auto 0;
    background-color: #fff;
}

.books_series_img img {
	transition-duration: 0.5s;
}
.books_series_img img:hover {
	opacity: 0.5;
	transition-duration: 0.5s;
}

.books_series_title{
    display: none;
}


.spotify{
    width:100%;
    margin-left: 0%;
	opacity: 1;
    -webkit-transition: all 1.5s;
    -moz-transition: all 1.5s;
    -o-transition: all 1.5s;
    -ms-transition: all 1.5s;
    transition: all 1.5s;
}
  

.Section-Image-CBG {
  position: fixed;
  z-index: -1;
  display: block;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-size: cover;
  background-position: center center;
}
	
.Section-Image-CBG{
  background-image: url("images/comment/bg_sp.jpg");
}


#comment_wrapper{
	width:100%;
	height: auto;
	box-sizing: border-box;
  	background:none;
	color: #e8e0be;
	font-size: 15px;
	line-height: 27px;
	font-weight: 500;
	font-feature-settings: "palt";
	overflow: hidden;
}

#comment_inner{
	width:100%;
	height: auto;
	box-sizing: border-box;
	padding:15% 10% 15% 10%;
	text-align: left;
}

.clogo{
    width:70%;
    margin:0 auto 50px;
}


.commentbox{
	width:100%;
	margin-bottom: 5%;
}

.commenttext{
	width:100%;
	font-size: 18px;
	line-height: 33px;
	font-weight: 600;
	margin-bottom: 20px;
	color: #e8e0be;
}

.commentname1{
	width:100%;
	font-size: 22px;
	font-weight: 600;
	color:#fff;
}

.commentname2{
	font-size: 12px;
	font-weight: bold;
	padding-left: 5px;
	vertical-align: middle;
	color:#fff;
}

.cbtn{
	width:70%;
    margin:0 auto;
	position: relative;
	overflow: hidden;
	line-height: 100%;
}

.topcbtn{
    display: none;
}

}

*, ::after, ::before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

*:focus {
  outline: none;
}

.modal-contents {
  display:none;
  position: fixed;
  width: 100%;
  height: 100%;
	font-weight: bold;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.9);
  z-index: 9998; }
  .modal-contents .modal-contents-inner {
    position: relative;
    width: 100%;
    height: 100%; }
    .modal-contents .modal-contents-inner .modal-contents-iframe {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%);
      z-index: 9998;
      width: 100%; }
      .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-player {
        width: 80%;
        text-align: center;
        position: relative;
        padding-top: 38.5%;
        height: 0;
        overflow: hidden;
        display: block;
        margin: 0 auto; }
        .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-player iframe {
          width: 100%;
          height: 100%;
          display: block;
          position: absolute;
          top: 50%;
          left: 50%;
          -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%); }
      .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn {
        width: 80%;
        margin: 0.5% auto 0;
        font-size: 0;
        text-align: center;
        /* visibility: hidden; */
      }
        .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
          border: 1px solid #111;
          background-color: #46341d;
          width: 50%;
          height: auto;
          box-sizing: border-box;
          padding:0.5% 0;
          display: inline-block;
          vertical-align: middle;
          text-align: center;
          font-size: 13px;
          line-height: 23px;
          color: #fff;
          cursor: pointer;
          -webkit-transition: all .3s;
          transition: all .3s; }
          @media screen and (min-width: 769px) {
            .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
              font-size: 0.8vw; } }
          @media screen and (max-width: 1024px) and (min-width: 768px) {
            .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
              font-size: 0.8vw; } }
          @media screen and (max-width: 768px) {
            .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
              font-size: 0.8vw; } }
        .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li:hover,
        .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li.current {
          border: 1px solid #111;
          background-color: #bcb595;
          color: #FFFFFF;  }
    .modal-contents .modal-contents-inner .modal-close {
      width: 3%;
      display: block;
      position: absolute;
      top: 3.5%;
      right: 1.5%;
      z-index: 9999;
      cursor: pointer; }



@media screen and (max-width: 768px) {
  .modal-contents .modal-contents-inner {
    position: absolute;
    width: 100%;
    height: auto;
    padding: 0 5%;
    top: 50%;
    left: 0;
    right: 0;
    -webkit-transform: translate(0%, -50%);
    -ms-transform: translate(0%, -50%);
    transform: translate(0%, -50%); }
    .modal-contents .modal-contents-inner .modal-contents-iframe {
      position: static;
      -webkit-transform: none;
      -ms-transform: none;
      transform: none; }
      .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-player {
        padding-bottom: 26%;
        padding-top: 30%;
        width: 100%; }
      .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn {
        width: 100%; }
        .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
          display: block;
          width: 100%;
          text-align: center;
          line-height: 23px;
          font-size: 13px; } }
        @media screen and (max-width: 768px) and (min-width: 769px) {
          .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
            font-size: 0.9vw; } }
        @media screen and (max-width: 768px) and (max-width: 1024px) and (min-width: 768px) {
          .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
            font-size: 0.82031vw; } }
        @media screen and (max-width: 768px) and (max-width: 768px) {
          .modal-contents .modal-contents-inner .modal-contents-iframe .modal-contents-iframe-btn li {
            font-size: 2.2vw; 
          box-sizing: border-box;
          padding:0.5% 0;} }

@media screen and (max-width: 768px) {
    .modal-contents .modal-contents-inner span.modal-close {
      width: 7%;
      top: -15%;
      right: 5.5%; }
  .cast-modal .modal-close {
    width: 7%;
    top: 3%;
    right: 5.5%; }
  .cast-modal .modal-list ul li {
    overflow-y: scroll;
    height: 175vw; }
    .cast-modal .modal-list ul li .inner {
      top: 12%;
      -webkit-transform: translate(-50%, 0%);
      -ms-transform: translate(-50%, 0%);
      transform: translate(-50%, 0%); }
      .cast-modal .modal-list ul li .inner > * {
        display: block;
        width: 100%; }
      .cast-modal .modal-list ul li .inner .text {
        padding: 5% 0%; }
        .cast-modal .modal-list ul li .inner .text h2 {
          font-size: 14px; } }
        @media screen and (max-width: 768px) and (min-width: 769px) {
          .cast-modal .modal-list ul li .inner .text h2 {
            font-size: 0.8vw; } }
        @media screen and (max-width: 768px) and (max-width: 1024px) and (min-width: 768px) {
          .cast-modal .modal-list ul li .inner .text h2 {
            font-size: 1.0vw; } }
        @media screen and (max-width: 768px) and (max-width: 768px) {
          .cast-modal .modal-list ul li .inner .text h2 {
            font-size: 1.33333vw; } }




            
.remodal-is-opened{
    display:block;
}
