﻿/* ===========================================
	TBS v9 Di2 CSS
=========================================== */

@media all and (min-width: 992px) {
div.tbsv9_banner_responsive {
	margin-bottom:80px;
}
}
@media all and (max-width: 991.98px) {
div.tbsv9_banner_responsive {
	margin-bottom:40px;
}
}

/*	.unit
============================== */

.col-mon {
	background-color:#ffbe50;
}
.col-tue {
	background-color:#ff91a0;
}
.col-wed {
	background-color:#5a96ff;
}
.col-thu {
	background-color:#32c83c;
}
.col-fri {
	background-color:#ffaa1e;
}
.col-sat {
	background-color:#3278ff;
}
.col-sun {
	background-color:#ff6450;
}
.col-other {
	background-color:#81899C;
}
.col-light {
	background-color:#EBEBF5;
}
.col-dark {
	background-color:#33363B;
}
main > div.unit > article {
	color:#fafafa;
	text-align:left;
}
div.wrap > div.unit > div {
	text-align:left;
}
main > div.unit > article > header {
	display:flex;
	align-items:center;
	justify-content:space-between;
}
main > div.unit > article > header h2 {
	letter-spacing:0.1em;
}
main > div.unit.sports-portal > article > header h2 {
	letter-spacing:0;
}
@media all and (min-width: 1200px) {
main > .unit > article,
div.wrap > div.unit > div {
	max-width:1200px;
	margin:0 auto;
}
}
@media all and (min-width: 992px) {
main > div.unit,
div.wrap > div.unit {
	padding-bottom:176px;
	margin-bottom:-80px;
}
main > div.unit > article > header {
	margin-bottom:32px;
}
main > div.unit > article > header h2 {
	font-size:250%;
}
}
@media all and (max-width: 991.98px) {
main > div.unit,
div.wrap > div.unit {
	padding-bottom:112px;
	margin-bottom:-56px;
}
main > div.unit > article,
div.wrap > div.unit > div {
	padding:0 5.3333333333vw;
}
main > div.unit > article > header {
	margin-bottom:20px;
}
main > div.unit > article > header h2 {
	font-size:5vw;
}
}
@media all and (max-width: 575.98px) {
main > div.unit > article > header h2 {
	font-size:6.4vw;
}
}
div.wrap > div.obibangumi {
	padding-top:0;
	padding-bottom:0;
	margin-bottom:0;
}


/*	nav.di2-category
============================== */
nav.di2-category ul,
nav.di2-archives ul {
	display:flex;
}
nav.di2-category ul li a,
nav.di2-archives ul li a {
	display:flex;
	justify-content:center;
	align-items:center;
	font-weight:700;
	color:#2a2b2e;
	background-color:#fff;
	text-decoration:none;
	line-height:1.5;
}
nav.di2-category ul li a.tab-on,
nav.di2-archives ul li a.tab-on {
	color:#fff;
	background-color:#0050ff;
}
@media all and (min-width: 1200px) {
nav.di2-category {
	max-width:1200px;
	margin:0 auto;
}
}
@media all and (min-width: 992px) {
nav.di2-category {
	margin-bottom:24px;
}
.drama nav.di2-category,
nav.di2-archives {
	margin-bottom:48px;
}
nav.di2-category ul li {
	width:calc((100% - 8*3px)/4);
}
nav.di2-archives ul li {
	width:calc((100% - 8*4px)/5);
}
.drama nav.di2-category ul li {
	width:calc((100% - 20px)/2);
}
.variety nav.di2-category ul li,
.news-info nav.di2-category ul li {
	width:calc((100% - 2*8px)/3);
}
nav.di2-category ul li:not(:last-child),
nav.di2-archives ul li:not(:last-child) {
	margin-right:8px;
}
nav.di2-category ul li a,
nav.di2-archives ul li a {
	font-size:112.5%;
	height:56px;
	border-radius:4px;
	box-shadow:2px 4px 6px hsla(0,0%,0%,.1);
}
}
@media all and (max-width: 991.98px) {
nav.di2-category {
	margin:0 5.3333333333% 12px;
}
.drama nav.di2-category,
nav.di2-archives {
	margin-bottom:24px;
}
nav.di2-category ul li {
	width:calc((100% - 5*3px)/4);
}
nav.di2-archives ul li {
	width:calc((100% - 5*4px)/5);
}
nav.di2-category ul li:not(:last-child),
nav.di2-archives ul li:not(:last-child) {
	margin-right:5px;
}
.drama nav.di2-category ul li {
	width:calc((100% - 10px)/2);
}
.variety nav.di2-category ul li,
.news-info nav.di2-category ul li {
	width:calc((100% - 2*5px)/3);
}
nav.di2-category ul li a,
nav.di2-archives ul li a {
	font-size:87.5%;
	height:40px;
	border-radius:2px;
	box-shadow:2px 2px 2px hsla(0,0%,0%,.1);
}
.sports nav.di2-category ul li a {
	font-size:83%;
}
}



