@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Dosis:wght@200;400;500;700&family=Kosugi+Maru&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: #eb4040;
	color: #fff;
}
::-moz-selection {
 background: #eb4040;
 color:#fff;
}
* {
	outline: none;
	box-sizing: border-box;
}
body {
	font-family: 'Kosugi Maru', "Yu Gothic", YuGothic, sans-serif;
	font-weight: 400;
	font-size: 16px;
	color: #000;
	background: #FFF url(../img/bg.png) repeat fixed left top / 144px 144px;
}
a {
	color: #000;
}
a:hover {
	text-decoration: none;
}
.sp {
	display: none !important;
}
.do {
	font-family: 'Dosis', sans-serif;
	font-weight: 700;
}
.ef {
	transform: rotate(-10deg) translate3d(0, 50px, 0);
	transform-origin: center center;
	transition: all 0.7s ease;
	opacity: 0;
}
.efo {
	opacity: 1;
	transform: rotate(0.1deg) translate3d(0, 0, 0);
}
.cm{
	color: #eb4040;
	font-weight: bold;
}
.c0c {
	color: #f39800;
}
.c1c {
	color: #dd316a;
}
.c2c {
	color: #f2b600;
}
.c3c {
	color: #7ebf00;
}
.c4c {
	color: #00a0f3;
}
.c5c {
	color: #9e23c0;
	display: inline !important;
}
.c6c {
	color: #b0212b;
}
/* Loading */
#loading {
	position: fixed;
	z-index: 9999;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
}
.loading__bg{
	content: "";
	background: #FFF;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	transition: height .8s cubic-bezier(0.16, 1, 0.3, 1);
}
.loading__bg.is-active{
	transition-delay: 1s;
	height: 0;
}
.loading__logo {
	position: absolute;
	width: 251px;
	height: 158px;
	left: 50%;
	top: 50%;
	margin-left: -125px;
	margin-top: -79px;
	background: url(../img/logo.png) no-repeat center center / contain;
	opacity: 0;
	transform: scale(1.4);
	transition: all .4s cubic-bezier(0.68, -4, 0.32, 1.6);
	z-index: 1;
}
.loading__logo.is-active {
	opacity: 1;
	transform: scale(1);
}
.loading__logo.is-active2{
	transition-delay: .6s;
	opacity: 0;
	transform: translateY(-40%);
}
#fullWrap {
	min-width: 1200px;
	width: 100%;
	position: relative;
	min-height:620px;
	display: flex;
	flex-wrap: wrap;
	background:url(../img/character_ht_cl.png) no-repeat fixed left 85% / 152px 344px;
}
header {
	width:260px;
	left:0;
	top:0;
	bottom:240px;
	position:relative;
	padding-right:20px;
	background: url(../img/top_ht_tl.png) no-repeat fixed left top / 260px 120px;
	z-index:5;
	display: block !important;

}
.header__inner {
	width: 240px;
	position: sticky;
	top:0;
}
.header__inner h1 {
	width:326px;
	height:199px;
	position: relative;
	padding-left:34px;
	padding-top:15px;
}
.header__inner h1 a {
	display: block;
	height:100%;
	background: url(../img/logo.png) no-repeat left top / contain;
}
nav ul {
	padding: 24px 0 0;
}
nav li {
	height: 46px;
	margin-bottom: 4px;
	pointer-events: auto;
	display: table;
	margin:0 auto;
}
nav li a {
	display: block;
	line-height: 2;
	height: 32px;
	padding: 0 8px;
	text-decoration: none;
	position: relative;
	transition: all 0.3s ease;
}
nav li a[target=_blank]:after {
	content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12"><defs><style>.cls-1{fill-rule: evenodd}</style></defs><path id="icon_blanklink.svg" class="cls-1" fill="%23000" d="M4,0H16V8H4V0ZM5,1H15V7H5V1Zm6,11H0V4H3V5H1v6H11V9h1v3H11Z"/></svg>');
	width: 16px;
	position: absolute;
	right: -16px;
	top: 50%;
	transition: all 0.3s ease;
	transform: translateY(-50%)
}
nav li a[target=_blank]:hover:after {
	content: url('data:image/svg+xml;utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="12" viewBox="0 0 16 12"><defs><style>.cls-1{fill-rule: evenodd}</style></defs><path id="icon_blanklink.svg" class="cls-1" fill="%23eb4040" d="M4,0H16V8H4V0ZM5,1H15V7H5V1Zm6,11H0V4H3V5H1v6H11V9h1v3H11Z"/></svg>');
}
nav li a:before {
	content: '';
	position: absolute;
	bottom: 0;
	height: 3px;
	left: 50%;
	right: 50%;
	background: #000;
	transition: all 0.3s ease;
	opacity: 0
}
nav li a:hover, nav li a.active {
	color: #eb4040;
}
nav li a:hover:before, nav li a.active:before {
	left: 8px;
	right: 8px;
	background: #eb4040;
	opacity: 1;
}
main {
	width: calc(100% - 240px);
	position: relative;
	margin-left:-20px;
}
.fv {
	padding:80px 240px 80px 0;
	position: relative;
	z-index: 2;
}
.fv:before {
	content:'';
	position: absolute;
	right:0;
	left:240px;
	height:480px;
	top:0;
	background: url(../img/mv_sheet.png);
}
.fv__wrap {
	border-radius: 16px;
	box-shadow: 0px 0px 40px 0px rgba(10,10,10,0.2);
	height:0;
	padding-top:116.6667%;
	overflow: hidden;
	position: relative;
}
.fv__wrap--carousel {
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
}
.fv__wrap--carousel li {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	z-index: 0;
	width:100%;
	height:100%;
}
.fv__wrap--carousel li.is-active{
	animation: fadein .5s ease-in-out 0s 1 normal forwards;
	z-index: 2;
}
.fv__wrap--carousel li.is-bottom{
	opacity: 1;
	z-index: 1;
}
@keyframes fadein {
	0%  { opacity: 0; transform: scale(1.3); }
	100%{ opacity: 1; transform: scale(1); }
}
.fv__wrap--carousel li img {
	width:100%;
	height:auto;
}
.fv__selector {
	position:absolute;
	left:0;
	top:24px;
	right:0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.fv__selector:before{
	content:"VISUAL SELECTOR";
	color:#FFF;
	display: block;
	font-size: 14px;
	letter-spacing: 0.08em;
	line-height: 20px;
	width: 100%;
	height: 20px;
	text-align: center;
}
.fv__selector li {
	width:40px;
	height: 4px;
	margin:12px;
}
.fv__selector li a {
	display: block;
	height: 4px;
	background:#5e3b00;
	transition: background .3s ease-in-out;
}
.fv__selector li a:hover{
	background: #f3df00;
}
.fv__selector li.is-active a {
	background: #f3df00;
}
.fv__movies {
	position: absolute;
	right:40px;
	top:40px;
	width:240px;
	z-index:60;
}
.fv__movies li {
	width:240px;
	height:134px;
	margin-bottom:24px;
	border-radius: 16px;
	overflow: hidden;
	background-color:#000;
}
.fv__movies li a {
	height: 134px;
	display: block;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	transition: all 0.3s ease;
}
.fv__movies li a:hover {
	transform: scale(1.1);
}
.modal-movie:before {
	content:'';
	position: absolute;
	width:64px;
	height:64px;
	border-radius: 50%;
	left:50%;
	top:50%;
	margin-left:-32px;
	margin-top:-32px;
}
.modal-movie:after {
	content:'';
	position: absolute;
	height:96px;
	width: 96px;
	margin-left:-48px;
	margin-top:-48px;
	left:50%;
	top:50%;
	animation: iconRotate 10s linear infinite;
}
.movie-animation:before {
	background-image:url(../img/icon_muvieplay.png);
	background-color:rgba(243,152,0,0.6);
	background-repeat: no-repeat;
	background-position: 22px center;
	background-size:24px auto;
}
.movie-animation:after {
	background:url(../img/icon_movieanimaition.png) no-repeat center center/ contain;
}
.movie-liveaction:before {
	background-image:url(../img/icon_muvieplay.png);
	background-color:rgba(0,178,178,0.6);
	background-repeat: no-repeat;
	background-position: 22px center;
	background-size:24px auto;
}
.movie-liveaction:after {
	background:url(../img/icon_movieliveaction.png) no-repeat center center/ contain;
}
@keyframes iconRotate {
	0% {
		transform:rotate(0deg);
	}
	100% {
		transform:rotate(359deg);
	}
}
.fv__point {
	position: absolute;
	bottom:80px;
	right:40px;
	top:400px;
	width:240px;
	display: flex;
	align-items: flex-end;
	z-index: 100;
	opacity: 0;
	transition: opacity .4s ease-in-out;
}
.fv__point.is-active{
	transition-delay: .5s;
	opacity: 1;
}
@keyframes bounce {
 0% {
transform: translateY(0px) scale(1);
}
 100% {
transform: translateY(-15px) scale(0.95, 1);
}
}
.fv__point .startDate {
	height: 240px;
	background: url(../img/startdate.png) no-repeat center center / contain;
	animation: bounce .5s ease alternate infinite;
	transform-origin: center bottom;
	position: sticky;
	bottom:40px;
	right:0;
	width:240px;
	margin-left:auto;
}
.fv__point .update__bnrs {
	transform-origin: center bottom;
	position: sticky;
	bottom:40px;
	right:0;
	width:240px;
	margin-left:auto;
}
.startDate.pc {
	position: absolute;
	width: 200px;
	height: 200px;
	background: url(../img/startdate.png) no-repeat center center / contain;
	animation: bounce .5s ease alternate infinite;
	transform-origin: center bottom;
	top: 40px;
	left: 100px;
}
.update {
	padding:80px;
	position: relative;
	z-index: 1;
}
.update:before {
    content: '';
    position: absolute;
    top: -216px;
    left: 50%;
    margin-left: -550px;
    width: 369px;
    height: 320px;
    background: url(../img/update_ht_tl.png) no-repeat center center / contain;
    z-index: 0;
}
.update:after {
    content: '';
    position: absolute;
    top: 339px;
    left: 50%;
    margin-left: -200px;
    width: 204px;
    height: 204px;
    background: url(../img/update_ht_cc.png) no-repeat center center / contain;
}
.cont__wrap {
	width: 860px;
	margin:0 auto;
	position: relative;
	z-index: 1;
}
.update__wrap {
	width: 100%;
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.update__wrap h2 {
	height: 104px;
	width: 240px;
	border-right: 1px solid #CDCDCD;
	border-left: 1px solid #cdcdcd;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-bottom:80px;
}
.update__wrap h2 .en {
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
	padding-bottom: 17px;
	position: relative;
	display: block;
}
.update__wrap h2 .en:before {
	content: '';
	position: absolute;
	width: 40px;
	height: 2px;
	background: #eb4040;
	margin-left: -20px;
	left: 50%;
	bottom: 0;
}
.update__wrap h2 .ja {
	padding-top: 15px;
}
#updateCarousel {
	margin-bottom: 80px;
	width:520px;
}
#updateCarousel ul {
	height: 105px;
}
#updateCarousel li {
	height: 104px;
	position: relative;
}
#updateCarousel li:before {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px;
	background: #cdcdcd;
	width: 100%;
}
#updateCarousel li:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	height: 2px;
	background: #eb4040;
	width: 0;
}
#updateCarousel .active li:after {
	width: 100%;
	transition: all 6s linear;
}
#updateCarousel li time {
	color: #eb4040;
	margin-bottom: 8px;
	display: block;
	line-height: 1;
}
#updateCarousel li p {
	line-height: 2;
	overflow: hidden;
	height: 64px;
	overflow: hidden;
	word-break: break-all;
}
.update__bnrs {
	width:240px;
	height:424px;
}
.update__bnrs li {
	height:416px;
}
.update__bnrs li a {
	display: block;
	width:240px;
	height:80px;
	margin-bottom:24px;
	transition:all 0.3s ease;
}
.update__bnrs li a img {
	width:240px;
	height:auto;
}
.update__bnrs li a:hover {
	opacity:0.85;
}
#twidget {
	width:520px;
	height:424px;
	border-radius: 16px;
	background: url(../img/mv_sheet.png);
	padding: 24px;
}
#twidgetin {
	height: 312px;
	border-radius: 8px;
	overflow: hidden;
	background: #FFF;
	margin-bottom: 24px;
}
#toTwitter {
	margin: 0px auto;
	height: 40px;
	width: 240px;
}
.twitterWidget{
	height: 100%;
	overflow-x: hidden;
}
#toTwitter a {
	line-height: 40px;
	background: #FFF;
	text-align: center;
	vertical-align: middle;
	display: block;
	height: 40px;
	border-radius: 20px;
	text-decoration: none;
	transition: all 0.6s ease;
}
#toTwitter a:hover {
	transform: scale(1.05);
	transition: all 0.3s ease;
}
#toTwitter a img {
	display: inline-block;
	margin-right: 15px;
	vertical-align: middle;
}
footer {
	height:240px;
	padding-top:80px;
	position:relative;
	width:100%;
	background: url(../img/tieup_ht_br.png) no-repeat right bottom;
}
footer:before {
	content:'';
	position: absolute;
	left:0;
	bottom:0;
	height:160px;
	right:calc(50% - 120px);
	border-radius:0 16px 0 0;
	background: url(../img/mv_sheet.png);
}
footer:after {
	content:'';
	position: absolute;
	top:-40px;
	left:75%;
	margin-left:-80px;
	width: 160px;
	height: 160px
}
footer.f1:after {
	background: url(../img/footer_ptn1.png);
}
footer.f2:after {
	background: url(../img/footer_ptn2.png);
}
footer.f3:after {
	background: url(../img/footer_ptn3.png);
}
footer.f4:after {
	background: url(../img/footer_ptn4.png);
}
footer .shared {
	padding-left:40px;
	padding-top:32px;
	display: flex;
	position: relative;
}
footer .shared dt {
	width:50px;
	height:40px;
	font-size:14px;
	line-height: 40px;
	color: #FFF;
}
footer .shared dd {
	width:40px;
	height:40px;
}
footer .shared dd a {
	display: block;
	height:40px;
	transition:all 0.3s ease;
	background-size:20px auto;
}
footer .shared dd a:hover {
	transform: translateY(-5px);
}
.tw a {
	background:url(../img/sns_tw.svg) no-repeat center center;
}
.fb a {
	background:url(../img/sns_fb.svg) no-repeat center center;
}
.ln a {
	background:url(../img/sns_line.svg) no-repeat center center;
}
.copyright {
	padding-left:40px;
	line-height:80px;
	font-size:12px;
	color:#FFF;
	position: relative;
}
@keyframes god {
 from {
 transform:translateY(10px);
}
to {
	transform: translateY(0);
}
}
#suLiner {
	position: absolute;
	height: 100%;
	width: 80px;
	right: 80px;
	bottom: 0px;
	z-index: 9000;
}
#suLiner a {
	width: 130px;
	height: 130px;
	position: absolute;
	right: 0;
	bottom: 0;
	font-weight: 500;
	font-size: 13px;
	letter-spacing: 0.025em;
	display: block;
	text-decoration: none;
	pointer-events: auto;
}
#suLiner a span {
	display: block;
	height: 40px;
	width: 130px;
	padding-right:30px;
	line-height: 80px;
	text-align: center;
}
#suLiner a:before {
	content: '';
	position: absolute;
	right: 0;
	top: 50px;
	bottom: 0;
	width: 1px;
	background: #CDCDCD;
}
#suLiner a:after {
	content: '';
	position: absolute;
	top: 50px;
	right: 0;
	margin-right: -1px;
	height: 0;
	width: 3px;
	background: #eb4040;
	animation: linerToUpper 2s ease infinite;
}
#suGod {
	height: 75px;
	width: 96px;
	position: absolute;
	right: 110px;
	bottom: 0px;
	overflow: hidden
}
#suGod p {
	background: url(../img/su_god.png);
	height: 75px;
	width: 96px;
	animation: god 3s ease-in-out alternate infinite;
}
@keyframes linerToUpper {
 0% {
 top:130px;
 height:0;
}
 50% {
 top:50px;
 height:80px;
}
 100% {
 top:50px;
 height:0;
}
}
.subcontent {
	padding:80px 80px 80px 20px;
	position: relative;
}
.subcontent:before {
	content:'';
	position: absolute;
	right:0;
	left:240px;
	height:240px;
	top:0;
	background: url(../img/mv_sheet.png);
	z-index:2;
}
.subcontent:after {
	content:'';
	position: absolute;
	right:0;
	top:120px;
	width:240px;
	height:320px;
	background: url(../img/story_ht_tc.png) no-repeat left center;
}
.subcontent h2 {
	height:240px;
	border-radius: 16px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 80px;
	z-index:3;
}
.subcontent h2 .ja {
	display: block;
	letter-spacing: 0.2em;
	font-size:24px;
	padding-left:0.2em;
	color:#FFF;
	text-shadow: 0px 0px 16px rgba(0,0,0,0.6);
}
.subcontent h2 .en {
	display: block;
	font-size:160px;
	padding-left:0.2em;
	color:#FFF;
	font-weight: 200;
	line-height: 120px;
	position: absolute;
	top:80px;
	right:-80px;
	mix-blend-mode:overlay;
}
.subcontent h2 .en2 {
	display: block;
	font-size:160px;
	padding-left:0.2em;
	color:#FFF;
	font-weight: 200;
	line-height: 120px;
	position: absolute;
	top:40px;
	right:-80px;
	text-align: right;
	mix-blend-mode:overlay;
}
.subcontent h2.r1 {
	background:url(../img/sub_titlebg.jpg) no-repeat center center / cover;
}
.subcontent h2.r2 {
	background:url(../img/sub_titlebg2.jpg) no-repeat center center / cover;
}
.onair__wrap {
	width:860px;
	margin:0 auto;
	z-index:4;
	position: relative;
}
.onair__start {
	text-align: center;
	font-size:24px;
	color: #5e3b00;
	line-height: 1.6;
	margin-bottom:70px;
}
.onair__start strong {
	padding-top:18px;
	font-size:52px;
	text-align: center;
	display: block;
	color:#eb4040;
	letter-spacing: 0.05em;
	line-height:1;
}
.subcontent h3 {
	height: 104px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-bottom:20px;
}
.subcontent h3 .en {
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
	padding-bottom: 17px;
	position: relative;
	display: block;
}
.subcontent h3 .en:before {
	content: '';
	position: absolute;
	width: 40px;
	height: 2px;
	background: #eb4040;
	margin-left: -20px;
	left: 50%;
	bottom: 0;
}
.subcontent h3 .ja {
	padding-top: 15px;
}
.onair__table {
	margin-bottom: 60px;
}
.onair__table table {
	width: 100%;
}
.onair__table th {
	height:85px;
	vertical-align: middle;
	width:240px;
	font-size:20px;
	color:#eb4040;
	border-bottom:2px solid rgba(0,0,0,.2);
}
.onair__table th a {
	color:#eb4040;
}
.onair__table td {
	min-height:85px;
	vertical-align: middle;
	font-size: 16px;
	border-bottom:2px solid rgba(0,0,0,.2);
}
.onair__table td small {
	padding-top:3px;
	line-height:1.5;
	display: inline-block;
}
.onair__table td:last-child {
	width:380px;
}
.onair__caution {
	padding-top:16px;
}
.stream__category{
	font-size: 24px;
	line-height: 36px;
	padding-bottom: 10px;
	border-bottom: 2px solid #222;
	position: relative;
	color: #5e3b00;
	margin: 35px 0 10px;
}
.streamLists{
	display: flex;
	flex-wrap: wrap;
	position: relative;
	margin-bottom: 60px;
}
.streamLists:last-of-type{
	margin-bottom: 0;
}
.streamLists:after{
	content: '';
	position: absolute;
	width: 100%;
	bottom: 0;
	height: 2px;
	background: #ccc;
}
.streamList{
	font-size: 20px;
	color: #eb4040;
	height: 85px;
	display: flex;
	align-items: center;
	width: calc(100% /3);
	border-bottom: 2px solid #cccccc;
}
.streamList a{
	color: #eb4040;
}


