@charset "UTF-8";
/* ------------------------- TOC
common setting
min-width: 769px
max-width: 768px
----------------------------- */
/* ============================== common setting */


/*終了メッセージ*/

.alertMessage {
    width: 100%;
    padding: 10px;
    color: #fff;
    text-align: center;
    background-color: #e50c85;
}
 

*{
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	list-style: none;
}
body{
	display: block;
    font-family: Meiryo, メイリオ, 'MS PGothic', 'MS Pゴシック', Osaka, sans-serif;
	background: url(../images/top/top_bg.png) top center no-repeat;
	background-size: cover;
}
.nav {
	width: 1108px;
	margin: 0px auto;
	}
.l-wrapper{
	display:block;
}
.top-inner{
	width: 100%;
	margin: 0 auto;
	position: relative;
}

.img_banner a:hover img{
	opacity:0.8;
	
}
@media (min-width: 769px) {
	#wrapper {
		min-width: 1100px;
	}
	.top-inner {
		width: 1040px;
	}
}
@media (max-width: 768px) {
	img {
		width: 100%;
	}
	.top-inner {
		padding: 0 10px;
	}
}

/* ============================== javascript style */
@media (max-width: 768px) {
	.drawer-hamburger-icon,
	.drawer-hamburger-icon:after,
	.drawer-hamburger-icon:before {
		background-color: #ea4498;
	}
	.drawer-open .drawer-hamburger-icon:after,
	.drawer-open .drawer-hamburger-icon:before {
		background-color: #fff;
	}
	.drawer-hamburger-menu {
		color: #ea4498;
	}
}


/* ============================== mainvisual */
#content{
	margin: 0;
	
}
@media (min-width: 769px) {
	#content{
		width:1040px;
		margin:0 auto;
	}
	#content .contentside{
		display: inline;
		float: right;
		width: 724px;
	}
	#content .contentside .msg p {
		text-align: center;
		font-size: 140%;
		font-weight: bold;
		color: #b30059;
		text-shadow: 0px 0px 10px #ffffff;
	}
	#content .menuside{
		display: inline;
		float: left;
		width: 282px;
	}
	#content .menuside p img {
		width: 282px;
	}
/*	#content .menuside ul li {
		text-align: center;
	}
	#content .menuside ul li a {
	}*/


#content .menuside ul li a{
	display: block;
	background: #dd3589 url(../images/menut_off.png) left bottom no-repeat;
	font-weight: bold;
	font-size: 23px;
	width: 282px;
	height: 80px;
	padding-left: 56px;
	padding-top: 24px;
	color: #ffffff;
	text-decoration: none;
	text-shadow: 0px 0px 6px #b8136d;
	border-radius: 5px;
	margin-bottom: 10px;
	text-align: center;
}
#content .menuside ul li.active a,
#content .menuside ul li:hover a{
	display: block;
	background: none;
	background: #dd3589 url(../images/menut_hv.png) left bottom no-repeat;
	text-shadow: 0px 0px 6px #ff9ad1;
}

}
@media (max-width: 768px) {
	#content{
		width:100%;
		max-width:300px;
		margin:0 auto;
		padding-top:65px;
	}
	#content .msg {
		text-align: center;
	}
}


/* ============================== nav-area */
#nav-area{
	margin: 0;
}
	#nav-area ul li a{
		display: block;
		padding-top: 3px;
		border-radius: 5px;
		background: rgba(221,53,137,1);
		}
			#nav-area ul li a img{
				width: 100%;
				vertical-align: bottom;
			}
@media (min-width: 769px) {
	#nav-area{
		width:282px;
		position: absolute;
		left:0;
/*		top: 120 456 376px;*/
		top: 260px;
	}
		#nav-area p img{
		width:282px;
		}
		
		#nav-area ul li{
			display: block;
			width:100%;
			margin-bottom: 5px;
		}
			#nav-area ul li a{
				background-position: left 5px;
			}
				#nav-area ul li.event a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_event_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li.about a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_about_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li.cast a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_cast_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li.news a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_news_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li.message a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_message_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li.movie a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_movie_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li.book a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_book_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li.item a:hover{
					background: rgba(221,53,137,1) url(../images/top/nav_item_hv.png) left 3px no-repeat;
					background-size: 282px 101px;
				}
				#nav-area ul li a:hover img{
					opacity: 0;
					transition:.3s;
				}
	#information {
		position: absolute;
		left:30px;
		}
}
@media (max-width: 768px) {
	#nav-area ul{
		padding:3px 0;
	}
		#nav-area ul li{
			display: block;
			width: 33.3%;
			padding: 3px;
			float: left;
		}
			#nav-area ul li img{
				width: 100%;
				position: relative
			}
	#nav-area ul:after{
		content:"";
		display: block;
		clear: both;
	}
}



/* ============================== event-area */
#event-area a{
	display: inline-block;
	border-radius: 20px;
	background-color:#fff;
}
#event-area a img{
	box-shadow: 2px 2px 10px rgba(0,0,0,.7);
	vertical-align: bottom;
}


.anitele img{
  width:100%;
  border-radius: 0 !important;
}

