@charset "utf-8";
/*/////////////////////////////////////////////////////////////////////////
TVer 2021 (max-width:767px)
/////////////////////////////////////////////////////////////////////////*/
* { margin:0; padding:0; box-sizing:border-box;}
html, body { height:100%;}
html { font-family:-apple-system, BlinkMacSystemFont, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;}
body { font-size:62.5%; line-height:1; -webkit-text-size-adjust:100%;}
h1, h2, h3, h4, h5, h6 { font-size:100%; font-weight:normal;}
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary { display:block;}
audio,canvas,progress,video { display:inline-block;}
a,embed,object { outline:none;}
img { border:none; box-sizing:content-box;}
hr { display:none;}
li { list-style:none;}
a { background-color:transparent;}

/*@common
/////////////////////////////////////////////////////////////////////*/
body { color:#0a0a0a; letter-spacing:0.02em;}
a { color:#0a0a0a; text-decoration:none; transition:all 0.2s;}
input, button, textarea, select {
	border:none; border-radius:0; outline:none;
	background:none; vertical-align:baseline; font-family:inherit;
	-webkit-appearance:none; appearance:none;
	transition:all 0.25s;
}
#container { overflow:hidden; background:#fff;}
#contents { overflow:hidden; padding-top:80px;}

/*header*/
#globalheader {
	width:100%; height:80px;
	position:fixed; top:0; left:0; z-index:999;
	box-shadow:0 2px 6px rgba(0, 0, 0, 0.08);
	}
	#globalheader .headinner { height:100%; background:#fff;}
	#globalheader h1 { width:80px; height:45px; position:relative;}
	#globalheader h1:before {
		content:""; display:block; width:56px; height:30px;
		background:url(../img/tver_logo.png) no-repeat;
		background-size:contain;
		position:absolute; top:8px; left:10px;
	}
	#globalheader h1 a {
		display:block; width:60px; height:100%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:8px; z-index:10;
	}
.idx #globalheader:not(.fixed) { box-shadow:none;}
.idx #globalheader h1 { text-indent:110%; white-space:nowrap; overflow:hidden;}
.video:not(.special) #globalheader { position:absolute; box-shadow:none;}
/*nav*/
#globalnav {
	width:100%; text-align:left;
	position:absolute; top:45px; right:0;
	}
	/*nav1*/
	#globalnav .nav1 {
		width:100%; height:35px;
		background:#fff; border-top:1px solid #eee;
		overflow:hidden;
	}
	#globalnav .nav1 .scrl {
		width:100%; height:60px;
		overflow-x:auto; -webkit-overflow-scrolling:touch;
	}
	#globalnav .nav1 ul {
		display:-webkit-box; -webkit-box-align:center;
		display:flex; align-items:center;
		padding:0 5px;
	}
	#globalnav .nav1 li { padding:0 6px;}
	#globalnav .nav1 li a {
		display:-webkit-box; -webkit-box-align:center;
		display:flex; align-items:center;
		height:35px; font-size:13px; line-height:1.5; white-space:nowrap;
		padding:0 2px; transition:none; position:relative;
	}
	#globalnav .nav1 li a.this { color:#40b8dc;}
	#globalnav .nav1 li a.this:after {
		content:""; display:block; width:100%; height:3px;
		background:#40b8dc;
		position:absolute; bottom:0; left:50%;
		margin:0 0 1px -50%;
	}
	/*nav2*/
	#globalnav .nav2 { position:absolute; top:-36px; left:78px;}
	#globalnav .nav2 .nav2-1 { font-size:0;}
	#globalnav .nav2 .nav2-1 li { display:inline-block; vertical-align:top; margin-right:2px;}
	/*.sp #globalnav .nav2 .nav2-1 li.m1 { display:none;}*/
	#globalnav .nav2 .nav2-1 li a {
		display:block; width:30px; height:30px; position:relative;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	#globalnav .nav2 .nav2-1 li a:before {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/parts_icon.png) no-repeat;
		background-size:300px auto;
		position:absolute; top:50%; left:50%;
		margin:-9px 0 0 -10px;
	}
	#globalnav .nav2 .nav2-1 li.m1 a:before { background-position:0 -80px;}
	#globalnav .nav2 .nav2-1 li.m2 a:before { background-position:0 -105px;}
	#globalnav .nav2 .nav2-1 li.m3 a:before { background-position:-25px -105px;}
	#globalnav .nav2 .nav2-1 li.m4 a:before { background-position:-25px -80px;}
	#globalnav .nav2 .nav2-2 { display:none;}
/*search*/
#globalnav .searchbox { width:38%; height:28px; position:absolute; top:-36px; right:10px;}
	#globalnav .searchbox label {
		display:inline-block; width:100%;
		font-size:12px; line-height:1.6; color:#bbb; white-space:nowrap;
		background:#efefef; border-radius:50px; overflow:hidden;
		padding:.38em 1em .35em;
		position:absolute; top:50%; left:0; z-index:1;
		transform:translateY(-50%);
	}
	#globalnav .searchbox input {
		width:100%; height:28px;
		font-size:16px; line-height:1.6;
		background:#efefef; border-radius:50px;
		padding:0 1em;
		position:absolute; top:50%; left:0; z-index:2;
		transform:translateY(-50%);
		display:none;
	}
/*suggest*/
#suggestbox {
	min-width:200px; max-width:300px;
	position:absolute; top:42px; right:10px; z-index:1000;
	background:#fff; border-radius:10px; overflow:hidden;
	box-shadow:0 0 8px rgba(0, 0, 0, 0.2);
	display:none;
	}
	#suggestbox li { border-bottom:1px solid #eee;}
	#suggestbox li a {
		display:block; width:100%; font-size:14px;
		white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
		padding:.72em 1em .6em 2.5em; position:relative;
	}
	#suggestbox li a:before {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/parts_icon.png) no-repeat -255px 0;
		background-size:300px auto;
		position:absolute; top:50%; left:8px;
		transform:translateY(-50%);
	}
	#suggestbox .history li a:before { background-position:-280px 0;}
	#suggestbox li a:hover { background:#f0f0f0;}
	/**/
	#suggestbox .delete { text-align:center;}
	#suggestbox .delete a {
		display:inline-block; font-size:13px; color:#999;
		padding:12px; position:relative;
	}
	#suggestbox .delete a:before,
	#suggestbox .delete a:after {
		content:''; display:block; width:13px; height:1px;
		background:#999; margin:0;
		position:absolute; top:17.5px; left:-8px;
		-webkit-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}
	#suggestbox .delete a:after {
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}

/*oshirase*/
#globalnav .oshirase > a { cursor:pointer;}
#globalnav .oshirase > a span {
	display:inline-block; width:10px; height:10px;
	background:#ee190d; border:1px solid #fff; border-radius:50%;
	text-indent:110%; white-space:nowrap; overflow:hidden;
	position:absolute; left:2px; top:3.5px;
}
#oshirasebox {
	display:block; width:300px;
	background:rgb(255, 255, 255); background:rgba(255, 255, 255, 0.95);
	border:solid 1px #cbcbcb; border-radius:10px;
	box-shadow:0 2px 8px rgba(0, 0, 0, 0.15);
	padding:10px 16px 18px;
	position:absolute; top:42px; left:35px; z-index:1000;
	display:none;
	}
	#oshirasebox:after,
	#oshirasebox:before {
		content:" "; width:0; height:0;
		position:absolute; left:117px; bottom:100%;
		border:solid transparent;
		pointer-events:none;
	}
	#oshirasebox:after {
		border-color:rgba(255, 255, 255, 0);
		border-bottom-color:#fff;
		border-width:7px; margin-left:-7px;
	}
	#oshirasebox:before {
		border-color:rgba(203, 203, 203, 0);
		border-bottom-color:#cbcbcb;
		border-width:9px; margin-left:-9px;
	}
	#oshirasebox a.more {
		display:block; font-size:15px; color:#fff;
		text-align:center; background:#40b8dc; border-radius:6px;
		padding:.73em .5em .62em;
	}
	#oshirasebox a.more:hover { opacity:0.7;}
	#oshirasebox ul { padding-bottom:5px;}
	#oshirasebox ul li { font-size:13px; line-height:1.5; border-top:solid 1px #ddd; padding:10px 5px;}
	#oshirasebox ul li:first-child { border:none;}
	#oshirasebox ul li a { color:#262626; text-decoration:underline;}
	#oshirasebox ul li a:hover { text-decoration:none;}
	/*close*/
	#oshirasebox .close {
		display:block; width:40px; height:40px;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; right:0; cursor:pointer;
	}
	#oshirasebox .close:before,
	#oshirasebox .close:after {
		content:''; display:block; width:20px; height:2px;
		background:#bbb; margin:0;
		position:absolute; top:20px; left:9px;
		-webkit-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}
	#oshirasebox .close:after {
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}

/*footer*/
#globalfooter { text-align:center;}
#globalfooter .f1 { background:#454545; padding:30px 0;}
	#globalfooter .f1 h2 { font-size:18px; color:#fff; margin-bottom:16px;}
	#globalfooter .f1 ul { width:100%; margin:0 auto; font-size:0;}
	#globalfooter .f1 li { display:inline-block; width:46%; vertical-align:top; margin:5px 1.2%;}
	#globalfooter .f1 li a {
		display:inline-block; width:100%;
		font-size:12px; color:#fff; line-height:1.3;
		background:#585858; border-radius:50px;
		white-space:nowrap; overflow:hidden;
		padding:7px 5px; position:relative;
	}
	#globalfooter .f1 li a:hover { opacity:0.7;}
#globalfooter .f2 { background:#2d2d2d; padding:40px 10px 20px;}
	#globalfooter .f2 a { color:#fff;}
	#globalfooter .f2 .officialLink { padding-bottom:15px;}
	#globalfooter .f2 .officialLink ul { display:table; width:100%; table-layout:fixed;}
	#globalfooter .f2 .officialLink li { display:table-cell; vertical-align:top; padding:0 2px;}
	#globalfooter .f2 .officialLink li a {
		display:inline-block; width:100%; height:34px;
		background:#fff; position:relative;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	#globalfooter .f2 .officialLink li a:before {
		content:""; display:block; width:100px; height:40px;
		background:url(../img/parts_logo.png) no-repeat;
		background-size:480px auto;
		position:absolute; top:50%; left:50%;
		margin:-20px 0 0 -50px;
		-webkit-transform:scale(0.6);
		transform:scale(0.6);
	}
	#globalfooter .f2 .officialLink li.ntv a:before { background-position:-355px 0;}
	#globalfooter .f2 .officialLink li.ex a:before { background-position:-355px -45px;}
	#globalfooter .f2 .officialLink li.tbs a:before { background-position:-355px -90px;}
	#globalfooter .f2 .officialLink li.tx a:before { background-position:-355px -135px;}
	#globalfooter .f2 .officialLink li.cx a:before { background-position:-355px -180px;}
	#globalfooter .f2 .txtLink { padding:10px 0 20px;}
	#globalfooter .f2 .txtLink .inner { position:relative;}
	#globalfooter .f2 .txtLink ul {
		display:inline-block; vertical-align:top;
		padding:0 25px 20px; transition:all 0.2s;
	}
	#globalfooter .f2 .txtLink ul:last-child { padding-right:0;}
	#globalfooter .f2 .txtLink li { font-size:12px; line-height:1.35; text-align:left;}
	#globalfooter .f2 .txtLink li a { display:block; white-space:nowrap; padding:8px 0 8px 5px;}
	#globalfooter .f2 .txtLink li a:hover { opacity:0.7;}
	#globalfooter .f2 .copyright { font-size:0.8em; color:#989898; line-height:1.5;}
	#globalfooter .f2 .tver { padding:20px 0 10px;}
	#globalfooter .f2 .tver a {
		display:block; width:130px; height:70px;
		background:url(../img/tver_logo2.png) no-repeat;
		background-size:contain;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		opacity:0.2; margin:0 auto;
	}
#globalfooter .snsbtn {
	position:fixed; bottom:15px; left:5px; z-index:999;
	transition:all 0.5s; visibility:hidden;opacity:0;
	}
	#globalfooter .snsbtn li { display:inline-block; vertical-align:top; margin:0 2px;}
	#globalfooter .snsbtn li a {
		display:block; width:46px; height:46px;
		border-radius:50%; position:relative;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		-webkit-tap-highlight-color:rgba(0,0,0,0);
	}
	#globalfooter .snsbtn li.fb a { background:#3b5998;}
	#globalfooter .snsbtn li.tw a { background:#55acee;}
	#globalfooter .snsbtn li.fb a:before,
	#globalfooter .snsbtn li.tw a:before {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts_icon.png) no-repeat;
		background-size:300px auto;
		position:absolute; top:50%; left:50%;
		margin:-15px 0 0 -15px;
	}
	#globalfooter .snsbtn li.fb a:before { background-position:-50px -115px;}
	#globalfooter .snsbtn li.tw a:before { background-position:-85px -115px;}
	#globalfooter .snsbtn.end { bottom:70px;}

#ptop {
	position:fixed; bottom:15px; right:15px; z-index:999;
	transition:all 0.5s; visibility:hidden; opacity:0;
	}
	#ptop a {
		display:block; width:50px; height:50px; text-indent:-9999px;
		background:rgba(150, 150, 150, 0.5); border-radius:50%;
		position:relative;
		-webkit-tap-highlight-color:rgba(0,0,0,0);
	}
	#ptop a:before {
		content:""; display:block; width:14px; height:14px;
		border-top:3px solid #fff; border-left:3px solid #fff;
		position:absolute; top:50%; left:50%; margin:-5px 0 0 -8px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	#ptop a:hover { background:rgba(64, 184, 220, 0.9);}
	#ptop.end { bottom:70px;}

