@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;700&display=swap');
::selection {
	background: #000;
	color: #fff;
}
::-moz-selection {
 background: #000;
 color:#fff;
}
* {
	outline:none;
	box-sizing: border-box;
}
body {
	font-family: 'Noto Serif JP',"游明朝体", "Yu Mincho", YuMincho, serif;
	font-weight: 500;
	font-size: 24px;
	color: #000;
	background-color: #fff;
}
a { color: #FFF; }
a:hover { text-decoration: none; }
.pc {display:none;}
/* Top Loading */
#tLoading{
    background: url(../images/main_bg.jpg) repeat center top / 100% auto;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10000;
}
#tLoading:before, #tLoading:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 500px;
    pointer-events: none;
}
#tLoading:before {
    top: 0;
    background-image: url(../images/main_bg_mark_tl.png),url(../images/main_bg_mark_tr.png),url(../images/main_bg_t.png);
    background-repeat: no-repeat;
    background-position: left top,right top,center top;
    background-size: auto,auto,100% auto;
}
#tLoading:after {
    bottom: 0;
    background-image: url(../images/main_bg_mark_bl.png),url(../images/main_bg_mark_br.png),url(../images/main_bg_b.png);
    background-repeat: no-repeat;
    background-position: left bottom,right bottom,center bottom;
    background-size: auto,auto,100% auto;
}
.loadWrap{
	background: url(../images/icon_compass_bg.png) no-repeat 0 0 / 100%;
	height: 160px;
	width: 160px;
	position: absolute;
	margin: auto;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.loadWrap:before{
	content: "";
	background: url(../images/icon_compass.png) no-repeat 0 0 / 100%;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	animation: rotate 3s linear infinite;
}
.loadWrap__text{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 14px;
	width: 113px;
	position: absolute;
	margin: auto;
	right: 0;
    bottom: -38px;
	left: 0;
}
.loadWrap__text span{
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
	display: block;
	height: 14px;
	animation: loadingText 1.8s ease infinite;
}
.loadWrap__text span:nth-child(1){
	background-image: url(../images/t_l.png);
	width: 16px;
	animation-delay: 0s;
}
.loadWrap__text span:nth-child(2){
	background-image: url(../images/t_o.png);
	width: 18px;
	animation-delay: 0.1s;
}
.loadWrap__text span:nth-child(3){
	background-image: url(../images/t_a.png);
	width: 19px;
	animation-delay: 0.15s;
}
.loadWrap__text span:nth-child(4){
	background-image: url(../images/t_d.png);
	width: 18px;
	animation-delay: 0.2s;
}
.loadWrap__text span:nth-child(5){
	background-image: url(../images/t_i.png);
	width: 8px;
	animation-delay: 0.25s;
}
.loadWrap__text span:nth-child(6){
	background-image: url(../images/t_n.png);
	width: 18px;
	animation-delay: 0.3s;
}
.loadWrap__text span:nth-child(7){
	background-image: url(../images/t_g.png);
	width: 16px;
	animation-delay: 0.35s;
}
@keyframes loadingText {  0% {
 transform:rotateY(0deg) translateY(0px);
}
 30% {
 transform:rotateY(0deg) translateY(0px);
}
 45% {
 transform:rotateY(180deg) translateY(-10px);
}
 60% {
 transform:rotateY(360deg) translateY(0px);
}
 100% {
 transform:rotateY(360deg) translateY(0px);
}
}
body#index #fullWrap,
body#sub #fullWrap{
	opacity: 0;
}
body#index #fullWrap.active,
body#sub #fullWrap.active{
	opacity: 1;
}
#fullWrap {
	width:750px;
	overflow:hidden;
}
#menuBtn {
	position:fixed;
	right:0;
	top:0;
	width:88px;
	height:88px;
	z-index:9001;
}
#menuBtn a {
	display: block;
	height:88px;
	overflow:hidden;
	position:relative;
}
#menuBtn a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:88px;
	height:176px;
	background: url(../images/menu_btn.png) no-repeat center center;
	transition:all 0.5s ease;
}
#menuBtn a.active:before {
	transform:translateY(-88px);
}
#topFixed {
	position: fixed !important;
	width: 100%;
	left: 0px !important;
	top: 0px !important;
	height:0;
	z-index: 9000;
	background:url(../images/main_bg_s.jpg);
	overflow: auto;
}
#topFixed:before,
#topFixed:after {
	content: '';
	position:absolute;
	left:0;
	right:0;
	height:500px;
	pointer-events: none;
}
#topFixed:before {
	top:0;
	background-image:url(../images/main_bg_mark_tl.png),url(../images/main_bg_mark_tr.png),url(../images/main_bg_t_s.png);
	background-repeat: no-repeat;
	background-position: left top,right top,center top;
	background-size: auto,auto,100% auto;
}
#topFixed:after {
	bottom:0;
	background-image:url(../images/main_bg_mark_bl.png),url(../images/main_bg_mark_br.png),url(../images/main_bg_b_s.png);
	background-repeat: no-repeat;
	background-position: left bottom,right bottom,center bottom;
	background-size: auto,auto,100% auto;
}
header {
	position: relative;
	padding: 0;
	width: 100%;
	z-index: 8000;
}
header h1 {
	width:210px;
	height:104px;
	position:relative;
	padding:20px;
	margin:0 auto 65px;
	z-index:50;
}
header h1 a {
	display: block;
	height: 104px;
	background: url(../images/logo.png) no-repeat center center / contain;
}
header nav {
	position: relative;
	z-index: 50;
	padding-bottom:70px;
}
header nav ul {
	display: flex;
	justify-content: flex-start;
	flex-wrap:wrap;
	width:700px;
	position: relative;
	margin:0 auto;
}
header nav ul:before {
	content:'';
	position:absolute;
	left:50%;
	top:0;
	bottom:0;
	width:1px;
	background:rgba(117,76,0,.4);
}
header nav li {
	height: 134px;
	width:350px;
}
header nav li a {
	display: block;
	height: 134px;
	padding: 0;
	text-decoration: none;
	position: relative;
	background: url(../images/nav_line_s.png) no-repeat center center;
}
header nav li a.soon {
	opacity:0.3;
	pointer-events:none;
}
header nav li a span {
	display: block;
	position: absolute;
	left:0;
	top:67px;
	bottom:0;
	right:0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size:auto 50px;
	text-indent: -9898px;
}
header nav li a strong {
	display: block;
	position: absolute;
	left:0;
	top:0;
	bottom:67px;
	right:0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size:auto 40px;
	text-indent: -9898px;
}
#n0 a span {
	background-image:url(../images/n0j.png);
}
#n1 a span {
	background-image:url(../images/n1j.png);
}
#n2 a span {
	background-image:url(../images/n2j.png);
}
#n3 a span {
	background-image:url(../images/n3j.png);
}
#n4 a span {
	background-image:url(../images/n4j.png);
}
#n5 a span {
	background-image:url(../images/n5j.png);
}
#n6 a span {
	background-image:url(../images/n6j.png);
}
#n7 a span {
	background-image:url(../images/n7j.png);
}
#n8 a span {
	background-image:url(../images/n8j.png);
}
#n9 a span {
	background-image:url(../images/n9j.png);
}
#n10 a span {
	background-image:url(../images/n10j.png);
}
#n11 a span {
	background-image:url(../images/n11j.png);
}
#n0 a strong {
	background-image:url(../images/n0.png);
}
#n1 a strong {
	background-image:url(../images/n1.png);
}
#n2 a strong {
	background-image:url(../images/n2.png);
}
#n3 a strong {
	background-image:url(../images/n3.png);
}
#n4 a strong {
	background-image:url(../images/n4.png);
}
#n5 a strong {
	background-image:url(../images/n5.png);
}
#n6 a strong {
	background-image:url(../images/n6.png);
}
#n7 a strong {
	background-image:url(../images/n7.png);
}
#n8 a strong {
	background-image:url(../images/n8.png);
}
#n9 a strong {
	background-image:url(../images/n9.png);
}
#n10 a strong {
	background-image:url(../images/n10.png);
}
#n11 a strong {
	background-image:url(../images/n11.png);
}
#tShare {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width:100%;
	padding-bottom: 70px;
	justify-content: center;
	z-index:50;
}
#tShare dt {
	height:11px;
	width:100%;
	background:url(../images/share_text_s.png) no-repeat center center;
}
#tShare dd {
	width:100px;
	height:100px;
}
#tShare a {
	display: block;
	height:100px;
	transition: all .3s ease;
}
.tw a {
	background:url(../images/sns_tw.svg) no-repeat center center / 40px auto;
}
.fb a {
	background:url(../images/sns_fb.svg) no-repeat center center / 40px auto;
}
.ln a {
	background:url(../images/sns_line.svg) no-repeat center center / 40px auto;
}
#top {
	padding:0;
	overflow:hidden;
}
.mainBg {
	position:relative;
	background:url(../images/main_bg_s.jpg) repeat center top / 100% auto;
}
.mainBg.s0 {
	position:relative;
	background-image:url(../images/mainbg_s0.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg.s1 {
	position:relative;
	background-image:url(../images/mainbg_s1.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg.s2 {
	position:relative;
	background-image:url(../images/mainbg_s2.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg.s3 {
	position:relative;
	background-image:url(../images/mainbg_s3.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg.s4 {
	position:relative;
	background-image:url(../images/mainbg_s4.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg.s5 {
	position:relative;
	background-image:url(../images/mainbg_s5.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg.s6 {
	position:relative;
	background-image:url(../images/mainbg_s6.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg.s7 {
	position:relative;
	background-image:url(../images/mainbg_s7.png),url(../images/main_bg_s.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:100% auto;
}
.mainBg:before,
.mainBg:after {
	content: '';
	position:absolute;
	left:0;
	right:0;
	height:500px;
	pointer-events: none;
}
.mainBg:before {
	top:0;
	background-image:url(../images/main_bg_mark_tl.png),url(../images/main_bg_mark_tr.png),url(../images/main_bg_t_s.png);
	background-repeat: no-repeat;
	background-position: left top,right top,center top;
	background-size: auto,auto,100% auto;
}
.mainBg:after {
	bottom:0;
	background-image:url(../images/main_bg_mark_bl.png),url(../images/main_bg_mark_br.png),url(../images/main_bg_b_s.png);
	background-repeat: no-repeat;
	background-position: left bottom,right bottom,center bottom;
	background-size: auto,auto,100% auto;
}
.mv {
	width:100%;
	padding-top:90%;
	position:relative;
	z-index:5;
	background:url(../images/remv.jpg) no-repeat center center / cover;
}
.mv li {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
.mv li:nth-child(1){
    z-index: 1;
}
.mv li:nth-child(2){
    position: absolute !important;
    z-index: 2;
}
.mv li:nth-child(3){
    z-index: 3;
}
.mv li:nth-child(4){
    z-index: 4;
}
.mv li:nth-child(5){
    z-index: 5;
}
.mv li:nth-child(6){
    z-index: 6;
}
.mvin {
	position:absolute;
	top:0;
	height:100%;
	left:0;
	right:0;
}
#mvBg {
	background:url(../images/mv_bg.png) no-repeat center top / cover;
}
#mvG1 {
	background:url(../images/mv_g1.png) no-repeat center top / cover;
	left:-3.2018%;
}
#mvG2 {
	background:url(../images/mv_g2.png) no-repeat center top / cover;
}
#mvG3 {
	background:url(../images/mv_g3.png) no-repeat center top / cover;
}
#mvG4 {
	background:url(../images/mv_catch.png) no-repeat center top / cover;
}
.catch {
	position: absolute;
	top:24px;
	left:32px;
	width:100px;
	bottom:0;
	pointer-events: none;
	background: url(../images/catch.png) no-repeat center top / contain;
}
#toTop {
	display: none;
}
#toTopS {
	position:absolute;
	left:22px;
	bottom:30px;
	width: 92px;
	height:130px;
	z-index:800;
}
#toTopS a {
	display: block;
	height:130px;
	position:relative;
	background: url(../images/scroll_text_w.png) no-repeat center 15px;
}
@keyframes rotate {
	from {
		transform:rotate(0deg);
	}
	to {
		transform:rotate(360deg);
	}
}
@keyframes Yrotate {
	from {
		transform:rotateY(0deg);
	}
	to {
		transform:rotateY(360deg);
	}
}
#toTopS a:before {
	content:'';
	position:absolute;
	bottom:0px;
	left:0px;
	width:92px;
	height:92px;
	background:url(../images/scroll_rotate_w.png) no-repeat center center;
	animation:rotate 5s linear infinite;
}
#toTopS a:after {
	content:'';
	position:absolute;
	left:28px;
	bottom:33px;
	width:34px;
	height:24px;
	background: url(../images/scroll_arrow_w.png) no-repeat center center;
}
#toMovie {display: none;}
#topMovieS {
	width:240px;
	height:136px;
	display: block;
	position: absolute;
	right:0;
	bottom:0;
	background-repeat: no-repeat;
	background-size: cover;
	pointer-events: auto;
	z-index:600;
}
#topMovieS a {
	height:136px;
	display: block;
	background:url(../images/top_movie_fr.png) no-repeat center center / contain;
	position:relative;
}

#topMovieS a:before {
	content:'';
	width:56px;
	height:56px;
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-28px;
	margin-top:-28px;
	background: url(../images/top_movie_ar.png) no-repeat center center / contain;
}

#startDate {
	display:none;
}
#startDateS {
	position:absolute;
	right:260px;
	bottom:20px;
	width:350px;
	height:111px;
	pointer-events: none;
	background: url(../images/startdate.png) no-repeat center bottom / contain;
	z-index:500;
}
.eiga_bnrS {
	position:absolute;
	left:156px;
	bottom:17px;
	width:338px;
	pointer-events: auto;
	z-index:501;
}
.eiga_bnrS img {
	width:100%;
	height:auto;
}
#logoS {
	width:250px;
	height:139px;
	position:absolute;
	z-index:700;
	left:50%;
	top:60%;
	background: url(../images/logo.png) no-repeat center center / contain;
	margin-left:-150px;
	margin-top:-80px;
}
.contWrap {
	width:654px;
	margin: 0 auto;
}
#update {
	padding:96px 0;
	background:url(../images/update_bg.png) repeat center center;
}
#update h2 {
	height:113px;
	background: url(../images/update_h2.png) no-repeat center center / contain;
	margin-bottom:40px;
}
#updatein {
	width:100%;
}
#updates {
	width:654px;
	margin-bottom:100px;
}
#updates dt {
	letter-spacing: 0.1em;
	line-height:2;
	color:#e7ca3c;
}
#updates dd {
	letter-spacing: 0.1em;
	line-height:2;
	padding-bottom:18px;
	margin-bottom:18px;
	position:relative;
}
#updates dd:before {
	content:'';
	position:absolute;
	height:1px;
	left:0;
	right:14px;
	bottom:0;
	background:rgba(255,255,255,.4);
}
#updates dd:after {
	content:'';
	position:absolute;
	height:12px;
	width:12px;
	right:0;
	bottom:-2px;
	background:url(../images/update_deco.png) no-repeat center center;
}
#twidget {
	padding:24px;
	width:560px;
	border:1px solid rgba(243,152,0,.4);
	margin:0 auto;
}
#twidgetin {
	height:330px;
	background:#FFF;
	margin-bottom: 50px;
	overflow: hidden;
}
#toTwitter {
	width:280px;
	height:64px;
	margin:0 auto 25px;
}
#toTwitter a {
	line-height: 64px;
	text-align: center;
	/*vertical-align: middle;*/
	display: block;
	height: 64px;
	text-decoration: none;
	background:url(../images/btn_totwitter_s.png) no-repeat center center / contain;
	font-size:24px;
	letter-spacing: 0.2em;
}
#toTwitter a img {
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
	height:20px;
}
footer {
	padding:96px 0;
	background:url(../images/footer_bg.jpg) no-repeat center center / cover;
}
#footerBanner {
	width:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto
}
#footerBanner li {
	width:315px;
	margin:0 12px 24px;
}
#footerBanner li a,
#footerBanner li a img {
	display: block;
	width:315px;
	height:auto;
}
.toContact {
	padding-top:24px;
	text-align: center;
	padding-bottom:36px;
}
.toContact:after {
	content:'';
	display: inline-block;
	vertical-align: middle;
	width:20px;
	height:20px;
	background: url(../images/contact_arrow.png) no-repeat center center / contain;
	margin-left:10px;
}
.toContact a {
	text-decoration: none;
	font-size:20px;
}
.footerCaution {
	text-align: center;
	margin-bottom:12px;
	color:#AAA;
	font-size: 20px;
	line-height:2;
}
.copyright {
	text-align: center;
	color:#AAA;
	font-size: 20px;
	line-height:2;
}
#subLogoS {
	width:210px;
	height:104px;
	position:absolute;
	top:20px;
	left:50%;
	z-index:50;
	margin-left:-105px;
}
#subLogoS a {
	display: block;
	height: 104px;
	background: url(../images/logo.png) no-repeat center center / contain;
}
#sub #main {
	min-height:100vh;
	padding-top:208px;
	position:relative;
	z-index: 5;
	padding-bottom:320px;
}
#sub #main .contWrap {
	position:relative;
	z-index:45;
}
#sub #main h2 {
	height:112px;
	display: flex;
	justify-content: center;
	margin-bottom:72px;
}
#sub #main h2 span {
	margin:0 30px;
	height:112px;
}
#introduction h2 span {
	background-image: url(../images/n2.png),url(../images/n2j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:237px;
	text-indent:-9874px;
}
#sub #main h2:before,
#sub #main h2:after {
	content:'';
	height:112px;
	width:30px;
}
#sub #main h2:before {
	background:url(../images/h2_deco_l.png) no-repeat right center / contain;
}
#sub #main h2:after {
	background:url(../images/h2_deco_r.png) no-repeat left center / contain;
}
.introductionText {
	font-size:24px;
	line-height: 2em;
	margin-bottom:2em;
	letter-spacing: 0.1em;
	text-align: center;
	z-index:5;
	position: relative;
}
.introductionCatch {
	width:636px;
	height:834px;
	background:url(../images/introduction_img_s.png) no-repeat center top;
	z-index:5;
	position: relative;
	margin:50px auto 0;
}
#subpageChara {
	height:290px;
	background:url(../images/update_bg.png);
	position:relative;
	z-index:8005;
}
#subpageChara p {
	position:absolute;
	right:30px;
	bottom:78px;
	width:180px;
	height:20px;
	z-index:500;
}
#subpageChara p a {
	display: block;
	height: 20px;
	background:url(../images/to_character_detail.png) no-repeat center center;
	transition: all 0.3s ease;

}
#subpageChara:before {
	content:'';
	position: absolute;
	left:20px;
	width:444px;
	top:0;
	bottom:0;
	z-index:50;
	pointer-events: none;
}
#subpageChara.c1:after {
	pointer-events: none;
}
#subpageChara.c1:before {
	background:url(../images/sc1_name.png) no-repeat left center;
}
#subpageChara.c1:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:50px;
	width:517px;
	height:528px;
	background:url(../images/sc1_img.png) no-repeat center bottom;
	pointer-events: none;
}
#subpageChara.c2:before {
	background:url(../images/sc2_name.png) no-repeat left center;
}
#subpageChara.c2:after {
	content:'';
	position:absolute;
	right:-100px;
	bottom:0;
	margin-left:-65px;
	width:725px;
	height:489px;
	background:url(../images/sc2_img.png) no-repeat center bottom;
}
#subpageChara.c3:before {
	background:url(../images/sc3_name.png) no-repeat left center;
}
#subpageChara.c3:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:-65px;
	width:510px;
	height:337px;
	background:url(../images/sc3_img.png) no-repeat center bottom;
	pointer-events: none;
}
#subpageChara.c4:before {
	background:url(../images/sc4_name.png) no-repeat left center;
}
#subpageChara.c4:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:-65px;
	width:534px;
	height:528px;
	background:url(../images/sc4_img.png) no-repeat center bottom;
	pointer-events: none;
}
#subpageChara.c5:before {
	background:url(../images/sc5_name.png) no-repeat left center;
}
#subpageChara.c5:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:-65px;
	width:542px;
	height:528px;
	background:url(../images/sc5_img.png) no-repeat center bottom;
	pointer-events: none;
}
#subpageChara.c6:before {
	background:url(../images/sc6_name.png) no-repeat left center;
}
#subpageChara.c6:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:-90px;
	width:663px;
	height:528px;
	background:url(../images/sc6_img.png) no-repeat center bottom;
	pointer-events: none;
}
#subpageChara.c7:before {
	background:url(../images/sc7_name.png) no-repeat left center;
}
#subpageChara.c7:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:-30px;
	width:483px;
	height:488px;
	background:url(../images/sc7_img.png) no-repeat center bottom;
	pointer-events: none;
}
#subpageChara.c8:before {
	background:url(../images/sc8_name.png) no-repeat left center;
}
#subpageChara.c8:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:-46px;
	width:500px;
	height:449px;
	background:url(../images/sc8_img.png) no-repeat center bottom;
	pointer-events: none;
}
#subpageChara.c9:before {
	background:url(../images/sc9_name.png) no-repeat left center;
}
#subpageChara.c9:after {
	content:'';
	position:absolute;
	right:0;
	bottom:0;
	margin-left:-200px;
	width:662px;
	height:528px;
	background:url(../images/sc9_img.png) no-repeat center bottom;
	pointer-events: none;
}
.bttop {
	position:absolute;
	bottom:40px;
	left:40px;
	width:80px;
	height:120px;
	z-index:500;
}
.bttop a {
	height:120px;
	display: block;
	position:relative;
	background: url(../images/to_top.png) no-repeat center 15px;
}
.bttop a:before {
	content:'';
	position:absolute;
	right:0px;
	bottom:0px;
	width:80px;
	height:80px;
	background:url(../images/scroll_rotate.png) no-repeat center center;
		animation: rotate 10s linear infinite;
}
.bttop a:hover:before {
	animation: rotate 10s linear infinite;
}
.bttop a:after {
	content:'';
	position:absolute;
	right:28px;
	top:73px;
	width:24px;
	height:12px;
	background: url(../images/scroll_arrow.png) no-repeat center center;
	transform:rotate(180deg);
	z-index:50000;
}
#onair h2 span {
	background-image: url(../images/n3.png),url(../images/n3j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:242px;
	text-indent:-9874px;
}
.subNav {
	display:flex;
	justify-content: center;
	margin-bottom:96px;
	position:relative;
}
.subNav:before {
	content:'';
	position:absolute;
	left:0;
	right:0;
	bottom:4px;
	height: 1px;
	background:rgba(117,76,0,.2);
}
.subNav li {
	height:56px;
	margin:0 20px;
}
.subNav li a{
	display: block;
	position: relative;
	height:56px;
	font-size:24px;
	text-decoration: none;
	font-weight: 700;
	letter-spacing: 0.1em;
	color:#000;
}
.subNav li a:hover,
.subNav li a.active {
	color:#C80000;
}
.subNav li a:before {
	content:'';
	position:absolute;
	left:calc(50% - 2px);
	bottom:3px;
	width:3px;
	height:3px;
	background:url(../images/red_point.png);
	transition: all 0.3s ease;
	opacity:0;
}
.subNav li a:after {
	background:url(../images/red_line.png) no-repeat right center;
	content:'';
	position:absolute;
	height:3px;
	width:0px;
	left:calc(50% + 2px);
	bottom:3px;
	transition:all 0.3s ease;
	opacity:0;
}
.subNav li a.active:before {
	left:0px;
	opacity:1;
}
.subNav li a.active:after {
	width:calc(100% - 4px);
	left:4px;
	opacity:1;
}
#tvStartDate {
	width:604px;
	height:197px;
	background:url(../images/tv_startdate.png) no-repeat center center;
	margin:0 auto 96px;
}
#tv h3 {
	height:96px;
	margin-bottom:96px;
	background:url(../images/onair_h3tv.png) no-repeat center center / contain;
}
#streaming {
	display: none;
}
#streaming h3 {
	height:96px;
	margin-bottom:96px;
	background:url(../images/onair_h3streaming_2.png) no-repeat center center / contain;
}
#streaming h5 {
	height:96px;
	margin-bottom:96px;
	background:url(../images/onair_h3streaming.png) no-repeat center center / contain;
}
.onairList {
	width:100%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.onairList li {
	width:100%;
	text-align: center;
	padding-bottom:70px;
}
.onairList li h4,
.onairList li h6 {
	font-size:24px;
	font-weight: 700;
	color:#C80000;
	line-height:48px;
	margin-bottom:10px;
}
.onairList li h4 a,
.onairList li h6 a,
.onairList li h4 a:visited,
.onairList li h6 a:visited{
	color: #C80000;
}
.onairList li .date {
	font-size:24px;
	line-height:48px;
}
.onairList li .caution {
	font-size:20px;
	line-height:40px;
}
#staffcast h2 span {
	background-image: url(../images/n5.png),url(../images/n5j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:411px;
	text-indent:-9874px;
}
#staff h3 {
	height:96px;
	margin-bottom:96px;
	background:url(../images/sc_h3staff.png) no-repeat center center / contain;
}
#cast {
	display: none;
}
#cast h3 {
	height:96px;
	margin-bottom:96px;
	background:url(../images/sc_h3cast.png) no-repeat center center / contain;
}
.scLists {
	display: flex;
	justify-content: center;
}
.scLists ul {
	width:50%;
	margin:0 20px;
}
#staff .scLists ul {
	width:100%;
}
.scLists li {
	width:100%;
	padding-bottom: 40px;
}
.scLists strong {
	font-size:24px;
display:block;
	line-height:40px;
	margin-bottom: 10px;
	font-weight: 700;
	color:#C80000;
	text-align: right;
	text-align: center;
}
.scLists span {
	text-align: center;
	display: block;
	font-weight:700;
	font-size:28px;
	line-height: 42px;
	margin-bottom:20px;
}
#staff .scLists ul {
	width:100%;
}
#staff .scLists li {
	width:100%;
}
.scLists span small {
	font-size:16px;
}
.bookLists {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-left:-24px;
	margin-right:-24px;
	width:702px;
}
.bookLists li {
	width:186px;
	margin:0 24px 48px;
}
.bookLists li a {
	display: block;
	height:100%;
	text-decoration: none;
}
.bookLists li a img {
	width:186px;
	height:auto;
	display: block;
	margin-bottom:15px;
	transition:all 0.3s ease;
}
.bookLists li a p {
	padding:0 15px;
	text-align: center;
	color:#C80000;
	line-height:36px;
	background-image: url(../images/books_deco_l.png),url(../images/books_deco_r.png);
	background-size:auto 24px;
	background-repeat: no-repeat;
	background-position: left top,right top;
	font-size:24px;
}
.bookss {
	display: none;
}
#cat1 {
	display: block;
}
#books h2 span {
	background-image: url(../images/n6.png),url(../images/n6j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:237px;
	text-indent:-9874px;
}
#news h2 span {
	background-image: url(../images/n1.png),url(../images/n1j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:206px;
	text-indent:-9874px;
}
#articleLists {
	width:100%;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#articleLists li {
	margin-bottom:50px;
	width:303px;
}
#articleLists li a {
	width:100%;
	height:100%;
	font-size:24px;
	text-decoration: none;
}
#articleLists li a .thumb {
	width:303px;
	height:172px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size:cover;
	position:relative;
	background-image: url(../images/article_thumbnoimg.png);
}
#articleLists li a .thumb:before {
	content:'';
	position: absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background:url(../images/article_thumbflame.png) no-repeat center center / contain;
}
#articleLists li a .articleListTexts {
	position:relative;
}
#articleLists li a .articleListTexts:before {
	content:'';
	position:absolute;
	height:1px;
	left:0;
	right:14px;
	bottom:0;
	background:rgba(117,76,0,.4);
}
#articleLists li a .articleListTexts:after {
	content:'';
	position:absolute;
	height:12px;
	width:12px;
	right:0;
	bottom:-2px;
	background:url(../images/articlelist_deco.png) no-repeat center center;
}
#articleLists li a .articleListTexts time {
	color:#C80000;
	display: block;
	padding-top:20px;
	display: block;
}
#articleLists li a .articleListTexts .title {
	line-height:2;
	color:#000;
	text-decoration: none;
	padding-bottom:1em;
	padding-top:20px;
}
#articleLists li a:hover .articleListTexts .title {
	text-decoration: none;
}
#news article {
	width:100%;
	margin:0 auto 96px;
}
article time {
	color:#C80000;
	display: block;
	margin-bottom:20px;
	font-size:24px;
}
article h3 {
	font-size:24px;
	line-height: 2;
	padding-bottom:16px;
	margin-bottom:30px;
	border-bottom:1px solid rgba(117,76,0,.4);
}
.articlein p {
	font-size:24px;
	line-height:2;
	margin-bottom:2em;
}
.aligncenter {
	display:block;
	text-align: center;
	margin:0 auto 2em;
}
.alignleft {
	float:left;
	margin:0 20px 20px 0;
}
.alignright {
	float:right;
	margin:0 0 20px 20px;
}
.articlein p strong {
	background:#312000;
	color:#fff;
}
.articlein p.box {
	border:1px solid #312000;
	padding:15px 40px;
}
.articlein a.button {
	display: table;
	border:2px solid #C80000;
	line-height:1.8;
	padding:8px 30px;
	color:#C80000;
	text-decoration: none;
	transition: all 0.3s ease;
}
.articlein a.button:hover {
	background:#C80000;
	color:#FFF;
}
.articlein a {
	color:#C80000;
}
.articlein .spec {
	border:1px solid #312000;
	padding:15px 40px;
	display: flex;
	flex-wrap:wrap;
	font-size:24px;
	margin-bottom:2em;
}
.articlein .spec dt {
	padding-right:30px;
	line-height:40px;
	color:#C80000;
	text-align: right;
	width:150px;
}
.articlein .spec dd {
	padding-right:30px;
	line-height:40px;
	width:calc(100% - 150px);
}
.btindex {
	margin:0 auto;
	width:200px;
}
.btindex a {
	display: block;
	border:2px solid #C80000;
	line-height:1.8;
	padding:8px 30px;
	color:#C80000;
	text-decoration: none;
	transition: all 0.3s ease;
	font-size:24px;
	text-align: center;
}
#goods h2 span {
	background-image: url(../images/n7.png),url(../images/n7j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:240px;
	text-indent:-9874px;
}
#goodsLists {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
#goodsLists p img{
	border: #312000 1px solid;
	width: 303px;
}
#goodsLists li {
	width:303px;
	margin-right:48px;
	margin-bottom:48px;
	position:relative;
}
#goodsLists li:nth-child(2n) {
	margin-right:0;
}
#goodsLists li:before {
	content:'';
	position:absolute;
	height:1px;
	left:0;
	right:14px;
	bottom:0;
	background:rgba(117,76,0,.4);
}
#goodsLists li:after {
	content:'';
	position:absolute;
	height:12px;
	width:12px;
	right:0;
	bottom:-2px;
	background:url(../images/articlelist_deco.png) no-repeat center center;
}
#goodsLists li a {
	display: block;
	height:100%;
	text-decoration: none;
}
#goodsLists li a .thumb {
	height:303px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	position:relative;
	background-image: url(../images/goods_thumbnoimg.png);
	transition: all 0.3s ease;
}
#goodsLists li a .thumb:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background: url(../images/goods_thumbframe.png) no-repeat center center / contain;
}
#goodsLists li a .title {
	font-size:24px;
	line-height:2;
	color:#C80000;
	padding:1em 0;
}
#goodsPageNav{
	width: 100%;
	height: auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 1em;
}
#goodsPageNav li{
	height: 56px;
	margin: 10px 20px;
	position: relative;
}
#goodsPageNav li a{
	display: block;
	position: relative;
	height: 56px;
	font-size: 24px;
	padding: 0 16px;
	text-decoration: none;
	font-weight: 700;
	color: #000;
}
#goodsPageNav li a.active {
	color:#C80000;
}
#goodsPageNav li a:before {
	content:'';
	position:absolute;
	left:calc(50% - 2px);
	bottom:3px;
	width:3px;
	height:3px;
	background:url(../images/red_point.png);
	transition: all 0.3s ease;
	opacity:0;
}
#goodsPageNav li a:after {
	background:url(../images/red_line.png) no-repeat right center;
	content:'';
	position:absolute;
	height:3px;
	width:0px;
	left:calc(50% + 2px);
	bottom:3px;
	transition:all 0.3s ease;
	opacity:0;
}
#goodsPageNav li a.active:before {
	left:0px;
	opacity:1;
}
#goodsPageNav li a.active:after {
	width:calc(100% - 4px);
	left:4px;
	opacity:1;
}
.goodss {
	display: none;
}
.goodsPic img{
	border: #312000 1px solid;
	width: 654px;
}
#character h2 span {
	background-image: url(../images/n4.png),url(../images/n4j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:393px;
	text-indent:-9874px;
}
#mainCharacters {
	display: flex;
	margin-bottom:96px;
	flex-wrap: wrap;
}
#mainCharacters.fixed {
	position:fixed;
	z-index:500000;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