.caststaff__wrap {
	display: flex;
	justify-content: space-between;
	width: 860px;
	margin: 0 auto;
	z-index:4;
	position: relative;
}
.cs {
	width:340px;
}
.cast ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	width:260px;
	margin:0 auto;
}
.cs li {
	font-size: 20px;
	display: table;
}
.cs li strong {
	font-weight: 400;
	padding-right: 8px;
	font-size: 16px;
	display: table-cell;
	line-height: 34px;
	padding-top: 10px;
}
.cs li span {
	display: table-cell;
	line-height: 34px;
	padding: 5px 0;
}
.cs li a {
	display: table-cell;
	line-height: 34px;
	padding: 5px 0 5px 10px;
	transition: all 0.3s ease;
}
.cs li a:hover {
	transform: scale(1.1);
}
.cs li a img {
	vertical-align: text-bottom;
	width:21px;
	height:19px;
}
.cast li span {
	width: 110px;
}
.cast li strong {
	width: 110px;
}
.staff {
	width: 430px;
}
.staff li strong {
	color: #eb4040;
}
#commentModal {
	background: #FFF url(../img/bg.png) repeat center center;
	position: fixed;
	z-index: 9890;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	overflow: auto;
	display: none;
}
#commentModal:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 199px;
	height: 120px;
	background: url(../img/cm_ht_tl.png) no-repeat center center;
}
#commentFixed {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	min-width: 1200px;
	min-height: 640px;
	pointer-events: none;
}
#commentFixed:before {
	content: '';
	position: absolute;
	width: 414px;
	height: 415px;
	left: 50%;
	top: 50%;
	margin-left: -501px;
	margin-top: -171px;
}
#commentFixed:after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	width: 171px;
	height: 136px;
	background: url(../img/cm_ht_br.png) no-repeat center center;
}
#commentFixed h2 {
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	width: 80px;
	margin-left: 360px;
	letter-spacing: 0.2em;
	display: flex;
	align-items: center;
	z-index: 2;
	background:#eb4040;
}
#commentFixed h2 div {
	height: 480px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
