@charset "utf-8";


/* ========================================
   基本
======================================== */

html,
body {
	margin: 0;
	background-color: #4f0000;
	color: #ffee92;
	font-weight: bold;
}


body .contents {
	background-color: #4f0000 !important;
}


.event2019 {
	width: 100%;
	min-height: 100vh;
	background-color: #4f0000;
	color: #ffee92;
}


a:hover {
	text-decoration: none;
}



/* ========================================
   ページタイトル
======================================== */

.h1_line {
	width: 100%;
	padding: 5px 3px;
	background-color: #4f0000;
}


.h1_line h1 {
	margin: 0;
	border: none;
	color: #fff;
	font-size: .85em;
	text-align: center;
}



/* ========================================
   セクション見出し
======================================== */

h2 {
	color: #ffee92;
	border-bottom: solid 3px #ffee92;
}


h3 {
	color: #ffee92;
	border-bottom: dashed 2px #ffee92;
}


/* 「開催日」「開催場所」は左揃え */

#ticket,
#spot {
	text-align: left !important;
}



/* ========================================
   画像
======================================== */

.img-responsive,
.img-fluid {
	display: block;
	max-width: 100%;
	height: auto;
}


.mauto {
	margin-left: auto;
	margin-right: auto;
}


.img_border img {
	border: 4px solid #aaa;
}



/* ========================================
   動画
======================================== */

video {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;

	margin-left: auto;
	margin-right: auto;
}



/* ========================================
   公演情報ボックス
======================================== */

.box_gold {
	width: 90%;

	margin: 20px auto 40px;

	padding: 15px 20px;

	border: 2px solid #ffee92;
	border-radius: 10px;

	box-sizing: border-box;

	text-align: left;
}


.box_gold p {
	margin-top: 0;
	margin-bottom: 12px;

	text-align: left;
}


.box_gold p:last-child {
	margin-bottom: 0;
}



/* ========================================
   開催日
======================================== */

#ticket {
	margin-top: 60px;
	margin-bottom: 30px;
}


.event_frame {
	margin-bottom: 30px;

	padding: 10px;

	color: #333;
	background-color: #fff;

	border: 3px solid #ffee92;
	border-radius: 10px;

	font-weight: normal;
}


.event_frame h3 {
	color: #333;
}



/* ========================================
   予約ボタン
======================================== */

.btn_entry_on {
	display: table;

	width: 100%;

	margin-top: 10px;

	background-color: #4f0000;
	color: #ffee92;

	font-size: 1.2em;
	text-align: center;

	border-radius: 10px;
}


a:hover div.btn_entry_on {
	background-color: #ffee92;
	color: #4f0000;
}


.btn_entry_off {
	display: table;

	width: 100%;

	margin-top: 10px;

	background-color: #999;
	color: #fff;

	font-size: 1.2em;
	text-align: center;

	border-radius: 10px;
}


.btn_entry_on span,
.btn_entry_off span {
	display: table-cell;
	vertical-align: middle;
}



/* ========================================
   チケット案内
======================================== */

.ticket-continuous {
	margin-top: 30px;
	margin-bottom: 45px;

	text-align: center;
}


.ticket-continuous a {
	color: #00a6c8;
	text-decoration: none;
}


.ticket-continuous a:hover {
	text-decoration: underline;
}


/* 発売日時 */

.ticket-sale {
	margin-top: 30px;
	margin-bottom: 30px;

	font-size: 1.35em;
	line-height: 1.6;

	text-align: center;
}


.ticket-sale span {
	font-size: 1.55em;
	font-weight: bold;
}



/* ========================================
   チケット購入ボタン
======================================== */

.btn_ticket {
	display: block;

	width: 85%;
	max-width: 850px;

	margin: 25px auto 70px;

	padding: 24px 20px;

	background-color: #ffee92;
	color: #4f0000;

	border-radius: 5px;

	font-size: 1.35em;
	font-weight: bold;

	text-align: center;
}



