@charset "utf-8";
/*/////////////////////////////////////////////////////////////////////////
TVer 2019 (min-width:768px)
/////////////////////////////////////////////////////////////////////////*/
* { margin:0; padding:0; box-sizing:border-box;}
html, body { height:100%;}
html { font-family: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:absolute; top:0; left:0; z-index:100;
	box-shadow:0 2px 6px rgba(0, 0, 0, 0.08);
	}
	#globalheader .headinner {
		display:table; width:100%; height:100%;
		table-layout:fixed; background:#fff;
		overflow:hidden;
	}
	#globalheader h1 { display:table-cell; width:130px; height:100%;}
	#globalheader h1:before {
		content:""; display:block; width:90px; height:48px;
		background:url(../img/tver_logo.png) no-repeat;
		background-size:contain;
		position:absolute; top:18px; left:20px;
	}
	#globalheader h1 a {
		display:block; width:130px; height:100%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0; z-index:10;
	}
	#globalheader h2 { display:none;}
.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 { display:table-cell; height:100%; text-align:left; position:relative;}
	#globalnav ul { font-size:0;}
	#globalnav li { display:inline-block; vertical-align:top;}
	#globalnav li a { display:block; white-space:nowrap; overflow:hidden; position:relative;}
	#globalnav li a:hover { opacity:0.6;}
	/*nav1*/
	#globalnav .nav1 { height:35px; position:absolute; top:45px; left:0; z-index:10;}
	#globalnav .nav1 li { margin-right:7px;}
	#globalnav .nav1 li.m-soon { margin-right:12px;}
	#globalnav .nav1 li a { height:35px; font-size:14px; padding:9px 5px 0;}
	#globalnav .nav1 li a.this { color:#40b8dc;}
	#globalnav .nav1 li a.this:after {
		content:""; display:block; width:94%; height:4px;
		background:#40b8dc;
		position:absolute; bottom:0; left:50%;
		margin-left:-47%;
	}
	/*nav2*/
	#globalnav .nav2 {
		width:100%; height:45px; padding-top:10px; overflow:hidden;
		position:absolute; top:0; left:0; z-index:1;
	}
	#globalnav .nav2 ul { display:inline-block; vertical-align:top;}
	#globalnav .nav2 li a { font-size:15px;}
	#globalnav .nav2-1 li a { color:#40b8dc; padding:11px 10px 9px 30px;}
	#globalnav .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:5px;
		transform:translateY(-50%);
	}
	#globalnav .nav2-1 li.m1 a:before { background-position:0 -80px;}
	#globalnav .nav2-1 li.m2 a:before { background-position:0 -105px;}
	#globalnav .nav2-1 li.m3 a:before { background-position:-25px -105px;}
	#globalnav .nav2-1 li.m4 a:before { background-position:-25px -80px;}
	#globalnav .nav2-2 li.m-app a {
		width:110px; height:28px; line-height:28px;
		font-size:14px; color:#fff; text-align:center; background:#40b8dc;
		border-radius:50px; padding:1px 12px 0 14px;
		position:absolute; top:13px; left:605px;
	}
	#globalnav .nav2-2 li.m-fb a,
	#globalnav .nav2-2 li.m-tw a {
		width:32px; height:32px; border-radius:6px;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:10px;
	}
	#globalnav .nav2-2 li.m-fb a { background:#3b5998; right:62px;}
	#globalnav .nav2-2 li.m-tw a { background:#55acee; right:25px;}
	#globalnav .nav2-2 li.m-fb a:before,
	#globalnav .nav2-2 li.m-tw 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%;
		transform:translate(-50%, -50%);
	}
	#globalnav .nav2-2 li.m-fb a:before { background-position:0 -130px;}
	#globalnav .nav2-2 li.m-tw a:before { background-position:-25px -130px;}
	
/*search*/
#globalnav .searchbox { width:200px; position:absolute; top:12px; left:409px;}
	#globalnav .searchbox label {
		display:inline-block; width:100%; height:29px;
		font-size:13px; line-height:1.6; color:#bbb; white-space:nowrap;
		background:#efefef; border-radius:50px; overflow:hidden;
		padding:5px 1.2em 4px; position:relative; z-index:1;
	}
	#globalnav .searchbox input {
		width:100%; height:28px; line-height:1.6;
		font-size:13px; background:#efefef;
		border-radius:50px; padding:2px 1.2em 0;
		position:absolute; top:0; left:0; z-index:2;
		display:none;
	}
/*suggest*/
#suggestbox {
	min-width:200px; max-width:300px;
	position:absolute; top:45px; left:530px; 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:5px;
}
#oshirasebox {
	display:block; width:400px;
	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 22px 18px;
	position:absolute; top:50px; z-index:1000;
	display:none;
	}
	#globalheader:not(.fixed) #oshirasebox { left:260px;}
	#oshirasebox:after,
	#oshirasebox:before {
		content:" "; width:0; height:0;
		position:absolute; left:100px; bottom:100%;
		border:solid transparent;
		pointer-events:none;
	}
	#oshirasebox:after {
		border-color:rgba(255, 255, 255, 0);
		border-bottom-color:#fff;
		border-width:9px; margin-left:-9px;
	}
	#oshirasebox:before {
		border-color:rgba(203, 203, 203, 0);
		border-bottom-color:#cbcbcb;
		border-width:11px; margin-left:-11px;
	}
	#oshirasebox a.more {
		display:block; font-size:16px; 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:7px;}
	#oshirasebox ul li { font-size:14px; line-height:1.6; 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);
	}

/*fixed*/
#globalheader.fixed {
	height:52px; position:fixed;
	-webkit-animation:slideIn .5s ease 0s 1 normal;
	animation:slideIn .5s ease 0s 1 normal;
	}
	@-webkit-keyframes slideIn {
		0%{ top:-100px;}
		100% { top:0;}
	}
	@keyframes slideIn {
		0%{ top:-100px;}
		100% { top:0;}
	}
	#globalheader.fixed .headinner { height:52px;}
	#globalheader.fixed h1 { width:90px;}
	#globalheader.fixed h1:before { width:65px; height:35px; top:10px; left:15px;}
	#globalheader.fixed h1 a { width:100px;}
#globalheader.fixed .nav1 { width:calc(100% - 240px); height:37px; top:15px; overflow:hidden;}
	#globalheader.fixed .nav1 li { margin-right:0;}
	#globalheader.fixed .nav1 li a { font-size:13px; height:37px;}
#globalheader.fixed .nav2-1 { position:absolute; top:12px; right:110px; background:#fff;}
	#globalheader.fixed .nav2-1 li > a,
	#globalheader.fixed .nav2-1 li .oshirase > a {
		width:30px; height:30px; padding:0;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
#globalheader.fixed .nav2-2 li.m-fb a,
#globalheader.fixed .nav2-2 li.m-tw a { top:50%; margin-top:-16px;}
#globalheader.fixed .searchbox,
#globalheader.fixed .m-app { display:none;}
#globalheader,
#globalnav { transition:all 0.3s;}
#globalheader.fixed #oshirasebox { right:62px;}
	#globalheader.fixed #oshirasebox:after,
	#globalheader.fixed #oshirasebox:before {
		content:" "; width:0; height:0;
		position:absolute; left:305px; bottom:100%;
		border:solid transparent;
		pointer-events:none;
	}
	#globalheader.fixed #oshirasebox:after {
		border-color:rgba(255, 255, 255, 0);
		border-bottom-color:#fff;
		border-width:9px; margin-left:-9px;
	}
	#globalheader.fixed #oshirasebox:before {
		border-color:rgba(203, 203, 203, 0);
		border-bottom-color:#cbcbcb;
		border-width:11px; margin-left:-11px;
	}

/*footer*/
#globalfooter { text-align:center;}
#globalfooter .snsbtn { display:none;}
#globalfooter .f1 { background:#454545; padding:30px 0;}
	#globalfooter .f1 h2 { font-size:20px; color:#fff; margin-bottom:20px;}
	#globalfooter .f1 ul { width:100%; max-width:1000px; margin:0 auto;}
	#globalfooter .f1 li { display:inline-block; vertical-align:top; margin:6px 2px;}
	#globalfooter .f1 li a {
		display:block; width:240px; font-size:13px; color:#fff;
		background:#585858; border-radius:50px; line-height:1.2;
		padding:.7em 5px .6em; position:relative;
	}
	#globalfooter .f1 li a:hover { opacity:0.7;}
#globalfooter .f2 { background:#2d2d2d; padding:40px 0 30px;}
	#globalfooter .f2 a { color:#fff;}
	#globalfooter .f2 .officialLink { font-size:0; padding-bottom:15px;}
	#globalfooter .f2 .officialLink li { display:inline-block; vertical-align:top; margin:0 5px;}
	#globalfooter .f2 .officialLink li a {
		display:inline-block; width:120px; height:50px;
		background:#fff; position:relative;
	}
	#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%;
		transform:translate(-50%, -50%);
	}
	#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 { display:inline-block; position:relative;}
	#globalfooter .f2 .txtLink ul {
		display:inline-block; vertical-align:top; padding:0 35px 20px;
		transition:all 0.2s;
	}
	#globalfooter .f2 .txtLink ul:last-child { padding-right:0;}
	#globalfooter .f2 .txtLink li { font-size:14px; text-align:left;}
	#globalfooter .f2 .txtLink li a { display:block; padding:10px 0;}
	#globalfooter .f2 .txtLink li a:hover { opacity:0.7;}
	#globalfooter .f2 .copyright { font-size:10px; color:#989898;}
	#globalfooter .f2 .tver { position:absolute; top:15px; left:-150px;}
	#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;
	}
	#globalfooter .f2 .tver a:hover { opacity:0.7;}

#ptop {
	position:fixed; bottom:30px; right:30px; z-index:999;
	transition:all 0.5s; visibility:hidden; opacity:0;
	}
	#ptop a {
		display:block; width:76px; height:76px; text-indent:-9999px;
		background:rgba(150, 150, 150, 0.5); border-radius:50%;
		position:relative;
	}
	#ptop a:before {
		content:""; display:block; width:22px; height:22px;
		border-top:3px solid #fff; border-left:3px solid #fff;
		position:absolute; top:50%; left:50%; margin:-7px 0 0 -12px;
		transform:rotate(45deg);
	}
	#ptop a:hover { background:rgba(64, 184, 220, 0.9);}
	#ptop.end { bottom:190px;}

.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.5; color:#aaa; padding:0 40px 30px;}
.bg + .credit { padding-top:40px;}