#commentFixed h2 .cmName {
	font-size: 32px;
	line-height: 80px;
	width: 80px;
	display: block;
	padding-bottom: 50px;
	color: #FFF;
}
#commentFixed h2 .cmVoice {
	background: #FFF;
	display: block;
	width: 24px;
	font-size: 16px;
	color: #000;
	line-height: 24px;
	letter-spacing: 0.05em;
	padding: 13px 0;
	border-top: 3px solid #5B3C1C;
	border-bottom: 3px solid #5B3C1C;
	z-index: 6;
	transform: rotate(0.1deg);
}
#commentPict {
	position: absolute;
	padding: 3px;
	width: 267px;
	left: 50%;
	top: 50%;
	margin-left: -536px;
	transform: translateY(-50%);
	background:#eb4040;
}
#commentPict img {
	width: 100%;
	height: auto;
}
#commentTexts {
	width: 525px;
	margin-left: -220px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateY(-50%) rotate(0.1deg);
}
#commentTexts p {
	line-height: 2;
	margin-bottom: 2em;
	font-size: 15px;
}
.c1 #commentFixed:before {
	background: url(../img/character_1dot.png) no-repeat center center;
}
.c1 #commentFixed h2 {
	background: url(../img/character_1ptn.png) repeat center top;
}
.c1 #commentPict {
	background: #cd2d62;
}
.c2 #commentFixed:before {
	background: url(../img/character_2dot.png) no-repeat center center;
}
.c2 #commentFixed h2 {
	background: url(../img/character_2ptn.png) repeat center top;
}
.c2 #commentPict {
	background: #e8bb00;
}
.c3 #commentFixed:before {
	background: url(../img/character_3dot.png) no-repeat center center;
}
.c3 #commentFixed h2 {
	background: url(../img/character_3ptn.png) repeat center top;
}
.c3 #commentPict {
	background: #76b300;
}
.c4 #commentFixed:before {
	background: url(../img/character_4dot.png) no-repeat center center;
}
.c4 #commentFixed h2 {
	background: url(../img/character_4ptn.png) repeat center top;
}
.c4 #commentPict {
	background: #0094e1;
}
.c2-1 #commentFixed:before {
	background: url(../img/character_1dot.png) no-repeat center center;
}
.c2-1 #commentFixed h2 {
	background: url(../img/character_1ptn.png) repeat center top;
}
.c2-1 #commentPict {
	background: #cd2d62;
}
.c2-2 #commentFixed:before {
	background: url(../img/character_2dot.png) no-repeat center center;
}
.c2-2 #commentFixed h2 {
	background: url(../img/character_2ptn.png) repeat center top;
}
.c2-2 #commentPict {
	background: #e8bb00;
}
.c2-3 #commentFixed:before {
	background: url(../img/character_3dot.png) no-repeat center center;
}
.c2-3 #commentFixed h2 {
	background: url(../img/character_3ptn.png) repeat center top;
}
.c2-3 #commentPict {
	background: #76b300;
}
.c2-4 #commentFixed:before {
	background: url(../img/character_4dot.png) no-repeat center center;
}
.c2-4 #commentFixed h2 {
	background: url(../img/character_4ptn.png) repeat center top;
}
.c2-4 #commentPict {
	background: #0094e1;
}
.c2-5 #commentFixed:before {
	background: url(../img/character_13dot.png) no-repeat center center;
}
.c2-5 #commentFixed h2 {
	background: url(../img/character_13ptn.png) repeat center top;
}
.c2-5 #commentPict {
	background: #9e23c0;
}
.c2-6 #commentFixed:before {
	background: url(../img/character_14dot.png) no-repeat center center;
}
.c2-6 #commentFixed h2 {
	background: url(../img/character_14ptn.png) repeat center top;
}
.c2-6 #commentPict {
	background: #b0212b;
}
#commentClose {
	position: fixed;
	width: 80px;
	height: 80px;
	right: 30px;
	top: 30px;
	z-index: 50;
}
#commentClose a {
	display: block;
	height: 80px;
	position: relative;
	padding-top: 48px;
	line-height: 32px;
	color: #FFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border-radius: 8px;
	background: #5E3B00;
	transition: all 0.3s ease;
}
#commentClose a:hover {
	transform: scale(1.1);
}
#commentClose a:before, #commentClose a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30px;
	width: 42px;
	height: 4px;
	background: #FFF;
	border-radius: 2px;
	margin-left: -21px;
}
#commentClose a:before {
	transform: rotate(45deg);
}
#commentClose a:after {
	transform: rotate(-45deg);
}
.introduction__wrap {
	position: relative;
	height:880px;
	margin-right:-80px;
	z-index:4;
}
.introduction__wrap:before {
	position: absolute;
	content:'';
	left:50%;
	margin-left:-816px;
	right:0;
	bottom:-153px;
	top:-62px;
	background: url(../img/introduction_map.png) no-repeat left bottom;
}
.introduction__inner {
	width:940px;
	margin:0 auto;
	padding-right:80px;
	padding-top:70px;
	position: relative;

}
.introduction__catch {
	width:114px;
	height:692px;
	position: absolute;
	right:60px;
	top:0;
	background: url(../img/introduction_maincatch.png) no-repeat center center;
}
.introduction__catch2 {
	width:120px;
	height:856px;
	position: absolute;
	right:60px;
	top:0;
	background: url(../img/introduction_maincatch2.png) no-repeat center center;
}
.introduction__text {
	font-size: 16px;
	line-height: 2;
	margin-bottom:2em;
	width:674px;
}
.introduction__subcatch {
	font-size: 28px;
	color: #eb4040;
	font-weight: 600;
	letter-spacing: 0.2em;
	line-height:56px;
	padding-top:15px;
	text-shadow: 0px 0px 8px #FFF, 0px 0px 8px #FFF;
}
.movie__wrap {
	width:860px;
	margin:0 auto;
}
.movie__wrap ul {
	width:900px;
	margin:0 -20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.movie__wrap li {
	width:400px;
	margin:0 20px 15px;
}
.movie__wrap li a {
	display: block;
	height: 225px;
	border-radius: 16px;
	background-position: center center;
	background-size: cover;
	position: relative;
	transition: all 0.3s ease;
}
.movie__wrap li a:hover {
	transform: scale(1.05);
}
.movie__wrap li p {
	padding:20px 0;
	text-align: center;
	color:#eb4040;
	line-height:1.6;
}
#movieModal {
	position: fixed;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	overflow: auto;
	background:#FFF;
	z-index:9999;
	background-image: url(../img/bg.png);
	background-repeat: repeat;
	background-attachment: fixed,scroll;
	background-position: center center;
	display: none;
}
#moviein {
	position: absolute;
	width:100%;
	height:100%;
	min-width: 1200px;
	min-height: 620px;
}
#movieCont {
	position: absolute;
	left:140px;
	right:140px;
	top:30px;
	bottom:30px;
	border-radius: 8px;
	overflow:hidden;
}
#movieCont iframe {
	display: block;
	height:100%;
}
#dvisual,#dvisual2 {
	width: 100%;
	display: flex;
	justify-content: center;
	margin-bottom: 80px
}
#dvisual li,#dvisual2 li {
	width: 515px;
	height: 686px;
}
#dvisual li:first-child {
	background:url(../img/drama_mv1.jpg) no-repeat center center / contain;
}
#dvisual li:last-child {
	background:url(../img/drama_mv2.jpg) no-repeat center center / contain;
}
#dvisual2 li:first-child {
	background:url(../img/drama_mv3.jpg) no-repeat center center / contain;
}
/*
#dvisual2 li:last-child {
	background:url(../img/drama_mv4.jpg) no-repeat center center / contain;
}
*/
#dintroduction {
	margin-bottom:70px;
}
#dintroduction h2 {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-bottom: 50px;
}
#dintroduction h2 .en {
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
	padding-bottom: 17px;
	position: relative;
	display: block;
}
#dintroduction h2 .en:before {
	content: '';
	position: absolute;
	width: 40px;
	height: 2px;
	background: #eb4040;
	margin-left: -20px;
	left: 50%;
	bottom: 0;
}
#dintroduction h2 .ja {
	padding-top: 15px;
}
#dintroduction p {
	font-size: 16px;
	line-height: 40px;
}
#dcaststaff h2 {
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-bottom: 70px;
}
#dcaststaff h2 .en {
	font-weight: 700;
	font-size: 32px;
	line-height: 1;
	padding-bottom: 17px;
	position: relative;
	display: block;
}
#dcaststaff h2 .en:before {
	content: '';
	position: absolute;
	width: 40px;
	height: 2px;
	background: #eb4040;
	margin-left: -20px;
	left: 50%;
	bottom: 0;
}
#dcaststaff h2 .ja {
	padding-top: 15px;
}
#dcsWrap {
	display: flex;
	justify-content: space-between;
	width: 800px;
	margin:0 auto;
	padding-bottom:50px;
}
#dcaststaff h3 {
	font-size: 24px;
	padding-bottom: 8px;
	border-bottom: 1px solid #000;
	position: relative;
	margin-bottom: 35px;
}
#dcaststaff h3:before {
	content: '';
	position: absolute;
	right: 0;
	bottom: -2px;
	width: 3px;
	height: 3px;
	border-radius: 50%;
	background: #000;
}
#dcaststaff h3 .en {
	display: inline-block;
	margin-right: 10px;
}
#dcaststaff h3 .ja {
	font-size: 14px;
}
#dcast {
	width: 280px;
}
#dcsWrap li {
	font-size: 20px;
	display: table;
}
#dcsWrap li strong {
	font-weight: 400;
	padding-right: 8px;
	font-size: 16px;
	display: table-cell;
	line-height: 34px;
	padding-top: 10px;
}
#dcsWrap li span {
	display: table-cell;
	line-height: 34px;
	padding: 5px 0;
}
#dcsWrap li a {
	display: table-cell;
	line-height: 34px;
	padding: 5px 0 5px 10px;
	transition: all 0.3s ease;
}
#dcsWrap li a:hover {
	transform: scale(1.1);
}
#dcsWrap li a img {
	vertical-align: text-bottom;
	width:21px;
	height:19px;
}
#dcast li strong {
	width: 90px;
}
#dstaff {
	width: 450px;
}
#dstaff li strong {
	color: #eb4040;
}
#dramaModal {
	position: fixed;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	overflow: auto;
	background:#FFF;
	z-index:9999;
	background-image: url(../img/drama_bg.png),url(../img/bg.png);
	background-repeat: no-repeat,repeat;
	background-size:1200px 1200px,auto auto;
	background-attachment: fixed,scroll;
	background-position: center center;
	display: none;
}
#dramain {
	position: absolute;
	width:100%;
	height:100%;
	min-width: 1200px;
	min-height: 620px;
}
#dramaCont {
	width:1048px;
	margin:0 auto;
	padding-top:40px;
}
#dramaCont h1 {
	height:304px;
	line-height:100px;
	font-size:36px;
	text-align: center;
	position: relative;
	margin-bottom: 50px;
	padding-top:204px;
	background:url(../img/drama_logo.png) no-repeat center top;
}
#dramaCont h1.s2{
	height:304px;
	line-height:100px;
	font-size:36px;
	text-align: center;
	position: relative;
	margin-bottom: 50px;
	padding-top:204px;
	background:url(../img/drama_logo2.png) no-repeat center top !important;
}
#dramaCont h1:after {
	width:40px;
	height:2px;
	position: absolute;
	content: '';
	bottom: 0;
	left:50%;
	margin-left: -20px;
	background: #eb4040;
}
#dcopyright {
	height:100px;
	line-height: 100px;
	text-align: center;
	font-size: 14px;
}
#dramaClose,#movieClose {
	position: fixed;
	width: 80px;
	height: 80px;
	right: 30px;
	top: 30px;
	z-index: 50;
}
#dramaClose a,#movieClose a {
	display: block;
	height: 80px;
	position: relative;
	padding-top: 48px;
	line-height: 32px;
	color: #FFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border-radius: 8px;
	background: #eb4040;
	transition: all 0.3s ease;
}
#dramaClose a:hover,#movieClose a:hover {
	transform: scale(1.1);
}
#dramaClose a:before, #dramaClose a:after, #movieClose a:before, #movieClose a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30px;
	width: 42px;
	height: 4px;
	background: #FFF;
	border-radius: 2px;
	margin-left: -21px;
}
#dramaClose a:before, #movieClose a:before {
	transform: rotate(45deg);
}
#dramaClose a:after, #movieClose a:after {
	transform: rotate(-45deg);
}
#dramaBnr {
	position:absolute;
	top:40px;
	left:calc(50% + 200px);
	margin-left:-128px;
	height:80px;
	width:256px;
	z-index:500;
	pointer-events: auto;
	display: none;
}
#dramaBnr a {
	display: block;
	transition: all 0.3s ease
}
#dramaBnr a:hover {
	transform:scale(1.05);
}
#dramaBnr a img {
	height:80px;
	width:auto;
}
.music__wrap {
	width:860px;
	position: relative;
	z-index: 4;
	margin:0 auto;
}
.music__each {
	display: flex;
	justify-content: space-between;
	padding-top:40px;
	padding-bottom:70px;
	flex-wrap: wrap;
}
.music__package {
	width:410px;
	background:#FFF;
	margin-bottom: 30px;
}
.music__package img {
	width:100%;
	height:auto;
}
.music__spec {
	width:410px;
}
.music__spec h4 {
	font-size:20px;
	line-height:34px;
	padding-bottom:7px;
	border-bottom: 2px solid #222;
	position: relative;
	color:#eb4040;
	margin-bottom:12px;
}
.music__spec h4:before {
	content:'';
	position: absolute;
	right:0;
	bottom:-3px;
	width:4px;
	height:4px;
	background: #222;
	border-radius: 50%;
}
.music__spec p {
	line-height:2;
}
.music__information {
	line-height:2;
	width:100%;
	padding-top:35px;
}
.news__wrap {
	width:860px;
	position: relative;
	z-index: 4;
	margin: 0 auto;
}
.news__wrap a {
	color: #eb4040;
}
.news__wrap ul {
	margin-bottom:80px;
}
.news__wrap li {
	border-bottom: 2px solid rgba(0,0,0,.2);
	position: relative;
}
.news__wrap li:before {
	content: '';
	position: absolute;
	bottom:-2px;
	height:2px;
	width:80px;
	left:0;
	background:#eb4040;
}
.news__wrap li a {
	padding: 30px 0 15px;
	display: block;
	color: #222;
	text-decoration: none;
	transition: all 0.3s ease;
}
.news__wrap li a:hover {
	background:rgba(243,152,0,0.1);
}
.news__wrap li a time {
	display: block;
	line-height: 2;
	color: #eb4040;
}
.news__wrap li a p {
	line-height: 2;
	margin-bottom: 1em;
	word-break: break-all;
}
.pagingBox {
	min-height: 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-bottom: 30px;
}
.pagingBox a, .pagingBox > span {
	display: block;
	height: 40px;
	width: 40px;
	margin: 0 10px 20px;
	box-sizing: border-box;
	text-align: center;
	line-height: 40px;
	overflow: hidden;
	position: relative;
	border-radius: 50%;
	color: #fff;
}
.pagingBox a {
	background-color: #5e3b00;
	transition: all 0.3s ease;
	color: #fff;
	text-decoration: none;
}
.pagingBox a span {
	position: relative;
	z-index: 5;
}
.pagingBox a:hover {
	background: #eb4040;
	transform: scale(1.2);
}
.pagingBox > span {
	background: #eb4040;
}
#articleSingle {
	width: 860px;
	margin: 0 auto;
	color: #222;
}
.articleSingleHeader {
	border-bottom: 1px solid rgba(0,0,0,0.2);
}
.articleSingleHeader time {
	display: block;
	line-height: 2;
	color: #eb4040;
}
.articleSingleHeader h3 {
	height: auto;
    display: block;
    flex-direction:initial;
    justify-content:initial;
    align-items:initial;
	line-height: 2;
	margin-bottom: 1em;
	color:#000;
	font-size:20px;
}
.articleSingleCont {
	padding-top: 45px;
	line-height: 2;
	margin-bottom: 50px;
}
.articleSingleCont img {
	max-width: 100%;
	height: auto;
}
.articleSingleCont iframe {
	width: 100%;
	height: 483px;
}
.articleSingleCont p {
	margin-bottom: 1.5em;
	word-break: break-all;
}
.articleSingleCont a {
	/*color: #FFF;*/
}
.articleSingleCont .imgLists_flex{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.articleSingleCont .imgLists_flex li{
	width: calc(100% / 3);
}
.articleSingleCont .imgLists_flex li a{
	padding: 0;
	margin: 5px;
	transition: .3s ease;
}
.articleSingleCont .imgLists_flex li a:hover{
	opacity: 0.6;
}
.articleSingleCont .imgLists_flex li:before,
.articleSingleCont .imgLists_flex li a:after{
	content: none;
}
.articleSingleCont .imgLists_flex li{
	border-bottom: hidden;
}

.btindex {
	margin: 0px auto;
	height: 30px;
	width: 174px;
}
.btindex a {
	display: block;
	height: 30px;
	background: #5e3b00;
	line-height: 30px;
	text-align: center;
	color: #fff;
	text-decoration: none;
	border-radius: 15px;
	transition: all 0.3s ease;
}
.btindex a:hover {
	background:#eb4040;
}
.radio__wrap {
	width:860px;
	margin:0 auto;
	position: relative;
	z-index: 4;
}
.radio__start {
	text-align: center;
	font-size:24px;
	color: #5e3b00;
	line-height: 1;
	margin-bottom:70px;
}
.radio__start strong {
	padding-top:24px;
	font-size:52px;
	text-align: center;
	display: block;
	color:#eb4040;
	letter-spacing: 0.05em;
}
.radio__content p {
	margin-bottom:2em;
	line-height: 2;
}
.radio__content p img {
	display: block;
	margin:0 auto;
}
.radio__bwhite {
	padding:20px 26px;
	background:#FFF;
	border-radius: 16px;
}
.radio__bwhite span {
	background:#5e3b00;
	color:#FFF;
	padding:0 5px;
	display: inline-block;
	margin-bottom: 10px;
}
.radio__content h4 {
	font-size:20px;
	color:#eb4040;
	margin-bottom:15px;
}
.radio__content hr {
	border:none;
	border-bottom:2px solid rgba(0,0,0,.2);
	margin-bottom:30px;
}
.radio__content p a {
	color: #dd316a;
}
.story__wrap {
	width:860px;
	margin:0 auto;
	position: relative;
	z-index: 4;
}
.story__nav {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin-bottom:70px;
}
.story__nav li {
	width:40px;
	margin:0 10px;
}
.story__nav li a {
	width:40px;
	height:40px;
	border-radius: 20px;
	display: block;
	line-height: 40px;
	text-align: center;
	color:#FFF;
	background:#5e3b00;
	text-decoration: none;
	transition:all 0.3s ease;
}
.story__nav li a.soon {
	pointer-events: none;
	opacity:0.3;
}
.story__nav li:nth-child(-n+1) {
	width:100%;
	margin:0 0 40px;
}
.story__nav li:nth-child(-n+1) a {
	width:160px;
	margin: 0 auto;
}
/*
.story__nav li:nth-child(1) {
	padding-left:250px;
}
.story__nav li:nth-child(2) {
	padding-right:250px;
}
*/
.story__nav li a:hover,
.story__nav li a.active {
	background:#f39800;
}
.story__nav :first-child a:hover,
.story__nav :first-child a.active {
	background: #f39800;
}
.story__nav.s2n li a:hover,
.story__nav.s2n li a.active {
	background:#eb4040;
}
.story__nav.s2n :first-child a:hover,
.story__nav.s2n :first-child a.active {
	background: #eb4040;
}
.story__catch {
	width:433px;
	height:50px;
	background: url(../img/story__catch.png) no-repeat center center / contain;
	margin-bottom:40px;
}
.story__catch2 {
	width:503px;
	height:57px;
	background: url(../img/story__catch2.png) no-repeat center center / contain;
	margin-bottom:40px;
}
.story__section1 {
	height: 320px;
	margin-right:-80px;
	position: relative;
	margin-bottom:80px;
}
.story__section1:before {
	content:'';
	position: absolute;
	right:0;
	top:0;
	width: 580px;
	height:320px;
	border-radius: 16px;
	background: url(../img/story__img1.jpg) no-repeat center center;
}
.story__section1-2:before {
	content:'';
	background: url(../img/story__img1-2.jpg) no-repeat center center !important;
}
.story__section1 p {
	padding-top:30px;
	line-height:2;
	text-shadow: 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1);
	position: relative;
}
.story__section2 {
	margin-left:-30px;
	position: relative;
	height:320px;
	margin-bottom:40px;
}
.story__section2:before {
	content:'';
	position: absolute;
	left:0;
	top:0;
	width: 580px;
	height:320px;
	border-radius: 16px;
	background: url(../img/story__img2.jpg) no-repeat center center;
}
.story__section2-2:before {
	content:'';
	background: url(../img/story__img2-2.jpg) no-repeat center center !important;
}
.story__section2 p {
	padding-top:30px;
	padding-left:320px;
	line-height:2;
	text-shadow: 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1), 0px 0px 6px rgba(255, 255, 255, 1);
	position: relative;
}
.story__subcatch {
	height:201px;
	background: url(../img/story__subcatch.png) no-repeat right center;
}
.story__subcatch2 {
	height:201px;
	background: url(../img/story__subcatch2.png) no-repeat right center;
}
.tieup__wrap {
	width:860px;
	margin:0 auto;
	position: relative;
	z-index: 4;
}
.tieup__wrap.cp{
	margin-top: 80px;
}
.tieup__wrap ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.tieup__wrap li {
	width:340px;
	margin:0 40px 80px;
}
.tieup__wrap li:last-child,
.tieup__wrap li:nth-last-child(2) {
	margin-bottom:0;
}
.tieup__wrap li a,
.tieup__wrap li a img {
	display: block;
	transition: all 0.3s ease;
}
.tieup__wrap li a:hover {
	opacity:0.75;
}
.character__wrap {
	width:860px;
	margin:0 auto;
	position: relative;
	z-index: 4;
}
#characterList {
	height: 656px;
	display: flex;
	align-items: flex-start;
	margin-bottom:40px;
	justify-content: center;
}
#characterList li {
	height: 576px;
	width: 220px;
}
#characterList li:nth-child(2n) {
	margin-top: 80px;
}
#characterList li a {
	display: block;
	height: 576px;
	position: relative;
	text-decoration: none;
}
#c1 a {
	background: url(../img/character_1c.png) no-repeat right top;
}
#c2 a {
	background: url(../img/character_2c.png) no-repeat right top;
}
#c3 a {
	background: url(../img/character_3c.png) no-repeat right top;
}
#c4 a {
	background: url(../img/character_4c.png) no-repeat right top;
}
#c2-1 a {
	background: url(../img/character_1c.png) no-repeat right top;
}
#c2-2 a {
	background: url(../img/character_2c.png) no-repeat right top;
}
#c2-3 a {
	background: url(../img/character_3c.png) no-repeat right top;
}
#c2-4 a {
	background: url(../img/character_4c.png) no-repeat right top;
}
#c2-13 a {
	background: url(../img/character_13c.png) no-repeat right top;
}
#c2-14 a {
	background: url(../img/character_14c.png) no-repeat right top;
}
#characterList li a:before {
	pointer-events: none;
	transition: all 0.3s cubic-bezier(0, 0.46, 0.5, 1.68);
}
#characterList li a:hover:before {
	transform: scale(1.1);
}
#c1 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 5px;
	height: 534px;
	width: 145px;
	background: url(../img/character_1thumb.png) no-repeat left bottom / contain;
}
#c2 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 530px;
	width: 203px;
	background: url(../img/character_2thumb.png) no-repeat left bottom / contain;
}
#c3 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 30px;
	height: 532px;
	width: 134px;
	background: url(../img/character_3thumb.png) no-repeat left bottom / contain;
}
#c4 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 15px;
	height: 528px;
	width: 160px;
	background: url(../img/character_4thumb.png) no-repeat left bottom / contain;
}
#c2-1 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 5px;
	height: 534px;
	width: 145px;
	background: url(../img/character_2-1full.png) no-repeat left bottom / contain;
}
#c2-2 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 530px;
	width: 196px;
	background: url(../img/character_2-2full.png) no-repeat left bottom / contain;
}
#c2-3 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 30px;
	height: 532px;
	width: 134px;
	background: url(../img/character_2-3full.png) no-repeat left bottom / contain;
}
#c2-4 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: -10px;
	height: 528px;
	width: 160px;
	background: url(../img/character_2-4full.png) no-repeat left bottom / contain;
}
#c2-13 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: -30px;
	height: 532px;
	width: 210px;
	background: url(../img/character_13full.png) no-repeat left bottom / contain;
}
#c2-14 a:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 10px;
	height: 528px;
	width: 220px;
	background: url(../img/character_14full.png) no-repeat left bottom / contain;
}
.cname {
	position: absolute;
	height: 200px;
	width: 30px;
	top: 40px;
	right: 16px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 24px;
	color: #FFF;
	line-height: 30px;
	letter-spacing: 0.2em;
	z-index: 5;
}
.cname rt {
	transform: translate(5px,2px);
}
.cvoice {
	background: #FFF;
	position: absolute;
	width: 24px;
	bottom: 270px;
	right: 24px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: 16px;
	color: #000;
	line-height: 24px;
	letter-spacing: 0.05em;
	padding: 13px 0;
	border-top: 3px solid #5B3C1C;
	border-bottom: 3px solid #5B3C1C;
	z-index: 6;
}
.character__sublist {
	width:900px;
	margin:0 -20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.character__sublist li {
	width:180px;
	margin:0 20px 36px;
}
.character__sublist li a {
	display: block;
	text-decoration: none;
}
.character__sublist li a .character__sublist--thumb {
	height:180px;
	margin-bottom:20px;
	transition:all 0.3s ease;
}
.character__sublist li a:hover .character__sublist--thumb {
	transform: scale(1.1);
}
#c5 .character__sublist--thumb {
	background:url(../img/character_sub1_thumb.png) no-repeat center center / contain;
}
#c6 .character__sublist--thumb {
	background:url(../img/character_sub2_thumb.png) no-repeat center center / contain;
}
#c7 .character__sublist--thumb {
	background:url(../img/character_sub3_thumb.png) no-repeat center center / contain;
}
#c8 .character__sublist--thumb {
	background:url(../img/character_sub4_thumb.png) no-repeat center center / contain;
}
#c9 .character__sublist--thumb {
	background:url(../img/character_sub5_thumb.png) no-repeat center center / contain;
}
#c10 .character__sublist--thumb {
	background:url(../img/character_sub6_thumb.png) no-repeat center center / contain;
}
#c11 .character__sublist--thumb {
	background:url(../img/character_sub7_thumb.png) no-repeat center center / contain;
}
#c12 .character__sublist--thumb {
	background:url(../img/character_sub8_thumb.png) no-repeat center center / contain;
}
#c2-5 .character__sublist--thumb {
	background:url(../img/character_sub1_thumb.png) no-repeat center center / contain;
}
#c2-6 .character__sublist--thumb {
	background:url(../img/character_sub2_thumb.png) no-repeat center center / contain;
}
#c2-7 .character__sublist--thumb {
	background:url(../img/character_sub3_thumb.png) no-repeat center center / contain;
}
#c2-8 .character__sublist--thumb {
	background:url(../img/character_sub4_thumb.png) no-repeat center center / contain;
}
#c2-9 .character__sublist--thumb {
	background:url(../img/character_sub5_thumb.png) no-repeat center center / contain;
}
#c2-10 .character__sublist--thumb {
	background:url(../img/character_sub6_thumb.png) no-repeat center center / contain;
}
#c2-11 .character__sublist--thumb {
	background:url(../img/character_sub7_thumb.png) no-repeat center center / contain;
}
#c2-12 .character__sublist--thumb {
	background:url(../img/character_sub8_thumb.png) no-repeat center center / contain;
}
#c2-15 .character__sublist--thumb {
	background:url(../img/character_sub15_thumb.png) no-repeat center center / contain;
}
.character__sublist li a .character__sublist--name {
	text-align: center;
}
.character__sublist--name rt {
	transform: translateY(-5px);
}
#characterModal {
	background: #FFF url(../img/bg.png) repeat center center;
	position: fixed;
	z-index: 9890;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	overflow: auto;
	display: none;
}
#characterModal:before {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 199px;
	height: 120px;
	background: url(../img/cm_ht_tl.png) no-repeat center center;
}
#characterModal:after {
	content:'';
	position:absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	background:#FFF;
	z-index:5;
	opacity:0;
	pointer-events: none;
	transition:all 0.3s ease;
}
#characterModal.off:after {
	opacity:1;
	pointer-events: auto;
}
#characterModalin {
	position: absolute;
	left: 0;
	top: 0;
	min-height: 640px;
	min-width: 1200px;
	width: 100%;
	height: 100%;
	overflow: auto;
	z-index: 5;
}
#characterModalin p {
	width: 1000px;
	min-height: 640px;
	height: 100%;
	margin: 0 auto;
	display: flex;
	padding-right: 586px;
	justify-content: center;
	align-items: center;
}
#characterModalin p span {
	width: 100%;
	height: 640px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 95%;
	display: block;
}
#characterFixed {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	min-width: 1200px;
	min-height: 640px;
	pointer-events: none;
}
#characterFixed:after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	width: 171px;
	height: 136px;
	background: url(../img/cm_ht_br.png) no-repeat center center;
}
#characterFixed h2 {
	background-color: #eb4040;
	position: absolute;
	left: 50%;
	top: 0;
	bottom: 0;
	width: 80px;
	margin-left: 360px;
	letter-spacing: 0.2em;
	display: flex;
	align-items: center;
	z-index: 2;
}
#characterFixed h2 div {
	height: 480px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
