@charset "UTF-8";
/* CSS Document */
	
body{
	margin:0px;
	background-color:#fdd001;
	font-family:'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	color:#432111;
	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: #fdd001;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 105;
}
#loader {
    height: 200px;
    left: 50%;
    margin-left: -100px;
    margin-top: -100px;
    position: fixed;
    top: 50%;
    width: 200px;
}

#spmain{
	display:none;
}

#sptrailerarea{
	display:none;
}

#pcmenu_wrapper{
	width:100%;
	overflow: hidden;
	position: fixed;
	top:0;
	left:0;
	z-index: 100;
	background-color:#fdd001;
}

.pcmenu{
	width:14.285714285714286%;
	float: left;
	border-right:1px solid #000;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
}

.pcmenu:nth-child(7) {
  border-right:none;
}

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

.pcmenu a:hover .hoverimg{
  bottom: 0%;
}

#spmenu_wrapper{
	display: none;
}

#contents_wrapper{
	width:100%;
	height: 100%;
	margin:0 auto;
	font-size: 15px;
	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;
}


#top_wrapper{
    width:100%;
	position: relative;
	overflow: hidden;
	box-sizing: border-box;
}


#top_catch1{
    width:70%;
	position: absolute;
	top:5.5%;
	left:15%;
	opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s;
    transform: translateY(-100px);/* X軸方向に200px */
	transition-timing-function: cubic-bezier(.68,-0.55,.27,1.55);
	z-index: 99;
}
  
.showNavi #top_catch1{
  opacity:1;
  -webkit-transition-delay:1.5s;
  transition-delay:1.5s;
    transform: translateY(0);
}




#top_main_wrapper{
    width:65%;
	margin:0 auto;
	padding:8% 0 0 0;
}

#top_main{
    width:100%;
	margin:0 auto;
	opacity: 0;
	-webkit-transition: .3s;
	transition: .3s;
	-webkit-transform: scale( 0.2,  0.2);
	transform: scale( 0.2,  0.2);
	transition-timing-function: cubic-bezier(.68,-0.55,.27,1.55);
	z-index: 90;
	margin-bottom: 10px;
}
  
.showNavi #top_main{
  opacity:1;
  -webkit-transition-delay:1.0s;
  transition-delay:1.0s;
  -webkit-transform: translate( 0, 0);
  transform: translate( 0, 0);
}


#top_logo{
    width:75%;
	margin:0 auto;
	margin-bottom: 20px;
	opacity: 0;
	-webkit-transition: .3s;
	transition: .3s;
	-webkit-transform: scale( 0.2,  0.2);
	transform: scale( 0.2,  0.2);
	transition-timing-function: cubic-bezier(.68,-0.55,.27,1.55);
}
  
.showNavi #top_logo{
  opacity:1;
  -webkit-transition-delay:1.5s;
  transition-delay:1.5s;
  -webkit-transform: translate( 0, 0);
  transform: translate( 0, 0);
}

#top_day{
    width:12%;
	position: absolute;
	top:40%;
	left:14%;
	opacity: 0;
	-webkit-transition: .3s;
	transition: .3s;
	-webkit-transform: scale( 0.2,  0.2);
	transform: scale( 0.2,  0.2);
	transition-timing-function: cubic-bezier(.68,-0.55,.27,1.55);
	z-index: 95;
}
  
.showNavi #top_day{
  opacity:1;
  -webkit-transition-delay:2s;
  transition-delay:2s;
  -webkit-transform: translate( 0, 0);
  transform: translate( 0, 0);
}

#top_tomato{
    width:12%;
	position: absolute;
	top:32%;
	right:13%;
	opacity: 0;
	-webkit-transition: .3s;
	transition: .3s;
	-webkit-transform: scale( 0.2,  0.2);
	transform: scale( 0.2,  0.2);
	transition-timing-function: cubic-bezier(.68,-0.55,.27,1.55);
	z-index: 96;
}
  
.showNavi #top_tomato{
  opacity:1;
  -webkit-transition-delay:2.2s;
  transition-delay:2.2s;
  -webkit-transform: translate( 0, 0);
  transform: translate( 0, 0);
}

#top_catch2{
    width:16%;
	position: absolute;
	bottom:0%;
	right:7%;
	opacity: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -ms-transition: all 0.3s;
    transition: all 0.3s;
    transform: translateY(100px);/* X軸方向に200px */
	transition-timing-function: cubic-bezier(.68,-0.55,.27,1.55);
	z-index: 50;
}
  
