@charset "utf-8";

* {
    line-height: 1.75;
	font-size: 14px;
}

.naviBox {
    margin: 0;
}

img { max-width: 100%; width: 100%;}


/******************** main ********************/

#main {
	position: relative;
	width: 1160px;
	padding: 160px 0 120px;
	margin: 0 auto;
	letter-spacing: 0.2em;
	text-align: center;
}

#main h2 {
	width: 860px;
	padding-bottom: 80px;
	margin: 0 auto;
}

#main h3 {
	border-bottom: 2px dotted #000;
	width: fit-content;
	padding-bottom: 45px;
	margin: 0 auto 45px;
	font-size: 30px;
	font-weight: bold;
}

#main p {
	font-size: 19px;
	font-weight: bold;
	line-height: 2em;
}

#main p.image {
	width: 660px;
	margin: 95px auto 0;
}

@media only screen and (max-width:767px){
	#main {
		width: auto;
		padding: 60px 10px;
	}

	#main h2 {
		width: 100%;
		padding-bottom: 40px;
	}

	#main h3 {
		width: auto;
		padding-bottom: 20px;
		margin-bottom: 20px;
		font-size: 20px;
	}

	#main p {
		font-size: 15px;
		text-align: left;
	}

	#main p.image {
		width: 100%;
		margin: 40px auto 0;
	}
}


/******************** area1 ********************/

#area1 {
	background: #eeeeef;
	padding: 90px 0 100px;
	text-align: center;
}

#area1 h3 {
	position: relative;
	padding-bottom: 40px;
	font-size: 30px;
	font-weight: bold;
}
#area1 h3::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background: #000;
	width: 284px;
	height: 5px;
}

#area1 p {
	padding-top: 40px;
	font-size: 19px;
	font-weight: bold;
}
#area1 p img {
	max-width: 1160px;
	width: 100%;
}

@media only screen and (max-width:767px){
	#area1 {
		padding: 40px 10px;
	}

	#area1 h3 {
		padding-bottom: 25px;
		font-size: 20px;
	}
	#area1 h3::after {
		width: 142px;
		height: 3px;
	}

	#area1 p {
		padding-top: 20px;
		font-size: 15px;
		text-align: left;
	}
}

/******************** area2 ********************/

#area2 {
	width: 1160px;
	padding: 95px 0;
	margin: 0 auto;
	font-size: 19px;
	text-align: center;
}

#area2 h3 {
	position: relative;
	padding-bottom: 45px;
	font-size: 30px;
	font-weight: bold;
}
#area2 h3::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background: #000;
	width: 284px;
	height: 5px;
}

#area2 p {
	padding-top: 45px;
}

#area2 p.aR {
	text-align: right;
}

#area2 ul {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 1160px;
	margin: 0 auto;
}
#area2 ul li {
	width: 47%;
	padding-top: 70px;
	text-align: left;
}

@media only screen and (max-width:767px){
	#area2 {
		width: auto;
		padding: 40px 10px;
		margin: 0 auto;
		font-size: 15px;
	}

	#area2 h3 {
		padding-bottom: 25px;
		font-size: 20px;
	}
	#area2 h3::after {
		width: 142px;
		height: 3px;
	}

	#area2 p {
		padding-top: 20px;
		font-weight: bold;
		text-align: left;
	}

	#area2 ul {
		width: 100%;
	}
	#area2 ul li {
		width: 49%;
		padding-top: 20px;
		line-height: 1.5em;
	}
	#area2 ul li img {
		padding-bottom: 5px;
	}
}


/******************** area3 ********************/

#area3 {
	background: #eeeeef;
	padding: 90px 0 100px;
	text-align: center;
}

#area3 h3 {
	position: relative;
	padding-bottom: 40px;
	font-size: 30px;
	font-weight: bold;
}
#area3 h3::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	background: #000;
	width: 284px;
	height: 5px;
}

#area3 p {
	padding-top: 40px;
	font-size: 19px;
	font-weight: bold;
}

#area3 ul {
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
	-ms-flex-wrap: wrap;
  	flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 1160px;
	margin: 60px auto 0;
}
#area3 ul li {
	width: 30%;
	font-size: 20px;
}
#area3 ul li img {
	margin-bottom: 30px;
}

@media only screen and (max-width:767px){
	#area3 {
		padding: 40px 10px 20px;
	}

	#area3 h3 {
		padding-bottom: 25px;
		font-size: 20px;
	}
	#area3 h3::after {
		width: 142px;
		height: 3px;
	}

	#area3 p {
		padding-top: 20px;
		font-size: 15px;
		text-align: left;
	}

	#area3 ul {
		display: block;
		width: 80%;
		margin: 30px auto 0;
	}
	#area3 ul li {
		width: 100%;
		padding-bottom: 20px;
		font-size: 16px;
	}
	#area3 ul li img {
		margin-bottom: 5px;
	}
}

/******************** area4 ********************/

#area4 {
	width: 1160px;
	padding: 100px 0 0;
	margin: 0 auto;
}

#area4 h3 {
	position: relative;
	padding-bottom: 40px;
	font-size: 40px;
	font-weight: bold;
	line-height: 1em;
}
#area4 h3 span {
	font-size: 25px;
}
#area4 h3 img {
	width: 103px;
	margin-right: 10px;
	vertical-align: baseline;
}
#area4 p {
	padding-bottom: 50px;
}

@media only screen and (max-width:767px){
	#area4 {
		width: auto;
		padding: 40px 10px 0;
		margin: 0 auto;
	}

	#area4 h3 {
		padding-bottom: 20px;
		font-size: 18px;
	}
	#area4 h3 span {
		font-size: 15px;
	}
	#area4 h3 img {
		width: 40px;
		margin-right: 5px;
	}
	#area4 p {
		padding-bottom: 20px;
	}
}


/******************** banner ********************/

#banner {
	width: 708px;
	padding: 100px 0 150px;
	margin: 0 auto;
}
#banner a:hover {
	opacity: 0.6;
}
@media only screen and (max-width:767px){
	#banner {
		width: 90%;
		padding: 40px 0;
	}
}