@charset "UTF-8";

ul {
	list-style: none;
}
.teaser-main-mainImg img {
  display: block;
  width: 100%;
}

.teaser-contents {
  box-sizing: border-box;
  font-size: 1.6rem;
}
.teaser-contents a:hover, .bnr_cast a:hover {
  transition: opacity .1s;
	text-decoration:none;
	opacity:0.65;
}

.ntv-wrapper{
    font-size: 65%;
    background: url(../images/main_bg.jpg);
}
.ntv-main {
	margin: 0 0 10% 0;
	line-height: 1.5;
}
.ntv-contentsWrap .ntv-main ul.gnav {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 20px auto;
}
ul.gnav li {
	padding: 0 3px;
	width: 24%;
}

ul.gnav li a {
	display: block;
	text-indent: -9999px;
    overflow: hidden;
    white-space: nowrap;
}

.gnavCenter {
	padding: 0 0 2px 0;
}


ul.nav li img {
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
ul.nav li :hover img {
	opacity: .8;
}




.bannerArea img {
	margin: 28px auto 36px auto;
    display: block;
    width: 96%;
	opacity: 1;
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.bannerArea :hover img {
	opacity: .8;
}
.nav_001 a{
	background: url(../images/common/menu01off.png)no-repeat;
	display: block;
	background-size: contain;
	height: 20vw;
}
.nav_001 a:hover{
	background: url(../images/common/menu01on.png)no-repeat;
	-webkit-transition: 0.3s ease-in-out;
  	-moz-transition: 0.3s ease-in-out;
  	-o-transition: 0.3s ease-in-out;
  	transition: 0.3s ease-in-out;
	background-size: contain;
}
.nav_001_on a{
	background: url(../images/common/menu01on.png)no-repeat;
	display: block;
	background-size: contain;
	height: 30vw;
	pointer-events: none;
}
.nav_002 a{
	background: url(../images/common/menu02off.png)no-repeat;
	display: block;
	background-size: contain;
	height: 20vw;
}
.nav_002 a:hover{
	background: url(../images/common/menu02on.png)no-repeat;
	-webkit-transition: 0.3s ease-in-out;
  	-moz-transition: 0.3s ease-in-out;
  	-o-transition: 0.3s ease-in-out;
  	transition: 0.3s ease-in-out;
	background-size: contain;
}
.nav_002_on a{
	background: url(../images/common/menu02on.png)no-repeat;
	display: block;
	background-size: contain;
	height: 20vw;
	pointer-events: none;
}
.nav_003 a{
	background: url(../images/common/menu03off.png)no-repeat;
	display: block;
	background-size: contain;
	height: 20vw;
}
.nav_003 a:hover{
	background: url(../images/common/menu03on.png)no-repeat;
	-webkit-transition: 0.3s ease-in-out;
  	-moz-transition: 0.3s ease-in-out;
  	-o-transition: 0.3s ease-in-out;
  	transition: 0.3s ease-in-out;
	background-size: contain;
}
.nav_003_on a{
	background: url(../images/common/menu03on.png)no-repeat;
	display: block;
	background-size: contain;
	height: 20vw;
	pointer-events: none;
}
.nav_004 a{
	background: url(../images/common/menu04off.png)no-repeat;
	display: block;
	background-size: contain;
	height: 20vw;
}
.nav_004 a:hover{
	background: url(../images/common/menu04on.png)no-repeat;
	-webkit-transition: 0.3s ease-in-out;
  	-moz-transition: 0.3s ease-in-out;
  	-o-transition: 0.3s ease-in-out;
  	transition: 0.3s ease-in-out;
	background-size: contain;
}
.nav_004_on a{
	background: url(../images/common/menu04on.png)no-repeat;
	display: block;
	background-size: contain;
	height: 16vw;
	pointer-events: none;
}

.nav_comingsoon a {
	background: url(../images/common/comingsoon.png)no-repeat;
	display: block;
	background-size: contain;
	height: 20vw;
	pointer-events: none;
}

.nolink a {
	pointer-events:none;
}
/* ---------------------------------
 共通
--------------------------------- */
.titleImg {
	width: 100%;
    margin: 0 auto;
}
.titleImg2 {
	width: 100%;
    margin: 0 auto -26px auto;
}
h4 {
	font-size: 17px;
}







/* ---------------------------------
 動画
--------------------------------- */
.movie {
	width: 96%;
	margin: 30px auto;
	border: 3px solid #2e9eff;
	background-color: #ffffff;
	border-radius: 12px;
}
.movie img.titleImg {
    border-top-right-radius: 12px;
	border-top-left-radius: 12px;
}
.movieContents {
	text-align: center;
    position: relative;
    width: 94%;
    padding-top: 56.3%;
    height: 100%;
    margin: 1.3vw auto 1vw auto;
}
.movieContents iframe {
	position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 94%;
}
.movieContents img {
	margin: 0 auto;
	display: block;
	padding: 0 0 0 0;
}
.movie_title {
	font-size: 18px;
    text-align: center;
    font-weight: bold;
}
.movieContents .text {
	text-align: left;
}

.movieContents h4 {
    margin: 2vw 0 0 0;
	color: #1aa7f9;
	font-weight: bold;
}

a.linkB {
    padding: 10px;
}
a.linkB :hover {
    transition: opacity .1s;
	text-decoration:none;
	opacity:0.65;
}
/* ---------------------------------
 イントロ
--------------------------------- */
.intro img {
	width: 96%;
    margin: 20px auto;
    display: block;
}
/* ---------------------------------
 トピックス
--------------------------------- */
.topicks {
	width: 95%;
	margin: 0 auto;
	border: 3px solid #2e9eff;
	background-color: #ffffff;
	border-radius: 12px;
}
.topicks img {
    border-top-right-radius: 12px;
	border-top-left-radius: 12px;
}
.drama-box-title {
	
}
.topics-area  {
	margin: 0 0 20px 0;
}

.topics-area .drama-box-title .title-01, .topics-area .drama-box-title .title-02 {
    display: none;
}
#topics .topics-list {
	width: 96%;
	margin: 0 auto;
}
/* ---------------------------------
 キャスト
--------------------------------- */
.cast {
	width: 96%;
	margin: 20px auto;
	border: 3px solid #2e9eff;
	background-color: #ffffff;
	border-radius: 12px;
}
.castContents {
	padding: 4vw 1vw 2vw 1vw;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
	text-align: center;
    /* margin: 0 auto; */
}
.cast img.titleImg {
    border-top-right-radius: 12px;
	border-top-left-radius: 12px;
}
.castPhoto {
	margin: 0 8px 20px 7px;
    width: 255px;
}

.cast h4 {
	color: #1aa7f9;
}



/* ---------------------------------
 コメント
--------------------------------- */
.comment {
	width: 96%;
	margin: 30px auto;
	border: 3px solid #2e9eff;
	background-color: #ffffff;
	border-radius: 12px;
}
.comment img.titleImg {
    border-top-right-radius: 12px;
	border-top-left-radius: 12px;
}
.commentContents {
	padding: 2vw;
}
.commentContents img {
	margin: 0 auto 3vw auto;
	display: block;
	width: 100%;
}


.commentContents .text {
	text-align: left;
}

.commentContents h4 {
    margin: 2vw 0 0 0;
	color: #1aa7f9;
	font-weight: bold;
}


/* ---------------------------------
 インフォメーション
--------------------------------- */
.infoArea {
	font-size: 1.8em;
    padding: 3% 2%;
    border: 5px dotted #3096ff;
    margin: 7% 2% 2% 2%;
}
.infoArea h2{
    font-size: 1.4em;
    padding: 0 0 2% 0;
	font-weight: bold;
}




/* ---------------------------------
 タブ
--------------------------------- */
.tab {
  display: flex;
	justify-content:center;
	margin: 3% 3% 0 3%;
}
.tab li {
  margin: 0 auto;
  cursor: pointer;
	text-align: center;
}
.tab li img{
width: 90%;
}

 
.area ul {
  display: none;
}
.area ul.show {
  display: block;
}




/* ---------------------------------
 SNS
--------------------------------- */
.sns{
	width: 96%;
	margin: 30px auto;
	border: 3px solid #2e9eff;
	background-color: #ffffff;
	border-radius: 12px;
}
.sns img.titleImg {
    border-top-right-radius: 12px;
	border-top-left-radius: 12px;
}
.snsContents {
	padding: 3vw 0 3vw 1px;
	background: #2e9eff;
}
.snsContents h4 {
	background: url(../images/twitterIcon.png)19px 13px no-repeat;
    padding: 2px 0 6px 74px;
    font-size: 240%;
    color: #fff;
    float: left;
}
a.linkA {
    background-color: #fff;
    margin: 1% 3% 0 0;
    transition: background-color 0.5s;
    color: #46afe8;
    text-decoration: none;
    padding: 10px;
    display: block;
    width: 30%;
    text-align: center;
    float: right;
    border-radius: 6px;
}
#twitter-widget {
	text-align: center;
    clear: both;
	padding: 2vw 0 0 0;
}
/* ---------------------------------
 スタッフ
--------------------------------- */
.staff {
	width: 96%;
	margin: 30px auto;
	border: 3px solid #2e9eff;
	background-color: #ffffff;
	border-radius: 12px;
}
.staffContents {
	padding: 0vw 0 6vw 1px;
    line-height: 2;
    font-size: 120%;
}
.staff img.titleImg {
    border-top-right-radius: 12px;
	border-top-left-radius: 12px;
}
.staffContents ul li {
	display: block;
}
.staffRight {
	float: left;
	text-align: right;
	width: 50%;
}
.staffLeft {
	float: right;
	text-align: left;
	width: 50%;
}
.pc_only {
	display: block;
}
.sp_only {
	display: none;
}