#characterFixed h2 .cmName {
	font-size: 32px;
	line-height: 80px;
	width: 80px;
	display: block;
	padding-bottom: 50px;
	color: #FFF;
}
.cmKana {
	color:#FFF;
}
#characterFixed h2 .cmVoice {
	background: #FFF;
	display: block;
	width: 24px;
	font-size: 16px;
	color: #000;
	line-height: 24px;
	letter-spacing: 0.05em;
	padding: 13px 0;
	border-top: 3px solid #5B3C1C;
	border-bottom: 3px solid #5B3C1C;
	z-index: 6;
	transform: rotate(0.1deg);
	position: absolute;
	left:-50px;
}
#characterTexts {
	width: 440px;
	margin-left: -150px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateY(-50%) rotate(0.1deg);
}
#characterTexts p {
	line-height: 2;
	margin-bottom: 2em;
}
#characterTexts li {
	line-height: 2;
	min-height: 2em;
}
#characterTexts li strong {
	font-weight: normal;
	color: #eb4040;
	display: inline-block;
	margin-right: 10px;
}
#characterFixed:before {
	content:'';
	position:absolute;
	left:0;
	right:0;
	top:50%;
	height:120px;
	margin-top:-60px;
}
.character__faces {
	padding-top:40px;
}
@keyframes bgloop_c1 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1254px 0;
	}
}
@keyframes bgloop_c2 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -833px 0;
	}
}
@keyframes bgloop_c3 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -997px 0;
	}
}
@keyframes bgloop_c4 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -690px 0;
	}
}
@keyframes bgloop_c5 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1380px 0;
	}
}
@keyframes bgloop_c6 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1146px 0;
	}
}
@keyframes bgloop_c7 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -887px 0;
	}
}
@keyframes bgloop_c8 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1254px 0;
	}
}
@keyframes bgloop_c9 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1254px 0;
	}
}
@keyframes bgloop_c10 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -726px 0;
	}
}
@keyframes bgloop_c11 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -978px 0;
	}
}
@keyframes bgloop_c12 {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: -1169px 0;
	}
}
.c1 #characterFixed h2,.c2-1 #characterFixed h2 {
	background: url(../img/character_1ptn.png) repeat 0 0;
}
.c1 #characterFixed:before,.c2-1 #characterFixed:before {
	background:url(../img/c1_bgtext.png) repeat center left;
	animation: bgloop_c1 20s linear infinite;
}
.c1 #characterModalin p span {
	background-image: url(../img/character_1full.png);
}
.c2-1 #characterModalin p span {
	background-image: url(../img/character_2-1full.png);
}
.c2 #characterFixed h2,.c2-2 #characterFixed h2 {
	background: url(../img/character_2ptn.png) repeat center top;
}
.c2 #characterFixed:before,.c2-2 #characterFixed:before {
	background:url(../img/c2_bgtext.png) repeat center left;
	animation: bgloop_c2 20s linear infinite;
}
.c2 #characterModalin p span {
	background-image: url(../img/character_2full.png);
}
.c2-2 #characterModalin p span {
	background-image: url(../img/character_2-2full.png);
}
.c3 #characterFixed h2,.c2-3 #characterFixed h2 {
	background: url(../img/character_3ptn.png) repeat center top;
}
.c3 #characterFixed:before,.c2-3 #characterFixed:before {
	background:url(../img/c3_bgtext.png) repeat center left;
	animation: bgloop_c3 20s linear infinite;
}
.c3 #characterModalin p span {
	background-image: url(../img/character_3full.png);
}
.c2-3 #characterModalin p span {
	background-image: url(../img/character_2-3full.png);
}
.c4 #characterFixed h2,.c2-4 #characterFixed h2 {
	background: url(../img/character_4ptn.png) repeat center top;
}
.c4 #characterFixed:before,.c2-4 #characterFixed:before {
	background:url(../img/c4_bgtext.png) repeat center left;
	animation: bgloop_c4 20s linear infinite;
}
.c4 #characterModalin p span {
	background-image: url(../img/character_4full.png);
}
.c2-4 #characterModalin p span {
	background-image: url(../img/character_2-4full.png);
}

