@charset "UTF-8";


#cast{
	background: #fff;
	color:#000;
	height: auto;
	overflow: hidden;
}
#cast .inner{
	position: relative;
	padding:100px 0px 100px;
	width:1170px;
	margin:0 auto;

}
#cast .casts{
	position: relative;
	width:100%;
	height:670px;
	overflow: hidden;
}
#cast h2{
	opacity:0;
	-webkit-transform: translate(0px,20px);
	   -moz-transform: translate(0px,20px);
	    -ms-transform: translate(0px,20px);
	     -o-transform: translate(0px,20px);
	        transform: translate(0px,20px);
}
#cast.active h2{
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
	    -ms-transition: all .5s ease;
	     -o-transition: all .5s ease;
	        transition: all .5s ease;
	opacity:1;
	-webkit-transform: translate(0px,0px);
	   -moz-transform: translate(0px,0px);
	    -ms-transform: translate(0px,0px);
	     -o-transform: translate(0px,0px);
	        transform: translate(0px,0px);
}
#cast .casts>ul{
	position: absolute;
	top:0;
	left:0;
	display: block;
	width:600%;
	-webkit-transform: translateZ(0);
	   -moz-transform: translateZ(0);
	    -ms-transform: translateZ(0);
	     -o-transform: translateZ(0);
	        transform: translateZ(0);
	-webkit-transition: all .5s ease;
	   -moz-transition: all .5s ease;
	    -ms-transition: all .5s ease;
	     -o-transition: all .5s ease;
	        transition: all .5s ease;
}
#cast .casts>ul>li{
	display: block;
	float: left;
	padding-right:15px;
	opacity:0;
	-webkit-transform: translate(0px,20px);
	   -moz-transform: translate(0px,20px);
	    -ms-transform: translate(0px,20px);
	     -o-transform: translate(0px,20px);
	        transform: translate(0px,20px);
}
#cast.active .casts>ul>li{
	opacity:1;
	-webkit-transition: all .4s ease-in-out;
	   -moz-transition: all .4s ease-in-out;
	    -ms-transition: all .4s ease-in-out;
	     -o-transition: all .4s ease-in-out;
	        transition: all .4s ease-in-out;
	-webkit-transform: translate(0px,0px);
	   -moz-transform: translate(0px,0px);
	    -ms-transform: translate(0px,0px);
	     -o-transform: translate(0px,0px);
	        transform: translate(0px,0px);
}
#cast .casts>ul>li:nth-child(1){
	-webkit-transition-delay: .2s;
	   -moz-transition-delay: .2s;
	    -ms-transition-delay: .2s;
	     -o-transition-delay: .2s;
	        transition-delay: .2s;
}
#cast .casts>ul>li:nth-child(2){
	-webkit-transition-delay: .4s;
	   -moz-transition-delay: .4s;
	    -ms-transition-delay: .4s;
	     -o-transition-delay: .4s;
	        transition-delay: .4s;
}
#cast .casts>ul>li:nth-child(3){
	-webkit-transition-delay: .6s;
	   -moz-transition-delay: .6s;
	    -ms-transition-delay: .6s;
	     -o-transition-delay: .6s;
	        transition-delay: .6s;
}
#cast .casts>ul>li>dl{
	display: block;
	position: relative;
}
#cast .casts>ul>li>dl img{
	display: block;
}
#cast .casts>ul>li>dl>.role{
	font-size:13px;
	line-height: 1.6;
	padding-bottom:1em;
}
#cast .casts>ul>li>dl>.role span{
	font-size:16px;
	font-weight: bold;
}
#cast .casts>ul>li>dl>.en{
	font-size:16px;
	font-family: 'BioRhyme', serif;
	letter-spacing: 0.1em;
	padding:0.7em 0 0.5em;
}
#cast .casts>ul>li>dl>.jp{
	font-weight: bold;
	color:#912222;
	font-size: 16px;
	letter-spacing: 0.2em;
}
#cast .casts>ul>li>dl>.prof{
	position: absolute;
	left:0;
	bottom:0;
	width:100%;
}
#cast .casts>ul>li>dl>.prof dt{
	display: block;
	text-align: right;
	line-height: 0;
}
#cast .casts>ul>li>dl>.prof dt a{
	background:url(../img/cast/btn-close.png) no-repeat center top;
	display: block;
	float:right;
}

