@charset "UTF-8";
/* ------------------------------------
 * special_root
 * ------------------------------------ */
 :root {
	/* Color */
	--color-bg: #fff;
	--color-white: #fff;
	--color-text: #3A3023;
	--color-btn-body: #FFBB00;
	--color-btn-text: #3A3023;
	--font-base: "Noto Sans JP", sans-serif;

	--font-size-12: 12px;
	--font-size-14: 14px;
	--font-size-16: 16px;
	--font-size-18: 18px;
	--font-size-20: 20px;
	--font-size-24: 24px;
	--font-size-32: 32px;

	--font-weight-200: 200;
	--font-weight-400: 400;
	--font-weight-500: 500;
	--font-weight-600: 600;
	--font-weight-700: 700;
	--font-weight-800: 800;
	--font-weight-900: 900;

	--line-height-base: 1.5;
	--line-height-heading: 1.4;
 }

/* ------------------------------------
 * specoal_base
 * ------------------------------------ */
.p-event-nav, .l-event__detail {
	font-family: var(--font-base);
	font-size: var(--font-size-16);
	line-height: var(--line-height-base);
	font-style: normal;
	font-weight: var(--font-weight-400);
}

.l-event__detail {
	display: flex;
	flex-direction: column;
	gap: 48px;
}

.special_bg img {
	display: block;
	max-width: 100%;
	height: auto;
}

.p-event__image {
	width: 100%;
	margin-inline: auto;
}

.p-event__image img {
	width: 100%;
	max-width: 100%;
}

.u-strong {
	font-weight: var(--font-weight-900);
}

/* ------------------------------------
 * special_global_style
 * ------------------------------------ */
.special_bg {
	background-color: var(--color-bg);
}

/*-------
//hero 
-------*/
.p-keyvisual {
	margin-inline: auto;
	margin-block-end: 24px;
	text-align: center;
}

.p-keyvisual img {
	width: 100%;
}

.p-keyvisual__box {
	display: inline-block;
}

/*-------
//nav
-------*/

.p-event-nav {
	width: calc(100% - 24px);
	max-width: 1200px;
	margin-inline: auto;
	margin-block-end: 24px;
}

.p-event-nav__list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	row-gap: 16px;
	column-gap: 16px;
	justify-content: space-around;
}

.p-event-nav__item {
	width: 100%;
	justify-self: center;
}

.p-event-nav__list .p-event-nav__item:nth-child(5):last-child {
	width: calc((100% - 16px) / 2);
	grid-column: 1 / span 2;
	justify-self: center;
}


/*-------
//container
-------*/
.p-event-container {
	width: calc(100% - 24px);
	max-width: 1200px;
	margin-inline: auto;
	padding-block: 16px;
	padding-inline: 12px;
}