@media (min-width: 769px) {
	#event-area {
		position: absolute;
		left: 0;
		top: /*120*/40px;
	}
	#event-area a img{
		border-radius: 20px;
	}
	#event-area a:hover img{
		opacity: .5;
		transition:.3s;
	}
  .anitele{
    display:block !important;
    width:282px;
    margin: 10px 0;
  }
  .anitele:hover{
    border-radius: 0 !important;
  }
	.sp{
		display:none !important;
	}
}
@media (max-width: 768px) {
	#event-area {
		text-align: center;
		margin-bottom: 5px;
	}
	#event-area a img{
		max-width:420px;
		border-radius: 10px;
	}
  .anitele{
    display:block !important;
    width:100%;
    max-width:282px;
    margin: 20px auto 10px;
  }
	.pc{
		display: none !important;
	}
}

/* ============================== info-area */


.l-information {
	margin: 0;
}
	.l-information .inner {
		width: auto;
		height:100%;
		background-color: #f69dc9;
		border-radius: 20px;
		padding: 8px 20px 20px;
		margin-bottom: 20px;
	}
.inner .leedttl {
			background: url(../images/top_info_lead.png) no-repeat center top;
			width: 121px;
			height: 35px;
			margin-bottom: 5px;
		}	
.inner .scroll-box {
		background-color: #FFF;
		border: 5px solid #fc5aaa;
		padding: 10px 10px 0;
		overflow-y: scroll;
		height: 181px;
	}
.inner .scroll-box .inner {
			background-color: #FFF;
			padding: 0;
			border-radius: 0;
		}
.inner .info-box {
		background-color: #FFF;
		border: 5px solid #fc5aaa;
		padding: 10px;
		margin: 10px 0 0 0;
		font-size: 18px;
	}
.inner .scroll-box .inner dl {
				margin-bottom: 10px;
				padding-bottom: 10px;
				border-bottom: 2px dotted #fc5aaa;
			}
.inner .scroll-box .inner dl:last-of-type {
					border-bottom: none;
					margin-bottom: 0;
				}
.inner .scroll-box .inner dl dt,
.inner .scroll-box .inner dl dd {
	font-size: 18px;
	}

.movie-area {
	}
.movie-area img {
	border-radius: 20px;
	}

.movie-area a{
		display: block;
		width:100%;
		max-width:480px;
		margin: auto;
		position: relative;
		border-radius: 20px;
		overflow: hidden;
		box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
	}
.movie-area a:before{
		content:"";
		position: absolute;
		width:100%;
		height: 100%;
		left:0;
		top:0;
		background: url(../movie/playback.gif) center center no-repeat;
		background-size: 80px 80px;
		opacity:.7;
	}
.movie-area a:hover:before{
		background: url(../movie/playback.gif) center center no-repeat;
		background-size: 78px 78px;
	}
.movie-area img{
		width: 100%;
		vertical-align: middle;
	}


.sns_insta {
	padding: 10px 15px 9px 15px;
	border-radius: 4px;
	background: #fff;
}
.sns_insta dt {
	height: 77px;
	font-size: 2em;
}
.sns_insta ul {
	margin: 0 -3px;
}
.sns_insta li {
	display: inline-block;
	width: 33.333%;
	padding: 0 3px 6px 3px;
	vertical-align: top;
	box-sizing: border-box;
}
.sns_insta li a {
	position: relative;
	display: block;
	width: 100%;
	height: 0;
	padding-top: 100%;
	border-radius: 5px;
	overflow: hidden;
}
.sns_insta li a img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 190%;
	-webkit-transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	vertical-align: bottom;
}