#cast .casts>ul>li>dl>.prof dt img{
	display: inline-block;
}
#cast .casts>ul>li>dl>.prof .open dt a img{
	opacity: 0;
}
#cast .casts>ul>li>dl>.prof dd{
	clear: both;
	font-size:11px;
	line-height: 1.6;
	padding-top:1.3em;
	background:#fff;
	display: none;
}
#cast .casts>ul>li>dl>.prof dd span{
	display: block;
	font-weight: bold;
	font-size:12px;
}
#cast .casts>ul>li.small .jp,
#cast .casts>ul>li.small .en{
	display: inline-block;
}
#cast .casts>ul>li.small .jp{
	font-size:14px;
}
#cast .casts>ul>li.small .en{
	font-size:10px;
	padding-left:1em;
}
#cast .casts>ul>li.small .role{
	font-size:11px;
	padding-top:0.3em;
	padding-bottom:0.2em;
	line-height: 1.5;
}
#cast .casts>ul>li.small .role span{
	font-weight: bold;
	display: block;
	font-size:14px;
}
#cast .casts>ul>li.small .jp{
	/*padding-bottom:1em;*/
}
#cast .casts>ul>li.small>dl{
	display: block;
	margin-bottom:1em;
}

#cast .btn-next a{
	display: block;
	position: absolute;
	right:-30px;
	top:50%;
	width:20px;
	height:100px;
	margin-top:-20px;
	background:url(../img/cast/btn-next.png) no-repeat center center rgba(255,255,255,0.5);
	z-index: 23;
	-webkit-transition: all .25s ease;
	   -moz-transition: all .25s ease;
	    -ms-transition: all .25s ease;
	     -o-transition: all .25s ease;
	        transition: all .25s ease;
}

#cast .btn-back a{
	display: block;
	position: absolute;
	left:-30px;
	top:50%;
	width:20px;
	height:100px;
	margin-top:-20px;
	background:url(../img/cast/btn-back.png) no-repeat center center rgba(255,255,255,0.5);
	z-index: 22;
	-webkit-transition: all .25s ease;
	   -moz-transition: all .25s ease;
	    -ms-transition: all .25s ease;
	     -o-transition: all .25s ease;
	        transition: all .25s ease;
}
#cast .btn-next a:hover,
#cast .btn-back a:hover{
	background-color:rgba(255,255,255,1);
	opacity: 0.5;
}
#cast .nav{
	text-align: center;
	position:absolute;
	bottom:60px;
	left:0;
	width:100%;
}
#cast .nav li{
	display: inline-block;
	padding:0 5px;
}
#cast .nav li a{
	width:10px;
	height:10px;
	display: block;
	background:#000;
	overflow: hidden;
	border-radius: 50%;
	border:1px solid #000;
	-webkit-transition: all .25s ease;
	   -moz-transition: all .25s ease;
	    -ms-transition: all .25s ease;
	     -o-transition: all .25s ease;
	        transition: all .25s ease;
}
#cast .nav li.cur a,
#cast .nav li a:hover{
	background:#fff;
}
#cast .nav li.cur a{
	cursor: default;
}

#cast .btns,
#cast .nav{
	opacity:0;
}
#cast.active .btns,
#cast.active .nav{
	opacity:1;
	-webkit-transition: all .5s ease .5s;
	   -moz-transition: all .5s ease .5s;
	    -ms-transition: all .5s ease .5s;
	     -o-transition: all .5s ease .5s;
	        transition: all .5s ease .5s;
}
#cast .xsmall{
	margin-bottom:0.8em!important;
}