/*	section.programs
============================== */
section.programs {
	display:none;
}
section.programs.box-on {
	display:block;
}


/*	div.box
============================== */
section.programs div.box,
div.programs {
	text-align:left;
}
section.programs div.wrap div.unit > div > h3 {
	display:flex;
	justify-content:center;
	align-items:center;
}
section.programs div.wrap div.obibangumi > div > h3 {
	color:#fff;
	background-color:#81899C;
}
section.programs div.wrap div.col-other > div > h3 {
	color:#81899C;
	background-color:#EBEBF5;
}
section.programs div.wrap div.col-mon > div > h3,
section.programs div.wrap div.col-tue > div > h3,
section.programs div.wrap div.col-wed > div > h3,
section.programs div.wrap div.col-thu > div > h3,
section.programs div.wrap div.col-fri > div > h3,
section.programs div.wrap div.col-sat > div > h3,
section.programs div.wrap div.col-sun > div > h3 {
	background-color:#fff;
}
section.programs div.wrap div.col-mon > div > h3 {
	color:#ffbe50;
}
section.programs div.wrap div.col-tue > div > h3 {
	color:#ff91a0;
}
section.programs div.wrap div.col-wed > div > h3 {
	color:#5a96ff;
}
section.programs div.wrap div.col-thu > div > h3 {
	color:#32c83c;
}
section.programs div.wrap div.col-fri > div > h3 {
	color:#ffaa1e;
}
section.programs div.wrap div.col-sat > div > h3 {
	color:#3278ff;
}
section.programs div.wrap div.col-sun > div > h3 {
	color:#ff6450;
}
section.programs div.box ul,
div.programs > ul {
	display:flex;
	flex-wrap:wrap;
}
section.programs div.box ul li a,
section.programs div.box ul li a span,
section.programs div.box ul li a cite,
div.programs > ul li a,
div.programs > ul li a span,
div.programs > ul li a cite {
	display:block;
}
section.programs div.box ul li a,
div.programs > ul li a {
	text-decoration:none;
}
.variety section.programs div.box ul li,
.news-info section.programs div.box ul li,
.drama section.programs div.box ul li a span.img.lazy-done,
.drama div.programs ul li a span.img.lazy-done,
.sports section.programs div.box ul li a span.img.lazy-done {
	box-shadow:4px 4px 10px hsla(0,0%,0%,.1);
}
.variety section.programs div.box ul li,
.news-info section.programs div.box ul li {
	background-color:#fff;
	overflow:hidden;
}
section.programs div.box ul li a span.img,
div.programs > ul li a span.img {
	position:relative;
	height:0;
	padding-top: -webkit-calc(9 / 16 * 100%);
	padding-top: calc(9 / 16 * 100%);
	background-size:cover;
	margin-bottom:12px;
}
section.programs div.box ul li a span.img.lazy-done,
div.programs > ul li a span.img.lazy-done {
	-webkit-animation: tbsv9FadeIn 800ms;
	animation: tbsv9FadeIn 800ms;
}
section.programs div.box ul li a span img,
div.programs > ul li a span img {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
section#variety_yotei div.box ul li a span.img,
section#news-info_yotei div.box ul li a span.img {
	display:none;
}
section.programs div.box ul li a span.txtarea,
div.programs > ul li a span.txtarea {
	line-height:1.5;
}
.variety section.programs div.box ul li a span.txtarea,
.news-info section.programs div.box ul li a span.txtarea {
	padding:0 12px 12px;
}
section#variety_yotei div.box ul li a span.txtarea,
section#news-info_yotei div.box ul li a span.txtarea {
	padding:0.75em 1em;
}
section#sports_osusume.programs div.box ul li a span.img {
	margin-bottom:0;
}
#sports_osusume div.box ul li a span.txtarea {
	display:none;
}
section.programs div.box ul li a cite,
div.programs > ul li a cite {
	color:#3B3F4A;
	display:block;
	font-weight:700;
	font-style:normal;
	margin-bottom:0.25em;
}
section.programs div.box ul li a span.oa,
div.programs > ul li a span.oa {
	color:#81899C;
}
@media all and (min-width: 1200px) {
section.programs > div.box,
div.programs {
	max-width:1200px;
	margin:0 auto;
}
}
@media all and (min-width: 992px) {
section.programs div.wrap div.obibangumi > div,
section.programs > div.box,
div.programs {
	margin-bottom:96px;
}
section.programs div.wrap div.unit > div {
	display:flex;
	justify-content:space-between;
}
section.programs div.wrap div.col-mon > div,
section.programs div.wrap div.col-tue > div,
section.programs div.wrap div.col-wed > div,
section.programs div.wrap div.col-thu > div,
section.programs div.wrap div.col-fri > div,
section.programs div.wrap div.col-sat > div,
section.programs div.wrap div.col-sun > div {
	align-items:center;
}
section.programs div.wrap div.unit > div > div.box {
	width:calc(100% - 113px);
}
section.programs div.wrap div.unit > div > h3 {
	font-size:150%;
}
section.programs div.wrap div.obibangumi > div > h3,
section.programs div.wrap div.col-other > div > h3 {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	width:72px;
	border-radius:4px;
	letter-spacing:0.25em;
}
section.programs div.wrap div.col-mon > div > h3,
section.programs div.wrap div.col-tue > div > h3,
section.programs div.wrap div.col-wed > div > h3,
section.programs div.wrap div.col-thu > div > h3,
section.programs div.wrap div.col-fri > div > h3,
section.programs div.wrap div.col-sat > div > h3,
section.programs div.wrap div.col-sun > div > h3 {
	display:flex;
	width:72px;
	height:72px;
	border-radius:36px;
}
section.programs div.box ul,
div.programs > ul {
	gap:20px;
}
section.programs div.box ul li,
div.programs > ul li {
	width:calc((100% - 20*2px)/3);
}
.variety section.programs div.box ul li,
.news-info section.programs div.box ul li,
.drama section.programs div.box ul li a span.img,
.drama div.programs > ul li a span.img,
.sports section.programs div.box ul li a span.img {
	border-radius:10px;
}
section.programs div.box ul li a cite,
div.programs > ul li a cite {
	font-size:112.5%;
}
section.programs div.box ul li a span.oa,
div.programs > ul li a span.oa {
	font-size:83%;
}
}
@media all and (max-width: 991.98px) {
section.programs div.box,
div.programs {
	margin-bottom:64px;
}
section.programs > div.box,
div.programs {
	padding:0 5.3333333333vw;
}
section.programs div.box:not(:last-child) {
	margin-bottom:28px;
}
section.programs div.wrap div.unit > div {
	text-align:center;
}
section.programs div.wrap div.unit > div > h3 {
	font-size:125%;
	margin-bottom:24px;
}
section.programs div.wrap div.obibangumi > div > h3,
section.programs div.wrap div.col-other > div > h3 {
	border-radius:2px;
	height:40px;
}
section.programs div.wrap div.col-mon > div > h3,
section.programs div.wrap div.col-tue > div > h3,
section.programs div.wrap div.col-wed > div > h3,
section.programs div.wrap div.col-thu > div > h3,
section.programs div.wrap div.col-fri > div > h3,
section.programs div.wrap div.col-sat > div > h3,
section.programs div.wrap div.col-sun > div > h3 {
	display:inline-flex;
	width:64px;
	height:64px;
	border-radius:32px;
}
section.programs div.box ul,
div.programs > ul {
	gap:15px;
}
/*
.drama section.programs div.box ul,
.drama div.programs > ul {
	flex-wrap:no-wrap;
	gap:0;
} */
section.programs div.box ul li,
div.programs > ul li {
	width:calc((100% - 15px)/2);
}
/*
.drama section.programs div.box ul li,
.drama div.programs > ul li {
	width:100%;
}
.drama section.programs div.box ul li:not(:last-child),
.drama div.programs > ul li:not(:last-child) {
	margin-bottom:40px;
} */
.variety section.programs div.box ul li,
.news-info section.programs div.box ul li,
.drama section.programs div.box ul li a span.img,
.drama div.programs > ul li a span.img,
.sports section.programs div.box ul li a span.img {
	border-radius:5px;
}
section.programs div.box ul li a cite,
div.programs > ul li a cite {
	font-size:83%;
}
section.programs div.box ul li a span.oa,
div.programs > ul li a span.oa {
	font-size:75%;
}
}
@media all and (max-width: 575.98px) {
section.programs div.box ul {
	gap:10px;
}
}
section.programs div.wrap div.unit:not(.obibangumi) div.box {
	margin-bottom:0;
}



