@charset "UTF-8";
/*
 main.css
 本サイト用共通CSS（記事ページにも読み込まれる）

 主に「.d-*」など、番組のみに使用するクラスを記述するCSS
 ※「.drama-*」などの色を変更したい場合は「style.css」に記述
*/



/* d-contents
========================================== */
.d-contentsWrap {
	width: 100%;
}
.d-main {
	width: 100%;
	color: #141414;
}


/* utility - color
------------------------------ */
.d-main .fc-pink { color: #fe7ba7; }
.d-main .fc-dpink { color: #e4007f; }
.d-main .fc-yellow { color: #f9f91d; }
.d-main .fc-green { color: #33f3d1; }
.d-main .fc-aqua { color: #019ec0; }
.d-main .fc-daqua { color: #0484a0; }


/* utility - layout
------------------------------ */
.d-main .l-center { text-align: center; }
.d-main .l-right { text-align: right; }
.d-main .l-left { text-align-last: left; }



/* img
========================================== */
.d-contentsWrap [class*="-img"] img {
	display: block;
	width: 100%;
}



/* d-btn
========================================== */
.d-btn {
	display: block;
	width: 44%;
	margin: 0 auto;
	padding: 17px;
	background-color: #fff;
	border: 1px solid #141414;
	border-radius: 5px;
	color: #141414;
	font-size: 2.2rem;
	font-weight: normal;
	text-align: center;
	word-break: break-all;
	position: relative;
}
.d-btn:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 10px;
	border-color: transparent transparent transparent #141414;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	z-index: 30;
}



/* d-mainV（第2階層用ヘッダー　記事ページ含む）
========================================== */
.d-mainV-area {
	width: 100%;

}
.d-mainV-area a { display: block; }
.d-mainV-inner {
	width: 100%;
	margin: 0 auto;
}

.d-mainV-img a{
	width: 100%;
	padding-top: calc(240 / 1500 * 100%);
	background-image: url(../images/common/mainv-2nd-pc.png);
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}



/* d-nav
========================================== */
.d-nav-area {
	width: 100%;
	background-color: #019ec0;
	position: relative;
}
.d-nav-inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
.d-nav-inner:before,
.d-nav-inner:after {
	content: '';
	display: block;
	width: 5px;
	height: 60%;
	background-image: url(../images/common/d-nav-icon-dot-pc-v.png);
	background-repeat: no-repeat;
	background-position: center;
	background-color: transparent;
	background-size: contain;
	position: absolute;
	top: 20%;
}
.d-nav-inner:before { left: -2px; }
.d-nav-inner:after { right: -2px; }

/* d-nav-list
------------------------------ */
.d-nav-list {
	width: 100%;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}
.d-nav-item {
	display: inline-block;
	width: 12.5%;
	vertical-align: top;
	position: relative;
}
.d-nav-item:not(:first-child) {
}
.d-nav-item:not(:first-child):after {
	content: '';
	display: block;
	width: 5px;
	height: 60%;
	background: url(../images/common/d-nav-icon-dot-pc-v.png) no-repeat center transparent;
	background-size: contain;
	position: absolute;
	top: 20%;
	left: -2px;
}
.d-nav-item a {
	display: block;
	width: 100%;
	padding-top: 100%;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	position: relative;
	overflow: hidden;
}

/* d-nav - status */
.d-nav-item.is-new {}
.d-nav-item.is-new:before {
	content: '';
	display: block;
	width: 27.5%;
	height: 27.5%;
	background: url(../images/common/d-nav-icon-new.png) no-repeat center; /* NEWマーク　左上固定の場合は left top */
	background-size: contain;
	position: absolute;
	top: -10%;
	right: -3%;
	z-index: 30;
}
.d-nav-item.is-coming {}
.d-nav-item.is-coming a {
	opacity: 1;
	pointer-events: none;
}
.d-nav-item.is-disabled a {
	opacity: 0.6;
	pointer-events: none;
}
.d-nav-item.is-blank {}
.d-nav-item.is-blank:before {
	content: '';
	display: block;
	width: 13px;
	height: 10px;
	background: url(../images/common/d-nav-icon-blank.png) no-repeat center;
	background-size: contain;
	position: absolute;
	bottom: 20%;
	right: 8%;
	z-index: 30;
}

/* d-nav - contents */
.d-nav-item.intro a { background-image: url(../images/common/d-nav-intro.png); }
.d-nav-item.story a { background-image: url(../images/common/d-nav-story.png); }
.d-nav-item.cast a { background-image: url(../images/common/d-nav-cast.png); }
.d-nav-item.staff a { background-image: url(../images/common/d-nav-staff.png); }
.d-nav-item.topics a { background-image: url(../images/common/d-nav-topics.png); }
.d-nav-item.movie a { background-image: url(../images/common/d-nav-movie.png); opacity: 0.6; pointer-events: none; }
.d-nav-item.sns a { background-image: url(../images/common/d-nav-sns.png); }
.d-nav-item.hulu a { background-image: url(../images/common/d-nav-hulu.png); opacity: 0.6; pointer-events: none; }
.d-nav-item a span {
	width: 100%;
	font-size: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	text-indent: -9999px;
	overflow: hidden;
	white-space: nowrap;
}
.d-nav-item a span.update {
	width: 84%;
	background-color: #ff0;
	color: #141414;
	font-size: 1.1rem;
	border-radius: 3px;
	top: 11%;
	left: 50%;
	-webkit-transform: translate(-50%, 11%);
	transform: translate(-50%, 11%);
	text-indent: 0;
}



/* contentsBox
========================================== */
.d-contentsBox {

}
.d-contentsBox-inner {
	overflow: hidden;
}



/* area
========================================== */
.d-area {
	width: 100%;
	margin: 50px auto;
}
.second_page .d-area {
	margin: 0 auto;
	padding: 50px 0 120px;
	background: url(../images/common/bg-area.png) repeat center transparent;
	background-size: 126px auto;
}
.d-inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}



/* box
========================================== */
.d-box {
	word-break: break-all;
}
.d-box-title {
	width: 100%;
	height: 120px;
	margin-bottom: 15px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	font-size: 0;
	text-indent: -9999px;
	overflow: hidden;
	white-space: nowrap;
}
.second_page .d-box-title {
	margin-bottom: 50px;
}

/* top only */
.trailer-area .d-box-title { background-image: url(../images/common/d-box-title-trailer.png); }
.movie-area .d-box-title { background-image: url(../images/common/d-box-title-movie.png); }
.sns-area .d-box-title { background-image: url(../images/common/d-box-title-sns.png); }

/* menu */
.intro-area .d-box-title { background-image: url(../images/common/d-box-title-intro.png); }
.story-area .d-box-title { background-image: url(../images/common/d-box-title-story.png); }
.chart-area .d-box-title { background-image: url(../images/common/d-box-title-cast.png); }
.staff-area .d-box-title { background-image: url(../images/common/d-box-title-staff.png); }

.d-box-title-01 {}
.d-box-title-02 {}

.d-box-body {}
.second_page .d-box-body {
	padding: 80px 0;
	background: url(../images/common/bg-box-body.png) repeat center;
	background-size: 100px auto;
	position: relative;
}
.second_page .d-box-body:before,
.second_page .d-box-body:after {
	content: '';
	display: block;
	width: 100.7%;
	height: 8px;
	background: url(../images/common/bg-line-pink.png) no-repeat center;
	background-size: cover;
	position: absolute;
	z-index: 30;
}
.second_page .d-box-body:before {
	top: -4px;
	left: -4px;
}
.second_page .d-box-body:after {
	top: auto;
	bottom: -4px;
	left: -4px;
}





/* ------------------------------------------------------------------
	SP（〜600px）
------------------------------------------------------------------ */
@media only screen and (max-width: 600px) {
	/* d-contentsWrap
	========================================== */
	.d-contentsWrap {
		background-position: 10% center;
		background-size: 5% auto;
	}

	/* utility - none
	------------------------------ */
	.d-main .sp-none { display: none; }


	/* d-btn
	========================================== */
	.d-btn {
		display: block;
		width: 87.5%;
		padding: 10px;
		font-size: 1.4rem;
	}
	.d-btn:after {
		border-width: 5px 0 5px 7px;
		right: 10px;
	}


	/* d-mainV（第2階層用ヘッダー　記事ページ含む）
	========================================== */
	.d-mainV-img a{
		padding-top: calc(202 / 640 * 100%);
		background-image: url(../images/common/mainv-2nd-sp.png);
	}


	/* d-nav
	========================================== */
	.d-area {}
	.d-nav-inner:before, .d-nav-inner:after { display: none; }

	/* d-nav-list
	------------------------------------------ */
	.d-nav-list { position: relative; overflow: hidden; }
	.d-nav-list:after {
		content: '';
		display: block;
		width: 100%;
		height: 0;
		padding-top: calc(5 / 633 * 100%);
		background: url(../images/common/d-nav-icon-dot-sp-h.png) no-repeat center transparent;
		background-size: cover;
		position: absolute;
		top: 50%;
		left: 0.2%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}
	.d-nav-item { width: 25%; }
	.d-nav-item:not(:first-child) {}
	.d-nav-item:not(:first-child):after {
		content: '';
		display: block;
		width: 3%;
		height: 80%;
		background-image: url(../images/common/d-nav-icon-dot-sp-v.png);
		background-size: cover;
		top: 14%;
		left: -2px;
	}
	.d-nav-item:nth-child(4n+1) {}
	.d-nav-item:nth-child(4n+1):after { display: none; }
	.d-nav-item:nth-child(n+5) {}
	.d-nav-item:nth-child(n+5):after { top: 8%; }
	.d-nav-item:nth-child(-n+4) a { background-position-y: 5px; }
	.d-nav-item.is-blank:before { width: 10px; height: 8px; bottom: 10%; right: 6%; }
	.d-nav-item a { padding-top: 68.75%; }
	.d-nav-item a span { font-size: 0; }
	.d-nav-item a span.update { font-size: 0.7rem; top: 4%; }


	/* area
	========================================== */
	.d-area { margin: 3% auto; }
	.second_page .d-area { margin: 0 auto; padding: 9% 0 18%; background-size: 63px auto; }
	.d-inner {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		padding: 0;
	}


	/* box
	========================================== */
	.d-box-title {
		height: 0;
		padding-top: calc(105 / 640 * 100%);
		background-size: cover;
	}
	.second_page .d-box-title { margin-bottom: 6%; }
	.second_page .d-box-body { padding: 12% 0; background-size: 50px auto; }
	.second_page .d-box-body:before, .second_page .d-box-body:after { height: 4px; }
	.second_page .d-box-body:before { top: -2px; left: -2px; }
	.second_page .d-box-body:after { top: auto; bottom: -2px; left: -2px; }
}



/* ------------------------------------------------------------------
	SP 〜 tablet（〜992px）
------------------------------------------------------------------ */
@media screen and (min-width: 601px) and (max-width: 992px) {
	/* d-nav
	========================================== */
	.d-nav-inner:before, .d-nav-inner:after { display: none; }
	.d-nav-item a span.update { font-size: 0.9rem; top: 4%; }

	/* d-nav-footer - sp only
	------------------------------ */
	#d-nav-footer .d-nav-item a span.update { font-size: 1.2rem !important; top: 12% !important; }
}

@media screen and (max-width: 992px) {
	/* d-nav
	========================================== */
	/* d-nav-sp-banner - sp only - common
	------------------------------ */
	.d-nav-sp-banner-area { margin: 0 auto; padding: 3% 6%; }
	.d-nav-sp-banner-area a { display: block; }
	.d-nav-sp-banner-inner {}
	.d-nav-sp-banner-list {
		width: 100%;
		margin: 0 auto;
		font-size: 0;
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
	}
	.d-nav-sp-banner-item {
		flex: 0 0 100%;
		max-width: 100%;
	}
	.d-nav-sp-banner-item:not(:first-child) { margin-top: 15px; }

	.d-nav-sp-banner-img {
		width: 100%;
		height: 0;
		padding-top: calc(145/ 560 * 100%);
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
	}


	/* d-nav-fixed - sp only
	------------------------------ */
	.d-nav-fixed-area {
		width: 100%;
		padding-top: 45px;
		background-color: #019ec0;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		opacity: 0;
		-webkit-transition: all 0.5s 0s ease-out;
		transition: all 0.5s 0s ease-out;
	}
	.is-show.d-nav-fixed-area { z-index: 100; opacity: 1; }

	.d-nav-fixed-modal-area {
		width: 100%;
		height: 100%;
		background-color: rgba(255, 255, 255, 0.5);
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
		opacity: 0;
		-webkit-transition: all 0.5s 0s ease-out;
		transition: all 0.5s 0s ease-out;
	}
	.is-show.is-active.d-nav-fixed-modal-area { z-index: 90; opacity: 1; }

	.d-nav-fixed-menu-area {}

	/* menu - common */
	.d-nav-fixed-menu-list {
		width: 100%;
		display: flex;
		flex-wrap: nowrap;
	}
	.d-nav-fixed-menu-item { position: relative; }
	.d-nav-fixed-menu-item:not(:first-child):before {
		content: '';
		display: block;
		width: 1px;
		height: 35px;
		position: absolute;
		top: 5px;
		left: 0;
		background-color: #0484a0;
	}
	.d-nav-fixed-menu-item:last-child:before { display: none; }

	.d-nav-fixed-menu-item a {
		width: 100%;
		height: 45px;
		display: flex;
		flex-wrap: nowrap;
		background-repeat: no-repeat;
		background-position: center;
		background-color: #019ec0;
		background-size: contain;
		font-size: 0;
		text-indent: -9999px;
		overflow: hidden;
		white-space: nowrap;
	}

	/* menu - close */
	#d-nav-fixed-menu-close {
		opacity: 1;
		-webkit-transition: all 0.5s 0s ease-out;
		transition: all 0.5s 0s ease-out;
		position: absolute;
		top: 0;
		left: 0;
	}
	.is-active #d-nav-fixed-menu-close { opacity: 0; height: 0; }
	.d-nav-fixed-menu-item.top { width: 23.44%; }
	.d-nav-fixed-menu-item.top a { background-image: url(../images/common/d-nav-top-fixed.png); }
	.d-nav-fixed-menu-item.story { width: 30.47%; }
	.d-nav-fixed-menu-item.story a { background-image: url(../images/common/d-nav-story-fixed.png); }
	.d-nav-fixed-menu-item.cast { width: 30.47%; }
	.d-nav-fixed-menu-item.cast a { background-image: url(../images/common/d-nav-cast-fixed.png); }
	.d-nav-fixed-menu-item.menu { width: 15.62%; }
	.d-nav-fixed-menu-item.menu a { background-color: #e4007f; }
	.d-nav-fixed-menu-item.menu a { background-image: url(../images/common/d-nav-icon-menu-fixed.png); }

	/* menu - open */
	#d-nav-fixed-menu-open {
		opacity: 0;
		transform: scale(0);
		-webkit-transition: opacity 0.5s 0s ease-out, transform 0s .5s;
		transition: opacity 0.5s 0s ease-out, transform 0s .5s;
		position: absolute;
		top: 0;
		left: 0;
	}
	.is-active #d-nav-fixed-menu-open {
		opacity: 1;
		transform: scale(1);
		-webkit-transition: opacity 0.5s 0s ease-out, transform 0s;
		transition: opacity 0.5s 0s ease-out, transform 0s;
	}
	.d-nav-fixed-menu-item.logo { width: 84.38%; }
	.d-nav-fixed-menu-item.logo a { background-image: url(../images/common/d-nav-logo-fixed.png); }
	.d-nav-fixed-menu-item.close { width: 15.62%; }
	.d-nav-fixed-menu-item.close a { background-color: #e4007f; }
	.d-nav-fixed-menu-item.close a { background-image: url(../images/common/d-nav-icon-close-fixed.png); }

	.d-nav-fixed-box-area {
		opacity: 0;
		background-color: #019ec0;
		position: absolute;
		width: 100%;
		transform: scale(0);
		-webkit-transition: opacity 0.5s 0s ease-out, transform 0s .5s;
		transition: opacity 0.5s 0s ease-out, transform 0s .5s;
		max-height: calc(100vh - 45px);
		overflow: auto;
	}
	.is-active .d-nav-fixed-box-area {
		opacity: 1;
		transform: scale(1);
		-webkit-transition: opacity 0.5s 0s ease-out, transform 0s;
		transition: opacity 0.5s 0s ease-out, transform 0s;
	}
	.d-nav-fixed-content-area {}
	.d-nav-fixed-banner-area {}
	.d-nav-fixed-banner-area .d-nav-sp-banner-item:nth-child(2) { display: none; }

	#d-nav-fixed .d-nav-area { background-color: #019ec0; }
	#d-nav-fixed .d-nav-inner {
		background: url(../images/common/d-nav-bg-footer.png) no-repeat center transparent;
		background-size: contain;
	}
	#d-nav-fixed .d-nav-inner:before, #d-nav-fixed .d-nav-inner:after { display: none; }
	#d-nav-fixed .d-nav-list:after { display: none; }

	#d-nav-fixed .d-nav-item { width: 50%; }
	#d-nav-fixed .d-nav-item:not(:first-child) { }
	#d-nav-fixed .d-nav-item:not(:first-child):after { display: none; }
	#d-nav-fixed .d-nav-item:nth-child(4n+1) {}
	#d-nav-fixed .d-nav-item:nth-child(4n+1):after { display: none; }
	#d-nav-fixed .d-nav-item:nth-child(n+5) {}
	#d-nav-fixed .d-nav-item:nth-child(n+5):after { top: 8%; }
	#d-nav-fixed .d-nav-item:nth-child(-n+4) a { background-position-y: 2px; }
	#d-nav-fixed .d-nav-item.is-blank:before { width: 10px; height: 8px; bottom: 10%; right: 6%; }

	/* d-nav - status */
	#d-nav-fixed .d-nav-item.is-blank:before { bottom: 10%; right: 6%; }

	/* d-nav - contents */
	#d-nav-fixed .d-nav-item.intro a { background-image: url(../images/common/d-nav-intro-footer.png); }
	#d-nav-fixed .d-nav-item.story a { background-image: url(../images/common/d-nav-story-footer.png); }
	#d-nav-fixed .d-nav-item.cast a { background-image: url(../images/common/d-nav-cast-footer.png); }
	#d-nav-fixed .d-nav-item.staff a { background-image: url(../images/common/d-nav-staff-footer.png); }
	#d-nav-fixed .d-nav-item.topics a { background-image: url(../images/common/d-nav-topics-footer.png); }
	#d-nav-fixed .d-nav-item.movie a { background-image: url(../images/common/d-nav-movie-footer.png); }
	#d-nav-fixed .d-nav-item.sns a { background-image: url(../images/common/d-nav-sns-footer.png); }
	#d-nav-fixed .d-nav-item.hulu a { background-image: url(../images/common/d-nav-hulu-footer.png); }

	#d-nav-fixed .d-nav-item a { padding-top: 35.625%; background-position-y: 2px; }
	#d-nav-fixed .d-nav-item a span { font-size: 0; }
	#d-nav-fixed .d-nav-item a span.update { font-size: 0.7rem; top: 12%; }


	/* d-nav-footer - sp only
	------------------------------ */
	.d-nav-footer-area {}
	.d-nav-footer-box-area {}
	.d-nav-footer-content-area {}
	.d-nav-footer-banner-area { background-color: #019ec0; }

	#d-nav-footer .d-nav-area {}
	#d-nav-footer .d-nav-inner {
		background: url(../images/common/d-nav-bg-footer.png) no-repeat center transparent;
		background-size: contain;
	}
	#d-nav-footer .d-nav-inner:before, #d-nav-footer .d-nav-inner:after { display: none; }
	#d-nav-footer .d-nav-list:after { display: none; }

	#d-nav-footer .d-nav-item { width: 50%; }
	#d-nav-footer .d-nav-item:not(:first-child) { }
	#d-nav-footer .d-nav-item:not(:first-child):after { display: none; }
	#d-nav-footer .d-nav-item:nth-child(4n+1) {}
	#d-nav-footer .d-nav-item:nth-child(4n+1):after { display: none; }
	#d-nav-footer .d-nav-item:nth-child(n+5) {}
	#d-nav-footer .d-nav-item:nth-child(n+5):after { top: 8%; }
	#d-nav-footer .d-nav-item:nth-child(-n+4) a { background-position-y: 2px; }
	#d-nav-footer .d-nav-item.is-blank:before { width: 10px; height: 8px; bottom: 10%; right: 6%; }

	/* d-nav - status */
	#d-nav-footer .d-nav-item.is-blank:before { bottom: 10%; right: 6%; }

	/* d-nav - contents */
	#d-nav-footer .d-nav-item.intro a { background-image: url(../images/common/d-nav-intro-footer.png); }
	#d-nav-footer .d-nav-item.story a { background-image: url(../images/common/d-nav-story-footer.png); }
	#d-nav-footer .d-nav-item.cast a { background-image: url(../images/common/d-nav-cast-footer.png); }
	#d-nav-footer .d-nav-item.staff a { background-image: url(../images/common/d-nav-staff-footer.png); }
	#d-nav-footer .d-nav-item.topics a { background-image: url(../images/common/d-nav-topics-footer.png); }
	#d-nav-footer .d-nav-item.movie a { background-image: url(../images/common/d-nav-movie-footer.png); }
	#d-nav-footer .d-nav-item.sns a { background-image: url(../images/common/d-nav-sns-footer.png); }
	#d-nav-footer .d-nav-item.hulu a { background-image: url(../images/common/d-nav-hulu-footer.png); }

	#d-nav-footer .d-nav-item a { padding-top: 35.625%; background-position-y: 2px; }
	#d-nav-footer .d-nav-item a span { font-size: 0; }
	#d-nav-footer .d-nav-item a span.update { font-size: 0.7rem; top: 12%; }
}



/* ------------------------------------------------------------------
	PC（993px〜）
------------------------------------------------------------------ */
@media screen and (min-width: 993px) {
	/* d-contents
	========================================== */
	.d-main a {
		transition: opacity .1s ease;
	}
	.d-main a:hover {
		opacity: 0.6;
	}

	/* d-nav
	========================================== */
	/* d-nav-fixed - sp only
	------------------------------ */
	.d-nav-fixed-area { display: none; }

	/* d-nav-footer - sp only
	------------------------------ */
	.d-nav-footer-area { display: none; }
}



/* ------------------------------------------------------------------
	tablet 〜 PC（601px〜）
------------------------------------------------------------------ */
@media screen and (min-width: 601px) {
	/* utility - none
	------------------------------ */
	.d-main .pc-none { display: none; }
}