/*テレビ局*/
.tvstation { text-align:center; padding:24px 25px 30px; margin-bottom:40px;font-size:0;}
	.tvstation h2 { font-size:28px; color:#fff; text-align:left; margin-bottom:12px;}
	.tvstation ul { display:inline-block; margin-bottom:5px;}
	.tvstation ul li { display:inline-block; vertical-align:top; margin:0 2px;}
	.tvstation ul li a { display:block; width:120px;}
	.tvstation ul li a .name { display:block; font-size:16px; color:#fff; padding:7px 0 15px;}
	.tvstation ul li a .logo {
		display:block; width:120px; height:120px;
		background:#fff; border-radius:50%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		overflow:hidden; position:relative;
	}
	.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;
	}
	.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:-37px;}
	.tvstation ul li.vod-nhk a .logo:before { background-position:-355px -1205px;}
	
	@media screen and (max-width:1450px){
		.tvstation ul{
			width:623px; text-align:left;
			display:block;margin-left:auto !important;margin-right:auto;
		}
	}

/*@programlist
/////////////////////////////////////////////////////////////////////*/
.programlist { position:relative; overflow:hidden; padding-bottom:40px;}
	.programlist .listinner { position:relative;}
	.programlist a:hover { opacity:0.7;}
	.programlist h2 { font-size:28px; color:#0a0a0a; line-height:1.35; margin-bottom:12px;}
	.programlist ul { font-size:0;}
	.programlist ul:after { content:""; clear:both; display:block;}
	.programlist ul li { float:left; 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%; line-height:1.35;}
	.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:17px;}
	.programlist ul li .progtitle p { font-size:13px; position:relative;}
	.programlist ul li .progtitle p.summary { padding-top:1px;}
	.programlist ul li .progtitle h3 + p.summary { margin-top:7px;}
	.programlist ul li .progtitle p.tv { font-size:12px; color:#949494; margin-top:5px;}
	.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:0; right:20px;}
	.programlist .link.more a {
		display:inline-block; font-size:16px; color:#959595;
		padding:10px 23px 10px 10px; position:relative;
	}
	.programlist .link.more a:before {
		content:""; display:block; width:10px; height:10px;
		border-top:2px solid #b5b5b5; border-right:2px solid #b5b5b5;
		position:absolute; top:50%; right:5px; margin-top:-6.5px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
		.programlist .link.more a:hover {color:#40b8dc;}
		.programlist .link.more a:hover:before {border-top:2px solid #40b8dc; border-right:2px solid #40b8dc;}
	.programlist.mylist .link.more { top:20px;}
	.programlist.mylist .link.more a { color:#fff; padding-right:55px;}
	.programlist.mylist .link.more a:before { border-color:#fff;}
	.programlist.mylist .link.more a:after {
		content:""; display:block; width:25px; height:30px;
		background:url(../img/parts_icon.png) no-repeat 0 0;
		background-size:300px auto;
		position:absolute; top:50%; right:23px;
		margin-top:-17px;
	}
	/*like*/
	.programlist .like {
		display:block; width:35px; height:30px; cursor:pointer;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; bottom:9px; right:3px; 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 -15px;
	}
	.programlist .like.this:before { background-position:-65px 0;}
	.carousel .programlist.normal .like { right:23px;}
	/*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 { width:280px; margin-right:20px;}
.programlist.normal ul li .pic { height:158px;}
.programlist.normal ul li .progtitle { min-height:90px; color:#0a0a0a; padding:9px 0 8px;}
.programlist.normal ul li .progtitle p.tv { padding-right:40px;}
.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:40px; position:relative;}
.programlist.normal ul li .progtitle.matome:before {
	display:block;content:''; width:32px;height:32px;
	position:absolute; top:12px; right:5px;
	background:url(../img/icon_fukusu.png) center center no-repeat;
	background-size:contain;
}

/*ranking*/
.idx .programlist.ranking ul li { width:100%; height:90px; 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:160px; height:90px;}
.idx .programlist.ranking ul li .picinner { width:160px; height:90px; position:relative;}
.idx .programlist.ranking ul li .flag { width:160px; height:90px;}
.idx .programlist.ranking ul li .rank {
	letter-spacing:-.08em;
	width:1.75em; font-size:36px; color:#40b8dc;
	font-family:Helvetica; font-style:italic; text-align:center;
}
.d2 .programlist.ranking ul li .progtitle{padding-left:28px;}
.d2 .programlist.ranking ul li:nth-child(n + 10) .progtitle{padding-left:45px;}
.d2 .programlist.ranking ul li .rank {
	letter-spacing:-.08em;
	font-size:33px; color:#40b8dc;
	font-family:Helvetica; font-style:italic; text-align:left;
	padding-top:6px;
	position:absolute;left:0;
}
.d2 .programlist.ranking ul li:nth-child(n + 20) .rank{letter-spacing:normal;}
/*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:80px; height:80px;}
.programlist.topics ul li .picinner {
	width:80px; height:80px; border-radius:20px;
	background-size:cover; background-color:#3ed0e3;
}
.programlist.topics ul li .progtitle { padding:0 15px;}
.programlist.topics ul li .progtitle h3 {
	font-size:16px; line-height:1.5;
	display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
	max-height:calc(1.5em * 2); overflow:hidden;
	white-space:normal;
	}
.programlist.topics ul li .progtitle p { font-size:12px; line-height:1.35; color:#888; padding-top:8px;}

/*////////////////////////////////////////////////////*/
/*carousel*/
.carousel .programlist h2 { padding-left:25px;}
.carousel .programlist .listinner { width:100%; padding-left:25px;}
	.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; margin:0;}
.carousel .programlist ul:after { display:none;}
/*normal*/
.carousel .programlist.normal ul li { padding-right:20px;}
.carousel .programlist.normal ul li a:not(.like) { width:280px;}
.carousel .programlist.normal ul li .pic { height:158px;}
/*recommend*/
.carousel .programlist.recommend { height:360px; padding-bottom:0; margin-bottom:20px;}
.carousel .programlist.recommend h2 { display:none;}
.carousel .programlist.recommend .listinner { height:365px; padding-left:0;}
.carousel .programlist.recommend ul li a { width:640px;}
.carousel .programlist.recommend ul li .pic { height:360px; 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 24px 15px;
	position:absolute; bottom:0; left:0;
}
.carousel .programlist.recommend ul li .progtitle h3 { font-size:26px; padding-bottom:3px;}
.carousel .programlist.recommend ul li .progtitle p { font-size:15px;}
.carousel .programlist.recommend ul li .progtitle p.summary { margin-top:0;}
.carousel .programlist.recommend ul li .progtitle p.tv { font-size:13px; color:rgba(255,255,255,0.7);}
.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:20px 0 0; margin-bottom:40px;}
.carousel .programlist.mylist h2 { color:#fff; margin-bottom:8px;}
.carousel .programlist.mylist ul li { padding-right:15px;}
.carousel .programlist.mylist ul li a:not(.like) { width:205px;}
.carousel .programlist.mylist ul li .pic { height:115px; background:#000;}
.carousel .programlist.mylist ul li .progtitle { color:#fff; padding:8px 5px 12px 2px;}
.carousel .programlist.mylist ul li .progtitle h3 { font-size:15px;}
.carousel .programlist.mylist ul li .progtitle p { font-size:12px;}
.carousel .programlist.mylist ul li .progtitle p.summary { padding-top:2px; margin-top:4px;}
.carousel .programlist.mylist ul li .progtitle p.tv { color:rgba(255,255,255,0.65); margin-top:2px;}
.carousel .programlist.mylist ul li a:hover { opacity:1;}
.carousel .programlist.mylist ul li a:hover .picinner { opacity:0.7;}
/*ranking*/
.carousel .programlist.ranking { padding-left:0; margin-bottom:0;}
.carousel .programlist.ranking h2 { padding-left:25px;}
.carousel .programlist.ranking .listinner { height:290px; 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:0 15px;}
.carousel .programlist.ranking ul:first-child { padding-left:5px;}
.carousel .programlist.ranking ul:last-child { border-right:none;}
.carousel .programlist.ranking ul li { width:500px;}
.carousel .programlist.ranking ul li .progtitle { padding:0 10px;}
/*special*/
.carousel .programlist.special ul li { padding-right:20px;}
.carousel .programlist.special ul li a { width:280px;}
.carousel .programlist.special ul li .pic { height:158px;}
.carousel .programlist.special ul li .progtitle { color:#40b8dc; padding:8px 0;}
/*topics*/
.carousel .programlist.topics h2 { border-bottom:1px solid #cbcbcb; padding:0 0 10px; margin:0 0 5px 25px;}
.carousel .programlist.topics .listinner { height:290px; padding-left:0;}
.carousel .programlist.topics .listinner > div { display:inline-table; max-width:100%;}
.carousel .programlist.topics ul { display:table-cell; padding:0 25px;}
.carousel .programlist.topics ul li { width:400px; height:80px; float:none; margin:12px 0;}
/*cast*/
.carousel .programlist.cast .listinner { width:100%; padding-left:25px;}
.carousel .programlist.cast ul li { padding-right:12px;}
.carousel .programlist.cast ul li a { width:125px; text-align:center;}
.carousel .programlist.cast ul li .pic { width:125px; height:125px;}
.carousel .programlist.cast ul li .name {
	font-size:14px; padding-top:10px;
	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
/*controls*/
.carousel .controls { width:100%; background:rgba(0, 0, 0, 0.5);}
.carousel .controls a {
	display:block; width:86px; height:86px;
	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:-43px;
	}
	.carousel .controls a.prev { left:-43px;}
	.carousel .controls a.next { right:-43px;}
	/*arr*/
	.carousel .controls a:after {
		content:""; display:block; width:14px; height:14px;
		border-top:3px solid #fff; border-right:3px solid #fff;
		position:absolute; top:50%; left:15px; margin-top:-7px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.carousel .controls a.prev:after {
		border:none; left:54px;
		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:40px 27px;}
.listblock .programlist h2 { padding:0 10px; margin-bottom:20px;}
.listblock + .listblock .programlist { padding-top:0;}
/*normal*/
.listblock .programlist.normal ul li { width:18%; margin:0 1% 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:13px; color:#fff;
	text-align:center; line-height:1.2;
	padding:4px 0 3px;
	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 .note { font-size:12px; color:#949494; position:absolute; top:54px; right:40px;}

/*tv service*/
.listblock .programlist.service { padding-top:10px;}
.listblock .programlist.service h2 {
	display:block; width:350px; height:130px;
	background:url(../img/parts_logo.png) no-repeat;
	background-size:480px auto;
	text-indent:110%; white-space:nowrap; overflow:hidden;
	margin:0 auto 10px;
	}
	.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:40px;}
.carousel .programlist.recommend ul li .progtitle.matome { padding-right:65px;}
.carousel .programlist:not(.recommend) ul li .progtitle.matome { position:relative;}
.carousel .programlist ul li .progtitle.matome:before{
	display:block;content:''; width:32px;height:32px;
	position:absolute; top:10px; right:5px;
	background:url(../img/icon_fukusu.png) center center no-repeat;
	background-size:contain;
	}
	.carousel .programlist.recommend ul li .progtitle.matome:before{
		top:6px; right:23px; width:35px;height:35px;
		background-image:url(../img/icon_fukusu_gray.png);
	}
	.carousel .programlist.mylist ul li .progtitle.matome:before{
		width:28px;height:28px; right:2px;
		background-image:url(../img/icon_fukusu_white.png);
	}

/*@d2
/////////////////////////////////////////////////////////////////////*/
/*btnarea*/
.d2 #contents .btnarea { padding:10px 0 25px;}
.d2 #contents .btnarea .inner:after { content:""; clear:both; display:block;}
.d2 #contents .btnarea .inner > div:not(.official-info) { display:inline-block; vertical-align:middle;}
	/*link*/
	.d2 #contents .btnarea .official { margin-right:10px;}
	.d2 #contents .btnarea .official a {
		display:block; min-width:180px;
		font-size:14px; font-weight:600; text-align:center;
		color:#40b8dc; border:1px solid #40b8dc;
		padding:.75em 35px .75em 30px; 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:3px;
		margin-top:-13px;
	}
	.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 ul,
	.d2 #contents .btnarea .sns li { display:inline-block; vertical-align:middle;}
	.d2 #contents .btnarea .sns li { margin-left:10px;}
	.d2 #contents .btnarea .sns li.fb a,
	.d2 #contents .btnarea .sns li.tw a {
		display:block; font-size:12px; font-weight:600;
		color:#40b8dc; letter-spacing:normal;
		padding:.9em 5px .85em 42px; 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 .mylist { float:right; padding-left:10px; position:relative;}
	.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:18px; padding:0 5px;}
	.d2 #contents .btnarea .mylist a {
		display:inline-block; vertical-align:middle;
		min-width:180px; font-size:14px; font-weight:600;
		text-align:center; color:#40b8dc; border:1px solid #40b8dc;
		padding:.75em 15px .75em 35px; 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:10px;
		margin-top:-16px;
		-webkit-transform:scale(0.8);
		transform:scale(0.8);
	}
	.d2 #contents .btnarea .mylist a.this:after { background-position:-65px 0;}

/*others*/
.others .headings { height:66px; padding:0 25px; position:relative;}
.others .headings h2 {
	width:100%; font-size:26px; color:#fff; letter-spacing:0.035em;
	padding:1px 0 0 50px; position:relative;
	position:absolute; top:50%; left:30px;
	transform:translateY(-50%);
	}
	.others .headings h2:before {
		content:""; display:block; width:35px; height:40px;
		background:url(../img/parts_icon.png) no-repeat;
		background-size:300px auto;
		position:absolute; top:50%; left:0;
		transform:translateY(-50%);
	}
	.mylist .headings h2:before { background-position:0 -35px;}
	.search .headings h2:before { background-position:-40px -35px;}
	.epg .headings h2:before { background-position:-80px -35px;}
	.notice .headings h2:before { background-position:-120px -35px;}

.others .headings2 {
	min-height:70px; text-align:center; background:#4c4c4c;
	padding:18px 25px 0; position:relative;
	}
	.others .headings2 ul { margin-bottom:-10px; 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; min-height:52px; font-size:19px;
		color:#fff; letter-spacing:0.05em; white-space:nowrap;
		border-radius:10px 10px 0 0; padding:15px 30px;
	}
	.others .headings2 ul li a:hover { opacity:0.8;}
	.others .headings2 ul li a.this { background:#fff; color:#222; opacity:1;}

.others .headings3 { text-align:center; padding:0 25px; position:relative;}
	.others .headings3 > ul{ position:absolute;top:-42px;left:250px;}
	.others .headings3 ul li { display:inline-block;}
	.others .headings3 ul li + li { margin-left:5px;}
	.others .headings3 ul li a {
		display:block; height:42px; font-size:18px;
		color:#fff; letter-spacing:0.05em;
		border-radius:10px 10px 0 0; background:#4c4c4c;
		padding:14px 30px 0;
	}
	.others .headings3 ul li a.this { color:#000; background:#fff;}

.others .headings4 {
	text-align:center; background:#fff;
	padding:22px 25px 0; position:relative;
	}
	.others .headings4 ul li { display:inline-block;}
	.sp.mylist .headings4 ul li:nth-child(2) { display:none;}
	.others .headings4 ul li a {
		display:block; height:52px; font-size:18px; color:#fff;
		border-radius:10px 10px 0 0; white-space:nowrap;
		padding:15px 30px 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:18px 20px 0;}
	.others .weeknavi li { display:inline-block;}
	.others .weeknavi li a{
		display:inline-block; min-width:40px; height:40px;
		font-size:17px; background:#f2f2f2; border-radius:50px;
		padding:.75em .7em .6em .75em; margin:0 3px 10px;
	}
.search .listblock .programlist .note {
	font-size:12px; color:#949494;
	line-height:1.35; text-align:right;
	position:absolute; bottom:100%; right:40px;
	margin-bottom:-72px;
}

/*alert*/
.d2 #contents .alert { min-height:400px; text-align:center; padding:80px 0;}
.others #contents .alert { min-height:0;}
	.d2 #contents .alert span {
		display:inline-block; min-width:425px;
		font-size:28px; color:#9f9f9f; line-height:1.35;
		border-top:1px solid #9f9f9f;
		border-bottom:1px solid #9f9f9f;
		padding:22px 30px 20px;
	}

/*@bangumi
/////////////////////////////////////////////////////////////////////*/
/*carousel*/
.bangumi .carousel { padding-top:40px;}
.bangumi .carousel .programlist h2 { color:#fff; padding-left:35px; margin-bottom:20px;}
.detail .carousel .programlist h2 { font-size:24px; font-weight:600; color:#0a0a0a; margin-bottom:16px;}
.bangumi .carousel .programlist .listinner { padding-left:35px;}
/*normal*/
.bangumi .carousel .programlist.normal { padding-bottom:30px;}
	.bangumi .carousel .programlist.normal ul li a { width:240px;}
	.bangumi .carousel .programlist.normal ul li .pic { height:135px;}
	.bangumi .carousel .programlist ul li .progtitle { min-height:65px;}
	.bangumi .carousel .programlist ul li .progtitle h3 { font-size:16px;}
	.bangumi .carousel .programlist ul li .progtitle .summary { font-size:14px;}
	.bangumi .carousel .programlist ul li .progtitle .tv { padding-right:0;}
	.video-section.carousel { border-top:1px solid #333;}
	.video-section.carousel .programlist.normal ul li .progtitle { color:#fff;}
	.video-section.listblock .programlist.normal ul li .progtitle { color:#fff;}
/*cast*/
.cast-section.carousel { border-top:1px solid #333;}
.vod-section + .cast-section.carousel { border-top:none;}
.cast-section.carousel .programlist.cast { padding-bottom:30px;}
	.cast-section.carousel .programlist.cast .listinner { height:160px;}
	.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:500px; text-align:center; padding-bottom:40px; margin:0 auto;}
	.bangumi .linkbangumi a {
		display:block; width:100%;
		font-size:15px; font-weight:600;
		color:#fff; line-height:1.35;
		padding:.8em 40px; position:relative;
	}
	.bangumi .linkbangumi a:before {
		content:""; display:block; width:10px; height:10px;
		border-bottom:2px solid #fff; border-left:2px solid #fff;
		position:absolute; top:50%; left:20px; margin-top:-6px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.bangumi .linkbangumi a:hover { opacity:0.8;}

/*@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%; max-width:1100px; padding:0 20px; margin:0 auto; position:relative;}
.large .video-section .inner,
.large .vod-section .inner{max-width:100%;}
.large .video-section .playvideo .inner{padding:0;}
#enlarge{position:relative;z-index:10;}
#enlarge a{position:absolute;right:0;color:#999;font-size:13px;padding:15px 0;display:inline-block;}
/*player*/
.sp .video-section .playvideo { display:none;}
.video-section .playvideo .inner { padding:20px 20px 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:20px; text-align:center;
		background:#1a1a1a;
	}
	.video-section .playvideo .playerIn .how p { font-size:28px; color:#fff; padding:0 0 80px;}
	.video-section .playvideo .playerIn .how a {
		font-size:20px; color:#fff; background:#333;
		border-radius:50px; padding:10px 30px; margin:0 10px;
	}
	.video-section .playvideo .playerIn .how a.active,
	.video-section .playvideo .playerIn .how a:hover { color:#fff; background:#40b8dc;}
	.video-section .playvideo .playerIn .how a.active:hover { opacity:0.9;}
#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:16px; color:#fff; text-align:center;
		background:#1a1a1a;
		position:absolute; top:0; left:0;
		padding-top:25%;
	}
#end-alert { width:100%; height:600px; position:relative;}
	#end-alert div {
		display:table-cell; width:100%; height:100%;
		font-size:26px; color:#fff; text-align:center;
		background:#1a1a1a;
		position:absolute; top:0; left:0;
		padding-top:230px;
	}
	#end-alert div a {
		display:inline-block; width:300px;
		font-size:22px; color:#fff;
		padding:.8em 10px; margin-top:40px;
	}
	#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;}
.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:100% auto;
		text-indent:110%; white-space:nowrap; overflow:hidden;
	}
	.video-section .image .pic .flag {
		width:100%; height:100%;
		background:transparent no-repeat;
		background-size:auto 80%;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:0; left:0;
	}
	/*20171206*/
	body.special .video-section:first-child{overflow:hidden;margin:0 auto;max-width:1000px;}
	body.special .video-section.listblock .programlist{padding-top:0;}
	body.special .video-section.listblock .listinner{border-top: 1px solid #333;padding-top:40px;}
	body.special .video-section .image{
		float:left;width:40%;margin:20px 20px 20px;
	}
	body.special .video-section .title{padding-top:40px;}
	body.special .video-section .tvinfo p{max-width:unset;min-width:0;width:650px;margin-left:0;}
	body.special .video-section .title h1{width:100%;}
	body.special .video-section .description{border-top:none;}
	body.special .video-section .description h2:before{left:22px;}
	
	/*20180131*/
	.bigbanner{text-align:center;padding:5px 0 25px;}
	.bigbanner img{width:640px;}
/*tablet*/
.sp: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%);
}
.sp .video-section .image .playbtn { position:absolute; bottom:-20px; right:30px; z-index:100;}
	.sp .video-section .image .playbtn a {
		display:block; width:70px; text-align:center;
		font-size:12px; color:#40b8dc;
	}
	.sp .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;
	}
	/*LIVE配信予定*/
	body.before .video-section .image{display:block !important;}
	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:24%;color:#fff;font-size:50px;font-weight:600;text-align:center;line-height:1.5;
	}
	body.before .video-section .image .pic .d3 span{
		display:block;font-size:30px;color:#fff;
	}
/*title*/
.sp:not(.special) .video-section .title { margin-top:-60px;}
.video-section .title { padding:20px 0;}
	.video-section .title h1 { font-size:28px; line-height:1.35;width:86%;}
	.video-section .title p { font-size:14px; line-height:1.6;margin-top:10px;}
	.video-section .title p > span { display:inline-block; padding-bottom:3px;}
	.video-section .title .summary { font-size:19px; padding-right:1em;}
	.video-section .title .tv { color:#aaa; padding-right:1.2em;}
	.video-section .title .red { color:#e31e1e;}
/*description*/
.video-section .description { border-top:1px solid #333; padding:30px 0;}
.video-section .description h2 { font-size:19px; line-height:1.35; padding:0 0 10px 45px;}
.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:-4px; left:18px;
}
.video-section .description p { font-size:14px; line-height:1.8;}
/*info*/
.video-section .tvinfo { padding-bottom:5px;}
.video-section .tvinfo p {
	display:inline-block; min-width:400px; max-width:550px;
	font-size:14px; line-height:1.5;
	border:1px solid #555; border-radius:8px;
	padding:15px 20px; margin-left:-10px; position:relative;
	}
	.video-section .tvinfo p:after,
	.video-section .tvinfo p:before {
		content:" "; width:0; height:0;
		position:absolute; top:100%; left:95px;
		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 li{
	font-size:19px; display:inline-block;
	color:#fff; margin:0 15px;
}
.video-section .epTabUi li a{
	color:#40b8dc; display:inline-block;
	padding:0 10px 10px;
	border-bottom:solid 5px transparent;
}
.video-section .epTabUi li.this a{
	border-bottom-color:#40b8dc;
}
/*vod*/
.vod-section { background:#08475a; position:relative;}
.vod-section .inner { display:table; table-layout:fixed; max-width:100%; padding:0 0 0 35px;}
.vod-section .vod { display:table-cell; vertical-align:top; padding:22px 50px 25px 0;}
	.vod-section .vod h2 { font-size:24px; margin-bottom:18px;}
	.vod-section .vod h2 span { display:inline-block; font-size:14px; opacity:0.7;}
	.vod-section .vod .program > div { display:table-cell; vertical-align:top; position:relative;}
	.vod-section .vod .program .pic { width:200px; height:113px;}
	.vod-section .vod .program .picinner {
		width:200px; height:113px;
		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:0 0 0 15px;}
	.vod-section .vod .program .title h3 { font-size:20px; line-height:1.35; padding:0 5px; margin-bottom:10px;}
	.vod-section .vod .program .title .linkbtn { width:auto; display:inline-block; vertical-align:top; margin:5px;}
	.vod-section .vod .program .title .linkbtn a {
		display:block; min-width:200px;
		font-size:15px; text-align:center; color:#07579b;
		background:#fff; border-radius:50px;
		padding:.6em 45px .55em 30px; 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:12px;
		margin-top:-12px;
		transform:scale(0.9); -webkit-transform:scale(0.9);
	}
.vod-section .sns {
	display:table-cell; vertical-align:middle;
	width:30%; min-width:220px; background:#0c2d37;
	text-align:center; padding:20px 0 30px;
	}
	.vod-section .sns h2 { font-size:19px; text-align:center; margin-bottom:20px; opacity:0.7;}
	.vod-section .sns li { display:inline-block; vertical-align:top; margin:0 7px;}
	.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;
	}
	.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 h2 { display:inline-block; vertical-align:top;}
.d2 .programlist .txtlink { display:inline-block; vertical-align:top; margin-left:40px;}
	.d2 .programlist .txtlink a {
		display:inline-block; height:35px; line-height:35px;
		font-size:19px; font-weight:600; color:#333;
		padding: 0 25px 0 10px; margin:0 10px;
		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;
		transition:all 0.2s ease-in-out;
	}
	.d2 .programlist .txtlink a:hover { color:#40b8dc;}
	.d2 .programlist .txtlink a:hover:after { right:2px;}
.special .video-section:first-child:after { content:""; clear:both; display:block;}
.special .programlist .txtlink { display:block; margin:-10px 0 25px 20px;}
	.special .programlist .txtlink a {
		display:inline-block; height:45px; line-height:1.5;
		font-size:22px; font-weight:normal; color:#40b8dc;
		padding:0 8px 0 6px; margin:0 20px;
		position:relative; overflow:hidden;
		-webkit-font-smoothing:subpixel-antialiased; -moz-osx-font-smoothing:unset;
	}
	.special .programlist .txtlink a:after { display:none;}
	.special .programlist .txtlink a:before {
		content:""; display:block; width:100%; height:5px;
		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;}
@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;}
}
.special #contents .btnarea { padding:10px 0 0;}
.d2 #contents .linkbtn2 { padding:20px 0 40px;}
	.d2 #contents .linkbtn2 a {
		display:block; width:520px;
		font-size:22px; font-weight:600;
		color:#40b8dc; text-align:center;
		border:1px solid #40b8dc; border-radius:1px;
		padding:1em 20px 1em 10px; margin:0 auto;
		position:relative;
	}
	.d2 #contents .linkbtn2 a:after {
		content:""; display:block; width:30px; height:30px;
		background:url(../img/arrow.png) no-repeat -15px 0;
		background-size:80px auto;
		position:absolute; top:50%; right:20px;
		margin-top:-15px;
	}
	.d2 #contents .linkbtn2 a:hover { background:#40b8dc; color:#fff;}
	.d2 #contents .linkbtn2 a:hover:after { background-position:-50px 0;}

.d2 #contents .linkbtn2.fifa { padding:0;}
.d2 #contents .linkbtn2.fifa a {
	width:420px; font-size:21px;
	background:#40b8dc; color:#fff;
	position:absolute; top:-88px; right:20px;
	}
	.d2 #contents .linkbtn2.fifa a:after { background-position:-50px 0; right:12px;}
	.d2 #contents .linkbtn2.fifa a:hover { opacity:0.8;}

/*@detail
/////////////////////////////////////////////////////////////////////*/
.detail .bg { background:#efeff4; padding:20px;}
.detail .bgin { background:#fff;}
.detail .detail-section.carousel { border-bottom:1px solid #efeff4;}
.detail .cast-section.carousel { border-top:1px solid #efeff4;}
/*headings*/
.detail-section .headings .pic { height:420px; border-bottom:1px solid #efeff4;}
.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;
}
/*title*/
.detail-section .headings .title { border-bottom:1px solid #efeff4; padding:25px 35px;}
	.detail-section .headings .title h1 { font-size:28px; font-weight:600; line-height:1.35; margin-bottom:6px;}
	.detail-section .headings .title p { font-size:16px; line-height:1.6;}
	.detail-section .headings .title p > span { display:inline-block; padding-bottom:3px;}
	.detail-section .headings .title .summary { font-size:20px; padding-right:1.5em;}
	.detail-section .headings .title .tv { color:#666; padding-right:1.2em;}
	/*btn*/
	.d2 #contents .detail-section .btnarea { padding:30px 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;}
	.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:40px 35px;}
	.detail-section .text h2 { font-size:24px; font-weight:600; margin-bottom:20px;}
	.detail-section .text h3 { font-size:18px; color:#40b8dc; margin-bottom:12px;}
	.detail-section .text p { font-size:15px; 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 { height:320px; padding:20px 20px 0; position:relative;}
	.talent .detail-section .headings .pic {
		width:270px; height:270px; border:none;
		position:absolute; top:35px; left:35px;
	}
	.talent .detail-section .headings .profile { text-align:left; padding:30px 10px 10px 330px;}
	.talent .detail-section .headings .profile h1 { font-size:30px; line-height:1.35; padding:0 0 20px;}
	.talent .detail-section .headings .profile dl { padding:10px 0;}
	.talent .detail-section .headings .profile dl:after { content:""; clear:both; display:block;}
	.talent .detail-section .headings .profile dt { width:6em; float:left; font-size:15px; padding:7px 0;}
	.talent .detail-section .headings .profile dd { font-size:15px; padding:7px 0 7px 7em;}
.talent #contents .detail-section .btnarea { padding:25px 35px;}
.talent .listblock .programlist h2 { margin-bottom:20px;}

/*@mylist
/////////////////////////////////////////////////////////////////////*/
.mylist .programlist h2 { display:none;}
.mylist .headings .edit {
	position:absolute; top:50%; right:40px;
	transform:translateY(-50%); margin-top:1px;
	}
	.mylist .headings .edit a {
		display:block; min-height:30px;
		font-size:14px; color:#222; line-height:1.5;
		background:#fff; border-radius:50px;
		padding:6px 20px 6px 40px; position:relative;
	}
	.mylist .headings .edit a:before,
	.mylist .headings .edit a:after {
		content:""; display:block; width:18px; height:3px;
		background:#4c4c4c;
		position:absolute; top:50%; left:17px;
		transform:translateY(-50%);
	}
	.mylist .headings .edit a:before { margin-top:-4px;}
	.mylist .headings .edit a:after { margin-top:3px;}
	.mylist .headings .edit a:hover { opacity:0.9;}

/*@search
/////////////////////////////////////////////////////////////////////*/
.search .listblock .programlist h2 span { color:#40b8dc; padding-right:0.5em;}
.search .selectbox,
.search .selectbtn {
	display:inline-block; vertical-align:top;
	width:20%; max-width:200px;
	margin:0 3px; position:relative;
	}
	.search .selectbox label {
		display:block; width:100%;
		font-size:16px; white-space:nowrap;
		background:#fff; border-radius:50px; overflow:hidden;
		padding:9px 20px 8px 15px; position:relative; z-index:1;
	}
	.search .selectbox label:before {
		content:''; display:block;
		width:35px; height:100%; background:#fff;
		position:absolute; top:0; right:0;
	}
	.search .selectbox label:after {
		content:''; display:block; width:0; height:0;
		border:6px transparent solid;
		border-top-color:#4c4c4c;
		border-width:10px 6px 0 6px;
		position:absolute; top:50%; right:15px;
		margin-top:-4px;
	}
	.search .selectbox select {
		display:block; width:100%;
		font-size:16px; cursor:pointer; opacity:0;
		padding:9px 0 8px;
		position:absolute; top:0; left:0; z-index:2;
		display:none;
	}
	.search .selectbox select option { opacity:1; background-color:#fff;}
/*btn*/
.search .selectbtn { width:30%; margin-left:10px;}
	.search .selectbtn input[type="button"] {
		display:block; width:100%; line-height:1;
		font-size:16px; color:#fff; cursor:pointer;
		background:#40b8dc; border-radius:50px;
		padding:9px 0 8px;
	}
	.search .selectbtn input[type="button"]:hover { background:#7ecee6;}

/*@epg
/////////////////////////////////////////////////////////////////////*/
.epg #epgArea { padding:0 0 30px; margin-top:-68px; position:relative;}
.epg #epgArea iframe { border:0; width:100%;}

/*@topics
/////////////////////////////////////////////////////////////////////*/
.topicslist #contents { background:#f0f0f0;}
.d2 .programlist.topics { padding-bottom:60px;}
.d2 .programlist.topics h2 { border-bottom:none; margin-bottom:20px;}
.d2 .programlist.topics ul:after { content:""; clear:both; display:block;}
.d2 .programlist.topics ul li {
	width:48%; height:120px; margin:10px 1%; float:left;
	background:#fff; border-radius:16px;
	}
	.d2 .programlist.topics ul li .pic { width:120px; height:120px;}
	.d2 .programlist.topics ul li .picinner { width:120px; height:120px; border-radius:16px 0 0 16px;}
	.d2 .programlist.topics ul li .progtitle h3 { -webkit-line-clamp:3; max-height:calc(1.5em * 3);}
	.d2 .programlist.topics ul li .progtitle p { padding-top:6px;}
	.mylist .programlist.topics ul li .picinner,
	.search .programlist.topics ul li .picinner { border-radius:20px;}

/*@notice
/////////////////////////////////////////////////////////////////////*/
.notice #contentsMain { padding:30px 40px 70px;}
.notice #contentsMain ul li { font-size:16px; line-height:1.6; border-bottom:solid 1px #ddd; padding:18px 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; font-size:14px; font-weight:600;
	color:#40b8dc; margin-bottom:10px;
	}
	#oshirasebox .date { margin-left:-5px; margin-bottom:5px;}
	#oshirasebox .date span,
	.info #contentsMain .date span,
	.notice #contentsMain .date span {
		display:inline-block;
		font-size:12px; font-weight:normal;
		color:#fff; line-height:1; letter-spacing:0.05em;
		background:#ccc; border-radius:50px;
		padding:.4em .83em .28em .85em; margin-right:10px;
	}
	#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:18px; right:30px;}
	.notice.detail .headings .back a {
		display:block; font-size:14px; color:#fff;
		border:1px solid #fff; border-radius:50px;
		padding:8px 13px 7px 30px; position:relative;
	}
	.notice.detail .headings .back a:before {
		content:""; display:block; width:8px; height:8px;
		border-bottom:2px solid #fff; border-left:2px solid #fff;
		position:absolute; top:50%; left:15px; margin-top:-5px;
		-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:16px; margin-bottom:15px;}
.notice.detail #contentsMain .date span { font-size:14px; padding:.38em .8em .2em .85em;}
/*detail*/
.notice.detail #contentsMain { padding:50px 7% 70px;}
.notice.detail #contentsMain h2 {
	font-size:22px; line-height:1.5;
	padding-bottom:13px; margin-bottom:20px;
	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:2; padding:10px 10px 30px;}
/*btn*/
.notice.detail #contentsMain .rellink { padding:10px 10px 0;}
	.notice.detail #contentsMain .rellink a {
		display:block; font-size:16px; color:#333;
		background:#fff; border-radius:6px;
		border:solid 1px #c9c9c9;
		padding:11px 10px 10px 40px; position:relative;
	}
	.notice.detail #contentsMain .rellink a:before {
		content:""; display:block; width:8px; height:8px;
		border-top:2px solid #40b8dc; border-right:2px solid #40b8dc;
		position:absolute; top:50%; left:15px; margin-top:-5px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.notice.detail #contentsMain .rellink a:hover{ background-color:#f8f8f8;}
.notice.detail #contentsMain .back { text-align:center; padding:50px 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:8px; height:8px;
		border-bottom:2px solid #40b8dc; border-left:2px solid #40b8dc;
		position:absolute; top:50%; left:15px; margin-top:-4px;
		-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:8px;}
.info .headings h2:before { display:none;}
.info #contentsMain {
	max-width:960px; min-height:500px;
	padding:50px 35px 70px; margin:0 auto;
}
.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:12px;}
.info #contentsMain .right { text-align:right;}

.info #contentsMain .additional{
	line-height:1.5;
	padding:10px 0;
	display:block;
	text-indent:-8px;
	margin:0 0 0 1em;
}
.info #contentsMain .additional strong { display:inline-block;margin-bottom:4px;}

/*////////////about////////////*/
.about #contentsMain { padding:0 0 50px; max-width:100%;}
	.about #contentsMain h2 {
		font-size:32px; color:#333; line-height:1.8; text-align:center;
		background:#efeff4; padding:34px 0 30px;
	}
	.about #contentsMain h2 span { font-size:40px; color:#40b8dc; padding:0 0.05em;}
	.about .block1 .read {
		width:740px; font-size:16px; line-height:2;
		padding:30px 0; margin:0 auto;
	}
	.about .block1 .note { text-align:center; font-size:14px; line-height:2;padding:20px 0 0;}
	.about .block1 { max-width:890px; margin:0 auto 40px;}
	.about .block1 ul {
		width:95%; height:0; padding-top:47.95%;
		background:url(../img/about0.png) no-repeat;
		background-size:contain;
		margin:0 auto;
	}
	.about .block1 ul li { display:none;}
	.about .block2 {
		min-height:590px; background:#40b8dc;
		background:linear-gradient(to bottom,  #40b8dc 1%,#2aa7cc 100%);
	}
	.about .block2 ul { text-align:center; padding-top:70px;}
	.about .block2 ul li { display:inline-block; width:480px; vertical-align:top; color:#fff; padding-bottom:60px;}
	.about .block2 ul li h3 { font-size:34px; margin-bottom:30px;}
	.about .block2 ul li p { font-size:16px; margin-bottom:24px;}
	.about .block2 ul li p br { display:none;}
	.about .block2 ul li img { width:450px; margin-bottom:15px;}
	.about .block2 ul li img + p { font-size:14px;}
	.about .block2 ul li.a2 { padding-bottom:45px;}
	.about .block3 { background:#f5f5fa; padding:70px 0 60px;}
	.about .block3 h3 { font-size:34px;margin-bottom:30px;text-align:center;}
	.about .block3 h4 { font-size:24px; padding:10px 140px 10px 0; min-height:80px;}
	.about .block3 .videoplayer{width:640px;margin:0 auto; position:relative;}
	.about .vjs-mouse.vjs-playlist { background:none; font-size:12px; padding:10px 0;width:645px;position:relative;}
	.about .vjs-mouse.vjs-playlist .vjs-playlist-item {
		display:inline-block; width:121px; height:auto;
		outline:none; vertical-align:top; margin-right:8px;
		margin-bottom:5px;
	}
	.about .vjs-mouse.vjs-playlist .vjs-playlist-item:nth-child(5) { margin-right:0;}
	.about .vjs-mouse.vjs-playlist .vjs-playlist-thumbnail { margin-right:0; margin-bottom:5px;}
	.about .vjs-mouse.vjs-playlist time { font-size:12px;}
	.about .vjs-mouse.vjs-playlist cite { 
		display:inline-block; color:#000;
		height:50px; line-height:1.4;
		white-space:inherit; letter-spacing:-0.01em;
	}
	.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 .share { text-align:center; position:absolute; top:370px; right:0;}
	.about .block3 .share ul li { display:inline-block; vertical-align:middle; font-size:0;}
	.about .block3 .share p { font-size:13px; padding-bottom:5px;}
	.about .block3 .share ul li { 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 .block3.pr { background:#fff; padding:75px 40px;}
	.about .block3.pr + .block3.pr { border-top:15px solid #f5f5fa;}
	.about .block3.pr ul { width:940px; margin:0 auto;}
	.about .block3.pr ul li { font-size:16px; line-height:1.6; border-bottom:solid 1px #ddd; padding:18px 5px;}
	.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:400px;
		font-size:17px; color:#fff;
		background:#40b8dc; border-radius:50px;
		border:none !important;
		padding:.85em 1em .8em; position:relative;
	}
	.about .block3 .btn-more a:after {
		content:""; display: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:25px;
	padding-bottom:17px; margin-bottom:32px;
	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:20px; background:#efeff4;
	padding:15px 15px 13px; margin-bottom:15px;
}
.faq #contentsMain .indent { display:block; text-indent:-1em; padding-left:1.2em;}
.faq #system { padding-bottom:30px;}
	.faq #system h4 { font-size:16px; margin-bottom:3px;}
	.faq #system .block {
		font-size:14px; line-height:1.8;
		padding:0 15px; margin-bottom:40px;
	}
	.faq #system .block p { font-size:15px; padding-bottom:20px;}
	.faq #system .block dl + p { font-size:14px; 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:7em; float:left; padding-top:5px;}
	.faq #system dd { text-indent:-1em; padding:4px 0 3px 8em; 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:14px; line-height:1.5; padding-bottom:8px;}
	.faq #system .download p br { display:none;}
.faq #qa dl { font-size:16px; padding:0 15px 30px;}
	.faq #qa dl:last-child { padding-bottom:0;}
	.faq #qa dt {
		font-size:17px; line-height:1.6;
		padding:15px 80px 11px 40px;
		cursor:pointer; position:relative;
	}
	.faq #qa dt:hover { color:#40b8dc;}
	.faq #qa dd {
		font-size:16px; line-height:2; border:1px solid #40b8dc;
		padding:30px 30px 10px 70px; margin-bottom:40px; position:relative;
		display:none;
	}
	.faq #qa dd p { padding-bottom:20px;}
	.faq #qa dd h4 { margin:0;}
	.faq #qa dd ul { font-size:14px; padding:0 0 20px 20px;}
	.faq #qa dd ul li { list-style:disc;}
	.faq #qa dt:before,
	.faq #qa dd:before { display:block; color:#40b8dc; position:absolute;}
	.faq #qa dt:before { content:"Q"; top:50%; left:0; font-size:28px; transform:translateY(-50%);}
	.faq #qa dd:before { content:"A"; top:12px; left:24px; font-size:34px;}
	.faq #qa dt:after {
		content:""; display:block; width:12px; height:12px;
		border-bottom:2px solid #40b8dc; border-left:2px solid #40b8dc;
		position:absolute; top:50%; right:10px;
		-webkit-transform:rotate(-45deg);
		transform:rotate(-45deg);
		margin-top:-12px;
	}
	.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:40px;}
	.contact #contentsMain form dl {
		display:table; width:100%; table-layout:fixed;
		border-bottom:1px solid #ddd; padding:1.5em 1em;
	}
	.contact #contentsMain form dt,
	.contact #contentsMain form dd {
		display:table-cell; vertical-align:top;
		line-height:1.5; position:relative;
	}
	.contact #contentsMain form dt { width:300px; font-size:16px; padding:.7em 0 .5em;}
	.contact #contentsMain form dl.reset { display:block; padding:2em 1em;}
	.contact #contentsMain form dl.reset dt,
	.contact #contentsMain form dl.reset dd { display:block; width:100%;}
	.contact #contentsMain form dl.reset dt { margin-bottom:12px;}
	.contact #contentsMain form dl.reset dd { padding:0 1em 0.2em;}
	.contact #contentsMain form #bug { /*display:none;*/}
	.contact #contentsMain form .note { display:block; font-size:13px; margin-top:5px;}
	.contact #contentsMain form .note2 {
		display:block; font-size:13px; 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:13px; font-weight:600;
		color:#ee190d; margin-top:4px;
	}
	.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 { text-align:center; padding-top:35px;}
	.contact #contentsMain form button {
		display:inline-block; min-width:350px;
		font-size:19px; color:#fff;
		border-radius:6px; background:#40b8dc;
		-webkit-box-shadow:none; box-shadow:none;
		padding:15px 10px 14px; cursor:pointer;
		position:relative; z-index:10;
	}
	.contact #contentsMain form button:hover { opacity:0.8;}
	.contact #contentsMain form button.back { min-width:140px; background:#aaa; margin-right:20px;}
	.contact #contentsMain form button.back:hover { background:#666;}
	.contact #contentsMain form::-moz-focus-inner { padding:0; border:0;}
.contact #contentsMain ul.attn {
	width:93%; margin:0 auto;
	font-size:14px; line-height:1.7;
	background:#efeff4;
	padding:30px 30px 20px 35px;
	}
	.contact #contentsMain ul.attn li { text-indent:-1em; padding-left:1em; margin-bottom:15px;}
	.contact .beforemsg {
		width:100%; font-size:15px; text-align:center;
		background:#e7f6fa; padding:12px 10px 10px; margin:-15px auto 40px;
	}
	.contact .beforemsg br { display:none;}
/*kakunin*/
.contact #contentsMain h2 {
	font-size:26px; text-align:center;
	padding-bottom:17px; margin-bottom:32px;
	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:16px; 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; text-align:center; line-height:2;}

/*////////////terms////////////*/
.terms #contentsMain h2 { font-size:26px; line-height:1.5; margin-bottom:10px;}
.terms #contentsMain p { font-size:15px; line-height:1.8; padding-bottom:20px;}
.terms #contentsMain .block { margin-bottom:30px;}
.terms #contentsMain .block:last-child { margin-bottom:0;}

/*////////////privacy////////////*/
.privacy #contentsMain {
	font-size:15px; line-height:1.8;
	font-family:"Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	padding-bottom:90px;
}
.privacy #contentsMain h2 {
	font-size:26px; line-height:1.5;
	padding-left:1.3em; margin-bottom:25px;
	position:relative;
}
.privacy #contentsMain h2 span { display:block; position:absolute; top:0; left:0;}
.privacy #contentsMain h3 { font-size:22px; line-height:1.5; margin-bottom:10px;}
.privacy #contentsMain h4 { font-size:18px; line-height:1.5; margin-bottom:5px;}
.privacy #contentsMain p { padding-bottom:35px;}
.privacy #contentsMain > p { padding-bottom:45px;}
.privacy #contentsMain > p.right { padding:45px 0 0;}
.privacy #contentsMain ol,
.privacy #contentsMain ul { padding:0 0 35px 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 .indent2 { text-indent:-2.5em; padding-left:2.5em;}
.privacy #contentsMain .indent li,
.privacy #contentsMain .indent2 li { list-style:none;}

.privacy #contentsMain .block + .block { padding-top:70px;}
.privacy #contentsMain .pd { padding:0 0 35px 3.7em;}
.privacy #contentsMain .note { font-size:13px; padding:0 20px;}
.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 20px;}
.privacy #contentsMain th { font-weight:normal; background:#efeff4; padding:5px 10px;}
.privacy #contentsMain .center { text-align:center;}
.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 #contentsMain h2 { padding-left:0;}


/*/////////mailmagazine/////////*/
.mailmagazine #contentsMain { text-align:center;}
	.mailmagazine #contentsMain > p { font-size:18px; line-height:2; padding-bottom:20px;}
	.mailmagazine #contentsMain > p.note { width:640px; font-size:13px; text-align:left; margin:0 auto;}
	.mailmagazine #form { width:640px; padding:10px 0 30px; margin:0 auto;}
	.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:3px 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; min-width:220px;
		font-size:18px; color:#fff;
		letter-spacing:0.05em; border-radius:6px;
		background:#40b8dc; cursor:pointer; box-shadow:none;
		padding:.5em .5em .45em; 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:18px; 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);
	display:none;
}
#enquete .eqform{
	display:block;
	position:absolute;
	top:50%;left:50%;
	z-index:1001;
	width:850px;
	height:600px;
	margin-left:-425px;
	margin-top:-300px;
	background:#fff;
	box-shadow:0 5px 60px rgba(0,20,20,0.4);
	display:none;
}
#enquete .eqform iframe{
	width:850px;
	height:600px;
	display:none;
}
@media screen and (max-width:950px){
	#enquete .eqform{width:800px;margin-left:-400px;}
	#enquete .eqform iframe{width:800px;}
}
@media screen and (max-width:850px){
	#enquete .eqform{width:700px;margin-left:-350px;}
	#enquete .eqform iframe{width:700px;}
}

