﻿/* =================================
	TBS Reset CSS
================================= */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,main {margin:0;padding:0;border:0;font-size:100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main {display:block;}
body {font-family:Verdana,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1;}
ol,ul {list-style:none;}
blockquote,q {quotes:none;}
blockquote:before,blockquote:after,q:before,q:after {content:'';content:none;}
table {border-collapse:collapse;border-spacing:0;}
wbr:after {content:"\00200B";}

/*	TBS reset
============================== */
.alt {position:absolute;top:-5000px;left:-9999px;}
.clearfix:after {content:"";clear:both;display:block;}
.hide-txt {text-indent:110%;white-space:nowrap;overflow:hidden;}
.fp-causion {display:none;}
.nocontxt {-webkit-touch-callout: none;-webkit-user-select: none;user-select: none;-webkit-user-drag:none;}
.nocontxt img {pointer-events: none;}
@media all and (min-width:768px) {
.alt-pc {position:absolute;top:-5000px;left:-9999px;}
.clearfix-pc:after {content:"";clear:both;display:block;}
.hide-txt-pc {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
@media all and (max-width:767px) {
.alt-smp {position:absolute;top:-5000px;left:-9999px;}
.clearfix-smp:after {content:"";clear:both;display:block;}
.hide-txt-smp {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
div.embed-tbsplayer {
background-color:#000;
position:relative;
height:0;
padding-top:56.25%;
}
div.embed-tbsplayer .tbs-player {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
}
div.embed-tbsplayer-audio {
background-color:#fff;
}
div.embed-tbsplayer-audio .tbs-player {
height:46px;
}
div.lbx-overlay {
z-index:10000;position:absolute;background-color:#000;width:100%;height:100%;left:0;top:0;right:0;bottom:0;opacity:0.9;
}

/* div#bn_super {
	border-bottom:1px solid #c0c4ce;
} */


/* =================================
	keyframes
================================= */
@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@-webkit-keyframes fadeInUp {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0, 20%, 0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
	}
}
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 20%, 0);
	}
	to {
		opacity: 1;
		transform: none;
	}
}



/* =================================
	Web Fonts
================================= */
@font-face {
	font-family: 'Mouse Memoirs';
	src: url('/um/library/fonts/Mouse_Memoirs/MouseMemoirs-Regular.ttf') format("truetype");
}

div.menu nav ul li span a:before,
div.unit > article > header h1:before,
div.story article header h2, div.story article header p,
div.wnew section h2 span,
div.tbs-topics article header h2,
.idx div.cover div.sns > aside div section > h3,
section.story-bn ul li span a.lazy-done:before {
	font-family:'Mouse Memoirs', sans-serif;
	font-weight:normal;
	letter-spacing:0.05em;
	text-indent:0.05em;
}
.idx div.cover div.sns {
	background-color:hsla(53,100%,73%,0.8);
}

.sticky {
	opacity: 0;
}
main .sticky-done {
	-webkit-animation-duration: 0.75s;
	animation-duration: 0.75s;
	-webkit-animation-name: fadeIn;
	animation-name: fadeIn;
}


/* =================================
	CSS
================================= */

/* link */
a:link {
	text-decoration:underline;
	color:#913baa;
}
a:visited {
	text-decoration:none;
	color:#913baa;
}
a:active {
	text-decoration:none;
	color:#913baa;
}
a:hover {
	text-decoration:underline;
	color:#913baa;
}

.xxl {
	font-size:150%;
}
.xl {
	font-size:125%;
}
.l {
	font-size:112.5%;
}
.s {
	font-size:83%;
}
.xs {
	font-size:75%;
}
.xxs {
	font-size:62.5%;
}

@media all and (max-width: 374px) {
.xl, .xxl {
	font-size:112.5%;
}
.s, .xs {
	font-size:62.5%;
}
}
@media all and (min-width: 768px) {
.br-smp {
	display:none;
}
}
.ff {
	font-family:serif;
}
.lazy {
	display:block;
	position:relative;
}
.wbr {
	white-space: nowrap;
	display: inline-block;
}


/*	copyright
============================== */
div.copyright p {
	line-height:1.25;
	text-align:center;
}
div.copyright p > small {
	display:block;
}
@media all and (min-width: 768px) {
	div.copyright p {
		font-size:75%;
	}
	div.copyright p > small {
		padding:40px 0 40px;
	}
	div.copyright p a:hover {
		text-decoration:none;
	}
}
@media all and (max-width: 767px) {
	div.copyright p {
		font-size:62.5%;
	}
	div.copyright p > small {
		padding:30px 12px 30px;
	}
}


/*	background
============================== */
body {
	color:#000;
	text-align:center;
	-webkit-text-size-adjust:100%;
	-ms-text-size-adjust: 100%;
	font-family:"ヒラギノ角ゴ ProN W3",Hiragino Kaku Gothic ProN,Arial,"メイリオ",Meiryo,sans-serif;
}
div.fix-bg {
	width: 100%;
	height: 100%;
	position: fixed;
	background-repeat:no-repeat;
	background-position:center center;
	background-size: cover;
	z-index: -1;
	background-color:#ff99b2;
}
div.fix-bg span {
	display:block;
	position:absolute;
	left:0;
	top:0;
	width: 100%;
	height: 100%;
	background-color:hsla(344,100%,83%,0.6);
}
div.cover {
	/**/
	font-family: tbudrgothic-std, sans-serif;
	font-style: normal;
	font-weight:400;
	/**/
	-moz-font-feature-settings: "palt";
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	overflow:hidden;
}
@media all and (min-width: 768px) {
div.fix-bg {
	background-image: url(../img/bg_pc.png?0);
}
div.cover {
}
}
@media all and (max-width: 767px) {
div.fix-bg {
	background-image: url(../img/bg_smp.png?0);
}
div.cover {
	min-width:320px;
}
}

/*	menu
============================== */
div.menu {
	background-color:hsla(144,66%,70%,0.9);
}
div.menu nav {
	text-align:left;
}
div.menu nav ul li {
	float:left;
}
div.menu nav ul li span,
div.menu nav ul li a {
	display:block;
}
div.menu nav ul li span a {
	color:#fff;
	text-align:center;
	text-decoration:none;
	background-color:#50c88c;
	border:solid 2px #dbf226;
	background-image:-webkit-radial-gradient(hsla(0,0%,100%, 0.2) 30%, transparent 0%), -webkit-radial-gradient(hsla(0,0%,100%, 0.2) 30%, transparent 0%);
	background-image:radial-gradient(hsla(0,0%,100%, 0.2) 30%, transparent 0%), radial-gradient(hsla(0,0%,100%, 0.2) 30%, transparent 0%);
	background-size:10px 10px;
	background-position:0 0, 5px 5px;
}
div.menu nav ul li span a:before {
	display:block;
	color:#fff;
	text-shadow:1px 1px 0 #000, -1px 1px 0 #000, -1px -1px 0 #000, 1px -1px 0 #000, 2px 3px 0 #000;
	line-height:1.25;
}

div.menu nav ul li.about span a:before {
	content:"About";
}
div.menu nav ul li.staff span a:before {
	content:"Cast & Staff";
}
div.menu nav ul li.story span a:before {
	content:"Story";
}
div.menu nav ul li.chara span a:before {
	content:"Character";
}
div.menu nav ul li.onair span a:before {
	content:"On Air";
}
div.menu nav ul li.news span a:before {
	content:"News";
}
div.menu nav ul li span a span {
	display:inline-block;
	line-height:1.5;
	color:#000;
	padding:0 0.5em;
}
div.menu nav ul li:nth-child(odd) span a span {
	background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), color-stop(0.5, transparent), color-stop(0.5, hsla(330,100%,80%,0.9)), to(hsla(330,100%,80%,0.9)));
	background-image: linear-gradient(transparent 50%, hsla(330,100%,80%,0.9) 50%);
	background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), color-stop(0.5, transparent), color-stop(0.5, hsla(66,88%,54%,0.9)), to(hsla(66,88%,54%,0.9)));
	background-image: linear-gradient(transparent 50%, hsla(66,88%,54%,0.9) 50%);
}
div.menu nav ul li:nth-child(even) span a span {
	background-image: -webkit-gradient(linear, center top, center bottom, from(transparent), color-stop(0.5, transparent), color-stop(0.5, hsla(66,88%,54%,0.9)), to(hsla(66,88%,54%,0.9)));
	background-image: linear-gradient(transparent 50%, hsla(66,88%,54%,0.9) 50%);
}
div.menu nav ul li > span {
	border-color:transparent;
	border-style:solid;
}
.about div.menu nav ul li.about span a:before,
.story div.menu nav ul li.story span a:before,
.caststaff div.menu nav ul li.staff span a:before,
.character div.menu nav ul li.chara span a:before,
.news div.menu nav ul li.news span a:before {
	color:#4ef4ff;
}
/*
div.menu nav ul li:nth-last-child(2) {
	opacity:0.3;
}
div.menu nav ul li:nth-last-child(2) span a {
	cursor:default;
}
*/

