@charset "UTF-8";

/*イベントカテゴリー
----------------------------------------*/
.ttl_h2_01:not(:first-child) {
	margin-top: 60px;
}
@media screen and (max-width: 750px) {
	.ttl_h2_01:not(:first-child) {
		margin-top: 30px;
	}
}



/*イベント記事一覧
----------------------------------------*/
.event_article_list > ul > li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 20px;
	border: 1px solid #ddd;
	background-color: #fff;
}

.event_article_list > ul > li:nth-child(n+2) {
	margin: 15px 0 0;
}

.event_article_list > ul > li .img {
	width: 280px;
}

.event_article_list > ul > li .img_in {
	padding-top: 62.5%;
	position: relative;
}

.event_article_list > ul > li .img_in .js_bg_img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #eee;
	-webkit-background-size: contain;
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

.event_article_list > ul > li .txt {
	flex: 1 1 0%;
	padding: 0 0 0 40px;
}

.event_article_list > ul > li .txt .article_ttl {
	margin: 0 0 20px;
	font-size: 1.8rem;
	font-weight: bold;
}

.event_article_list > ul > li .txt .article_ttl a {
	text-decoration: underline;
}

.event_article_list > ul > li .btn_area {
	margin: 20px 0 0;
}

.event_article_list > ul > li .btn {
	min-width: 100%;
	min-height: 45px;
	font-size: 1.4rem;
}

.event_article_list > ul > li .btn .btn_cmn01 [class*="icon_arrow"]:before {
	font-size: 12px;
}



@media only screen and (min-width: 751px) {
	
	.btn > *:hover:before {
		-webkit-transform: scale(30);
		transform: scale(30);
	}
	
	.event_article_list > ul > li .txt .article_ttl a:hover {
		text-decoration: none;
	}

}

@media screen and (max-width: 750px) {
	
	.event_article_list > ul > li {
		display: block;
	}
	
	.event_article_list > ul > li .img {
		width: 100%;
	}
	
	.event_article_list > ul > li .txt {
		margin: 15px 0 0;
		padding: 0;
	}
	
	.event_article_list > ul > li .txt .article_ttl {
		margin: 0 0 5px;
		font-size: 1.6rem;
	}
	
	.event_article_list > ul > li .btn_area {
		margin: 15px 0 0;
	}
	
}



/*イベント詳細
----------------------------------------*/
.event_detail_contents img {
	max-width: 100%;
}

.event_detail_contents a {
	text-decoration: underline;
}

.event_detail_contents a:hover {
	text-decoration: none;
}

.event_detail_ttl {
	margin-bottom: 30px;
	text-align: center;
}

.event_detail_table_block {
	margin-bottom: 30px;
}

.event_detail_table_block .table_data th {
	width: 20%;
	background-color: #888;
	color: #FFF;
}

.event_detail_photo {
	margin-bottom: 30px;
	text-align: center;
}

.event_detail_text {
	margin-bottom: 30px;
}

.event_detail_table_block_sub {
	margin-bottom: 30px;
}

.event_detail_music_list {
	margin-bottom: 30px;
}

.event_detail_cast_list {
	margin-bottom: 30px;
}

.event_detail_cast_list .cast_list li {
	margin-bottom: 30px;
	padding-bottom: 30px;
	display: flex;
}

.event_detail_cast_list .cast_list li:last-child {
	margin-bottom: 0;
}

.event_detail_cast_list .cast_list .img {
	width: 200px;
}

.event_detail_cast_list .cast_list .txt {
	padding-left: 40px;
	flex: 1;
}

.event_detail_cast_list .cast_list .txt .cast_name {
	margin-bottom: 10px;
	font-weight: bold;
}




.event_notification {
	margin-bottom: 30px;
	padding: 20px;
	background-color: #FFF;
	color: #E7316E;
}

.event_notification h3 {
	margin-bottom: 10px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}

.event_notification p + p {
	margin-top: 10px;
	
}

.event_notification .btn_area {
	margin-top: 20px;
}

.event_notification .btn a {
	background: #FFF;
	border: 1px solid #E7316E;
	color: #E7316E;
}

.event_notification .btn .btn_cmn01 [class*="icon_arrow"]:before { 
	color: #E7316E !important;
}



@media only screen and (min-width: 751px) {
	
	.event_notification .btn > *:before {
		background: #E7316E;
	}
	
	.event_notification .btn > *:hover:before {
		-webkit-transform: scale(40);
		transform: scale(40);
	}
	
	.event_notification .btn > *:hover *,
	.event_notification .btn *:hover [class*="icon_arrow"]:before {
		color: #FFF !important;
	}

}



@media only screen and (max-width: 750px) {
	
	.event_detail_ttl {
		margin-bottom: 20px;
	}

	.event_detail_table_block {
		margin-bottom: 20px;
	}

	.event_detail_table_block .table_data th {
		width: 100%;
	}

	.event_detail_photo {
		margin-bottom: 25px;
	}

	.event_detail_text {
		margin-bottom: 25px;
	}

	.event_detail_table_block_sub {
		margin-bottom: 0;
	}

	.event_detail_music_list {
		margin-bottom: 15px;
	}

	.event_detail_cast_list {
		margin-bottom: 25px;
	}

	.event_detail_cast_list .cast_list li {
		margin-bottom: 25px;
		padding-bottom: 20px;
		display: block;
	}

	.event_detail_cast_list .cast_list .img {
		margin: 0 auto;
		padding-bottom: 10px;
		text-align: center;
	}

	.event_detail_cast_list .cast_list .txt {
		padding-left: 0;
	}

	.event_detail_cast_list .cast_list .txt .cast_name {
		font-weight: bold;
		text-align: center;
	}


	.event_notification {
		margin-bottom: 20px;
	}
	
	.event_notification h3 {
		font-size: 1.6rem;
	}

	.event_notification .btn_area {
		margin-top: 10px;
	}
	
	.event_detail_btn_block .btn_area {
		margin-top: 20px;
	}

}