@charset "utf-8";

.video-js {
	width: 100%;
	height: 56.5vw;
	background: #fff;
	margin: auto;
}

@media all and (min-width: 768px) {
	.video-js {
		height: 350px;
	}
}



.vjs-default-skin--android {
	width: 100%;
}

.video-js .vjs-big-play-button {
	font-size: 7em;
	height: 1.55em;
	width: 1.5em;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	border-radius: 50%;
	border: none;
}

#js-movie-slider {
	width: 100%;
	/*max-width: 360px;*/
	margin: 0 auto;
}

@media all and (min-width: 768px) {
	#js-movie-slider {
		max-width: 800px;
		margin:0 auto 40px;
	}
}

.js-movie-slider-item {
	margin: 0 auto;
}
.js-movie-slider-item:first-of-type {
	margin: 0 auto;
}

@media all and (min-width: 768px) {
	.js-movie-slider-item {
		margin: 0 auto;
	}
}
#thumbnail-list {
	margin: 4vw auto 0;
	justify-content: space-between;
	flex-wrap:wrap;
	display: flex;
	padding: 0 4vw 2vw;
}
@media all and (min-width: 768px) {
	#thumbnail-list {
		max-width: 800px;
		display: flex;
	}
}

.thumbnail-item {
	flex: 0 1 30%;
	margin-bottom: 10px;
	position:relative;
	cursor: pointer;
}

.thumbnail-item span {
	position: absolute;
	content: "";
	text-align: center;
	background-color: #ffce00;
	color: #333333;
	font-size: 3.5vw;
	font-weight: 700;
	z-index: 4;
    padding: 0.5vw 0;
    width: 50%;
}


.thumbnail-item img {
	position: relative;
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	border: solid 2px #e3e3e1;
}

.thumbnail-item p {
	margin: 10px auto;
	font-size: 14px;
	text-align: center;
    letter-spacing: 0.01em;
}

.thumbnail-item.thumbnail-current p {
	color: #ff6700;
}

.thumbnail-item.thumbnail-current img {
	position: relative;
	border: 2px solid #ff6700;
}

.thumbnail-item.thumbnail-current span {
	color: #ffffff;
	background-color: #ff6700;
}

.thumbnail-item.thumbnail-current span::after {
	border-bottom: 8px solid #bd4d01;
}

.thumbnail-item.thumbnail-current::before {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	top: -19px;
	left: 50%;
	transform: translateX(-50%);
	border-top: 10px solid transparent;
	border-bottom: 10px solid #ff6700;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	z-index: 2;
}

.movie {
	width: 100%;
	text-align: center;
	padding: 0 0 10px;
	background-color: #f7f5f5;
	border-bottom: solid 2px #e3e3e1;
	border-top: solid 2px #e3e3e1;
}

@media all and (min-width: 768px) {
	.thumbnail-item span {
		width: auto;
		top: -10px;
		left: -12px;
		font-size: 18px;
		line-height: 40px;
		padding: 0 10px;
	}
	.thumbnail-item span::after {
		position: absolute;
		content: "";
		width: 0;
		height: 0;
		top: 32px;
		left: 4px;
		border-top: 8px solid transparent;
		border-bottom: 8px solid #b18f01;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
		transform: rotate(45deg);
		z-index: 3;
	}
	.thumbnail-item.thumbnail-current::before {
		top: -40px;
		left: 50%;
		border-top: 20px solid transparent;
		border-bottom: 20px solid #ff6700;
		border-left: 20px solid transparent;
		border-right: 20px solid transparent;
	}
	#thumbnail-list {
		padding: 0;
		margin: 0;
	}
}

@media all and (min-width: 768px) {
	.movie {
		padding: 40px 0;
	}
}

.movie-wrap {
	width: 100%;
	margin: auto;
	box-sizing: border-box;
}
@media all and (min-width: 768px) {
	.movie-wrap {
		max-width: 620px;
		padding-bottom: 0;
	}
}

.movie .slick-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
}
.movie .slick-arrow-prev {
	left: -7px;
}
.movie .slick-arrow-next {
	right: -7px;
}

.movie .slick-arrow-inner {
	width: 40px;
	height: 40px;
	border-radius: 30px;
	background: transparent;
	position: relative;
	cursor: pointer;
	opacity: 0.7;
}

.movie .slick-arrow-item {
	content: '';
	width: 10px;
	height: 10px;
	border: 0px;
	border-top: solid 2px #f2f2f2;
	border-left: solid 2px #f2f2f2;
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	position: absolute;
    top: 37%;
    left: 43%;
}

.movie .slick-arrow-next .slick-arrow-item {
	border-top: none;
	border-left: none;
	border-right: solid 2px #f2f2f2;
	border-bottom: solid 2px #f2f2f2;
	left: 37%;
}

.movie-env-link {
	text-align: center;
}

@media all and (min-width: 768px) {
	.movie-env-link {
		text-align: right;
		margin-top: 0;
	}
}

.movie-env-link a {
	position: relative;
	display: block;
    width: 150px;
    font-size: 12px;
	padding: 5px 10px 5px 0;
	margin: auto;
	background-color: #f9f9f9;
	border: 1px solid #d2d1d1;
	border-radius: 4px;
	text-align: center;
	color: #333333;
}

@media all and (min-width: 768px) {
	.movie-env-link a {
		margin: 0 0 0 auto;
	}
}

.movie-env-link a::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	top: 50%;
	right: 10px;
	transform: translateY(-20%);
	border-top: 10px solid #333333;
	border-bottom: 10px solid transparent;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
}

.movie-env-link-watch {
    margin-top: 40px;
}
@media all and (min-width: 768px) {
	.movie-env-link {
    	margin-top: 40px;
	}
}
.movie-env-link-watch a:after {
	border-bottom: 10px solid #333333;
	border-top: 10px solid transparent;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	top: 3px;
}

.movie_title {
	display: block;
	width: 100%;
	height: 40px;
	background-color: #ff6700;
	font-size: 22px;
	font-weight: 700;
	line-height: 40px;
	color: #ffffff;
}

@media all and (min-width: 768px) {
	.movie_title {
		display: none;
	}
}

.movie_description {
	display: block;
	width: 100%;
	box-sizing: border-box;
	text-align: center;
	padding: 15px 20px;
	color: #333333;
	font-size: 18px;
}

@media all and (min-width: 768px) {
	.movie_description {
		display: none;
	}
}

.movie-expire {
	margin-top: 12vw;
}
.movie-expire__text {
	color: red;
	font-size: 3.7vw;
	font-weight: bold;
	text-align: center;
	margin-bottom: 3vw;
}
.movie-expire__img {
	
}

@media all and (min-width: 768px) {
	.movie-expire {
		margin-top: 80px;
	}
	.movie-expire__text {
		font-size: 22px;
		margin-bottom: 20px;
	}
	.movie-expire__img {
		display: block;
		margin: 0 auto;
	}
}

.vjs-poster {
	background: #fff;
	background-size: cover;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}
@media all and (min-width: 768px) {
	.vjs-poster {
		border: solid 2px #e3e3e1;
	}
}