@charset "UTF-8";

#list .gallery_box .item {
	display: none;
}

/* 共通 */
.gallery_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 1490px;
	max-width: 90%;
	margin: 0 auto;
}

.gallery_box .item {
	width: 45%;
	text-align: left;
	margin-top: 120px;
}

.gallery_box .item strong {
	display: block;
	font-size: 22px;
	font-weight: normal;
	margin-top: .5em;
}

.gallery_box .item .cate {
	display: inline-block;
	font-size: 16px;
	border-radius: 5px;
	border: 1px solid #406f71;
	margin-top: .5em;
	padding: .2em .5em;
}

@media screen and (max-width: 767px) {
	.gallery_box {
		flex-direction: column;
		width: 80%;
		margin: 0 auto;
	}

	.gallery_box .item {
		width: 100%;
		margin-top: 10vw;
	}

	.gallery_box .item strong {
		font-size: 4vw;
	}

	.gallery_box .item .cate {
		font-size: 3vw;
	}
}



/*========================================

  イベントギャラリー

========================================*/
main {
	padding-top: 0 !important;
}

.btn {
	margin-top: 120px;
	padding-bottom: 90px;
}

.btn span {
	display: inline-block;
	font-size: 24px;
	border-radius: 100vh;
	border: 1px solid #406f71;
	padding: .6em 3em;
	cursor: pointer;
}

.btn span:hover {
	opacity: .7;
}

@media screen and (max-width: 767px) {
	.com_ttl {
		margin-top: 15vw;
	}

	.com_ttl span img {
		width: 35vw;
	}

	.btn {
		margin-top: 15vw;
		padding-bottom: 10vw;
	}

	.btn span {
		display: inline-block;
		font-size: 4vw;
	}
}



/*========================================

  イベントギャラリー詳細ページ

========================================*/
#page {
	border-bottom: 2px solid #406f71;
	padding-bottom: 80px;
}

#page .hero {
	width: 1500px;
	max-width: 90%;
	margin: 0 auto;
	margin-top: 200px;
}

#page .hero .headline {
	position: relative;
	text-align: left;
}

#page .hero h1 {
	position: relative;
	font-size: 34px;
	font-weight: bold;
	margin-right: 300px;
}

#page .hero .headline small {
	display: block;
	font-size: 24px;
	font-weight: 300;
}

#page .hero .headline .ill {
	position: absolute;
	bottom: 0;
	right: 0;
}

#page .hero .headline .ill img {
	max-width: 250px;
}

#page .hero .vis {
	display: block;
	margin-top: 50px;
}

#page .innr {
	width: 850px;
	margin: 0 auto;
	text-align: left;
	margin-top: 80px;
}

#page .innr p {
	font-size: 22px;
	font-weight: 300;
	text-align: justify;
	text-justify: inter-ideograph;
	margin-top: 1em;
}

#page .innr h2 {
	font-size: 40px;
	font-weight: bold;
	margin-top: 90px;
}

#page .innr span {
	display: block;
	margin-top: 30px;
}

#page .innr .photo {
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
	padding-bottom: 20px;
}

#page .list h2 {
	position: relative;
	font-size: 40px;
	font-weight: bold;
	margin-top: 280px;
}

#page .list h2 span {
	position: absolute;
	bottom: -60px;
	right: 60px;
}

@media screen and (max-width: 1970px) {
	#page h2 span {
		left: calc(50vw + 500px);
		right: auto;
	}

	#page h2 span img {
		max-width: 458px;
		width: 458px;
	}
}



@media screen and (max-width: 767px) {
	#page {
		padding-bottom: 10vw;
	}

	#page .hero {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
		margin-top: 10vw;
	}

	#page .hero .headline {
		width: 86%;
		margin-left: auto;
		margin-right: auto;
	}

	#page .hero h1 {
		position: relative;
		font-size: 5vw;
		margin-right: 0;
	}

	#page .hero .headline small {
		font-size: 3.4vw;
	}

	#page .hero .headline .ill {
		display: none;
		position: absolute;
		bottom: 35vw;
		right: 27.5vw;
	}

	#page .hero h2 .ill img {
		width: 35vw;
	}

	#page .hero .vis {
		margin-top: 5vw;
	}

	#page .innr {
		width: 86%;
		margin: 0 auto;
		margin-top: 3vw;
	}

	#page .innr p {
		font-size: 3.6vw;
	}

	#page .innr h2 {
		font-size: 5vw;
		margin-top: 10vw;
	}

	#page .innr span {
		display: block;
		margin-top: 3vw;
	}

	#page .innr .photo {
		display: flex;
		justify-content: space-between;
	}

	#page .innr .photo span {
		width: 19%;
	}

	#page .list h2 {
		position: relative;
		font-size: 5vw;
		margin-top: 60vw;
	}

	#page .list h2 span {
		position: absolute;
		top: -50vw;
		bottom: auto;
		left: 60vw;
	}

	#page .list h2 span img {
		width: 40vw;
	}
}