.showNavi #top_catch2{
  opacity:1;
  -webkit-transition-delay:2.5s;
  transition-delay:2.5s;
    transform: translateY(0);
}

#top_flower{
	width:100%;
	z-index: 49;
}

#snsbtn_wrapper1{
	width:80%;
	overflow: hidden;
	margin:0 auto;
	margin-bottom: 10px;
}
  
.snsbtn{
	width:24%;
    float: left;
    margin:0.5%;
	outline: none;
	box-sizing: border-box;
}

#snsbtn_wrapper2{
	width:253px;
	margin:0 auto;
	overflow: hidden; /* heightを戻す */
	margin-bottom: 20px;
}

.tweet{
	width:75px;
	float:left;
	margin-right:5px;
	line-height: 100%;
}

.like{
	width:85px;
	float:left;
	margin-right:5px;
	line-height: 100%;
	overflow: hidden;
}

.line{
	width:83px;
	float:right;
	line-height: 100%;
}

.pcview{
	width:100%;
}

.spview{
	display: none;
}


.scrollShowEffect {
	-webkit-transition-delay: 2.0s;
	   -moz-transition-delay: 2.0s;
	    -ms-transition-delay: 2.0s;
	     -o-transition-delay: 2.0s;
	        transition-delay: 2.0s;
	-webkit-transition: all 2.0s ease-in-out;
	   -moz-transition: all 2.0s ease-in-out;
	    -ms-transition: all 2.0s ease-in-out;
	     -o-transition: all 2.0s ease-in-out;
	        transition: all 2.0s 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;
}

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

.topbnr_wrapper{
	width:60%;
	margin:0 auto;
	overflow: hidden;
}

.topbnr{
	width:32%;
	float: left;
	margin:0.666666%;
	background-color: #fff;
}

.topbnr img:hover{
	opacity: 0.5;
}

.pt_wrapper{
	width:100%;
	overflow: hidden;
	margin-bottom: 30px;
}

.pagetitle{
	width:30%;
	float: left;
}

.pt_cat{
	width:60%;
	float: right;
	box-sizing: border-box;
	padding-left: 50%;
}


#intro_wrapper{
	width: 100%;
	box-sizing: border-box;
	background: url("images/intro/bg.jpg") 100% 0 no-repeat fixed;
	background-size:cover;
	overflow: hidden; /* heightを戻す */
	padding-top:40%;
}

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

.intro_midashi1{
	width:100%;
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 180%;
}

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

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

.intro_midashi2{
	width:100%;
	font-size: 19px;
	font-weight: bold;
	margin-bottom: 5px;
	line-height: 24px;
}

.intro_midashi3{
	width:100%;
	font-size: 18px;
	font-weight: bold;
	text-align: right;
	margin-bottom: 20px;
	line-height: 180%;
}

.introphoto{
	width:24%;
	float: left;
	margin-right: 1.3333%;
}

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


#director_wrapper{
	width: 100%;
	box-sizing: border-box;
	background:#d9e480;
	overflow: hidden; /* heightを戻す */
}

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

.directorphoto{
	width:33.33333%;
	float: left;
}

.directorname1{
	width:100%;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 5px;
	line-height: 24px;
}

.directorname2{
	width:100%;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 24px;
}

.director_left{
	width:30%;
	float: left;
}

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

#character_wrapper{
	width: 100%;
	box-sizing: border-box;
	background:#fdd000;
	overflow: hidden; /* heightを戻す */
}

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

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

.castbox3{
	width:30%;
	float: left;
	margin-right: 5%;
}

.castbox3:nth-child(3) {
  margin-right:0;
}

.charamidashi{
	box-sizing: border-box;
	border-radius: 50vh;
	border:2px solid #e62e8b;
	text-align: center;
	color: #e62e8b;
	font-size: 16px;
	font-weight: bold;
	padding:0.5% 5%;
	background-color: #fff;
	margin-bottom: 30px;
}

.charamidashi_j{
	color:#432111;
	font-size: 14px;
}

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

.castbox5{
	width:16%;
	float: left;
	margin-right: 5%;
}

.castbox5:nth-child(5) {
  margin-right:0;
}


.charabtn{
	width:100%;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
}

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

.charabtn a:hover .hoverimg{
  bottom: 0%;
	opacity: 1;
}



#contents_wrapper img.cast-sntitle-name{
  width: 80%;
}