/* ========================================
   開催場所
======================================== */

#spot {
	margin-top: 70px;
	margin-bottom: 30px;
}



/* ========================================
   Google Map
======================================== */

.google-map {
	position: relative;

	width: 100%;
	height: 0;

	padding-bottom: 75%;

	overflow: hidden;
}


.google-map iframe {
	position: absolute;

	top: 0;
	left: 0;

	width: 100%;
	height: 100%;

	border: 0;
}



/* ========================================
   その他ボタン
======================================== */

.btn_form {
	padding-top: 20px;
	padding-bottom: 20px;

	border-radius: 5px;

	font-size: 120%;
	font-weight: bold;
}



/* ========================================
   フッター
======================================== */

.bg_footer {
	width: 100%;
	background-color: #4f0000;
	color: #ffee92;
}


.fotter_logo img {
	display: block;

	max-width: 100%;
	height: auto;

	margin-left: auto;
	margin-right: auto;
}

.footer-notes > p:not(.fotter_logo):not(.fs70p) {
	text-align: left;
}



/* ========================================
   タブレット・PC
======================================== */

@media screen and (min-width: 768px) {

	.h1_line h1 {
		font-size: 1.05em;
	}

}


@media screen and (min-width: 992px) {

	.btn_entry_on,
	.btn_entry_off {
		width: 128px;
		height: 128px;

		font-size: 1.7em;
	}

}

/* ========================================
   謎カードラリーキャンペーン
======================================== */

.campaign-section {
	margin-top: 60px;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.campaign-section .row {
	margin-bottom: 0;
}

.campaign-section .element {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
}

.campaign-link {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	line-height: 0;
}

.campaign-image {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
}

/* ========================================
   スマートフォン
======================================== */

@media screen and (max-width: 767px) {

	html,
	body {
		width: 100%;
		max-width: 100%;

		overflow-x: hidden;
	}


	.event2019 {
		width: 100%;
		max-width: 100%;

		overflow-x: hidden;
	}


	/*
	 * PC版のレイアウトを壊さず、
	 * スマホでは左右に適度な余白を残す
	 */
	.event2019 .container {
		width: auto !important;
		max-width: none !important;

		margin-left: 15px !important;
		margin-right: 15px !important;

		padding-left: 0;
		padding-right: 0;
	}


	.event2019 .row {
		margin-left: -15px;
		margin-right: -15px;
	}


	.event2019 img,
	.event2019 video {
		max-width: 100%;
		height: auto;
	}


	/* 公演情報 */

	.event2019 .box_gold {
		width: calc(100% - 30px);

		margin-top: 20px;
		margin-bottom: 35px;

		padding: 15px;

		text-align: left;
	}


	.event2019 .box_gold p {
		margin-top: 0;
		margin-bottom: 10px;

		text-align: left;
	}


	.event2019 .box_gold p:last-child {
		margin-bottom: 0;
	}


	/* 開催日 */

	#ticket {
		margin-top: 45px;
		margin-bottom: 25px;
	}


	.event_frame {
		margin-bottom: 24px;
	}


	/* 連続参加案内 */

	.ticket-continuous {
		margin-top: 25px;
		margin-bottom: 35px;

		padding-left: 10px;
		padding-right: 10px;

		line-height: 1.8;
	}


	/* チケット発売 */

	.ticket-sale {
		margin-top: 25px;
		margin-bottom: 25px;

		font-size: 1.15em;
		line-height: 1.7;
	}


	.ticket-sale span {
		font-size: 1.4em;
	}


	/* チケット購入 */

	.btn_ticket {
		width: calc(100% - 30px);

		margin-top: 20px;
		margin-bottom: 65px;

		padding: 20px 12px;

		font-size: 1.2em;
	}


	/* 開催場所 */

	#spot {
		margin-top: 55px;
		margin-bottom: 25px;
	}


	/* Google Map */

	.google-map {
		width: 100%;

		margin-left: auto;
		margin-right: auto;
	}

}