@media all and (min-width: 768px) {
div.menu {
	border-top:10px solid transparent;
	border-bottom:10px solid transparent;
}
div.menu nav {
	max-width:1080px;
	margin:0 auto;
}

div.menu nav ul li {
	width:19%;
}
div.menu nav ul li:nth-child(2) {
	width:24%;
}
div.menu nav ul li:nth-child(5n-4) > span {
	border-right-width:4px;
}
div.menu nav ul li:nth-child(5n-3) > span {
	border-left-width:1px;
	border-right-width:3px;
}
div.menu nav ul li:nth-child(5n-2) > span {
	border-left-width:2px;
	border-right-width:2px;
}
div.menu nav ul li:nth-child(5n-1) > span {
	border-left-width:3px;
	border-right-width:1px;
}
div.menu nav ul li:nth-child(5n) > span {
	border-left-width:4px;
}
/*
div.menu nav ul li {
	width:25%;
}
div.menu nav ul li:nth-child(4n-3) > span {
	border-right-width:3px;
}
div.menu nav ul li:nth-child(4n-2) > span {
	border-left-width:1px;
	border-right-width:2px;
}
div.menu nav ul li:nth-child(4n-1) > span {
	border-left-width:2px;
	border-right-width:1px;
}
div.menu nav ul li:nth-child(4n) > span {
	border-left-width:3px;
}
*/
div.menu nav ul li span a {
	padding:0.75em 0 1.25em;
}
}
@media all and (min-width: 980px) {
div.menu nav ul li span a:before {
	font-size:300%;
}
div.menu nav ul li span a span {
	font-size:100%;
}
}
@media all and (min-width: 768px) and (max-width: 979px) {
div.menu nav ul li span a:before {
	font-size:5vw;
	font-size:250%;
}
div.menu nav ul li span a span {
	font-size:87.5%;
}
}
@media all and (max-width: 767px) {
div.menu nav ul {
	padding:6px 10px;
}
div.menu nav ul li {
	width:50%;
}
div.menu nav ul li:nth-child(1),div.menu nav ul li:nth-child(2) {
	border-bottom:6px solid transparent;
}
div.menu nav ul li:nth-child(3),div.menu nav ul li:nth-child(4),div.menu nav ul li:nth-child(5) {
	width:33.333333333333333%;
}
div.menu nav ul li:nth-child(1) > span {
	border-right-width:3px;
}
div.menu nav ul li:nth-child(2) > span {
	border-left-width:3px;
}
div.menu nav ul li:nth-child(3) > span {
	border-right-width:4px;
}
div.menu nav ul li:nth-child(4) > span {
	border-left-width:2px;
	border-right-width:2px;
}
div.menu nav ul li:nth-child(5) > span {
	border-left-width:4px;
}

/*
div.menu nav ul li:nth-child(1),div.menu nav ul li:nth-child(2) {
	border-bottom:6px solid transparent;
}
div.menu nav ul li:nth-child(1) > span {
	border-right-width:3px;
}
div.menu nav ul li:nth-child(2) > span {
	border-left-width:3px;
}
div.menu nav ul li:nth-child(3) > span {
	border-right-width:3px;
}
div.menu nav ul li:nth-child(4) > span {
	border-left-width:3px;
}
*/
div.menu nav ul li span a {
	padding:0.25em 0 0.5em;
}
div.menu nav ul li span a:before {
	font-size:7.5vw;
}
div.menu nav ul li span a span {
	font-size:3vw;
}
}

