@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@500;700&display=swap');
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}
::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,"Yu Gothic", YuGothic, sans-serif;
	font-weight: 500;
	font-size: 14px;
	color: #000;
	background-color: #fff;
}
a { color: #FFF; }
a:hover { text-decoration: none; }
.sp {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: 10001;
}
#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: 96px;
	width: 96px;
	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: 10px;
	width: 75px;
	position: absolute;
	margin: auto;
	right: 0;
    bottom: -26px;
	left: 0;
}
.loadWrap__text span{
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
	display: block;
	height: 10px;
	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{
    overflow: hidden;
}
body#index.active{
    overflow: auto;
}
body#index #topFixed{
    opacity: 0;
    -webkit-filter: blur(15px);
    -moz-filter: blur(15px);
    filter: blur(15px);
    transition: opacity .8s ease-in-out,
                filter .8s ease-in-out;
}
body#index #topFixed.active{
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    filter: blur(0px);
    opacity: 1;
}
body#index #fullWrap,
body#sub #fullWrap{
	opacity: 0;
}
body#index #fullWrap.active,
body#sub #fullWrap.active{
	opacity: 1;
}
#fullWrap {
	min-width:1200px;
	width:100%;
	overflow:hidden;
}
header nav li a.soon {
	opacity:0.3;
	pointer-events:none;
}
header {
	height:176px;
	position: absolute;
	left: 0px;
	top: 0px;
	padding: 0;
	width: 100%;
	min-width:1200px;
	z-index: 8000;
	pointer-events: none;
}
header h1 {
	width:196px;
	height:162px;
	position:absolute;
	left:50%;
	margin-left:-98px;
	top:0px;
	pointer-events: auto;
	background: url(../images/sub_h1bg.png) no-repeat center center;
}
header h1 a {
	display: block;
	width:160px;
	height: 74px;
	background: url(../images/logo.png) no-repeat center center / contain;
	margin:23px auto 0;
}
header nav {
	display: flex;
	width:1100px;
	justify-content: space-between;
	margin:0 auto;
	background:url(../images/sub_nav_line.png) no-repeat center 60px;
}
header nav ul {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	padding: 30px 0 0;
	width:430px;
}
header nav ul {
	padding-left:30px;
	padding-right:30px;
}
header nav li {
	height: 32px;
	pointer-events: auto;
	width:160px;
}
header nav li a {
	display: block;
	line-height: 2;
	height: 32px;
	padding: 0;
	text-decoration: none;
	position: relative;
}
header nav li a span {
	display: block;
	position: absolute;
	left:0;
	top:2px;
	bottom:-2px;
	right:0;
	background-repeat: no-repeat;
	background-position: center -5px;
	background-size:auto 110%;
	text-indent: -9898px;
	opacity:0;
	transition:all 0.5s ease;
}
header nav li a span:before {
	content:'';
	position:absolute;
	left:calc(50% - 2px);
	bottom:1px;
	width:3px;
	height:3px;
	background:url(../images/red_point.png);
	transition: all 0.3s ease;
}
header nav li a span:after {
	background:url(../images/red_line.png) no-repeat right center;
	content:'';
	position:absolute;
	height:3px;
	width:0px;
	left:calc(50% + 2px);
	bottom:1px;
	transition:all 0.3s ease;
}
header nav #n0 {
	width:54px;
}
header nav #n1 {
	width:94px;
}
header nav #n2 {
	width:76px;
}
header nav #n3 {
	width:110px;
}
header nav #n4 {
	width:124px;
}
header nav #n5 {
	width:156px;
}
header nav #n6 {
	width:76px;
}
header nav #n7 {
	width:106px;
}
header nav #n8 {
	width:98px;
}
header nav #n9 {
	width:78px;
}
header nav #n10 {
	width:76px;
}
header nav #n11 {
	width:125px;
}

header nav #n0 a:hover span:before,
header nav #n0 a.active span:before {
	left:4px;
}
header nav #n0 a:hover span:after,
header nav #n0 a.active span:after {
	width:calc(100% - 10px);
	left:4px;
}
header nav #n1 a:hover span:before,
header nav #n1 a.active span:before {
	left:9px;
}
header nav #n1 a:hover span:after,
header nav #n1 a.active span:after {
	width:calc(100% - 22px);
	left:13px;
}
header nav #n2 a:hover span:before,
header nav #n2 a.active span:before {
	left:21px;
}
header nav #n2 a:hover span:after,
header nav #n2 a.active span:after {
	width:calc(100% - 44px);
	left:25px;
}
header nav #n3 a:hover span:before,
header nav #n3 a.active span:before {
	left:17px;
}
header nav #n3 a:hover span:after,
header nav #n3 a.active span:after {
	width:calc(100% - 38px);
	left:21px;
}
header nav #n4 a:hover span:before,
header nav #n4 a.active span:before {
	left:15px;
}
header nav #n4 a:hover span:after,
header nav #n4 a.active span:after {
	width:calc(100% - 34px);
	left:19px;
}
header nav #n5 a:hover span:before,
header nav #n5 a.active span:before {
	left:13px;
}
header nav #n5 a:hover span:after,
header nav #n5 a.active span:after {
	width:calc(100% - 30px);
	left:17px;
}
header nav #n6 a:hover span:before,
header nav #n6 a.active span:before {
	left:21px;
}
header nav #n6 a:hover span:after,
header nav #n6 a.active span:after {
	width:calc(100% - 44px);
	left:25px;
}
header nav #n7 a:hover span:before,
header nav #n7 a.active span:before {
	left:18px;
}
header nav #n7 a:hover span:after,
header nav #n7 a.active span:after {
	width:calc(100% - 40px);
	left:22px;
}
header nav #n8 a:hover span:before,
header nav #n8 a.active span:before {
	left:8px;
}
header nav #n8 a:hover span:after,
header nav #n8 a.active span:after {
	width:calc(100% - 18px);
	left:12px;
}
header nav #n9 a:hover span:before,
header nav #n9 a.active span:before {
	left:8px;
}
header nav #n9 a:hover span:after,
header nav #n9 a.active span:after {
	width:calc(100% - 18px);
	left:12px;
}
header nav #n10 a:hover span:before,
header nav #n10 a.active span:before {
	left:21px;
}
header nav #n10 a:hover span:after,
header nav #n10 a.active span:after {
	width:calc(100% - 44px);
	left:25px;
}
header nav #n11 a:hover span:before,
header nav #n11 a.active span:before {
	left:6px;
}
header nav #n11 a:hover span:after,
header nav #n11 a.active span:after {
	width:calc(100% - 13px);
	left:9px;
}

