@charset "UTF-8";
/* ==============================================
	ASSETS PC - base

	width: -webkit-calc(100% - 127px);
	width: calc(100% - 127px);
	transition: all .2s;
	@include mx.clearfix;
	@include mx.radius(5);
	============================================== */
.side {
	order: 1;
	width: 360px;
	position: sticky;
	top: 0;
	right: 0;
	z-index: 10;
	background-color: #ffffff;
	border-left: #383834 solid 1px;
	box-sizing: border-box;
	height: 100%;
}
@media(min-width:1200px) {
	.side.size--vh {
		height: 100vh;
	}
}
.side__inner {
	width: 100%;
	height: 100%;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-content: space-between;
}
.side__nav {
	flex-basis: 100%;
	/*padding-top: 40px;劇場情報ボタン追加に伴い削除*/
	margin-bottom: 60px;
}
.side__nav li {
	border-bottom: #e0e0dc solid 1px;
	box-sizing: border-box;
}
.side__nav li.is--current a {
	background-color: #383834;
	color: #ffffff;
}
.side__nav a {
	color: #383834;
	text-decoration: none;
	display: block;
	padding: 15px 40px;
	position: relative;
	transition: all 0.2s;
}
.side__nav a::after {
	content: "";
	display: block;
	width: 7px;
	height: 14px;
	background: url("../img/common/arrow_next.png") center center no-repeat;
	background-size: contain;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translate(0px, -50%);
	transition: all 0.2s;
}
.side__nav a:hover {
	background-color: #383834;
	color: #ffffff;
}
.side__nav a:hover::after {
	transform: translate(10px, -50%);
	background-image: url("../img/common/arrow_next_w.png");
	background-size: contain;
}
/*251207：劇場情報ボタン追加用：ここから*/
.side__nav .sp a {
	background-color: #1a1a1a;
	color: #fff;
	padding: 30px 40px;
}
.side__nav .sp2 a {
	background-color: #1a1a1a;
	color: #fff;
	padding: 30px 40px;
}
.side__nav .sp a::after, .side__nav .sp2 a::after {
	width: 7px;
	height: 14px;
	background: url("../img/common/arrow_next_w.png") center center no-repeat;
	background-size: contain;
}
.side__nav .sp a:hover {
	background-color: #be1400;
	color: #ffffff;
}
.side__nav .sp2 a:hover,
.side__nav .sp2.is--current a {
	background-color: #003399;
	color: #ffffff;
}
.side__nav .sp a:hover::after, .side__nav .sp2 a:hover::after {
	transform: translate(10px, -50%);
	background-image: url("../img/common/arrow_next_w.png");
	background-size: contain;
}
.side__nav .sp:not(.blank) a::before, .side__nav .sp2:not(.blank) a::before {
	content: "";
	display: block;
	width: 7px;
	height: 14px;
	background: url("../img/common/arrow_next_w.png") center center no-repeat;
	background-size: contain;
	position: absolute;
	right: 37px;
	top: 50%;
	transform: translate(0px, -50%);
	transition: all 0.2s;
}
.side__nav .sp:not(.blank) a:hover::before, .side__nav .sp2:not(.blank) a:hover::before {
	transform: translate(10px, -50%);
	background-image: url("../img/common/arrow_next_w.png");
	background-size: contain;
}
.side__nav .blank a::after {
	width: 14px;
	height: 14px;
	background: url("../img/common/blank_w.png") center center no-repeat;
	background-size: contain;
}
.side__nav .blank a:hover::after {
	transform: translate(10px, -50%);
	background-image: url("../img/common/blank_w.png");
	background-size: contain;
}
/*251207：劇場情報ボタン追加用：ここまで*/
.side__nav span {
	display: block;
}
.side__nav span.nav--en {
	font-family: "Oranienbaum", serif;
	font-weight: 400;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-feature-settings: "palt"1;
	font-size: 30px;
	letter-spacing: 0.05em;
	line-height: 1em;
	margin-bottom: 3px;
}
.side__nav span.nav--ja {
	font-family: "zen-kaku-gothic-antique", sans-serif;
	font-weight: 400;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-feature-settings: "palt"1;
	font-feature-settings: "palt"1;
	font-size: 12px;
	letter-spacing: 0.05em;
	line-height: 1em;
}
.side__desc {
	flex-basis: 100%;
	padding-bottom: 40px;
}
.side__desc__entry, .side__desc__blank, .side__desc__imgbnr {
	margin: 0 40px;
	margin-bottom: 30px;
}
.side__desc__entry a, .side__desc__blank a {
	display: block;
	background-size: 100% 100%;
	background-size: contain !important;
	color: #383834;
	text-decoration: none;
	position: relative;
	width: 100%;
	padding-top: 28.5714285714%;
	transition: all 0.2s;
}
.side__desc__entry a {
	background: url("../img/common/side_entry_bg.png") center center no-repeat;
}
.side__desc__blank a {
	background: url("../img/common/side_blank_bg.png") center center no-repeat;
}
.side__desc__entry a:hover, .side__desc__blank a:hover {
	opacity: 0.6;
}
.side__desc__entry span, .side__desc__blank span {
	display: block;
	font-family: "zen-kaku-gothic-antique", sans-serif;
	font-weight: 700;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-feature-settings: "palt"1;
	font-feature-settings: "palt"1;
	font-size: 16px;
	letter-spacing: 0.18em;
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.side__desc__twitter {
	margin: 0 40px;
	position: relative;
	border-bottom: #383834 solid 1px;
}
.side__desc__twitter::before, .side__desc__twitter::after {
	content: "";
	display: block;
	width: 1px;
	height: 10px;
	background-color: #383834;
	position: absolute;
	bottom: 0;
	z-index: 1;
}
.side__desc__twitter::before {
	left: 0;
}
.side__desc__twitter::after {
	right: 0;
}
.side__desc__twitter .twitter--head {
	border-top: #383834 solid 1px;
	border-bottom: #383834 solid 1px;
	padding: 3px 0 0;
	text-align: center;
	font-family: "Oranienbaum", serif;
	font-weight: 400;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-feature-settings: "palt"1;
	letter-spacing: 0.1em;
	font-size: 24px;
	line-height: 1em;
	position: relative;
}
.side__desc__twitter .twitter--head::before, .side__desc__twitter .twitter--head::after {
	content: "";
	display: block;
	width: 1px;
	height: 10px;
	background-color: #383834;
	position: absolute;
	top: 0;
}
.side__desc__twitter .twitter--head::before {
	left: 0;
}
.side__desc__twitter .twitter--head::after {
	right: 0;
}
.side__desc__twitter .twitter--content {
	width: 100%;
	height: 230px;
	position: relative;
	z-index: 0;
}
@media screen and (max-width: 1300px) {
	.side {
		width: 300px;
	}
	.side__desc__entry span, .side__desc__blank span {
		font-size: 14px;
	}
	.side__desc__twitter iframe {
		width: 218px !important;
	}
}
/* ==============================================
	ASSETS SP - base

	padding: 150px 0;
	padding: 40vw 0;
	@include mx.clearfix;
	@include mx.spimg(width, 200);
	============================================== */
@media screen and (max-width: 1199px) {
	.side {
		width: 100%;
		position: fixed;
		top: 17.3333333333vw;
		right: 0;
		z-index: 10;
		border-left: none;
		border-top: #383834 solid 0.2666666667vw;
		height: -webkit-calc(100vh - 17.3333333333vw);
		height: calc(100vh - 17.3333333333vw);
		display: none;
	}
	.side__inner {
		align-content: flex-start;
		overflow: auto;
		-webkit-overflow-scrolling: touch;
		-webkit-transform: translateZ(0px);
	}
	.side__nav {
		padding-top: 0px;
		margin-bottom: 2.6666666667vw;
	}
	.side__nav li {
		border-bottom: #e0e0dc solid 0.2666666667vw;
	}
	.side__nav a {
		padding: 2.6666666667vw 0 2.6666666667vw 4vw;
		transition: none;
	}
	.side__nav a::after {
		width: 1.6vw;
		height: 2.8vw;
		right: 5.3333333333vw;
		transition: none;
	}
	.side__nav a:hover {
		background: none;
		color: #383834;
	}
	.side__nav a:hover::after {
		transform: translate(0px, -50%);
	}
	/*251207：劇場情報ボタン追加用：ここから*/
	/*260331：　間章　ボタン追加用：ここから*/
	.side__nav .sp a,
	.side__nav .sp a:hover{
		background-color: #be1400;
		color: #fff;
		padding: 6vw 0 6vw 4vw;
	}
	.side__nav .sp2 a,
	.side__nav .sp2 a:hover{
		background-color: #003399;
		color: #fff;
		padding: 6vw 0 6vw 4vw;
	}
	.side__nav .sp a::after,
	.side__nav .sp2 a::after {
		width: 1.6vw;
		height: 2.8vw;
		right: 5.3333333333vw;
	}
	.side__nav .sp a:hover::after,
	.side__nav .sp2 a:hover::after {
		transform: translate(0px, -50%);
	}
	.side__nav .sp:not(.blank) a::before,
	.side__nav .sp2:not(.blank) a::before {
		width: 1.6vw;
		height: 2.8vw;
		right: 6.3333333333vw;
		transition: none;
	}
	.side__nav .blank a::after {
		width: 2.8vw;
		height: 2.8vw;
		right: 5.3333333333vw;
	}
	.side__nav .blank a:hover::after {
		transform: translate(0px, -50%);
	}
	/*251207：劇場情報ボタン追加用：ここまで*/
	.side__nav span.nav--en {
		font-size: calc(6.4vw * 10 / 16);
		margin-bottom: 0.5333333333vw;
	}
	.side__nav span.nav--ja {
		font-size: calc(2.6666666667vw * 10 / 16);
		transform-origin: 0 100%;
		-moz-transform-origin: 0 100%;
		-webkit-transform-origin: 0 100%;
		-webkit-transform: scale(0.9);
		-moz-transform: scale(0.9);
		-o-transform: scale(0.9);
		-ms-transform: scale(0.9);
		transform: scale(0.9);
	}
	.side__desc {
		flex-basis: 100%;
		padding-bottom: 10.6666666667vw;
	}
	.side__desc__entry, .side__desc__blank:not(.only--sp), .side__desc__imgbnr:not(.only--sp) {
		display: none;
	}
	.side__desc__blank.only--sp {
		margin: 0 auto;
	}
	.side__desc__imgbnr.only--sp {
		margin: 5vw auto 0;
		text-align: center;
	}
	.side__desc__twitter {
		margin-left: 4vw;
		margin-right: 4vw;
		border-bottom: none;
	}
	.side__desc__twitter::before, .side__desc__twitter::after {
		display: none;
	}
	.side__desc__twitter .twitter--link a {
		text-decoration: none;
		color: #383834;
		position: relative;
		display: flex;
		align-items: center;
		font-family: "Oranienbaum", serif;
		font-weight: 400;
		-moz-osx-font-smoothing: grayscale;
		-webkit-font-smoothing: antialiased;
		font-feature-settings: "palt"1;
		font-size: 15px;
		font-size: calc(4vw * 10 / 16);
		letter-spacing: 0.075;
		padding-top: 2.6666666667vw;
		padding-bottom: 2.6666666667vw;
	}
	.side__desc__twitter .twitter--link a::before {
		content: "";
		display: block;
		width: 4.9333333333vw;
		height: 4vw;
		background: url("../img/common/icon_x.png") center center no-repeat;
		background-size: cover;
		margin-right: 2.6666666667vw;
	}
}
@media screen and (max-width: 767px) {
	.side__nav span.nav--ja {
		font-size: 2.6666666667vw;
	}
	.side__desc__twitter .twitter--link a {
		font-size: 4vw;
	}
}