.c5 #characterFixed:before,.c2-5 #characterFixed:before {
	background:url(../img/c5_bgtext.png) repeat center left;
	animation: bgloop_c5 20s linear infinite;
}
.c5 #characterModalin p span,.c2-5 #characterModalin p span {
	background-image: url(../img/character_5full.png);
}
.c6 #characterFixed:before,.c2-6 #characterFixed:before {
	background:url(../img/c6_bgtext.png) repeat center left;
	animation: bgloop_c6 20s linear infinite;
}
.c6 #characterModalin p span,.c2-6 #characterModalin p span {
	background-image: url(../img/character_6full.png);
}
.c7 #characterFixed:before,.c2-7 #characterFixed:before {
	background:url(../img/c7_bgtext.png) repeat center left;
	animation: bgloop_c7 20s linear infinite;
}
.c7 #characterModalin p span,.c2-7 #characterModalin p span {
	background-image: url(../img/character_7full.png);
}
.c8 #characterModalin p span,.c2-8 #characterModalin p span {
	background-image: url(../img/character_8full.png);
}
.c9 #characterModalin p span,.c2-9 #characterModalin p span {
	background-image: url(../img/character_9full.png);
}
.c10 #characterFixed:before,.c2-10 #characterFixed:before {
	background:url(../img/c10_bgtext.png) repeat center left;
	animation: bgloop_c10 20s linear infinite;
}
.c10 #characterModalin p span,.c2-10 #characterModalin p span {
	background-image: url(../img/character_10full.png);
}
.c11 #characterFixed:before,.c2-11 #characterFixed:before {
	background:url(../img/c11_bgtext.png) repeat center left;
	animation: bgloop_c11 20s linear infinite;
}
.c11 #characterModalin p span,.c2-11 #characterModalin p span {
	background-image: url(../img/character_11full.png);
}
.c12 #characterFixed:before,.c2-12 #characterFixed:before {
	background:url(../img/c12_bgtext.png) repeat center left;
	animation: bgloop_c12 20s linear infinite;
}
.c12 #characterModalin p span,.c2-12 #characterModalin p span {
	background-image: url(../img/character_12full.png);
}
.c2-13 #characterFixed h2 {
	background: url(../img/character_13ptn.png) repeat center top;
}
.c2-13 #characterModalin p span {
	background-image: url(../img/character_13full.png);
}
.c2-13 #characterFixed:before {
	background:url(../img/c13_bgtext.png) repeat center left;
	animation: bgloop_c4 20s linear infinite;
}
.c2-14 #characterFixed h2 {
	background: url(../img/character_14ptn.png) repeat center top;
}
.c2-14 #characterModalin p span {
	background-image: url(../img/character_14full.png);
}
.c2-14 #characterFixed:before {
	background:url(../img/c14_bgtext.png) repeat center left;
	animation: bgloop_c4 20s linear infinite;
}
.c2-15 #characterModalin p span {
	background-image: url(../img/character_15full.png);
}
.c2-15 #characterFixed:before {
	background:url(../img/c15_bgtext.png) repeat center left;
	animation: bgloop_c4 20s linear infinite;
}
#characterClose {
	position: fixed;
	width: 80px;
	height: 80px;
	right: 30px;
	top: 30px;
	z-index: 50;
}
#characterClose a {
	display: block;
	height: 80px;
	position: relative;
	padding-top: 48px;
	line-height: 32px;
	color: #FFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border-radius: 8px;
	background: #5E3B00;
	transition: all 0.3s ease;
}
#characterClose a:hover {
	transform: scale(1.1);
}
#characterClose a:before, #characterClose a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30px;
	width: 42px;
	height: 4px;
	background: #FFF;
	border-radius: 2px;
	margin-left: -21px;
}
#characterClose a:before {
	transform: rotate(45deg);
}
#characterClose a:after {
	transform: rotate(-45deg);
}
.character__inNav {
	position: absolute;
	z-index:80;
	bottom:40px;
	right:40px;
	left:40px;
	display: flex;
	justify-content: space-between;
}
.character__inNav li {
	width: 80px;
}
.character__inNav li a {
	display: block;
	text-decoration: none;
}
.character__inNav li a .cn__thumb {
	width:80px;
	height:80px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	transition:all 0.3s ease;
}
.character__inNav li a:hover .cn__thumb {
	transform: scale(1.1);
}
.character__inNav li a .cn__text {
	line-height: 40px;
	text-align: center;
}
.cn__c1 .cn__thumb {
	background-image: url(../img/character_main1_thumb.png);
}
.cn__c2 .cn__thumb {
	background-image: url(../img/character_main2_thumb.png);
}
.cn__c3 .cn__thumb {
	background-image: url(../img/character_main3_thumb.png);
}
.cn__c4 .cn__thumb {
	background-image: url(../img/character_main4_thumb.png);
}
.cn__c2-1 .cn__thumb {
	background-image: url(../img/character_main2-1_thumb.png);
}
.cn__c2-2 .cn__thumb {
	background-image: url(../img/character_main2-2_thumb.png);
}
.cn__c2-3 .cn__thumb {
	background-image: url(../img/character_main2-3_thumb.png);
}
.cn__c2-4 .cn__thumb {
	background-image: url(../img/character_main2-4_thumb.png);
}
.cn__c5 .cn__thumb {
	background-image: url(../img/character_sub1_thumb.png);
}
.cn__c6 .cn__thumb {
	background-image: url(../img/character_sub2_thumb.png);
}
.cn__c7 .cn__thumb {
	background-image: url(../img/character_sub3_thumb.png);
}
.cn__c8 .cn__thumb {
	background-image: url(../img/character_sub4_thumb.png);
}
.cn__c9 .cn__thumb {
	background-image: url(../img/character_sub5_thumb.png);
}
.cn__c10 .cn__thumb {
	background-image: url(../img/character_sub6_thumb.png);
}
.cn__c11 .cn__thumb {
	background-image: url(../img/character_sub7_thumb.png);
}
.cn__c12 .cn__thumb {
	background-image: url(../img/character_sub8_thumb.png);
}
.cn__c13 .cn__thumb {
	background-image: url(../img/character_main13_thumb.png);
}
.cn__c14 .cn__thumb {
	background-image: url(../img/character_main14_thumb.png);
}
.cn__c15 .cn__thumb {
	background-image: url(../img/character_sub15_thumb.png);
}
.goods__wrap {
	width:840px;
	margin:0 auto;
}
.goods__list {
	display: flex;
	flex-wrap: wrap;
	width:900px;
	margin-left:-30px;
	margin-right:-30px;
	padding-bottom:40px;
}
.goods__list li {
	width:240px;
	border-bottom:2px solid #eb4040;
	margin:0 30px 40px;
	overflow: hidden;
}
.goods__list a {
	height:100%;
	display: block;
	text-decoration: none;
}
.goods__thumb {
	height:240px;
	margin-bottom: 12px;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	background:#FFF;
	border-radius: 16px;
}
.goods__thumb img {
	max-width: 240px;
	max-height:240px;
	height:auto;
	width: auto;
	display: block;
	transition: all 0.5s ease;
}
.goods__list a:hover .goods__thumb img {
	transform: scale(1.1);
}
.goods__name {
	line-height: 2;
	padding-bottom:12px;
}
.goods__wrap article {
	padding-bottom:72px;
}
.goods__wrap article h3 {
	height: auto;
    display: block;
    flex-direction:initial;
    justify-content:initial;
    align-items:initial;
	line-height: 2;
	color:#000;
	font-size:20px;
	border-bottom:2px solid #eb4040;
	padding-bottom:16px;
	margin-bottom:40px;
}
.goods__imgs {
	display: flex;
	margin:0 -20px;
	justify-content: center;
	flex-wrap: wrap;
}
.goods__imgs li {
	width:400px;
	margin:0 20px 40px;
	justify-content: center;
	align-items: center;
}
.goods__imgs li img {
	max-width: 100%;
}
.goods__spec {
	padding:16px 40px;
	background: #FFF;
	border-radius: 16px;
	margin-bottom:32px;
}
.goods__spec div {
	height:32px;
	display: flex;
}
.goods__spec dt {
	line-height: 2;
	width:110px;
	color:#eb4040;
}
.goods__spec dd {
	line-height: 2;
	flex:1;
}
.goods__text {
	line-height:2;
	padding:0 40px;
}
.special__wrap {
	width:840px;
	margin:0 auto;
}
.special__wrap ul {
    margin-bottom: 80px;
}
.special__wrap li a {
    padding: 30px 0 15px;
    display: block;
    color: #222;
    text-decoration: none;
    transition: all 0.3s ease;
}
.special__list {
	display: flex;
	flex-wrap: wrap;
	width:900px;
	margin-left:-30px;
	margin-right:-30px;
	padding-bottom:40px;
}
.special__list li {
	width:240px;
	border-bottom:2px solid #eb4040;
	margin:0 30px 40px;
	overflow: hidden;
}
.special__list a {
	height:100%;
	display: block;
	text-decoration: none;
}
.special__thumb {
	height:240px;
	margin-bottom: 12px;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	background:#FFF;
	border-radius: 16px;
}
.special__thumb img {
	max-width: 240px;
	max-height:240px;
	height:auto;
	width: auto;
	display: block;
	transition: all 0.5s ease;
}
.special__list a:hover .special__thumb img {
	transform: scale(1.1);
}
.special__name {
	line-height: 2;
	padding-bottom:12px;
}
.special__wrap article {
	padding-bottom:72px;
}
.special__wrap article h3 {
	height: auto;
    display: block;
    flex-direction:initial;
    justify-content:initial;
    align-items:initial;
	line-height: 2;
	color:#000;
	font-size:20px;
	border-bottom:2px solid #eb4040;
	padding-bottom:16px;
	margin-bottom:40px;
}
.special__imgs {
	display: flex;
	margin:0 -20px;
	justify-content: center;
	flex-wrap: wrap;
}
.special__imgs li {
	width:400px;
	margin:0 20px 40px;
	justify-content: center;
	align-items: center;
}
.special__imgs li img {
	max-width: 100%;
}
.special__spec {
	padding:16px 40px;
	background: #FFF;
	border-radius: 16px;
	margin-bottom:32px;
}
.special__spec div {
	height:32px;
	display: flex;
}
.special__spec dt {
	line-height: 2;
	width:110px;
	color:#eb4040;
}
.special__spec dd {
	line-height: 2;
	flex:1;
}
.special__text {
	line-height:2;
	padding:0 40px;
}
.story__wrap article {
	width:840px;
	margin:0 auto 60px;
}
.story__anime--imgwrap,
.story__la--imgwrap {
	margin-bottom: 20px;
}
.story__anime--img,
.story__la--img {
	min-height:472px;
}
.story__anime--img img,
.story__la--img img {
	width:840px;
	height:auto;
}
.story__anime--imgs {
	display: flex;
	flex-wrap: wrap;
}
.story__anime--imgs li {
	width:168px;
}
.story__anime--imgs li a {
	display: block;
	position:relative;
}
.story__anime--imgs li a img {
	width:168px;
	height:auto;
	display: block;
}
.story__anime--imgs li a:before {
	content:'';
	position: absolute;
	left:0;
	right:0;
	top:0;
	bottom:0;
	border:4px solid #eb4040;
	opacity: 0;
	transition:all 0.3s ease;
}
.story__anime--imgs li a:hover:before,
.story__anime--imgs li a.active:before {
	opacity: 1;
}
.story__wrap article h3 {
	height: auto;
    display: block;
    flex-direction:initial;
    justify-content:initial;
    align-items:initial;
	line-height: 2;
	margin-bottom: 1em;
	color:#eb4040;
	font-size:24px;
}
.story__anime--text,
.story__la--text {
	line-height: 2;
	margin-bottom:10px;
}
.story__anime--staff,
.story__la--staff {
	display: flex;
	flex-wrap: wrap;
}
.story__anime--staff li,
.story__la--staff li {
	margin-right:20px;
	font-size:14px;
	line-height:2;
}
#goodsModal {
	position: fixed;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	overflow: auto;
	background:#FFF;
	z-index:9999;
	background-image: url(../img/bg.png);
	background-repeat:repeat;
	background-size:auto auto;
	background-attachment:scroll;
	background-position: center center;
	display: none;
}
.goodsModalin {
	position: absolute;
	min-width: 100%;
	min-height:100%;
	display: flex;
	justify-content: center;
	align-items:center;
}
.goodsModalin .subcontent {
	padding:0px;
}
.goodsModalin .subcontent:before,
.goodsModalin .subcontent:after {
	display: none;
}
.goodsModalin .goods__wrap {
	padding:80px 0;
}
#goodsClose {
	position: fixed;
	width: 80px;
	height: 80px;
	right: 30px;
	top: 30px;
	z-index: 50;
}
#goodsClose a {
	display: block;
	height: 80px;
	position: relative;
	padding-top: 48px;
	line-height: 32px;
	color: #FFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border-radius: 8px;
	background: #5E3B00;
	transition: all 0.3s ease;
}
#goodsClose a:hover {
	transform: scale(1.1);
}
#goodsClose a:before, #goodsClose a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30px;
	width: 42px;
	height: 4px;
	background: #FFF;
	border-radius: 2px;
	margin-left: -21px;
}
#goodsClose a:before {
	transform: rotate(45deg);
}
#goodsClose a:after {
	transform: rotate(-45deg);
}