/*	YouTube
============================== */
div.mov-inner {
	position:relative;
	height:0;
	padding-top:56.25%;
	background-color:#000;
	background-size:cover;
}
div.mov-inner iframe {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
@media print {
div.mov-inner {
	display:none;
}
}

/*	YouTube buttons
============================== */
ul.yt-lists {
	width:100%;
	background-color:#000;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
ul.yt-lists li {
	float:left;
}
ul.yt-lists li span, ul.yt-lists li span a {
	display:block;
}
ul.yt-lists li span a {
	text-decoration:none;
	background-color:#fff;
	padding:1em;
	line-height:1.5;
	position:relative;
	text-align:center;
}
ul.yt-lists li span a.yt-playing {
	background-color:#f0d7dc;
}
ul.yt-lists li span a.yt-playing span {
	font-weight:bold;
	color:#d4227b;
}
ul.yt-lists li span a.yt-playing:after {
	content:"NOW PLAYING";
	background-color:yellow;
	/**/
	font-family: 'Roboto', sans-serif;
	font-weight: 400;
	/**/
	color:#000;
	display:inline-block;
	line-height:1.25;
	font-size:62.5%;
	padding:0.2em 0.75em;
	position:absolute;
	top:-4px;
	right:-4px;
}
@media all and (min-width: 768px) {


ul.yt-lists {
	padding:8px;
}
ul.yt-lists li {
	width:50%;
}
ul.yt-lists li:nth-child(odd) > span {
	margin-right:4px;
}
ul.yt-lists li:nth-child(even) > span {
	margin-left:4px;
}

/* case => 3
ul.yt-lists {
	padding:9px;
}
ul.yt-lists li {
	width:33.333333333333333%;
}
ul.yt-lists li:nth-child(3n-2) > span {
	margin-right:6px;
}
ul.yt-lists li:nth-child(3n-1) > span {
	margin-left:3px;
	margin-right:3px;
}
ul.yt-lists li:nth-child(3n) > span {
	margin-left:6px;
}
*/

/* case => 4
ul.yt-lists {
	padding:8px;
}
ul.yt-lists li {
	width:25%;
}
ul.yt-lists li:nth-child(4n-3) > span {
	margin-right:6px;
}
ul.yt-lists li:nth-child(4n-2) > span {
	margin-left:2px;
	margin-right:4px;
}
ul.yt-lists li:nth-child(4n-1) > span {
	margin-left:4px;
	margin-right:2px;
}
ul.yt-lists li:nth-child(4n) > span {
	margin-left:6px;
}
*/
ul.yt-lists li span a span {
	font-size:112.5%;
}
}
@media all and (max-width: 767px) {
ul.yt-lists {
	padding:8px 8px 0;
}
ul.yt-lists li {
	width:50%;
	margin-bottom:8px;
}
ul.yt-lists li:nth-child(odd) > span {
	margin-right:4px;
}
ul.yt-lists li:nth-child(even) > span {
	margin-left:4px;
}
ul.yt-lists li span a span {
	font-size:87.5%;
}
}

/*	p.lines
============================== */
p.lines {
	background-position:left bottom;
	background-repeat:repeat;
	text-align:justify;
	text-justify:inter-ideograph;
	padding:0 0.75em;
}
@media all and (min-width: 768px) {
p.lines {
	font-size:112.5%;
	background-image:url(../img/line36.png);
	line-height:36px;
	background-size:36px 36px;
}
p.lines:not(:last-child) {
	margin-bottom:36px;
}
}
@media all and (max-width: 767px) {
p.lines {
	font-size:100%;
	background-image:url(../img/line30.png);
	line-height:30px;
	background-size:30px 30px;
}
p.lines:not(:last-child) {
	margin-bottom:30px;
}
}


/*	.pagetop
============================== */
div.pagetop {
	position:fixed;
	transition: right ease 1s;
	display:none;
	z-index:2;
}
div.pagetop a {
	display:block;
	background-image:url(../img/btn_pagetop.png?0);
	background-size:cover;
	text-indent:110%;white-space:nowrap;overflow:hidden;
}
@media all and (min-width: 768px) {
div.pagetop {
	bottom:20px;
}
div.pagetop-on {
	right:10px;
}
div.pagetop-off {
	right:-100px;
}
div.pagetop a {
	width:100px;
	height:100px;
}
}
@media all and (max-width: 767px) {
div.pagetop {
	bottom:72px;
}
div.pagetop-on {
	right:6px;
}
div.pagetop-off {
	right:-70px;
}
div.pagetop a {
	width:68px;
	height:68px;
}
}