/*---- min-width: 769px ----*/
@media (min-width: 769px) {
	.info-area{
		display: table;
		width:1040px;
		margin:30px auto 0;
	}
		.info-area > *{
			display: table-cell;
			vertical-align: top;
			box-sizing: border-box;
		}
  
  .sns_plugin{
    display:block;
		/*margin:20px auto;*/
		margin: 0 -2% 0 0;
  }
  .sns_plugin:after{
    content:"";
    clear:both;
    display: block;
  }
  .sns_plugin > div {
    display: block;
    width: 48%;
    height: 410px;
    padding:20px;
    border-radius: 20px;
    background-color:#f69dc9;
  }
  .sns_plugin > div {
    float:left;
		margin: 0 2% 20px 0;
  }
  /*.sns_plugin > *:last-child{
    float: right;
  }*/
	.sns_plugin > div:nth-child(-n+2) {
		height: 425px;
	}
  
  .sns_plugin iframe{
    vertical-align: bottom;
  }
	
	.sns_link img {
		vertical-align: bottom;
	}
	.sns_link dt {
		margin: -5px 0 0 0;
	}
	.sns_link dd {
		padding: 10px 0 0 0;
	}
	
}
/*---- max-width: 768px ----*/
@media (max-width: 768px) {
	.info-area{
		padding: 10px;
		box-sizing: border-box;
	}
	.info-area,
	.info-area > *{
		display: block;
	}
    .l-information {
        width: 100%;
        margin: 0 0 20px;
		padding:0;
    }
    .l-information .inner {
        width: 100%;
        padding: 10px 15px 15px;
		box-sizing: border-box;
    }
    .l-information .inner .leedttl {
		display: block;
		background: url(../images/top_info_lead.png) no-repeat left top;
        background-size: contain;
        width: 100%;
		height: 25px;
        padding-top: 0;
        margin: 0 0 5px;
    }
    .l-information .inner .scroll-box {
        border: 3px solid #fc5aaa;
        padding: 2.5% 2.5% 0;
        overflow-y: scroll;
        height: 120px;
    }
    .l-information .inner .scroll-box .inner dl {
        margin-bottom: 2.5%;
        padding-bottom: 2.5%;
    }
    .l-information .inner .scroll-box .inner dl dt,
    .l-information .inner .scroll-box .inner dl dd {
        font-size: 1.1em;
    }
		.inner .info-box {
			border: 3px solid #fc5aaa;
			padding: 2.5%;
			margin: 5px 0 0 0;
			font-size: 1.1em;
		}
	

	.info-area .movie-area{
		width: 100%;
		padding: 10px 15px 15px;
		background-color: #f69dc9;
		border-radius: 20px;
	}

.movie-area a{
		display: block;
		width:100%;
		max-width:300px;
		margin: auto;
		position: relative;
		border-radius: 20px;
		overflow: hidden;
		box-shadow: 2px 2px 5px rgba(0,0,0,0.5);
	}
.movie-area a:before{
		content:"";
		position: absolute;
		width:100%;
		height: 100%;
		left:0;
		top:0;
		background: url(../movie/playback.gif) center center no-repeat;
		background-size: 80px 80px;
		opacity:.7;
	}
.movie-area a:hover:before{
		background: url(../movie/playback.gif) center center no-repeat;
		background-size: 78px 78px;
	}
.movie-area img{
		width: 100%;
		vertical-align: middle;
	}
    .banner_area {
        width: 94%;
        margin: 0 auto 4.5%;
    }
    .banner_area ul li {
        float: left;
        width: 49%;
        margin: 0 1% 1.2% 0;
        font-size: 0;
        line-height: 0;
    }
    .banner_area ul li:last-of-type {
        margin-right: 0;
    }
  
  
.sns_plugin{
  display:block;
  margin-top:10px;
/*  padding: 0 10px;*/
}
.sns_plugin > div {
  display: block;
  width:100%;
  max-width:400px;
  /*height:410px;*/
  padding:20px;
  border-radius: 20px;
  background-color:#f69dc9;
  margin:0 auto 20px;
}

.sns_plugin iframe{
  display:block !important;
  vertical-align: bottom;
  height:370px !important;
}
.sns_insta a img {
	width: auto;
}


}







/* ============================== bnr-area */
#bnr-area ul li a {
	display: block;
	width:100%;
}
	#bnr-area ul li a:hover {
		opacity: 0.8;
	}
	#bnr-area ul li a img{
		display: block;
		width:100%;
	}
		#bnr-area ul:after{
			content: "";
			display: block;
			clear: both;
		}
/*---- min-width: 769px ----*/
@media (min-width: 769px) {
	#bnr-area {
		width:100%;
	}
	#bnr-area ul {
		width: 1300px;
		margin: 20px auto 10px auto;
	}
		#bnr-area ul li {
			display: block;
			width: 250px;
			background-color: #fff;
			float: left;
			margin:0 5px;
			font-size: 0;
			line-height: 0;
		}
}
/*---- max-width: 768px ----*/
@media (max-width: 768px) {
	#bnr-area {
		width: 100%;
		margin: 0 auto 5px;
	}
		#bnr-area ul li {
			display: block;
			width: 50%;
			float: left;
			padding:0 5px;
			margin:5px 0;
			font-size: 0;
			line-height: 0;
		}
}



/* ============================== social-area */
#social-area ul{
  display: table;
  margin-left: auto;
}
#social-area ul li{
	display: table-cell;
  vertical-align: top;
  padding-left: 5px;
}
.fb-like > span{
  vertical-align: top !important;
}
/*---- min-width: 769px ----*/
@media (min-width: 769px) {
}
/*---- max-width: 768px ----*/
@media (max-width: 768px) {

}


/* ============================== footer-area */
#footer {
	display: block;
	background: url(../images/bg_img_footer.png) no-repeat center top;
	background-size: cover;
	padding: 15px 0;
}
#footer .copyright {
	text-align: center;
	color: #FFF;
	font-size: 13px;
}
/*---- min-width: 769px ----*/
@media (min-width: 769px) {
#footer {
	min-width: 1040px;
}
}
/*---- max-width: 768px ----*/
@media (max-width: 768px) {
	#footer .copyright {
		font-size: 10px;
	}
}
.sns_plugin .facebook-wrapper {
    max-width: 500px;
    margin: 0 auto;
}
.sns_plugin .facebook-wrapper > .fb-page {
    width: 100%;
}

.sns_plugin .fb_iframe_widget,
.sns_plugin .fb_iframe_widget span,
.sns_plugin .fb_iframe_widget iframe[style]{
    width: 100% !important;
}


/* ============================== module style */
/* 画像置換 */
.lr {
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
/* end */