.gradation {
	background:rgb(64,184,220);
	background:-webkit-linear-gradient(left, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
	background:linear-gradient(to right, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
}
.credit { font-size:10px; line-height:1.35; color:#aaa; padding:0 16px 20px;}
.listblock + .credit { padding-top:0;}
.bg + .credit { padding-top:30px;}

/*テレビ局*/
.tvstation { text-align:center; padding:20px 10px 15px; margin-bottom:30px;font-size:0;}
	.tvstation h2 { font-size:20px; color:#fff; text-align:left; margin-bottom:10px;}
	.tvstation ul { width:530px; text-align:left; margin:0 auto;}
	.tvstation ul li { display:inline-block; width:100px; vertical-align:top; margin:3px 2px;}
	.tvstation ul li a { display:block; width:100%; height:0; padding-top:100%; position:relative;}
	.tvstation ul li a .name { display:block; font-size:16px; color:#fff; padding:7px 0 15px;}
	.tvstation ul li a .logo {
		display:block; width:100%; height:100%;
		background:#fff; border-radius:50%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		overflow:hidden; position:absolute; top:0; left:0;
	}
	.tvstation ul li a .logo:before {
		content:""; display:block; width:110px; height:70px;
		background:url(../img/parts_logo.png) no-repeat;
		background-size:480px auto;
		position:absolute; top:50%; left:50%;
		margin:-35px 0 0 -55px;
		-webkit-transform:scale(0.8);
		transform:scale(0.8);
	}
	.tvstation ul li.vod-ntv a .logo:before { background-position:-355px -225px;}
	.tvstation ul li.vod-ex a .logo:before { background-position:-355px -300px;}
	.tvstation ul li.vod-tbs a .logo:before { background-position:-355px -375px;}
	.tvstation ul li.vod-tx a .logo:before { background-position:-355px -450px;}
	.tvstation ul li.vod-cx a .logo:before { background-position:-355px -525px;}
	.tvstation ul li.vod-mbs a .logo:before { background-position:-355px -600px;}
	.tvstation ul li.vod-abc a .logo:before { background-position:-355px -675px;}
	.tvstation ul li.vod-ytv a .logo:before { background-position:-355px -750px;}
	.tvstation ul li.vod-ktv a .logo:before { background-position:-355px -1050px;}
	.tvstation ul li.vod-tvo a .logo:before { background-position:-355px -1125px; height:80px; margin-top:-38px;}
	.tvstation ul li.vod-nhk a .logo:before { background-position:-355px -1205px;}

/*@programlist
/////////////////////////////////////////////////////////////////////*/
.programlist { position:relative; overflow:hidden; padding-bottom:30px;}
	.programlist .listinner { position:relative;}
	body:not(.sp) .programlist a:hover { opacity:0.7;}
	.programlist h2 { font-size:20px; color:#0a0a0a; line-height:1.35; margin-bottom:9px;}
	.programlist ul { font-size:0; display:flex; flex-wrap:wrap;}
	.programlist ul:after { content:""; clear:both; display:block;}
	.programlist ul li { position:relative;}
	.programlist ul li a:not(.like) { display:block; width:100%; height:100%;}
	.programlist ul li .pic { width:100%; position:relative;}
	.programlist ul li .picinner {
		width:100%; height:100%;
		background:transparent no-repeat center center;
		background-size:auto 101%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	.programlist ul li .flag {
		width:100%; height:100%;
		background:transparent no-repeat center center;
		background-size:cover;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	.programlist ul li .progtitle { width:100%; min-height:65px; line-height:1.25;}
	.programlist:not(.reset) ul li .progtitle h3,
	.programlist:not(.reset) ul li .progtitle p { white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
	.programlist ul li .progtitle h3 { font-size:15px;}
	.programlist ul li .progtitle p { font-size:12px; position:relative;}
	.programlist ul li .progtitle p.summary { padding-top:0;}
	.programlist ul li .progtitle h3 + p.summary { margin-top:3px;}
	.programlist ul li .progtitle p.tv { font-size:11px; color:#949494; margin-top:2px;}
	.programlist ul li .progtitle p:empty { display:none;}
	.programlist ul li .progtitle p:empty + .tv { margin-top:7px;}
	/*link*/
	.programlist .link.more { position:absolute; top:-1px; right:5px;}
	.programlist .link.more a {
		display:inline-block; font-size:13px; color:#959595;
		padding:8px 18px 7px 5px; position:relative;
	}
	.programlist .link.more a:before {
		content:""; display:block; width:8px; height:8px;
		border-top:2px solid #b5b5b5; border-right:2px solid #b5b5b5;
		position:absolute; top:50%; right:5px; margin-top:-5px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.programlist.mylist .link.more { top:10px;}
	.programlist.mylist .link.more a { color:#fff; padding:10px 38px 9px 5px;}
	.programlist.mylist .link.more a:before { border-color:#fff;}
	.programlist.mylist .link.more a:after {
		content:""; display:block; width:16px; height:19px;
		background:url(../img/parts_icon.png) no-repeat 0 0;
		background-size:200px auto;
		position:absolute; top:50%; right:19px;
		margin-top:-11px;
	}
	/*like*/
	.programlist .like {
		display:block; width:35px; height:30px; cursor:pointer;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; bottom:1px; right:0; z-index:10;
	}
	.programlist .like:before {
		content:""; display:block; display:block; width:30px; height:30px;
		background:url(../img/parts_icon.png) no-repeat -30px 0;
		background-size:300px auto;
		position:absolute; top:50%; left:50%;
		margin:-15px 0 0 -10px;
		-webkit-transform:scale(0.8);
		transform:scale(0.8);
	}
	.programlist .like.this:before { background-position:-65px 0;}
	.carousel .programlist.normal .like { right:10px;}
	/*progressbar*/
	.programlist .progress {
		width:96%; height:3px; background:rgba(255, 255, 255, 0.6);
		position:absolute; bottom:6px; left:50%;
		margin-left:-48%;
	}
	.programlist .progress .bar {
		height:3px; background:#41f6ff;
		position:absolute; top:0; left:0;
	}

/*////////////////////////////////////////////////////*/
/*normal*/
.programlist.normal ul li .progtitle { color:#0a0a0a; padding:7px 0 8px;}
.programlist.normal ul li .progtitle p { padding-right:35px;}
.programlist.normal ul li .progtitle .preparing { color:#40b8dc !important;}
.programlist.normal ul li .progtitle .red { color:#e31e1e;}
/*matome*/
.programlist.normal ul li .progtitle.matome { padding-right:25px; position:relative;}
.programlist.normal ul li .progtitle.matome:before {
	display:block;content:''; width:26px;height:26px;
	position:absolute; top:10px; right:0;
	background:url(../img/icon_fukusu.png) center center no-repeat;
	background-size:contain;
}
/*ranking*/
.idx .programlist.ranking ul li { width:100%; height:68px; float:none;}
.idx .programlist.ranking ul li a { display:table; table-layout:fixed;}
.idx .programlist.ranking ul li a > div { display:table-cell; vertical-align:middle;}
.idx .programlist.ranking ul li .pic { width:120px; height:68px;}
.idx .programlist.ranking ul li .rank {
	width:1.6em; font-size:28px; color:#40b8dc; letter-spacing:-.08em;
	font-family:Helvetica, Arial; font-style:italic; text-align:center;
}
.idx .programlist.ranking ul li .progtitle { padding-left:8px;}
.d2 .programlist.ranking ul li .progtitle { padding-left:25px;}
.d2 .programlist.ranking ul li .rank {
	font-size:28px; color:#40b8dc;
	text-align:left; letter-spacing:-.08em;
	font-family:Helvetica, Arial; font-style:italic; 
	padding-top:6px;
	position:absolute; left:0;
	margin-top:-4px;
}
.d2 .programlist.ranking ul li:nth-child(n + 10) .progtitle { padding-left:36px;}
.d2 .programlist.ranking ul li:nth-child(n + 10) .rank { font-size:26px;}
.d2 .programlist.ranking ul li:nth-child(n + 20) .rank { letter-spacing:0em;}
/*topics*/
.programlist.topics ul li a { display:table; table-layout:fixed;}
.programlist.topics ul li a > div { display:table-cell; vertical-align:middle;}
.programlist.topics ul li .pic { width:70px; height:70px;}
.programlist.topics ul li .picinner {
	width:70px; height:70px; border-radius:16px;
	background-size:cover; background-color:#3ed0e3;
}
.programlist.topics ul li .progtitle { padding-left:10px;}
.programlist.topics ul li .progtitle h3 {
	font-size:14px; line-height:1.4;
	display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
	max-height:calc(1.4em * 2); overflow:hidden;
	white-space:normal;
	}
.programlist.topics ul li .progtitle p {
	font-size:10px; line-height:1.35; color:#888;
	white-space:normal; padding-top:5px;
}
/*cast*/
.programlist.cast ul li { width:100px; text-align:center; margin-right:12px;}
.programlist.cast ul li .pic { width:100px; height:100px;}
.programlist.cast ul li a { width:100px;}
.programlist.cast ul li .name {
	font-size:13px; padding-top:7px;
	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}

/*////////////////////////////////////////////////////*/
/*carousel*/
.carousel .programlist { padding-bottom:20px;}
.carousel .programlist h2 {
	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
	padding:0 70px 0 12px; margin-bottom:6px;
}
.carousel .programlist .listinner { width:100%; padding:0 0 5px 12px;}
	.carousel .programlist ul { display:inline-table; max-width:100%;}
	.carousel .programlist.normal ul li,
	.carousel .programlist.recommend ul li,
	.carousel .programlist.mylist ul li,
	.carousel .programlist.special ul li,
	.carousel .programlist.cast ul li {
		display:table-cell; width:auto; float:none;
		padding-right:10px; margin:0;
	}
.carousel .programlist ul:after { display:none;}
.carousel .programlist ul li .progtitle { min-height:0;}
/*normal*/
.carousel .programlist.normal ul li a:not(.like) { width:200px;}
.carousel .programlist.normal ul li .pic { height:113px;}
/*recommend*/
.carousel .programlist.recommend { height:180px; padding-bottom:0; margin-bottom:20px;}
.carousel .programlist.recommend h2 { display:none;}
.carousel .programlist.recommend .listinner { height:185px; padding:0;}
.carousel .programlist.recommend ul li { padding-right:0;}
.carousel .programlist.recommend ul li a { width:320px;}
.carousel .programlist.recommend ul li .pic { height:180px; background:#000;}
.carousel .programlist.recommend ul li .picinner:after {
	content:""; display:block; width:100%; height:70%;
	position:absolute; bottom:0; left:0; opacity:0.9;
	background:-webkit-linear-gradient(top, rgba(77,77,77,0) 0%,rgba(77,77,77,1) 100%);
	background:linear-gradient(to bottom, rgba(77,77,77,0) 0%,rgba(77,77,77,1) 100%);
}
.carousel .programlist.recommend ul li .progtitle {
	color:#fff; padding:0 12px 6px;
	position:absolute; bottom:0; left:0;
}
.carousel .programlist.recommend ul li .progtitle h3 { font-size:17px;}
.carousel .programlist.recommend ul li .progtitle p { font-size:13px;}
.carousel .programlist.recommend ul li .progtitle h3 + p.summary { margin-top:3px;}
.carousel .programlist.recommend ul li .progtitle p.tv {
	font-size:12px; color:rgba(255,255,255,0.7);
	margin-top:1px;
}
.carousel .programlist.recommend ul li a:hover { opacity:1;}
body:not(.sp) .carousel .programlist.recommend ul li a:hover .picinner { opacity:0.7;}
/*mylist*/
.carousel .programlist.mylist { padding:12px 0 0; margin-bottom:20px;}
.carousel .programlist.mylist h2 { color:#fff;}
.carousel .programlist.mylist ul li a:not(.like) { width:160px;}
.carousel .programlist.mylist ul li .pic { height:90px; background:#000;}
.carousel .programlist.mylist ul li .progtitle { color:#fff; padding:6px 2px 8px 0;}
.carousel .programlist.mylist ul li .progtitle h3 { font-size:14px;}
.carousel .programlist.mylist ul li .progtitle p { font-size:11px;}
.carousel .programlist.mylist ul li .progtitle h3 + p.summary { padding-top:1px; margin-top:2px;}
.carousel .programlist.mylist ul li .progtitle p.tv { color:rgba(255,255,255,0.7);}
.carousel .programlist.mylist ul li a:hover { opacity:1;}
body:not(.sp) .carousel .programlist.mylist ul li a:hover .picinner { opacity:0.7;}
/*ranking*/
.carousel .programlist.ranking { padding-left:0;}
.carousel .programlist.ranking h2 { padding-left:16px;}
.carousel .programlist.ranking .listinner { height:220px; padding-left:0;}
.carousel .programlist.ranking .listinner > div { display:inline-table; max-width:100%;}
.carousel .programlist.ranking ul { display:table-cell; border-right:1px solid #cbcbcb; padding-right:15px;}
.carousel .programlist.ranking ul:last-child { border-right:none;}
.carousel .programlist.ranking ul li { width:300px;}
/*special*/
.carousel .programlist.special ul li a { width:200px;}
.carousel .programlist.special ul li .pic { height:113px;}
.carousel .programlist.special ul li .progtitle { color:#40b8dc; padding: 6px 0 8px;}
/*topics*/
.carousel .programlist.topics h2 { border-bottom:1px solid #cbcbcb; padding:0 0 10px; margin:0 0 5px 16px;}
.carousel .programlist.topics .listinner { height:250px; padding-left:0;}
.carousel .programlist.topics .listinner > div { display:inline-table; max-width:100%;}
.carousel .programlist.topics ul { display:table-cell; padding:0 16px;}
.carousel .programlist.topics ul li { width:300px; height:80px; float:none; padding:5px 0;}
/*controls*/
.carousel .controls { width:100%; background:rgba(0, 0, 0, 0.5);}
.carousel .controls a {
	display:block; width:60px; height:60px;
	background:rgba(64, 184, 220, 0.7);
	border-radius:50%; cursor:pointer;
	text-indent:110%; white-space:nowrap; overflow:hidden;
	position:absolute; top:50%; z-index:90;
	margin-top:-30px;
	}
	.carousel .controls a.prev { left:-30px;}
	.carousel .controls a.next { right:-30px;}
	.bangumi .carousel .controls a.prev { left:-34px;}
	/*arr*/
	.carousel .controls a:after {
		content:""; display:block; width:12px; height:12px;
		border-top:3px solid #fff; border-right:3px solid #fff;
		position:absolute; top:50%; left:7px; margin-top:-6px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.carousel .controls a.prev:after {
		border:none; left:38px;
		border-bottom:3px solid #fff;
		border-left:3px solid #fff;
	}
.carousel .controls a:hover { opacity:1;}
.carousel .controls a.disable { display:none;}
.carousel .tvstation .controls { display:none;}
/*SP*/
.sp .carousel .programlist:not(.recommend) .listinner { overflow-x:auto; -webkit-overflow-scrolling:touch;}
.sp .carousel .programlist.recommend .listinner { overflow-x:auto; -webkit-overflow-scrolling:touch;}
.sp .carousel .controls { display:none;}

/*////////////////////////////////////////////////////*/
.listblock .programlist { padding:25px 10px 30px;}
.listblock .programlist h2 { padding:0 5px; margin-bottom:16px;}
.listblock + .listblock .programlist { padding-top:0;}
/*normal*/
.listblock .programlist.normal ul li { width:33.33%; padding:0 1%; margin-bottom:25px;}
.listblock .programlist.normal ul li .pic { width:100%; height:0; padding-top:56.25%; position:relative;}
.listblock .programlist.normal ul li .attn,
.listblock .programlist.normal ul li .coming,
.carousel .programlist.normal ul li .coming {
	width:100%; font-size:11px; white-space:nowrap;
	color:#fff; text-align:center; line-height:1.2;
	padding:3px 1px 2px; overflow:hidden;
	position:absolute; bottom:0; left:0;
	z-index:10;
}
.listblock .programlist.normal ul li .attn { background:rgba(227, 30, 30, 0.9);}
.listblock .programlist.normal ul li .coming { background:#40b8dc;}
.carousel .programlist.normal ul li .coming { background:#40b8dc;}
/*ranking
.listblock .programlist.ranking { padding:25px 0 30px;}
.listblock .programlist.ranking h2 { padding:0 15px;}
.listblock .programlist.ranking ul { width:100%;}
.listblock .programlist.ranking ul li { height:68px; margin-bottom:15px;}
.listblock .programlist.ranking ul li .pic { width:120px;}
.listblock .programlist.ranking ul li .picinner,
.listblock .programlist.ranking ul li .flag { width:120px; height:68px;}
.listblock .programlist.ranking ul li .progtitle { padding:0 10px;}
.listblock .programlist.ranking .note { font-size:10px; color:#949494; position:absolute; top:32px; right:5px;}
*/
.listblock .programlist.ranking .note { font-size:10px; color:#949494; position:absolute; top:35px; right:5px;}
/*tv service*/
.listblock .programlist.service { padding-top:0;}
.listblock .programlist.service h2 {
	width:350px; height:130px; margin:0 auto;
	background:url(../img/parts_logo.png) no-repeat;
	background-size:480px auto;
	text-indent:110%; white-space:nowrap; overflow:hidden;
	-webkit-transform:scale(0.8);
	transform:scale(0.8);
	}
	.listblock .programlist.service h2.ntv { background-position:0 0;}
	.listblock .programlist.service h2.ex { background-position:0 -135px;}
	.listblock .programlist.service h2.tbs { background-position:0 -270px;}
	.listblock .programlist.service h2.tx { background-position:0 -405px;}
	.listblock .programlist.service h2.cx { background-position:0 -540px;}
	.listblock .programlist.service h2.mbs { background-position:0 -675px;}
	.listblock .programlist.service h2.abc { background-position:0 -810px;}
	.listblock .programlist.service h2.ytv { background-position:0 -945px;}
	.listblock .programlist.service h2.ktv { background-position:0 -1080px;}
	.listblock .programlist.service h2.tvo { background-position:0 -1215px;}
	.listblock .programlist.service h2.nhk { background-position:0 -1350px;}

/*複数*/
.carousel .programlist ul li .progtitle.matome { padding-right:25px;}
.carousel .programlist.recommend ul li .progtitle.matome { padding-right:40px;}
.carousel .programlist.normal ul li .progtitle.matome { padding-right:35px;}
.carousel .programlist.ranking ul li .progtitle.matome { padding-right:20px;}
.carousel .programlist:not(.recommend) ul li .progtitle.matome { position:relative;}
.carousel .programlist ul li .progtitle.matome:before{
	display:block;content:''; width:26px;height:26px;
	position:absolute; top:7px; right:0;
	background:url(../img/icon_fukusu.png) center center no-repeat;
	background-size:contain;
	}
	.carousel .programlist.recommend ul li .progtitle.matome:before{
		top:3px; right:12px;
		background-image:url(../img/icon_fukusu_gray.png);
	}
	.carousel .programlist.mylist ul li .progtitle.matome:before{
		width:24px; height:24px; right:0;
		background-image:url(../img/icon_fukusu_white.png);
	}
	.carousel .programlist.ranking ul li .progtitle.matome:before { right:-8px;}

/*@d2
/////////////////////////////////////////////////////////////////////*/
/*btnarea*/
.d2 #contents .btnarea { min-height:60px; padding:0 0 20px; position:relative;}
.d2 #contents .btnarea .inner > div { display:inline-block; vertical-align:middle;}
	/*link*/
	.d2 #contents .btnarea .official { margin-right:8px;}
	.d2 #contents .btnarea .official a {
		display:block;
		font-size:13px; font-weight:600; text-align:center;
		color:#40b8dc; border:1px solid #40b8dc;
		word-wrap:break-word; background:#000;
		padding:9px 30px 8px 25px; position:relative;
	}
	.d2 #contents .btnarea .official a:after {
		content:""; display:block; width:25px; height:25px;
		background:url(../img/parts_icon.png) no-repeat -135px 0;
		background-size:300px auto;
		position:absolute; top:50%; right:1px;
		margin-top:-13px;
		-webkit-transform:scale(0.9);
		transform:scale(0.9);
	}
	.d2 #contents .btnarea .official a:hover { background:#40b8dc; color:#fff;}
	.d2 #contents .btnarea .official a:hover:after { background-position:-165px 0;}
	/*sns*/
	.d2 #contents .btnarea .sns { margin-top:12px; display:none !important;}
	.d2 #contents .btnarea .sns ul,
	.d2 #contents .btnarea .sns li { display:inline-block; vertical-align:middle;}
	.d2 #contents .btnarea .sns li { margin-left:0;}
	.d2 #contents .btnarea .sns li.fb a,
	.d2 #contents .btnarea .sns li.tw a {
		display:block; height:34px; line-height:34px;
		font-size:10px; font-weight:600; color:#40b8dc; letter-spacing:normal;
		padding:1px 5px 0 38px; margin:0 2px; position:relative;
	}
	.d2 #contents .btnarea .sns li.fb a:before,
	.d2 #contents .btnarea .sns li.tw a:before {
		content:""; display:block; width:34px; height:34px;
		position:absolute; top:50%; left:0;
		border-radius:50%; margin-top:-17px;
	}
	.d2 #contents .btnarea .sns li.fb a:before { background:#3b5998;}
	.d2 #contents .btnarea .sns li.tw a:before { background:#55acee;}
	.d2 #contents .btnarea .sns li.fb a:after,
	.d2 #contents .btnarea .sns li.tw a:after {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/parts_icon.png) no-repeat;
		background-size:300px auto;
		position:absolute; top:50%;
		margin-top:-10px;
	}
	.d2 #contents .btnarea .sns li.fb a:after { background-position:0 -130px; left:7px;}
	.d2 #contents .btnarea .sns li.tw a:after { background-position:-25px -130px; left:8px;}
	/*mylist*/
	.d2 #contents .btnarea:after { content:""; clear:both; display:block;}
	.d2 #contents .btnarea .mylist { float:right;}
	.d2.sp.bangumi #contents .btnarea .mylist { display:none;}
	.d2 #contents .btnarea .mylist p {
		display:inline-block; vertical-align:middle;
		font-size:12px; color:#b6e7f6;
	}
	.d2 #contents .btnarea .mylist p span { display:inline-block; font-size:15px; padding-right:5px;}
	.d2 #contents .btnarea .mylist a {
		display:inline-block; min-width:145px; max-width:160px;
		font-size:13px; font-weight:600;
		color:#40b8dc; text-align:center; background:#000;
		border:1px solid #40b8dc; vertical-align:middle;
		padding:9px 9px 8px 30px; position:relative;
	}
	.d2 #contents .btnarea .mylist a:after {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts_icon.png) no-repeat -100px 0;
		background-size:300px auto;
		position:absolute; top:50%; left:2px;
		margin-top:-15px;
		-webkit-transform:scale(0.7);
		transform:scale(0.7);
	}
	.d2 #contents .btnarea .mylist a.off { padding-right:20px;}
	.d2 #contents .btnarea .mylist a.this:after { background-position:-65px 0;}

/*others*/
.others .headings { height:50px; padding:0 16px; position:relative;}
.others .headings h2 {
	font-size:20px; font-weight:600; color:#fff;
	letter-spacing:0.03em; white-space:nowrap;
	padding:2px 0 0 32px;
	position:absolute; top:50%; left:12px;
	transform:translateY(-50%);
	-webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
	}
	.others .headings h2:before {
		content:""; display:block; width:24px; height:26px;
		background:url(../img/parts_icon.png) no-repeat;
		background-size:200px auto;
		position:absolute; top:50%; left:0;
		transform:translateY(-50%);
	}
	.mylist .headings h2:before { background-position:0 -23px;}
	.search .headings h2:before { background-position:-26px -23px;}
	.epg .headings h2:before { background-position:-53px -23px;}
	.notice .headings h2:before { background-position:-80px -23px;}

.others .headings2 {
	height:50px; text-align:center; background:#4c4c4c;
	padding:14px 5px 0; position:relative;
	}
	.others .headings2 ul { overflow:hidden;}
	.others .headings2 ul li { display:inline-block;}
	.sp.mylist .headings2 ul li:nth-child(2) { display:none;}
	.others .headings2 ul li a {
		display:block; height:36px; font-size:13px;
		color:#fff; letter-spacing:0.02em; white-space:nowrap;
		border-radius:8px 8px 0 0; padding:10px 12px 0;
	}
	.others .headings2 ul li a:hover { opacity:0.8;}
	.others .headings2 ul li a.this { background:#fff; color:#222; opacity:1;}

.others .headings3 { position:relative;}
	.others .headings3 > ul{ position:absolute; top:-36px; right:10px;}
	.others .headings3 ul li { display:inline-block;}
	.others .headings3 ul li + li { margin-left:5px;}
	.others .headings3 ul li a {
		display:block; height:36px; font-size:14px; 
		border-radius:10px 10px 0 0; padding:12px 15px 0;background:#4c4c4c;color:#fff;}
	.others .headings3 ul li a.this {
		background:#fff;color:#222;
	}

.others .headings4 {
	text-align:center; background:#fff;
	padding:20px 5px 0; position:relative;
	}
	.others .headings4 ul { font-size:0;}
	.others .headings4 ul li { display:inline-block; vertical-align:top;}
	.sp.mylist .headings4 ul li:nth-child(2) { display:none;}
	.others .headings4 ul li a {
		display:block; height:40px; font-size:13px; color:#fff;
		border-radius:8px 8px 0 0; white-space:nowrap;
		padding:10px 10px 0;
	}
	.others .headings4 ul li a:hover { opacity:0.8;}
	.others .headings4 ul li a.this { background:#fff; color:#222; opacity:1;}
	.others .headings4 label,
	.others .headings4 label:before { background:#f2f2f2 !important;}

.others .weeknavi { text-align:center; padding-top:10px;}
	.others .weeknavi li { display:inline-table; margin:10px 3px 0;}
	.others .weeknavi li a {
		display:table-cell; min-width:32px; height:33px;
		font-size:14px; vertical-align:middle;
		background:#f2f2f2; border-radius:100px;
		padding:.1em .73em 0 .8em;
	}

.search .listblock .programlist .note {
	font-size:10px; color:#949494;
	line-height:1.3; padding:0 5px 20px;
}

/*alert*/
.d2 #contents .alert { min-height:200px; text-align:center; padding:40px 0;}
.others #contents .alert { min-height:auto;}
	.d2 #contents .alert span {
		display:inline-block; font-size:18px; line-height:1.35; color:#9f9f9f;
		border-top:1px solid #9f9f9f; border-bottom:1px solid #9f9f9f;
		max-width:80%; padding:20px 30px 18px;
	}

/*@bangumi
/////////////////////////////////////////////////////////////////////*/
/*carousel*/
.bangumi .carousel { padding-top:25px;}
.bangumi .carousel .programlist { padding:0 0 15px 4px;}
.video .carousel .programlist h2 { color:#fff; margin-bottom:10px;}
.detail .carousel .programlist h2 { font-size:20px; font-weight:600; margin-bottom:12px;}
/*video*/
.video-section.carousel { border-top:1px solid #333;}
	.video-section.carousel .programlist.normal ul li .progtitle { color:#fff;}
	.video-section.carousel .programlist.normal ul li a { width:180px;}
	.video-section.carousel .programlist.normal ul li .pic { height:101px;}
.video .listblock .programlist h2 { margin-bottom:10px;}
/*cast*/
.cast-section.carousel { border-top:1px solid #333;}
.vod-section + .cast-section.carousel { border-top:none;}
.cast-section.carousel .programlist.cast { padding-bottom:0;}
	.cast-section.carousel .programlist.cast .listinner { padding-bottom:23px;}
	.cast-section.carousel .programlist.cast ul li .pic { border:1px solid rgba(255, 255, 255, 0.2);}
	.video .cast-section.carousel .programlist.cast ul li .name { color:#fff;}
/*btn*/
.bangumi .linkbangumi { width:90%; text-align:center; padding:0 16px 30px; margin:0 auto;}
	.bangumi .linkbangumi a {
		display:block; width:100%; line-height:1.3;
		font-size:14px; font-weight:600; color:#fff;
		padding:.8em 25px .8em 30px; position:relative;
	}
	.bangumi .linkbangumi a:before {
		content:""; display:block; width:8px; height:8px;
		border-bottom:2px solid #fff; border-left:2px solid #fff;
		position:absolute; top:50%; left:16px; margin-top:-5px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	/*20180131*/
	.bigbanner{text-align:center;padding:5px 16px 25px;}
	.bigbanner img{width:100%;}

/*@video
/////////////////////////////////////////////////////////////////////*/
.video .bg { background:#000;}
.video-section,
.vod-section,
.cast-section { color:#fff; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}
.video-section .inner,
.vod-section .inner { width:100%; padding:0 16px; margin:0 auto; position:relative;}
/*player*/
.sp .video-section .playvideo { display:none;}
.video-section .playvideo .inner { padding:0;}
.video-section .playvideo .player { width:100%; height:0; padding-top:56.25%; position:relative;}
	.video-section .playvideo .player #playerWrapper {
		width:100% !important; height:100% !important;
		position:absolute !important; top:0; left:0;
	}
	/*cx*/
	.video-section .playvideo.cx .player { width:100%; height:543px; padding-top:0;}
	.video-section .playvideo .player #cx_player {
		width:850px; height:543px;
		margin:0 auto;
	}
	/*レジューム*/
	.video-section .playvideo .playerIn {
		display:table; width:100%; height:100%;
		position:absolute; top:0; left:0;
	}
	.video-section .playvideo .playerIn .how {
		display:table-cell; height:100%; vertical-align:middle;
		font-size:16px; text-align:center;
		background:#1a1a1a;
	}
	.video-section .playvideo .playerIn .how p { font-size:18px; color:#fff; padding:0 0 60px;}
	.video-section .playvideo .playerIn .how a {
		display:inline-block; font-size:15px; color:#fff;
		background:#333; border-radius:50px; font-weight:600;
		padding:8px 20px; margin:0 3px;
	}
	.video-section .playvideo .playerIn .how a.active,
	.video-section .playvideo .playerIn .how a:hover { color:#fff; background:#40b8dc;}
	/*レジューム login*/
	.pc.nologin .video-section .playvideo .playerIn .how p { padding:4% 0 20px;}
	.pc.nologin .video-section .playvideo .playerIn .how .login-to {
		display:inline-block;
		border:1px solid #fff; border-radius:10px;
		padding:12px 35px; margin-top:3%;
	}
	.pc.nologin .video-section .playvideo .playerIn .how .login-to p {
		font-size:13px; line-height:1.5;
		padding:0 0 10px;
	}
	.sp.nologin .video-section .playvideo .playerIn .how .login-to { display:none;}

#a-alert { width:100%; height:0; padding-top:56.25%; position:relative; display:none;}
	#a-alert div {
		display:table-cell; width:100%; height:100%;
		font-size:14px; color:#fff; text-align:center;
		line-height:1.6; background:#1a1a1a;
		position:absolute; top:0; left:0;
		padding:24% 20px 0;
	}
#end-alert { width:100%; height:0; padding-top:56.25%; position:relative;}
	#end-alert div {
		display:table-cell; width:100%; height:100%;
		font-size:20px; color:#fff; text-align:center;
		background:#1a1a1a;
		position:absolute; top:0; left:0;
		padding-top:18%;
	}
	#end-alert div a {
		display:inline-block;font-size:16px; color:#fff;
		padding:12px 30px; margin-top:20px;
	}
	#end-alert div a:hover { opacity:0.8;}
/*image*/
body:not(.sp) .video-section .image { display:none;}
body.special .video-section .image { display:block;}
.video-section .image .inner { padding:0;}
body:not(.special) .video-section .image .inner:after {
	content:""; display:block; width:100%; height:60%;
	position:absolute; bottom:0; left:0;
	background:-webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);
	background:linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,1) 100%);
}
.video-section .image .pic { width:100%; height:0; padding-top:56.25%; position:relative;}
	.video-section .image .pic .picinner {
		width:100%; height:100%;
		position:absolute; top:0; left:0;
		background:transparent no-repeat center 0;
		background-size:cover;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	.video-section .image .pic .flag {
		width:100%; height:100%;
		background:transparent no-repeat center center;
		background-size:cover;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
/*
.video-section .image .playbtn { position:absolute; bottom:-10px; right:9px; z-index:100;}
	.video-section .image .playbtn a {
		display:block; width:70px; text-align:center;
		font-size:14px; color:#40b8dc;
		-webkit-transform:scale(0.85);
		transform:scale(0.85);
	}
	.video-section .image .playbtn a:before {
		content:""; display:block; width:70px; height:70px;
		background:url(../img/parts_icon.png) no-repeat -120px -80px;
		background-size:300px auto;
		margin-bottom:6px;
	}
*/
.video-section .image .playbtn { 
	position:absolute; bottom:50%; left:50%; z-index:100;
	width:240px;
	margin-left:-120px;
	font-size:14px; background:rgba(255,255,255,0.2);
	border:solid 1px #fff;
	border-radius:100px;
	padding:4px;
	display:table;
	box-shadow: 0px 20px 17px -19px #000;
}
	.video-section .image .playbtn:before {
		content:""; display:inline-block; width:38px; height:38px;
		background:url(../img/icon_play.png) no-repeat center center;
		background-size:contain;
		position:absolute;
		z-index:1;
	}
	.video-section .image .playbtn a {
		display:table-cell; width:240px; height:38px; text-align:center;
		color:#fff; vertical-align:middle;
		font-size:19px;
		text-indent:28px;
		text-shadow: 0px 2px 3px rgba(0, 0, 0, 0.8);
		position:relative; z-index:2;
	}

/*LIVE配信予定*/
body.before .video-section .title { padding-right:16px !important; margin-top:0 !important;}
body.before .video-section .image .inner:after{
	display:none !important;
}
body.before .video-section .image .pic .d1{
	width:100%;height:0;position:absolute;top:0;padding-bottom:56.25%;background-position:center center; background-repeat:no-repeat;background-size:cover;
}
body.before .video-section .image .pic .d2{
	width:100%;height:0;position:absolute;top:0;padding-bottom:56.25%;background:rgba(0,0,0,.5);
}
body.before .video-section .image .pic .d3{
	width:100%;position:absolute;top:0;padding-top:20%;color:#fff;font-size:20px;font-weight:600;text-align:center;line-height:1.5;z-index:10;
}
body.before .video-section .image .pic .d3 span{
	display:block;font-size:16px;color:#fff;
}

/*title*/
.sp:not(.special) .video-section .title { padding-right:90px; margin-top:-60px;}
.video-section .title { padding:16px;}
.video-section .title .inner { padding:0;}
	.video-section .title h1 { font-size:20px; line-height:1.2;}
	.video-section .title p { font-size:13px; line-height:1.35; padding-top:10px;}
	.video-section .title p span { display:block;}
	.video-section .title .summary { font-size:14px; margin-bottom:6px;}
	.video-section .title .tv { color:#aaa; padding-right:1.2em; margin-bottom:3px;}
	.video-section .title .red { color:#e31e1e;}
/*description*/
.video-section .description { border-top:1px solid #333; padding:25px 0;}
.video-section .description h2 { font-size:16px; line-height:1.35; padding:0 0 10px 38px;}
.video-section .description h2:before {
	content:""; display:block; width:40px; height:30px;
	background:url(../img/parts_icon.png) no-repeat -50px -80px;
	background-size:300px auto;
	position:absolute; top:-5px; left:10px;
	-webkit-transform:scale(0.7);
	transform:scale(0.7);
}
.video-section .description p { font-size:14px; line-height:1.6;}
/*info*/
.video-section .tvinfo { padding-bottom:15px;}
.video-section .tvinfo p {
	display:inline-block;
	font-size:13px; line-height:1.5;
	border:1px solid #555; border-radius:6px;
	padding:10px 15px; position:relative;
	}
	.video-section .tvinfo p:after,
	.video-section .tvinfo p:before {
		content:" "; width:0; height:0;
		position:absolute; top:100%; left:60px;
		border:solid transparent;
		pointer-events:none;
	}
	.video-section .tvinfo p:after {
		border-color:rgba(0, 0, 0, 0);
		border-top-color:#000;
		border-width:8px; margin-left:-8px;
	}
	.video-section .tvinfo p:before {
		border-color:rgba(119, 119, 119, 0);
		border-top-color:#777;
		border-width:9px; margin-left:-9px;
	}
/*TabUI*/
.video-section .epTabUi .inner{
	border-bottom:solid 1px #333;
	white-space:nowrap; overflow:hidden;
}
.video-section .epTabUi li{
	font-size:16px; display:inline-block;
	color:#fff; margin:0 5px;
}
@media screen and (max-width:320px){
	.video-section .epTabUi li{ font-size:15px; margin:0;}
}
.video-section .epTabUi li a{
	color:#40b8dc; display:inline-block;
	padding:0 5px 10px;
	border-bottom:solid 4px transparent;
}
.video-section .epTabUi li.this a{
	border-bottom-color:#40b8dc;
}
/*vod*/
.vod-section { background:#08475a; position:relative;}
.vod-section .inner { padding:0;}
.vod-section .vod { padding:20px 16px;}
	.vod-section .vod h2 { font-size:20px; margin-bottom:10px;}
	.vod-section .vod h2 span { display:block; font-size:12px; line-height:1.2; opacity:0.8; padding-top:7px;}
	.vod-section .vod .program { display:table; width:100%; table-layout:fixed;}
	.vod-section .vod .program > div { display:table-cell; vertical-align:top; position:relative;}
	.vod-section .vod .program .pic { width:150px;}
	.vod-section .vod .program .picinner {
		width:100%; height:0; padding-top:56.25%;
		background:transparent no-repeat center center;
		background-size:cover;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		border:1px solid rgba(255, 255, 255, 0.2);
	}
	.vod-section .vod .program .title { padding-left:10px;}
	.vod-section .vod .program .title h3 {
		font-size:15px; line-height:1.35;
		padding-left:5px; margin-bottom:10px;
	}
	.vod-section .vod .program .title .linkbtn { width:100%; max-width:250px; margin-bottom:8px;}
	.vod-section .vod .program .title .linkbtn a {
		display:block; line-height:1.2;
		font-size:11px; text-align:center; color:#07579b;
		letter-spacing:normal; background:#fff; border-radius:50px;
		padding:.62em 25px .55em 12px; position:relative;
	}
	.vod-section .vod .program .title .linkbtn a:after {
		content:""; display:block; width:25px; height:25px;
		background:url(../img/parts_icon.png) no-repeat -195px 0;
		background-size:300px auto;
		position:absolute; top:50%; right:4px;
		-webkit-transform:scale(0.8) translateY(-50%);
		transform:scale(0.8) translateY(-50%);
		margin-top:-2px;
	}
.vod-section .sns { background:#0c2d37; padding:6px 16px 5px;}
	.vod-section .sns h2,
	.vod-section .sns ul { display:inline-block; vertical-align:middle;}
	.vod-section .sns h2 { font-size:16px; padding-top:1px; opacity:0.8;}
	.vod-section .sns li { display:inline-block; vertical-align:middle; margin:0 3px;}
	.vod-section .sns li a {
		display:block; width:40px; height:40px;
		background:url(../img/parts_icon.png) no-repeat;
		background-size:300px auto;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		-webkit-transform:scale(0.8);
		transform:scale(0.8);
	}
	.vod-section .sns li.fb a { background-position:-160px -35px;}
	.vod-section .sns li.tw a { background-position:-205px -35px;}
	.vod-section .sns li.line a { background-position:-250px -35px;}

/*@special
/////////////////////////////////////////////////////////////////////*/
.d2 .programlist .txtlink { width:110%; background:#f4f4f5; text-align:center; margin:-10px 0 16px -10px;}
	.d2 .programlist .txtlink a {
		display:inline-block;
		font-size:15px; font-weight:600; color:#333;
		padding:11px 25px 11px 10px; margin:0 6px;
		position:relative;
		-webkit-font-smoothing:subpixel-antialiased; -moz-osx-font-smoothing:unset;
	}
	.d2 .programlist .txtlink a:after {
		content:""; display:block; width:10px; height:15px;
		background:url(../img/arrow.png) no-repeat 0 0;
		background-size:80px auto;
		position:absolute; top:50%; right:5px;
		margin-top:-7.5px;
	}
	.d2 .programlist .txtlink a:hover { color:#40b8dc;}
.special .programlist .txtlink { width:100%; background:none; margin:-10px 0 20px;}
	.special .programlist .txtlink a {
		display:inline-block; line-height:1.5;
		font-size:18px; font-weight:normal; color:#40b8dc;
		padding:0 8px 8px 6px; margin:0 20px;
		position:relative; overflow:hidden;
	}
	.special .programlist .txtlink a:after { display:none;}
	.special .programlist .txtlink a:before {
		content:""; display:block; width:100%; height:3px;
		background:#40b8dc;
		position:absolute; bottom:0; left:-105%;
		transition:all 0.3s;
	}
	.special .programlist .txtlink a:hover { opacity:1;}
	.special .programlist .txtlink a:hover:before { left:0;}
	.special .programlist .txtlink a.this { color:#fff;}
	.special .programlist .txtlink a.this:before { background:#fff; left:0;}
.special .programlist.normal ul li .progtitle { color:#fff;}
.special #contents .btnarea { display:none;}
@media only screen and (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx) {
	.d2 .programlist .txtlink a { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}
}
.d2 #contents .linkbtn2 { padding:0 0 30px;}
	.d2 #contents .linkbtn2 a {
		display:block; width:90%; line-height:1.35;
		font-size:16px; font-weight:600; color:#fff; text-align:center;
		background:#40b8dc; border:1px solid #40b8dc; border-radius:2px;
		padding:15px 32px; margin:0 auto; position:relative;
	}
	.d2 #contents .linkbtn2 a:after {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/arrow.png) no-repeat -50px 0;
		background-size:80px auto;
		position:absolute; top:50%; right:3px;
		margin-top:-15px;
		-webkit-transform:scale(0.8); transform:scale(0.8);
	}
	.d2 #contents .linkbtn2 a:hover { background:#40b8dc; color:#fff;}
	.d2 #contents .linkbtn2 a:hover:after { background-position:-50px 0;}


/*@detail
/////////////////////////////////////////////////////////////////////*/
.detail .bg { background:#efeff4; padding:12px;}
.detail .bgin { background:#fff;}
.detail .detail-section.carousel { border-bottom:1px solid #efeff4;}
.detail .cast-section.carousel { border-top:1px solid #efeff4;}
/*headings*/
body:not(.talent) .detail-section .headings .pic { width:100%; height:0; padding-top:56.25%; position:relative;}
.detail-section .headings .picinner {
	width:100%; height:100%;
	background:transparent no-repeat center center;
	background-size:auto 100%;
	text-indent:110%; white-space:nowrap; overflow:hidden;
	position:absolute; top:0; left:0;
}
/*title*/
.detail-section .headings .title { border-bottom:1px solid #efeff4; padding:15px;}
	.detail-section .headings .title h1 { font-size:20px; font-weight:600; line-height:1.2; margin-bottom:8px;}
	.detail-section .headings .title p { font-size:13px; line-height:1.35;}
	.detail-section .headings .title p span { display:block;}
	.detail-section .headings .title .summary { font-size:15px; margin-bottom:8px;}
	.detail-section .headings .title .tv { color:#666; padding-right:1.2em;}
	/*btn*/
	.detail:not(.talent) #contents .detail-section .btnarea { padding:20px 0 0;}
	.d2 #contents .detail-section .btnarea > div { display:inline-block; vertical-align:middle;}
	.d2 #contents .detail-section .btnarea .official a,
	.d2 #contents .detail-section .btnarea .mylist a {
		font-weight:normal; color:#222;
		border-color:#222; background:#fff;
	}
	.d2 #contents .detail-section .btnarea .official a:after { background-position:-225px 0;}
	.d2 #contents .detail-section .btnarea .official a:hover { background:#222; color:#fff;}
	.d2 #contents .detail-section .btnarea .official a:hover:after { background-position:-165px 0;}
	.d2 #contents .detail-section .btnarea .sns li.fb a { color:#3b5998;}
	.d2 #contents .detail-section .btnarea .sns li.tw a { color:#55acee;}
	.d2 #contents .detail-section .btnarea .mylist p { color:#555;}
	.d2 #contents .detail-section .btnarea .mylist a:not(.this):after { background-position:-30px 0;}
/*text*/
.detail-section .text { padding:30px 15px;}
	.detail-section .text h2 { font-size:20px; font-weight:600; margin-bottom:20px;}
	.detail-section .text h3 { font-size:16px; font-weight:600; color:#40b8dc; margin-bottom:12px;}
	.detail-section .text p { font-size:14px; line-height:1.8;}
	.detail-section .text .block { padding-top:30px;}
	.detail-section .text a { text-decoration:underline;}
	.detail-section .text a:hover { opacity:0.7;}

/*@talent
/////////////////////////////////////////////////////////////////////*/
.talent .detail-section { border-bottom:1px solid #efeff4;}
.talent .detail-section .headings { padding-bottom:10px; position:relative;}
	.talent .detail-section .headings .pic {
		width:170px; height:170px; border:none;
		position:absolute; top:0; left:0;
	}
	.talent .detail-section .headings .profile { min-height:170px; text-align:left; padding:20px 10px 10px 185px;}
	.talent .detail-section .headings .profile h1 { font-size:22px; line-height:1.35; margin-bottom:5px;}
	.talent .detail-section .headings .profile dl { padding:5px 0 10px;}
	.talent .detail-section .headings .profile dl:after { content:""; clear:both; display:block;}
	.talent .detail-section .headings .profile dt { width:5em; float:left; font-size:12px; padding:3px 0;}
	.talent .detail-section .headings .profile dd { font-size:12px; padding:3px 0 3px 5em;}
.talent #contents .detail-section .btnarea { padding:0 15px 20px;}
.talent .listblock .programlist h2 { margin-bottom:12px;}

/*@mylist
/////////////////////////////////////////////////////////////////////*/
.mylist .programlist h2 { display:none;}
.mylist .headings { height:52px;}
.mylist .headings2 { height:86px; padding-top:50px}

.mylist .headings .edit {
	width:100%; height:40px;
	background:#3c3c3c;
	position:absolute; top:100%; right:0;
	z-index:30;
	}
	.mylist .headings .edit a {
		display:inline-block;
		font-size:13px; color:#fff;
		background:#3c3c3c; border-radius:50px;
		padding:7px 20px 7px 35px;
		position:absolute; top:8px; right:0;
	}
	.mylist .headings .edit a:before,
	.mylist .headings .edit a:after {
		content:""; display:block; width:15px; height:2px;
		background:#eee;
		position:absolute; top:50%; left:15px;
		transform:translateY(-50%);
	}
	.mylist .headings .edit a:before { margin-top:-3px;}
	.mylist .headings .edit a:after { margin-top:3px;}
	body:not(.sp) .mylist .headings .edit a:hover { opacity:0.9;}

/*account*/
.mylist .headings .account {
	width:195px; height:40px;
	background:#fff; border-radius:5px 5px 0 0;
	border-bottom:5px solid #eee; white-space:nowrap;
	position:absolute; bottom:0; right:5px;
	padding:9px 0 0 40px;
	-webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
	}
	.mylist .headings .account .name {
		font-size:11px; font-weight:600;
		letter-spacing:normal;
		padding-right:25px; margin-bottom:3px;
	}
	.mylist .headings .account .name span {
		display:inline-block; font-size:10px; padding-left:0.2em;
		transform:scale(0.85); transform-origin:bottom left;
	}
	.mylist .headings .account .id {
		font-size:10px; color:#4e4e4e; padding-left:0.3em;
		transform:scale(0.9); transform-origin:top left;
	}
	.mylist .headings .account .photo {
		width:30px; height:30px;
		position:absolute; top:5px; left:6px;
		background:#ccc; border-radius:50%;
	}
	.mylist .headings .account .photo img {
		display:block; width:100%;
		border-radius:50%;
		position:absolute; top:50%; left:50%;
		transform:translate(-50%, -50%);
	}

	/*btn-account*/
	.mylist .headings .btn-account {
		position:absolute; top:0; right:0;
		z-index:40; height:100%;
	}
	.mylist .headings .btn-account .open {
		width:28px; height:35px;
		position:absolute; top:50%; right:0;
		transform:translateY(-50%);
		cursor:pointer; z-index:40;
	}
	.mylist .headings .btn-account .open:before {
		content:""; display:block;
		width:6px; height:6px;
		border-bottom:2px solid #01b8de;
		border-right:2px solid #01b8de;
		position:absolute; top:50%; right:12px;
		transform:translateY(-50%) rotate(45deg);
	}
	.mylist .headings .btn-account .open span { display:none;}
	.mylist .headings .btn-account ul {
		display:inline-block;
		background:#01b8de; border-radius:5px;
		position:absolute; top:100%; right:-3px;
		margin-top:-3px; z-index:40;
		transition:none; display:none;
	}
	.mylist .headings .btn-account ul:before {
		content:""; display:block; width:0; height:0;
		border:5px solid transparent;
		border-bottom-color:#01b8de;
		border-width:5px 5px 8px 5px;
		position:absolute; bottom:100%; right:14px;
		margin-bottom:-2px;
	}
	.mylist .headings .btn-account ul li + li { border-top:1px solid #5dcce3;}
	.mylist .headings .btn-account ul li a {
		display:block; text-align:center;
		font-size:12px; font-weight:600; color:#fff;
		padding:8px 13px 7px;
	}
	.mylist .headings .btn-account ul li:first-child a { border-radius:5px 5px 0 0;}
	.mylist .headings .btn-account ul li:last-child a { border-radius:0 0 5px 5px;}
	.mylist .headings .btn-account:hover ul { opacity:1; visibility:visible;}
	.mylist .headings .btn-account ul li a:hover { background:#5dcce3;}

/*login*/
.nologin.mylist .headings { height:auto; padding:15px 0;}
.nologin.mylist .headings h2 { top:100%; transform:translateY(12px); z-index:50;}
.nologin.mylist .headings h2:before { margin-top:-2px;}
.nologin.mylist .headings2 { height:91px; padding-top:55px}
.nologin.mylist .headings .edit { height:45px;}
.nologin.mylist .headings .edit a { top:11px;}

.nologin.mylist .headings .login-to {
	width:90%; max-width:360px;
	font-size:13px; line-height:1.6; text-align:center;
	letter-spacing:0.05em; border-radius:5px;
	background:#eaf4f9 url(../img/login_bg.png) no-repeat center -14px;
	background-size:95% auto;
	padding:15px 0; margin:0 auto;
	}
	.nologin.mylist .headings .login-to .title { font-size:16px; font-weight:600; margin-bottom:6px;}
	.nologin.mylist .headings .login-to .btn-login {
		display:inline-block; min-width:160px; height:28px;
		font-size:13px; font-weight:600; color:#fff; line-height:28px;
		background:#01b8de; border-radius:5px;
		padding:1px 20px 0; margin-top:10px;
		cursor:pointer;
	}

@media screen and (max-width:350px) {
	.mylist .headings { height:48px;}
	.mylist .headings h2 { transform:translateY(-50%) scale(0.9); transform-origin:center left;}
	/*account*/
	.mylist .headings .account { width:175px; padding-left:35px;}
	.mylist .headings .account .name { transform:scale(0.9); transform-origin:center left;}
	.mylist .headings .account .id { transform:scale(0.8); transform-origin:top left;}
	.mylist .headings .account .photo { width:27px; height:27px; left:4px;}
	.mylist .headings .btn-account .open { width:24px;}
	.mylist .headings .btn-account .open:before { right:9px;}
	.mylist .headings .btn-account ul:before { right:11px;}
}


/*@search
/////////////////////////////////////////////////////////////////////*/
.search .listblock .programlist h2 span { color:#40b8dc; padding-right:0.5em;}
.search .headings2 { height:auto;}
.search .selectbox {
	display:inline-block; vertical-align:top;
	width:31%; max-width:200px;
	margin:2px 0.4% 0; position:relative;
	}
	.search .selectbox label {
		display:inline-block; width:100%; line-height:1.5;
		font-size:13px; text-align:center; white-space:nowrap;
		background:#fff; border-radius:50px; overflow:hidden;
		padding:5px 20px 4px 15px; position:relative; z-index:1;
	}
	.search .selectbox label:before {
		content:''; display:block; width:22px;
		height:100%; background:#fff;
		position:absolute; top:0; right:0;
	}
	.search .selectbox label:after {
		content:''; display:block; width:0; height:0;
		border:5px transparent solid;
		border-top-color:#4c4c4c;
		border-width:8px 5px 0 5px;
		position:absolute; top:50%; right:9px;
		margin-top:-3.5px;
	}
	.search .selectbox select {
		display:inline-block; width:100%; line-height:1.5;
		font-size:16px; cursor:pointer; opacity:0;
		position:absolute; top:0; left:0; z-index:2;
		display:none;
	}
	.search .selectbox select option { opacity:1; background-color:#fff;}
/*btn*/
.search .selectbtn { width:60%; padding-top:10px; margin:5px auto 0;}
	.search .selectbtn input[type="button"] {
		display:block; width:100%; line-height:1;
		font-size:14px; color:#fff; cursor:pointer;
		background:#40b8dc; border-radius:50px;
		padding:8px 0;
	}
	.search .selectbtn input[type="button"]:hover { background:#7ecee6;}

/*@epg
/////////////////////////////////////////////////////////////////////*/
.epg #epgArea { padding:0 0 20px; position:relative;}
.epg #epgArea iframe { border:0; width:100%; height:500px !important;}

/*@topics
/////////////////////////////////////////////////////////////////////*/
.topicslist #contents { background:#fff;}
.listblock .programlist.topics { padding:25px 0 50px 16px;}
.d2 .programlist.topics h2 { border-bottom:none; padding:0;}
.d2 .programlist.topics ul li { min-height:100px; border-bottom:1px solid #ddd; padding:10px 0; float:none;}
.d2 .programlist.topics ul li:first-child { border-top:1px solid #ddd;}
	.d2 .programlist.topics ul li a { padding-right:16px;}
	.d2 .programlist.topics ul li .pic { width:80px; height:80px;}
	.d2 .programlist.topics ul li .picinner { width:80px; height:80px;}
	.d2 .programlist.topics ul li .progtitle h3 { font-size:15px;}
	.d2 .programlist.topics ul li .progtitle p { font-size:11px;}

/*@notice
/////////////////////////////////////////////////////////////////////*/
.notice #contentsMain { padding:10px 16px 30px;}
.notice #contentsMain ul { padding-bottom:20px;}
.notice #contentsMain ul li { font-size:14px; line-height:1.6; border-bottom:solid 1px #ddd; padding:12px 0;}
.notice #contentsMain ul li .title { display:block; padding:0 6px;}
.notice #contentsMain ul li a { border-bottom:1px solid #444;}
.notice #contentsMain ul li a:hover { border-color:transparent; opacity:0.7;}
/*date*/
#oshirasebox .date,
.info #contentsMain .date,
.notice #contentsMain .date {
	display:block; line-height:1.2;
	font-size:13px; font-weight:600; color:#40b8dc;
	margin-bottom:6px;
	}
	#oshirasebox .date { margin-left:-5px; margin-bottom:5px;}
	#oshirasebox .date span,
	.info #contentsMain .date span,
	.notice #contentsMain .date span {
		display:inline-block;
		font-size:11px; font-weight:normal;
		color:#fff; letter-spacing:0.05em;
		background:#ccc; border-radius:50px;
		padding:.22em 10px .12em 11px; margin-right:6px;
		position:relative; top:-1px;
	}
	#oshirasebox .date.red,
	.info #contentsMain .date.red,
	.notice #contentsMain .date.red { color:#ee190d;}
	#oshirasebox .date.blue,
	.info #contentsMain .date.blue,
	.notice #contentsMain .date.blue { color:#40b8dc;}
	#oshirasebox .date.gray,
	.info #contentsMain .date.gray,
	.notice #contentsMain .date.gray { color:#878796;}
	#oshirasebox .date.red span,
	.info #contentsMain .date.red span,
	.notice #contentsMain .date.red span { background:#ee190d;}
	#oshirasebox .date.blue span,
	.info #contentsMain .date.blue span,
	.notice #contentsMain .date.blue span { background:#40b8dc;}
	#oshirasebox .date.gray span,
	.info #contentsMain .date.gray span,
	.notice #contentsMain .date.gray span { background:#878796;}
/*detail*/
.notice.detail .headings .back {
	position:absolute; top:50%; right:10px;
	transform:translateY(-50%);
	}
	.notice.detail .headings .back a {
		display:block; font-size:12px; color:#fff;
		border:1px solid #fff; border-radius:50px;
		padding:7px 13px 6px 28px; position:relative;
	}
	.sp.notice.detail .headings .back a { font-weight:600;}
	.notice.detail .headings .back a:before {
		content:""; display:block; width:7px; height:7px;
		border-bottom:2px solid #fff; border-left:2px solid #fff;
		position:absolute; top:50%; left:15px; margin-top:-4px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.notice.detail .headings .back a:hover { background:#fff; color:#40b8dc;}
	.notice.detail .headings .back a:hover:before { border-color:#40b8dc;}
/*date*/
.notice.detail #contentsMain .date { font-size:14px; margin-bottom:15px;}
.notice.detail #contentsMain .date span { font-size:13px; top:0;}
/*main*/
.notice.detail #contentsMain { padding-top:20px;}
.notice.detail #contentsMain h2 {
	font-size:18px; line-height:1.4;
	padding-bottom:13px; margin-bottom:10px;
	position:relative;
}
.notice.detail #contentsMain h2:after {
	content:""; display:block; width:100%; height:3px;
	background:rgb(64,184,220);
	background:-webkit-linear-gradient(left, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
	background:linear-gradient(to right, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
	position:absolute; bottom:0; left:0;
}
.notice.detail #contentsMain p { font-size:15px; line-height:1.8; padding:10px 5px 25px;}
/*btn*/
.notice.detail #contentsMain .rellink { padding:10px 10px 0;}
	.notice.detail #contentsMain .rellink a {
		display:block; font-size:15px; color:#333;
		background:#fff; border-radius:6px;
		border:solid 1px #c9c9c9; line-height:1.35;
		padding:11px 10px 10px 40px; position:relative;
	}
	.notice.detail #contentsMain .rellink a:before {
		content:""; display:block; width:7px; height:7px;
		border-top:2px solid #40b8dc; border-right:2px solid #40b8dc;
		position:absolute; top:50%; left:15px; margin-top:-4px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.notice.detail #contentsMain .rellink a:hover{ background-color:#f8f8f8;}
.notice.detail #contentsMain .back { text-align:center; padding:30px 10px 0;}
	.notice.detail #contentsMain .back a {
		display:inline-block; font-size:15px; color:#40b8dc;
		padding:8px 13px 7px 30px; position:relative;
	}
	.notice.detail #contentsMain .back a:before {
		content:""; display:block; width:7px; height:7px;
		border-bottom:2px solid #40b8dc; border-left:2px solid #40b8dc;
		position:absolute; top:50%; left:15px; margin-top:-3px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.notice.detail #contentsMain .back a:hover { color:#555;}
	.notice.detail #contentsMain .back a:hover:before { border-color:#666;}

/*@info
/////////////////////////////////////////////////////////////////////*/
.info .headings h2 { padding-left:0;}
.info .headings h2:before { display:none;}
.info #contentsMain { min-height:350px; padding:30px 16px 50px;}
.info #contentsMain a { border-bottom:1px solid #0a0a0a; word-break:break-all;}
.info #contentsMain a:hover { border-color:transparent; opacity:0.7;}
.info #contentsMain .small { font-size:10px;}
.info #contentsMain .right { text-align:right;}

.info #contentsMain .additional{
	margin-left:-5em;
	display:block;
	padding:14px 0;
	position:relative;
}
.info #contentsMain .additional strong { display:block;margin-bottom:-15px;}

/*////////////about////////////*/
.about #contentsMain { padding:0 0 30px;}
	.about #contentsMain h2 {
		font-size:25px; color:#333; line-height:1.5; text-align:center;
		background:#efeff4; padding:24px 10px 20px;
	}
	.about #contentsMain h2 span { font-size:30px; color:#40b8dc; padding:0 0.08em;}
	.about .block1 .read { font-size:15px; line-height:1.8; padding:20px 16px;}
	.about .block1 .note { font-size:12px; text-align:center; padding:0 0 20px;letter-spacing:-0.05em;}
	.about .block1 ul {
		width:95%; height:0; padding-top:46.96%;
		background:url(../img/about0.png) no-repeat;
		background-size:contain;
		margin:0 auto 25px;
	}
	.about .block1 ul li { display:none;}
	.about .block2 ul li { color:#fff; text-align:center; background:#40b8dc; padding:33px 16px;}
	.about .block2 ul li.a2,
	.about .block2 ul li.a4 { background:#2aa7cc;}
	.about .block2 ul li h3 { font-size:24px; margin-bottom:15px;}
	.about .block2 ul li p { font-size:13px; line-height:1.35; margin-bottom:15px;}
	.about .block2 ul li img { display:block; width:90%; margin:0 auto 10px;}
	.about .block2 ul li img + p { font-size:11px; margin-bottom:0;}
	.about .block3 { background:#f5f5fa; padding:40px 0 30px;}
	.about .block3 h3 { font-size:30px;margin-bottom:15px;text-align:center;}

	.about .block3 .videoplayer { width:100%; font-size:0; margin:0 auto;}
	.about .block3 .videoplayer h4 {
		display:inline-block; vertical-align:top;
		width:calc(100% - 130px); min-height:80px;
		font-size:20px; padding:10px 10px 10px 12px;
	}

	.about .block3 .share {
		display:inline-block; vertical-align:top;
		width:125px; text-align:center;
		padding-top:10px; position:relative;
	}
	.about .block3 .share p { font-size:11px; line-height:1.2; margin-bottom:5px;}
	.about .block3 .share ul { width:125px; font-size:0;}
	.about .block3 .share ul li { display:inline-block; vertical-align:middle; margin:0 3px;}
	.about .block3 .share ul li a {
		display:block; width:40px; height:40px;
		border-radius:6px; border:none !important;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:relative;
	}
	.about .block3 .share ul li.fb a { background:#3b5998;}
	.about .block3 .share ul li.tw a { background:#55acee;}
	.about .block3 .share ul li a:before {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/parts_icon.png) no-repeat;
		background-size:300px auto;
		position:absolute; top:50%; left:50%;
		margin:-15px 0 0 -15px;
	}
	.about .block3 .share ul li.fb a:before { background-position:-50px -115px;}
	.about .block3 .share ul li.tw a:before { background-position:-85px -115px;}

	.about .vjs-playlist { background:none; font-size:13px; padding:15px 12px 0;}
	.about .vjs-playlist .vjs-playlist-item { outline:none;}
	.about .vjs-mouse.vjs-playlist .vjs-playlist-item { margin-bottom:12px;}
	.about .vjs-playlist .vjs-playlist-thumbnail { margin-right:10px;}
	.about .vjs-playlist time { font-size:12px;}
	.about .vjs-playlist cite { 
		display:inline-block; color:#000; margin-top:3px;
		width: calc(100% - 111px);
		white-space: inherit;
		height: 56px;
		line-height: 1.5;
	}
	.vjs-mouse.vjs-playlist .vjs-playlist-item:focus .vjs-playlist-thumbnail:before, .vjs-mouse.vjs-playlist .vjs-playlist-item:hover .vjs-playlist-thumbnail:before{border-radius:50%;height:40px;height:40px;line-height:40px;font-size:26px;}

	.about .block3.pr { background:#fff; padding:45px 16px;}
	.about .block3.pr + .block3.pr { border-top:12px solid #f5f5fa;}
	.about .block3.pr h3 { font-size:26px;}
	.about .block3.pr ul li { font-size:15px; line-height:1.6; border-bottom:solid 1px #ddd; padding:12px 0;}
	.about .block3.pr ul li .title { display:block;}
	.about .block3.pr ul li a { border-bottom:1px solid #444;}
	.about .block3.pr ul li a:hover { border-color:transparent; opacity:0.7;}
	/*more*/
	.about .block3 .btn-more { text-align:center; padding-top:30px;}
	.about .block3 .btn-more a {
		display:inline-block; width:80%;
		font-size:16px; color:#fff; font-weight:600;
		background:#40b8dc; border-radius:50px;
		border:none !important;
		padding:.7em 1em; position:relative;
	}
	.about .block3 .btn-more a:after {
		content:""; display:inline-block; width:10px; height:10px;
		border-bottom:2px solid #fff; border-right:2px solid #fff;
		position:absolute; top:50%; left:50%; margin:-9px 0 0 3.5em;
		-webkit-transform:rotate(45deg); transform:rotate(45deg);
	}

/*/////////////faq/////////////*/
.faq #contentsMain h2 {
	font-size:20px;
	padding-bottom:15px; margin-bottom:20px;
	position:relative;
}
.faq #contentsMain h2:after {
	content:""; display:block; width:100%; height:3px;
	background:rgb(64,184,220);
	background:-webkit-linear-gradient(left, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
	background:linear-gradient(to right, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
	position:absolute; bottom:0; left:0;
}
.faq #contentsMain h3 {
	font-size:17px; background:#efeff4;
	padding:12px 10px 10px; margin-bottom:15px;
}
.faq #contentsMain .indent { display:block; text-indent:-1em; padding-left:1.2em;}
.faq #system { padding-bottom:10px;}
	.faq #system h4 { font-size:16px; text-indent:-1.2em; padding-left:1.1em; margin-bottom:3px;}
	.faq #system .block {
		font-size:14px; line-height:1.6;
		padding:0 5px; margin-bottom:30px;
	}
	.faq #system .block p { font-size:15px; padding-bottom:20px;}
	.faq #system .block dl + p { font-size:13px; padding-bottom:0; margin-top:-10px;}
	.faq #system dl { padding-bottom:20px;}
	.faq #system dl:after { content:""; clear:both; display:block;}
	.faq #system dt { width:5em; float:left; padding:7px 0 5px;}
	.faq #system dd { text-indent:-1em; padding:6px 0 5px 6em; border-top:1px solid #ddd;}
	.faq #system dd:last-child { border-bottom:1px solid #ddd;}
	.faq #system .download { padding-top:25px;}
	.faq #system .download h4 { margin-bottom:6px;}
	.faq #system .download p { font-size:13px; line-height:1.5; padding-bottom:8px;}
	.faq #system .download p br { display:none;}
.faq #qa dl { font-size:16px; padding:0 5px 20px;}
	.faq #qa dl:last-child { padding-bottom:0;}
	.faq #qa dt {
		font-size:16px; line-height:1.6;
		padding:2px 35px 18px 32px;
		cursor:pointer; position:relative;
	}
	.faq #qa dd {
		font-size:15px; line-height:1.6; border:1px solid #40b8dc;
		padding:18px 15px 0 40px; margin:-10px 0 20px; position:relative;
		display:none;
	}
	.faq #qa dd p { padding-bottom:20px;}
	.faq #qa dd h4 { margin-bottom:5px;}
	.faq #qa dd ul { font-size:14px; padding:0 0 20px 20px;}
	.faq #qa dd ul li { list-style:disc; margin-bottom:5px;}
	.faq #qa dt:before,
	.faq #qa dd:before { display:block; color:#40b8dc; line-height:1; position:absolute;}
	.faq #qa dt:before { content:"Q"; top:1px; left:0; font-size:26px;}
	.faq #qa dd:before { content:"A"; top:15px; left:13px; font-size:26px;}
	.faq #qa dt:after {
		content:""; display:block; width:10px; height:10px;
		border-bottom:2px solid #40b8dc; border-left:2px solid #40b8dc;
		position:absolute; top:4px; right:10px;
		-webkit-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}
	.faq #qa dt.active { color:#40b8dc;}
	.faq #qa dt.active:after {
		border:none; top:12px;
		border-top:2px solid #40b8dc;
		border-right:2px solid #40b8dc;
	}

/*////////////contact////////////*/
.contact #contentsMain { font-size:14px;}
.contact #contentsMain .red { color:#ee190d; font-weight:600;}
.contact #contentsMain form { margin-bottom:30px;}
	.contact #contentsMain form > p:first-child { font-size:13px;}
	.contact #contentsMain form dl { line-height:1.5; border-bottom:1px solid #ddd; padding:1.5em 0;}
	.contact #contentsMain form dt { font-size:16px; margin-bottom:4px;}
	.contact #contentsMain form #bug { /*display:none;*/}
	.contact #contentsMain form .note { display:block; font-size:12px; margin-top:5px;}
	.contact #contentsMain form .note2 {
		display:block; font-size:12px; text-indent:-3em;
		padding-left:3em; margin-top:10px;
	}
	.contact #contentsMain form .w80 { width:80%;}
	.contact #contentsMain form .version { width:80%; padding-top:16px;}
	.contact #contentsMain form .err {
		display:block; font-size:12px; font-weight:600;
		color:#ee190d; margin-top:5px;
	}
	.contact #contentsMain .selectContact { width:100%; position:relative;}
	.contact #contentsMain .selectContact:after {
		content:''; display:block; width:0; height:0;
		border:8px transparent solid;
		border-top-color:#4c4c4c;
		border-width:12px 8px 0 8px;
		position:absolute; top:50%; right:15px;
		margin-top:-5px; z-index:10;
	}
	.contact #contentsMain input {
		width:100%; font-size:16px; line-height:1.5;
		letter-spacing:0.03em; border:1px solid #444;
		padding:.55em 13px .5em; position:relative;
	}
	.contact #contentsMain textarea {
		width:100%; height:200px; font-size:16px;
		line-height:1.5; letter-spacing:0.03em;
		border:1px solid #444;
		padding:.85em 13px; position:relative;
	}
	.contact #contentsMain select {
		width:100%; font-size:16px; color:#444; line-height:1.5;
		border:1px solid #444; cursor:pointer; overflow:hidden;
		padding:.55em 40px .5em 13px; position:relative;
		z-index:20;
	}
	.contact #contentsMain select::-ms-expand { display:none;}
	.contact #contentsMain input:focus,
	.contact #contentsMain textarea:focus,
	.contact #contentsMain select:focus { border:1px solid #40b8dc;}
	/*btn*/
	.contact #contentsMain form .sendbtn { font-size:0; text-align:center; padding-top:30px;}
	.contact #contentsMain form button {
		display:inline-block; width:90%;
		font-size:17px; font-weight:600; color:#fff;
		border-radius:6px; background:#40b8dc;
		-webkit-box-shadow:none; box-shadow:none;
		padding:.85em 10px .8em; cursor:pointer;
		position:relative; z-index:10;
	}
	.contact #contentsMain form button:hover { opacity:0.8;}
	.contact #contentsMain form button.back { width:25%; background:#aaa; margin-right:2%;}
	.contact #contentsMain form button.back + button { width:70%;}
	.contact #contentsMain form button.back:hover { background:#666;}
	.contact #contentsMain form::-moz-focus-inner { padding:0; border:0;}
.contact #contentsMain ul.attn {
	font-size:13px; line-height:1.6;
	background:#efeff4;
	padding:24px 20px;
	}
	.contact #contentsMain ul.attn li { text-indent:-1em; padding-left:1em; margin-bottom:15px;}
	.contact #contentsMain ul.attn li:last-child { margin-bottom:0;}
	.contact .beforemsg {
		width:100%; font-size:15px; line-height:1.6; text-align:center;
		background:#e7f6fa; padding:12px 10px 10px; margin:-10px auto 30px;
	}

/*kakunin*/
.contact #contentsMain h2 {
	font-size:20px; text-align:center;
	padding-bottom:15px; margin-bottom:20px;
	position:relative;
}
.contact #contentsMain h2:after {
	content:""; display:block; width:100%; height:3px;
	background:rgb(64,184,220);
	background:-webkit-linear-gradient(left, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
	background:linear-gradient(to right, rgba(64,184,220,1) 0%,rgba(60,219,229,1) 100%);
	position:absolute; bottom:0; left:0;
}
.contact #contentsMain form dd p {
	width:100%; font-size:14px; letter-spacing:0.05em;
	background:#f5f5f5; position:relative;
	padding:10px 15px 8px;
}
.contact #contentsMain form #normal dd p,
.contact #contentsMain form #bug .none dd p,
.contact #contentsMain form #bug .reset dd p { padding:20px;}
/*end*/
.contact.end #contentsMain p { font-size:16px; line-height:2;}
.contact.end #contentsMain p br { display:none;}

/*////////////terms////////////*/
.terms #contentsMain h2 { font-size:18px; line-height:1.5; margin-bottom:10px;}
.terms #contentsMain p { font-size:14px; line-height:1.6; padding-bottom:20px;}
.terms #contentsMain .block { margin-bottom:20px;}
.terms #contentsMain .block:last-child { margin-bottom:0;}

/*////////////privacy////////////*/
.privacy #contentsMain {
	font-size:13px; line-height:1.7;
	font-feature-settings: "palt"; letter-spacing:0.1em;
	font-family:"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	padding-top:25px;
}
.privacy #contentsMain h2 {
	font-size:20px; line-height:1.5;
	padding-left:1.3em; margin-bottom:15px;
	position:relative;
}
.privacy #contentsMain h2 span { display:block; position:absolute; top:0; left:0;}
.privacy #contentsMain h3 { font-size:16px; margin-bottom:10px;}
.privacy #contentsMain h4 { font-size:15px; margin-bottom:5px;}
.privacy #contentsMain p { padding-bottom:25px; word-wrap:break-word;}
.privacy #contentsMain > p { padding-bottom:40px;}
.privacy #contentsMain > p.right { padding:35px 0 0;}
.privacy #contentsMain ol,
.privacy #contentsMain ul { padding:0 0 25px 20px; word-break:break-all;}
.privacy #contentsMain ol li { list-style:decimal; padding:2px 0;}
.privacy #contentsMain ul li { list-style:disc; padding:2px 0;}
.privacy #contentsMain .indent { display:block; text-indent:-1em; padding-left:1em;}
.privacy #contentsMain .indent li { list-style:none;}
.privacy #contentsMain .indent2 { padding-left:0; margin-top:-10px;}
.privacy #contentsMain .indent2 li { list-style:none; padding-top:6px;}

.privacy #contentsMain .block + .block { padding-top:50px;}
.privacy #contentsMain .pd { padding-bottom:25px;}
.privacy #contentsMain .note { font-size:12px; padding:0 10px;}
.privacy #contentsMain p.note { padding:0 0 25px;}
.privacy #contentsMain .none { padding-bottom:5px;}
.privacy #contentsMain table { width:100%; table-layout:fixed; border-collapse:collapse; margin-bottom:20px;}
.privacy #contentsMain table ul { padding-bottom:0;}
.privacy #contentsMain th,
.privacy #contentsMain td { border:1px solid #ddd; padding:15px 8px;}
.privacy #contentsMain th { font-weight:normal; background:#efeff4; padding:5px 10px;}
.privacy #contentsMain td { vertical-align:top;}
.privacy #contentsMain .block p:last-child,
.privacy #contentsMain .block ul:last-child,
.privacy #contentsMain .block .pd:last-child,
.privacy #contentsMain .block table:last-child { padding-bottom:0; margin-bottom:0;}

.informative .headings { height:65px;}
.informative .headings h2 { line-height:1.2; white-space:normal;}
.informative #contentsMain h2 { padding-left:0;}


/*/////////mailmagazine/////////*/
.mailmagazine #contentsMain { text-align:center;}
	.mailmagazine #contentsMain > p { font-size:15px; line-height:1.8; text-align:left; padding-bottom:20px;}
	.mailmagazine #contentsMain > p.note { font-size:12px; line-height:1.5;}
	.mailmagazine #form { padding:0 0 30px;}
	.mailmagazine #form .msg { font-size:15px; color:#ee190d; font-weight:600; padding:20px; display:none;}
	.mailmagazine #form input[type="email"] {
		width:100%; font-size:16px; line-height:1.5;
		background:#fff; border:2px solid #40b8dc; border-radius:5px;
		padding:10px 1em; margin-bottom:25px; position:relative;
	}
	.mailmagazine #form input[type="email"]::-webkit-input-placeholder { color:#40b8dc; opacity:1;}
	.mailmagazine #form input[type="email"]::-moz-placeholder { color:#40b8dc; opacity:1;}
	.mailmagazine #form input[type="email"]:-ms-input-placeholder { color:#40b8dc;}
	.mailmagazine #form input[type="email"]:focus::-webkit-input-placeholder { color:#ccc;}
	.mailmagazine #form input[type="email"]:focus::-moz-placeholder { color:#ccc;}
	.mailmagazine #form input[type="email"]:focus:-ms-input-placeholder { color:#ccc;}
	.mailmagazine #form button {
		display:inline-block; width:70%;
		font-size:16px; color:#fff; background:#40b8dc; cursor:pointer;
		-webkit-box-shadow:none; box-shadow:none; border-radius:6px;
		padding:.6em; margin:0 auto;
		position:relative; z-index:10;
	}
	.mailmagazine #form button:hover { opacity:0.8;}
	.mailmagazine form::-moz-focus-inner { padding:0; border:0;}
	/*loader*/
	.mailmagazine .loader { padding-top:12px;}
	.mailmagazine .loader img { display:block; width:230px; margin:0 auto;}
	.mailmagazine .success {
		font-size:16px; text-align:center;
		border-radius:4px; padding:10px 0; margin:0 auto;
	}

/*///////////Enquete201804///////////*/
#enquete .eqbg{
	display:block;
	position:fixed;
	top:0;left:0;
	z-index:1000;
	width:100%;height:100%;
	background-color: rgba(0,100,130,0.8);
}
#enquete .eqform{
	display:block;
	position:absolute;
	top:50%;left:50%;
	z-index:1001;
	width:90%;
	height:600px;
	margin-left:-45%;
	margin-top:-300px;
	background:#fff;
	box-shadow:0 5px 60px rgba(0,20,20,0.4);
}
#enquete .eqform iframe{
	width:100%;
	height:600px;
}

/*////////////app////////////*/
.app #contentsMain .image { width:80%; margin:0 auto;}
.app #contentsMain .image img { display:block; width:100%;}
.app #contentsMain .text {}
	.app #contentsMain .text p { font-size:15px; line-height:1.6; padding-bottom:30px;}
	.app #contentsMain .text .attn li {
		font-size:12px; line-height:1.5;
		text-indent:-1em; padding-left:1em; margin-bottom:5px;
	}
	.app #contentsMain .download {
		background:#efeff4; text-align:center; border-radius:20px;
		padding:25px 5px; margin-top:20px;
	}
	.app #contentsMain .download h2 { font-size:18px; font-weight:600; color:#333; line-height:1.35;}
	.app #contentsMain .download h2 span { color:#40b8dc;}
	.app #contentsMain .download h2:after {
		content:''; display:block; width:0; height:0;
		border:8px transparent solid;
		border-top-color:#d3d3d6;
		border-width:32px 80px 0 80px;
		margin:16px auto 10px;
	}
	/*badge*/
	.app #contentsMain .badge li { display:inline-block; vertical-align:top; margin:5px 1px;}
	.app #contentsMain .badge li.app_store { width:45%;}
	.app #contentsMain .badge li.google_play { width:45%;}
	.app #contentsMain .badge li a {
		display:block; width:100%; height:60px;
		background:transparent no-repeat;
		background-size:contain;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		border:none;
	}
	.app #contentsMain .badge li.app_store a { background-image:url(../img/badge_app_store.svg);}
	.app #contentsMain .badge li.google_play a { background-image:url(../img/badge_google_play.png);}

/*////////////systemerr////////////*/
.systemerr #contentsMain { padding-top:30px;}
.systemerr #contentsMain h1 {
	font-size:24px; line-height:1.2; font-weight:600;
	color:#40b8dc; margin-bottom:.55em;
}
.systemerr #contentsMain p { font-size:14px; line-height:1.6; padding-bottom:20px;}
.systemerr #contentsMain a { color:#40b8dc; font-weight:600; border-bottom:1px solid #40b8dc;}

/*////////////TV////////////*/
.tv.info #contentsMain {padding:25px 0 50px;}
.tv #contentsMain a { color:#40b8dc; border-bottom-color:#40b8dc;}
.tv #contentsMain h3{font-size:21px;text-align:center;font-weight:600;margin-bottom:30px;line-height:1.6;}
.tv #contentsMain h4{font-size:14px;margin:0 15px 15px;}
.tv #contentsMain>ul.device{font-size:14px;margin:0 15px;padding-bottom:10px;}
.tv #contentsMain>ul.device li{margin-bottom:10px;border-radius:6px;text-indent:-1em;margin-left:1em; line-height:1.6;}
.tv #contentsMain>ul.device li:before{content:'・';}
.tv #contentsMain .main-img {
	width:100%; height:0;
	padding-top:calc(410 / 960 * 100%);
	background:url(../img/info_tv_202105_sp.jpg) no-repeat;
	background-size:contain;
	margin:10px 0 20px;
}
.tv #contentsMain .image { width:95%; margin:0 auto;}
.tv #contentsMain .image img { display:block; width:100%;}
.tv #contentsMain > p { font-size:15px; line-height:1.6; padding:0 15px 15px;}
.tv #contentsMain > p br{display:none;}
.tv #contentsMain .download {
	background:#efeff4; text-align:center; border-radius:20px;
	padding:20px 5px 25px; margin:10px 15px;
	}
	.tv #contentsMain .download h4 { font-size:17px; font-weight:600; color:#333; line-height:1.35;}
	/*btn*/
	.tv #contentsMain .btn { display:table; width:100%; table-layout:fixed; padding:10px 3px 0;}
	.tv #contentsMain .btn li {
		display:table-cell; vertical-align:middle;
		background:#2d2d2d; border-radius:14px;
		border:4px solid #efeff4;
		position:relative;
	}
	.tv #contentsMain .btn li a {
		display:block; width:100%; height:100%;
		font-size:15px; font-weight:600; color:#fff;
		line-height:1.35; border:none;
		padding:20px 3px; position:relative;
	}
.tv #contentsMain > .attn { padding:15px;}
	.tv #contentsMain > .attn li {
		font-size:12px; line-height:1.5;
		text-indent:-1em; padding-left:1em;
		margin-bottom:5px;
	}
.smooth { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}


/*＠Overlay
/////////////////////////////////////////////////////////////////////*/
.mfp-bg {
	width:100%; height:100%; background:#000;
	position:fixed; top:0; left:0; z-index:1042; overflow:hidden;
	opacity:0.5;
}
.mfp-wrap {
	width:100%; height:100%; position:fixed; top:0; left:0; z-index:1043;
	outline:none !important; -webkit-backface-visibility:hidden;
}
.mfp-container {
	width:100%; height:100%; text-align:center;
	position:absolute; top:0; left:0;
	box-sizing:border-box;
	}
	.mfp-container:before { content:''; display:inline-block; height:100%; vertical-align:middle;}
	.mfp-align-top .mfp-container:before { display:none;}
.mfp-content { position:relative; display:inline-block; text-align:left; vertical-align:middle; margin:0 auto; z-index:1045;}
.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content { width:100%; cursor:auto;}
.mfp-ajax-cur { cursor:progress;}
.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor:-moz-zoom-out; cursor:-webkit-zoom-out; cursor:zoom-out;}
.mfp-zoom { cursor:pointer; cursor:-webkit-zoom-in; cursor:-moz-zoom-in; cursor:zoom-in;}
.mfp-auto-cursor .mfp-content { cursor:auto;}
.mfp-close, .mfp-arrow,
.mfp-preloader,
.mfp-counter { -webkit-user-select:none; -moz-user-select:none; user-select:none;}
.mfp-loading.mfp-figure { display:none;}
.mfp-hide { display:none !important;}
.mfp-preloader {
	position:absolute; top:50%; left:8px; right:8px; z-index:1044;
	width:auto; text-align:center; color:#ccc; margin-top:-0.8em;
	}
	.mfp-preloader a { color:#ccc;}
	.mfp-preloader a:hover { color:#fff;}
	.mfp-s-ready .mfp-preloader { display:none;}
.mfp-s-error .mfp-content { display:none;}

button.mfp-close, button.mfp-arrow {
	display:block; overflow:visible; cursor:pointer; border:0;outline:none;
	-webkit-box-shadow:none; box-shadow:none; -webkit-appearance:none;
	padding:0; z-index:1046 !important;
}
button::-moz-focus-inner { padding:0; border:0;}
/*close*/
button.mfp-close {
	width:110px; height:40px; background:none; z-index:1046;
	text-indent:110%; white-space:nowrap; overflow:hidden;
	position:absolute; bottom:-50px; left:50%;
	margin-left:-55px;
	}
	button.mfp-close:before {
		content:""; display:block; width:100px; height:26px;
		background:url(../img/icon.png) no-repeat 0 -39px;
		background-size:100px auto;
		position:absolute; top:50%; left:50%;
		margin:-13px 0 0 -50px;
	}
/*arr*/
.mfp-arrow {
	width:30px; height:80px; background:#e1dcb9;
	position:absolute; top:50%;
	margin:0; margin-top:-22.5px; padding:0;
	-webkit-tap-highlight-color:transparent;
	}
	.mfp-arrow:hover { opacity:1;}
	.mfp-arrow-left { left:0; border-radius:0 6px 6px 0;}
	.mfp-arrow-right { right:0; border-radius:6px 0 0 6px;}
	.mfp-arrow:before {
		content:""; display:block; width:20px; height:20px;
		background:url(../img/parts.png) no-repeat;
		background-size:480px auto;
		position:absolute; top:50%; margin-top:-10px;
	}
	.mfp-arrow-left:before { background-position:-370px -37px; left:5px;}
	.mfp-arrow-right:before { background-position:-345px -37px; right:5px;}
/*iframe*/
.mfp-iframe-holder { /*padding-top:40px; padding-bottom:40px;*/}
.mfp-iframe-holder .mfp-content { line-height:0; width:100%; max-width:800px;}
.mfp-iframe-scaler { width:100%; height:0; overflow:hidden; padding-top:56.25%;}
.mfp-iframe-scaler iframe {
	display:block; width:100%; height:100%;
	position:absolute; top:0; left:0;
}
/*img*/
img.mfp-img {
	display:block; width:auto; max-width:96%;
	height:auto; line-height:0;
	box-sizing:border-box;
	margin:0 auto;
}

/*///////////animation///////////*/
.mfp-zoom-in .mfp-container,
.mfp-zoom-in.mfp-bg {
	opacity:0;
	-webkit-backface-visibility:hidden;
	-webkit-transition:all 0.2s ease-in-out;
	transition:all 0.2s ease-in-out;
}
.mfp-zoom-in.mfp-ready .mfp-container { opacity:1;}
.mfp-zoom-in.mfp-ready.mfp-bg { opacity:0.5;}
.mfp-zoom-in.mfp-removing .mfp-container,
.mfp-zoom-in.mfp-removing.mfp-bg { opacity:0;}

/*/////////////listBox/////////////*/
#listBox { width:90%; background:#fff; text-align:left; margin:40px auto;}
	#listBox h2 { font-size:14px; background:#f3f3f3; padding:12px 16px 10px;}
	#listBox .delete {
		display:block; width:100%;
		font-size:15px; text-align:center; color:#fff;
		background:#40b8dc; cursor:pointer;
		padding:15px 0;
	}
	#listBox .delete.off { color:#e0eff3; background:#7ecee6; cursor:default;}
	#listBox ul { padding:16px;}
	#listBox ul li { display:inline-block; width:49%; vertical-align:top; margin-bottom:10px;}
	/*input*/
	#listBox input[type=checkbox] { display:inline-block; width:20px; height:20px; vertical-align:middle;}
	#listBox input[type=checkbox] + label {
		position:relative; display:inline-block; margin-right:10px;
		font-size:13px; line-height:1.35; cursor:pointer;
	}
	@media (min-width:1px) {
		#listBox input[type=checkbox] { display:none;}
		#listBox input[type=checkbox] + label { padding:5px 0 5px 22px;}
		#listBox input[type=checkbox] + label::before {
			content:""; display:block; width:18px; height:18px;
			background:#fff; border:2px solid #cdcdd2; border-radius:50%;
			position:absolute; top:5px; left:0;
			box-sizing:border-box;
		}
		#listBox input[type=checkbox]:checked + label::before {
			background:#40b8dc; border:none;
			box-sizing:border-box;
		}
		#listBox input[type=checkbox]:checked + label::after {
			content:""; display:block; width:7px; height:4px;
			border-left:2px solid #fff; border-bottom:2px solid #fff;
			position:absolute; top:10px; left:4.5px;
			-webkit-transform:rotate(-45deg);
			transform:rotate(-45deg);
		}
	}

/*/////////////DIMMER/////////////*/
.dimmer{position:fixed;width:100%;height:100vh;background:rgba(0,0,0,0.75);top:0;left:0;z-index:9999;display:none;}

/*SP*/
.sp #oshirasebox a.more,
.sp #oshirasebox .date span,
.sp.notice #contentsMain .date span { font-weight:600;}

/*@loader
/////////////////////////////////////////////////////////////////////*/
.cov{
	width:100%;height:190px;
	z-index:100;
}
.cov *,
.cov *::before,
.cov *::after { box-sizing:border-box;}
.loader {
	display:block;
	margin:60px auto;
	width:50px;
	height:50px;
	border:2px solid rgba(64,184,220,.5);
	border-radius:50%;
	animation:spin 0.75s infinite linear;
}
.loader::before,
.loader::after {
	left:-2px;
	top:-2px;
	display:block;
	position:absolute;
	content:'';
	width:inherit;
	height:inherit;
	border:inherit;
	border-radius:inherit;
}
/**/
.loader { border-top-color:transparent;}
.loader::after {
	display:block;
	border-color:transparent;
	border-top-color:rgba(60,219,229,.5);
	-webkit-animation:spin 1.25s infinite linear reverse;
	animation:spin 1.25s infinite linear reverse;
}
@-webkit-keyframes spin {
	from { transform:rotate(0deg);}
	to { transform:rotate(360deg);}
}
@keyframes spin {
	from { transform:rotate(0deg);}
	to { transform:rotate(360deg);}
}


/*informative*/
.waiting {
	width: 6em;
	height: 10px;
	display:inline-block;
	border-radius: 3px;
	background-image: 
		repeating-linear-gradient(
			-45deg,
			#f9f9f9,
			#f9f9f9 11px,
			#e6e6e6 10px,
			#e6e6e6 20px /* determines size */
		);
	background-size: 28px 28px;
	-webkit-animation: move .5s linear infinite;
	animation: move .5s linear infinite;
}
@-webkit-keyframes move {
	0% { background-position: 0 0;}
	100% { background-position: 28px 0;}
}
@keyframes move {
	0% { background-position: 0 0;}
	100% { background-position: 28px 0;}
}
.tglsw{
	display:inline-block;
	width: 31px;
	height: 18px;
	
	background: #fff;
	color:#fff;
	padding:0;
	margin:0 5px 0 0;
	position: relative;
	top:3px;
	cursor: pointer;
	
	box-sizing: border-box;
	border-radius: 100px;
	border: 2px solid #e6e6e6;
	
	transition: box-shadow 0.2s ease-out, border-color 0.2s ease-out 0.02s;
}
.tglsw:after{
	height: 14px;
	width: 14px;
	
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	
	transform: translateX(0);
	transition: all 0.2s ease-out;
	
	border-radius: 100px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
	box-sizing: border-box;
}
.tglsw.on{
	box-shadow: 0px 0px 0px 12.5px #40b8dc inset;
	border-color:#40b8dc;
}
.tglsw.on:after{
	transform: translateX(13px);
}

/*splash*/
#splash {
	width:100%; height:100%;
	background:rgba(0, 0, 0, 0.4);
	position:fixed; top:0; left:0; z-index:9999;
	cursor:pointer;
	}
	#splash div {
		width:240px; height:0; padding-top:305px;
		background:url(../img/fifaworldcup2018/splash_sp.jpg?v2) no-repeat;
		background-size:cover;
		box-shadow:0 0 15px 7px rgba(0, 0, 0, 0.2);
		position:absolute; top:50%; left:50%;
		transform:translateY(-50%) translateX(-50%);
		-webkit-transform:translateY(-50%) translateX(-50%);
	}
	#splash div:after {
		content:"閉じる"; display:block; width:200px; height:36px;
		font-size:15px; color:#fff; line-height:36px;
		text-align:center; background:#000;
		margin:10px auto 0;
	}

/*@media
/////////////////////////////////////////////////////////////////////*/
@media screen and (max-width:650px){
	#globalfooter .f2 .txtLink ul { padding: 0 15px 20px;}
	.listblock .programlist.normal ul li { width:50%;}
}
@media screen and (max-width:550px){
	#globalfooter .f2 .txtLink ul { width:56.5%; padding:0;}
	#globalfooter .f2 .txtLink ul:nth-child(2) { width:39%;}
	#globalfooter .f2 .txtLink ul:nth-child(3) { width:100%;}
	#globalfooter .f2 .txtLink ul:nth-child(3) li { display:inline-block; vertical-align:top; width:56.5%;}
	#globalfooter .f2 .txtLink ul:nth-child(3) li:nth-child(2) { width:39%;}
	#globalfooter .f2 .txtLink ul:nth-child(3) li:last-child { width:39%;}
	.tvstation ul { width:430px;}
	.tvstation ul li { width:80px;}
	.tvstation ul li a .logo:before {
		-webkit-transform:scale(0.65);
		transform:scale(0.65);
	}
}
@media screen and (max-width:445px){
	.listblock .programlist.normal ul li .attn,
	.listblock .programlist.normal ul li .coming,
	.carousel .programlist.normal ul li .coming { font-size:2.93333vw;}
	.tvstation ul {width:360px;}
	.tvstation ul li { width:66px;}
	.tvstation ul li a .logo:before {
		-webkit-transform:scale(0.55);
		transform:scale(0.55);
	}
	.detail:not(.talent) #contents .detail-section .btnarea .sns li.fb a,
	.detail:not(.talent) #contents .detail-section .btnarea .sns li.tw a {
		width:34px; padding:0;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	.video #contents .btnarea { padding-bottom:3.2em;}
	.d2 #contents .video-section .btnarea .mylist p,
	.talent #contents .detail-section .btnarea .mylist p { position:absolute; top:100%; right:16px; margin-top:4px;}
}
@media screen and (max-width:360px){
	#globalnav .nav2 .nav2-1 li { margin-right:0;}
	#globalfooter .f2 .txtLink li { font-size:11px;}
	#oshirasebox { left:10px;}
	#oshirasebox:after,
	#oshirasebox:before { left:141px;}
	.tvstation ul {width:305px;}
	.tvstation ul li { width:55px;}
	.tvstation ul li a .logo:before {
		-webkit-transform:scale(0.45);
		transform:scale(0.45);
	}
	.tv #contentsMain h3 { font-size:19px;}
	.tv #contentsMain .btn li a { font-size:14px;}
	.mylist .headings2 ul li a { font-size:12px;}
}
@media screen and (max-width:320px){
	#globalnav .searchbox { width:100px;}
	#globalfooter .f1 li a { font-size:11px;}
	#globalfooter .f2 .officialLink li a:before {
		-webkit-transform:scale(0.5);
		transform:scale(0.5);
	}
	.d2 #contents .btnarea .official a { font-size:12px; padding:9px 27px 8px 15px;}
	.d2 #contents .btnarea .mylist a { min-width:0; font-size:12px;}
	.d2 #contents .btnarea .mylist a.off { padding-right:10px;}
	.d2 #contents .btnarea .mylist p span { font-size:14px;}
	.vod-section .vod .program .pic { width:120px;}
	.vod-section .vod .program .title .linkbtn a { font-size:10px;}
	.vod-section .vod .program .title .linkbtn a:after { right:5px;}
	.vod-section .sns h2 { font-size:14px;}
	.vod-section .sns li { margin:0 1px;}
	.talent .detail-section .headings .pic { width:130px; height:130px;}
	.talent .detail-section .headings .profile { min-height:130px; padding:15px 10px 0 145px;}
	.talent .detail-section .headings .profile h1 { margin-bottom:0;}
	.talent .detail-section .headings .profile dt { font-size:11px; padding:2px 0;}
	.talent .detail-section .headings .profile dd { font-size:11px; padding:2px 0 2px 5em;}
	.listblock .programlist.normal ul li .attn,
	.listblock .programlist.normal ul li .coming { font-size:10px;}
	.about #contentsMain h2 { font-size:22px;}
	.about #contentsMain h2 span { font-size:24px;}
	.d2 #contents .alert span { padding:20px 10px 18px;}
	.d2 #contents .linkbtn2 a { font-size:15px;}
	.d2 #contents .linkbtn2 a:after { right:0; -webkit-transform:scale(0.7); transform:scale(0.7);}
}


/*sp2018bnr*/
.sp2018bnr {text-align:center;background:transparent;position:relative;top:-20px;}
.sp2018bnr a { display:block;margin:0 auto;}
.sp2018bnr a img { display:block;margin:0 auto;width:90%;}

/*cx 新サイズ*/
.video-section .playvideo.cx .player{height:513px;}
.video-section .playvideo .player #cx_player {height:513px;}

/*AD overlay*/
#ADoverlay{
	width:100%; height:100%;
	background:rgba(0, 0, 0, 0.5);
	position:fixed; top:0; left:0; z-index:9999;
	text-align:center;
}
#ADoverlay .adin{
	width:320px;height:530px;
	position:absolute; top:50%; left:50%;
	transform:translateY(-50%) translateX(-50%);
	-webkit-transform:translateY(-50%) translateX(-50%);
}
#ADoverlay .ad{
	width:320px;height:406px;overflow:hidden;
	box-shadow:0 0 30px 10px rgba(0, 0, 0, 0.1);
}
	#ADoverlay .ad img{width:320px;height:406px;display:block;}
#ADoverlay .link{padding-top:10px;}
#ADoverlay .link a{
	background-color:#40b8dc;
	border-radius:28px;
	display:inline-block;
	cursor:pointer;
	color:#ffffff;
	border:solid 3px #fff;
	font-family:Arial;
	font-size:19px;
	font-weight:600;
	padding:16px 31px 15px;
	text-decoration:none;
	width:320px;
}
#ADoverlay .link a:hover {
	background-color:#40b8dc;
	border-color:#40b8dc;
}
#ADoverlay .link a:active {
	position:relative;
	top:1px;
}
#ADoverlay .close {position:relative;}
#ADoverlay .close a {
	text-indent:-1000px;overflow:hidden; display:block; width:60px; height:60px;
	background:#121212;
	position:absolute; top:0px; right:0px;
	cursor:pointer;
}
#ADoverlay .close a:before,
#ADoverlay .close a:after{
	content:'';display:block;
	position: absolute;
	right: 9px;
	width: 40px;
	height: 3px;
	background-color: #fff;
	border-radius: 4px;
}
	#ADoverlay .close a:before{
		top: 20px;
		-webkit-transform: translateY(8px) rotate(-45deg);
		transform: translateY(8px) rotate(-45deg);
	}
	#ADoverlay .close a:after{
		bottom: 21px;
		-webkit-transform: translateY(-8px) rotate(45deg);
		transform: translateY(-8px) rotate(45deg);
	}
#ADoverlay .disappear{
	margin:0 auto;text-align:center;
	padding:15px 20px 0;
	font-size:15px;
	color:#fff;
}
#ADoverlay .disappear input[type=checkbox] {
	display:inline-block; width:20px; height:20px;
	vertical-align:middle; margin-right:6px;
}
#ADoverlay .disappear input[type=checkbox] + label {
	position:relative; display:inline-block; margin-right:16px;
	font-size:16px; line-height:1.35; cursor:pointer;
}
@media (min-width:1px) {
	#ADoverlay .disappear input[type=checkbox] { display:none;}
	#ADoverlay .disappear input[type=checkbox] + label { padding:3px 0 0 35px;}
	#ADoverlay .disappear input[type=checkbox] + label::before {
		content:""; display:block; width:26px; height:26px;
		background:#fff; border:2px solid #cdcdd2; border-radius:50%;
		position:absolute; top:0; left:0;
		box-sizing:border-box;
	}
	#ADoverlay .disappear input[type=checkbox]:checked + label::before {
		background:#40b8dc; border:none;
		box-sizing:border-box;
	}
	#ADoverlay .disappear input[type=checkbox]:checked + label::after {
		content:""; display:block; width:12px; height:5px;
		border-left:2px solid #fff; border-bottom:2px solid #fff;
		position:absolute; top:8px; left:6px;
		-webkit-transform:rotate(-45deg);
		transform:rotate(-45deg);
	}
}
.tiny #ADoverlay .adin{
	zoom:0.8;
}

