@charset "UTF-8";

/*================================
	SP CSS
================================*/
/* SP Common */
.movie-teaser-main .inner {
	padding: 0 4%;
	width: 100%;
}

.movie-teaser-wrap {
	background: url(../images/movie/movie-teaser-bg.png) no-repeat center top/cover;
}

.movie-teaser-bg-himukaizer {
	background: url(../images/movie/movie-teaser-bg-himukaizer.png) no-repeat center 110px/92%;
	height: 100%;
	margin: 0 auto;
	width: 100%;
}

/* SP header */
.movie-teaser-header {
	margin: 0 0 100px;
	padding: 20px 4% 0;
}

.movie-teaser-logo {
	margin: 0 auto 10px;
}

.movie-teaser-logo img {
	margin: 0 auto;
}

.movie-teaser-sub-ttl {
	color: #fff;
	font-size: 12px;
	letter-spacing: .2em;
	line-height: 1;
	text-align: center;
}

/* SP teaser-introduction */
.teaser-introduction {
	border-bottom: 1px solid #c2bfbc;
	margin: 0 0 34px;
	padding: 0 0 40px;
}

.movie-teaser-ttl {
	margin: 0 0 40px;
}

.movie-teaser-nav {
	margin: 0 0 40px;
}

.movie-teaser-nav-list li:not(:last-child) {
	margin: 0 0 20px;
}

.movie-teaser-nav-list li {
	background: rgba(0, 0, 0, .7);
	border: 1px solid #595959;
	height: 80px;
}

.movie-teaser-nav-list li a {
	background: url(../images/movie/movie-teaser-arrow.png) no-repeat 96% center/8px;
}

.movie-teaser-nav-list li a,
.movie-teaser-nav-list li span {
	align-items: center;
	color: #fff;
	display: flex;
	flex-direction: column;
	font-size: 14px;
	height: 100%;
	justify-content: center;
	letter-spacing: .2em;
	white-space: nowrap;
	width: 100%;
}

.movie-teaser-nav-list li small {
	display: inline-block;
	font-size: 12px;
	letter-spacing: .1em;
	margin: 8px 0 0;
}

.movie-teaser-nav-list li span img {
	margin: 8px 0 0;
}

.movie-teaser-sns {
	align-items: center;
	display: flex;
	justify-content: center;
}

.movie-teaser-sns li:not(:last-child) {
	margin: 0 20px 0 0;
}


/* SP movie-teaser-about */
.movie-teaser-about {
	color: #fff;
	padding: 0 0 50px;
}

.movie-teaser-about dt,
.movie-teaser-about dd {
	margin: 0;
}

.movie-teaser-info-wrap {
	margin: 0 0 20px;
}

.movie-teaser-info {
	margin: 0 0 20px;
}

.movie-teaser-info dl {
	display: flex;
	font-size: 14px;
	line-height: 2;
	margin: 0 0 5px;
}

.movie-teaser-info dt {
	font-weight: 600;
	margin: 0 20px 0 0;
	position: relative;
	width: 58px;
}

.movie-teaser-info dt::after {
	content: "：";
	display: inline-block;
	left: 98%;
	position: absolute;
	top: 0;
}

.movie-teaser-info dd {
	width: calc(100% - 76px);
}

.movie-teaser-info dd:not(:last-child) {
	margin: 0 0 10px;
}

.movie-teaser-info-note {
	font-size: 14px;
	line-height: 1;
}

.movie-teaser-info-note::before {
	content: "※";
	display: inline-block;
}

.movie-teaser-info-note small {
	font-size: 100%;
}

.cast-image {
	height: 165px;
	margin: 0 auto 20px;
	width: 165px;
}

.movie-teaser-cast {
	background: rgba(255, 255, 255, .8);
	border: 1px solid #fff;
	color: #333;
	font-size: 14px;
	padding: 20px 15px;
}

.movie-teaser-about-ttl {
	font-size: 14px;
	line-height: 1;
	margin: 0 0 8px;
	text-align: center;
}

.movie-teaser-cast-history {
	display: flex;
	line-height: 1.8;
	margin: 0;
}

.movie-teaser-cast-history dt {
	font-weight: 600;
	white-space: nowrap;
}

.movie-teaser-cast-history dt::after {
	content: "：";
	display: inline-block;
}

.movie-teaser-cast-history dd {
	font-feature-settings: "palt";
}

/* SP movie-teaser-news */
.movie-teaser-news {
	background: url(../images/movie/movie-teaser-news-bg.jpg) no-repeat center top/cover;
	padding: 40px 0 50px;
}

.movie-teaser-news-ttl {
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	margin: 0 0 30px;
	text-align: center;
}

.movie-news-list {
	background: #e9dfd3;
	height: 260px;
	overflow-y: scroll;
	padding: 20px 15px 16px;
}

.movie-news-list li:not(:last-child) {
	margin: 0 0 12px;
}

.movie-news-list-date {
	color: #4e3d29;
	display: block;
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	margin: 0 0 8px;
}

.movie-news-list-ttl {
	color: #4e3d29;
	font-size: 13px;
	line-height: 1.6;
}

.movie-teaser-news-none {
	font-size: 12px;
}

