@charset "UTF-8";
/*
  works / 29man-no-shizuku
*/
/* magnific-popup
----------------------------------------*/
/**
 * Simple fade transition,
 */
.mfp-fade.mfp-bg {
	opacity: 0;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out; }

.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.7; }

.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0; }

.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out; }

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1; }

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0; }

.mfp-container {
	padding: 0; }
	.mfp-container .mfp-content .mfp-iframe-holder .mfp-close,
	.mfp-container .mfp-content button.mfp-close {
		opacity: 1;
		font-size: 0;
		width: 44px;
		height: 44px;
		top: -64px;
		opacity: 1;
		transition: opacity 0.3s ease-out; }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before, .mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
		.mfp-container .mfp-content button.mfp-close:before,
		.mfp-container .mfp-content button.mfp-close:after {
			content: '';
			position: absolute;
			left: -21%;
			top: 50%;
			width: 63px;
			height: 2px;
			background-color: #FFF; }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before,
		.mfp-container .mfp-content button.mfp-close:before {
			-webkit-transform: rotateZ(-45deg);
			transform: rotateZ(-45deg); }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
		.mfp-container .mfp-content button.mfp-close:after {
			-webkit-transform: rotateZ(45deg);
			transform: rotateZ(45deg); }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:hover,
		.mfp-container .mfp-content button.mfp-close:hover {
			opacity: 0.5; }
		@media screen and (max-width: 750px) {
			.mfp-container .mfp-content .mfp-iframe-holder .mfp-close,
			.mfp-container .mfp-content button.mfp-close {
				width: 6.66667vw;
				height: 6.66667vw;
				top: 4vw;
				right: 4vw;
				background-color: transparent; }
				.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before, .mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
				.mfp-container .mfp-content button.mfp-close:before,
				.mfp-container .mfp-content button.mfp-close:after {
					content: '';
					position: absolute;
					left: -21%;
					top: 50%;
					width: 10vw;
					height: 2px;
					background-color: #FFF; }
				.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before,
				.mfp-container .mfp-content button.mfp-close:before {
					-webkit-transform: rotateZ(-45deg);
					transform: rotateZ(-45deg); }
				.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
				.mfp-container .mfp-content button.mfp-close:after {
					-webkit-transform: rotateZ(45deg);
					transform: rotateZ(45deg); } }
	@media screen and (max-width: 750px) {
		.mfp-container .mfp-content .movie-modal button.mfp-close {
			top: -10.66667vw;
			right: 1.33333vw; } }
	.mfp-container .mfp-content .movie-modal button.mfp-close:before, .mfp-container .mfp-content .movie-modal button.mfp-close:after {
		background-color: #FFF; }

@media screen and (max-width: 750px) {
	.movie-mfp .mfp-content {
		width: 92vw; } }

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
	right: 0; }

/*
----------------------------------------*/
.mincho, .sec-actors .actors-list .actor p {
	/* @font-faceで定義したフォント名を指定 */ }

.shadow {
	box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.2); }

.drop-shadow {
	filter: drop-shadow(5px 5px 4px rgba(0, 0, 0, 0.3)); }

body {
	background-color: #000; }

.content {
	font-size: 16px; }
	@media screen and (max-width: 750px) {
		.content {
			font-size: 14px;
			font-size: 4.375vw;
			overflow: hidden; } }
	.content a {
		text-decoration: underline; }
		.content a:hover {
			color: inherit;
			text-decoration: none; }

.section.bg-light {
	background-color: #f8e990;
	color: #0a2e3b;
	border-color: #0a2e3b; }
	.section.bg-light table {
		border-color: #0a2e3b; }
	.section.bg-light a {
		color: #0a2e3b; }
	.section.bg-light a:link, .section.bg-light a:active, .section.bg-light a:visited {
		color: #0a2e3b; }
		@media screen and (min-width: 751px) {
			.section.bg-light a:link:hover, .section.bg-light a:active:hover, .section.bg-light a:visited:hover {
				color: #0a2e3b; } }

.section.bg-dark {
	background-color: #0a2e3b;
	color: #f8e990;
	border-color: #f8e990; }
	.section.bg-dark table {
		border-color: #f8e990; }
	.section.bg-dark a {
		color: #f8e990; }
	.section.bg-dark a:link, .section.bg-dark a:active, .section.bg-dark a:visited {
		color: #f8e990; }
		@media screen and (min-width: 751px) {
			.section.bg-dark a:link:hover, .section.bg-dark a:active:hover, .section.bg-dark a:visited:hover {
				color: #f8e990; } }

.mfp-wrap {
	color: #0a2e3b; }

.section {
	position: relative; }

.section-head {
	position: relative;
	text-align: center;
	margin: 0 auto 80px; }
	@media screen and (min-width: 751px) {
		.section-head {
			display: table; } }
	@media screen and (max-width: 750px) {
		.section-head {
			margin-bottom: 10.66667vw;
			height: 13.33333vw; }
			.section-head img {
				height: 100%; } }

@media screen and (min-width: 751px) {
	.pc-nobreak {
		white-space: nowrap; } }

/* reservation-btn
----------------------------------------*/
.reservation-btn {
	position: fixed;
	right: 20px;
	bottom: 80px;
	width: 120px;
	height: 120px;
	pointer-events: none;
	transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
	opacity: 0;
	transform: scale(0);
	text-decoration: none !important;
	cursor: pointer; }
	.reservation-btn > div {
		transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		border-radius: 50%;
		overflow: hidden;
		color: #0a2e3b;
		background-color: #f8e990;
		border: 4px solid #0a2e3b;
		text-align: center;
		font-size: 18px;
		font-weight: bold;
		line-height: 1.5em; }
		@media screen and (max-width: 750px) {
			.reservation-btn > div {
				font-size: 10px;
				font-size: 3.125vw;
				line-height: 1.3em;
				border-width: 0.53333vw; } }
	@media screen and (max-width: 750px) {
		.reservation-btn {
			right: 2.66667vw;
			bottom: 20vw;
			width: 18.66667vw;
			height: 18.66667vw; } }
	body.pc .reservation-btn.active:hover > div {
		transform: scale(1.2); }
	.reservation-btn.active {
		opacity: 1;
		transform: scale(1);
		pointer-events: all; }
	.reservation-btn.abs {
		position: absolute;
		bottom: 20px; }
		@media screen and (max-width: 750px) {
			.reservation-btn.abs {
				bottom: 2.66667vw; } }

/*
----------------------------------------*/
.waves-container {
	height: 140px;
	overflow: hidden; }
	@media screen and (max-width: 750px) {
		.waves-container {
			height: 12vw; } }

.waves {
	width: 100%;
	height: 140px;
	vertical-align: bottom; }
	@media screen and (max-width: 750px) {
		.waves {
			height: 13.33333vw; } }

/* Animation */
@media screen and (min-width: 751px) {
	.parallax > use {
		animation: move-forever 25s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite; }
		body.tablet .parallax > use {
			animation: none; } }

.parallax > use:nth-child(1) {
	animation-delay: -2s;
	animation-duration: 14s; }
	@media screen and (max-width: 750px) {
		.parallax > use:nth-child(1) {
			transform: translate3d(20%, 0, 0); } }
	body.tablet .parallax > use:nth-child(1) {
		transform: translate3d(20%, 0, 0); }

.parallax > use:nth-child(2) {
	animation-delay: -3s;
	animation-duration: 20s; }
	@media screen and (max-width: 750px) {
		.parallax > use:nth-child(2) {
			transform: translate3d(40%, 0, 0); } }
	body.tablet .parallax > use:nth-child(2) {
		transform: translate3d(40%, 0, 0); }

.parallax > use:nth-child(3) {
	animation-delay: -4s;
	animation-duration: 26s; }
	@media screen and (max-width: 750px) {
		.parallax > use:nth-child(3) {
			transform: translate3d(80%, 0, 0); } }
	body.tablet .parallax > use:nth-child(3) {
		transform: translate3d(80%, 0, 0); }

.parallax > use:nth-child(4) {
	animation-delay: -5s;
	animation-duration: 40s; }
	@media screen and (max-width: 750px) {
		.parallax > use:nth-child(4) {
			transform: translate3d(100%, 0, 0); } }
	body.tablet .parallax > use:nth-child(4) {
		transform: translate3d(100%, 0, 0); }

@keyframes move-forever {
	0% {
		transform: translate3d(-90px, 0, 0); }
	100% {
		transform: translate3d(85px, 0, 0); } }

.reservation-modal .modal-detail {
	display: block; }

.reservation-modal .reservation-head {
	width: 100%;
	text-align: center;
	font-size: 120%;
	font-weight: bold; }

.reservation-modal .btn-list {
	width: 100%; }
	@media screen and (min-width: 751px) {
		.reservation-modal .btn-list {
			display: flex;
			justify-content: space-around;
			align-items: center; } }

.reservation-modal .apply-btn {
	position: relative;
	display: block;
	text-indent: 1em;
	margin-top: 1em;
	line-height: 1.5em;
	padding: 10px 20px 10px 10px;
	border-radius: 3px;
	text-decoration: none !important;
	background-color: #0a2e3b;
	color: #f8e990 !important;
	width: 250px;
	transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
	border-radius: 5px;
	text-align: center; }
	.reservation-modal .apply-btn.hovereffect {
		opacity: 0.8; }
	.reservation-modal .apply-btn:after {
		display: block;
		content: '';
		position: absolute;
		top: 50%;
		width: 6px;
		height: 6px;
		border-right: 2px solid #f8e990;
		border-bottom: 2px solid #f8e990;
		-webkit-transform: translateY(-50%) rotate(-45deg);
		transform: translateY(-50%) rotate(-45deg); }
	@media screen and (min-width: 751px) {
		.reservation-modal .apply-btn:hover {
			background-color: #030c0f; }
			.reservation-modal .apply-btn:hover span {
				text-decoration: none !important; } }
	@media screen and (max-width: 750px) {
		.reservation-modal .apply-btn {
			width: 66.66667%;
			font-size: 12px;
			font-size: 3.75vw;
			padding: 0.75em 1em 0.75em 0.5em;
			margin-left: auto;
			margin-right: auto; } }

.content {
	padding-top: 60px; }

.section-inner {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 50px 10px;
	box-sizing: border-box; }
	@media screen and (max-width: 750px) {
		.section-inner {
			max-width: none;
			padding: 6.66667vw 4vw; } }

/* page-container
----------------------------------------*/
.page-container {
	position: relative;
	width: 100%;
	overflow: hidden;
	background-color: #f8e990; }

/* share-buttons
----------------------------------------*/
.share-buttons {
	position: relative;
	width: 100%;
	text-align: center; }
	.share-buttons a {
		display: inline-block;
		cursor: pointer;
		width: 30px; }
		body.tablet .share-buttons a {
			width: 50px; }
		.share-buttons a img {
			width: 100%; }
		.share-buttons a + a {
			margin-left: 10px; }
			body.tablet .share-buttons a + a {
				margin-left: 20px; }
	@media screen and (max-width: 750px) {
		.share-buttons a {
			width: 35px; }
			.share-buttons a + a {
				margin-left: 10px; } }

/* override
------------------------------*/
/* .share-btn-area
----------------------------------------*/
.share-btn-area {
	position: relative;
	width: 100%;
	margin: 0 auto 0;
	padding: 50px 0;
	text-align: right;
	background-color: #000;
	max-width: none;
	padding-bottom: 110px;
	text-align: right; }
	@media screen and (max-width: 750px) {
		.share-btn-area {
			width: 92%; } }
	@media screen and (max-width: 750px) {
		.share-btn-area {
			width: 100%;
			padding: 6.66667vw 0 28vw; }
			.share-btn-area #page-top-btn {
				margin-right: 4%; } }
	.share-btn-area .share-btn-area-inner {
		position: relative;
		width: 100%;
		max-width: 1000px;
		margin: 0 auto; }
		@media screen and (max-width: 750px) {
			.share-btn-area .share-btn-area-inner {
				max-width: none;
				width: 92%; } }
	.share-btn-area .share-buttons {
		position: absolute;
		top: 50%;
		transform: translateY(-50%); }
	@media screen and (min-width: 751px) {
		.share-btn-area .page-top-btn {
			display: none; } }

.page-top-btn {
	background-color: transparent;
	border: 1px solid #FFF;
	box-sizing: border-box; }
	.page-top-btn:before {
		border-color: #FFF; }

@media screen and (max-width: 750px) {
	.page-top-btn {
		width: 35px;
		height: 35px; }
		.page-top-btn:before {
			width: 7px;
			height: 7px; } }

/* .loading
----------------------------------------*/
.loading {
	position: fixed;
	z-index: 1000;
	top: 0;
	width: 100vw;
	height: 100vh;
	pointer-events: none;
	background-color: #000;
	transition: opacity 1.0s ease-out;
	display: flex;
	justify-content: center;
	align-items: center; }
	.loading .loading-icon {
		transition: opacity 0.5s ease-out; }
		body.tablet .loading .loading-icon {
			transform: translateY(-5.33333vw); }
		@media screen and (max-width: 750px) {
			.loading .loading-icon {
				transform: translateY(-10.66667vw); } }
	.loading .scaling-squares-spinner {
		height: 65px;
		width: 65px;
		position: relative;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		animation: scaling-squares-animation 1250ms;
		animation-iteration-count: infinite;
		transform: rotate(0deg); }
	@media screen and (max-width: 750px) {
		.loading .scaling-squares-spinner-wrapper {
			transform: scale(0.8); } }
	.loading .scaling-squares-spinner .square {
		height: calc(65px * 0.25 / 1.3);
		width: calc(65px * 0.25 / 1.3);
		border: calc(65px * 0.04 / 1.3) solid #FFF;
		margin-right: auto;
		margin-left: auto;
		position: absolute;
		animation-duration: 1250ms;
		animation-iteration-count: infinite; }
	.loading .scaling-squares-spinner .square:nth-child(1) {
		animation-name: scaling-squares-spinner-animation-child-1; }
	.loading .scaling-squares-spinner .square:nth-child(2) {
		animation-name: scaling-squares-spinner-animation-child-2; }
	.loading .scaling-squares-spinner .square:nth-child(3) {
		animation-name: scaling-squares-spinner-animation-child-3; }
	.loading .scaling-squares-spinner .square:nth-child(4) {
		animation-name: scaling-squares-spinner-animation-child-4; }

@keyframes scaling-squares-animation {
	50% {
		transform: rotate(90deg); }
	100% {
		transform: rotate(180deg); } }

@keyframes scaling-squares-spinner-animation-child-1 {
	50% {
		transform: translate(150%, 150%) scale(2, 2); } }

@keyframes scaling-squares-spinner-animation-child-2 {
	50% {
		transform: translate(-150%, 150%) scale(2, 2); } }

@keyframes scaling-squares-spinner-animation-child-3 {
	50% {
		transform: translate(-150%, -150%) scale(2, 2); } }

@keyframes scaling-squares-spinner-animation-child-4 {
	50% {
		transform: translate(150%, -150%) scale(2, 2); } }
	.loading .indicator {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
		font-size: 24px;
		font-weight: bold;
		text-align: center; }
		@media screen and (max-width: 750px) {
			.loading .indicator {
				font-size: 12px;
				font-size: 3.75vw; } }
		.loading .indicator .per {
			font-size: 12px;
			margin-left: 0.25em; }
			@media screen and (max-width: 750px) {
				.loading .indicator .per {
					font-size: 8px;
					font-size: 2.5vw; } }
	.loading.ready {
		opacity: 0; }
		.loading.ready .loading-icon img {
			opacity: 0; }
	.loading.loaded .loading-icon {
		opacity: 0; }
	body.complete .loading {
		display: none; }

/* fixed-background
----------------------------------------*/
.fixed-background {
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background-image: url("../img/bg.jpg");
	background-repeat: repeat-x;
	background-size: auto 100%; }
	.fixed-background:after {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		right: 0;
		margin: auto;
		width: 1000px;
		height: 100%;
		background-color: rgba(233, 226, 198, 0.5);
		opacity: 0;
		transition: opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1); }
		@media screen and (max-width: 750px) {
			.fixed-background:after {
				width: 100%; } }
	.fixed-background.active:after {
		opacity: 1; }

/* content-menu
----------------------------------------*/
.content-menu {
	width: 100%;
	height: 60px;
	background-color: #000;
	z-index: 9;
	box-sizing: border-box; }
	@media screen and (min-width: 751px) {
		.content-menu {
			position: fixed;
			left: 0;
			bottom: 0; } }
	@media screen and (max-width: 750px) {
		.content-menu {
			position: relative;
			height: 18.66667vw;
			padding-top: 1.33333vw; }
			body.sp-menu-fixed .content-menu {
				position: fixed;
				left: 0;
				bottom: 0; } }
	.content-menu .content-menu-inner {
		width: 100%;
		height: 100%;
		max-width: 1000px;
		margin: 0 auto; }
		@media screen and (max-width: 750px) {
			.content-menu .content-menu-inner {
				max-width: none; } }
	.content-menu ul.content-menu-navi {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		width: 100%;
		height: 100%; }
		@media screen and (max-width: 750px) {
			.content-menu ul.content-menu-navi {
				justify-content: space-around; } }
		.content-menu ul.content-menu-navi li {
			height: 100%;
			padding: 0 1em;
			display: -webkit-flex;
			display: flex;
			-webkit-justify-content: center;
			justify-content: center;
			-webkit-align-items: center;
			align-items: center; }
			body.tablet .content-menu ul.content-menu-navi li {
				padding: 0 0.85em; }
			@media screen and (max-width: 750px) {
				.content-menu ul.content-menu-navi li {
					padding: 0;
					-webkit-align-items: flex-start;
					align-items: flex-start; } }
			.content-menu ul.content-menu-navi li a {
				position: relative;
				display: block;
				box-sizing: border-box;
				color: #FFF;
				text-decoration: none;
				white-space: nowrap; }
				@media screen and (min-width: 751px) {
					.content-menu ul.content-menu-navi li a {
						transition: opacity 0.3s ease-out; }
						.content-menu ul.content-menu-navi li a:hover {
							color: #FFF !important;
							text-decoration: none;
							opacity: 0.6; } }
				@media screen and (max-width: 750px) {
					.content-menu ul.content-menu-navi li a {
						-webkit-writing-mode: vertical-rl;
						-ms-writing-mode: tb-rl;
						writing-mode: vertical-rl;
						font-size: 10px;
						font-size: 3.125vw;
						line-height: 1.5em; } }
				.content-menu ul.content-menu-navi li a span {
					position: relative; }
	.content-menu .page-top-btn {
		position: absolute;
		right: 20px;
		top: 0;
		bottom: 0;
		margin: auto;
		width: 40px;
		height: 40px;
		background-color: transparent;
		border: 1px solid #FFF;
		box-sizing: border-box;
		opacity: 0;
		pointer-events: none; }
		@media screen and (min-width: 751px) {
			.content-menu .page-top-btn {
				transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }
				.content-menu .page-top-btn.active {
					opacity: 1;
					pointer-events: all; } }
		.content-menu .page-top-btn:before {
			border-color: #FFF; }

/* sec-title
----------------------------------------*/
.sec-title {
	position: relative;
	background-color: #f8e990; }
	@media screen and (min-width: 751px) {
		.sec-title {
			height: calc(100vh - 60px - 60px); }
			.sec-title:before {
				content: '';
				position: absolute;
				left: 50%;
				width: 50%;
				height: 100%;
				background-color: #0a2e3b; } }
	body.tablet .sec-title {
		height: calc(var(--vh, 1vh) * 100 - 60px - 60px); }
	@media screen and (max-width: 750px) {
		.sec-title {
			display: flex;
			justify-content: center;
			align-items: center;
			width: 100%;
			height: calc(var(--vh, 1vh) * 100 - 60px);
			background-image: url("../img/bg-sp.jpg");
			background-repeat: repeat-y;
			background-size: 100% auto; } }
	@media (orientation: landscape) and (max-width: 750px) {
		.sec-title {
			min-height: 106.66667vw; } }
	.sec-title .title-wrapper {
		position: relative;
		width: calc((100vh - 60px - 60px) * (2000 / 2804));
		height: 100%;
		margin: 0 auto; }
		@media screen and (min-width: 751px) {
			.sec-title .title-wrapper {
				background-image: url("../img/bg.jpg");
				background-repeat: no-repeat;
				background-size: 100% auto; } }
		body.tablet .sec-title .title-wrapper {
			width: calc((var(--vh, 1vh) * 100 - 60px - 60px) * (2000 / 2804)); }
		@media screen and (min-width: 1201px) {
			.sec-title .title-wrapper {
				transform-origin: center bottom;
				transform: scale(1.18); } }
		@media screen and (max-width: 750px) {
			.sec-title .title-wrapper {
				width: calc((var(--vh, 1vh) * 100 - 60px) * (2000 / 2804));
				max-width: 100%; } }
		@media (orientation: landscape) and (max-width: 750px) {
			.sec-title .title-wrapper {
				width: 100%; } }
		.sec-title .title-wrapper img {
			vertical-align: top; }
		.sec-title .title-wrapper .balloons {
			position: absolute;
			left: 2.25%;
			top: 16.19116%;
			width: 95.55%; }
			.sec-title .title-wrapper .balloons img {
				width: 100%; }
		.sec-title .title-wrapper .title {
			position: absolute;
			left: 3%;
			top: 2.10414%;
			width: 58.9%; }
			.sec-title .title-wrapper .title img {
				width: 100%; }
			@media screen and (min-width: 1201px) {
				.sec-title .title-wrapper .title {
					display: none; } }
		.sec-title .title-wrapper .illust {
			position: absolute;
			text-align: center;
			left: 14.9%;
			top: 28.99429%;
			width: 82.5%; }
			.sec-title .title-wrapper .illust img {
				width: 100%; }
		.sec-title .title-wrapper .director {
			position: absolute;
			text-align: center;
			left: 91.85%;
			top: 3.38802%;
			width: 3.95%; }
			.sec-title .title-wrapper .director img {
				width: 100%; }
			@media screen and (min-width: 1201px) {
				.sec-title .title-wrapper .director {
					display: none; } }
		.sec-title .title-wrapper .date {
			position: absolute;
			left: 71.65%;
			top: 48.9301%;
			width: 24.5%; }
			.sec-title .title-wrapper .date img {
				width: 100%; }
			@media screen and (min-width: 1201px) {
				.sec-title .title-wrapper .date {
					display: none; } }
		.sec-title .title-wrapper .otw-logo {
			position: absolute;
			left: 4.3%;
			top: 83.52354%;
			width: 18.2%; }
			.sec-title .title-wrapper .otw-logo img {
				width: 100%; }
			@media screen and (min-width: 1201px) {
				.sec-title .title-wrapper .otw-logo {
					display: none; } }
	.sec-title .pc-title-wrapper {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%; }
		@media screen and (max-width: 1200px) {
			.sec-title .pc-title-wrapper {
				display: none; } }
		.sec-title .pc-title-wrapper img {
			width: 100%; }
		.sec-title .pc-title-wrapper .title {
			position: absolute;
			left: 50px;
			top: 50px;
			width: 30%;
			max-width: 500px; }
			.sec-title .pc-title-wrapper .title:before {
				content: '';
				position: absolute;
				left: 72.67222%;
				top: 17.74786%;
				width: 26.49508%;
				height: 82.00734%;
				background-color: #0a2e3b; }
			.sec-title .pc-title-wrapper .title .title-inner {
				position: relative;
				width: 89.17487%; }
		.sec-title .pc-title-wrapper .otw-logo {
			position: absolute;
			left: 50px;
			bottom: 50px;
			width: 150px; }
		.sec-title .pc-title-wrapper .director {
			position: absolute;
			right: 50px;
			top: 50px;
			width: 30px; }
		.sec-title .pc-title-wrapper .date {
			position: absolute;
			right: 50px;
			bottom: 50px;
			width: 300px; }

/* sec-description
----------------------------------------*/
.sec-description {
	color: #FFF;
	background: #000; }
	.sec-description .section-inner {
		padding: 100px 0; }
		@media screen and (max-width: 750px) {
			.sec-description .section-inner {
				padding: 13.33333vw 0; } }
	.sec-description .text-block {
		text-align: center; }
		.sec-description .text-block .title {
			font-weight: bold;
			font-size: 20px;
			margin-bottom: 1em; }
			@media screen and (max-width: 750px) {
				.sec-description .text-block .title {
					font-size: 14px;
					font-size: 4.375vw; } }
			.sec-description .text-block .title span {
				display: block; }
				.sec-description .text-block .title span.title-sub {
					font-size: 80%; }
				.sec-description .text-block .title span.title-main {
					font-size: 110%; }
		.sec-description .text-block .director {
			margin-bottom: 1em; }
	.sec-description .bunkacho-area {
		display: flex;
		flex-direction: column;
		align-items: center;
		width: 600px;
		background-color: #FFF;
		border-radius: 10px;
		margin: 50px auto 0;
		padding: 30px; }
		@media screen and (max-width: 750px) {
			.sec-description .bunkacho-area {
				width: 92vw;
				margin-top: 6.66667vw;
				border-radius: 1.33333vw;
				padding: 4vw; } }
		.sec-description .bunkacho-area .bunkacho-item {
			align-items: center; }
			.sec-description .bunkacho-area .bunkacho-item + .bunkacho-item {
				margin-top: 1em; }
		.sec-description .bunkacho-area .bunkacho {
			display: flex; }
		.sec-description .bunkacho-area .bunkacho-icon {
			width: 70px; }
			@media screen and (max-width: 750px) {
				.sec-description .bunkacho-area .bunkacho-icon {
					width: 12vw; } }
		.sec-description .bunkacho-area p {
			font-size: 12px;
			margin-left: 1em;
			font-weight: bold;
			color: #000; }
			@media screen and (max-width: 750px) {
				.sec-description .bunkacho-area p {
					font-size: 8px;
					font-size: 2.5vw; } }
		.sec-description .bunkacho-area .gekidankyo {
			width: 350px; }
			@media screen and (max-width: 750px) {
				.sec-description .bunkacho-area .gekidankyo {
					width: 60vw; } }
			.sec-description .bunkacho-area .gekidankyo p {
				margin-left: 80px;
				margin-top: 0.5em; }
				@media screen and (max-width: 750px) {
					.sec-description .bunkacho-area .gekidankyo p {
						margin-left: 13.33333vw; } }

/* sec-story
----------------------------------------*/
.sec-story .stories {
	width: 100%;
	margin: 0 auto; }

.sec-story .story-head {
	font-size: 30px;
	text-align: center;
	margin-bottom: 1em;
	font-weight: bold; }
	@media screen and (max-width: 750px) {
		.sec-story .story-head {
			font-size: 15px;
			font-size: 4.6875vw;
			letter-spacing: -0.05em; } }

@media screen and (max-width: 750px) {
	.sec-story .story-body {
		font-size: 12px;
		font-size: 3.75vw; } }

.sec-story .story-body p + p {
	margin-top: 1em; }

.sec-story .story-body span {
	display: block; }

/* sec-preface
----------------------------------------*/
.sec-preface .preface-head {
	font-weight: bold;
	margin-bottom: 50px;
	text-align: center; }
	@media screen and (max-width: 750px) {
		.sec-preface .preface-head {
			margin-bottom: 20px; }
			.sec-preface .preface-head.center {
				text-align: center; } }
	.sec-preface .preface-head .title {
		display: block;
		margin-bottom: 0.25em;
		font-size: 20px; }
		@media screen and (max-width: 750px) {
			.sec-preface .preface-head .title {
				font-size: 15px;
				font-size: 4.6875vw;
				letter-spacing: -0.05em; } }
	.sec-preface .preface-head .director {
		font-size: 18px; }
		@media screen and (max-width: 750px) {
			.sec-preface .preface-head .director {
				font-size: 14px;
				font-size: 4.375vw; } }
	@media screen and (max-width: 750px) {
		.sec-preface .preface-head p {
			font-size: 12px;
			font-size: 3.75vw; } }
	.sec-preface .preface-head p + p {
		margin-top: 1em; }

.sec-preface .date {
	display: block;
	margin-top: 1em; }
	.sec-preface .date span {
		display: inline-block; }
		.sec-preface .date span + span {
			margin-left: 1em; }

.sec-preface .text-block + .text-block {
	margin-top: 1em; }

@media screen and (max-width: 750px) {
	.sec-preface p {
		font-size: 12px;
		font-size: 3.75vw; } }

.sec-preface p + p {
	margin-top: 1em; }

.sec-preface p.references {
	margin-top: 3em;
	font-size: 14px; }
	@media screen and (max-width: 750px) {
		.sec-preface p.references {
			font-size: 10px;
			font-size: 3.125vw; } }

.sec-preface .float-box {
	margin-bottom: 1em; }
	@media screen and (max-width: 750px) {
		.sec-preface .float-box {
			display: flex;
			justify-content: center;
			align-items: center; } }
	@media screen and (min-width: 751px) {
		.sec-preface .float-box p {
			margin-bottom: 1em; } }
	@media screen and (max-width: 750px) {
		.sec-preface .float-box p {
			flex: 1; } }
	.sec-preface .float-box .img {
		width: 300px;
		margin: 0 auto 0; }
		@media screen and (max-width: 750px) {
			.sec-preface .float-box .img {
				width: 38.66667vw;
				margin-left: 0.5em; } }

.sec-preface .accordion-sp {
	margin-top: 1em; }
	.sec-preface .accordion-sp .accordion-close {
		display: none; }
	.sec-preface .accordion-sp .accordion-trigger {
		display: none; }
	@media screen and (max-width: 750px) {
		.sec-preface .accordion-sp {
			margin-bottom: 0.66667vw; }
			.sec-preface .accordion-sp .accordion-hidden {
				display: none; }
			.sec-preface .accordion-sp .accordion-close,
			.sec-preface .accordion-sp .accordion-trigger {
				position: relative;
				display: block;
				background-color: #0a2e3b;
				color: #f8e990;
				padding: 0.25em 0;
				width: 53.33333vw;
				text-align: center;
				margin: 1em auto 0;
				border-radius: 1.33333vw; }
				.sec-preface .accordion-sp .accordion-close a,
				.sec-preface .accordion-sp .accordion-trigger a {
					display: inline-block;
					padding: 0.5em 2em;
					margin: 0 auto;
					line-height: 1em;
					color: #f8e990;
					font-size: 12px;
					font-size: 3.75vw;
					transition: all 0.3s ease-out; }
					.sec-preface .accordion-sp .accordion-close a:before,
					.sec-preface .accordion-sp .accordion-trigger a:before {
						content: '';
						display: inline-block;
						margin-right: 0.5em;
						font-size: 10px;
						font-size: 3.125vw; }
					.sec-preface .accordion-sp .accordion-close a.hovereffect,
					.sec-preface .accordion-sp .accordion-trigger a.hovereffect {
						opacity: 0.8; }
			.sec-preface .accordion-sp .accordion-trigger a {
				text-decoration: none; }
				.sec-preface .accordion-sp .accordion-trigger a:before {
					content: '\25BC';
					vertical-align: top; }
			.sec-preface .accordion-sp .accordion-close a {
				text-decoration: none; }
				.sec-preface .accordion-sp .accordion-close a:before {
					content: '\25B2';
					vertical-align: top; } }
	@media screen and (max-width: 750px) {
		.sec-preface .accordion-sp.active {
			margin-bottom: 6.66667vw; }
			.sec-preface .accordion-sp.active .accordion-trigger {
				display: none; }
			.sec-preface .accordion-sp.active .accordion-hidden {
				display: block; } }

/* sec-actors
----------------------------------------*/
.sec-actors .actors-area {
	position: relative; }

.sec-actors .actors-list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap; }
	@media screen and (min-width: 751px) {
		.sec-actors .actors-list {
			margin: 0 auto 0; }
			.sec-actors .actors-list:nth-of-type(2) {
				width: 830px; } }
	.sec-actors .actors-list .actor {
		position: relative;
		display: block;
		width: 150px;
		text-decoration: none;
		margin: 0 20px 30px;
		cursor: pointer; }
		@media screen and (max-width: 750px) {
			.sec-actors .actors-list .actor {
				width: 26.66667vw;
				margin: 0 2vw 4vw; } }
		.sec-actors .actors-list .actor figure {
			overflow: hidden;
			border-radius: 10px; }
			@media screen and (max-width: 750px) {
				.sec-actors .actors-list .actor figure {
					border-radius: 1.33333vw; } }
			.sec-actors .actors-list .actor figure img {
				display: block;
				transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1); }
		.sec-actors .actors-list .actor p {
			text-align: center;
			font-size: 20px;
			white-space: nowrap; }
			@media screen and (max-width: 750px) {
				.sec-actors .actors-list .actor p {
					font-size: 12px;
					font-size: 3.75vw;
					margin: 0 -1em 0; } }
		@media screen and (min-width: 751px) {
			body:not(.tablet) .sec-actors .actors-list .actor:hover img {
				transform: scale(1.05); } }

.modal-link-btn {
	display: inline-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 4px;
	border: 1px solid transparent;
	font-size: 1rem;
	height: 2rem;
	cursor: pointer;
	transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }
	@media screen and (max-width: 750px) {
		.modal-link-btn {
			border-radius: 1.6vw;
			height: 2.5rem; } }

.modal-detail .modal-actor-text .modal-link-btn {
	width: 100px; }
	@media screen and (min-width: 751px) {
		.modal-detail .modal-actor-text .modal-link-btn {
			transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); } }
	@media screen and (max-width: 750px) {
		.modal-detail .modal-actor-text .modal-link-btn {
			width: 26.66667vw; } }
	.modal-detail .modal-actor-text .modal-link-btn + .modal-link-btn {
		margin-left: 20px; }
		@media screen and (max-width: 750px) {
			.modal-detail .modal-actor-text .modal-link-btn + .modal-link-btn {
				margin-left: 2.66667vw; } }

.modal-detail .modal-actor-text .website-btn {
	background-color: #0a2e3b;
	color: #f8e990; }
	.modal-detail .modal-actor-text .website-btn:hover {
		background-color: #030c0f; }

.modal-detail .modal-actor-text .twitter-btn {
	background-color: #19a1f2;
	color: #f8e990; }
	.modal-detail .modal-actor-text .twitter-btn:hover {
		background-color: #0c84cc; }

.modal-detail .modal-actor-text .facebook-btn {
	background-color: #4167b2;
	color: #f8e990; }
	.modal-detail .modal-actor-text .facebook-btn:hover {
		background-color: #33518d; }

.modal-detail .modal-actor-text .instagram-btn {
	background-color: #E1306C;
	color: #f8e990; }
	.modal-detail .modal-actor-text .instagram-btn:hover {
		background-color: #c21c54; }

.modal-detail .modal-actor-text .blog-btn {
	background-color: #2d8c3c;
	color: #f8e990; }
	.modal-detail .modal-actor-text .blog-btn:hover {
		background-color: #21652b; }

.modal-detail .modal-actor-text .ticket-btn {
	background-color: #0a2e3b;
	color: #f8e990;
	width: 200px; }
	@media screen and (max-width: 750px) {
		.modal-detail .modal-actor-text .ticket-btn {
			width: 100%; } }
	.modal-detail .modal-actor-text .ticket-btn:hover {
		background-color: #030c0f; }

/* magnific-popup
----------------------------------------*/
/**
 * Simple fade transition,
 */
.mfp-fade.mfp-bg {
	opacity: 0;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out; }

.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.7; }

.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0; }

.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out; }

.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
	opacity: 1; }

.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
	opacity: 0; }

.mfp-container {
	padding: 0; }
	.mfp-container .mfp-content .mfp-iframe-holder .mfp-close,
	.mfp-container .mfp-content button.mfp-close {
		opacity: 1;
		font-size: 0;
		width: 44px;
		height: 44px;
		top: -64px;
		opacity: 1;
		transition: opacity 0.3s ease-out; }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before, .mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
		.mfp-container .mfp-content button.mfp-close:before,
		.mfp-container .mfp-content button.mfp-close:after {
			content: '';
			position: absolute;
			left: -21%;
			top: 50%;
			width: 63px;
			height: 2px;
			background-color: #f8e990; }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before,
		.mfp-container .mfp-content button.mfp-close:before {
			-webkit-transform: rotateZ(-45deg);
			transform: rotateZ(-45deg); }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
		.mfp-container .mfp-content button.mfp-close:after {
			-webkit-transform: rotateZ(45deg);
			transform: rotateZ(45deg); }
		.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:hover,
		.mfp-container .mfp-content button.mfp-close:hover {
			opacity: 0.5; }
		@media screen and (max-width: 750px) {
			.mfp-container .mfp-content .mfp-iframe-holder .mfp-close,
			.mfp-container .mfp-content button.mfp-close {
				width: 6.66667vw;
				height: 6.66667vw;
				top: 4vw;
				right: 4vw;
				background-color: transparent; }
				.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before, .mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
				.mfp-container .mfp-content button.mfp-close:before,
				.mfp-container .mfp-content button.mfp-close:after {
					content: '';
					position: absolute;
					left: -21%;
					top: 50%;
					width: 10vw;
					height: 2px;
					background-color: #0a2e3b; }
				.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:before,
				.mfp-container .mfp-content button.mfp-close:before {
					-webkit-transform: rotateZ(-45deg);
					transform: rotateZ(-45deg); }
				.mfp-container .mfp-content .mfp-iframe-holder .mfp-close:after,
				.mfp-container .mfp-content button.mfp-close:after {
					-webkit-transform: rotateZ(45deg);
					transform: rotateZ(45deg); } }
	@media screen and (max-width: 750px) {
		.mfp-container .mfp-content .movie-modal button.mfp-close {
			top: -10.66667vw;
			right: 1.33333vw; } }

@media screen and (max-width: 750px) {
	.movie-mfp .mfp-content {
		width: 92vw; } }

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
	right: 0; }

/* modal window
----------------------------------------*/
.inline-popup {
	position: relative;
	max-width: 800px;
	width: 100%;
	margin: 0 auto; }
	@media screen and (max-width: 750px) {
		.inline-popup {
			max-width: none;
			width: 96vw; } }
	.inline-popup .modal-content {
		background-color: #f8e990; }

.modal-content {
	position: relative;
	border-radius: 10px;
	/* IE6-9 */ }
	@media screen and (max-width: 750px) {
		.modal-content {
			border-radius: 1.33333vw; } }

.modal-detail {
	position: relative;
	padding: 30px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	box-sizing: border-box; }
	@media screen and (max-width: 750px) {
		.modal-detail {
			-webkit-flex-wrap: wrap;
			flex-wrap: wrap;
			padding: 4vw;
			font-size: 12px;
			font-size: 3.75vw; } }
	.modal-detail .modal-actor-image {
		position: relative;
		-webkit-touch-callout: 'none';
		-webkit-user-select: 'none';
		-moz-touch-callout: 'none';
		-moz-user-select: 'none';
		touch-callout: 'none';
		user-select: 'none';
		width: 300px; }
		@media screen and (max-width: 750px) {
			.modal-detail .modal-actor-image {
				width: 66.66667vw;
				margin: 0 auto; } }
		.modal-detail .modal-actor-image img {
			vertical-align: top; }
		.modal-detail .modal-actor-image .front {
			position: relative;
			opacity: 1;
			border-radius: 10px;
			overflow: hidden; }
			@media screen and (max-width: 750px) {
				.modal-detail .modal-actor-image .front {
					border-radius: 1.33333vw; } }
	.modal-detail .modal-actor-text {
		width: 470px;
		padding-left: 30px;
		display: -webkit-flex;
		display: flex;
		-webkit-align-content: space-between;
		align-content: space-between;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap; }
		@media screen and (max-width: 750px) {
			.modal-detail .modal-actor-text {
				padding-left: 0;
				width: 100%;
				-webkit-align-content: flex-start;
				align-content: flex-start; } }
		.modal-detail .modal-actor-text a {
			color: inherit; }
	.modal-detail .actor-detail {
		width: 100%; }
		.modal-detail .actor-detail .name {
			font-size: 30px;
			font-weight: bold; }
			@media screen and (max-width: 750px) {
				.modal-detail .actor-detail .name {
					font-size: 24px;
					font-size: 7.5vw;
					text-align: center;
					margin-top: 0.5em; } }
		.modal-detail .actor-detail .ruby {
			margin-bottom: 0.5em; }
			@media screen and (max-width: 750px) {
				.modal-detail .actor-detail .ruby {
					margin-bottom: 1em;
					text-align: center; } }
		.modal-detail .actor-detail .belonging + .link {
			margin-top: 0.5em; }
	.modal-detail .links {
		width: 100%;
		display: flex;
		margin-top: 1em; }

/* sec-schedule
----------------------------------------*/
.sec-schedule .table-group {
	margin-bottom: 20px; }
	@media screen and (max-width: 750px) {
		.sec-schedule .table-group {
			font-size: 12px;
			font-size: 3.75vw;
			margin-bottom: 2.66667vw; } }
	.sec-schedule .table-group .guest-info {
		font-size: 12px;
		padding: 0.5em 0; }
		@media screen and (max-width: 750px) {
			.sec-schedule .table-group .guest-info {
				font-size: 10px;
				font-size: 3.125vw; } }
	.sec-schedule .table-group p span {
		display: inline-block; }
		.sec-schedule .table-group p span + span {
			margin-left: 2em; }
			@media screen and (min-width: 751px) {
				.sec-schedule .table-group p span + span {
					margin-right: 2em; } }

.sec-schedule tbody,
.sec-schedule td,
.sec-schedule th,
.sec-schedule thead,
.sec-schedule tr {
	box-sizing: border-box; }

.sec-schedule table {
	border-collapse: collapse;
	table-layout: fixed;
	width: 100%;
	text-align: center; }
	.sec-schedule table td,
	.sec-schedule table th {
		display: table-cell; }

.sec-schedule .afterevent-head {
	font-size: 20px;
	text-align: center;
	margin: 2em auto 1em; }
	@media screen and (max-width: 750px) {
		.sec-schedule .afterevent-head {
			font-size: 16px;
			font-size: 5vw; } }
	@media screen and (max-width: 750px) {
		.sec-schedule .afterevent-head span {
			font-size: 14px;
			font-size: 4.375vw; } }

.sec-schedule .legend {
	display: flex;
	padding: 0.5em 0; }
	.sec-schedule .legend div + div {
		margin-left: 1em; }

.sec-schedule .special .star {
	color: #e4007f; }

.sec-schedule :-ms-lang(x)::-ms-backdrop, .sec-schedule span.star {
	line-height: 20px; }

.sec-schedule .note {
	display: flex; }
	@media screen and (max-width: 750px) {
		.sec-schedule .note {
			padding: 0.5em 0; } }
	.sec-schedule .note span {
		display: inline-block; }
		.sec-schedule .note span + span {
			margin-left: 1em !important; }

/* schedule-table
----------------------------------------*/
.schedule-table {
	border-top-width: 1px;
	border-top-style: solid;
	border-left-width: 1px;
	border-left-style: solid;
	margin-bottom: 0.5em; }
	.schedule-table tr, .schedule-table th, .schedule-table td, .schedule-table caption {
		text-align: center; }
	.schedule-table a {
		text-decoration: none; }
	.schedule-table span.star {
		text-align: center;
		margin: 0 0.25em; }
	.schedule-table span.strike {
		text-decoration: line-through; }

@media screen and (min-width: 751px) {
	.schedule-table {
		line-height: 1.5em; }
		.schedule-table td,
		.schedule-table th,
		.schedule-table tr {
			border-bottom-width: 1px;
			border-bottom-style: solid;
			border-right-width: 1px;
			border-right-style: solid; }
		.schedule-table td,
		.schedule-table th {
			padding: 5px 0; }
		.schedule-table th span {
			display: block; }
		.schedule-table th.head {
			width: 100px; }
		.schedule-table a {
			display: block;
			color: inherit; }
			.schedule-table a span {
				display: inline-block; }
			.schedule-table a:hover > span {
				animation: star-jump 0.4s ease-in-out; } }

@keyframes star-jump {
	0% {
		transform: translateY(0); }
	50% {
		transform: translateY(-5px); }
	100% {
		transform: translateY(0); } }

@media screen and (max-width: 750px) {
	p.notice {
		font-size: 11px;
		font-size: 3.4375vw; }
	.schedule-table {
		width: 100%; }
		.schedule-table tr {
			display: block;
			float: left; }
			.schedule-table tr td,
			.schedule-table tr th {
				display: block;
				border-bottom-width: 1px;
				border-bottom-style: solid;
				padding: 1.33333vw 0;
				height: 9.06667vw;
				line-height: 6vw; }
		.schedule-table th span {
			margin-left: 0.5em; }
		.schedule-table thead {
			display: block;
			float: left;
			width: 25%;
			border-right-width: 1px;
			border-right-style: solid; }
			.schedule-table thead tr {
				width: 100%; }
				.schedule-table thead tr th {
					line-height: 6vw; }
		.schedule-table tbody {
			display: block;
			float: left;
			width: 75%; }
			.schedule-table tbody tr {
				width: 33.3%;
				border-right-width: 1px;
				border-right-style: solid; }
			.schedule-table tbody tr, .schedule-table tbody td {
				vertical-align: middle; } }

.note-list li {
	margin-left: 1em;
	text-indent: -1em; }
	.note-list li.strike {
		text-decoration: line-through; }

/* event-table
----------------------------------------*/
.event-table {
	margin-bottom: 20px; }
	@media screen and (max-width: 750px) {
		.event-table {
			margin-bottom: 6.66667vw; } }
	.event-table tr, .event-table th, .event-table td, .event-table caption {
		text-align: center; }
	.event-table tr {
		border-width: 1px;
		border-style: solid; }
	.event-table td.head {
		border-bottom-width: 1px;
		border-bottom-style: solid; }
	.event-table .star {
		vertical-align: top; }
	.event-table .changed {
		display: inline-block; }
	.event-table.special {
		position: relative; }
		.event-table.special tr:first-child td:nth-child(2) {
			background-color: rgba(228, 0, 127, 0.2); }
	.event-table span.star {
		display: inline-block;
		margin-right: 0.5em; }
	@media screen and (max-width: 750px) {
		.event-table span.cross {
			font-size: 8px;
			font-size: 2.5vw;
			display: inline-block;
			vertical-align: middle; } }

@media screen and (min-width: 751px) {
	.event-table td.head {
		width: 180px; }
	.event-table td {
		vertical-align: middle;
		padding: 1em;
		border-right-width: 1px;
		border-right-style: solid; } }

@media screen and (max-width: 750px) {
	table.event-table td,
	table.event-table th,
	table.event-table tr {
		display: block; }
	table.event-table tr:nth-child(2) {
		border-top: none;
		border-bottom: none; }
	table.event-table td,
	table.event-table th {
		padding-top: 0.5em; }
	table.event-table td.head {
		padding: 0.5em 0; }
	table.event-table td:last-child {
		padding-bottom: 0.5em; } }

@media screen and (max-width: 750px) {
	.event-table.event-04 tr:nth-child(n + 2) {
		border-top-width: 1px;
		border-top-style: solid;
		margin-top: 0.66667vw; } }

.event-table .strike {
	text-decoration: line-through; }

.event-table .canceled {
	position: relative;
	display: inline-block;
	padding: 0 0.5em;
	margin-left: 0.5em;
	background-color: rgba(215, 21, 24, 0.3); }

.event-table .event-detail {
	padding: 0.5em 1em; }
	.event-table .event-detail td {
		text-align: left; }
	@media screen and (max-width: 750px) {
		.event-table .event-detail {
			padding-top: 0;
			padding-bottom: 0; } }
	@media screen and (max-width: 750px) {
		.event-table .event-detail .sp-accordion {
			max-height: 0;
			transition: max-height 0.2s ease-out;
			overflow: hidden; } }
	.event-table .event-detail .sp-detail-btn {
		display: none; }
		@media screen and (max-width: 750px) {
			.event-table .event-detail .sp-detail-btn {
				display: block;
				text-align: center; }
				.event-table .event-detail .sp-detail-btn div {
					display: inline-block; }
					.event-table .event-detail .sp-detail-btn div span:nth-child(1) {
						display: block; }
					.event-table .event-detail .sp-detail-btn div span:nth-child(2) {
						display: none; } }
	@media screen and (max-width: 750px) {
		.event-table .event-detail.is-open {
			padding-top: 0.5em;
			padding-bottom: 0.5em; }
			.event-table .event-detail.is-open .sp-accordion {
				transition: max-height 0.3s ease-out;
				max-height: 200vw; }
			.event-table .event-detail.is-open .sp-detail-btn {
				margin-top: 0.5em; }
				.event-table .event-detail.is-open .sp-detail-btn div span:nth-child(1) {
					display: none; }
				.event-table .event-detail.is-open .sp-detail-btn div span:nth-child(2) {
					display: block; } }

.saturday {
	background-color: rgba(135, 149, 186, 0.3); }

.holiday,
.sunday {
	background-color: rgba(215, 21, 24, 0.3); }

/* ticket-section
----------------------------------------*/
.sec-ticket .sec-ticket-inner {
	position: relative; }

@media screen and (min-width: 751px) {
	.sec-ticket .ticketing {
		width: 100%;
		margin-bottom: 3em; }
		.sec-ticket .ticketing .head {
			display: inline-block;
			border-width: 1px;
			border-style: solid;
			padding: 5px 10px;
			margin-bottom: 20px; }
		.sec-ticket .ticketing dl {
			display: table;
			table-layout: fixed;
			margin-bottom: 1em; }
			.sec-ticket .ticketing dl dt {
				display: table-cell;
				width: 250px; }
			.sec-ticket .ticketing dl dd {
				display: table-cell; } }

@media screen and (max-width: 750px) {
	.sec-ticket .ticketing {
		width: 100%;
		margin-bottom: 5.33333vw;
		font-size: 12px;
		font-size: 3.75vw; }
		.sec-ticket .ticketing .head {
			margin-bottom: 1em;
			width: 100%;
			background-color: #f8e990;
			padding: 0.5em 0 0.5em 0.5em;
			color: #0a2e3b; }
		.sec-ticket .ticketing dl {
			display: table;
			width: 100%; }
			.sec-ticket .ticketing dl dt {
				display: table-cell;
				width: 50%; }
			.sec-ticket .ticketing dl dd {
				display: table-cell; }
		.sec-ticket .ticketing .notice {
			margin-top: 1em; } }

.sec-ticket .ticketing .suspend {
	margin-left: 1em;
	text-indent: -1em; }

@media screen and (max-width: 750px) {
	.sec-ticket .ticketing.price dl dt {
		width: 70%; } }

.sec-ticket .live-info p {
	margin-top: 2em;
	margin-bottom: 1em;
	text-indent: 0.5em; }
	@media screen and (max-width: 750px) {
		.sec-ticket .live-info p {
			margin-top: -1em;
			text-indent: 0; } }

.sec-ticket .live {
	padding: 1em 1em;
	margin: 2em 0;
	background-color: #0a2e3b;
	box-sizing: border-box; }
	.sec-ticket .live .live-inner {
		padding: 1em 1em;
		border-wdth: 1px;
		border-style: dashed;
		box-sizing: border-box; }
		@media screen and (max-width: 750px) {
			.sec-ticket .live .live-inner {
				border-width: 1px; } }
	@media screen and (max-width: 750px) {
		.sec-ticket .live p {
			margin-bottom: 0.5em; } }
	.sec-ticket .live .note-list li {
		margin-left: 1em;
		text-indent: -1em; }

.sec-ticket .live-head {
	background-color: #f8e990; }
	@media screen and (min-width: 751px) {
		.sec-ticket .live-head {
			display: inline-block;
			border-width: 1px;
			border-style: solid;
			padding: 5px 10px;
			width: 100%;
			margin-bottom: 20px;
			box-sizing: border-box;
			text-align: center;
			font-size: 20px; } }
	@media screen and (max-width: 750px) {
		.sec-ticket .live-head {
			margin-bottom: 1em;
			width: 100%;
			padding: 0.5em 0 0.5em 0.5em;
			text-align: center;
			font-size: 14px;
			font-size: 4.375vw;
			box-sizing: border-box; } }

@media screen and (max-width: 750px) {
	.sec-ticket .live dl,
	.sec-ticket .contact dl,
	.sec-ticket .playguide dl {
		display: block;
		margin-bottom: 1em; }
		.sec-ticket .live dl dt,
		.sec-ticket .contact dl dt,
		.sec-ticket .playguide dl dt {
			display: inline-block;
			width: auto;
			padding: 0.25em 0.5em;
			border-width: 1px;
			border-style: solid;
			margin-bottom: 0.5em;
			box-sizing: border-box; }
			.sec-ticket .live dl dt.p-right,
			.sec-ticket .contact dl dt.p-right,
			.sec-ticket .playguide dl dt.p-right {
				padding-right: 1em; }
			.sec-ticket .live dl dt.no-p-right,
			.sec-ticket .contact dl dt.no-p-right,
			.sec-ticket .playguide dl dt.no-p-right {
				padding-right: 0; }
		.sec-ticket .live dl dd,
		.sec-ticket .contact dl dd,
		.sec-ticket .playguide dl dd {
			display: block; }
			.sec-ticket .live dl dd p + p,
			.sec-ticket .contact dl dd p + p,
			.sec-ticket .playguide dl dd p + p {
				margin-top: 0.5em; } }

.sec-ticket .handbills-block {
	position: absolute;
	right: 0;
	top: 0; }
	@media screen and (max-width: 750px) {
		.sec-ticket .handbills-block {
			position: relative;
			right: auto;
			top: auto; } }
	.sec-ticket .handbills-block .handbill {
		position: relative;
		display: block;
		width: 200px;
		margin: 0 auto;
		border-width: 1px;
		border-style: solid; }
		.sec-ticket .handbills-block .handbill img {
			width: 100%;
			vertical-align: top; }
		@media screen and (min-width: 751px) {
			.sec-ticket .handbills-block .handbill img {
				transition: opacity 0.3s ease-out; }
			.sec-ticket .handbills-block .handbill:hover img {
				opacity: 0.8; } }
		@media screen and (max-width: 750px) {
			.sec-ticket .handbills-block .handbill {
				width: 33.33333vw;
				border-width: 0.26667vw;
				margin-bottom: 0.66667vw; } }
	.sec-ticket .handbills-block .pdf-info {
		text-align: center; }

/* sec-live
----------------------------------------*/
@media screen and (max-width: 750px) {
	.sec-live .live-information {
		font-size: 12px;
		font-size: 3.75vw; } }

.sec-live .live-information .main-list {
	margin-bottom: 3em; }
	@media screen and (max-width: 750px) {
		.sec-live .live-information .main-list {
			margin-bottom: 2em; } }
	.sec-live .live-information .main-list dl > div {
		display: flex; }
		@media screen and (max-width: 750px) {
			.sec-live .live-information .main-list dl > div {
				display: block; } }
		.sec-live .live-information .main-list dl > div + div {
			margin-top: 1em; }
			@media screen and (max-width: 750px) {
				.sec-live .live-information .main-list dl > div + div {
					margin-top: 2em; } }
		.sec-live .live-information .main-list dl > div dt.live-head {
			width: 280px;
			font-size: 18px;
			text-indent: -0.5em; }
			@media screen and (max-width: 750px) {
				.sec-live .live-information .main-list dl > div dt.live-head {
					width: 100%;
					font-size: 14px;
					font-size: 4.375vw;
					background-color: #f8e990;
					padding: 0.25em 0.5em;
					box-sizing: border-box;
					margin-bottom: 0.5em; } }
		.sec-live .live-information .main-list dl > div dd p {
			margin-bottom: 0.5em; }
			@media screen and (max-width: 750px) {
				.sec-live .live-information .main-list dl > div dd p {
					margin-bottom: 1em; } }
		.sec-live .live-information .main-list dl > div dd .note-list {
			font-size: 14px; }
			@media screen and (max-width: 750px) {
				.sec-live .live-information .main-list dl > div dd .note-list {
					font-size: 10px;
					font-size: 3.125vw; } }

.sec-live .live-information .price {
	margin-bottom: 3em; }
	@media screen and (max-width: 750px) {
		.sec-live .live-information .price {
			background-color: #f8e990;
			padding: 0.25em 0.5em;
			box-sizing: border-box; } }

.sec-live .live-information .sub-list dl > div {
	display: flex; }
	@media screen and (max-width: 750px) {
		.sec-live .live-information .sub-list dl > div {
			display: block; } }
	.sec-live .live-information .sub-list dl > div + div {
		margin-top: 1em; }
		@media screen and (max-width: 750px) {
			.sec-live .live-information .sub-list dl > div + div {
				margin-top: 2em; } }
	.sec-live .live-information .sub-list dl > div dt {
		width: 280px; }
		@media screen and (max-width: 750px) {
			.sec-live .live-information .sub-list dl > div dt {
				width: 100%;
				padding: 0.25em 0.5em;
				box-sizing: border-box;
				border-width: 1px;
				border-style: solid;
				margin-bottom: 0.5em; } }
	.sec-live .live-information .sub-list dl > div dd .note-list {
		font-size: 14px; }
		@media screen and (max-width: 750px) {
			.sec-live .live-information .sub-list dl > div dd .note-list {
				font-size: 10px;
				font-size: 3.125vw; } }

@media screen and (min-width: 751px) {
	.sec-live .live-information .sub-list .notice {
		font-size: 15px;
		text-indent: -0.15em; } }

@media screen and (max-width: 750px) {
	.sec-live .live-information .sub-list .notice {
		text-align: center;
		text-indent: 0.5em; } }

.sec-live .live-information .apply-btn {
	position: relative;
	display: block;
	text-indent: 1em;
	margin-top: 2em;
	line-height: 1.5em;
	padding: 10px 20px 10px 10px;
	border-radius: 3px;
	text-decoration: none !important;
	background-color: #0a2e3b;
	color: #f8e990 !important;
	width: 250px;
	transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
	border-radius: 5px;
	text-align: center; }
	.sec-live .live-information .apply-btn.hovereffect {
		opacity: 0.8; }
	.sec-live .live-information .apply-btn:after {
		display: block;
		content: '';
		position: absolute;
		top: 50%;
		width: 6px;
		height: 6px;
		border-right: 2px solid #f8e990;
		border-bottom: 2px solid #f8e990;
		-webkit-transform: translateY(-50%) rotate(-45deg);
		transform: translateY(-50%) rotate(-45deg); }
	@media screen and (min-width: 751px) {
		.sec-live .live-information .apply-btn:hover {
			background-color: #030c0f; }
			.sec-live .live-information .apply-btn:hover span {
				text-decoration: none !important; } }
	@media screen and (max-width: 750px) {
		.sec-live .live-information .apply-btn {
			width: 66.66667%;
			font-size: 12px;
			font-size: 3.75vw;
			padding: 0.75em 1em 0.75em 0.5em;
			margin-left: auto;
			margin-right: auto; } }

/* measures
----------------------------------------*/
.sec-measures .measures .requests {
	overflow: hidden;
	border-width: 1px;
	border-style: solid;
	padding: 30px; }
	@media screen and (max-width: 750px) {
		.sec-measures .measures .requests {
			padding: 4vw; } }
	.sec-measures .measures .requests .requests-head-block {
		text-align: center;
		margin-bottom: 30px; }
		@media screen and (max-width: 750px) {
			.sec-measures .measures .requests .requests-head-block {
				margin-bottom: 4vw; } }
		.sec-measures .measures .requests .requests-head-block .requests-head {
			font-size: 30px;
			line-height: 1.5em; }
			@media screen and (max-width: 750px) {
				.sec-measures .measures .requests .requests-head-block .requests-head {
					font-size: 18px;
					font-size: 5.625vw; } }
			.sec-measures .measures .requests .requests-head-block .requests-head span {
				font-size: 24px; }
				@media screen and (max-width: 750px) {
					.sec-measures .measures .requests .requests-head-block .requests-head span {
						font-size: 13px;
						font-size: 4.0625vw; } }
	.sec-measures .measures .requests p.date {
		text-align: right;
		margin-bottom: 2em; }
	.sec-measures .measures .requests p {
		text-align: center; }
		@media screen and (max-width: 750px) {
			.sec-measures .measures .requests p {
				text-align: left;
				font-size: 12px;
				font-size: 3.75vw; } }
		.sec-measures .measures .requests p.message-from {
			text-align: right; }
	@media screen and (max-width: 750px) {
		.sec-measures .measures .requests ul + p {
			font-size: 11px;
			font-size: 3.4375vw; } }
	.sec-measures .measures .requests ul {
		padding-bottom: 30px;
		border-bottom-width: 1px;
		border-bottom-style: dotted;
		margin-bottom: 30px; }
		@media screen and (max-width: 750px) {
			.sec-measures .measures .requests ul {
				font-size: 12px;
				font-size: 3.75vw;
				padding-bottom: 4vw;
				margin-bottom: 4vw; } }
		.sec-measures .measures .requests ul li {
			margin-left: 1.2em;
			text-indent: -1.2em; }
			.sec-measures .measures .requests ul li + li {
				margin-top: 0.5em; }
		.sec-measures .measures .requests ul a {
			text-decoration: underline; }
			.sec-measures .measures .requests ul a:hover {
				text-decoration: none;
				color: inherit; }
	.sec-measures .measures .requests .theater-guidance {
		text-align: left; }
		.sec-measures .measures .requests .theater-guidance p {
			text-align: left;
			margin-top: 1em; }

.sec-measures .measures span.marker {
	background: linear-gradient(transparent 60%, #0a2e3b 60%); }

/* sec-theater
----------------------------------------*/
.sec-theater .theater-name {
	font-size: 20px;
	margin-bottom: 0.5em; }
	@media screen and (max-width: 750px) {
		.sec-theater .theater-name {
			font-size: 14px;
			font-size: 4.375vw;
			margin-bottom: 0.5em; } }
	.sec-theater .theater-name span span {
		font-size: 16px; }
		@media screen and (max-width: 750px) {
			.sec-theater .theater-name span span {
				font-size: 12px;
				font-size: 3.75vw; } }

.sec-theater .theater-info {
	position: relative;
	width: 100%;
	display: table; }
	@media screen and (max-width: 750px) {
		.sec-theater .theater-info {
			display: block; } }

.sec-theater .map-image {
	display: table-cell;
	width: 55.20833%; }
	@media screen and (max-width: 750px) {
		.sec-theater .map-image {
			display: block;
			width: 100%;
			margin-bottom: 1em; } }
	.sec-theater .map-image .map {
		width: 100%;
		box-sizing: border-box;
		overflow: hidden;
		margin-bottom: 0.5em;
		background-color: #FFF; }
	.sec-theater .map-image img {
		width: 100%; }
	.sec-theater .map-image .google-map {
		margin-bottom: 1em; }

.sec-theater .access-info {
	margin-bottom: 1em; }

.sec-theater .map-detail {
	display: table-cell;
	vertical-align: top;
	padding-left: 20px; }
	@media screen and (max-width: 750px) {
		.sec-theater .map-detail {
			display: block;
			padding-left: 0;
			font-size: 12px;
			font-size: 3.75vw; } }

/* sec-staff
----------------------------------------*/
.sec-staff .staff-list:after {
	content: '';
	display: block;
	clear: both; }

.sec-staff .staff-list li {
	float: left;
	width: 33.3%;
	word-break: break-all; }
	.sec-staff .staff-list li.col2 {
		width: 66.6%; }
		@media screen and (max-width: 750px) {
			.sec-staff .staff-list li.col2 {
				width: 100%; } }
	.sec-staff .staff-list li.col3 {
		width: 100%; }
		.sec-staff .staff-list li.col3 > dl {
			display: table; }
			.sec-staff .staff-list li.col3 > dl > dd {
				display: table-cell; }
			.sec-staff .staff-list li.col3 > dl > dt {
				display: table-cell;
				white-space: nowrap; }
	@media screen and (max-width: 750px) {
		.sec-staff .staff-list li.sp-block {
			margin-top: 1em;
			margin-bottom: 1em; }
			.sec-staff .staff-list li.sp-block > dl > dt {
				display: block; }
			.sec-staff .staff-list li.sp-block > dl > dd {
				display: block;
				padding-left: 1em; } }

@media screen and (max-width: 750px) {
	.sec-staff .staff-list {
		font-size: 12px;
		font-size: 3.75vw; }
		.sec-staff .staff-list li {
			float: none;
			width: 100%; } }

.sec-staff .bunkacho-logo {
	width: 40px;
	display: inline-block;
	vertical-align: middle;
	margin-right: 0.5em; }
	@media screen and (max-width: 750px) {
		.sec-staff .bunkacho-logo {
			width: 10.66667vw; } }

.sec-staff .bunkacho-list {
	margin-top: 2em;
	display: flex;
	justify-content: center;
	align-items: center; }
	@media screen and (max-width: 750px) {
		.sec-staff .bunkacho-list {
			margin-top: 1em; } }
	.sec-staff .bunkacho-list .bunkacho-item {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%; }
		@media screen and (max-width: 750px) {
			.sec-staff .bunkacho-list .bunkacho-item {
				flex-wrap: wrap; } }
		.sec-staff .bunkacho-list .bunkacho-item + .bunkacho-item {
			margin-top: 1em; }
		.sec-staff .bunkacho-list .bunkacho-item .bunkacho-icon {
			width: 54px;
			margin-right: 10px;
			text-align: center; }
			@media screen and (max-width: 750px) {
				.sec-staff .bunkacho-list .bunkacho-item .bunkacho-icon {
					width: 14.4vw;
					margin: 0; } }
			.sec-staff .bunkacho-list .bunkacho-item .bunkacho-icon span {
				display: inline-block;
				width: 54px; }
				@media screen and (max-width: 750px) {
					.sec-staff .bunkacho-list .bunkacho-item .bunkacho-icon span {
						display: inline-block;
						width: 10.93333vw; } }
		.sec-staff .bunkacho-list .bunkacho-item.geijutsusai span {
			width: 40px; }
			@media screen and (max-width: 750px) {
				.sec-staff .bunkacho-list .bunkacho-item.geijutsusai span {
					width: 8vw; } }
		.sec-staff .bunkacho-list .bunkacho-item p {
			text-align: left; }
			@media screen and (max-width: 750px) {
				.sec-staff .bunkacho-list .bunkacho-item p {
					text-align: center; } }

/* sec-provincial
----------------------------------------*/
.sec-provincial {
	padding-bottom: 100px; }
	@media screen and (max-width: 750px) {
		.sec-provincial {
			padding-bottom: 20vw; } }
	.sec-provincial .provincial + .provincial {
		margin-top: 100px; }
		@media screen and (max-width: 750px) {
			.sec-provincial .provincial + .provincial {
				margin-top: 13.33333vw; } }
	.sec-provincial .provincial-head {
		font-size: 24px;
		font-weight: bold;
		border-width: 1px;
		border-bottom-style: solid;
		margin-bottom: 20px; }
		@media screen and (max-width: 750px) {
			.sec-provincial .provincial-head {
				font-size: 18px;
				font-size: 5.625vw;
				margin-bottom: 1em; } }
	@media screen and (min-width: 751px) {
		.sec-provincial .provincial-main {
			display: flex;
			justify-content: space-between;
			flex-direction: row-reverse; } }
	@media screen and (max-width: 750px) {
		.sec-provincial .provincial-main {
			font-size: 12px;
			font-size: 3.75vw; } }
	.sec-provincial .provincial-list > div + div {
		margin-top: 1em; }
	@media screen and (max-width: 750px) {
		.sec-provincial .provincial-list > div > dt {
			font-size: 14px;
			font-size: 4.375vw; } }
	.sec-provincial .provincial-list > div > dd {
		padding-left: 0.5em; }
	.sec-provincial .handbill {
		position: relative;
		display: block;
		width: 200px;
		margin: 0 auto;
		border-width: 1px;
		border-style: solid; }
		.sec-provincial .handbill img {
			width: 100%;
			vertical-align: top;
			image-rendering: -webkit-optimize-contrast; }
		@media screen and (min-width: 751px) {
			.sec-provincial .handbill img {
				transition: opacity 0.3s ease-out; }
			.sec-provincial .handbill:hover img {
				opacity: 0.8; } }
		@media screen and (max-width: 750px) {
			.sec-provincial .handbill {
				width: 33.33333vw;
				border-width: 0.26667vw;
				margin-bottom: 0.66667vw; } }
	.sec-provincial .pdf-info {
		text-align: center; }
	.sec-provincial .notice {
		font-size: 14px;
		margin-top: 0.5em; }
		@media screen and (max-width: 750px) {
			.sec-provincial .notice {
				font-size: 10px;
				font-size: 3.125vw; } }
		.sec-provincial .notice li {
			padding-left: 1em;
			text-indent: -1em; }
	.sec-provincial .price-list {
		display: flex; }
	.sec-provincial .btn-wrapper {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center; }
		@media screen and (max-width: 750px) {
			.sec-provincial .btn-wrapper p {
				font-size: 12px;
				font-size: 3.75vw; } }
	.sec-provincial .apply-btn {
		position: relative;
		display: block;
		text-indent: 1em;
		margin-top: 2em;
		line-height: 1.5em;
		padding: 10px 20px 10px 10px;
		border-radius: 3px;
		text-decoration: none !important;
		background-color: #0a2e3b;
		color: #f8e990 !important;
		width: 250px;
		transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
		border-radius: 5px;
		text-align: center; }
		.sec-provincial .apply-btn.hovereffect {
			opacity: 0.8; }
		.sec-provincial .apply-btn:after {
			display: block;
			content: '';
			position: absolute;
			top: 50%;
			width: 6px;
			height: 6px;
			border-right: 2px solid #f8e990;
			border-bottom: 2px solid #f8e990;
			-webkit-transform: translateY(-50%) rotate(-45deg);
			transform: translateY(-50%) rotate(-45deg); }
		@media screen and (min-width: 751px) {
			.sec-provincial .apply-btn:hover {
				background-color: #030c0f; }
				.sec-provincial .apply-btn:hover span {
					text-decoration: none !important; } }
		@media screen and (max-width: 750px) {
			.sec-provincial .apply-btn {
				width: 66.66667%;
				font-size: 12px;
				font-size: 3.75vw;
				padding: 0.75em 1em 0.75em 0.5em;
				margin-left: auto;
				margin-right: auto; } }
		.sec-provincial .apply-btn.disabled {
			pointer-events: none;
			opacity: 0.3; }

@keyframes wave-text {
	0% {
		opacity: 0;
		transform: translateY(0em); }
	50% {
		opacity: 0.5;
		transform: translateY(0.2em); }
	100% {
		opacity: 1;
		transform: translateY(0em); } }

/* intro
----------------------------------------*/
.sec-title {
	/* ready
  ----------------------------------------*/ }
	.sec-title .title {
		opacity: 0;
		transform: translateX(-50px);
		transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
	.sec-title .director {
		opacity: 0;
		transform: translateX(50px);
		transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		position: relative; }
		.sec-title .director:after {
			content: '';
			position: absolute;
			display: block;
			left: 0;
			top: 0;
			width: 100%;
			height: 102%;
			background-color: #0a2e3b;
			transform-origin: left top;
			transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1); }
	.sec-title .date {
		opacity: 0;
		transform: translateX(50px);
		transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
	.sec-title .otw-logo {
		opacity: 0;
		transform: translateX(-50px);
		transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
		position: relative; }
		.sec-title .otw-logo:after {
			content: '';
			position: absolute;
			display: block;
			left: 0;
			top: 0;
			width: 100%;
			height: 102%;
			background-color: #f8e990;
			transform-origin: right top;
			transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1); }
	body.ready .sec-title .title {
		opacity: 1;
		transform: translate(0, 0);
		transition-delay: 0.2s; }
	body.ready .sec-title .director {
		opacity: 1;
		transform: translate(0, 0);
		transition-delay: 0.8s; }
		body.ready .sec-title .director:after {
			transform: scale(0, 1);
			transition-delay: 0.8s; }
	body.ready .sec-title .otw-logo {
		opacity: 1;
		transform: translate(0, 0);
		transition-delay: 1.2s; }
		body.ready .sec-title .otw-logo:after {
			transform: scale(0, 1);
			transition-delay: 1.2s; }
	body.ready .sec-title .date {
		opacity: 1;
		transform: translate(0, 0);
		transition-delay: 1.4s; }

.fixed-background {
	opacity: 0;
	transition: opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1); }
	body.ready .fixed-background {
		opacity: 1; }

/* scroll-in
----------------------------------------*/
.section.bg-dark .scroll-in {
	opacity: 0;
	transform: translateX(-50px);
	transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
	position: relative; }
	.section.bg-dark .scroll-in:after {
		content: '';
		position: absolute;
		display: block;
		left: 0;
		top: 0;
		width: 100%;
		height: 102%;
		background-color: #0a2e3b;
		transform-origin: right top;
		transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1); }
	.section.bg-dark .scroll-in.appeared {
		opacity: 1;
		transform: translate(0, 0);
		transition-delay: 0s; }
		.section.bg-dark .scroll-in.appeared:after {
			transform: scale(0, 1);
			transition-delay: 0s; }

.section.bg-light .scroll-in {
	opacity: 0;
	transform: translateX(50px);
	transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
	position: relative; }
	.section.bg-light .scroll-in:after {
		content: '';
		position: absolute;
		display: block;
		left: 0;
		top: 0;
		width: 100%;
		height: 102%;
		background-color: #f8e990;
		transform-origin: left top;
		transition: transform 0.4s cubic-bezier(0.39, 0.575, 0.565, 1); }
	.section.bg-light .scroll-in.appeared {
		opacity: 1;
		transform: translate(0, 0);
		transition-delay: 0s; }
		.section.bg-light .scroll-in.appeared:after {
			transform: scale(0, 1);
			transition-delay: 0s; }

/* sec-description
----------------------------------------*/
.sec-description .section-wrapper.scroll-in {
	opacity: 0;
	transform: translateY(20px);
	transition: 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
	.sec-description .section-wrapper.scroll-in.appeared {
		opacity: 1;
		transform: translate(0, 0);
		transition-delay: 0s; }