#specialModal {
	position: fixed;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	overflow: auto;
	background:#FFF;
	z-index:9999;
	background-image: url(../img/bg.png);
	background-repeat:repeat;
	background-size:auto auto;
	background-attachment:scroll;
	background-position: center center;
	display: none;
}
.specialModalin {
	position: absolute;
	min-width: 100%;
	min-height:100%;
	display: flex;
	justify-content: center;
	align-items:center;
}
.specialModalin .subcontent {
	padding:0px;
}
.specialModalin .subcontent:before,
.specialModalin .subcontent:after {
	display: none;
}
.specialModalin .special__wrap {
	padding:80px 0;
}
#specialClose {
	position: fixed;
	width: 80px;
	height: 80px;
	right: 30px;
	top: 30px;
	z-index: 50;
}
#specialClose a {
	display: block;
	height: 80px;
	position: relative;
	padding-top: 48px;
	line-height: 32px;
	color: #FFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border-radius: 8px;
	background: #5E3B00;
	transition: all 0.3s ease;
}
#specialClose a:hover {
	transform: scale(1.1);
}
#specialClose a:before, #specialClose a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30px;
	width: 42px;
	height: 4px;
	background: #FFF;
	border-radius: 2px;
	margin-left: -21px;
}
#specialClose a:before {
	transform: rotate(45deg);
}
#specialClose a:after {
	transform: rotate(-45deg);
}