header nav li a strong {
	display: block;
	position: absolute;
	left:0;
	top:0;
	bottom:0;
	right:0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size:auto 21px;
	text-indent: -9898px;
	transition:all 0.5s ease;
}
header nav li a:hover span,
header nav li a.active span {
	opacity: 1;
}
header nav li a:hover strong,
header nav li a.active strong {
	opacity: 0;
}
#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);
}
#top {
	padding:0;
	overflow: hidden;
}
.mainBg {
	position:relative;
	background:url(../images/main_bg.jpg) repeat center top / 100% auto;
}
.mainBg.s0 {
	background-image:url(../images/mainbg_s0.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,100% auto;
}
.mainBg.s1 {
	background-image:url(../images/mainbg_s1.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,100% auto;
}
.mainBg.s2 {
	background-image:url(../images/mainbg_s2.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,100% auto;
}
.mainBg.s3 {
	background-image:url(../images/mainbg_s3.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,100% auto;
}
.mainBg.s4 {
	background-image:url(../images/mainbg_s4.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,100% auto;
}
.mainBg.s5 {
	background-image:url(../images/mainbg_s5.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,100% auto;
}
.mainBg.s6 {
	background-image:url(../images/mainbg_s6.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,100% auto;
}
.mainBg.s7 {
	background-image:url(../images/mainbg_s7.png),url(../images/main_bg.jpg);
	background-repeat: no-repeat,repeat;
	background-position: left bottom,center top;
	background-size:auto,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.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.png);
	background-repeat: no-repeat;
	background-position: left bottom,right bottom,center bottom;
	background-size: auto,auto,100% auto;
}
.mv {
	width:100%;
/*    overflow-y: hidden;*/
	padding-top:100%;
	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: 4;
}
.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:160px;
	left:5.4166%;
	width:10.9166%;
	bottom:0;
	pointer-events: none;
	background: url(../images/catch.png) no-repeat center top / contain;
}
#topFixed {
	position: fixed;
	height: 100%;
	width: 100%;
	left: 0px;
	top: 0px;
	z-index: 8001;
	min-width:1200px;
	pointer-events: none;
}
#toTop {
	position:absolute;
	left:30px;
	bottom:30px;
	width: 210px;
	height:100px;
	pointer-events:auto;
}
#toTop a {
	display: block;
	height:100px;
	position:relative;
	background: url(../images/scroll_text_w.png) no-repeat 100px center;
}
@keyframes rotate {
	from {
		transform:rotate(0deg);
	}
	to {
		transform:rotate(360deg);
	}
}
@keyframes Yrotate {
	from {
		transform:rotateY(0deg);
	}
	to {
		transform:rotateY(360deg);
	}
}
#toTop a:before {
	content:'';
	position:absolute;
	left:3px;
	top:3px;
	width:94px;
	height:94px;
	background:url(../images/scroll_rotate_w.png) no-repeat center center;
	animation: rotate 10s linear infinite;
}
#toTop a:after {
	content:'';
	position:absolute;
	left:32px;
	top:39px;
	width:34px;
	height:24px;
	background: url(../images/scroll_arrow_w.png) no-repeat center center;
}
#tShare {
	position: absolute;
	top:50%;
	margin-top:-100px;
	width:50px;
	right:15px;
	pointer-events: auto
}
#tShare dt,
#tShare dd {
	width:50px;
	height:50px;
}
#tShare a {
	display: block;
	height:50px;
	transition: all .3s ease;
}
#tShare a:hover {
	transform:translateX(5px);
}
#tShare dt {
	background: url(../images/share_text.png) no-repeat center top;
}
#index #tShare dt {
	background: url(../images/share_text_w.png) no-repeat center top;
	height: 63px;
}
.tw a {
	background:url(../images/sns_tw.svg) no-repeat center center;
}
.fb a {
	background:url(../images/sns_fb.svg) no-repeat center center;
}
.ln a {
	background:url(../images/sns_line.svg) no-repeat center center;
}
#topMovie {
	width:240px;
	height:136px;
	display: block;
	position: absolute;
	right:0;
	bottom:0;
	background-repeat: no-repeat;
	background-size: cover;
	pointer-events: auto;
}
#topMovie a {
	height:136px;
	display: block;
	background:url(../images/top_movie_fr.png) no-repeat center center / contain;
	position:relative;
}