#pcmodeOnSp{ /*display:none;*/ }
#pcmodeOnSp {
	position:fixed;
	background:rgba(0,0,0,0.8);
	width:100%;
	height:calc( 100vh );
	top:0; left:0;
	z-index:1000;
}
#pcmodeOnSp > div {
	position:fixed;
	background:#fff;
	border-radius:10px;
	width:80%;
	height:auto;
	left:50%;
	margin-left:-40%;
	top: calc( 50vh );
	margin-top:-200px;
	padding:30px 30px 110px;
}
#pcmodeOnSp h3{font-size:22px;border-bottom:solid 2px #000;margin-bottom:0.8em;line-height:1.6;}
#pcmodeOnSp p{font-size:16px;line-height:1.5;}
#pcmodeOnSp p a{
	color:#40b8dc;
	text-decoration:underline;
	display:inline-block;
	margin-top:15px;
	font-weight:600;
}
#pcmodeOnSp button{
	font-size:16px;
	display:block;
	background:#40b8dc;
	color:#fff;
	padding:0.5em;
	border-radius:4px;
	margin:15px auto 0;
	width:calc( 100% - 60px );
	cursor:pointer;
	position:absolute;
	bottom:30px;
	padding:10px;
}

/*TOKYO2020*/
.tokyo2020.d2.special #contents .btnarea {display:block;}
.tokyo2020.d2 #contents .btnarea .official a,
.gorinjp.d2 #contents .btnarea .official a{
	background:url(../img/tokyo2020/gorinjp_logo.png) top center no-repeat;
	background-size:auto 85%;
	text-indent:200%; white-space:nowrap; overflow:hidden;
	padding:9px 40px 8px 20px;
}
.tokyo2020.d2 #contents .btnarea .official a:hover,
.gorinjp.d2 #contents .btnarea .official a:hover { opacity:0.7;}
.tokyo2020.d2 #contents .btnarea .official a:hover:after,
.gorinjp.d2 #contents .btnarea .official a:hover:after { background-position:-135px 0;}