.p-event-container__body {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.c-event-heading {
	text-align: center;
}

.p-event-text {
	width: fit-content;
	margin-inline: auto;
	font-family: var(--font-base);
	font-size: var(--font-size-18);
	line-height: var(--line-height-base);
	font-style: normal;
	font-weight: var(--font-weight-400);
}

.p-event-lead {
	width: fit-content;
	margin-inline: auto;
	font-family: var(--font-base);
	font-size: var(--font-size-20);
	line-height: var(--line-height-base);
	font-style: normal;
	font-weight: var(--font-weight-400);
}

.p-event__detail {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.p-event__detail__title {
	width: 104px;
	display: block;
	margin-inline: auto;
	text-align: center;
	font-size: var(--font-size-14);
	font-synthesis-weight: var(--font-weight-800);
	padding: 4px 8px;
}

.p-event__detail__text {
	text-align: center;
	font-family: var(--font-base);
	font-size: var(--font-size-16);
	line-height: var(--line-height-base);
	font-style: normal;
	font-weight: var(--font-weight-400);
}

.p-botton-btn__box {
	max-width: 1200px;
	margin-inline: auto;
	margin-block-start: 48px;
	padding-block-end: 24px;
}

/* ------------------------------------
 * ANIMATION
 * ------------------------------------ */

/*** fadein ***/

.animated {
	opacity: 0;
}

.fadeIn {
	animation-name: fadeIn;
	animation-duration: 0.5s;
	animation-fill-mode: both;
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

.fadeInUP {
	animation-name: fadeInUp;
	animation-duration: 1s;
	animation-fill-mode: both;
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 100%, 0);
	}

	to {
		opacity: 1;
		transform: none;
	}
}


/* ------------------------------------
 * others
 * ------------------------------------ */
.detail_area > h3 + p {
	text-align: center;
}

.detail_area em {
	color: #ff0000;
	font-weight: 700;
}

.detail_area > .detail_content {
	width: 93%;
	margin: 2% auto 0;
}
.comingsoon {
	display: block;
	width: 90%;
	margin: 3% auto;
	padding: 1em;
	border: solid 1px #bdbdbd;
	border-radius: .5em;
	background: #ffeded;
	color: #9a9a9a;
	font-weight: 700;
	font-size: 120%;
	text-align: center;
}
.comingsoon.comingsoon_green {
	background: #e8faed;
}
#special > main .list > ul li dl dd .moviesize {
	display: block;
	color: #7b7a7a;
	font-size: 90%;
}
.nav_image_area {
	width: 93%;
	margin: 0 auto;
}
.nav_image_area img {
	width: 100%;
	margin: 2% auto;
}
.btn_img_area {
	width: 74%;
	margin: 2% auto;
}
.btn_img_area img {
	display: block;
	width: 100%;
	margin: 2% auto;
}
.btn_img_small {
	display: block;
	width: 80%;
	margin: 2% auto;
}
.link_area a {
	display: block;
	color: #4b4b4b;
	font-size: 115%;
	text-align: center;
}
.link_area.link_pink a {
	color: #db336e;
}