#topMovie 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;
}
#topMovie a:hover:before {
	animation:Yrotate 2s ease infinite;
}
.contWrap {
	width:1040px;
	margin: 0 auto;
}
#update {
	padding:80px 0;
	background:url(../images/update_bg.png) repeat center center;
}
#update h2 {
	height:80px;
	background: url(../images/update_h2.png) no-repeat center center / contain;
	margin-bottom:40px;
}
/*#startDate {
	position:absolute;
	width:458px;
	right:20px;
	top:150px;
	height:90%;
	pointer-events: none;
	background: url(../images/startdate.png) no-repeat center top / contain;
}*/
.eiga_bnr {
	width:640px;
	height:192px;
	position: absolute;
	bottom:0;
	left:50%;
	margin-left:-320px;
	z-index:500;
	pointer-events: auto
}
.eiga_bnr a:hover img {
	opacity:0.9;
	transition: all 0.3s ease;
}
#updatein {
	width:100%;
	display: flex;
	justify-content: space-between;
	font-size:16px;
}
#updates {
	width:480px;
}
#updates dl {
	position: relative;
}
#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;
	height:76px;
}
#updates dd a {
	position: absolute;
	left:0;
	right:0;
	top:-32px;
	display: block;
	bottom:0;
	padding-top:32px;

}
#updates dd:last-of-type {
	margin-bottom:0;
}
#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;
}
#update a {
	text-decoration: none;
	transition: all 0.3s ease;
}
#update a:hover {
	color:#e7ca3c;
}
#twidget {
	padding: 24px;
    width: 480px;
	border:1px solid rgba(243,152,0,.4);
}
#twidgetin {
	height:248px;
	background:#FFF;
	margin-bottom: 24px;
	overflow: hidden;
}
#toTwitter {
	width:200px;
	height:40px;
	margin:0 auto;
}
#toTwitter a {
	line-height: 40px;
	text-align: center;
	/*vertical-align: middle;*/
	display: block;
	height: 40px;
	text-decoration: none;
	transition: all 0.6s ease;
	background:url(../images/btn_totwitter.png) no-repeat center center / contain;
	font-size:14px;
	letter-spacing: 0.2em;
}
#toTwitter a:hover {
	transform: translateY(-5px);
	transition: all 0.3s ease;
}
#toTwitter a img {
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle
}
footer {
	padding:80px;
	background:url(../images/footer_bg.jpg) no-repeat center center / cover;
}
#footerBanner {
	width:1064px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto
}
#footerBanner li {
	width:242px;
	margin:0 12px 24px;
}
#footerBanner li a,
#footerBanner li a img {
	display: block;
	width:242px;
	height:auto;
}
#footerBanner li a {
	transition:all 0.3s ease;
}
#footerBanner li a:hover {
	opacity:0.7;
}
.toContact {
	padding-top:12px;
	text-align: center;
	padding-bottom:28px;
}
.toContact a:after {
	content:'';
	display: inline-block;
	vertical-align: middle;
	width:12px;
	height:12px;
	background: url(../images/contact_arrow.png) no-repeat center center / contain;
	margin-left:8px;
}
.toContact a {
	text-decoration: none;
	font-size:12px;
	transition:all 0.3s ease;
}
.toContact a:hover {
	color:#e7ca3c;
}
.toContact a:hover:after {
	background: url(../images/contact_arrow_y.png) no-repeat center center / contain;
}
.footerCaution {
	text-align: center;
	margin-bottom:12px;
	color:#AAA;
	font-size: 12px;
}
.copyright {
	text-align: center;
	color:#AAA;
	font-size: 12px;
}
#sub #topFixed:before {
	content: '';
	position:absolute;
	left:0;
	right:0;
	height:500px;
	pointer-events: none;
	content:'';
	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;
}

