@charset "UTF-8";

/* --- ヒーローエリア ---*/
section.hero_front {
	background: url(../img/hero_front.jpg) no-repeat center center;
}

/* --- ボタン --- */
div.more {
	text-align: center;
}

div.more a {
	display: inline-block;
	background: url(../img/icon_tri.png) no-repeat left center;
	padding: 6px 8px 6px 20px;
	font-size: 18px;
}

/* --- CONCEPT --- */
section.front_concept {
	padding: 45px 30px 85px;
}

section.front_concept div.text {
	padding-bottom: 45px;
}

section.front_concept div.text p {
	font-size: 16px;
	margin-bottom: 1em;
}

section.front_concept div.image img {
	display: block;
	width: 575px;
	height: auto;
	margin: 0 auto;
}

/* --- WEDDING-PLAN --- */
section.front_plan {
	padding: 50px 30px;
	background: #eeeeee;
}

section.front_plan h2 {
	letter-spacing: 0.6em;
}

section.front_plan div.box div.content {
	margin-bottom: 60px;
}

section.front_plan div.box div.content:last-child {
	margin-bottom: 0px;
}

section.front_plan div.content a {
	display: block;
}

section.front_plan div.content h3 {
	font-size: 16px;
	font-weight: 400;
	text-align: center;
}

section.front_plan div.content img {
	display: block;
	width: 440px;
	height: auto;
	margin: 0 auto 15px;
}

/* --- LOCAION-INFO ---- */
section.front_loc {
	padding: 60px 30px 80px;
}

section.front_loc h2 {
	letter-spacing: 0.6em;
}

section.front_loc div.box {
	width: 440px;
	margin: 0 auto 40px;
}

section.front_loc div.box div.content {
	background: #eeeeee;
	padding-bottom: 70px;
}

section.front_loc div.content h3 {
	font-size: 18px;
	font-weight: 500;
	margin: 0px 15px 30px;
}

section.front_loc div.content p {
	font-size: 16px;
	margin: 0px 15px;
}

section.front_loc div.content img {
	display: block;
	width: 440px;
	height: auto;
	margin: 0 auto 30px;
}

/* --- PHOTO-GALLERY --- */
section.front_photo {
	padding: 50px 30px;
	background: #eeeeee;
}

section.front_photo h2 {
	letter-spacing: 0.6em;
}

section.front_photo ul {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
}

section.front_photo ul li {
	flex: 0 0 50%;
}

section.front_photo ul li img {
	display: block;
	width: 100%;
	height: auto;
	border: 3px solid #eeeeee;
}

/* --- ABOUT-US --- */
section.front_about {
	padding: 55px 30px 90px;
}

section.front_about p {
	font-size: 16px;
}
section.front_about h3 {
	font-size: 18px;
	font-weight: 400;
}

section.front_about p.catch,
section.front_about h3 {
	margin-bottom: 1em;
}

section.front_about div.box div.text {
	margin-bottom: 40px;
}

section.front_about div.box div.map iframe {
	border: 0;
	width: 100%;
	height: 265px;
}

/* デスクトップ用 */
@media(min-width:1067px) {
	/* --- ボタン --- */
	div.more a {
	font-size: 16px;
	}
	/* --- CONCEPT --- */
	section.front_concept {
	padding: 70px 0px 55px;
	}
	section.front_concept div.box {
	display: flex;
	align-items: flex-start;
	}
	section.front_concept div.text {
	flex: 1;
	margin-right: 15px;
	padding-bottom: 0px;
	}
	section.front_concept div.imag {
	flex: 0 0 363px;
	}
	section.front_concept div.image img {
	width: 363px;
	}
	/* --- WEDDING-PLAN --- */
	section.front_plan {
	padding: 55px 0px 60px;
	}
	section.front_plan h2 {
	letter-spacing: 1em;
	}
	section.front_plan div.box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	}
	section.front_plan div.box div.content {
	margin-bottom: 0px;
	}
	section.front_plan div.content img {
	width: 294px;
	}
	/* --- LOCAION-INFO ---- */
	section.front_loc {
	padding: 50px 0px;
	}
	section.front_loc h2 {
	letter-spacing: 1em;
	}
	section.front_loc div.box {
	width: 100%;
	display: flex;
	margin-bottom: 25px;
	}
	section.front_loc div.box div.content {
	flex: 1;
	padding-bottom: 45px;
	}
	section.front_loc div.content h3 {
	font-size: 16px;
	margin: 0px 15px 15px;
	}
	section.front_loc div.content p {
	font-size: 14px;
	margin: 0px 15px;
	}
	section.front_loc div.content img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 auto 30px;
	}
	section.front_loc div.box div.content:nth-child(2) {
	display: flex;
	flex-direction: column-reverse;
	padding-bottom: 0px;
	}
	section.front_loc div.box div.content:nth-child(2) div.text {
	padding-bottom: 45px;
	}
	section.front_loc div.box div.content:nth-child(2) img {
	margin-bottom: 0px;
	}
	/* --- PHOTO-GALLERY --- */
	section.front_photo {
	padding: 50px 0px 60px;
	}
	section.front_photo h2 {
	letter-spacing: 1em;
	}
	section.front_photo ul {
	margin-bottom: 25px;
	}
	section.front_photo ul li {
	flex: 0 0 25%;
	}
	section.front_photo ul li img {
	border: 1px solid #eeeeee;
	}
	/* --- ABOUT-US --- */
	section.front_about {
	padding: 80px 0px 110px;
	}
	section.front_about h3 {
	font-size: 16px;
	}
	section.front_about div.box {
	display: flex;
	align-items: flex-start;
	}
	section.front_about div.box div.text {
	flex: 1;
	margin-bottom: 0px;
	padding-right: 80px;
	}
	section.front_about div.box div.map {
	flex: 0 0 420px;
	}
	section.front_about div.box div.map iframe {
	height: 230px;
	}
}

/* スマートフォン用 */
@media(max-width:641px) {
	section.front_concept div.image img,
	section.front_plan div.content img,
	section.front_loc div.box,
	section.front_loc div.content img {
	width: 100%;
	}
}