@charset "utf-8";
/* CSS Document */
header h2 {
	color: #fff;
}
.kv {
	background: url(../images/top/main.jpg) no-repeat center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	position:relative;
}
.kv #main_ttl {
	position: absolute;
	left: 50%;
	margin-left: -147px;
	top: 50%;
	margin-top: -90px;
}
#top1 {
	width: 100%;
	background: url(../images/top/ph01.png) no-repeat right bottom;
	background-size: auto auto;
	padding: 40px 0 200px;
}
#top1 #top1_in {
	max-width: 1000px;
	width: 90%;
	margin: 0px auto;
}
#top1 #top1_in p {
	max-width: 400px;
}
#top2 {
	width: 100%;
	background-color: #eee;
	padding: 60px 0 50px;
	margin-bottom: 70px;
}
#top2 #top2_in {
	max-width: 1000px;
	width: 90%;
	margin: 0px auto;
	position: relative;
}
#top2 #top2_in .t2_l {
	width: 40%;
	position: absolute;
	top: -200px;
	left: -130px;
}
#top2 #top2_in .t2_l img {
}
#top2 #top2_in .t2_r {
	width: 65%;
	margin-left: 35%;
}
#top2 #top2_in .t2_r dl,
#top2 #top2_in .t2_r dt,
#top2 #top2_in .t2_r dd {
	margin: 0;
}
#top2 #top2_in .t2_r .t_news {
	border-top: #aaa 1px dotted;
}
#top2 #top2_in .t2_r .t_news dl {
	border-bottom: #aaa 1px dotted;
	display: table;
	width: 100%;
	line-height: 160%;
	padding: 10px 0;
}
#top2 #top2_in .t2_r .t_news dt {
	display: table-cell;
}
#top2 #top2_in .t2_r .t_news dd {
	display: table-cell;
	width: 140px;
	font-size: 90%;
}
#top3 {
	max-width: 1000px;
	width: 90%;
	margin: 0px auto 60px;
	overflow: hidden;
}
#top3 li {
	float: left;
	margin-right: 5%;
	width: 30%;
}
#top3 li:last-child {
	margin-right: 0;
}
#top3 li p.ph {
}
#top3 li span {
	display: block;
	font-size: 110%;
	font-weight: 500;
	margin-bottom: 10px;
}
#top4 {
	max-width: 650px;
	width: 90%;
	margin: 0px auto 50px;
}
#top4 dt {
	text-align: center;
	font-size: 120%;
	font-weight: 600;
	margin-bottom: 20px;
}
#top4 dd {
	margin-bottom: 30px;
}
#top4 dd a {
	display: block;
	text-align: center;
	background-color: #AE161D;
	color: #fff;
	padding: 15px 0;
}
#top4 dd a span {
	display: inline-block;
	padding-left: 15px;
	line-height: 100%;
	position: relative;
	top: -10px;
}
#top4 dd a:hover {
	background-color: #9D1015;
}





@media screen and (max-width: 980px) {
}





@media screen and (max-width: 680px) {
#top1 {
	background: url(../images/top/ph01.png) no-repeat right bottom;
	background-size: 70% auto;
	padding: 40px 0 100px;
}
#top2 #top2_in .t2_l {
	width: 50%;
	position: absolute;
}
#top2 #top2_in .t2_l {
	top: -170px;
	left: -50px;
}
#top2 #top2_in .t2_r {
	width: 100%;
	margin-left: 0;
	position: relative;
}
#top2 #top2_in .t2_r .t_news dl,
#top2 #top2_in .t2_r .t_news dt,
#top2 #top2_in .t2_r .t_news dd {
	display: block;
}
#top2 #top2_in .t2_r .t_news dl {
	padding: 0 0 15px;
}
#top2 #top2_in .t2_r .t_news dt {
}
#top2 #top2_in .t2_r .t_news dd {
	background-color: #777;
	color: #fff;
	line-height: 100%;
	padding: 5px 10px;
	margin-bottom: 7px;
}
#top3 li {
	float: none;
	margin-right: 0;
	width: 100%;
	margin-bottom: 40px;
}
#top3 li p.ph {
	float: right;
	width: 38%;
	margin-left: 2%;
}
#top3 li span {
}
#top4 dt {
	text-align: left;
	font-size: 120%;
	font-weight: 600;
	margin-bottom: 20px;
}
}





@media screen and (max-width: 480px) {
.kv #main_ttl {
	width: 200px;
	position: absolute;
	left: 50%;
	margin-left: -100px;
	top: 50%;
	margin-top: -70px;
}
#top1 {
	background: url(../images/top/ph01.png) no-repeat right bottom;
	background-size: 60% auto;
	padding: 40px 0 100px;
}
#top4 dt {
	font-size: 110%;
	font-weight: 700;
	line-height: 180%;
}
#top4 dd img {
	width: 30px;
}
#top4 dd a span {
	display: inline-block;
	padding-left: 15px;
	line-height: 100%;
	position: relative;
	top: 0px;
}
}