.gorinjp.d2 .playerbinder .right { display:none; }

/*Emergency*/
#emergency .topmessage{
	width:100%; color:#475154;
	border-top:solid 1px #c6cfd2;
	background:#d7eaf0 url(../img/em_sp.png) 10px center no-repeat;
	background-size:30px auto;
}
#emergency .topmessage h3{ display:none;}
#emergency .topmessage ul{
	display:-webkit-box;
	display:flex; flex-wrap:wrap;
	padding:3px 0 1px; margin-left:48px;
}
#emergency .topmessage li {
	display:-webkit-box; -webkit-box-align:center;
	display:flex; align-items:center;
	width:100%; min-height:35px;
	font-size:13px; line-height:1.4;
	background:#f0fcff; border-radius:5px;
	padding:5px 10px 7px; margin:0 4px 3px 0;
}
#emergency .topmessage li a{ color:#0b6681; text-decoration:underline;}
#emergency .topmessage li a:hover{ text-decoration:none;}
/*modal*/
#emergency .topmodal { position:fixed;background:rgba(0,0,0,0.5);width:calc(100vw);height:calc(100vh);top:0;left:0;z-index:1000;}
#emergency .topmodal div {
	background:#fff;
	width:290px;
	border-radius:10px;
	position:relative; left:50%;top:calc(50vh);
	margin-left:-145px;
	margin-top:-100px;
}
#emergency .topmodal div>p {
	padding:30px 20px;
	font-size:14px;
	line-height:1.3;
}
#emergency .topmodal div>a {
	display:block;
	padding:15px;
	text-align:center;
	font-size:14px;
	background:#e9e9e9;
	border-radius:0 0 10px 10px;
}
#emergency .topmodal div>a:hover{background:#eee;}

