body{
	background: #222222 url("../img/bg.jpg") repeat-x 50% 0% / 50px auto;
}

header{
	background: #fff;
	border-bottom: 0;
}


/* LOGO */
#dokodemoLogo{
	width: 360px;
	max-width: 30%;
}



/*===========================================================
+-----+// HERO
===========================================================*/
#mv{
	margin: 0 auto 55px;
	width: 100%;
	max-width: 2172px;
	position: relative;
	overflow: hidden;
}
#mv .box{
	position: relative;
	width: 40vw;
	max-width: 640px;
	padding: 0 60px;
	opacity: 0.3;
	transition: opacity 0.5s;
	overflow: hidden;
}
#mv .box.slick-active{
	opacity: 1;
}

#mv .box .copyright{
	width: 100%;
	display: block;
	position: absolute;
	text-align: right;
	padding-right: 20px;
	box-sizing: border-box;
	top: 410px;
	font-size: 1.2rem;
	color: #fff;
	z-index: 10;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
}

#mv .box img{
	width: 100%;
	position: relative;
	z-index: 5;
}


/* HERO */
#mv .box > span{
	display: block;
	background: #fff;
	cursor: pointer;
}
#mv .box > span img{
	transition: opacity 0.3s;
}
#mv .box > span:hover img{
	opacity: 0.9;
}
#mv .box .icons{
	display: none;
}

#mv .slick-arrow{
	position: absolute;
	z-index: 20;
	top: 0;
	width: calc((100vw - 40vw)/2);
	min-width: calc((100vw - 640px)/2);
	height: 100%;
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	text-indent: -9999px;
	cursor: pointer;
	outline: none;
	opacity: 0.85;
	overflow: hidden;
	transition: opacity 0.3s;
}
#mv .slick-next {
	right: 0;
}
#mv .slick-prev {
	left: 0;
}
#mv .slick-prev::before, #mv .slick-next::before{
	content: "";
	display: block;
	position: absolute !important;
	top: calc(50% - 12px);
	width: 24px;
	height: 24px;
	border-right: 6px solid #fff;
	border-top: 6px solid #fff;
	margin: 15px;
	transition: 0.3s;
}
#mv .slick-prev::before{ right:20px; transform: rotate(-135deg); }
#mv .slick-next::before{ left:20px; transform: rotate(45deg); }

#mv .slick-arrow:hover{ opacity: 1; }
#mv .slick-prev:hover::before{ right: 25px; }
#mv .slick-next:hover::before{ left: 25px; }




/* NEWS */
#news{
	width: 1280px;
	max-width: 90%;
	margin: 0 auto;
	padding: 0.75em 0;
	background: #fff;
	border-radius: 5px;
	color: #000;
	line-height: 1.25;
	font-size: 1.7rem;
}
#news.off{
	display: none;
}

#newsList{
	position: relative;
}

#news .newsLine{
	position: absolute;
	top: 0;
	left: 7px;
	padding: 0 1.25em;
	opacity: 0;
	z-index: 1;
	transition: opacity 0.3s ease, left 0s ease 0.5s, width 0s ease 0.5s;
}
#news .newsLine.on{
	left: 0px;
	opacity: 1;
	z-index: 9;
	transition: opacity 0.5s ease 0.5s, left 0.5s ease 0.5s, width 0s ease 0.5s;
}





/* NAVIGATION */
#videoNav{
	width: 1280px;
	max-width: 90%;
	margin: 50px auto 30px;
}
#videoNav ul{
	display: flex;
	justify-content: space-between;
}
#videoNav ul li{
	box-sizing: border-box;
	width: 19%;
	padding: 0.5em 1.0em;
	background: #999;
	border-radius: 5px;
	text-align: center;
	color: #fff;
	line-height: 1.25;
	font-size: 2.4rem;
	font-weight: 600;
	cursor: pointer;
	opacity: 0.85;
	transition: 0.3s;
	filter: brightness(1);
}
#videoNav ul li:hover{
	opacity: 1;
	filter: brightness(1.2);
}
#videoNav ul li#videoNav01{ background:#eb599b; }
#videoNav ul li#videoNav02{ background:#f9ad38; }
#videoNav ul li#videoNav03{ background:#00ad62; }
#videoNav ul li#videoNav04{ background:#00aee2; }
#videoNav ul li#videoNav05{ background:#8a4f9c; }