/* channel
========================================== */
.channel-area {
	/* padding: 40px 0 60px; */
	margin: 0 auto;
	padding: 4.6%;
}

.channel-list {
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  /*background: #e7f1ff;*/
  padding: 3% 3.42% 4% 3.42%;
}
.channel-item {
  flex: 0 1 100%;
}
.channel-item + .channel-item {
  margin-left: 3%;
}
.channel-item a {
  display: block;
  padding: 18px 10px 10px 10px;
  border-radius: 3px;
}

.channel-item.tada a { background-color: #ff005a;}
.channel-item.hulu a { background-color: #67ae3e;}

.channel-item.tada a span {
  background-image: url(../images/common/channel-tada-pc.png);
}
.channel-item.hulu a span {
  background-image: url(../images/common/channel-hulu-pc.png);
}

.channel-item.tada a:hover { opacity: .8;}
.channel-item.hulu a:hover { opacity: .8;}



.d-box-body p {
    font-size: 18px;
    text-align: center;
	font-weight: bold;
}


.channel-item a span {
  display: block;
  height: 46px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  font-size: 0;
  text-indent: -9999px;
  overflow: hidden;
  white-space: nowrap;
}

/* ------------------------------------------------------------------
SP用
------------------------------------------------------------------ */
@media only screen and (max-width: 600px) {
	.teaser-mainV-img a {
    padding-top: calc(220 / 750 * 100%);
    background-image: url(../images/common/mainv-2nd-sp.png);
}
	.infoArea h2{
    font-size: 1.1em;
    padding: 0 0 2% 0;
}
	.d-box-body p.movie_title {
		font-size: 15px;
	}
	
	
}

/* ---------------------------------
 SP用
--------------------------------- */
@media screen and (max-width: 992px) {
	h4 {
    font-size: 100%;
}
	h4 span {
    font-size: 80%;
}
	.staffContents {
    font-size: 100%;
}
	.castContents .text {
	font-size: 100%;
}
	.commentContents .text {
    font-size: 100%;
}
	.castPhoto {
    padding: 2vw 2vw;
    width: 49%;
	margin: 0;
}
	.castContents img {
		width: 100%;
	}
	.titleImg2 {
    width: 100%;
    margin: 0 auto -4vw auto;
}
	a.linkA {
	font-size: 80%;
	}
	.commentContents h4 {
    margin: 5vw 0 0 0;
}
	.pc_only {
		display: none;
	}
	.sp_only {
		display: block;
		max-width: 100%;
		margin: 0 auto;
	}
}

/* ---------------------------------
 tablet用(SP設定を上書き）
--------------------------------- */
@media screen and (min-width : 601px){

}

/* ---------------------------------
 PC用
--------------------------------- */
@media screen and (min-width: 993px) {
.nav_001 a{
	height: 135px;
}
	.nav_001_on a{
	height: 135px;
}
.nav_002 a{
	height: 135px;
}
	.nav_002_on a{
	height: 135px;
}
.nav_003 a{
	height: 135px;
}
	.nav_003_on a{
	height: 135px;
}
.nav_004 a{
	height: 135px;
}
	.nav_004_on a{
	height: 135px;
}

.nav_comingsoon a{
	height: 135px;
}
.nav_comingsoon2 a{
	height: 162px;
}
}


/* ---------------------------------
 右カラム設定
--------------------------------- */

/* 右カラム　タイトル */
.ntv-box-title {
  /* background: #f00; */
}
.ntv-box-title.title-base {
  /* background: #f00; */
}

/* ---------------------------------
 ティザーTOPICS一覧用
--------------------------------- */

/* ボタン */
#topics .drama-btn.btn-more {
  /* color: #ffffff; */
  display: block;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  word-break: break-all;
  position: relative;
  background: transparent;
  border: 1px solid #000;
  padding: 15px;
  font-size: 1.4rem;
}
#topics .drama-btn.btn-more i {
  font-size: 1.5em;
  margin-right: 5px;
  vertical-align: middle;
}
@media screen and (max-width: 992px) {
  #topics .topics-btn {
    padding: 10px;
    margin: 0;
  }
}

/* リスト */
@media screen and (min-width: 993px) {
  #topics .topics-item {
    width: 49%;
  }
  #topics .topics-item:nth-of-type(n+3) {
    margin-top: 15px;
  }
  #topics .topics-item:nth-of-type(2n+1) {
    margin-left: 0;
  }
  #topics .topics-item:nth-of-type(2n) {
    margin-left: 2%;
  }

}


/*------------------------------------------------------------
	clearfix
------------------------------------------------------------*/
	* html .clearfix {
		zoom: 1;
	}

	*+html .clearfix {
		zoom: 1;
	}

.clearfix:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}