@charset "utf-8";

/*------------------------------
	contents
------------------------------*/
main > section:first-of-type {
	margin: auto;
	width: 1080px;
	padding: 0;
}


h3 {
	margin-bottom: 20px;
}

h4 {
	margin-bottom: 15px;
	padding-left: 15px;
	font-size: 20px;
	border-bottom: 2px solid #00873b;
}

section section {
	padding-bottom: 30px;
}

section p {
	margin-bottom: 30px;
}


/*------------------------------
	visual
------------------------------*/
#visual {
	height: auto;
	margin-bottom: 15px;
}

#visual div {
	background: #fff;
}
#visual div ul {
	float: left;
	width: 200px;
	margin: 0;
	padding: 0;
}
#visual div ul li {
	width: 180px;
	margin: 20px auto;
	list-style: none;
	text-align: center;
	background: #ff0;
	box-shadow:5px 5px 5px #333;
}
#visual div ul li a {
	display: block;
	padding: 20px 0;
	color: #000;
	text-decoration: none;
	transition: .4s;
}
#visual div ul li a:hover {
	opacity: 1;
	background-color: #adf347;
}


#visual div img {
	width: 880px;
	height: auto;
}

/*------------------------------
	festival_top
------------------------------*/
.fest_nav {
	margin: 0 0 20px;
	background-color: #ff0;
}

.fest_nav ul {
	margin: auto;
	width: 1080px;
}

.fest_nav::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.fest_nav li {
	margin: 0;
	list-style: none;
}

.fest_nav li a {
	float: left;
	width: 140px;
	padding: 20px;
	text-align: center;
	color: #111;
	font-weight: bold;
	text-decoration: none;
	transition: .4s;
	box-shadow:5px 5px 5px #333;
}

.fest_nav li a:hover {
	opacity: 1;
	background-color: #adf347;
}

#fest_theme img {
	display: block;
	margin: 0 auto 30px;
}

#fest_theme div {
	text-align: center;
}

#fest_theme div img {
	margin-bottom: 0;
	text-align: center;
}

#greetings section::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

#greetings section div {
	float: left;
	margin-right: 20px;
	text-align: center;
}

#greetings section div img:last-of-type {
	margin-top: 10px;
}

#greetings section div img {
	display: block;
	margin: auto;
}

#greetings section p {
	line-height: 2em;
}

#greetings section div span {
	display: block;
	font-size: 40px;
	font-weight: bold;
}

#preparation img {
	display: block;
	margin: 0 auto 20px;
}

#atmosphere > img {
	float: left;
	margin-right: 10px;
}

#atmosphere span {
	display: block;
	padding-left: 5px;
	font-weight: bold;
}

#atmosphere div {
	float: left;
	margin-right: 20px;
}

#atmosphere div:last-of-type {
	margin-right: 0;
}

#atmosphere > p::after ,
#atmosphere::after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