#sub #main {
	min-height:100vh;
	padding-top:167px;
	position:relative;
	z-index: 5;
	padding-bottom:320px;
}
#sub #main .contWrap {
	position:relative;
	z-index:45;
}
#sub #main h2 {
	height:80px;
	display: flex;
	justify-content: center;
	margin-bottom:72px;
	position: relative;
	z-index:5;
}
#sub #main h2 span {
	margin:0 27px;
	height:80px;
}
#introduction:before {
	content:'';
	position:absolute;
	left:50%;
	top:520px;
	margin-left:100px;
	width:525px;
	height:526px;
	background: url(../images/introduction_img.png) no-repeat center center;
}
#introduction h2 span {
	background-image: url(../images/n2.png),url(../images/n2j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:166px;
	text-indent:-9874px;
}
#sub #main h2:before,
#sub #main h2:after {
	content:'';
	height:80px;
	width:80px;
}
#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:16px;
	line-height: 2em;
	margin-bottom:2em;
	letter-spacing: 0.1em;
	text-align: center;
	z-index:5;
	position: relative;
}
.introductionCatch {
	width:893px;
	height:149px;
	background:url(../images/introduction_catch.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;
	left:50%;
	margin-left:263px;
	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 p a:hover {
	transform: translateX(5px);
}
#subpageChara:before {
	content:'';
	position: absolute;
	left:50%;
	margin-left:-444px;
	width:444px;
	top:0;
	bottom:0;
	z-index:50;
	pointer-events: none;
}
#subpageChara.c1:before {
	background:url(../images/sc1_name.png) no-repeat left center;
}
#subpageChara.c1:after {
	content:'';
	position:absolute;
	left:50%;
	bottom:0;
	margin-left:5px;
	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;
	left:50%;
	bottom:0;
	margin-left:-200px;
	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;
	left:50%;
	bottom:0;
	margin-left:-43px;
	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;
	left:50%;
	bottom:0;
	margin-left:-122px;
	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;
	left:50%;
	bottom:0;
	margin-left:-175px;
	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;
	left:50%;
	bottom:0;
	margin-left:-198px;
	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;
	left:50%;
	bottom:0;
	margin-left:-20px;
	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;
	left:50%;
	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;
	left:50%;
	bottom:0;
	margin-left:-133px;
	width:662px;
	height:528px;
	background:url(../images/sc9_img.png) no-repeat center bottom;
	pointer-events: none;
}
.bttop {
	position:absolute;
	bottom:80px;
	right:40px;
	width:170px;
	height:80px;
	z-index:500;
}
.bttop a {
	height:80px;
	display: block;
	position:relative;
	background: url(../images/to_top.png) no-repeat left center;
}
.bttop a:before {
	content:'';
	position:absolute;
	right:0px;
	top:0px;
	width:80px;
	height:80px;
	background:url(../images/scroll_rotate.png) no-repeat center center;
}
.bttop a:hover:before {
	animation: rotate 10s linear infinite;
}
.bttop a:after {
	content:'';
	position:absolute;
	right:28px;
	top:33px;
	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 top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:169px;
	text-indent:-9874px;
}
.subNav {
	display:flex;
	justify-content: center;
	margin-bottom:80px;
	position: relative;
}
.subNav:before {
	content:'';
	position:absolute;
	left:0;
	right:0;
	bottom:4px;
	height: 1px;
	background:rgba(117,76,0,.2);
}
.subNav li {
	height:32px;
	margin:0 20px;
	position:relative;
}
.subNav li a{
	display: block;
	position: relative;
	height:32px;
	font-size:14px;
	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:hover:before,
.subNav li a.active:before {
	left:0px;
	opacity:1;
}
.subNav li a:hover:after,
.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 80px;
}
#tv h3 {
	height:80px;
	margin-bottom:80px;
	background:url(../images/onair_h3tv.png) no-repeat center center / contain;
}
#streaming {
	display: none;
}
#streaming h3 {
	height:80px;
	margin-bottom:80px;
	background:url(../images/onair_h3streaming_2.png) no-repeat center center / contain;
}
#streaming h5 {
	height:80px;
	margin-bottom:80px;
	background:url(../images/onair_h3streaming.png) no-repeat center center / contain;
}
.onairList {
	width:1040px;
	margin:0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.onairList li {
	width:500px;
	text-align: center;
	padding-bottom:70px;
}
.onairList li h4,
.onairList li h6 {
	font-size:20px;
	font-weight: 700;
	color:#C80000;
	line-height:32px;
	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:16px;
	line-height:32px;
}
.onairList li .caution {
	font-size:14px;
	line-height:32px;
}
#staffcast h2 span {
	background-image: url(../images/n5.png),url(../images/n5j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:287px;
	text-indent:-9874px;
}

#staff h3 {
	height:80px;
	margin-bottom:80px;
	background:url(../images/sc_h3staff.png) no-repeat center center / contain;
}
#cast {
	display: none;
}
#cast h3 {
	height:80px;
	margin-bottom:80px;
	background:url(../images/sc_h3cast.png) no-repeat center center / contain;
}
.scLists {
	display: flex;
	justify-content: center;
}
.scLists ul {
	width:320px;
	margin:0 20px;
}
.scLists li {
	width:100%;
		display: flex;
}
.scLists strong {
	width:55%;
	display: block;
	padding-right:10px;
	line-height:40px;
	margin-bottom: 10px;
	font-weight: 700;
	color:#C80000;
	text-align: right;
}
#staff .scLists strong {
	width:50%;
}
.scLists span {
	display: block;
	font-weight:700;
	font-size:20px;
	width:45%;
	padding-left:10px;
	line-height: 40px;
	margin-bottom:20px;
}
#staff .scLists ul {
	width:960px;
	margin:0 20px;
}
.scLists span small {
	font-size:16px;
}
.bookLists {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-left:-20px;
	margin-right:-20px;
	width:1080px;
}
.bookLists li {
	width:140px;
	margin:0 20px 40px;
}
.bookLists li a {
	display: block;
	height:100%;
	text-decoration: none;
}
.bookLists li a:hover img {
	transform:scale(1.05);
}
.bookLists li a img {
	width:140px;
	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:24px;
	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:16px;
}
.bookss {
	display: none;
}
#cat1 {
	display: block;
}
#books h2 span {
	background-image: url(../images/n6.png),url(../images/n6j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:166px;
	text-indent:-9874px;
}
#news h2 span {
	background-image: url(../images/n1.png),url(../images/n1j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:144px;
	text-indent:-9874px;
}
#articleLists {
	width:880px;
	margin:0 auto;
}
#articleLists li {
	margin-bottom:40px;
}
#articleLists li a {
	display: flex;
	width:100%;
	height:136px;
	justify-content: space-between;
	font-size:16px;
	text-decoration: none;
}
#articleLists li a .thumb {
	width:240px;
	height:136px;
	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 {
	width:616px;
	height:136px;
	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;
	margin-bottom:6px;
}
#articleLists li a .articleListTexts .title {
	line-height:1.9;
	color:#000;
	transition: all 0.3s ease;
}
#articleLists li a:hover .articleListTexts .title {
	text-decoration: none;
	color:#C80000;
}
#news article {
	width:880px;
	margin:0 auto 80px;
}
article time {
	color:#C80000;
	display: block;
	margin-bottom:14px;
	font-size:16px;
}
article h3 {
	font-size:20px;
	line-height: 2;
	padding-bottom:16px;
	margin-bottom:30px;
	border-bottom:1px solid rgba(117,76,0,.4);
}
.articlein p {
	font-size:16px;
	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:10px 30px;
}
.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:10px 30px;
	display: flex;
	flex-wrap:wrap;
	font-size:16px;
	margin-bottom:2em;
}
.articlein .spec dt {
	padding-right:30px;
	line-height:32px;
	color:#C80000;
	text-align: right;
	width:120px;
}
.articlein .spec dd {
	padding-right:30px;
	line-height:32px;
	width:calc(100% - 120px);
}
.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:16px;
	text-align: center;
}
.btindex a:hover {
	background:#C80000;
	color:#FFF;
}
#goods h2 span {
	background-image: url(../images/n7.png),url(../images/n7j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:167px;
	text-indent:-9874px;
}
#goodsLists {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
#goodsLists li {
	width:230px;
	margin-right:40px;
	margin-bottom:40px;
	position:relative;
}
#goodsLists li:nth-child(4n) {
	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 p img{
	border: #312000 1px solid;
	width: 230px;
}
#goodsLists li a {
	display: block;
	height:100%;
	text-decoration: none;
}
#goodsLists li a{
	transition: all 0.3s ease;
}
#goodsLists li a .thumb {
	height:230px;
	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:hover,