/* DISPLAY BOX */
#displayBox{
	position: relative;
	min-height: 75vh;
}
#displayBox section{
	height: 0;
	opacity: 0;
	transition: opacity 0.2s ease 0s, height 0s ease 0.2s;
	overflow: hidden;
}
#displayBox.disp01 section#viewAll,
#displayBox.disp02 section#viewNew,
#displayBox.disp03 section#viewPopular,
#displayBox.disp04 section#viewOnair,
#displayBox.disp05 section#viewArchive{
	height: auto;
	opacity: 1;
	transition: opacity 0.3s ease 0s, height 0s ease 0s;
}










/* VIDEO LISTS */
.sec_vod_list, .sec_vod_grid {
	display: block;
	width: calc(90% - 20px);
	max-width: 1280px;
	margin: 0 auto;
	padding-top:10px;
	padding-bottom: 30px;
}

.sec_vod_grid { padding-bottom: 30px; }

.sec_vod_list h2, .sec_vod_grid h2{
	padding-bottom: 0.5em;
	font-size: 3.2rem;
	font-weight: normal;
	line-height: 1.0;
	color: #fff;
}


/* VIDEO CARDS */
.videoCard {
	display: block;
	max-width: 25%;
	margin: 0 15px;
	padding: 0;
	text-align: left;
	background: transparent;
	transition: opacity 0.3s;
	cursor: pointer;
}
.videoCard:active > *,
.videoCard:focus > * {
	position: relative;
}
.videoCard:hover {
	opacity: 0.75;
}




/* VIDEOS */
.videoCard .thumb {
	width: 100%;
	border-radius: 5px;
}
.videoCard .info {
	margin-top: 7px;
	background: #fff;
	border-radius: 5px;
	
}
.videoCard .info .ttl {
	padding: 0.75em 1em;
	color: #000;
	font-size: 1.45rem;
	white-space: nowrap;
	text-align: center;
	text-overflow: ellipsis;
	overflow: hidden;
}
.videoCard .info .icons {
	display: flex;
	justify-content: center;
	width: 100%;
	padding-bottom: 0.85em;
}
.videoCard .info .icons span {
	height: 0.85em;
	width: 21%;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	text-indent: -100em;
	overflow: hidden;
}
.videoCard .info .icons .i_TVer { background-image: url("../img/i_tver.svg"); }
.videoCard .info .icons .i_FOD { background-image: url("../img/i_fod.svg"); }
.videoCard .info .icons .i_YT { background-image: url("../img/i_youtube.svg"); }
.videoCard .info .icons .i_PC { background-image: url("../img/i_podcast.svg"); }


/* LIST SLICK */
.slick-slider .slick-list{
	overflow: hidden;
}

.sec_vod_list .slick-arrow {
	position: absolute;
	top: 0;
	z-index: 2;
	width: 25px;
	height: 100%;
	background: none;
	border: none;
	font-size: 0;
	cursor: pointer;
	transition: opacity 0.3s;
}

.sec_vod_list .slick-arrow.slick-disabled {
	display: none !important;
}

.sec_vod_list .slick-arrow:hover {
	opacity: 0.7;
}

.sec_vod_list .slick-arrow::after {
	content: "";
	position: absolute;
	top: 31%;
	left: 6px;
	width: 16px;
	height: 16px;
	transform: rotate(45deg);
}

.sec_vod_list .slick-prev {
	left: -25px;
}
.sec_vod_list .slick-next {
	right: -25px;
}
.sec_vod_list .slick-prev::after {
	border-left: 4px solid #fff;
	border-bottom: 4px solid #fff;
}
.sec_vod_list .slick-next::after {
	left: 1px;
	border-right: 4px solid #fff;
	border-top: 4px solid #fff;
}

#videoExclusive.off{
	display: none;
}
#videoExclusive .slick-track{
	min-width: 100%;
}



/* GRID */
.grid{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	width: 100%;
}
.sec_vod_grid .videoCard{
	width: 18%;
	width: calc((100% - 120px) / 5);
	margin: 0 30px 30px 0;
}
.sec_vod_grid .videoCard:nth-child(5n){
	margin: 0 0 30px 0;
}
.sec_vod_grid .videoCard .info .ttl {
	padding: 0.85em 1em;
	font-size: 1.3rem;
}



/* LINK VIEW */
#linkMenu{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0;
	width: 0;
	height: 0;
	overflow: hidden;
	z-index: 999;
	transition: opacity 0.2s ease 0.3s, width 0s ease 0.5s, height 0s ease 0.5s;
}
#linkDark{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.85);
	opacity: 0;
	transition: opacity 0.5s ease 0.1s;
	z-index: 1;
}
#linkMenu .inner{
	display: flex;
	justify-content: center;
	align-content: center;
	z-index: 2;
}

