@charset "UTF-8";

#header {
	z-index: 20;
}

#main_visual {
	background-image: url(../images/main_visual_bg.png);
}
@media screen and (max-width:767px) {
	#main_visual {
		overflow: hidden;
	}
}

#main_visual_box {
	position: relative;
}

#main_visual_box img {
	vertical-align: top;
}

#mv_wrap {
	width: 960px;
	margin: 0 auto;
	clear: both;
}

.mv_area_wrap {
	width: 1025px;
	position: absolute;
	left: 0;
	top: 90px;
}
@media screen and (max-width:767px) {
	#mv_wrap {width: auto;}
	.mv_area_wrap {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%,-50%) scale(0.33,0.33);
	}
}

.mv_area_l {
	background: url('../images/h2_area_bg.png') no-repeat;
	width: 542px;
	float: left;
	height: 202px;
	padding: 20px;
	position: relative;
}
.mv_area_l img{z-index: 900;}
.mv_area_l img.mv {
	padding-right: 30px;
	padding-left: 10px;
	z-index: 900;
	display: inline-block;
}

.mv_area_r {
	float: right;
	width: 441px;
}
.mv_area_r_box1 {
	width: 441px;
	height: 97px;
	background: url('../images/mv_r_1.png') no-repeat;
	margin-bottom: 2px;
}

.mv_area_r_box2 {
	width: 441px;
	height: 97px;
	background: url('../images/mv_r_2.png') no-repeat;
	margin-bottom: 2px;
}
.mv_area_r_box3 {
	width: 441px;
	height: 97px;
	background: url('../images/mv_r_3.png') no-repeat;
}

.mv_area_r_box1 h3, .mv_area_r_box2 h3, .mv_area_r_box3 h3 {
	padding: 20px 10px 10px 60px;
}
#slides{
	margin-bottom: 0;
	margin-top: 0;
	width: 1460px;
	height: 552px;
	vertical-align: top;
	position: relative;
}
#gnav_area{
	margin:0 auto;
	width: 1100px;
}
#gnav {
	position: absolute;
	top: 420px;
	left: 0;
	right: 0;
	z-index: 100;
	background: url('../images/ul_bg.png') repeat-y top center;
	background-color: transparent;
	background-size: 100% auto;
}
div#gnav ul.topmenu {
	width: 700px;
}
div#gnav ul li:hover,
div#gnav ul li:focus {color: #212121;}

@media screen and (max-width:767px) {
	div#gnav ul.topmenu {
		width: auto;
		text-align: center;
		padding: 0.5rem 0;
	}
}

.top_bnr {
	margin: 2rem auto;
	text-align: center;
}
@media screen and (min-width:768px) {
	.top_bnr {
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-content: flex-start;
		-ms-flex-line-pack: start;
		align-content: flex-start;
		-webkit-align-items: flex-start;
		-ms-flex-align: start;
		align-items: flex-start;
		max-width: 800px;
	}
}

.top_bnr + .top_bnr {
	margin: 0 auto 2rem;
}
.top_bnr > a {
	display: block;
}
@media screen and (max-width:767px) {
	.top_bnr > a + a {
		margin: 0.5rem 0 0;
	}
}
.top_bnr > a:only-child {}
.top_bnr img {
	width: 100%;
	height: auto;
}

/*--- Main Area ---*/
#main h3 img.toph3 {
	margin-top: -10px;
	margin-bottom: 30px;
}

#content_top {
	width: 960px;
	margin: 0 auto;
}
@media screen and (max-width:767px) {
	#content_top {width: auto;}
}

#top01 {margin: 2rem 0;}

#top01 h3 {margin-bottom: 1.5rem;}
#top01 h3 img {
	height: 2.5rem;
	width: auto;
}
@media screen and (max-width:767px) {
	
	#top01 h3 {overflow: hidden;}
	#top01 h3 img {
		height: 2rem;
		width: auto;
	}
}

#top01 .top01_box_wrap {
	width: 100%;
	margin-bottom: 4rem;
}
#top01 .top01_box_wrap:after {
	content: '';
	display: table;
	clear: both;
}

#top01 .top01_box_wrap > a {
	display: block;
	color: inherit;
	text-decoration: none;
	width: calc( ( 100% - 4rem ) / 3 );
	float: left;
	margin: 0 0 0 2rem;
}
#top01 .top01_box_wrap > a:nth-child(3n+1) {margin-left: 0;}

.top01_box {}
.top01_box p {padding:0 20px;}
.top01_box a {text-decoration: none;}

@media screen and (max-width:767px) {
	#top01 .top01_box_wrap {
		width: auto;
		margin-bottom: 4rem;
	}
	#top01 .top01_box_wrap > a {
		width: auto;
		float: none;
	}
	#top01 .top01_box_wrap > a + a {
		margin: 1rem 0 0;
	}
	#top01 .top01_box_wrap .mosaic-block {
		width: auto;
		float: none;
	}
	#top01 .top01_box_wrap .mosaic-overlay {
		width: auto;
		left: 0;
		right: 0;
	}
	#top01 .top01_box_wrap .mosaic-backdrop img {
		width: 100%;
		height: auto;
	}
}

#top02,
#top03 {
	margin-bottom: 3rem;
}

.top02_box_wrap ul {}
.top02_box_wrap ul li {
	width: calc( ( 100% - 6.25rem ) / 6 );
	float: left;
	margin: 0 0 0 1.25rem;
}
.top02_box_wrap ul li:nth-child(6n+1) {margin-left: 0;}

