@charset "utf-8";
/*
------------------*/


/*body
------------------*/
body{
	margin:0px;
	padding:0px;
	background:#FFFFFF;
	border-top:solid 5px #58b131;
	color:#444;
	font-size:14px;
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro" , sans-serif;
	line-height:1.5;
	text-align:left;
}

/*wrapper
------------------*/
#WRAPPER{
	margin:0px auto;
	padding:0px;
}
#wrapper_inner{
	margin:0 auto;
}
.inner{
	width:98%;
	margin:0 auto;
}
@media (max-width: 767px) {
  .inner {
  }
}
@media (min-width: 768px) {
  .inner {
    max-width: 960px;
  }
}


/*header
------------------*/
#header{
	padding:0 0px;
	margin:10px 0 0px 0;
	height:150px;
	zoom:1;
	overflow:hidden;
}
#header #logo{
	float:left;
	height:90px;
	line-height:1;
	max-width:50%;
	margin:0px 0 5px 0;
	img{
		width:100%;
		height:auto;
	}
}
#headeraddress{
	float:right;
	margin:10px 0 0 0;
}
#headeraddress p{
	line-height:20px;
	margin:0;
	vertical-align:middle;
}
#headeraddress .tel{
	font-size:20px;
	color:#58b131;
	font-weight:bold;
	vertical-align:bottom;
}
#headeraddress img{
	vertical-align:middle;
}
@media (max-width: 767px) {

	#headeraddress{
		float:none;
		clear:both;
	}

	#spnavi{
		float:right;
		width:30%;
		margin:15px 0 0 0;
	}
	#spnavi a{
		border:solid 1px #a6a385;
		padding:5%;
		display:block;
		text-align:center;
		color:#7e7737;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		background: -moz-linear-gradient(top, #FFF 0%, #ddd9ba 98%);
		background: -webkit-linear-gradient(top, #FFF 0%, #ddd9ba 98%);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FFF), color-stop(98%,#ddd9ba));
	}
}
#headernavi{
	float:right;
	clear:right;
	overflow:hidden;
	zoom:1;
	margin:10px 0 0 0;
}
#fontsize{
	border:solid 1px #CCC;
	-mos-border-radius:3px;
	-webkit-border-radius:3px;
	border-radius:3px;
	padding:5px 5px;
	background: -webkit-linear-gradient(#FFF, #EEE);
	background: linear-gradient(#FFF, #EEE);
}
#fontsize span{
	font-size:10px;
	padding:3px 8px 3px 5px;
	border-right:1px dotted #CCC;
	line-height:14px;
}
#fontsize a{
	font-size:14px;
	font-weight:bold;
	padding:3px 5px;
	color:#000;
	text-decoration: none;
}
#fontSizeSmall{
	margin-left:8px;
}
#fontsize a:hover{
	background-color:#EEE;
}

@media (max-width: 767px) {
	#fontsize{
		display:none;
	}
}

#mainnavi{
	clear:both;
	padding:0;
	margin:0px 0 0 0;
	height:50px;
}
#mainnavi ul{
	overflow:hidden;
	list-style:none;
	margin:0px auto 0px auto;
	padding:0px 0;
}
#mainnavi ul li{
	float:left;
	margin:0px 0 0px 0px;
	padding:0px 0 0 0;
	width:160px;
	line-height:1;
	height:60px;
	text-align:center;
}
#mainnavi ul li img{
	width:140px;
}
#mainnavi ul li a{
	transition-duration: 0.2s;
	border-left:1px dotted #CCC;
	border-bottom:4px solid #FFF;
	display:block;
}
#mainnavi ul li:first-child a{
	border-left:0px dotted #CCC;
}
#mainnavi ul li a:hover,
#bodyabout #mainnavi ul li.navi_about a,
#bodygairai #mainnavi ul li.navi_gairai a,
#bodynyuin #mainnavi ul li.navi_nyuin a,
#bodyservice #mainnavi ul li.navi_service a,
#bodyaccess #mainnavi ul li.navi_access a,
#bodycontact #mainnavi ul li.navi_contact a{
	border-bottom:4px solid #ddd9ba;
}


#TopicPath{
	margin:0px auto 10px auto;
	font-size:12px;
}
/*maincol
------------------*/
#main{
	clear:both;
	padding:0 0px;
	margin:0px auto;
}
#main #main_inner{
	display:flex;
	gap:20px;
}
@media (max-width: 767px) {
	#main{
		padding:0 0px;
		margin:20px auto;
	}
	#main #main_inner{
		flex-direction:column;
	}
	#maincol{
		order:2;
	}
	#sidecol{
		order:1;
	}
}