#goodsLists li a:hover .thumb {
	transform: scale(1.05);
}
#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:16px;
	line-height:2;
	color:#C80000;
	padding:1em 0;
}
#goodsPageNav{
	width: 100%;
	height: auto;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-top: 24px;
}
#goodsPageNav li{
	height: 32px;
	margin: 0 15px;
	position: relative;
}
#goodsPageNav li a{
	display: block;
	position: relative;
	height: 32px;
	font-size: 14px;
	padding: 0 5px;
	text-decoration: none;
	font-weight: 700;
	color: #000;
}
#goodsPageNav li a:hover,
#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:hover:before,
#goodsPageNav li a.active:before {
	left:0px;
	opacity:1;
}
#goodsPageNav li a:hover:after,
#goodsPageNav li a.active:after {
	width:calc(100% - 4px);
	left:4px;
	opacity:1;
}
.goodss {
	display: none;
}
.goodsPic img{
	border: #312000 1px solid;
}
#character h2 span {
	background-image: url(../images/n4.png),url(../images/n4j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:274px;
	text-indent:-9874px;
}
#mainCharacters {
	display: flex;
	height:100vh;
	min-height:640px;
	margin-bottom:80px;
}
#mainCharacters.fixed {
	position:fixed;
	z-index:500000;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