.message_red {
	color: #e60012;
	font-weight: 400;
}
.message_black {
	color: #313131;
	font-weight: 400;
}
.message_with_frame {
	padding: .5em;
	border: solid 1px #313131;
}
.message_small {
	font-size: 60%;
}
.message_area.type_strong {
	font-weight: 700;
}
.item_centering {
	text-align: center;
}
.notice_message_area {
	text-align: center;
}
.notice_message_area {
	text-align: center;
}
.notice_centering {
	display: block;
	width: 93%;
	margin: 3% auto 0;
	text-align: center;
}
.notice_message {
	color: #fd2b48;
	font-weight: 700;
}
.notice_message_underline {
	display: inline-block;
	margin-bottom: 2%;
	font-weight: 700;
	font-size: 115%;
	background: -webkit-linear-gradient(transparent 70%, #ace7cc 75%);
	background: linear-gradient(transparent 70%, #ace7cc 75%);
}
.notice_info_area {
	width: 93%;
	margin: 2% auto;
	padding: 2%;
	border: solid 1px #db336e;
	border-radius: 1em;
	background: rgba(255,255,255,.6);
}
.notice_info {
	width: 100%;
	margin: 0 auto 2%;
	padding-bottom: 2%;
	border-bottom: solid 1px #db336e;
	color: #db336e;
	font-weight: 700;
	text-align: center;
}
.notice_info_area > span {
	display: block;
	width: 100%;
	margin: 0 auto;
}
.heading {
	width: 93%;
	margin: 6% auto 3%;
	text-align: center;
}
.heading.heading_type2 {
	padding: 2%;
	border-top: solid 1px #28bbe2;
	border-bottom: solid 1px #28bbe2;
	color: #28bbe2;
	font-weight: 700;
	font-size: 120%;
}
.heading_img img {
	width: 100%;
}
.area_code {
	color: #ffffff;
	font-size: 120%;
	text-align: center;
}
.area_code .id_area {
	display: block;
	width: 90%;
	margin: 1% auto;
	padding: .2em;
	border: solid 1px #857e7e;
	border-radius: .5em;
	background: #ffffff;
	color: #857e7e;
}
.notice_box {
	width: 90%;
	margin: 3% auto;
	padding: .5em;
	background: #ffffff;
	color: #303030;
}

/* ------------------------------------
 * entry form
 * ------------------------------------ */
#entry_form {
	background: #ffffff;
}
#entry_form .story {
	width: 93%;
	max-width: 950px;
	margin: 0 auto;
}
#entry_form .message_1 {
	margin-top: 1.2em;
	margin-bottom: .6em;
	padding-bottom: .6em;
	border-bottom: dashed 1px #222222;
	color: #222222;
	font-weight: 700;
	font-size: 120%;
	text-align: center;
}
#entry_form .message_2 {
	margin-top: 1.2em;
	padding-bottom: .6em;
	border-bottom: dashed 1px #ff0000;
	color: #ff0000;
	font-weight: 700;
	font-size: 130%;
	text-align: center;
}
#entry_form .notice {
	width: 93%;
	margin: .6em auto;
	color: #ff0000;
}
#entry_form .notice.notice_black {
	color: #000000;
}
#entry_form .notice.centering {
	text-align: center;
}
#entry_form .notice.notice_strong {
	color: #db336e;
	font-weight: 700;
	font-size: 120%;
}
#entry_form .notice.notice_strong:after {
	display: block;
	width: 81%;
	max-width: 380px;
	margin: -.5em auto .6em;
	border-bottom: solid 10px #ffff00;
	content: "";
}
#entry_form .radio_select {
	width: 60%;
	max-width: 360px;
	margin: 1.2em auto;
	padding: 0 .4em;
	background: #f8f8f8;
	font-size: 0;
}
#entry_form .radio_select:before {
	display: block;
	width: 60px;
	padding: .3em;
	border-bottom-right-radius: .6em;
	background: #ff0000;
	color: #ffffff;
	font-size: 11px;
	text-align: center;
	content: "※必須";
}
#entry_form .radio_select li {
	display: inline-block;
	width: 50%;
	font-size: 14px;
	text-align: center;
}
#entry_form .radio_select input[type="radio"] {
	display: none;
}
#entry_form .radio_select label {
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin-left: 20px;
	padding: 10px 18px;
	border-radius: 2px;
	font-size: 114%;
	text-align: center;
	line-height: 1.6;
}
#entry_form .radio_select label:before {
	position: absolute;
	content: "";
	top: 46%;
	left: -12px;
	width: 20px;
	height: 20px;
	margin-top: -8px;
	background: #ffffff;
	border: solid 1px #db336e;
	border-radius: 50%;
}
#entry_form .radio_select input[type="radio"]:checked + label:after {
	position: absolute;
	content: "";
	top: 45%;
	left: -8px;
	margin-top: -4px;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #db336e;
}
#entry_form .name_form_area {
	margin: 3% auto;
}
#entry_form .name_form_area input {
	width: 100%;
	padding: 1%;
	border: solid 1px #999999;
	border-radius: .3em;
}
#entry_form .message_form_area {
	margin: 3% auto;
}
#entry_form .message_form_area textarea {
	width: 100%;
	min-height: 250px;
	padding: 1%;
	border-radius: .5em;
}
@media (max-width: 959px) {
	.radio_select input[type="radio"]:checked + label:after {
		margin-top: -3.5px;
	}
}
@media (max-width: 768px) {
	#entry_form .radio_select {
		width: 93%;
		max-width: 500px;
	}
	#entry_form .radio_select input[type="radio"]:checked + label:after {
		margin-top: -3px;
	}
	#entry_form .radio_select .radio_vertical input[type="radio"]:checked + label:after {
		top: 41%;
	}
	#entry_form .notice.notice_strong:after {
		max-width: 300px;
	}
}
#entry_form .btn_area1 .btn {
	max-width: 600px;
	padding: 1.6%;
	border: solid 1px #db336e;
	border-radius: 20em;
	background: #db336e;
	color: #ffffff;
	font-weight: 700;
	font-size: 107%;
}
#entry_form .btn_area1 .btn:hover {
	border: solid 1px #db336e;
	background: #ffffff;
	color: #db336e;
}
.boxlist li.ticket {
	width: 93%;
	margin: 4% auto;
	padding: .6em;
	border-radius: 1.5em;
	text-align: center;
}
.boxlist li.ticket.ticket_day {
	background: url(../img/result_bg.png) no-repeat center top , -webkit-linear-gradient(#f6847d 0%, #ffd6d4 100%);
	background: url(../img/result_bg.png) no-repeat center top , linear-gradient(#f6847d 0%, #ffd6d4 100%);
	background-size: contain;
}
.boxlist li.ticket.ticket_night {
	background: url(../img/result_bg.png) no-repeat center top , -webkit-linear-gradient(#4a97ed 0%, #a0dffc 100%);
	background: url(../img/result_bg.png) no-repeat center top , linear-gradient(#4a97ed 0%, #a0dffc 100%);
	background-size: contain;
}
.boxlist li.ticket .image_heading {
	width: 93%;
	margin: 0 auto;
}
.boxlist li.ticket .image_heading img {
	width: 100%;
}
.boxlist li.not_ticket {
	width: 93%;
	margin: 4% auto;
	padding: .6em;
	border: solid 4px #ffc5c2;
	border-radius: 1em;
	text-align: left;
	box-shadow: 0px 0px 6px 1px rgba(0,0,0,.6);
}

/* ------------------------------------
 * MOVIE Jst player style
 * ------------------------------------ */
.movie_area {
	margin: 4% auto;
	border: none;
}
.movie_area li {
	width: 93%;
	max-width: 900px;
	margin: 2% auto;
	text-align: center;
}
.movie_area li.movie_content {
	margin: 0 auto;
}
.movie_area .movie_info_area {
	width: 100%;
	margin: 0 auto;
}
.movie_area .movie_info_area:after {
	clear: both;
	display: block;
	height: 0;
	line-height: 0;
	content: ".";
	visibility: hidden;
}
.movie_area .movie_info_area .movie_info {
	display: block;
	text-align: left;
}
.movie_area .movie_info_area .movie_info_l {
	float: left;
	display: inline-block;
	text-align: left;
}
.movie_area .movie_info_area .movie_info_r {
	float: right;
	display: inline-block;
	text-align: right;
}
.movie_area .movie_info_area_type2 {
	width: 100%;
	margin: 5% auto 0;
	padding: 3%;
	border: solid 1px #f8ada8;
	background: #ffedec;
	color: #747474;
	text-align: left;
}
.movie_area .movie_info_area_type2 .movie_info_l {
	display: inline-block;
	width: 49%;
}
.movie_area .movie_info_area_type2 .movie_info_r {
	display: inline-block;
	width: 49%;
}

#player {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
#player > div {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
#player iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.eq-header , .video_title , .video_title_text_cover , .video_title_text {
	display: none !important;
}
@media (max-width: 767px) {
	.movie_area {
		width: 93%;
	}
	.movie_area li {
		width: 100%;
	}
}

/* ------------------------------------
 * 動画iframe
 * ------------------------------------ */
iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.iframeBox {
	position: relative;
	width: 100%;
	margin: 1em auto;
	padding-top: 56.25%;
}
.iframeBox:after {
	content:".";
}

/* ------------------------------------
 * special
 * ------------------------------------ */
#special {
	background: #ffffff;
}
#special .mainvisual {
	width: 93%;
	margin: 0 auto;
}
#special .mainvisual img {
	width: 100%;
}
#special .nav_area {
	width: 100%;
	margin: 2% auto;
}
#special .nav_area ul {
	width: 93%;
	margin: .5% auto;
	font-size: 0;
	text-align: center;
}
#special .nav_area ul li {
	display: inline-block;
	width: 50%;
	margin: 0 auto;
	text-align: center;
}
#special .nav_area ul:first-of-type.nav_block_2 li {
	width: 50%;
}
#special .nav_area ul:first-of-type li {
	width: 33.3%;
}
#special .nav_area li img {
	width: 99%;
}