/*---*/

#bdModal {
	position: fixed;
	top:0;
	left: 0;
	right:0;
	bottom:0;
	overflow: auto;
	background:#FFF;
	z-index:9999;
	background-image: url(../img/bg.png);
	background-repeat:repeat;
	background-size:auto auto;
	background-attachment:scroll;
	background-position: center center;
	display: none;
}
.bdModalin {
	position: absolute;
	min-width: 100%;
	min-height:100%;
	display: flex;
	justify-content: center;
	align-items:center;
}
.bdModalin .subcontent {
	padding:0px;
}
.bdModalin .subcontent:before,
.bdModalin .subcontent:after {
	display: none;
}
.bdModalin .goods__wrap {
	padding:80px 0;
}
.bdModalin .special__wrap {
	padding:80px 0;
}
#bdClose {
	position: fixed;
	width: 80px;
	height: 80px;
	right: 30px;
	top: 30px;
	z-index: 50;
}
#bdClose a {
	display: block;
	height: 80px;
	position: relative;
	padding-top: 48px;
	line-height: 32px;
	color: #FFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border-radius: 8px;
	background: #5E3B00;
	transition: all 0.3s ease;
}
#bdClose a:hover {
	transform: scale(1.1);
}
#bdClose a:before, #bdClose a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30px;
	width: 42px;
	height: 4px;
	background: #FFF;
	border-radius: 2px;
	margin-left: -21px;
}
#bdClose a:before {
	transform: rotate(45deg);
}
#bdClose a:after {
	transform: rotate(-45deg);
}
.bd__wrap {
	width:840px;
	margin:0 auto;
}
.bd__list {
	display: flex;
	flex-wrap: wrap;
	width:900px;
	margin-left:-30px;
	margin-right:-30px;
	padding-bottom:40px;
}
.bd__list li {
	width:240px;
	border-bottom:2px solid #eb4040;
	margin:0 30px 40px;
	overflow: hidden;
}
.bd__list a {
	height:100%;
	display: block;
	text-decoration: none;
}
.bd__thumb {
	height:auto;
	margin-bottom: 12px;
	overflow: hidden;
	display: flex;
	justify-content: center;
	align-items: center;
	background:#FFF;
	border-radius: 16px;
}
.bd__thumb img {
	max-width: 240px;
	height:auto;
	width: auto;
	display: block;
	transition: all 0.5s ease;
}
.bd__list a:hover .bd__thumb img {
	transform: scale(1.1);
}
.bd__name {
	line-height: 2;
	padding-bottom:12px;
}
.bd__wrap {
	width:840px;
	margin:0 auto;
}
.bd__wrap article {
	padding-bottom:72px;
}
.bd__wrap article h3 {
	height: auto;
	display: block;
	flex-direction:initial;
	justify-content:initial;
	align-items:initial;
	line-height: 2;
	color:#000;
	font-size:20px;
	border-bottom:2px solid #eb4040;
	padding-bottom:16px;
	margin-bottom:40px;
}
.bd__imgs {
	display: flex;
	margin:0 -20px;
	justify-content: center;
	flex-wrap: wrap;
}
.bd__imgs li {
	width:auto;
	max-width: 840px;
	margin:0 20px 40px;
	justify-content: center;
	align-items: center;
}
.bd__imgs li img {
	max-width: 100%;
}
.bd__title{
	font-size: 20px;
	line-height: 34px;
	padding-bottom: 7px;
	border-bottom: 2px solid #222;
	position: relative;
	color: #eb4040;
	margin-bottom: 40px;
}
.bd__spec {
	padding:16px 40px;
	background: #FFF;
	border-radius: 16px;
	margin-bottom:32px;
}
.bd__spec div {
	height:32px;
	display: flex;
}
.bd__spec dt {
	line-height: 2;
	width:110px;
	color:#eb4040;
}
.bd__spec dd {
	line-height: 2;
	flex:1;
}
.bd__text {
	line-height:2;
	padding:0 40px;
}
.bd__img{
	display: block;
	margin: 20px 0 30px;
}
.bd_in_ue{
	margin-top: 40px;
}
#support .subcontent h2 .en {
	font-size:130px;
}
.support__wrap {
	width:860px;
	margin:0 auto;
	z-index:4;
	position: relative;
}
.supportLists{
	display: flex;
	flex-wrap: wrap;
	position: relative;
	margin-bottom: 60px;
}
.supportLists:last-of-type{
	margin-bottom: 0;
}
.supportLists:after{
	content: '';
	position: absolute;
	width: 100%;
	bottom: 0;
	height: 2px;
	background: #ccc;
}
.supportList{
	font-size: 20px;
	color: #eb4040;
	height: 85px;
	display: flex;
	align-items: center;
	width: 100%;
	border-bottom: 2px solid #cccccc;
}
.supportList a{
	color: #eb4040;
}