#mainCharacters li {
	cursor:pointer;
	height:480px;
	width:250px;
	overflow:hidden;
	position:relative;
	min-height:640px;
	transition:all 0.3s ease;
	background:#000;
}
#mainCharacters li .cMimg {
	position: absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
}
#mainCharacters li .cMimg {
	background-position:center center;
}
#mainCharacters li .cMimg:before {
	content:'';
	position: absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background: url(../images/character_mask.png) repeat center center;
	transition:all 0.3s ease;
}
#mainCharacters li .cMimg:after {
	content:'';
	position:absolute;
	left:25px;
	right:25px;
	top:15px;
	bottom:15px;
	transition:all 0.3s ease;
}
#mainCharacters li.active .cMimg:before,
#mainCharacters li.active .cMimg:after {
	opacity:0;
}
#mainCharacters #character1 .cMimg {
	background-image:url(../images/character_1main.jpg);
	background-size:cover;
	background-position: 28% center;
}
#mainCharacters #character2 .cMimg {
	background-image:url(../images/character_2main.jpg);
	background-size:cover;
	background-position: 50% center;
}
#mainCharacters #character3 .cMimg {
	background-image:url(../images/character_3main.jpg);
	background-size:cover;
	background-position: 24% center;
}
#mainCharacters #character4 .cMimg {
	background-image:url(../images/character_4main.jpg);
	background-size:cover;
	background-position:44 center;
}
#mainCharacters #character5 .cMimg {
	background-image:url(../images/character_5main.jpg);
	background-size:cover;
	background-position: 61% center;
}
#mainCharacters #character6 .cMimg {
	background-image:url(../images/character_6main.jpg);
	background-size:cover;
	background-position: 59% center;
}
#mainCharacters #character7 .cMimg {
	background-image:url(../images/character_7main.jpg);
	background-size:cover;
	background-position: 50% center;
}
#mainCharacters #character8 .cMimg {
	background-image:url(../images/character_8main.jpg);
	background-size:cover;
	background-position: 43% center;
}
#mainCharacters #character9 .cMimg {
	background-image:url(../images/character_9main.jpg);
	background-size:cover;
	background-position: 38% center;
}
#mainCharacters #character1 .cMimg:after {
	background-image:url(../images/character_1tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character2 .cMimg:after {
	background-image:url(../images/character_2tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character3 .cMimg:after {
	background-image:url(../images/character_3tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character4 .cMimg:after {
	background-image:url(../images/character_4tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character5 .cMimg:after {
	background-image:url(../images/character_5tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character6 .cMimg:after {
	background-image:url(../images/character_6tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character7 .cMimg:after {
	background-image:url(../images/character_7tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character8 .cMimg:after {
	background-image:url(../images/character_8tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#mainCharacters #character9 .cMimg:after {
	background-image:url(../images/character_9tname.png),url(../images/character_tdeco_t.png);
	background-position: left bottom,center top;
	background-repeat: no-repeat;
}
#subCharacters {
	width:702px;
	margin:0 -24px;
	display:flex;
	flex-wrap: wrap;
	justify-content: center;

}
#subCharacters li {
	width:303px;
	margin:0 24px 48px;
}
#subCharacters li a {
	display: block;
	height:100%;
}
#subCharacters li a .thumb {
	height:303px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
#subCharacters li a .name {
	display: table;
	margin:15px auto 0;
	padding:0 30px;
	text-align: center;
	line-height:36px;
	background-image: url(../images/books_deco_l.png),url(../images/books_deco_r.png);
	background-size:auto 24px;
	background-repeat: no-repeat;
	background-position: left center,right center;
	font-size:20px;
	color:#C80000;
}
#character10 .thumb{
	background-image:url(../images/character_t10.png);
}
#character11 .thumb{
	background-image:url(../images/character_t11.png);
}
#character12 .thumb{
	background-image:url(../images/character_t12.png);
}
#character13 .thumb{
	background-image:url(../images/character_t13.png);
}
#character14 .thumb{
	background-image:url(../images/character_t14.png);
}
#character15 .thumb{
	background-image:url(../images/character_t15.png);
}
#character16 .thumb{
	background-image:url(../images/character_t16.png);
}
#character17 .thumb{
	background-image:url(../images/character_t17.png);
}
#character18 .thumb{
	background-image:url(../images/character_t18.png);
}
#character19 .thumb{
	background-image:url(../images/character_t19.png);
}
#character20 .thumb{
	background-image:url(../images/character_t20.png);
}
#character21 .thumb{
	background-image:url(../images/character_t21.png);
}
#character22 .thumb{
	background-image:url(../images/character_t22.png);
}
#character23 .thumb{
	background-image:url(../images/character_t23.png);
}
#character24 .thumb{
	background-image:url(../images/character_t24.png);
}
#character25 .thumb{
	background-image:url(../images/character_t25.png);
}
#character26 .thumb{
	background-image:url(../images/character_t26.png);
}
#characterModal {
	position:fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:url(../images/main_bg_s.jpg);
	overflow-y: scroll;
	overflow-x:auto;
	z-index:-1;
}
#characterModal.on {
	z-index:50000;
}
#characterModal:after {
	content:'';
	position:fixed;
	left:0;
	top:0;
	bottom:0;
	right:100%;
	width:0px;
	background:#C80000;
}
@keyframes ch {
	0% {
		width:0;
		left:0;
		right:100%;
	}
	45%,55% {
		width:100%;
		left:0;
		right:0;
	}
	100% {
		width:0;
		left:100%;
		right:0;

	}
}
#characterModal.ch:after {
	animation:ch 0.4s linear;
}
.characterModalin {
	position: absolute;
	left:0;
	top:0;
	width:100%;
	min-height:100%;
	background-position:0 224px;
	background-repeat: no-repeat;
	background-size: contain;
	padding-bottom:160px;
}
.characterModalin div {
	opacity:0;
}
.characterModalin.on div {
	opacity:1;
	transition:all 0.3s ease;
}
.cm1 .characterModalin {
	background-image:url(../images/character_1main.jpg);
}
.cm2 .characterModalin {
	background-image:url(../images/character_2main.jpg);
}
.cm3 .characterModalin {
	background-image:url(../images/character_3main.jpg);
}
.cm4 .characterModalin {
	background-image:url(../images/character_4main.jpg);
}
.cm5 .characterModalin {
	background-image:url(../images/character_5main.jpg);
}
.cm6 .characterModalin {
	background-image:url(../images/character_6main.jpg);
}
.cm7 .characterModalin {
	background-image:url(../images/character_7main.jpg);
}
.cm8 .characterModalin {
	background-image:url(../images/character_8main.jpg);
}
.cm9 .characterModalin {
	background-image:url(../images/character_9main.jpg);
}
.cm10 .characterModalin {
	background-image:url(../images/character_10main.jpg);
}
.cm11 .characterModalin {
	background-image:url(../images/character_11main.jpg);
}
.cm12 .characterModalin {
	background-image:url(../images/character_12main.jpg);
}
.cm13 .characterModalin {
	background-image:url(../images/character_13main.jpg);
}
.cm14 .characterModalin {
	background-image:url(../images/character_14main.jpg);
}
.cm15 .characterModalin {
	background-image:url(../images/character_15main.jpg);
}
.cm16 .characterModalin {
	background-image:url(../images/character_16main.jpg);
}
.cm17 .characterModalin {
	background-image:url(../images/character_17main.jpg);
}
.cm18 .characterModalin {
	background-image:url(../images/character_18main.jpg);
}
.cm19 .characterModalin {
	background-image:url(../images/character_19main.jpg);
}
.cm20 .characterModalin {
	background-image:url(../images/character_20main.jpg);
}
.cm21 .characterModalin {
	background-image:url(../images/character_21main.jpg);
}
.cm22 .characterModalin {
	background-image:url(../images/character_22main.jpg);
}
.cm23 .characterModalin {
	background-image:url(../images/character_23main.jpg);
}
.cm24 .characterModalin {
	background-image:url(../images/character_24main.jpg);
}
.cm25 .characterModalin {
	background-image:url(../images/character_25main.jpg);
}
.cm26 .characterModalin {
	background-image:url(../images/character_26main.jpg);
}
.characterModalHead {
	position:absolute;
	left:0;
	right:0;
	top:0;
	height:130px;
	background-image:url(../images/main_bg_mark_tl.png),url(../images/main_bg_mark_tr.png),url(../images/main_bg_t_s.png);
	background-repeat: no-repeat;
	background-position: left top,right top,center top;
	background-size: auto,auto,100% auto;
}
.characterModalFoot {
	position:absolute;
	height:150px;
	background-image:url(../images/main_bg_mark_bl.png),url(../images/main_bg_mark_br.png),url(../images/main_bg_b_s.png);
	background-repeat: no-repeat;
	background-position: left bottom,right bottom,center bottom;
	background-size: auto,auto,100% auto;
	left:0;
	right:0;
	bottom:0;
}
.modalClose {
	width:180px;
	height:80px;
	position:absolute;
	right:40px;
	top:40px;
}
.modalClose a {
	display: block;
	height:80px;
	position:relative;
	background:url(../images/cm_close_text_s.png) no-repeat left center;
}
.modalClose a:before {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/scroll_rotate.png) no-repeat center center;
	animation: rotate 10s linear infinite;
}
.modalClose a:after {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/cm_close_icon_s.png) no-repeat center center;
}
.cmNav {
	position:absolute;
	left:40px;
	bottom:40px;
	right:40px;
	display: flex;
	justify-content: space-between;
}
.cmNav li {
	height:80px;
}
.cmNav .prev a {
	display: block;
	height:80px;
	padding-left:100px;
	position:relative;
	line-height:80px;
	text-decoration: none;
	padding-right:20px;
	font-size:24px;
	color:#000;
}
.cmNav .prev a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/scroll_rotate.png) no-repeat center center;
	animation: rotate 10s linear infinite;
}
.cmNav .prev a:after {
	content:'';
	position:absolute;
	left: 27px;
    top: 33px;
	width:24px;
	height:12px;
	background:url(../images/scroll_arrow.png) no-repeat center center;
	transform:rotate(90deg);
}
.cmNav .next a {
	display: block;
	height:80px;
	padding-right:100px;
	position:relative;
	line-height:80px;
	text-decoration: none;
	padding-left:20px;
	font-size:24px;
	color:#000;
}
.cmNav .next a:before {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/scroll_rotate.png) no-repeat center center;
	animation: rotate 10s linear infinite;
}
.cmNav .next a:after {
	content:'';
	position:absolute;
	right: 27px;
    top: 33px;
	width:24px;
	height:12px;
	background:url(../images/scroll_arrow.png) no-repeat center center;
	transform:rotate(-90deg);
}
.characterSpec {
	margin-top:622px;
	padding:40px 40px 40px 80px;
	background-image: url(../images/cm_spec_deco_t_s.png),url(../images/cm_spec_deco_b_s.png),url(../images/cm_spec_deco_c_s.png);
	background-repeat: no-repeat;
	background-position: 36px 40px, 36px center,left 36px bottom 40px;
	position:relative;
	min-height:367px;
	position: relative;
}
.characterSpec:before {
	content:'';
	position:absolute;
	left:40px;
	top:46px;
	bottom:46px;
	width:1px;
	background:#754c00;
}
.characterSpec h3 {
	font-size:48px;
	font-weight: 900;
	margin-bottom:15px;
	color:#C80000;
}
.characterSpec .characterVoice {
	font-size:24px;
	margin-bottom:1.5em;
}
.characterSpec .characterText {
	font-size:24px;
	line-height: 2;
}
#topBnr {
	background:url(../images/footer_bg.jpg) no-repeat center center / cover;
	padding:50px 0;
}
#topBnr ul {
	display: flex;
	flex-wrap:wrap;
	width:100%;
	margin:0 auto -20px;
	justify-content: center;
}
#topBnr li {
	width:315px;
	margin:0 10px 20px;
}
#topBnr li a,
#topBnr li a img {
	display: block;
	width:315px;
	height:auto;
}
#modalMovie {
	position: fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index: 20000;
	background:#000;
	overflow: auto;
	display: none;
	background:url(../images/main_bg_s.jpg);
}
.modalMoviein {
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.modalMoviein iframe {
	width:100%;
	height:422px;
	display: block;
}
.modalMovieClose {
	width:180px;
	height:80px;
	position:absolute;
	right:40px;
	top:40px;
	z-index:5000;
}
.modalMovieClose a {
	display: block;
	height:80px;
	position:relative;
	background:url(../images/cm_close_text_s.png) no-repeat left center;
}
.modalMovieClose a:before {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/scroll_rotate.png) no-repeat center center;
	animation: rotate 10s linear infinite;
}
.modalMovieClose a:after {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/cm_close_icon_s.png) no-repeat center center;
}
#movie h2 span {
	background-image: url(../images/n9.png),url(../images/n9j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 20px;
	width:212px;
	text-indent:-9874px;
}
.movieLists {
	width:654px;
}
.movieLists div {
	width:654px;
}
.movieLists dt {
	height: 368px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-bottom:24px;
}
.movieLists dt a {
	height:368px;
	display: block;
	background: url(../images/movie_fr_s.png) no-repeat center center;
	position:relative;
}
.movieLists dt a:before {
	content:'';
	width:96px;
	height:96px;
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-48px;
	margin-top:-48px;
	background: url(../images/movie_ar_s.png) no-repeat center center / contain;
}
.movieLists dd {
	display: table;
	margin:15px auto 0;
	padding:0 40px 48px;
	text-align: center;
	line-height:36px;
	background-image: url(../images/books_deco_l.png),url(../images/books_deco_r.png);
	background-size:auto 36px;
	background-repeat: no-repeat;
	background-position: left top,right top;
	font-size:24px;
	color:#C80000;
}
#music h2 span {
	background-image: url(../images/n10.png),url(../images/n10j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 20px;
	width:212px;
	text-indent:-9874px;
}
.musicLists {
	width:654px;
}
.musicLists div {
	width:654px;
}
.musicLists dt {
	height: 368px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-bottom:24px;
}
.musicLists dt a {
	height:368px;
	display: block;
	position:relative;
}
.musicLists dd {
	display: table;
	margin:15px auto 41px;
	padding:0 40px 9px;
	text-align: center;
	line-height:36px;
	background-image: url(../images/books_deco_l.png),url(../images/books_deco_r.png);
	background-size:auto 36px;
	background-repeat: no-repeat;
	background-position: left center,right center;
	font-size:24px;
	color:#C80000;
}
#music h2 span {
	background-image: url(../images/n10.png),url(../images/n10j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 20px;
	width:212px;
	text-indent:-9874px;
}
#music #op h3 {
	height:96px;
	margin-bottom:72px;
	background:url(../images/music_h3op.png) no-repeat center center / contain;
}
#music #ed h3 {
	height:96px;
	margin-bottom:72px;
	background:url(../images/music_h3ed.png) no-repeat center center / contain;
}
#music p{
	text-align: center;
	font-size: 28px;
	font-weight: 700;
	line-height: 35px;
}
#music p span{
	color: #C80000;
	font-size: 24px;
}
#music p img {
	width: 650px;
	margin:0 auto;
	padding: 20px 0 30px 0;
}
#music ul{
	font-size: 24px;
	line-height: 40px;
	margin-bottom: 50px;

}
#music li:first-child{
	color: #C80000;
	font-weight: 700;
	font-size: 24px;
	margin-bottom: 10px;

}
#music li:nth-child(2){
	margin-bottom: 20px;
}
.musicLists {
	width:650px;
}
.musicLists dt a img {
	width: 650px;
}
.musicLists dd {
	display: table;
	text-align: center;
	line-height:35px;
	background-image: url(../images/books_deco_l.png),url(../images/books_deco_r.png);
	background-size:auto 24px;
	background-repeat: no-repeat;
	background-position: left center,right center;
	font-size:24px;
	color:#C80000;
	padding-bottom: 30px;
}
#music li span{
	font-weight: 700;
}
.musicDisc{
	padding-bottom: 90px;
}
.musicDisc dt img{
	width: 650px;
}
.musicDisc dd{
	margin-top: 20px;
	font-size: 24px;
}
.musicDisc dd span{
	font-weight: 700;
	color:#C80000;
}
#special h2 span {
	background-image: url(../images/n8.png),url(../images/n8j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 22px;
	width:288px;
	text-indent:-9874px;
}
#special h3{
	font-size: 24px;
	text-align: center;
    line-height: 2;
    padding-bottom: 16px;
    margin-bottom: 30px;
    border-bottom: 1px solid rgba(117,76,0,.4);
}
#special .twi{
	padding-bottom: 100px;
}
#special .twi ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#special .twi li{
	width: 550px;
}
.storysubNav {
	display:flex;
	justify-content: center;
	margin-bottom:96px;
	position:relative;
	flex-wrap: wrap;
}
.storysubNav:before {
	content:'';
	position:absolute;
	left:0;
	right:0;
	bottom:4px;
	height: 1px;
	background:rgba(117,76,0,.2);
	margin-bottom: -31px;
}
.storysubNav li {
	height:56px;
	margin:0 20px 20px;
}
.storysubNav li a{
	display: block;
	position: relative;
	height:56px;
	font-size:24px;
	text-decoration: none;
	font-weight: 700;
	letter-spacing: 0.1em;
	color:#000;
}
.storysubNav li a:hover,
.storysubNav li a.active {
	color:#C80000;
}
.storysubNav li a:before {
	content:'';
	position:absolute;
	left:calc(50% - 2px);
	bottom:3px;
	width:3px;
	height:3px;
	background:url(../images/red_point.png);
	transition: all 0.3s ease;
	opacity:0;
}
.storysubNav li a:after {
	background:url(../images/red_line.png) no-repeat right center;
	content:'';
	position:absolute;
	height:3px;
	width:0px;
	left:calc(50% + 2px);
	bottom:3px;
	transition:all 0.3s ease;
	opacity:0;
}
.storysubNav li a.active:before {
	left:0px;
	opacity:1;
}
.storysubNav li a.active:after {
	width:calc(100% - 4px);
	left:4px;
	opacity:1;
}
.storyhide{
	display: none;
}
.story_title span.ja{
	font-size: 32px!important;
}
.story_title span.en{
	font-size: 22px!important;
	color: #8C6927;
}
.story_title{
	margin-bottom: 36px;
}
.story_title h3{
    display: table;
    margin: 15px auto 0;
    padding: 0 36px 4px;
    text-align: center;
    line-height: 24px;
	font-weight: 600;
    background-image: url(../images/books_deco_l.png),url(../images/books_deco_r.png);
    background-size: auto 24px;
    background-repeat: no-repeat;
    background-position: left center,right center;
    line-height: 36px;
}
.story_Img{
	margin-bottom: 36px;
}
.storyOwl{
	width: 654px;
}
.storyOwl li{
	width: 654px;
}
.storyOwl li img{
	width: 100%;
}
.storyOwl__thumb{
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	width: 654px;
}
.storyOwl__thumb li{
	width: 212px;
}
.storyOwl__thumb li img{
	width: 212px;
}
.story_Img .owl-carousel .owl-item img{
	width: 100%!important;
}
.story_Img .owl-carousel .owl-item img {
	transform-style: initial;
	height: 100%;
	object-fit: cover;
}
.story_Img .owl-thumb-item img {
	width: 212px;
	height: auto;
}
.story_Img .owl-thumbs {
	display: table;
	width: 654px;
	text-align: center;
}
.story_Img .owl-thumb-item {
	display: table-cell;
	border: none;
	background: none;
	padding: 0;
	opacity: 1;
}
.story_Img .owl-thumb-item.active {
	opacity: .6;
}
.story_Img .owl-dots{
	display: none!important;
}
.story_Img .owl-controls{
	margin-top: 5px!important;
}
p.story_detail{
	letter-spacing: 0.1em;
	line-height: 40px;
}
.story_staff{
	margin-top: 28px;
}
.story_staff h4{
	font-size: 28px;
	font-weight: bold;
	color: #8C6927;
	padding-bottom: 0.5em;
}
.story_staff p{
	letter-spacing: 0.1em;
	line-height: 40px;
}