/*////////////app////////////*/
.app #contentsMain { max-width:1000px;}
.app #contentsMain > div { display:table-cell; vertical-align:top;}
.app #contentsMain .image { width:45%; padding:10px 10px 0 0;}
.app #contentsMain .image img { display:block; width:100%;}
.app #contentsMain .text { padding-left:35px;}
	.app #contentsMain .text p { font-size:16px; line-height:1.8; padding-bottom:30px;}
	.app #contentsMain .text .attn li {
		font-size:13px; 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:22px; font-weight:600; color:#333; line-height:1.35;}
	.app #contentsMain .download h2 span { color:#40b8dc;}
	.app #contentsMain .download h2 br { display:none;}
	.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:202px;}
	.app #contentsMain .badge li.google_play { width:203px;}
	.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:60px;}
.systemerr #contentsMain h1 { font-size:30px;font-weight:600;color:#40b8dc;margin:1em 0 .85em;}
.systemerr #contentsMain p { font-size:16px; line-height:2; padding-bottom:30px;}
.systemerr #contentsMain a { color:#40b8dc;font-weight:600;border-bottom: 1px solid #40b8dc;}

/*////////////TV////////////*/
.tv #contentsMain { max-width:1000px; padding:50px 0 70px;}
.tv #contentsMain br.sp { display:none;}
.tv #contentsMain h3{font-size:30px;text-align:center;font-weight:600;margin-bottom:30px;line-height:1.4;}
.tv #contentsMain a { color:#40b8dc; border-bottom-color:#40b8dc;}
.tv #contentsMain .main-img {
	width:100%; height:0;
	padding-top:calc(450 / 1000 * 100%);
	background:url(../img/info_tv_202011.jpg) no-repeat;
	background-size:contain;
	margin:10px 0 20px;
}
.tv #contentsMain .image { width:46%; padding-top:10px;}
.tv #contentsMain .image img { display:block; width:100%;}
.tv #contentsMain > p { font-size:17px; line-height:1.8; padding-bottom:30px;text-align:center;}
.tv #contentsMain .download {
	width:90%; max-width:800px; background:#efeff4;
	text-align:center; border-radius:20px;
	padding:20px 5px 25px; margin:0 auto 20px;
	}
	.tv #contentsMain .download h4 { font-size:20px; font-weight:600; color:#333; line-height:1.35;}
	/*btn*/
	.tv #contentsMain .btn { padding-top:10px;}
	.tv #contentsMain .btn li { display:inline-block; width:45%; vertical-align:top; margin:5px 0.6%;}
	.tv #contentsMain .btn li a {
		display:block; width:100%; height:80px;
		font-size:17px; font-weight:bold; color:#fff;
		background:#2d2d2d; border:none;
		line-height:1.35;border-radius:10px;
		position:relative;
	}
	.tv #contentsMain .btn li a span {
		display:block; width:100%;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}