/* add css - special */
.modalSpecialWrap {
	width: 840px;
  margin: 0 auto;
	padding: 80px 0;
}
.normalContTitle {
	line-height: 2;
	color: #000;
	font-size: 20px;
	border-bottom: 2px solid #eb4040;
	padding-bottom: 16px;
	margin-bottom: 40px;
}
.normalContLists {
	display: flex;
	flex-wrap: wrap;
}
.normalContLists > li {
	width: calc((100% - 40px) / 2);
	margin-bottom: 40px;
}
.normalContLists > li:not(:nth-child(2n + 1)) {
	margin-left: 40px;
}
.normalContLists > li > a {
	display: block;
}
.normalContLists > li > a > img {
	width: 100%;
	transition: transform .5s ease;
}
.normalContLists > li > a:hover > img {
	transform: scale(1.1);
}
.normalContLists > li > p {
	padding: 20px 0;
	text-align: center;
	color: #eb4040;
	line-height: 1.6;
}

.onModalWrap {
	-webkit-overflow-scrolling: touch;
	background: rgba(0,0,0,.6);
	display: none;
	overflow: auto;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999;
}
.onModal {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 1200px;
	min-height: 100%;
	margin: 0 auto;
	position: relative;
}
.onModal__in {
	padding: 20px 0;
}
.stepImgWrap {
	width: 1200px;
}
.stepImgWrap img {
	width: 100%;
}
.onModal__close {
	position: fixed;
	width: 80px;
	height: 80px;
	right: 30px;
	top: 30px;
	z-index: 50;
}
.onModal__close a {
	display: block;
	height: 80px;
	position: relative;
	padding-top: 48px;
	line-height: 32px;
	color: #FFF;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border-radius: 8px;
	background: #5E3B00;
	transition: all 0.3s ease;
}
.onModal__close a:hover {
	transform: scale(1.1);
}
.onModal__close a:before, .onModal__close a:after {
	content: '';
	position: absolute;
	left: 50%;
	top: 30px;
	width: 42px;
	height: 4px;
	background: #FFF;
	border-radius: 2px;
	margin-left: -21px;
}
.onModal__close a:before {
	transform: rotate(45deg);
}
.onModal__close a:after {
	transform: rotate(-45deg);
}
.content__nav {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
	margin:0 auto 60px;
	max-width:1000px;
}
#introduction .content__nav {
	padding-right:80px;
	margin-bottom: 20px;
}
.content__nav li {
	width: 160px;
	margin:0 10px;
}
.content__nav li a {
	height:40px;
	border-radius: 20px;
	display: block;
	line-height: 40px;
	text-align: center;
	color:#FFF;
	background:#5e3b00;
	text-decoration: none;
	transition:all 0.3s ease;
	padding:0 20px;
}
.content__nav li a.soon {
	pointer-events: none;
	opacity:0.3;
}
.content__nav li a:hover,
.content__nav li a.active {
	background:#eb4040;
}
.content__nav :first-child a:hover,
.content__nav :first-child a.active {
	background:#f39800;
}
.com{
	font-size: 32px;
	font-weight: bold;
	text-align: center;
	margin: 160px 0;
}
.sMap span{
	font-size: 20px;
	font-weight: bold;
	color: #eb4040;
	display: block;
	border-bottom: #5E3B00 2px solid;
	margin-bottom: 12px;
}
.sMap a{
	color: #f39800;
}
.mt40{
	margin-top: 40px;
}