.bddvd__section {
	width: 654px;
	margin:0 auto 50px;
	border-bottom:1px solid #C80000;
	padding-bottom:60px;
}
.bddvd__section a,
.bddvd__section a:visited{
	color: #C80000;
}
#bddvd h2 span {
	background-image: url(../images/n11.png),url(../images/n11j_k.png);
	background-position: center 3px,center 70px;
	background-repeat: no-repeat;
	background-size:auto 70px,auto 20px;
	width:400px;
	text-indent:-9874px;
}
#bddvd h3 {
	color: #C80000;
    font-size: 28px;
    text-align: center;
    font-weight: bold;
    margin-bottom:40px;
}
#bddvd h3 span {
	color:#000;
	font-size: 22px;
}
.bddvd__mainimg {	
	margin-bottom:50px;
	text-align: center;
}
.bddvd__mainimg img{
	width: 600px;
}
.bddvdDisc {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width:654px;
	margin:0 auto;
	margin-bottom:40px;
}
.bddvdDisc dt {
	width:600px;
	margin:0 auto 40px;
}
.bddvdDisc dt img {
	max-width: 100%;
	height:auto;
}
.bddvdDisc dd {
	width:654px;
}
.bddvdDisc dd h4 {
	color: #C80000;
	font-weight: bold;
	font-size:28px;
	margin-bottom:15px;
}
.bddvdDisc dd p {
	line-height:2.3;
}
.bddvdDisc dd p img{
	width: 600px;
	margin: 0 0 10px 22px;
}
#bddvd h5 {
	font-weight: bold;
	font-size:26px;
}
.digiList,.digiList li {
	list-style-type: decimal;
	list-style-position: inside;
}
#bddvd ul {
	padding:15px 0;
	margin-bottom:15px;
}
#bddvd li {
	font-size:24px;
	line-height:1.8;
	padding:10px 0;
}
#bddvd li img{
	width: 500px;
	margin-top: 8px;
	margin-bottom: 10px;
}
.dList,.dList li {
	list-style-type: disc;
	list-style-position: inside;
}
.rentalh5 {
	margin-bottom:15px;
}
.rentalText {
	font-size:24px;
	line-height:2.2;
}.wp-pagenavi {
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
	height: 50px;
	width: 50px;
	margin-right: 5px;
	margin-left: 5px;
	background: #FFF;
	border: 2px solid #09142b;
	line-height: 50px;
	text-align: center;
	transition:all 0.3s ease;
	font-weight:600;
	font-size:20px;
	text-decoration:none;
	color:#000;
}
.wp-pagenavi .current {
	color: #FFF;
	background: #09142b;
}

