@charset "utf-8";
/* CSS Document */

.main {
	background:#F5C771 url( "../images/top/main.jpg") no-repeat left center;
	padding: 160px 0;
	max-width: 1600px;
	width: 80%;
	margin: auto;
	position: relative;
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
}@media screen and (max-width: 767px) {
	.main {
		width: 100%;
		background-size: cover;
		background-position: top;
		padding: 100px 0;
		position: relative;
		border-radius: 0;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
	}

}

.main h2 {
	font-size: 38px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
	line-height: 140%;
}

.main h2 span {
	font-size: 28px;
}

@media screen and (max-width: 767px) {
	.main h2 {
		font-size: 18px;
		text-shadow: 1px 1px 3px #808080;
	}
}

.main .reaf {
	position: absolute;
	top: 0;
	right: 0;
}@media screen and (max-width: 767px) {
	.main .reaf {
		display: none;
	}
}


.content01 {
	padding: 120px 0 0;
}@media screen and (max-width: 767px) {
	.content01 {
		padding: 60px 5vw 0;
	}
}

.content01 .flexbox {
	display: flex;
	max-width: 1080px;
	margin: 90px auto 0;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}@media screen and (max-width: 767px) {
	.content01 .flexbox {
		margin: 20px auto 0;
	}
}


.content01 .flexbox .photo {
	max-width: 600px;
}

.content01 .flexbox .photo img {
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
}

@media screen and (max-width: 767px) {
	.content01 .flexbox .text {
		margin-top: 15px;
	}
}


.content01 .flexbox p {
	max-width: 400px;
	margin-left: 20px;
	min-width: 320px;
}@media screen and (max-width: 767px) {
	.content01 .flexbox p {
		margin: 0;
	}
}

.content02 {
	padding: 120px 0 0;
	background: url("../images/common/back2.png") no-repeat left top;
}@media screen and (max-width: 767px) {
	.content02 {
		padding: 60px 5vw 0;
	}
}

.content02 .flexbox {
	max-width: 1080px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 90px auto 0;
}@media screen and (max-width: 767px) {
	.content02 .flexbox {
		margin: 20px auto 0;
	}
}

.content02 .flexbox .box {
	max-width: 500px;
	padding-bottom: 60px;
/*	border-bottom: #998675 dotted 1px;
	margin-bottom: 40px;*/
}

.content02 .flexbox .box img {
	border-radius: 30px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
}

.content02 .flexbox .box h4 {
	font-size: 24px;
	font-weight: bold;
	line-height: 120%;
	margin-top: 15px;
}

.content02 .flexbox .box h4 span {
	font-size: 21px;
	font-weight: normal;
}@media screen and (max-width: 767px) {
	.content02 .flexbox .box h4 span {
		font-size: 18px;
	}
}

.content02 .flexbox .box p {
	color: #333;
	margin-top: 15px;
	line-height: 180%;
}@media screen and (max-width: 767px) {
	.content02 .flexbox .box p br {
		display: none;
	}
}

.content02 .flexbox .box p.nw {
	white-space: nowrap;
}@media screen and (max-width: 767px) {
	.content02 .flexbox .box p.nw {
		white-space: normal;
	}
}

.content03 {
	padding: 60px 0 60px;
	background: url("../images/common/back2.png") no-repeat left top;
}@media screen and (max-width: 767px) {
	.content03 {
		padding: 40px 5vw;
	}
}

.content03 .flexbox {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 90px auto;
}

.content03 .flexbox .box {
	background: #000;
	max-width: 500px;
	margin: 0 20px;
/*	border-bottom: #998675 dotted 1px;
	margin-bottom: 40px;*/
}@media screen and (max-width: 767px) {
	.content03 .flexbox .box {
		margin: 10px auto;
	}
}