/*sd to app banner*/
#sdtoapp { display:none;}
.sp #sdtoapp { display:block;width:100%; background:#01b8de;}
.sp #sdtoapp a {display:block; width:100%; text-align:center;}
.sp #sdtoapp a img {display:block; width:100%; max-width:600px; margin:0 auto;}

/*@add201911
//////////////////////////////////////////////////////////////////*/
/*slick*/
.slick-slider {
	position:relative;
	display:block; box-sizing:border-box;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
	-webkit-touch-callout:none;
	-khtml-user-select:none;
	-ms-touch-action:pan-y;
	touch-action:pan-y;
	-webkit-tap-highlight-color:transparent;
}
.slick-list {
	position:relative;
	display:block; overflow:hidden;
	margin:0; padding:0;
}
.slick-list:focus { outline:none;}
.slick-list.dragging { cursor:pointer;}
.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform:translate3d(0, 0, 0);
	-moz-transform:translate3d(0, 0, 0);
	-ms-transform:translate3d(0, 0, 0);
	-o-transform:translate3d(0, 0, 0);
	transform:translate3d(0, 0, 0);
}
.slick-track { position:relative; top:0; left:0; display:block;}
.slick-track:before,
.slick-track:after { display:table; content:'';}
.slick-track:after { clear:both;}
.slick-loading .slick-track { visibility:hidden;}
.slick-slide {
	display:none;
	float:left; height:100%; min-height:1px;
}
[dir='rtl'] .slick-slide { float:right;}
.slick-slide img { display:block;}
.slick-slide.slick-loading img { display:none;}
.slick-slide.dragging img { pointer-events:none;}
.slick-initialized .slick-slide { display:block;}
.slick-loading .slick-slide { visibility:hidden;}
.slick-vertical .slick-slide { display:block; height:auto; border:1px solid transparent;}
.slick-arrow.slick-hidden { display:none;}