/*	.days
============================== */
nav.days ul {
	display:flex;
}
nav.days ul li a {
	display:flex;
	justify-content:center;
	align-items:center;
	font-weight:700;
	background-color:#fff;
	text-decoration:none;
	line-height:1.5;
}
nav.days ul li.monday a {
	color:#ffbe50;
}
nav.days ul li.tuesday a {
	color:#ff91a0;
}
nav.days ul li.wednesday a {
	color:#5a96ff;
}
nav.days ul li.thursday a {
	color:#32c83c;
}
nav.days ul li.friday a {
	color:#ffaa1e;
}
nav.days ul li.saturday a {
	color:#3278ff;
}
nav.days ul li.sunday a {
	color:#ff6450;
}
nav.days ul li.all a {
	color:#0050ff;
}
nav#all ul li.all a,
nav#monday ul li.monday a,
nav#tuesday ul li.tuesday a,
nav#wednesday ul li.wednesday a,
nav#thursday ul li.thursday a,
nav#friday ul li.friday a,
nav#saturday ul li.saturday a,
nav#sunday ul li.sunday a {
	color:#fff;
}
nav#all ul li.all a {
	background-color:#0050ff;
}
nav#monday ul li.monday a {
	background-color:#ffbe50;
}
nav#tuesday ul li.tuesday a {
	background-color:#ff91a0;
}
nav#wednesday ul li.wednesday a {
	background-color:#5a96ff;
}
nav#thursday ul li.thursday a {
	background-color:#32c83c;
}
nav#friday ul li.friday a {
	background-color:#ffaa1e;
}
nav#saturday ul li.saturday a {
	background-color:#3278ff;
}
nav#sunday ul li.sunday a {
	background-color:#ff6450;
}
@media all and (min-width: 1200px) {
nav.days {
	max-width:1200px;
	margin:0 auto;
}
}
@media all and (min-width: 992px) {
nav.days {
	margin-bottom:48px;
}
nav.days ul li {
	width:calc((100% - 8*7px)/8);
}
nav.days ul li:not(:last-child) {
	margin-right:8px;
}
nav.days ul li a {
	font-size:112.5%;
	height:48px;
	border-radius:24px;
	box-shadow:2px 4px 6px hsla(0,0%,0%,.1);
}
}
@media all and (max-width: 991.98px) {
nav.days {
	margin:0 5.3333333333% 32px;
}
nav.days ul li {
	width:calc((100% - 7*7px)/8);
}
nav.days ul li:not(:last-child) {
	margin-right:7px;
}
nav.days ul li a {
	font-size:83%;
	height:36px;
	border-radius:50%;
	box-shadow:2px 2px 2px hsla(0,0%,0%,.1);
}
}