.area_caption {
	width: 93%;
	margin: 3% auto 6%;
}
.area_caption img {
	width: 100%;
}
.appdl_area {
	width: 93%;
	margin: 4% auto;
	border-top: dashed 1px #29bbe2;
	border-bottom: dashed 1px #29bbe2;
}
.summary_area {
	width: 93%;
	margin: 3% auto 3%;																																																																																																																																																																																																																																																													
}
.summary_area dt {
	display: block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	height: 0;
	margin: 0 auto;
	padding-top: 15%;
	background: url(../img/btn_about.png) no-repeat center bottom;
	background-size: contain;
	cursor: pointer;
}
.summary_area dt.open {
	border-top-right-radius: .5em;
	border-top-left-radius: .5em;
	background: rgba(117,117,117,.2) url(../img/btn_about_close.png) no-repeat center bottom;
	background-size: contain;
}
.summary_area dd {
	display: none;
	margin: 0;
	padding: .5em 1em;
	border-bottom-right-radius: .5em;
	border-bottom-left-radius: .5em;
	background: rgba(117,117,117,.2);
	color: #313131;
}
.summary_area dd .info_box {
	width: 100%;
	margin: 3% auto;
	padding: 3%;
	border-radius: .2em;
	background: #f9fcf3;
	color: #4d4d4d;
	text-align: center;
	box-shadow: 0 1px 1px 1px #e1e1e1;
}
.summary_area dd a {
	color: #fd2b48;
}
#coupon.summary_area dt {
	padding-top: 15%;
	background: url(../img/btn_coupon.png) no-repeat center bottom;
	background-size: contain;
	cursor: pointer;
}
#coupon.summary_area dt.open {
	background:rgba(81,187,157,.2) url(../img/btn_coupon_close.png) no-repeat center bottom;
	background-size: contain;
}
#coupon.summary_area dd {
	background: rgba(81,187,157,.2);
}

