@charset "UTF-8";

@import url(reset.css);

img {
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}
main { display: block; }





/* ======== 全体 ======== */
body {
	font-family: 'Nunito Sans', 'M PLUS Rounded 1c', sans-serif;
	font-size: 87.5%;
}

a {
	color: #bbaf7a;
	transition: all .4s ease;
}
a.pic:hover { opacity: .6; }

img.auto { width: 100%; height:auto; }

/* =====　SP用記述　===== */
.forPC { display: none; }

div.wrap {
	width: 100vw;
	height: 100vh;
	position: relative;
}
div.wrap p.logo {
	position: absolute;
	top: 45%;
	left: 50%;
	width: 80vw;
	height: auto;
	transform: translate(-50%, -50%);
	animation: fadeIn 1.2s ease-in-out .3s both;
}
@keyframes fadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

.footnav {
	width: 100%;
	box-sizing: border-box;
	padding: 5vw 6vw;
	position: fixed;
	bottom: 0;
	left: 0;
	animation: navUp .6s cubic-bezier(.56,.11,.42,1.51) .8s both;
}
@keyframes navUp {
	0% { transform: translate(0, 100%); }
	100% { transform: translate(0, 0); }
}
.footnav ul li {
	margin-top: 10px;
	text-align: right;
}
.footnav ul li:first-child { margin-top: 0; }
.footnav ul li a {
	display: block;
	text-decoration: none;
	color: #bbaf7a;
	padding: 3px;
}

/* モーダル */
.modal,
.modal a {
	color: #bbaf7a;
}
.modal {
	padding: 3vh 5vw 10vh;
	min-width: 100vw;
	overflow: auto;
	line-height: 1.5;
	box-sizing: border-box;
}
.modal h2 {
	font-size: 160%;
	font-weight: 200;
	line-height: 1.1;
}

.modal dl.event_list,
.modal p.uc {
	font-size: 90%;
	margin-top: 30px;
}
.modal dl.event_list dt {
	font-weight: 700;
	margin-top: 18px;
}
.modal dl.event_list dd {
	padding-left: 1em; 
	margin-top: 6px;
}



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

	/* =====　PC用記述　===== */
	.wrap_all {
		min-width: 1120px;
	}
	.br4sp { display: none; }
	.forPC { display: block; }
	.forSP { display: none; }

	div.wrap p.logo { width: 50vw; }

	.footnav {
		font-size: 115%;
		padding: 10px 10px 30px;
	}
	.footnav ul {
		display: flex;
		justify-content: center;
		gap: 0 60px;
	}
	.footnav ul li {
		margin-top: 0;
	}
	
	.footnav ul li a {
		position: relative;
	}
	.footnav ul li a::after {
		content: "";
		display: block;
		width: 1px;
		height: 3px;
		background-color: transparent;
		position: absolute;
		left: 50%;
		top: -1px;
		transform: translate(-50%, 0);
		transition: all .3s ease;
	}
	.footnav ul li a:hover::after {
		background-color: #bbaf7a;
		width: 100%;
	}
	
	.modal {
		padding: 20px;
		min-width: 50vw;
	}
	.modal h2 { font-size: 240%; }
	.modal dl.event_list {
		font-size: 100%;
		margin-top: 25px;
	}
	.modal dl.event_list dt { margin-top: 15px; }
	.modal dl.event_list dd {
		padding-left: 15em; 
		margin-top: -1.5em;
	}
	.modal dl.event_list dd + dd {
		margin-top: 15px;
	}








}