/*	nav.di2-category
============================== */
nav.di2-category ul,
nav.di2-archives ul {
	display:flex;
}
nav.di2-category ul li a,
nav.di2-archives ul li a {
	display:flex;
	justify-content:center;
	align-items:center;
	font-weight:700;
	color:#2a2b2e;
	background-color:#fff;
	text-decoration:none;
	line-height:1.5;
}
nav.di2-category ul li a.tab-on,
nav.di2-archives ul li a.tab-on {
	color:#fff;
	background-color:#0050ff;
}
@media all and (min-width: 1200px) {
nav.di2-category {
	max-width:1200px;
	margin:0 auto;
}
}
@media all and (min-width: 992px) {
nav.di2-category {
	margin-bottom:24px;
}
.drama nav.di2-category,
nav.di2-archives {
	margin-bottom:48px;
}
nav.di2-category ul li {
	width:calc((100% - 8*3px)/4);
}
nav.di2-archives ul li {
	width:calc((100% - 8*4px)/5);
}
nav.di2-category ul li:not(:last-child),
nav.di2-archives ul li:not(:last-child) {
	margin-right:8px;
}
nav.di2-category ul li a,
nav.di2-archives ul li a {
	font-size:112.5%;
	height:56px;
	border-radius:4px;
	box-shadow:2px 4px 6px hsla(0,0%,0%,.1);
}
}
@media all and (max-width: 991.98px) {
nav.di2-category {
	margin:0 5.3333333333% 12px;
}
nav.di2-category ul li {
	width:calc((100% - 5*3px)/4);
}
nav.di2-archives ul li {
	width:calc((100% - 5*4px)/5);
}
nav.di2-category ul li:not(:last-child),
nav.di2-archives ul li:not(:last-child) {
	margin-right:5px;
}
nav.di2-category ul li a,
nav.di2-archives ul li a {
	font-size:87.5%;
	height:40px;
	border-radius:2px;
	box-shadow:2px 2px 2px hsla(0,0%,0%,.1);
}
.sports nav.di2-category ul li a {
	font-size:83%;
}
}



