@charset "UTF-8";
/*@font-face {font-family:"28 Days Later";src:url("../font/28_Days_Later.eot?") format("eot"),url("../font/28_Days_Later.woff") format("woff"),url("../font/28_Days_Later.ttf") format("truetype"),url("../font/28_Days_Later.svg#") format("svg");font-weight:normal;font-style:normal;}
*/body,html{
	width: 100%;
	font-family:'メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
}
body{
	text-align:center;
	position: relative;
	background-color:#fff;
}
a{
	color:#000;
	text-decoration: underline;
}

#share{
	position:absolute;
	top:695px;
	left:50%;
	margin-left:-300px;
	display: block;
	padding-left:60px;
	width:600px;
	height:20px;
	background:url(../img/top/share.png) no-repeat left center;
	text-align: left;
}
#share li{
	display: inline-block;
	vertical-align: top;
}

.anim {
	-webkit-transition: all 0.2s ease-out;
	-moz-transition: all 0.2s ease-out;
	-o-transition: all 0.2s ease-out;
	-ms-transition: all 0.2s ease-out;
}
#cover{
	width:100%;
	height:100%;
	position:fixed;
	top:0;
	left:0;
	background:#000;
	z-index: 10;
}

#nav{
	position:fixed;
	margin:0 auto;
	width:100%;
	z-index:9;
	height:52px;
	background:url(../img/common/nav_bg.png) left top repeat-x;
}
#nav.open{
	position:fixed;
	left:0;
	top:0;
}
#nav ul{
	width:864px;
	margin:0 auto;
}
#nav li{
	float:left;
	padding:0 26px;
}
#nav li a{
	position:relative;
	display:block;
	line-height:0;
	padding:17px 0;
}
#nav li a img{
	display: block;
}
#nav li a img.ov{
	position:absolute;
	top:17px;
	left:0;
	opacity:0;
}
#nav li a:hover img.ov{
	opacity:1;
}

#top{
	position:relative;
	min-width:1000px;
	height:725px;
	background:url(../img/top/bg.jpg) center top no-repeat;
	background-size:cover;
	margin-top:-1px;
}
#top h1,#top #nav-sns,#top #roadshow,#top #billing{
	position:absolute;
	left:50%;
	top:50%;
}
#top h1{
	margin:-212px 0 0 -510px;
}
#top #nav-sns{
	width:113px;
	height:90px;
	background:url(../img/top/sns.png) center center no-repeat;
	margin:167px 0 0 -462px;
}
#top #nav-sns li{
	position:absolute;
}
#top #nav-sns li a{
	display:block;
	width:100%;
	height:100%;
}
#top #nav-sns li.tw{
	width:51px;
	height:51px;
	left:0;
	top:39px;
}
#top #nav-sns li.fb{
	width:50px;
	height:50px;
	right:0;
	top:31px;
}
#top #roadshow{
	margin:155px 0 0 318px;
}
#top #billing{
	margin:116px 0 0 -381px;
}

#top #banner1{
	position:absolute;
	top:320px;
	left:50%;
	margin-left:340px;
}
#top #banner2{
	position:absolute;
	top:320px;
	left:50%;
	margin-left:205px;
}


#container{
	background:url(../img/common/bg.jpg) center center no-repeat;
	background-attachment:fixed;
	background-size:cover;
	padding:52px 0 0;
}




#photo{
	position:relative;
	width:100%;
	min-width:1000px;
	height:602px;
	overflow:hidden;
	background:rgba(0,0,0,0.7);
}