#mainCharacters li {
	cursor:pointer;
	height:100vh;
	overflow:hidden;
	position:relative;
	flex:1;
	min-height:640px;
	transition:all 0.3s ease;
	background:#000;
}
#mainCharacters li:not(.active):hover {
	flex:1.5;
}
#mainCharacters li.hid {
	flex:0;
	transition:all 0.4s ease;
}
#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:10px;
	right:10px;
	top:5px;
	bottom:5px;
	transition:all 0.3s ease;
}
#mainCharacters li:hover .cMimg:before,
#mainCharacters li:hover .cMimg:after,
#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: center 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: center 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: center 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: center 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: center 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: center 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: center 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: center 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: center bottom,center top;
	background-repeat: no-repeat;
}
#subCharacters {
	width:1080px;
	margin:0 -20px;
	display:flex;
	flex-wrap: wrap;
	justify-content: center;

}
#subCharacters li {
	width:230px;
	margin:0 20px 40px;
}
#subCharacters li a {
	display: block;
	height:100%;
	text-decoration: none;
}
#subCharacters li a .thumb {
	height:230px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	transition:all 0.3s ease;
}
#subCharacters li a:hover .thumb {
	transform:scale(1.05);
}
#subCharacters li a .name {
	display: table;
	margin:15px auto 0;
	padding:0 26px;
	text-align: center;
	line-height:24px;
	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:16px;
	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:#000;
	overflow-y: scroll;
	overflow-x:auto;
	z-index:-1;
}
#characterModal.on {
	z-index:50000;
}
#characterModal:after {
	content:'';
	position:absolute;
	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%;
	height:100%;
	min-width: 1200px;
	min-height:640px;
	background-position:center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.characterModalin:before {
	content:'';
	position: absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background:url(../images/cm_flame.png) no-repeat center center / 100% 100%;
}
.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/cm_bg_mark_tl.png),url(../images/cm_bg_mark_tr.png);
	background-position:left top,right top;
	background-repeat:no-repeat;
}
.characterModalFoot {
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	height:130px;
	background-image:url(../images/cm_bg_mark_bl.png),url(../images/cm_bg_mark_br.png);
	background-position:left bottom,right bottom;
	background-repeat:no-repeat;
}
.modalClose {
	width:148px;
	height:80px;
	position:absolute;
	right:40px;
	top:40px;
}
.modalClose a {
	display: block;
	height:80px;
	position:relative;
	background:url(../images/cm_close_text.png) no-repeat left center;
}
.modalClose a:before {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/cm_rotate.png) no-repeat center center;
}
.modalClose a:hover:before {
	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.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:14px;
}
.cmNav .prev a:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/cm_rotate.png) no-repeat center center;
}
.cmNav .prev a:hover:before {
	animation: rotate 10s linear infinite;
}
.cmNav .prev a:after {
	content:'';
	position:absolute;
	left: 27px;
    top: 33px;
	width:24px;
	height:12px;
	background:url(../images/cm_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:14px;
}
.cmNav .next a:before {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/cm_rotate.png) no-repeat center center;
}
.cmNav .next a:hover:before {
	animation: rotate 10s linear infinite;
}
.cmNav .next a:after {
	content:'';
	position:absolute;
	right: 27px;
    top: 33px;
	width:24px;
	height:12px;
	background:url(../images/cm_arrow.png) no-repeat center center;
	transform:rotate(-90deg);
}
.characterSpec {
	min-width:440px;
	padding:40px 40px 40px 80px;
	background-color:rgba(0,0,0,.4);
	background-image: url(../images/cm_spec_deco_t.png),url(../images/cm_spec_deco_b.png),url(../images/cm_spec_deco_c.png);
	background-repeat: no-repeat;
	background-position: 36px 40px, 36px center,left 36px bottom 40px;
	position:absolute;
	top:50%;
	margin-top:-156px;
	color:#FFF;
}
.characterSpec:before {
	content:'';
	position:absolute;
	left:40px;
	top:46px;
	bottom:46px;
	width:1px;
	background:#FFF;
}
.characterSpec.r {
	right:0;
}
.characterSpec.l {
	left:0;
}
.characterSpec h3 {
	font-size:40px;
	font-weight: 900;
	margin-bottom:15px;
	white-space: nowrap;
}
.characterSpec .characterVoice {
	font-size:16px;
	margin-bottom:1.5em;
}
.characterSpec .characterText {
	font-size:16px;
	line-height: 2;
	word-break: break-all;
	width:440px;
}
#topBnr {
	background:url(../images/footer_bg.jpg) no-repeat center center / cover;
	padding:40px;
}
#topBnr ul {
	display: flex;
	flex-wrap:wrap;
	width:1120px;
	margin:0 auto -30px;
	justify-content: center;
}
#topBnr li {
	width:320px;
	margin:0 20px 30px;
}
#topBnr li a,
#topBnr li a img {
	display: block;
	width:320px;
	height:auto;
}
#topBnr li a {
	transition:all 0.3s ease;
}
#topBnr li a:hover {
	opacity:0.7;
}
/*.sLoading {
	background:#FFF;
	position:fixed;
	left:0;
	right:0;
	top:0;
	bottom:0;
	z-index:90000;
}*/
#modalMovie {
	position: fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index: 20000;
	background:#000;
	overflow: auto;
	display: none;
}
.modalMoviein {
	position: absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	min-height: 620px;
	min-width: 1200px;
}
.modalMoviein iframe {
	width:100%;
	height:100%;
	display: block;
}
.modalMovieClose {
	width:148px;
	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.png) no-repeat left center;
}
.modalMovieClose a:before {
	content:'';
	position:absolute;
	right:0;
	top:0;
	width:80px;
	height:80px;
	background:url(../images/cm_rotate.png) no-repeat center center;
}
.modalMovieClose a:hover:before {
	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.png) no-repeat center center;
}
#movie h2 span {
	background-image: url(../images/n9.png),url(../images/n9j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 13px;
	width:139px;
	text-indent:-9874px;
}
.movieLists {
	width:1080px;
	margin:0 -20px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.movieLists div {
	width:500px;
	margin:0 20px;
}
.movieLists dt {
	height: 280px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-bottom:24px;
}
.movieLists dt a {
	height:280px;
	display: block;
	background: url(../images/movie_fr.png) no-repeat center center;
	position:relative;
}
.movieLists dt a:before {
	content:'';
	width:80px;
	height:80px;
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-40px;
	margin-top:-40px;
	background: url(../images/movie_ar.png) no-repeat center center / contain;
}
.movieLists dt a:hover:before {
	animation:Yrotate 2s ease infinite;
}
.movieLists dd {
	display: table;
	margin:15px auto 0;
	padding:0 26px 40px;
	text-align: center;
	line-height:24px;
	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:16px;
	color:#C80000;
}
#music h2 span {
	background-image: url(../images/n10.png),url(../images/n10j_k.png);
	background-position: center top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 13px;
	width:139px;
	text-indent:-9874px;
}
#music #op h3 {
	height:63px;
	margin-bottom:80px;
	background:url(../images/music_h3op.png) no-repeat center center / contain;
}
#music #ed h3 {
	height:63px;
	margin-bottom:80px;
	background:url(../images/music_h3ed.png) no-repeat center center / contain;
}
#music p{
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	line-height: 35px;
}
#music p span{
	color: #C80000;
	font-size: 22px;
}
#music p img {
	width: 600px;
	margin:0 auto;
	padding: 20px 0 30px 0;
}
#music ul{
	font-size: 16px;
	line-height: 30px;
	margin-bottom: 50px;

}
#music li:first-child{
	color: #C80000;
	font-weight: 700;
	font-size: 20px;
	margin-bottom: 10px;

}
#music li:nth-child(2){
	margin-bottom: 20px;
}
.musicLists {
	width:1080px;
	margin:0 -20px;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.musicLists div {
	width:500px;
	margin:0 20px;
}
.musicLists dt {
	height: 280px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	margin-bottom:24px;
}
.musicLists dt a {
	height:280px;
	display: block;
	position:relative;
	background-size: cover;
	transition:all 0.3s ease;
}
.musicLists dt a img {
	width: 500px;
}
.musicLists dt a:hover {
	transform:scale(1.05);
}
.musicLists dd {
	display: table;
	margin:15px auto 0;
	padding:0 26px 4px;
	text-align: center;
	line-height:24px;
	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:16px;
	color:#C80000;
}
#music li span{
	font-weight: 700;
}
.musicDisc{
	padding-bottom: 40px;
}
.musicDisc dt{
	float: left;
}
.musicDisc dt img{
	width: 350px;
}
.musicDisc dd{
	float: left;
	margin-left: 30px;
	font-size: 16px;
}
.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 top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 14px;
	width:201px;
	text-indent:-9874px;
}
#special h3{
	font-size: 20px;
	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{
	margin-right: 10px;
	margin-left: 10px;
	width: 300px;
}
.storysubNav {
	display:flex;
	justify-content: center;
	margin-bottom:80px;
	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:32px;
	margin:0 20px 10px;
	position:relative;
}
.storysubNav li a{
	display: block;
	position: relative;
	height:32px;
	font-size:14px;
	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:hover:before,
.storysubNav li a.active:before {
	left:0px;
	opacity:1;
}
.storysubNav li a:hover:after,
.storysubNav li a.active:after {
	width:calc(100% - 4px);
	left:4px;
	opacity:1;
}
.storyhide{
	display: none;
}
.storyWrap{
	position: relative;
}
.story_title{
	position: relative;
}

.story_title span.ja{
	font-size: 24px!important;
}
.story_title span.en{
	font-size: 18px!important;
	color: #8C6927;
}

.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: 32px;
}

