@charset "utf-8";

/*  clearfix  */
.clearfix:before,
.clearfix:after {content:"";display:table;}
.clearfix:after {clear:both;}
.clearfix {zoom:1;}
/*  hide-object  */
.hide {
display:block;
width:0;
height:0;
overflow:hidden;
}

/* COMMON */
body {
	background-image: url(img/red_bg.png);
	background-position:center top;
	font-family: 'Noto Sans Japanese', sans-serif;
}
#subWrapper {
	min-width: 1080px;
}
header {
	border-top-width: 3px;
	border-top-style: solid;
	border-top-color: #E5BF3D;
}
#gNav {
	background-image: url(img/bg_gnav.png);
	height: 60px;
	position: relative;
}
#gNavin {
	height: 60px;
	width: 1080px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
#gNavin h1 {
	float: left;
	height: 60px;
	width: 215px;
}
#gNavin h1 a {
	background-image: url(../top/img/nav/h_logo.png);
	background-repeat: no-repeat;
	background-position: center center;
	display: block;
	height: 60px;
}
#gNavList {
	padding-top: 10px;
	float: left;
	padding-left:19px;
}
#gNavList li {
	float: left;
}
header div.sns{
	position: absolute;
	top: 18px;
	right: 20px;
}
#aNav {
	height: 54px;
	position: absolute;
	left: 1px;
	bottom: -54px;
	right: 0px;
	background-image: url(img/bg_anav.png);
	z-index: 10;
}
#aNav ul {
	height: 51px;
	width: 707px;
	margin-right: auto;
	margin-left: auto;
}
#aNav li {
	float: left;
}
#subMain {
	max-width: 1280px;
	min-width: 1040px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 51px;
	position:relative;
}
#subMain h2 {
	text-align: center;
	padding-top: 70px;
	padding-bottom: 70px;
}
.subImage {
	background-repeat: no-repeat;
	background-position: center center;
	height: 363px;
	margin-bottom: 40px;
}
.subMainin {
	width: 1040px;
	margin-right: auto;
	margin-left: auto;
	position: relative;
}
.subMainin h3 {
	padding-bottom: 40px;
	position: relative;
}
.subMainin p {
	font-size: 17px;
	line-height: 27px;
	padding-bottom: 30px;
}
#btIndex {
	height: 94px;
	width: 1040px;
	position: absolute;
	left: 50%;
	bottom: 164px;
	margin-left: -520px;
}
#ftNav {
	background-image: url(img/footer_nav.png);
	width: 1009px;
	padding-top: 13px;
	padding-bottom: 6px;
	padding-left: 31px;
	position: absolute;
	left: 50%;
	bottom: 78px;
	margin-left: -520px;
}
#ftNav li {
	float: left;
}
footer {
	max-width: 1280px;
	min-width: 1040px;
	margin-left:auto;
	margin-right:auto;
	background-color: #000;
	height: 40px;
}
footer p {
	font-size: 10px;
	color: #FFF;
	text-align: center;
	line-height: 40px;
}


/* Individual */
#introduction .subImage {
	background-image: url(img/img_introduction.jpg);
}
#introduction #subMain {
	background-image: url(img/footer_introduction.png),url(img/in_bg_ptn.png);
	background-repeat:no-repeat,repeat;
	background-position:center bottom,center top;
	padding-bottom:490px;
}
#story .subImage {
	background-image: url(img/img_story.jpg);
}
#story #subMain {
	background-image: url(img/footer_story.png),url(img/in_bg_ptn.png);
	background-repeat:no-repeat,repeat;
	background-position:center bottom,center top;
	padding-bottom:490px;
}
#intro_fk,
#story_fk {
	position: absolute;
	left: 0px;
	top: -96px;
}
#cast #subMain {
	background-image: url(img/footer_default.png),url(img/in_bg_ptn.png);
	background-repeat:no-repeat,repeat;
	background-position:center bottom,center top;
	padding-bottom:370px;
}
#castList li {
	padding-right: 23.5px;
	padding-bottom: 62px;
	padding-top:57px;
	float: left;
}
#castList li:last-child {
	padding-right: 0px;
}
#castList li:first-child {
	padding-top:0px;
}
#castList2 li {
	float: left;
	height: 345px;
	padding-right: 29px;
}
#castList2 li:nth-child(4n) {
	padding-right:0px;
}
#castImage {
	text-align: center;
	position: relative;
	margin-bottom: 40px;
}

#castPrev {
	height: 102px;
	width: 86px;
	position: absolute;
	left: 0px;
	top: 180px;
}
#castNext {
	position: absolute;
	height: 102px;
	width: 86px;
	top: 180px;
	right: 0px;
}
#btList {
	text-align: center;
}
#staff #subMain {
	background-image: url(img/footer_default.png),url(img/in_bg_ptn.png);
	background-repeat:no-repeat,repeat;
	background-position:center bottom,center top;
	padding-bottom:370px;
}
#staff h3 {
	padding-bottom: 20px;
}
#staff #subMain p {
	font-size: 17px;
	line-height: 27px;
}
#staff section {
	padding-bottom:35px;
}
.staffSplitLeft {
	float: left;
	width: 239px;
	padding-top: 6px;
	padding-bottom: 30px;
}
.staffSplitRight {
	float: right;
	width: 776px;
	padding-bottom: 30px;
}
#staff #subMain .staffSplitLeft p {
	font-size: 12px;
	line-height: 23px;
	color: #9C1D22;
	text-align: center;
}
.staffHistory {
	padding-top: 30px;
	padding-bottom: 30px;
	border-top-width: 1px;
	border-bottom-width: 1px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: #000;
	border-bottom-color: #000;
	font-size: 14px;
	line-height: 30px;
}
.staffHistory dt {
	float: left;
	width: 72px;
}
.staffHistory dd {
	float: left;
	width: 704px;
}
.staffImage {
	margin-top:30px;
	background-repeat: no-repeat;
	background-position: center center;
	height: 702px;
	background-image: url(img/img_staff.jpg);
	
}