.movie-news-list::-webkit-scrollbar {
	width: 10px;
}

.movie-news-list::-webkit-scrollbar-track {
	background-color: #e9dfd3;
}

.movie-news-list::-webkit-scrollbar-thumb {
	background-color: #d0c2b1;
}

/* SP Footer */
.movie-teaser-footer {
	font-size: 10px;
	padding: 20px 0;
	text-align: center;
}

.movie-teaser-footer small {
	font-size: 100%;
}


/*================================
	PC CSS
================================*/
@media screen and (min-width:768px) {
	/* PC Common */
	.movie-teaser-main .inner {
		padding: 0;
	}

	.movie-teaser-bg-himukaizer {
		background: url(../images/movie/movie-teaser-bg-himukaizer.png) no-repeat calc(50% - 440px) 34px/710px 1750px;
	}

	/* PC Header */
	.movie-teaser-header {
		margin: 0 0 80px;
		padding: 40px 0 0;
	}

	.movie-teaser-sub-ttl {
		font-size: 16px;
	}

	.movie-teaser-sub-ttl::before,
	.movie-teaser-sub-ttl::after {
		content: "-";
		display: inline-block;
	}

	.movie-teaser-sub-ttl::before {
		margin: 0 10px 0 0;
	}

	.movie-teaser-sub-ttl::after {
		margin: 0 0 0 10px;
	}

	/* PC teaser-introduction */
	.teaser-introduction {
		margin: 0 0 74px;
		padding: 0 0 80px;
	}

	.movie-teaser-ttl {
		margin: 0 0 60px;
	}

	.movie-teaser-ttl img {
		margin: 0 auto;
	}

	.movie-teaser-nav {
		margin: 0 0 56px;
	}

	.movie-teaser-nav-list {
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto;
		max-width: 780px;
	}

	.movie-teaser-nav-list li {
		margin: 0;
		width: 46%;
	}

	.movie-teaser-nav-list li:nth-child(odd) {
		margin: 0 8% 40px 0;
	}

	.movie-teaser-nav-list li:last-child {
		margin: 0;
	}

	.movie-teaser-nav-list li a {
		background-position: 95%;
		background-size: 10px;
		font-size: 16px;
	}

	.movie-teaser-nav-list li span {
		font-size: 16px;
	}

	.movie-teaser-nav-list li a:hover {
		background-color: #5a0000;
	}

	.movie-teaser-sns li:not(:last-child) {
		margin: 0 40px 0 0;
	}

	/* PC movie-teaser-about */
	.movie-teaser-about {
		padding: 0 3% 90px;
	}

	.movie-teaser-info-wrap {
		align-items: center;
		display: flex;
		justify-content: space-between;
		margin: 0 0 40px;
	}

	.movie-teaser-info {
		letter-spacing: .2em;
		margin: 0;
		width: 64%;
	}

	.movie-teaser-info dl {
		font-size: 16px;
		justify-content: flex-start;
		margin: 0 0 6px;
	}

	.movie-teaser-info dt {
		margin: 0;
		position: static;
		width: initial;
		white-space: nowrap;
	}

	.movie-teaser-info dt::after {
		margin: 0 4px 0 2px;
		position: static;
	}

	.movie-teaser-info-note {
		font-size: 16px;
		margin: 8px 0 0;
	}

	.cast-image {
		display: flex;
		height: auto;
		justify-content: flex-end;
		margin: 0;
		width: 36%;
	}

	.movie-teaser-cast {
		font-size: 16px;
		letter-spacing: .2em;
		line-height: 2.2;
		padding: 30px 30px 24px;
	}

	.movie-teaser-about-ttl {
		font-size: 16px;
		margin: 0 0 14px;
	}

	.movie-teaser-cast-history {
		justify-content: flex-start;
		line-height: 2.2;
	}

	/* PC movie-teaser-news */
	.movie-teaser-news {
		padding: 60px 0 100px;
	}

	.movie-teaser-news-ttl {
		font-size: 16px;
		margin: 0 0 40px;
	}

	.movie-news-list {
		height: 170px;
		padding: 26px 30px;
	}

	.movie-news-list li {
		display: flex;
	}

	.movie-news-list li:not(:last-child) {
		margin: 0 0 16px;
	}

	.movie-news-list-date {
		font-size: 14px;
		line-height: 1.6;
		margin: 0 3% 0 0;
	}

	.movie-news-list-ttl,
	.movie-teaser-news-none {
		font-size: 14px;
	}

	/* PC Footer */
	.movie-teaser-footer {
		font-size: 14px;
		padding: 30px 0;
	}
}

/*================================
	Tablet CSS
================================*/
@media screen and (min-width:768px) and (max-width:1100px) {
	.movie-teaser-bg-himukaizer {
		background: url(../images/movie/movie-teaser-bg-himukaizer.png) no-repeat calc(50% - 280px) 34px/532px 1312px;
	}

	.movie-teaser-logo img {
		width: 400px;
	}

	.movie-teaser-ttl {
		padding: 0 30px;
	}

	.movie-teaser-nav-list li {
		width: 44%;
	}

	.movie-teaser-news .inner {
		padding: 0 30px;
	}
}