.story_Img{
	padding-top: 40px;
	padding-bottom: 40px;
}
.storyOwl{
	width: 1020px;
}
.storyOwl li{
	width: 1020px;
}
.storyOwl li img{
	width: 100%;
}
.storyOwl__thumb{
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	width: 1040px;
}
.storyOwl__thumb li{
	width: 170px;
}
.storyOwl__thumb li img{
	width: 170px;
}
.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: 170px;
	height: auto;
}

.story_Img .owl-thumbs {
	display: table;
	width: 1020px;
	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-thumb-item{
	cursor: pointer;
}
.story_Img .owl-dots{
	display: none!important;
}
p.story_detail{
	width: 1020px;
	padding:0 1em 1em;
	font-size: 16px;
	line-height: 28px;
}
.story_staff{
	margin-top: 2em;
}
.story_staff h4{
	font-size: 24px;
	font-weight: bold;
	color: #8C6927;
	padding:0 0.5em;
	padding-bottom: 0.5em;
}
.story_staff p{
	width: 1020px;
	font-size: 16px;
	line-height: 28px;
	padding:0 1em;
	letter-spacing: 0.03125em;
}
.bddvd__section {
	width: 800px;
	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 top,center 50px;
	background-repeat: no-repeat;
	background-size:auto 48px,auto 13px;
	width:290px;
	text-indent:-9874px;
}
#bddvd h3 {
	color: #C80000;
    font-size: 22px;
    text-align: center;
    font-weight: bold;
    margin-bottom:40px;
}
#bddvd h3 span {
	color:#000;
	font-size: 16px;
}
.bddvd__mainimg {
	margin-bottom:50px;
	text-align: center;
}
.bddvdDisc {
	display: flex;
	justify-content: space-between;
	width:800px;
	margin:0 auto;
	margin-bottom:40px;
}
.bddvdDisc dt {
	width:300px;
}
.bddvdDisc dt img {
	max-width: 100%;
	height:auto;
}
.bddvdDisc dd {
	width:460px;
}
.bddvdDisc dd h4 {
	color: #C80000;
	font-weight: bold;
	font-size:18px;
	margin-bottom:15px;
}
.bddvdDisc dd p {
	line-height:2.3;
}
.bddvdDisc dd img{
	width: 460px;
	margin-bottom: 15px;
}
#bddvd h5 {
	font-weight: bold;
	font-size:18px;
}
.digiList,.digiList li {
	list-style-type: decimal;
	list-style-position: inside;
}
#bddvd ul {
	padding:15px 0;
	margin-bottom:15px;
}
#bddvd li {
	font-size:16px;
	line-height:1.6;
	padding:5px 0;
}
#bddvd li img{
	width: 300px;
	margin-top: 8px;
	margin-bottom: 10px;
}
.dList,.dList li {
	list-style-type: disc;
	list-style-position: inside;
}
.rentalh5 {
	margin-bottom:15px;
}
.rentalText {
	font-size:16px;
	line-height:2.2;
}
.wp-pagenavi {
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
}
.wp-pagenavi a,
.wp-pagenavi span {
	display: inline-block;
    text-decoration: none;
	height: 36px;
	width: 36px;
	margin-right: 5px;
	margin-left: 5px;
	background: #FFF;
	border: 2px solid #09142b;
	line-height: 33px;
	text-align: center;
	transition:all 0.3s ease;
	font-weight:600;
	color:#000;
}
.wp-pagenavi .current {
	color: #FFF;
	background: #09142b;
}
.wp-pagenavi a:hover { background: #09142b; color: #fff; }

/** PORTAL **/
body#portal{
    overflow: hidden;
}
body#portal.active{
    overflow: auto;
}
#portal #topFixed{
	display: none;
}
#portalhead{
	width: 100%;
	min-width: 1200px;
	/*padding-top: 66.67%;*/
	position: relative;
	display: flex;
	flex-wrap: wrap;
	pointer-events: none;
}
#portalhead.active{
	pointer-events: auto;
}
#portalhead #toAnime{
	width: 50%;
	min-width: 600px;
	min-height: 800px;
	padding-top: 66.67%;
	background: #a965c4;
	position: relative;
	overflow: hidden;
}
#portalhead #toCinema{
	width: 50%;
	min-width: 600px;
	min-height: 800px;
	padding-top: 66.67%;
	background: #ff0000;
	position: relative;
	overflow: hidden;
}
.portal_linkIMG{
	display: block;
	height: 100%;
	width: 100%;
	transform: scale(1);
	transition: all .3s ease-in-out;
}
#toAnime #toAnime_IMG{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: block;
	width: 100%;
	min-width: 600px;
	height: 92.375%;
	background: #000;
	overflow: hidden;
	background-size: 100%;
}
#toAnime #toAnime_IMG .portal_linkIMG{
	background: url(../images/portal/portal_toAnime_IMG.jpg);
	background-size: 100%;

}
#toAnime:hover #toAnime_IMG .portal_linkIMG{
	transform: scale(1.05);
	opacity: 0.7;
}
#toAnime #toAnime_btn{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 600px;
	height: 7.625%;
}
#toAnime #toAnime_btn:before{
	content: '';
	position: absolute;
	top:8.197%;
	right: 3.833%;
	left: 87.667%;
	bottom: 8.197%;
	background: url(../images/portal/portal_toBtn_circle.png);
	background-size: contain;
	background-position: center;
}
#toAnime #toAnime_btn:after{
	content: '';
	position: absolute;
	top:8.197%;
	right: 3.833%;
	left: 87.667%;
	bottom: 8.197%;
	background: url(../images/portal/portal_toBtn_arrow.png);
	background-size: contain;
	background-position: center;
}
#toAnime #toAnime_btn #toAnime_btn_txt{
	position: absolute;
	top: 23.78%;
	right: 29%;
	left: 29%;
	bottom: 23.78%;
	background: url(../images/portal/portal_toAnime_btn.png);
	background-size: contain;
	background-position: center;
	transition: all .3s ease-in-out;
}
#toAnime:hover #toAnime_btn #toAnime_btn_txt{
	transform: scale(1.05);
}
#toCinema #toCinema_IMG{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 92.375%;
	background: #000;
	background-size: 100%;
	overflow: hidden;
}
#toCinema #toCinema_IMG .portal_linkIMG{
	background: url(../images/portal/portal_toCinema_IMG.jpg);
	background-size: 100%;
}
#toCinema:hover #toCinema_IMG .portal_linkIMG{
	transform: scale(1.05);
	opacity: 0.7;
}
#toCinema #toCinema_btn{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-width: 600px;
	height: 7.625%;
}
#toCinema #toCinema_btn:before{
	content: '';
	position: absolute;
	top:8.197%;
	right: 3.833%;
	left: 87.667%;
	bottom: 8.197%;
	background: url(../images/portal/portal_toBtn_circle.png);
	background-size: contain;
	background-position: center;
}
#toCinema #toCinema_btn:after{
	content: '';
	position: absolute;
	top:8.197%;
	right: 3.833%;
	left: 87.667%;
	bottom: 8.197%;
	background: url(../images/portal/portal_toBtn_arrow.png);
	background-size: contain;
	background-position: center;
}
#toCinema #toCinema_btn #toCinema_btn_txt{
	position: absolute;
	top: 23.78%;
	right: 32.75%;
	left: 32.75%;
	bottom: 23.78%;
	background: url(../images/portal/portal_toCinema_btn.png);
	background-size: contain;
	background-position: center;
	transition: all .3s ease-in-out;
}
#toCinema:hover #toCinema_btn #toCinema_btn_txt{
	transform: scale(1.05);
}
#toAnime:hover #toAnime_btn:before,
#toCinema:hover #toCinema_btn:before{
	animation: rotate 10s linear infinite;
}
#twitter{
	padding: 80px 0;
	background: url(../images/portal/twitter_bg.png) repeat center center;
}
#twitter .contWrap{
	width: 1040px;
	margin: 0 auto;
}
#twitter h2{
	width: 100%;
	height: 82px;
	background: url(../images/portal/twitter_h2.png) no-repeat center center;
	margin-bottom: 40px;
	position: relative;
}
#twitter h2 #toTwitter{
	position: absolute;
	width: 200px;
	top: 20px;
	right: 0px;
}
#twitter #twidget{
	width: 1040px;
	padding: 0;
}
#twitter #twidgetin{
	height: 370px;
	margin-bottom: 0;
	padding: 20px;
}
#twitter #twidgetin .p-twitter-box .p-twitter-title{
	color: #fff;
	font-weight: 600;
	letter-spacing: 1px;
	padding: 0 2em 0;
	font-size: 12px;
}
#p_footer{
	padding: 80px;
	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: 60px auto 64px;
}
#toShare a{
	display: block;
	transition:all 0.3s ease;
}
#toShare a:hover {
	opacity:0.7;
}
#share_twi{
	width: 37px;
	height: 29px;
	margin-right: 57px;
}
#share_twi a{
	width: 37px;
	height: 29px;
	background: url(../images/portal/share_twi.png);
	background-size: contain;
}
#share_fb{
	width: 31px;
	height: 32px;
	margin-right: 60px;
}
#share_fb a{
	width: 31px;
	height: 32px;
	background: url(../images/portal/share_fb.png);
	background-size: contain;
}
#share_li{
	width: 33px;
	height: 31px;
}
#share_li a{
	width: 33px;
	height: 31px;
	background: url(../images/portal/share_li.png);
	background-size: contain;
}
#p_footer .copyright{
	line-height: 24px;
}
.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: 1200px;
	min-height:100%;
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
	background:rgba(0,0,0,0.8);
}
.fModal__inner--content {
	width:520px;
	height:650px;
	margin:60px 0;
	position: relative;
	z-index:50;
}
.fModal__inner--content img{
	width: 520px;
	height: 731px;
}
.fModal__closeArea {
	position: absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
}
.fModal .modalMovieClose {
	position: fixed;
}