.removebtn{
  position: fixed;
  top: 2%;
  right: 2%;
  width: 60px;
  cursor: pointer;
}
.cast-popup>div{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
	background: url("images/character/bg.jpg") 100% 0 no-repeat fixed;
	background-size:cover;
  overflow: auto;
}
.cast-pop-box{
  z-index: 10;
  width:60%;
  margin-top: 13%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 7%;
  color:#432111;
	background:#fdd000;
	box-sizing: border-box;
	padding:7%;
	border-radius: 20px;
}

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

.chara_left{
	width:30%;
	float: left;
}

.chara_right{
	width:65%;
	float: right;
}

.charaname{
	width:100%;
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 20px;
}

#comment_wrapper{
	width:100%;
	background-color: #100e0e;
	box-sizing: border-box;
	overflow: hidden; /* heightを戻す */
}

#comment_inner{
    width:100%;
	box-sizing: border-box;
    padding:0 10% 10% 10%;
	overflow: hidden;
	color: #fff;
}

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

.commentbox{
	width:65%;
	margin:0 auto;
	border-top:2px dotted #fdd000;
	margin-bottom: 50px;
	padding-top:20px;
}

.commenttext{
	width:100%;
	font-size: 16px;
	font-weight: bold;
}

.commentpush{
	color: #fdd000;
	font-size: 20px;
	font-weight: bold;
}

.commentname1{
	width:100%;
	font-size: 20px;
	font-weight: bold;
	text-align: right;
	color: #fdd000;
}

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


#footer_wrapper{
	width:100%;
	overflow: hidden; /* heightを戻す */
	background-color:#fdd001;
	padding:70px 0 70px 0;
}

.footer_logo{
	width:40%;
	margin:0 auto;
	margin-bottom: 30px;
}



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

#pcmenu_wrapper{
	display: none;
}
	
#spmenu_wrapper{
	display: inherit;
	width:100%;
}
	

.btn-trigger_fix{
	width:70px;
	height:70px;
	border-radius: 50%;
	position: fixed;
	top:auto;
	bottom:2%;
	right: 2%;
	z-index: 200;
	background-color:#432111;
	border:2px solid #fff;
}


.btn-trigger {
  position: relative;
  width: 36px;
  height: 31px;
  cursor: pointer;
  margin-left: 17px;
  margin-top:20px;
}
.btn-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  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 : 2;
  top  : 0;
  left :0%;
  color: #fff;
  background-color: rgba(253,208,1,0.96);
  box-sizing: border-box;
  padding:30% 10%;
  width: 100%;
  height: 100%;
  margin-left:100%;
  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;
	box-sizing: border-box;
	z-index: 100;
}

nav.globalMenuSp ul {
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

nav.globalMenuSp ul li {
  list-style-type: none;
  padding: 0;
  width: 20%;
  float: left;
  transition: .4s all;
}

nav.globalMenuSp ul li a {
  display: block;
  color: #fff;
  padding: 1em 0;
  text-decoration :none;
}

nav.globalMenuSp.active {
  opacity: 100;
  margin-left:0;
}
	
.pcmenu{
	width:100%;
	float: none;
	border:1px solid #000;
	margin:0;
	margin-bottom: 10px;
	position: inherit;;
	overflow: hidden;
	box-sizing: border-box;
	border-radius: 10px;
	padding:0 30%;
}
	
	
#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%;
}

#top_wrapper{
    width:100%;
	position: inherit;
	overflow: hidden;
	box-sizing: border-box;
}


#top_catch1{
	display: none;
}
 
#top_main_wrapper{
    width:90%;
	margin:0 auto;
	padding:5.5% 0 5% 0;
}

#top_main{
	display: none;
}

#top_logo{
	display: none;
}

#top_day{
	display: none;
}

#top_tomato{
	display: none;
}

#top_catch2{
	display: none;
}
 
#snsbtn_wrapper1{
	width:100%;
	overflow: hidden;
	margin:0 auto;
	margin-bottom: 10px;
}
	

.snsbtn{
	width:32%;
    float: left;
    margin:0.6666666%;
	outline: none;
	box-sizing: border-box;
}

#snsbtn_wrapper2{
	width:253px;
	float: none;
	margin:0 auto;
	overflow: hidden; /* heightを戻す */
	padding-top:0;
	margin-bottom: 20px;
}

#top_flower{
	display: none;
}
	
.ticket{
	width:50%;
	margin:0 auto;
	margin-bottom: 20px;
}
	
.topbnr_wrapper{
	width:100%;
	margin:0 auto;
	overflow: hidden;
}
	