#photo p.num{
	text-align:center;
	font-family:"28 Days Later";
	font-size:15px;
	line-height:1.2;
	color:#fff;
	position:absolute;
	left:0;
	bottom:12px;
	padding:0;
	width:100%;
}
#photo .ar{
	display:block;
	line-height:0;
	position:absolute;
	left:50%;
	bottom:24px;
}
#photo .ar_l{
	margin:0 0 0 -488px;
}
#photo .ar_r{
	margin:0 0 0 416px;
}
#plist{
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background:#fff;
}
#plist li{
	float:left;
	width:100%;
	height:100%;
	background: center center no-repeat;
}
#plist .p01{background-image:url(../img/photo/p1.jpg);}
#plist .p02{background-image:url(../img/photo/p2.jpg);}
#plist .p03{background-image:url(../img/photo/p3.jpg);}
#plist .p04{background-image:url(../img/photo/p4.jpg);}
#plist .p05{background-image:url(../img/photo/p5.jpg);}
#plist .p06{background-image:url(../img/photo/p6.jpg);}
#plist .p07{background-image:url(../img/photo/p7.jpg);}
#plist .p08{background-image:url(../img/photo/p8.jpg);}
#plist .p09{background-image:url(../img/photo/p9.jpg);}



.cont{
	width:960px;
	margin:0 auto;
	position:relative;
	padding:40px 0;
}
.cont h2,.cont h3{
	line-height:0;
}

.cont h2{
	position:relative;
	padding-bottom:32px;
	z-index:1;
}
.cont h3{
	position:relative;
	padding-bottom:15px;
	z-index:1;
}
.cont p{
	position:relative;
	text-align:left;
	font-weight:bold;
	font-size:13px;
	line-height:1.8;
	padding:0 30px 30px;
	z-index:1;
}
.txt,.dt dd{
	text-shadow: 0 0 2px #efebe2, 0 0 5px #efebe2, 0 0 5px #efebe2, 0 0 10px #efebe2;
}
#intro p.txt01{
	text-align:center;
	line-height:0;
	padding:0 0 15px;
}
#intro .txt02{
	width:912px;
	height:346px;
	margin:0 auto;
	background:url(../img/intro/txt03.png) left top no-repeat;
}
#intro .txt02 li{
	text-indent:-9999px;
}
#intro .img01{
	line-height:0;
	position:absolute;
	left:-49px;
	top:0;
	z-index:0;
}
#intro .img02{
	line-height:0;
	position:absolute;
	right:-13px;
	bottom:40px;
	z-index:0;
}

#cast{
}
#cast .main{
	position:relative;
	text-align:left;
	height:473px;
}
#cast .main .dt{
	position:absolute;
	left:0;
	top:0;
	width:960px;
	display:none;
}
#cast .main .dt.cur{
	display:block;
}
.dt .img{
	float:right;
	width:357px;
	height:473px;
}
.dt dl{
	position:absolute;
	left:29px;
	top:30px;
	width:600px;
}
.dt dt{
	line-height:0;
	padding-bottom:6px;
}
.dt dd{
	font-weight:bold;
	font-size:12px;
	line-height:22px;
	width:570px;
	padding:0 5px 25px;
}
#cast .main .btns{
	display:block;
	line-height:0;
	position:absolute;
	bottom:9px;
	left:50%;
}
#cast .main .cback{
	margin-left:-148px;
	display:none;
}
#cast .main .cnext{
	margin-left:20px;
}


#cast #thums{
	margin:0 auto;
	width:945px;
	height:82px;
	background:url(../img/cast/thum.png) center center no-repeat;
}
#cast #thums ul{
	padding:21px 0 0 21px;
}
#cast #thums li{
	float:left;
	width:38px;
	height:38px;
	padding:1px;
	background:rgba(7,0,2,0.21);
	margin-right:1px;
}
#cast #thums li.cur,
#cast #thums li:hover{
	background:rgba(173,0,0,0.21);
}
#cast #thums li a{
	line-height:0;
	display:block;
}
#cast #thums li.cur a,#cast #thums li a:hover{
	opacity:0.7;
}

