@charset "utf-8";

/* CSS INFORMATION -====================================================
File name : layout.css
Description : レイアウト用CSS
===================================================================== */


/* ==========================================================
	共通
========================================================== */

/*アクセントカラー（背景色）*/
.ttl_h2:before,
.slick-arrow,
.slick-active button::before,
.popup_close {
	background-color: #f23d73;
}

/*アクセントカラー（文字色）*/
.ttl_h3,
.wrapper .txt_link,
.wrapper b.highlight,
.cast_name1 {
	color: #f23d73;
}

.popup_close {
	border-color: #f23d73;
}


/* ==========================================================
	header
========================================================== */

.txt_link:hover {
	color: #000;
}




/* ==========================================================
	コンテンツ
========================================================== */

/*コンテンツ外側の背景*/
#main {
	background-color: #CEE9F8;

	/* 複数の「もや」を重ねる */
	background-image:
		/* 1. 左上のピンクの「もや」 */
		radial-gradient(circle at 15% 25%,
			#FFC7DA,
			transparent 30%),
		/* 2. 右下のピンクの「もや」 */
		radial-gradient(circle at 70% 60%,
			#FFC7DA,
			transparent 35%),
		/* 3. 右上の小さなピンクの「もや」 */
		radial-gradient(circle at 80% 15%,
			#FFC7DA,
			transparent 20%),
		/* 4. 右上の小さなピンクの「もや」 */
		radial-gradient(circle at 25% 85%, #FFC7DA,
			transparent 30%);
}

/*コンテンツ背景*/
.contents {
	background-color: #fff;
}

/*スライダーの矢印ボタン：ホバー*/
/*ポップアップのクローズボタン：ホバー*/
.slick-arrow:hover,
.popup_close:hover {
	background-color: #000;
}

/*ポップアップのクローズボタン：ホバー*/
.popup_close:hover {
	border-color: #000;
}

/* 画像ガード */
.photo_protect {
	position: relative;
	display: inline-block;
	pointer-events: none;
}

.photo_protect::after {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	background-color: transparent;
	position: absolute;

	top: 0;
	left: 0;
}

/*プリント禁止*/
@media print {
	* {
		display: none;
		opacity: 0;
		background: #fff;
	}

	img {
		display: none;
		opacity: 0;
		background: #fff;
	}
}

.event-details {
	width: 100%;
	border-collapse: collapse;
	/* 枠線を重ねる */
	border: 1px solid #ccc;
	/* 外枠 */
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 1em;
	/* テーブルの下に余白 */
}

/* テーブルのセル (th と td) の共通スタイル */
.event-details th,
.event-details td {
	border: 1px solid #ccc;
	/* セルの枠線 */
	padding: 12px 15px;
	/* セル内の余白 */
	vertical-align: top;
	/* 内容を上に揃える */
	text-align: left;
	/* 文字を左揃えに */
}

/* 左側の見出しセル (th) のスタイル */
.event-details th {
	background-color: #f4f4f4;
	font-weight: bold;
	width: 25%;
	min-width: 100px;
}

/* 右側の内容セル (td) のスタイル */
.event-details td {
	width: 75%;
}

/* リンクのスタイル */
.note a,
.event-details a {
	color: #1262b3;
	/* リンクの色 */
	text-decoration: underline;
}

.text-red {
	color: #f23d73;
}

.note {
	font-size: 0.9em;
}

.note_s {
	margin: 10px 0 30px 0;
	font-weight: bold;
}

.note_ticket {
	background-color: #f0f0f0;
	padding: 15px;
	margin-bottom: 60px;
}

.note_mv {
	font-size: 1.2rem;
	padding-top: 8px;
	color: gray;
}

.image-ticket {
	margin-bottom: 50px;
}

.center {
	text-align: center;
}


.guideline {
	list-style: disc outside;
	padding-left: 1.5em;
}

.image-point img {
	width: 60%;
	margin: 40px auto 0 auto;
}

.image-event {
	display: flex;
	gap: 20px;
	justify-content: space-around;
}

.image-event img {
	width: 360px;
	margin-top: 20px;
}

.ticket_text {
	font-size: 2rem;
	font-weight: bold;
}

@media screen and (max-width: 767px) {

	.image-ticket {
		margin-bottom: 30px;
	}

	.note_mv {
		font-size: 1.8rem;
	}

	.note_s {
		margin: 10px 0 20px 0;
	}
	.note_ticket {
	margin-bottom: 30px;
}

	.ticket_text {
		font-size: 2.8rem;
	}

	.event-details th {
		width: 15%;
	}

	.image-point img {
		width: 90%;
		margin: 20px 0 0 0;
	}

	.image-event {
		display: block;
	}

	.image-event img {
		width: 80%;
		margin-top: 20px;
	}
}