#linkBox{
	position: relative;
	top: 15px;
	width: 360px;
	max-width: 90vw;
	opacity: 0;
	transition: opacity 0.5s, top 0.5s;
}
#linkBox .imgCard{
	margin-bottom: 30px;
	background: #fff;
	border-radius: 10px;
	color: #000;
	overflow: hidden;
	text-align: center;
	box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.75);
}
#linkBox .imgCard .thumb{
	max-width: 100%;
}
#linkBox .imgCard .ttl{
	font-size: 1.8rem;
	padding: 1.25em;
	color: #000;
}
#linkBox .links a{
	display: block;
	position: relative;
	width: 100%;
	height: 70px;
	margin-bottom: 20px;
	background: #fff;
	background-size: auto 50%;
	background-position: 49% 50%;
	background-repeat: no-repeat;
	border-radius: 10px;
	text-align: center;
	box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.75);
}
#linkBox .links a::after{
	content: "";
	display: block;
	position: absolute;
	top: 47%;
	right: 30px;
	width: 15px;
	height: 15px;
	border: solid #222 4px;
	border-width: 4px 4px 0 0;
	transform: rotate(45deg) translateY(-50%);
}
#linkBox .links a.i_TVer{ background-image: url("../img/i_tver.svg"); }
#linkBox .links a.i_FOD{ background-image: url("../img/i_fod.svg"); }
#linkBox .links a.i_YT{ background-image: url("../img/i_youtube_.svg"); }
#linkBox .links a.i_PC::before{
	display: inline-block;
	content: "PODCAST";
	color: #222;
	font-size: 27px;
	font-weight: 900;
	line-height: 70px;
	letter-spacing: -0.01em;
}
#linkBox .links a.on{ display: block; }
#linkBox .links a.off{ display: none; }

#linkBox .btnClose{
	display: block;
	position: relative;
	width: 50px;
	height: 50px;
	margin: 30px auto 0;
	background: #fff;
	border-radius: 100%;
	cursor: pointer;
	opacity: 0.75;
	transition: opacity 0.3s;
}
#linkBox .btnClose:hover{
	opacity: 1;
}
#linkBox .btnClose::before, #linkBox .btnClose::after{
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 4px;
	height: 24px;
	background: #222;
	transform-origin:50% 50% 0;
}
#linkBox .btnClose::before{ transform: translate(-50%,-50%) rotate(45deg); }
#linkBox .btnClose::after{ transform: translate(-50%,-50%) rotate(-45deg); }

/* YOUTUBE LIVE */
#linkBox.YTLIVE  .imgCard::before{
	display: block;
	content: "ライブ配信!";
	width: auto;
	height: 70px;
	padding: 0 0.5em 0 50%;
	background: url("../img/i_youtube_.svg") no-repeat 1.0em 50% / 40% auto;
	color: #ea3223;
	font-size: 22px;
	font-weight: 900;
	line-height: 75px;
	letter-spacing: -0.01em;
	white-space: nowrap;
}
#linkBox.YTLIVE  .links a.i_YT{
	background: #ea3223;
}
#linkBox.YTLIVE  .links a.i_YT::before{
	display: inline-block;
	content: "視聴はコチラ！";
	color: #fff;
	font-size: 27px;
	font-weight: 900;
	line-height: 70px;
	letter-spacing: -0.01em;
}
#linkBox.YTLIVE  .links a.i_YT::after{
	border-color: #fff;
}



body.linkView #linkMenu{
	width: 100vw;
	height: 100vh;
	opacity: 1;
	transition: opacity 0.1s ease 0s, width 0s ease 0s, height 0s ease 0s;
}
body.linkView #linkDark{
	opacity: 1;
	transition: opacity 0.3s;
}
body.linkView #linkBox{
	top: 0px;
	opacity: 1;
	transition: opacity 0.3s ease 0.2s, top 0.4s ease 0.2s;
}





/* NEW */
#videoNew h2::before, #viewNew h2::before{
	content: "";
	display: inline-block;
	width: 45px;
	height: 20px;
	background: url("../img/i_new.svg") no-repeat 0% 45% / auto 20px;
	vertical-align: baseline;
}




/* SNS */
#soclial_area{
	margin-top: 50px;
}