#staff h3{
	text-align:left;
}
#staff p {
	padding:0;
}
#s01{
	text-align:left;
	width:900px;
	margin:0 auto;
	padding-bottom:23px;
}
#s01 p{
	font-size:12px;
	float:left;
	width:590px;
}
#s01 .img{
	float:right;
}
#s02{
	text-align:left;
	width:900px;
	margin:0 auto;
	padding-bottom:20px;
}
#s02 .txt{
	width:360px;
	font-size:12px;
	line-height:1.8;
	font-weight:bold;
	/*float:left;*/
}
#s02 .txt dt{
	float:left;
}
#s02 .txt dd{
	margin-left:70px;
}
#s02 .img{
	width:100%;
	padding-bottom:25px;
}
#s02 .img li{
	display: block;
	text-align:center;
	float:left;
	font-size:12px;
	font-weight:bold;
	width:540px;
}
#s02 .img li img{
	margin-bottom:-17px;
}
#s02 .img li.lst img{
	margin-bottom:6px;
}
#s02 .img li.lst{
	float:left;
	padding-left:30px;
	width:auto;
}

#s03{
	position:relative;
	text-align:left;
	width:900px;
	margin:0 auto;
}
#s03 .img{
	float:left;
}
#s03 .txt{
	width:463px;
	float:right;
	line-height:1.8;
}
#s03 .txt h4{
	font-size:20px;
	line-height:1.6;
	padding-bottom:10px;
}
#s03 .txt h5{
	font-size:14px;
	line-height:1.7;
}
#s03 .txt dl{
	font-weight:bold;
	font-size:12px;
}
#s03 .btn{
	position:absolute;
	top:10px;
	right:0;
	z-index: 3;
}


#footer{
	line-height:0;
	padding:19px 0 16px;
}
#footer div{
	padding-bottom:10px;
}

#ctl{
	display:block;
	position:absolute;
	left:0;
	bottom:32px;
	width:100%;
	height:16px;
}
#thumbs{
	text-align:center;
}

#thumbs li{
	display:inline-block;
	width:16px;
	height:16px;
	background:url(../img/photo/mrk.png) center center no-repeat;
	cursor:pointer;
}
#thumbs li span{
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	left:0;
	top:0;
}
#thumbs li.tcur,#thumbs li:hover{
	background:url(../img/photo/mrk_ov.png) center center no-repeat;
}

#thumbs li img{
	height:45px;
}

#bt_back{
	display:none;
	position:absolute;
	left:0;
	background:url(../img/photo/bt_back.gif) center center no-repeat;
}

#bt_next{
	display:block;
	position:absolute;
	right:0;
	background:url(../img/photo/bt_next.gif) center center no-repeat;
}
.bt_ctl{

}
.bt_ctl img {
	opacity: 0;
	display: block;
	transition: opacity 0.2s ease;
	-o-transition: opacity 0.2s ease;
	-ms-transition: opacity 0.2s ease;
	-moz-transition: opacity 0.2s ease;
	-webkit-transition: opacity 0.2s ease;
}
.bt_ctl:hover img{
	opacity: 1;
}
#bt_back_main{
	display:none;
	position:absolute;
	left:22px;
	top:50%;
	margin-top:-40px;
}

#bt_next_main{
	display:block;
	position:absolute;
	right:22px;
	top:50%;
	margin-top:-40px;
}

#footer{
	background:#3f3528;
	padding:0;
	margin-top:50px;
}
#footer .inner{
	width:960px;
	margin:0 auto;
	text-align: center;
	position:relative;
	padding:20px;
}
#footer .inner a{
	position:absolute;
	top:-32px;
	right:0;
}


#trailer-wrapper {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/black.png);
	overflow: hidden;
	display: none;
	z-index: 11111111;
}
#trailer {
	position: absolute;
	top:50%;
	left:50%;
	width:854px;
	height:480px;
	margin-top:-240px;
	margin-left:-427px;
	background:#000;
	border:1px solid #222;
}
#trailer-wrapper a {
	position: absolute;
	right: 20px;
	top: 20px;
}