/*	.di2-archives-box
============================== */

/* section.di2-archives-box {
	min-height:100vh;
}
section.di2-archives-box.loaded {
	min-height:auto;
} */
section.di2-archives-box > h2 {
	display:flex;
	justify-content:center;
	align-items:center;
	color:#fff;
	background-color:#0050ff;
}
section.di2-archives-box > h3 {
	line-height:1.5;
	margin-bottom:1em;
}
div.boxbn ul {
	display:flex;
	flex-wrap:wrap;
}
div.boxbn ul li {
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	padding:0.5em 0.75em;
	line-height:1.5;
	background-color:#fff;
}
div.boxbn ul li a {
	display:block;
	font-weight:700;
	text-decoration:none;
}
div.boxbn ul li a cite {
	color:#3B3F4A;
	display:block;
	font-style:normal;
}
div.boxbn ul li a:not(:last-child) {
	margin-bottom:0.2em;
}
div.boxbn ul li > span {
	color:#81899C;
}
@media all and (min-width: 992px) {
section.di2-archives-box {
	margin-bottom:48px;
}
section.di2-archives-box > h2 {
	font-size:150%;
	height:56px;
	border-radius:5px;
	margin-bottom:24px;
}
section.di2-archives-box > h3 {
	font-size:150%;
}
div.boxbn:not(:last-child) {
	margin-bottom:56px;
}
div.boxbn ul {
	gap:20px;
}
div.boxbn ul li {
	width:calc((100% - 20*3px)/4);
	border-radius:10px;
}
div.boxbn ul li a cite {
	font-size:112.5%;
}
div.boxbn ul li > span {
	font-size:83%;
}
}
@media all and (max-width: 991.98px) {
section.di2-archives-box {
	margin-bottom:24px;
}
section.di2-archives-box > h2 {
	font-size:112.5%;
	height:44px;
	border-radius:3px;
	margin-bottom:12px;
}
section.di2-archives-box > h3 {
	font-size:112.5%;
}
div.boxbn:not(:last-child) {
	margin-bottom:28px;
}
div.boxbn ul {
	gap:15px;
}
div.boxbn ul li {
	width:calc((100% - 15px)/2);
	border-radius:5px;
}
div.boxbn ul li a cite {
	font-size:83%;
}
div.boxbn ul li > span {
	font-size:62.5%;
}
}
@media all and (max-width: 575.98px) {
div.boxbn ul {
	gap:10px;
}
}

/*	div.bnr
============================== */
div.bnr a, div.bnr span {
	display:block;
}
div.bnr a {
	text-decoration:none;
	background-size:cover;
	position:relative;
	height:0;
	padding-top: -webkit-calc(75 / 800 * 100%);
	padding-top: calc(75 / 800 * 100%);
}
body.sports div.bnr a {
	padding-top: -webkit-calc(250 / 1000 * 100%);
	padding-top: calc(250 / 1000 * 100%);
}
div.bnr a span {
	text-indent:110%;white-space:nowrap;overflow:hidden;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}
@media all and (min-width: 992px) {
div.bnr {
	width:800px;
	margin:0 auto 96px;
}
}
@media all and (max-width: 991.98px) {
div.bnr {
	margin:0 5.3333333333vw 64px;
}
}