/*LIVE*/
.live .credit { background:#f3f3f3;}
.live .headings { padding:30px 15px 0;}
	.live .headings .inner { position:relative;}
	.live .headings h2 { font-size:24px; padding-bottom:20px;}
	.live .headings .date { white-space:nowrap;}
	.live .headings .date dt { font-size:14px; padding-bottom:10px;}
	.live .headings .date dd {
		display:inline-block; vertical-align:bottom;
		font-size:18px; color:#40b8dc; padding-right:0.3em;
	}
	.live .headings .date dd span { font-size:10px;}
	.live .headings .date dd a { display:block; height:27px; color:#40b8dc;}
	.live .headings .date dd a:not([href]) { color:#8ce;}
	.live .headings .date dd.this a { border-bottom:3px solid #40b8dc;}
.live .headings .sort {
	font-size:15px; text-align:center;
	position:absolute; bottom:4px; right:-10px; z-index:10;
	}
	.live .headings #sortSelect {
		width:70px; height:30px; line-height:30px;
		color:#40b8dc; padding-right:8px;
		white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
		position:relative;
	}
	.live .headings #sortSelect:after {
		content:''; display:block; width:0; height:0;
		position:absolute; top:50%; right:2px; margin-top:-3px;
		border:5px transparent solid;
		border-top-color:#40b8dc;
		border-width:7px 5px 0 5px;
	}
	.live .headings .sort ul {
		width:120px; background:#fff;
		border:1px solid #ddd; border-radius:6px;
		position:absolute; top:30px; right:0;
		overflow:hidden;
		display:none;
	}
	.live .headings .sort ul li { border-bottom:1px solid #ddd;}
	.live .headings .sort ul li:last-child { border-bottom:none;}
	.live .headings .sort ul li a {
		display:block; width:100%; height:30px; line-height:30px;
		color:#40b8dc; background:#fff; padding:1px 0.5em 0;
		position:relative; cursor:pointer;
	}
	.live .headings .sort ul li a:hover,
	.live .headings .sort ul li.this a { background:#f3f3f3;}

#live-channel { background:#f3f3f3; padding:20px 0;}
	#live-channel .tv { margin-bottom:20px; position:relative;}
	#live-channel h3 { display:none;}
	#live-channel .item { background:#fff; box-shadow:0 3px 5px 0 rgba(0, 0, 0, 0.05);}
	#live-channel .item > a { display:-webkit-box; display:flex; width:100%;}
	/*title*/
	#live-channel .item .title {
		width:60%; color:#222; line-height:1.35;
		background:#fff; padding:35px 12px 20px;
		position:relative;
	}
	#live-channel .item .title:before {
		content:""; display:block;
		width:55px; height:22px;
		background:#fff; border-radius:3px;
		position:absolute; top:8px; left:8px;
	}
	#live-channel .item .title:after {
		content:""; display:block; width:100px; height:40px;
		background:url(../img/parts_logo.png) no-repeat;
		background-size:432px auto;
		position:absolute; top:9px; left:10px;
		-webkit-transform:scale(0.55); transform:scale(0.55);
		transform-origin:top left;
	}
	#live-channel .ntv .item .title:after { background-position:-319px 0;}
	#live-channel .ex .item .title:after { background-position:-319px -40px;}
	#live-channel .tbs .item .title:after { background-position:-319px -81px;}
	#live-channel .tx .item .title:after { background-position:-319px -121px;}
	#live-channel .cx .item .title:after { background-position:-319px -162px;}
	#live-channel .item .time { font-size:13px; position:absolute; top:11px; left:70px;}
	#live-channel .item .name { height:calc(1.35em * 2); font-size:16px; overflow:hidden;}
	#live-channel .item .name span { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;}
	#live-channel .item .status { font-size:12px; color:#40b8dc; position:absolute; top:11px; right:10px;}
	#live-channel .onair .title { color:#fff; background:#40b8dc;}
	#live-channel .onair .time { opacity:0.8;}
	#live-channel .end .time,
	#live-channel .end .name { opacity:0.5;}
	#live-channel .coming .title { background:#dafdff;}
	/*pic*/
	#live-channel .item .pic {
		width:40%; min-height:100px;
		position:relative; overflow:hidden;
	}
	#live-channel .item .picbg {
		width:110%; height:110%;
		position:absolute; top:-5%; left:-5%;
		background:transparent no-repeat center center;
		background-size:cover;
		-webkit-filter:blur(3px);
		filter:blur(3px);
		opacity:0.7;
	}
	#live-channel .item .picinner {
		width:100%; height:100%;
		background:transparent no-repeat center center;
		background-size:contain;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	#live-channel .onair .pic:after {
		content:""; display:block; width:25%; height:0; padding-top:25%;
		background:url(../img/icon_play.png) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	/*progressbar*/
	#live-channel .item .progress {
		width:100%; height:4px; background:rgba(255, 255, 255, 0.6);
		position:absolute; bottom:0; left:0;
	}
	#live-channel .item .progress .bar {
		height:4px; background:#41f6ff;
		position:absolute; top:0; left:0;
	}
	
	/*slider*/
	#live-channel .program { width:100%; position:relative; opacity:0; transition:opacity 0.3s;}
	#live-channel .program.slick-initialized { opacity:1;}
	/*arrow*/
	#live-channel .slick-arrow {
		display:inline-block;
		font-size:12px; color:#fff; border-radius:50px;
		background:#00a8cc; white-space:nowrap;
		box-shadow:0 2px 4px 0 rgba(0, 0, 0, 0.1);
		position:absolute; bottom:-6px; z-index:100;
		cursor:pointer; padding:5px 10px 4px;
		opacity:0; visibility:hidden;
	}
	#live-channel .slick-arrow.prev { left:40%; padding-left:18px;}
	#live-channel .slick-arrow.next { right:-10px; padding-right:25px;}
	#live-channel .slick-arrow:before {
		content:""; display:block; width:6px; height:6px;
		border-top:1px solid #fff; border-right:1px solid #fff;
		position:absolute; top:50%; margin-top:-3px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	#live-channel .slick-arrow.prev:before { left:9px; border:none; border-bottom:1px solid #fff; border-left:1px solid #fff;}
	#live-channel .slick-arrow.next:before { right:16px;}
	#live-channel .slick-arrow:not(.slick-disabled) { opacity:1; visibility:visible; transition:all 0.15s ease 0.4s;}