.tv #contentsMain .attn { width:90%; max-width:800px; padding:20px 0; margin:0 auto;}
	.tv #contentsMain .attn li {
		font-size:13px; line-height:1.5;
		text-indent:-1em; padding-left:1em; margin-bottom:5px;
	}
.smooth { -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}


/*＠etc
/////////////////////////////////////////////////////////////////////*/
/*bg*/
.notice, .mailmagazine, .app, .contact.end { background:#2d2d2d;}
/*transition*/
#globalnav .searchbox,
#suggestbox,
#globalfooter .f2 .txtLink ul,
#globalfooter .f2 .tver,
.programlist ul li .picinner,
.search .selectbox label,
.listblock .programlist.normal ul li,
.faq #qa dt { transition:all 0.2s;}

/*＠Overlay
/////////////////////////////////////////////////////////////////////*/
.mfp-bg {
	width:100%; height:100%; background:#000;
	position:fixed; top:0; left:0; z-index:1042; overflow:hidden;
	opacity:0.3;
}
.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.3;}
.mfp-zoom-in.mfp-removing .mfp-container,
.mfp-zoom-in.mfp-removing.mfp-bg { opacity:0;}

/*/////////////listBox/////////////*/
#listBox { width:810px; max-width:90%; background:#fff; text-align:left; margin:40px auto;}
	#listBox h2 {
		font-size:18px; background:#f3f3f3; padding:.95em 40px .75em;
	}
	#listBox .delete {
		display:block; width:100%;
		font-size:18px; text-align:center; color:#fff;
		background:#40b8dc; cursor:pointer;
		padding:1.3em 0 1.2em;
	}
	#listBox .delete.off { color:#e0eff3; background:#7ecee6; cursor:default;}
	#listBox ul { padding:10px 40px 40px;}
	#listBox ul li { display:inline-block; width:240px; vertical-align:top; padding:12px 0 12px 10px;}
	/*input*/
	#listBox input[type=checkbox] {
		display:inline-block; width:20px; height:20px;
		vertical-align:middle; margin-right:6px;
		display:none;
	}
	#listBox input[type=checkbox] + label {
		position:relative; display:inline-block; margin-right:16px;
		font-size:16px; line-height:1.35; cursor:pointer;
		padding:0 0 0 35px;
	}
	#listBox input[type=checkbox] + label::before {
		content:""; display:block; width:26px; height:26px;
		background:#fff; border:2px solid #cdcdd2; border-radius:50%;
		position:absolute; top:-3px; 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:12px; height:5px;
		border-left:2px solid #fff; border-bottom:2px solid #fff;
		position:absolute; top:5px; left:6px;
		-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;}