.pt_wrapper{
	width:100%;
	overflow: hidden;
	margin-bottom: 30px;
}

.pagetitle{
	width:80%;
	float: left;
}

.pt_cat{
	width:18%;
	float: right;
	box-sizing: border-box;
	padding-left: 0%;
}


#intro_wrapper{
	width: 100%;
	box-sizing: border-box;
	background:none;
	overflow: hidden; /* heightを戻す */
	padding-top:0;
}

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

.intro_midashi1{
	width:100%;
	font-size: 25px;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 120%;
}

.intro_left{
	width:100%;
	float:none;
	margin-bottom: 30px;
}

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

.intro_midashi2{
	width:100%;
	font-size: 19px;
	font-weight: bold;
	margin-bottom: 1px;
	line-height: 22px;
}

.intro_midashi3{
	width:100%;
	font-size: 18px;
	font-weight: bold;
	text-align: right;
	margin-bottom: 20px;
	line-height: 180%;
}

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

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


#director_wrapper{
	width: 100%;
	box-sizing: border-box;
	background:#d9e480;
	overflow: hidden; /* heightを戻す */
}

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

.directorphoto{
	width:33.33333%;
	float: left;
}

.directorname1{
	width:100%;
	font-size: 22px;
	font-weight: bold;
	margin-bottom: 5px;
	line-height: 24px;
}

.directorname2{
	width:100%;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 30px;
	line-height: 24px;
}

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

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

#character_wrapper{
	width: 100%;
	box-sizing: border-box;
	background:#fdd000;
	overflow: hidden; /* heightを戻す */
}

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

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

.castbox3{
	width:30%;
	float: left;
	margin-right: 5%;
}

.castbox3:nth-child(3) {
  margin-right:0;
}

.charamidashi{
	width: 100%;
	box-sizing: border-box;
	border-radius: 50vh;
	border:2px solid #e62e8b;
	text-align: center;
	color: #e62e8b;
	font-size: 18px;
	font-weight: bold;
	line-height: 22px;
	padding:2% 5%;
	background-color: #fff;
	margin-bottom: 30px;
}

.charamidashi_j{
	color:#432111;
	font-size: 12px;
}

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

.castbox5{
	width:30%;
	float: left;
	margin-right: 5%;
	margin-bottom: 5%;
}

.castbox5:nth-child(3n) {
  margin-right:0;
}


.charabtn{
	width:100%;
	box-sizing: border-box;
	position: relative;
	overflow: hidden;
}

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

.charabtn a:hover .hoverimg{
  bottom: 0%;
	opacity: 1;
}

#contents_wrapper img.cast-sntitle-name{
  width: 80%;
}

.removebtn{
  position: fixed;
  top: 2%;
  right: 2%;
  width: 50px;
  cursor: pointer;
}
.cast-popup>div{
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
	background:none;
	background-color:#fdd001;
  overflow: auto;
}
.cast-pop-box{
  z-index: 10;
  width:80%;
  margin-top: 20%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15%;
  color:#432111;
	background:#fdd000;
	box-sizing: border-box;
	padding:0;
	border-radius:0;
}

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

.chara_left{
	width:80%;
	float: none;
	margin-bottom: 20px;
}

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

.charaname{
	width:100%;
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 20px;
}

#comment_wrapper{
	width:100%;
	background-color: #100e0e;
	box-sizing: border-box;
	overflow: hidden; /* heightを戻す */
}

#comment_inner{
    width:100%;
	box-sizing: border-box;
    padding:0 10% 10% 10%;
	overflow: hidden;
	color: #fff;
}


.commentbox{
	width:100%;
	margin:0 auto;
	border-top:2px dotted #fdd000;
	margin-bottom: 50px;
	padding-top:20px;
}

.commenttext{
	width:100%;
	font-size: 16px;
	font-weight: bold;
}

.commentpush{
	color: #fdd000;
	font-size: 20px;
	font-weight: bold;
}

.commentname1{
	width:100%;
	font-size: 20px;
	font-weight: bold;
	text-align: right;
	color: #fdd000;
}

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



#footer_wrapper{
	width:100%;
	overflow: hidden; /* heightを戻す */
	background-color:#fdd001;
	padding:70px 0 70px 0;
}

.footer_logo{
	width:80%;
	margin:0 auto;
	margin-bottom: 30px;
}
	
	
.brtext::before {
	content: "\A" ;
	white-space: pre ;
}
	
}