@media screen and (max-width:767px) {
	
	.top02_box_wrap ul {}
	.top02_box_wrap ul > li {
		width: calc( ( 100% - 0.5rem ) / 2 );
		margin: 0 0 0.5rem 0.5rem;
	}
	.top02_box_wrap ul > li:nth-child(6n+1) {margin-left: 0;}
	.top02_box_wrap ul > li:nth-child(odd) {
		clear: both;
		margin-left: 0;
	}
	.top02_box_wrap ul > li img {
		width: 100%;
		height: auto;
	}
}

.top02_box_wrap ul li.top02_h3 {margin-top: 1.75rem;}
.top02_box_wrap ul li h4 {
	float: right;
	position: relative;
	top: 15px;
}

.greeting_area {
	float: right;
	width: 290px;
	background: url('../images/greeting_bg.png') no-repeat;
	height: 197px;
}

.greeting_area h3 {
	padding: 20px 10px 15px 20px;
}

.greeting_area p {
	padding: 0 10px 0 20px;
	width: 185px;
	font-size: 12px;
	color: #3F3030;
}
@media screen and (max-width:767px) {
	.greeting_area p {
		font-size: 12px;
		line-height: 1.25rem;
	}
}

#top_04 {
	margin: 4rem 0;
	position: relative;
	overflow: hidden;
}
#top_04 > div {
	text-align: center;
	margin: 0 auto;
}
#top_04 > div img {
	margin: 0.25rem 1rem;
	height: 2.5rem;
	width: auto;
}
@media screen and (max-width:767px) {
	
	#top_04 > div img {
		height: 1rem;
		width: auto;
	}
}

/* --- top mainimage --- */
.top_mainvis.num01 {
    background: url("../images/main01_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    width:1460px;
}
.top_mainvis.num02 {
    background: url("../images/main02_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    width:1460px;
}
.top_mainvis.num03 {
    background: url("../images/main03_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    width:1460px;
}
.top_mainvis.num04 {
    background: url("../images/main04_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    width:1460px;
}
.top_mainvis.num01 .mainvis_inner {
    background: url("../images/main01.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    margin: 0 auto;
    position: relative;
    width: 960px;
}
.top_mainvis.num02 .mainvis_inner {
    background: url("../images/main02.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    margin: 0 auto;
    position: relative;
    width: 960px;
}
.top_mainvis.num03 .mainvis_inner {
    background: url("../images/main03.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    margin: 0 auto;
    position: relative;
    width: 960px;
   z-index: 2000;
}
.top_mainvis.num04 .mainvis_inner {
    background: url("../images/main04.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
    height: 570px;
    margin: 0 auto;
    position: relative;
    width: 960px;
}
@media screen and (max-width:767px) {
	.top_mainvis.num01 {
		background: url("../images/main01_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
	.top_mainvis.num02 {
		background: url("../images/main02_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
	.top_mainvis.num03 {
		background: url("../images/main03_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
	.top_mainvis.num04 {
		background: url("../images/main04_bg.jpg") no-repeat scroll center top rgba(0, 0, 0, 0);
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
	.top_mainvis.num01 .mainvis_inner {
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
	.top_mainvis.num02 .mainvis_inner {
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
	.top_mainvis.num03 .mainvis_inner {
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
	.top_mainvis.num04 .mainvis_inner {
		background-size: 100% auto;
		height: 40vw;
		width: 100%;
	}
}

/* --- top snav --- */



/* ------side_news----- */

.side_news {
	float: left;
	width: 640px;
}
@media screen and (max-width:767px) {
	.side_news {
		float: none;
		width: auto;
		position: relative;
	}
}
.side_news h3 {
	position: relative;
	top: -22px;
	margin-bottom: -20px;
	z-index: 1;
}
@media screen and (max-width:767px) {
	.side_news h3 {
		overflow: hidden;
	}
	.side_news h3 img {
		width: auto;
		height: 2rem;
	}
}
.side_news ul {
	height: 150px;
	overflow: auto;
	width: 640px;
	background: url('../images/sidenews_ulbg.png') no-repeat bottom;
}
@media screen and (max-width:767px) {
	.side_news ul {
		height: 150px;
		width: auto;
		background-size: 100% auto;
	}
}

.side_news ul > li {
	padding: 11px 5px 5px 0;
	font-size: 12px;

}
.side_news ul > li span.sidearw {
	width: 5rem;
	float: left;
	font-size: 12px;
	color: #3F3030;
	padding-left: 20px;
}
.side_news ul > li span.news_title {
	float: left;
	width: calc( 100% - 5rem );
}
.side_news ul > li a {
	color: #3F3030;
	text-decoration: underline;
	font-size: 12px;
}
.btn_news {
	position: relative;
	top: 0;
	left: 555px;
	z-index: 2;
}
.btn_rss {
	position: relative;
	top: 5px;
	left: 550px;
	z-index: 2;
}
@media screen and (max-width:767px) {
	.btn_news {
		position: absolute;
		top: 0;
		right: 4rem;
		left: auto;
		z-index: 2;
		transform: translate(0,-100%);
	}
	.btn_rss {
		position: absolute;
		top: 5px;
		right: 1rem;
		left: auto;
		z-index: 2;
		transform: translate(0,-100%);
	}
}