/*@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);
}


/*@media
/////////////////////////////////////////////////////////////////////*/
@media screen and (max-width:1200px){
	.listblock .programlist.normal ul li { width:23%;}
}
@media screen and (max-width:1100px){
	.video-section .playvideo .inner { padding:0;}
	.video-section .playvideo.cx .inner { padding:20px 20px 0;}
	.video-section div > .inner { padding:0 25px;}
	.vod-section .inner { padding-left:25px;}
	.detail.video .carousel .programlist { padding-left:25px;}
	.bangumi.video .carousel .programlist h2 { padding-left:25px;}
	.bangumi.video .carousel .programlist .listinner { padding-left:25px;}
}
@media screen and (max-width:960px){
	#globalfooter .f2 .txtLink ul { padding:0 20px 20px;}
	.listblock .programlist.normal ul li { width:31.33%;}
	.app #contentsMain .download h2 br { display:block;}
	#globalnav .nav1 li { margin-right:0;}
	#globalnav .nav1 li.m-soon { margin-right:0;}
	#globalheader:not(.fixed) #globalnav .nav1 li a { font-size:13px; padding-top:10px;}
}

@media screen and (max-width:940px){
	.d2 #contents .linkbtn2.fifa { padding:20px 0 40px;}
	.d2 #contents .linkbtn2.fifa a { width:480px; position:relative; top:0; right:0;}
}
@media screen and (max-width:935px){
	#globalnav .nav2-1 li a { width:35px; padding:11px 0 9px; text-indent:110%;}
	#globalnav .nav2-2 li.m-app a { left:360px;}
	#globalnav .searchbox { left:150px;}
	#suggestbox { left:285px;}
	#globalheader:not(.fixed) #oshirasebox { left:110px;}
}
@media screen and (max-width:890px){
	.talent #contents .detail-section .btnarea .mylist p { position:absolute; bottom:-23px; right:0;}
	#globalnav .nav1 li a { font-size:12px;}
}
@media screen and (max-width:880px){
	#globalfooter .f2 .tver { position:relative; top:0; left:0; padding:15px 0 20px;}
	#globalfooter .f2 .tver a { margin:0 auto;}
}
@media screen and (max-width:830px){
	.d2 #contents .btnarea .official a { min-width:150px;}
	.d2 #contents .btnarea .mylist a { min-width:0; padding-left:40px;}
}

