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

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


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

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

/* d-btn
========================================== */
.d-btn {
	display: block;
	width: 100%;
	max-width: 400px;
	margin: 0 auto;
	padding: 10px 0;
	border: 1px solid #fff0;
	border-radius: 5px;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	word-break: break-all;
	position: relative;
}
.d-btn:after {
	content: '';
	display: block;
	width: 15px;
	height: 15px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	position: absolute;
	top: 0;
	right: 25px;
	bottom: 0;
	margin: auto 0;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

/* 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(298 / 1280 * 100%);
	background-image: url(../images/common/mainv-2nd-pc.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}


/* d-nav
========================================== */
.d-nav-area {
	position: relative;
	width: 100%;
	background-image: url(../images/top/pc-icon/d-nav-main-bg-pc.png);
	display: flex;
	padding: 0 5px 9px 5px;
	border-top: rgba(241, 197, 43, 0.8) 9px solid;
	overflow: hidden;
}
.d-nav-inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}


/* d-nav-list
------------------------------ */
.d-nav-list {
	width: 100%;
	font-size: 0;
	text-align: center;
}
.d-nav-item {
	display: inline-block;
	width: 12%;
	vertical-align: top;
	position: relative;
}
.d-nav-item:not(:first-child) { margin-left: 0.56%; }
.d-nav-item a {
	display: block;
	width: 100%;
	padding-top: 87.5%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 130%;
	position: relative;
	overflow: hidden;
}

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

/* d-nav - contents */
.d-nav-item.intro a { background-image: url(../images/top/pc-icon/d-nav-main-intro.png); }
.d-nav-item.story a { background-image: url(../images/top/pc-icon/d-nav-main-story.png); }
.d-nav-item.chart a { background-image: url(../images/top/pc-icon/d-nav-main-chart.png); }
.d-nav-item.caststaff a { background-image: url(../images/top/pc-icon/d-nav-main-caststaff.png); }
.d-nav-item.music a { background-image: url(../images/top/pc-icon/d-nav-main-music.png); }
.d-nav-item.movie a {
	background-image: url(../images/top/pc-icon/d-nav-main-movie.png);
	opacity: 0.6;
	pointer-events: none
}
.d-nav-item.topics a { background-image: url(../images/top/pc-icon/d-nav-main-topics.png); }
.d-nav-item.hulu a {
	 background-image: url(../images/top/pc-icon/d-nav-main-hulu.png);
	 opacity: 0.6;
	 pointer-events: none
	}
.d-nav-item.cs a { background-image: url(../images/top/pc-icon/d-nav-main-cs.png); opacity: 1 !important}
.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-vertical {
	position: absolute;
	width: 105%;
	height: 65px;
	top: 60%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-right: 1px dotted;
}

.d-nav-item.hulu .d-nav-vertical,
.d-nav-item.cs .d-nav-vertical {
	border-right: 0px
}

.d-nav-item .is-update {
	width: 84%;
	background-color: #EFC42B;
	color: #141414;
	font-size: 1.1rem;
	font-weight: 900;
	top: 2%;
	left: 50%;
	-webkit-transform: translate(-50%, 11%);
	transform: translate(-50%, 11%);
	text-indent: 0;
	position: absolute;
}

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

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

/* area
========================================== */
.d-area {
	width: 100%;
	margin: 0px auto;
	padding: 60px 0;
}
.d-inner {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
	position: relative;
}
.d-inner::before {
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

/* box
========================================== */
.d-box {
	word-break: break-all;
}
.d-box-title {
	width: 360px;
	height: 0;
	padding-top: 120px;
	margin: auto;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
	text-indent: -9999px;
	overflow: hidden;
	white-space: nowrap;
}

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

.d-box-body {}

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

/* menu */
.intro-area .d-box-title { background-image: url(../images/common/intro-title.png); width: 497px; }
.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/chart-title.png); }
.caststaff-area .d-box-title { background-image: url(../images/common/caststaff-title.png); width: 494px; }
.music-area .d-box-title { background-image: url(../images/common/music-title.png); width: 497px; }


/* d-nav footer
========================================== */
#nav-sp {
	display: none;
}