#area_about_entry .message_area {
	display: block;
	margin: 4% auto;
}

.about_result dl {
	width: 93%;
	margin: 0 auto;
	border: solid 2px #eb635b;
}
.about_result dl dt {
	border-bottom: solid 2px #eb635b;
	background: #ffffff;
	color: #eb635b;
	font-weight: 700;
	font-size: 130%;
	text-align: center;
}
.about_result dl dt span {
	display: block;
	margin: 3px;
	padding: 2%;
	border: solid 2px #eb635b;
	background: #ffedec;
	text-align: center;
}
.about_result dl dd {
	padding: 3%;
	background: #ffedec;
}

#area_eventinfo .detail_area > .detail_content > dt {
	padding: 1.5%;
	border-radius: .2em;
	background: #f8958f;
	color: #ffffff;
	text-align: center;
}
#area_eventinfo .detail_area > .detail_content > dd {
	margin: 2% auto;
}
#area_eventinfo .detail_area > .detail_content > dd a {
	color: #ff4160;
}
.slider_area ul {
	width: 93% !important;
	margin: 0 auto !important;
}
.slider_area ul li {
	display: inline-block;
	width: 50%;
	padding: 0 .4em;
}
.slider_area ul li img {
	width: 100%;
}

.btn_area2 {
	overflow: hidden;
	width: 93%;
	margin: 1rem auto 0;
	font-size: 0;
}
.btn_area2 li {
	display: inline-block;
	width: 50%;
	font-size: 16px;
}
.btn.btn_type3 {
	border: solid 1px #a8a8a8;
	background: #ffffff;
	color: #a8a8a8;
}
.btn.btn_type3:hover {
	border: solid 1px #ff4d7f;
	background: #ffffff;
	color: #ff4d7f;
}