/*Tablet*/
.Tablet.contact #contentsMain form .w80 { width:100%;}

.vjs-dock{outline:none;}
.vjs-contextmenu-ui-menu{display:none !important;}


/*fit to screen*/
.large .video-section .playerIn,
.large .vod-section .playerIn,
.large .video-section .player,
.large .vod-section .player{
	-webkit-animation: animation 1000ms linear both;
	animation: animation 1000ms linear both;
}
@-webkit-keyframes animation { 
	0% { -webkit-transform: matrix3d(0.9,0,0,0,0,0.9,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.9,0,0,0,0,0.9,0,0,0,0,1,0,0,0,0,1);}
	1.36% { -webkit-transform: matrix3d(0.911,0,0,0,0,0.941,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.911,0,0,0,0,0.941,0,0,0,0,1,0,0,0,0,1);}
	2.72% { -webkit-transform: matrix3d(0.925,0,0,0,0,0.989,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.925,0,0,0,0,0.989,0,0,0,0,1,0,0,0,0,1);}
	4.08% { -webkit-transform: matrix3d(0.939,0,0,0,0,1.023,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.939,0,0,0,0,1.023,0,0,0,0,1,0,0,0,0,1);}
	4.7% { -webkit-transform: matrix3d(0.945,0,0,0,0,1.03,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.945,0,0,0,0,1.03,0,0,0,0,1,0,0,0,0,1);}
	5.45% { -webkit-transform: matrix3d(0.953,0,0,0,0,1.033,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.953,0,0,0,0,1.033,0,0,0,0,1,0,0,0,0,1);}
	7.01% { -webkit-transform: matrix3d(0.968,0,0,0,0,1.024,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.968,0,0,0,0,1.024,0,0,0,0,1,0,0,0,0,1);}
	8.53% { -webkit-transform: matrix3d(0.981,0,0,0,0,1.007,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.981,0,0,0,0,1.007,0,0,0,0,1,0,0,0,0,1);}
	9.41% { -webkit-transform: matrix3d(0.988,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.988,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1);}
	10.09% { -webkit-transform: matrix3d(0.993,0,0,0,0,0.994,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.993,0,0,0,0,0.994,0,0,0,0,1,0,0,0,0,1);}
	11.61% { -webkit-transform: matrix3d(1.003,0,0,0,0,0.99,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.003,0,0,0,0,0.99,0,0,0,0,1,0,0,0,0,1);}
	14.11% { -webkit-transform: matrix3d(1.014,0,0,0,0,0.996,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.014,0,0,0,0,0.996,0,0,0,0,1,0,0,0,0,1);}
	14.69% { -webkit-transform: matrix3d(1.016,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.016,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1);}
	17.78% { -webkit-transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1);}
	18.72% { -webkit-transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1);}
	23.94% { -webkit-transform: matrix3d(1.016,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.016,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1);}
	24.32% { -webkit-transform: matrix3d(1.015,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.015,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1);}
	29.93% { -webkit-transform: matrix3d(1.005,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.005,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	30.11% { -webkit-transform: matrix3d(1.004,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.004,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	35.54% { -webkit-transform: matrix3d(0.998,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.998,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	36.28% { -webkit-transform: matrix3d(0.997,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.997,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	40% { -webkit-transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	41.04% { -webkit-transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	52.15% { -webkit-transform: matrix3d(0.999,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.999,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	63.26% { -webkit-transform: matrix3d(1.001,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.001,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	85.49% { -webkit-transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	100% { -webkit-transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);} 
}
@keyframes animation { 
	0% { -webkit-transform: matrix3d(0.9,0,0,0,0,0.9,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.9,0,0,0,0,0.9,0,0,0,0,1,0,0,0,0,1);}
	1.36% { -webkit-transform: matrix3d(0.911,0,0,0,0,0.941,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.911,0,0,0,0,0.941,0,0,0,0,1,0,0,0,0,1);}
	2.72% { -webkit-transform: matrix3d(0.925,0,0,0,0,0.989,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.925,0,0,0,0,0.989,0,0,0,0,1,0,0,0,0,1);}
	4.08% { -webkit-transform: matrix3d(0.939,0,0,0,0,1.023,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.939,0,0,0,0,1.023,0,0,0,0,1,0,0,0,0,1);}
	4.7% { -webkit-transform: matrix3d(0.945,0,0,0,0,1.03,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.945,0,0,0,0,1.03,0,0,0,0,1,0,0,0,0,1);}
	5.45% { -webkit-transform: matrix3d(0.953,0,0,0,0,1.033,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.953,0,0,0,0,1.033,0,0,0,0,1,0,0,0,0,1);}
	7.01% { -webkit-transform: matrix3d(0.968,0,0,0,0,1.024,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.968,0,0,0,0,1.024,0,0,0,0,1,0,0,0,0,1);}
	8.53% { -webkit-transform: matrix3d(0.981,0,0,0,0,1.007,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.981,0,0,0,0,1.007,0,0,0,0,1,0,0,0,0,1);}
	9.41% { -webkit-transform: matrix3d(0.988,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.988,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1);}
	10.09% { -webkit-transform: matrix3d(0.993,0,0,0,0,0.994,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.993,0,0,0,0,0.994,0,0,0,0,1,0,0,0,0,1);}
	11.61% { -webkit-transform: matrix3d(1.003,0,0,0,0,0.99,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.003,0,0,0,0,0.99,0,0,0,0,1,0,0,0,0,1);}
	14.11% { -webkit-transform: matrix3d(1.014,0,0,0,0,0.996,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.014,0,0,0,0,0.996,0,0,0,0,1,0,0,0,0,1);}
	14.69% { -webkit-transform: matrix3d(1.016,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.016,0,0,0,0,0.998,0,0,0,0,1,0,0,0,0,1);}
	17.78% { -webkit-transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1);}
	18.72% { -webkit-transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.021,0,0,0,0,1.003,0,0,0,0,1,0,0,0,0,1);}
	23.94% { -webkit-transform: matrix3d(1.016,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.016,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1);}
	24.32% { -webkit-transform: matrix3d(1.015,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.015,0,0,0,0,0.999,0,0,0,0,1,0,0,0,0,1);}
	29.93% { -webkit-transform: matrix3d(1.005,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.005,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	30.11% { -webkit-transform: matrix3d(1.004,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.004,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	35.54% { -webkit-transform: matrix3d(0.998,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.998,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	36.28% { -webkit-transform: matrix3d(0.997,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.997,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	40% { -webkit-transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	41.04% { -webkit-transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.996,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	52.15% { -webkit-transform: matrix3d(0.999,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(0.999,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	63.26% { -webkit-transform: matrix3d(1.001,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1.001,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	85.49% { -webkit-transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);}
	100% { -webkit-transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1); transform: matrix3d(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1);} 
}

/*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:610px; height:480px;
		box-shadow:0 0 20px 10px 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:50px; height:50px;
		background:url(../img/fifaworldcup2018/close.png) no-repeat;
		background-size:cover;
		position:absolute; top:-25px; right:-25px;
	}

/*sp2018bnr*/
.sp2018bnr {text-align:center;background:transparent;position:relative;top:-30px;padding:5px 0;}
.sp2018bnr a { display:block;margin:0 auto;}
.sp2018bnr a img { display:block;margin:0 auto;width:800px;}

/*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:610px;height:590px;
	position:absolute; top:50%; left:50%;
	transform:translateY(-50%) translateX(-50%);
	-webkit-transform:translateY(-50%) translateX(-50%);
}
#ADoverlay .ad{
	width:610px;height:480px;overflow:hidden;
	box-shadow:0 0 30px 10px rgba(0, 0, 0, 0.1);
}
	#ADoverlay .ad img{width:610px;height:480px;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:500px;
}
#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: 10px;
	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);
	}
}

#ADoverlay::selection,
#ADoverlay .adbg::selection,
#ADoverlay .adin::selection,
#ADoverlay .ad::selection,
#ADoverlay .link::selection,
#ADoverlay .link a::selection,
#ADoverlay .close a::selection {
	background:rgba(0,0,0,0);
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-box-shadow: none;
	box-shadow: none;
	outline: none;
	-moz-user-select: none;
	-ms-user-select: none;
	-khtml-user-select: none;
	-webkit-user-select: none;
	user-select: none;
}


/*TOKYO2020*/
.gorinjp.d2 { min-width:1100px;}
.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:150%; white-space:nowrap; overflow:hidden;
}
.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 {display:table; width:1060px;margin:0 auto;}
.gorinjp.d2 .playerbinder .left {display:table-cell; width:745px;vertical-align:top;}
.gorinjp.d2 .playerbinder .right {display:table-cell; width:315px;vertical-align:top;text-align:right;}
.gorinjp.d2 .playerbinder .ADbanner {padding-top:20px;width:300px;margin-left:auto;}
.gorinjp.d2 .playerbinder .omega {padding-top:40px;width:300px;margin-left:auto;text-align:center;}
.gorinjp.d2 #enlarge{display:none;}
.gorinjp.d2 .video-section .playvideo .inner { padding:20px 0;}
.gorinjp.d2 .video-section .title { padding-top:0;}
.gorinjp.d2 .video-section .title .inner,
.gorinjp.d2 .video-section .btnarea .inner,
.gorinjp.d2 .vod-section .inner { padding:0;}

/*PC mode*/
#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:calc( 100vh / 2 );
	left:50%;
	margin-left:-40%;
	top: 50vh;
	margin-top:calc( 100vh / 4 *-1 );
	padding:30px;
}
#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.6em;
	border-radius:4px;
	margin:15px auto 0;
	width:calc( 100% - 60px );
	cursor:pointer;
	position:absolute;
	bottom:30px;
}

/**/

/*companion ad*/
#companionDiv > a{position:absolute;top:0;}

/*Emergency*/
#emergency .topmessage{ 
	display:table; width:100%; table-layout:fixed;
	background:#d7eaf0; color:#475154; 
	border-top:solid 1px #c6cfd2;
}
#emergency .topmessage h3{ 
	display:table-cell;
	text-align:left;
	vertical-align:middle;
	font-size:14px;
	font-weight:600;
	width:40px;
	color:#40b8dc;
	background:url(../img/em.png) 12px center no-repeat;
	background-size:auto 20px;
	padding-left:35px;
	text-indent:110%; white-space:nowrap; overflow:hidden;
}
#emergency .topmessage ul{ display:table-cell;padding:3px 0 1px; }
#emergency .topmessage li { 
	font-size:14px;margin:0 4px 3px 0;line-height:1.4;
	background:#f0fcff;
	border-radius:5px;
	padding:5px 10px;
}
#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:100;}
#emergency .topmodal div {
	background:#fff;
	width:300px;
	border-radius:10px;
	position:relative; left:50%;top:calc(50vh);
	margin-left:-150px;
	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;}


/*@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 .headings { border-bottom:1px solid #dcdcdc;}
	.live .headings .inner { padding:45px 30px 0;}
	.live .headings h2,
	.live .headings .date,
	.live .headings .date dt,
	.live .headings .date dd { display:inline-block; vertical-align:bottom;}
	.live .headings h2 { font-size:24px; padding-bottom:12px;}
	.live .headings .date { padding-left:45px;}
	.live .headings .date dt { font-size:16px; padding:0 10px 15px;}
	.live .headings .date dd { font-size:22px; color:#40b8dc; padding:0 10px;}
	.live .headings .date dd span { font-size:10px; padding-left:2px;}
	.live .headings .date dd a { display:block; height:35px; color:#40b8dc; padding:0 2px;}
	.live .headings .date dd a:not([href]) { color:#8ce;}
	.live .headings .date dd.this a { border-bottom:4px solid #40b8dc;}
.live .headings .sort { display:none;}

#live-channel { padding:20px 30px 40px;}
	#live-channel .inner { display:table; width:100%; table-layout:fixed;}
	#live-channel .tv {
		display:table-cell; vertical-align:top;
		background:#f3f3f3; border:7px solid #fff;
		padding-bottom:40px;
	}
	#live-channel h3 {
		height:60px; text-align:center;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		background:#fff; position:relative;
	}
	#live-channel h3:before {
		content:""; display:block; width:100px; height:40px;
		background:url(../img/parts_logo.png) no-repeat;
		background-size:432px auto;
		position:absolute; top:50%; left:50%;
		-webkit-transform:translate(-50%, -50%);
		transform:translate(-50%, -50%);
	}
	#live-channel .ntv h3:before { background-position:-319px 0;}
	#live-channel .ex h3:before { background-position:-319px -40px;}
	#live-channel .tbs h3:before { background-position:-319px -81px;}
	#live-channel .tx h3:before { background-position:-319px -121px;}
	#live-channel .cx h3:before { background-position:-319px -162px;}
	
	#live-channel .item { box-shadow:0 3px 5px 0 rgba(0, 0, 0, 0.05);}
	#live-channel .item + .item { margin-top:20px;}
	#live-channel .item a { display:block; width:100%;}
	#live-channel .item a:hover { opacity:0.7;}
	/*title*/
	#live-channel .item .title {
		min-height:170px; color:#222; line-height:1.35;
		background:#fff; padding:10px 12px 40px;
		position:relative;
	}
	#live-channel .item .time { font-size:13px; padding-bottom:1px;}
	#live-channel .item .name { height:100px; font-size:19px; overflow:hidden;}
	#live-channel .item .name span { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4;}
	#live-channel .item .status { font-size:14px; color:#40b8dc; position:absolute; bottom:12px; right:12px;}
	#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;}
	#live-channel .short .pic { display:none;}
	#live-channel .short .title { min-height:100px;}
	#live-channel .short .name { height:50px;}
	#live-channel .short .name span { -webkit-line-clamp:2;}
	/*pic*/
	#live-channel .item .pic { width:100%; height:0; padding-top:56.25%; position:relative;}
	#live-channel .item .picbg { display:none;}
	#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:5px; background:rgba(255, 255, 255, 0.6);
		position:absolute; bottom:0; left:0;
	}
	#live-channel .item .progress .bar {
		height:5px; background:#41f6ff;
		position:absolute; top:0; left:0;
	}
#live-channel dd .btn { display:none;}

/*banner-carousel*/
.banner-carousel { margin:-10px 0 45px; position:relative;}
.banner-slider { width:800px; 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:50px; height:50px;
	position:absolute; top:50%; left:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
	cursor:pointer;
	}
	.banner-arrows .slick-arrow.prev { margin-left:-430px;}
	.banner-arrows .slick-arrow.next { margin-left:427px;}
	.banner-arrows .slick-arrow:before {
		content:""; display:block; width:15px; height:15px;
		position:absolute; top:50%; margin-top:-7.5px;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
	.banner-arrows .slick-arrow.prev:before {
		border-bottom:3px solid #40b8dc;
		border-left:3px solid #40b8dc; left:23px;
	}
	.banner-arrows .slick-arrow.next:before {
		border-top:3px solid #40b8dc;
		border-right:3px solid #40b8dc; left:12px;
	}

.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:20px; position:relative;}
.subtitles:before {
	content:""; display:inline-block; width:17px; height:15px;
	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:18px;}
.carousel .programlist.mylist .subtitles:before {
	width:16px; height:14px;
	background-image:url(../img/subtitles_white_negative.png);
}
.carousel .programlist.recommend .subtitles { padding-left:22px;}
.carousel .programlist.recommend .subtitles:before {
	width:18px; height:16px;
	background-image:url(../img/subtitles_white_positive.png);
}

.video-section .subtitles:before { background-image:url(../img/subtitles_white_positive.png);}
.video-section .title .subtitles,
.detail-section .title .subtitles { padding-left:0;}
.video-section .title .subtitles:before,
.detail-section .title .subtitles:before {
	width:22px; height:20px;
	position:relative; top:0; left:0;
	-webkit-transform:translateY(0);
	transform:translateY(0);
	vertical-align:middle; margin:-4px 5px 0 0;
}

/*@add202008
//////////////////////////////////////////////////////////////////*/
.simul #container,
.simul #contents { overflow:visible;}
.simul-block .inner { width:96%; max-width:1400px; margin:0 auto; position:relative;}
.simul-block .headings {
		width:100%; background:#f2f2f2;
		position:sticky; top:0; left:0; z-index:99;
		transition:all 0.2s;
	}
	.simul-block .headings.on { top:52px;}
	.simul-block .headings .inner { padding:3.3em 1.23%;}
	.simul-block .headings h2 { font-size:24px; transition:all 0.2s;}
	.simul-block .headings .tv {
		width:90px; height:50px;
		background:#fff; border-radius:5px; border:1px solid #e5e5e5;
		text-indent:110%; white-space:nowrap; overflow:hidden;
		position:absolute; top:50%; left:1.23%;
		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%;
		transform:translate(-50%, -50%);
	}
	.simul-block .headings.js-is-sticky .tv + h2,
	.simul-main .simul-block:nth-child(1) .headings .tv + h2 { padding-left:115px;}
	.simul-block .headings.js-is-sticky .tv,
	.simul-main .simul-block:nth-child(1) .headings .tv { opacity:1; visibility:visible;}

.simul-list { font-size:0; padding-top:50px; margin-bottom:50px;}
	.simul-list li {
		display:inline-block; width:22.5%; vertical-align:top;
		padding-top:22px; margin:0 1.23% 50px; position:relative;
	}
	.simul-list li.na:before {
		content:""; display:block;
		width:100%; height:0;
		padding-top:calc(9 / 16 * 100%);
		background:#f7f7f7;
	}
	.simul-list li a { display:block; width:100%; height:100%;}
	/*pic*/
	.simul-list li .pic {
		width:100%; height:0;
		padding-top:calc(9 / 16 * 100%);
		position:relative;
		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:14px; position:absolute; top:0; left:0;}
	.simul-list li .time strong { font-size:15px;}
	.simul-list li .progtitle {
		font-size:18px; line-height:1.35;
		max-height:calc(1.35em * 2);
		display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2;
		margin:10px 0; position:relative; overflow:hidden;
	}
	/*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:25%; height:0; padding-top:25%;
		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 a:before {
		content:""; display:block;
		width:108%; height:112%;
		background:#e9feff; border:1px solid #e5e5e5;
		box-sizing:border-box;
		box-shadow:0 15px 25px 0 rgba(0, 0, 0, 0.08);
		position:absolute; top:-6%; left:-4%;
	}
	.simul-list #icon-live {
		width:100%; height:100%;
		position:absolute; top:0; left:0;
		z-index:2;
	}
	/*progressbar*/
	.simul-list .progress {
		width:100%; height:4px; background:rgba(255, 255, 255, 0.6);
		position:absolute; bottom:0; left:50%; z-index:3;
		margin-left:-50%;
	}
	.simul-list .progress .bar {
		height:4px; background:#41f6ff;
		position:absolute; top:0; left:0;
	}
	/*hover*/
	.simul-list li a:hover .pic { opacity:0.8;}
	.simul-list li a:hover .play { opacity:1;}
	.simul-list li a:hover .play:before { opacity:0.2;}