/*main
------------------*/
#maincol{
	margin:0px 0px 20px 0;
	@media (min-width: 768px) {
		width:740px;
	}
}

#maincol article {
	padding:0px 20px 0px 20px;
	margin:0 0 30px 0;
	background-color:#FFF;
	overflow:hidden;
}
#maincol .kiji {
}
#maincol .kiji2 {
	background-color:#FFFCF6;
	border-top:solid 1px #ddd9ba;
	border-bottom:solid 1px #ddd9ba;
}

/*sidecol
------------------*/
#sidecol{
	width:95%;
	margin:0 auto;
	
	@media (min-width: 768px) {
		width:200px;
	}
}
#sidecol img{
	width:100%;
}
#sidecol #secondnavi{
	border-top:5px solid #58b131;
	border-bottom:1px solid #58b131;
}
#sidecol #secondnavi a{
	color: #433E22;
}
#sidecol #secondnavi h2{
	color: #4B6D0A;
	background-color:#F3FFE9;
	border-bottom:1px solid #58b131;
	padding:10px 10px;
	margin:0;
	font-size:1.2em;
	@media (max-width: 767px) {
		display:none;
	}
}
#sidecol #secondnavi ul{
	list-style:none;
	margin:0;
	padding:0;
}
#sidecol #secondnavi ul li{
	border-bottom:1px dotted #58b131;
}
#sidecol #secondnavi ul li a{
	display:block;
	padding:10px 10px;
	background:url(../../img/common/arr.png) no-repeat 95% 45%;
}
#sidecol #bannerarea{
}
#sidecol #bannerarea ul{
	list-style:none;
	margin:20px 0;
	padding:0;
}
#sidecol #bannerarea ul li{
	margin:0 0 10px;
	padding:0;
	text-align:center;
}
/*footer
------------------*/
#totop{
	clear:both;
	margin:0 20px 0px 0px;
	line-height:33px;
	height:33px;
	text-align:right;
}
#totop a{
	text-decoration:none;
}

#footer{
	background:#58b131 url(../../img/common/bodyback.png) center bottom repeat-x;
	clear:both;
	margin:0 auto;
	padding:0px 20px;
	overflow:hidden;
	color:#FFF;
	@media (min-width: 768px) {
	padding:0px;
	}
	@media (max-width: 767px) {
	font-size:12px;
	}
}
#footer .inner{
	padding:20px 0px 20px 0px;

}
#footer a{
	color:#FFF;
}
#footer a:hover{
	color: #EBE7D0;
}
#footerleft{
	@media (min-width: 768px) {
	float:left;
	}
	width:300px;
	margin:0 50px 0 0;
}
#footernavi{
	margin-top:0px;
	overflow:hidden;
	display:flex;
	@media (min-width: 768px) {
	gap:2em;
	}
	@media (max-width: 767px) {
		flex-direction:column;
		border-radius: 4px 4px 4px 4px;
		background-color:#FFF;
	}
	h2{
		font-size:0.9rem;
		margin:0 0 0.5em;
	}
}
@media (max-width: 767px) {
	#footernavi h2{
		border-top:1px dotted #58b131;
		margin:0 0;
		font-weight:normal;
		padding:0;
	}
	#footernavi h2:first-child{
		border-top:1px dotted #58b131;
	}
	#footernavi h2 a{
		display:block;
		padding:15px;
		position:relative;
		color:#58b131;
	}
	#footernavi h2 a:before{
		content:" ┓";
		-webkit-transform: rotate(45deg); 
		position:absolute;
		top:25%;
		right:8px;
		color:#7e7737;
		font-weight:bold;
	}
}
#footernavi ul{
	list-style:none;
	padding:0;
	margin:0px 0 10px 0;
	@media (max-width: 767px) {
	display:none;
	margin:0px 0 0px 0;
	}
}
#footernavi ul li{
	background:url(../../img/common/arr_w.png) no-repeat left;
	padding:0 0 0 10px;
	margin:0px 0 5px 0;
}
#footer address{
	font-style:normal;
	display:block;
	clear:both;
	margin:0px 0 0 0;
	border-top:1px dotted #FFF;
	padding-top:10px;

}
#copyright{
	clear:both;
	padding:10px;
	margin:0px 0 0 0;
	text-align:left;
}


@media (max-width: 767px) {
	.pc{
		display:none;
	}
}
@media (min-width: 768px) {
	.sp{
		display:none;
	}
}