/** PORTAL **/
#portal #topFixed,
#portal #menuBtn{
	display: none;
}
#portalhead{
	width: 100%;
	position: relative;
}
.portal_linkIMG{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
#portalhead #toAnime,
#portalhead #toCinema{
	width: 100%;
	min-width: 750px;
	height: 826px;
	position: relative;
}
#toAnime_IMG .portal_linkIMG{
	background: url(../images/portal/portal_toAnime_IMG_sp.jpg);
	background-size: 100%;
}
#toCinema_IMG .portal_linkIMG{
	background: url(../images/portal/portal_toCinema_IMG_sp.jpg);
	background-size: 100%;
}
#toAnime_btn{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 61px;
	background: rgba(169,101,196,.9);
}
#toCinema_btn{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 61px;
	background: rgba(255,0,0,.6);
}
#toAnime_btn:before,
#toCinema_btn:before{
	content: '';
	position: absolute;
	top:8.197%;
	right: 3.833%;
	bottom: 8.197%;
	width: 51px;
	height: 51px;
	background: url(../images/portal/portal_toBtn_circle.png);
	background-size: contain;
	background-position: center;
	animation: rotate 5s linear infinite;
}
#toAnime_btn:after,
#toCinema_btn:after{
	content: '';
	position: absolute;
	top:8.197%;
	right: 3.833%;
	bottom: 8.197%;
	width: 51px;
	height: 51px;
	background: url(../images/portal/portal_toBtn_arrow.png);
	background-size: 100%;
	background-position: center;
}
#toAnime_btn_txt{
	position: absolute;
	top: calc(50% - 16px);
	right: calc(50% - 126px);
	width: 252px;
	height: 32px;
	background: url(../images/portal/portal_toAnime_btn.png);
	background-size: 100%;
	background-position: center;
}
#toCinema_btn_txt{
	position: absolute;
	top: calc(50% - 16px);
	right: calc(50% - 103.5px);
	width: 207px;
	height: 32px;
	background: url(../images/portal/portal_toCinema_btn.png);
	background-size: 100%;
	background-position: center;
}
#twitter{
	padding: 60px 0;
	background: url(../images/portal/twitter_bg.png) repeat center center;
}
#twitter .contWrap{
	width: 654px;
	margin: 0 auto;
}
#twitter h2{
	width: 100%;
	height: 82px;
	background: url(../images/portal/twitter_h2.png) no-repeat left center;
	margin-bottom: 40px;
	position: relative;
}
#twitter h2 #toTwitter{
	position: absolute;
	width: 240px;
	height: 56px;
	top: 13px;
	right: 0px;
	margin: 0;
}
#twitter h2 #toTwitter a{
	line-height: 56px;
	font-size: 20px;
	height: 56px;
}
#twitter #twidget{
	width: 654px;
	padding: 0;
}
#twitter #twidgetin{
	height: 370px;
	margin-bottom: 0;
}
#p_footer{
	padding: 70px 0;
	background: url(../images/portal/p_footer_bg.jpg) no-repeat center center / cover;
}
#toShare{
	width: 100%;
	height: 32px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 74px auto;
}
#toShare a{
	display: block;
}
#share_twi{
	width: 90px;
	height: 70px;
	margin-right: 78px;
}
#share_twi a{
	width: 90px;
	height: 70px;
	background: url(../images/portal/share_twi.png);
	background-size: contain;
}
#share_fb{
	width: 75px;
	height: 78px;
	margin-right: 88px;
}
#share_fb a{
	width: 75px;
	height: 78px;
	background: url(../images/portal/share_fb.png);
	background-size: contain;
}
#share_li{
	width: 80px;
	height: 75px;
}
#share_li a{
	width: 80px;
	height: 75px;
	background: url(../images/portal/share_li.png);
	background-size: contain;
}

.fModal {
	position: fixed;
	z-index:30000;
	left:0;
	top:0;
	right:0;
	bottom:0;
	overflow: auto;
	display: none;
}
.fModal__inner {
	position: absolute;
	left:0;
	top:0;
	min-width: 100%;
	min-height:100%;
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background:rgba(255,255,255,0.8);
}
.fModal__inner--content {
	width:750px;
	height:937.5px;
	margin:60px 0;
	position: relative;
	z-index:50;
}
.fModal__inner--content img {
	width:100%;
	height:auto;
}
.fModal__closeArea {
	position: absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
}
.fModal .modalMovieClose {
	position: fixed;
}