/* ------------------------------------------------------------------
 SP 〜 tablet（〜992px）
------------------------------------------------------------------ */
@media screen and (max-width: 992px) {
	#nav-sp .d-nav-area {
		border-top: rgba(241, 197, 43, 0.8) 5px solid;
		border-bottom: rgba(241, 197, 43, 0.8) 5px solid;
	}
	#nav-sp .d-nav-inner:after {
		content: '';
		display: block;
		width: 100%;
		height: 0;
		position: absolute;
		top: 52%;
		left: 0.2%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		border-top: rgba(241, 197, 43, 0.8) 3px solid;
	}
		/* d-nav footer
	========================================== */
	#nav-sp {
		display: block;
	}

	#nav-sp .d-nav-inner:after {
		width: 0%;
		height: 100%;
		top: 50%;
		left: 49.8%;
		border-top: 0px;
		border-right: #d7d7d7 1px solid;
		border-left: 1px dotted;
	}

	#nav-sp .d-nav-item {
		width: 48%;
		margin: 0;
		border: 1px solid #d7d7d7;
		border-radius: 15px;
	}

	#nav-sp .d-nav-item {
		margin-top: 5%;
	}

	#nav-sp .d-nav-item:nth-child(1),
	#nav-sp .d-nav-item:nth-child(2) {
		margin-top: 3%;
	}

	#nav-sp .d-nav-item:nth-child(even) {
		margin-left: 3%;
	}

	#nav-sp .d-nav-item.intro a { background-image: url(../images/common/d-nav-footer-intro.png); }
	#nav-sp .d-nav-item.story a { background-image: url(../images/common/d-nav-footer-story.png); }
	#nav-sp .d-nav-item.chart a { background-image: url(../images/common/d-nav-footer-chart.png); }
	#nav-sp .d-nav-item.caststaff a { background-image: url(../images/common/d-nav-footer-caststaff.png); }
	#nav-sp .d-nav-item.music a { background-image: url(../images/common/d-nav-footer-music.png); }
	#nav-sp .d-nav-item.movie a {
		background-image: url(../images/common/d-nav-footer-movie.png);
		opacity: 0.6;
		pointer-events: none;
	}
	#nav-sp .d-nav-item.topics a { background-image: url(../images/common/d-nav-footer-topics.png); }
	#nav-sp .d-nav-item.hulu a { background-image: url(../images/common/d-nav-footer-hulu.png); }
	#nav-sp .d-nav-item.cs a { background-image: url(../images/common/d-nav-footer-cs.png); }

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


	#nav-sp .d-nav-item.is-new:before {
		width: 30%;
		top: -10%;
	}

	#nav-sp .d-nav-vertical {
		width: 110%;
		height: 0;
		top: -15%;
		border-top: 1px dotted;
		border-bottom: #d7d7d7 1px solid;
		border-right: 0px;
	}

	#nav-sp .d-nav-item.intro .d-nav-vertical,
	#nav-sp .d-nav-item.story .d-nav-vertical {
		width: 0;
		height: 0;
	}

	#nav-sp .d-nav-item .is-update {
		font-size: 1.2rem;
		top: 11%;
	}
}

/* ------------------------------------------------------------------
 SP（〜600px）
------------------------------------------------------------------ */
@media only screen and (max-width: 600px) {

	/* d-contentsWrap
	========================================== */
	.d-contentsWrap {
		background-position: 10% center;
		background-size: 5% auto;
	}


	/* drama - setting
	========================================== */
	.d-area { margin:0 auto; }
	.d-inner {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		padding: 0;
	}

	.d-btn {
		width: 100% !important;
		font-size: 1.6rem !important;
		max-width: 545px;
		padding: 4% 0;
	}
	.d-btn:after {
		width: 12px;
		height: 12px;
	}


	/* d-box-title
	========================================== */
	.d-box-title {
		width: 100% !important;
		padding-top: 60px ;
	}

	/* top only */
	.sns-area .d-box-title { padding-top: 30px !important; }

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


	/* d-nav
	========================================== */
	.d-nav-area {
		background-image: url(../images/top/sp-icon/d-nav-main-bg-sp.png);
		border-top: rgba(241, 197, 43, 0.8) 5px solid;
	}
	.d-nav-inner:after {
		content: '';
		display: block;
		width: 100%;
		height: 0;
		position: absolute;
		top: 52%;
		left: 0.2%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		border-top: rgba(241, 197, 43, 0.8) 2px solid;
	}
	/* d-nav-list
	------------------------------------------ */
	.d-nav-item { width: 24.25%; }
	.d-nav-item:not(:first-child) { margin-left: 1%; }
	.d-nav-item:nth-child(4n+1) { margin-left: 0; }
	.d-nav-item:nth-child(n+5) { margin-top: 5%; }
	.d-nav-item a span { font-size: 0; }

	.d-nav-item.caststaff .d-nav-vertical {
		border-right: 0px
	}

	.d-nav-item .is-update {
		font-size: 1.1rem;
		top: 0;
	}

	#nav-sp .d-nav-item .is-update {
		font-size: 1.1rem;
		top: 0%;
	}
}

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