@media screen and (max-width:360px){
	.live .headings .sort { bottom:30px;}
	#live-channel .item .title { padding-top:30px;}
	#live-channel .item .title:before { width:45px; height:18px; top:8px; left:8px;}
	#live-channel .item .title:after {
		-webkit-transform:scale(0.45); transform:scale(0.45);
		transform-origin:top left;
	}
	#live-channel .item .time { font-size:12px; top:9px; left:60px;}
	#live-channel .item .status { font-size:10px; right:5px;}
	#live-channel .item .name { font-size:15px;}
	#live-channel .item .pic { min-height:90px;}
	.programlist h2 { font-size:19px;}
	.programlist .link.more { top:-3px;}
}
@media screen and (max-width:320px){
	.programlist h2 { font-size:18px;}
	.programlist .link.more a { font-size:12px; padding-right:15px;}
	.programlist .link.more a:before { width:7px; height:7px; margin-top:-4px;}
	.carousel .programlist h2 { padding-right:65px;}
}

/*banner-carousel*/
.banner-carousel { margin-bottom:30px; position:relative;}
.banner-slider { width:86%; margin:0 auto; opacity:0; transition:opacity 0.3s;}
.banner-slider.slick-initialized { opacity:1;}
.banner-slider .item a,
.banner-slider .item img { display:block; width:100%;}
/*arrows*/
.banner-arrows { width:100%; height:100%; position:absolute; top:0; left:0;}
.banner-arrows .slick-arrow {
	display:block; width:7%; height:40px;
	position:absolute; top:50%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
	cursor:pointer;
	}
	.banner-arrows .slick-arrow.prev { left:0;}
	.banner-arrows .slick-arrow.next { right:0;}
	.banner-arrows .slick-arrow:before {
		content:""; display:block; width:8px; height:8px;
		position:absolute; top:50%; margin-top:-4px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.banner-arrows .slick-arrow.prev:before {
		border-bottom:2px solid #40b8dc; border-left:2px solid #40b8dc;
		left:50%; margin-left:-2px;
	}
	.banner-arrows .slick-arrow.next:before {
		border-top:2px solid #40b8dc; border-right:2px solid #40b8dc;
		right:50%; margin-right:-2px;
	}

.playvideo .player .video-js { width:100% !important; height:100% !important; position:absolute; top:0; left:0;}

/*@add202002
//////////////////////////////////////////////////////////////////*/
.ui-tooltip {
	font-size:12px; line-height:1.2; color:#333;
	box-shadow:0 0 5px 2px rgba(0,0,0,0.1);
	background:#f0f0f0; border:1px solid #ddd;
	padding:5px 5px 4px;
	position:absolute; z-index:9999;
	max-width:250px;
}

/*subtitles*/
.subtitles { padding-left:16px; position:relative;}
.subtitles:before {
	content:""; display:inline-block; width:14px; height:12px;
	background:url(../img/subtitles_black_positive.png) no-repeat;
	background-size:contain;
	position:absolute; top:50%; left:0;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
}
.carousel .programlist.mylist .subtitles { padding-left:15px;}
.carousel .programlist.mylist .subtitles:before { background-image:url(../img/subtitles_white_negative.png);}
.carousel .programlist.recommend .subtitles:before { background-image:url(../img/subtitles_white_positive.png);}
.video-section .subtitles:before { background-image:url(../img/subtitles_white_positive.png);}
.video-section .programlist .subtitles:before { margin-top:0;}
.video-section .title .subtitles,
.detail-section .title .subtitles { padding-left:0;}
.video-section .title .subtitles:before,
.detail-section .title .subtitles:before {
	width:18px; height:16px;
	position:relative; top:0; left:0;
	-webkit-transform:translateY(0);
	transform:translateY(0);
	vertical-align:middle; margin:-3px 3px 0 0;
}

/*@add202008
//////////////////////////////////////////////////////////////////*/
.simul #container,
.simul #contents { overflow:visible;}
.simul-main { background:#f2f2f2;}
.simul-block { margin-bottom:20px;}
.simul-block .inner { position:relative;}
.simul-block .headings {
	width:100%; background:#f2f2f2;
	border-bottom:1px solid #e5e5e5;
	position:sticky; top:80px; left:0; z-index:99;
	transition:all 0.3s;
	}
	.simul-block .headings .inner { height:50px; line-height:50px; padding:1px 3% 0;}
	.simul-block .headings h2 { font-size:17px; transition:all 0.2s;}
	.simul-block .headings .tv {
		width:60px; height:30px;
		background:#fff; border-radius:3px; border:1px solid #e5e5e5;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:50%; left:3%;
		-webkit-transform:translateY(-50%);
		transform:translateY(-50%);
		opacity:0; visibility:hidden;
		transition:all 0.2s;
	}
	.simul-block .headings .tv:before {
		content:""; display:block;
		width:100px; height:40px;
		background:url(../img/parts_logo.png) no-repeat -355px 0;
		background-size:480px auto;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%) scale(0.65);
		transform:translate(-50%, -50%) scale(0.65);
	}
	.simul-block .headings.js-is-sticky .tv + h2,
	.simul-main .simul-block:nth-child(1) .headings .tv + h2 { padding-left:75px;}
	.simul-block .headings.js-is-sticky .tv,
	.simul-main .simul-block:nth-child(1) .headings .tv { opacity:1; visibility:visible;}

.simul-list { overflow:hidden;}
	.simul-list li { background:#fff; position:relative;}
	.simul-list li:before {
		content:""; display:block;
		width:100%; height:1px;
		background:#e5e5e5;
		position:absolute; bottom:0; left:0;
	}
	.simul-list li.na { display:none;}
	.simul-list li a { display:block; width:100%; height:100%;}
	.simul-list li a:after { content:""; clear:both; display:block;}
	/*pic*/
	.simul-list li .pic {
		width:35%; height:0;
		padding-top:calc(9 / 16 * 35%);
		position:relative; float:left;
		margin-right:10px;
		transition:all 0.2s;
	}
	.simul-list li .picinner {
		width:100%; height:100%;
		background:transparent no-repeat center center;
		background-size:cover;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	.simul-list li .time { font-size:11px;}
	.simul-list li .time strong { font-weight:normal;}
	.simul-list li .progtitle {
		font-size:15px; line-height:1.35;
		max-height:calc(1.35em * 2 + 10px); overflow:hidden;
		padding:8px 0 2px;
		display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
	}
	/*play*/
	.simul-list li .play:before {
		content:""; display:block;
		width:100%; height:100%;
		background: rgba(0, 0, 0, 0.5);
		position:absolute; top:0; left:0; z-index:1;
		transition:all 0.2s;
	}
	.simul-list li .play:after {
		content:""; display:block;
		width:28%; height:0; padding-top:28%;
		background:url(../img/icon_play.png) no-repeat;
		background-size:contain;
		position:absolute; top:50%; left:50%; z-index:2;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	/*live*/
	.simul-list li.live { background:#e9feff;}
	.simul-list li.live .pic { width:40%; padding-top:calc(9 / 16 * 40%);}
	.simul-list li.live .time,
	.simul-list li.live .time strong,
	.simul-list li.live .progtitle { font-weight:600;}
	.simul-list #icon-live {
		width:100%; height:100%;
		position:absolute; top:0; left:0;
		z-index:2;
	}
	/*progressbar*/
	.simul-list .progress {
		width:95%; height:3px; background:rgba(255, 255, 255, 0.6);
		position:absolute; bottom:6px; left:50%; z-index:3;
		margin-left:-47.5%;
	}
	.simul-list .progress .bar {
		height:3px; background:#41f6ff;
		position:absolute; top:0; left:0;
	}


/*@add202102
//////////////////////////////////////////////////////////////////*/
@keyframes loading-icon {
	0% {
		-webkit-transform: rotate(0) scale(1);
		transform:translate(-50%, -50%) rotate(0) scale(1);
	}
	100% {
		-webkit-transform: rotate(360deg) scale(1);
		transform:translate(-50%, -50%) rotate(360deg) scale(1);
	}
}

.programlist ul li .pic { background:#eee;}
.programlist ul li .pic:before {
	content:""; display:block;
	width:16%; height:0;
	padding-top:16%;
	border:3px solid #ddd;
	border-bottom-color:transparent;
	border-radius:100%;
	position:absolute; top:50%; left:50%;
	transform:translate(-50%, -50%);
	animation:loading-icon .75s 0s linear infinite;
}
.carousel .programlist.recommend ul li .pic:before,
.carousel .programlist.mylist ul li .pic:before,
.programlist ul li .pic.loaded:before { display:none;}

.idx .programlist.topics ul li .pic { border-radius:20px;}
.d2 .programlist.topics ul li .pic { background:none;}
.bangumi:not(.detail) .carousel .programlist.normal ul li .pic,
.bangumi:not(.detail) .carousel .programlist.cast ul li .pic { background:#222;}
.bangumi:not(.detail) .carousel .programlist.normal ul li .pic:before,
.bangumi:not(.detail) .carousel .programlist.cast ul li .pic:before { border-color:#333; border-bottom-color:transparent;}

/*content-AD*/
.contentad {
	padding-bottom:15px;
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
	}
	.contentad .inner { max-width:620px; margin:0 auto;}
	.contentad .image { margin-bottom:10px;}
	.contentad .image img { display:block; width:100%;}
	.contentad .text {
		font-size:14px; line-height:1.5;
		color:#fff; letter-spacing:0.03em;
		padding:0 5%;
	}
	.contentad .contentad-btn { text-align:center; padding-top:15px;}
	.contentad .contentad-btn a {
		display:inline-block; width:70%;
		font-size:15px; font-weight:600; color:#fff;
		background:#40b8dc; border-radius:3px;
		padding:12px 10px 11px;
	}
	.contentad .contentad-btn a:hover { opacity:0.8;}

/*@add202103
//////////////////////////////////////////////////////////////////*/
.companionad-right { display:none;}
.companionad-inner .banner.sp {
	display:block; width:100%; max-width:400px;
	margin:25px auto 10px; position:relative;
}
.companionad-inner .banner.sp img { display:block; width:100%;}
.companionad-inner .banner .adOn { position:absolute; top:0; left:0;}
.sp.companionad:not(.special) .video-section .title { margin-top:0;}

/*@add202104
//////////////////////////////////////////////////////////////////*/
#information-modal { padding:20px 0;}
.modal-inner {
	width:92%; letter-spacing:normal; text-align:center;
	background:#fff; padding:20px 6% 25px; margin:0 auto;
	}
	.modal-inner .smooth { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}
	.modal-inner .title { font-size:17px; font-weight:600; line-height:1.5; margin-bottom:12px;}
	.modal-inner .title span { display:inline-block;}
	.modal-inner .lead { font-size:14px; line-height:1.6; text-align:left; margin-bottom:10px;}

	.modal-box { text-align:left;}
	.modal-text { font-size:14px; line-height:1.6;}
	.modal-link { line-height:1.8; padding-top:10px;}
	.modal-link a { color:#40b8dc; border-bottom:1px solid #40b8dc;}
	.modal-text ul li { padding-left:16px; position:relative;}
	.modal-text ul li + li { margin-top:6px;}
	.modal-text ul li:before {
		content:""; display:block;
		width:8px; height:8px;
		background:#40b8dc; border-radius:50%;
		position:absolute; top:8px; left:0;
	}
	.modal-text-in { height:180px; background:#fafafa; overflow:hidden; position:relative;}
	.modal-text-in iframe {
		width:100%; height:100%;
		position:absolute; top:0; left:0;
		border:none; background:transparent;
	}

	/*btn*/
	.modal-btn {
		width:80%; max-width:300px;
		text-align:center;
		padding-top:30px; margin:0 auto;
	}
	.modal-btn a {
		display:block; width:100%; height:38px;
		font-size:16px; color:#666;
		line-height:38px; letter-spacing:0.04em;
		background:#f0f0f0; border-radius:5px;
		padding:0 5px; white-space:nowrap;
	}
	.modal-btn a + a { margin-top:10px;}
	.modal-btn a.active { font-weight:600; color:#fff; background:#40b8dc; letter-spacing:0.06em;}
	.modal-btn a.inactive.off { background:none;}

.modal-inner.mini { width:80%; max-width:300px; padding:25px 6% 30px;}
	.modal-inner.mini .modal-btn { width:80%; padding:18px 0 0; margin:0 auto;}



/*番組リストプルダウン*/
#special_list_pd {text-align:right;}
#special_list_pd select {
	border:none; border-radius:0; outline:none;
	background:none; vertical-align:baseline; font-family:inherit;
	-webkit-appearance:none; -moz-appearance:none; appearance:none;
	-webkit-transition:all 0.25s; transition:all 0.25s;
}
#special_list_pd label {
	display:inline-block; width:150px; height:40px;
	font-size:14px; font-weight:500; line-height:36px;
	color:#000; text-align:left; background:#fff;
	white-space:nowrap; overflow:hidden;
	padding:0 35px 0 15px; cursor:pointer;
	position:relative; z-index:1;
	border:1px solid #000;
	top:-20px;
}
#special_list_pd label:before {
	content:''; display:block; width:35px; height:40px;
	background:#fff;
	position:absolute; top:0; right:0;
}
#special_list_pd label:after {
	content:''; display:block; width:0; height:0;
	position:absolute; top:50%; right:15px; margin-top:-5px;
	border:7px transparent solid;
	border-top-color:#000;
	border-width:12px 7px 0 7px;
}
#special_list_pd select {
	display:inline-block; width:150px; height:40px;
	font-size:16px; line-height:1.5; cursor:pointer; opacity:0;
	position:absolute; top:-20px; right:0; z-index:2;
	background:#fff;
	display:none;
}
#special_list_pd select option { opacity:1; background-color:#fff;}
