@charset "UTF-8";


/*----------------------------------------------------------------------

Reset Style

----------------------------------------------------------------------*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td { 
  margin: 0;
  padding: 0;
}

img { 
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

a {
  color: #555;
}

body {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  background-color: #ffffff;
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
    overflow-x:hidden;/*横スクロールのバーを表示しない*/
}


/*----------------------------------------------------------------------

テキスト

----------------------------------------------------------------------*/


/*タイトル*/

h1{
	display:inline;
	float:left;
	margin:0 0 0 20px;
	width:180px;
	}

h1 img{
	width:180px;
	z-index: 10;
	}


/*トップキャッチコピー*/

h2{
	font-size:30px;
	font-weight: 600;
	color:#57ab28; 
	line-height:1.2em;
	}


h2.white{
	font-size:40px;
	font-weight: 600;
	color:#fff; 
	line-height:1.2em;
	}


h4.white{
	font-size:24px;
	font-weight: 600;
	color:#fff; 
	line-height:1.2em;
	}

.white span{
	font-size:16px;
	}



/*メインビジュアル内テキストー*/

#main_txtbox p{
	margin:10px 0 0;
	font-size:20px;
	color:#666;	
	width:450px;
	line-height:1.2em;
	}

#main_txtbox2 p{
	margin:10px 0 0;
	font-size:14px;
	color:#333;	
	max-width:600px;
	line-height:1.8em;
	}

#sm_main_txtbox2{
	display: none;
}


#main_txtbox2 h2{
	color:#666; 
	}
#main_txtbox2 h4{
	color:#666; 
	}


/*メニューラベルー*/

h3{
	font-size:38px;
	margin:40px 0 10px;
	font-weight:normal;
	text-align:center;
	color:#333;
	
	}


h4{
	font-size:24px;
	margin:20px 0 10px;
	}
	
	
h5{
	font-size:18px;
	margin:20px 0 0;
	font-weight:bold;
	color:#333;
	}

h6{
	font-size:24px;
	font-family: "ヒラギノ角ゴ Pro W3";
	margin: 30px 0px ;
	border-bottom: #C5C5C5 solid 1px ;
	padding-bottom: 16px ;
	}


#profile{
	font-size:12px;
	padding: 0;
	margin:20px 0;
	
}


.rec{
	text-align:left;
	margin:0 20px 0 20px;
	color:#333;
	}


/*メニューラベル下部テキストー*/

p.read{
text-align:center;
color:#666;
margin:5px 0 20px;
line-height:1.5em;
font-size:18px;
	}

/*リストメニュー*/

ol{
	margin:20px 0;

}

li{
text-align:left;
line-height:30px;
}


.last{
	margin:0 0 20px;
	padding:0 80px;
	}

.text_01{
	text-align:left;
}


/*----------------------------------------------------------------------

メニューバー

----------------------------------------------------------------------*/


#menu{
	float:right;
	margin:0 20px 0 0;	}


#fixedBox{
	width:100%; margin:0 auto 0; text-align:center; box-shadow: 0px 1px 4px 1px rgba(0,0,0,0.1) ;    position: fixed;    background-color: rgba(255,255,255,0.8);  
	}


#fixedBox_inner{
	height:50px; max-width:1200px; margin:0 auto; padding:10px;}


.fixed {
    position: fixed;
    top: 0;
    z-index:10000;
	width:100%;
}


/*----------------------------------------------------------------------

メインビジュアル

----------------------------------------------------------------------*/



#top_bg1{
width:100%;
margin:0 auto 0;
text-align:center;
padding:70px 0 0;
}

#top_bg{
width:100%;
margin:0 auto 0;
text-align:center;
padding:70px 0 0;
}

#top_bg2{
width:100%;
margin:0 auto 0;
text-align:center;
padding:70px 0 0;
}

#top_bg3{
width:100%;
margin:0 auto 0;
text-align:center;
padding:70px 0 0;
}



#top_photo{
margin:0 auto;
max-width:1200px;
}

#top_photo img{
width:100%;
/*vertical-align:bottom;*/
	}
	
	
/*----------------------------------------------------------------------

コンテンツコンテナ

----------------------------------------------------------------------*/

/*上限枠設定ー*/
.container1200{
	margin:0 auto;
	max-width:1200px;
	}

/*トップページメインコピー設定ー*/

#main_txtbox{
	width:600px;
	height:0;
	margin:0 0 0 20px;
	position:relative;
	top:-300px;}

#main_txtbox2{
	width: 640px;
	height: 0;
	margin: 0 0 0 100px;
position: relative;
	top: -350px;
	
}

#main_txtbox2 h4{
	font-size: 16px;
	font-weight: bold;
	
}

/*各オブジェクト共通枠設定ー*/
.zone{
clear:both;
margin:40px auto;
overflow:hidden;
height:auto;
text-align:center;
	max-width:1200px;
display:flex;justify-content: center;
	}

.zone img{
max-width:100%;
height: auto;
width /***/:auto;
	}

.zone p{
	padding:5px 20px 5px;
	text-align:left;
	color:#333333;
	font-size:14px;
	margin:0 0 20px;
	line-height:1.6em;
	}


.zone2{
clear:both;
margin:40px auto;
overflow:hidden;
height:auto;
text-align:left;
max-width:1200px;
	}

.zone2 p{
	padding:5px 20px 5px;
	text-align:left;
	color:#333333;
	font-size:14px;
	margin:0 0 20px;
	line-height:1.6em;
	}


/*グレー背景ー*/
.gray_bg{
	background-color:#D7EBD1;
	padding:20px 0;
			text-align:center;
	}

/*グレー背景ー*/
.contact{
	width:80px;
	margin:0 auto -30px;
	
	}


/*3カラム版*/

.area3{
	margin:0 5px 30px;
	text-align:center;
	width:30%;
		
	}

/*4カラム版*/

.area4{
	width:23%;
		margin:0 12px 50px;
		text-align:center;
	}



/*2カラム版*/

.area2{
	width:48%;
		margin:0 7px 30px;
		text-align:center;
	}

/*マップ用*/
#map{
	max-width:600px;
	margin:0 auto;

/*
clear:both;
overflow:hidden;
height:auto;
text-align:center;

display:flex;justify-content: center;
*/


	}


/*----------------------------------------------------------------------

共通用全体テキストページ

----------------------------------------------------------------------*/

.txtbox{
clear:both;
margin:40px auto;
overflow:hidden;
height:auto;
text-align:left;
	max-width:1000px;
	padding:0 20px;
	}

.txtbox ol{
	padding:0 0 0 20px;	
	font-size:14px;
	}

.txtbox ol li{
	line-height:1.3em;
	margin:5px 0 0;
	}

	
.signature{
text-align:right;
	}

.txtbox ul{
	list-style:disc;
	padding:0 0 0 20px;	
	font-size:14px;
	}


.txtbox h5{
	margin:20px auto 10px;	
	font-size:20px;
	}



.txtboxNews{
clear:both;
margin:40px auto;
overflow:hidden;
height:auto;
text-align:left;
	max-width:900px;
	padding:0 20px;
	}


/*----------------------------------------------------------------------

テーブル

----------------------------------------------------------------------*/

/*会社概要*/

.about th{
	vertical-align:top;
	padding:10px;
	width:35%;
	}



.about td{
	margin:20px 0 20px 0;
	padding:10px;
	white-space: nowrap;
	}


.about{
	margin:0 auto;
	text-align: left;
	}

/*マップ*/

.address {
	text-align: left;
}

.address th{
	vertical-align:top;
	padding:10px;
	width:20%;
	}



.address td{
	margin:20px 0 20px 0;
	padding:10px;
	}
	
/*取引先*/
.partner td{
	padding:10px;
	vertical-align:top;
	}


.partner{
	text-align:center;
	margin:0 auto;
}


/*沿革*/

.history th{
	vertical-align:top;
	padding:10px;
	width:12%;
	white-space: nowrap;
	}



.history td{
	margin:20px 0 20px 0;
	padding:10px;
	}


/*取引先*/






/*----------------------------------------------------------------------

ボタン

----------------------------------------------------------------------*/


.btn_area {
	text-align:center; 
	margin:0 auto;
	width:200px;

	}

.btn_area a{
	 display:block;
	 text-align:center;
	 border:1px solid #129F02;
	 color:#fff;
	 background-color:#129F02;
	 text-decoration:none;
	 font-size:16px;
	 width:200px;
	 height:40px;
	 line-height:40px;
	transition: 0.8s ;
}

.btn_area a:hover{
 color:#129F02; background-color:#fff;
}


/*----------------------------------------------------------------------

トップ用リンク

----------------------------------------------------------------------*/


.toplink{
	margin:15px auto 0;
	 display:block;
	 text-align:center;
	 color:#333;
	 text-decoration:none;
	 font-size:20px;
	 font-weight:bold;
	 line-height:60px;
	transition: 0.8s ;
}

.toplink:hover{
	opacity: 0.6 ;
}



/*----------------------------------------------------------------------

フッター

----------------------------------------------------------------------*/


/*グレー背景ー*/
#footer_container{
	background-color:#57ab28;
	padding:20px 0;

	}



#footer_container_inner
{
	max-width:1200px;
	margin:0 auto 0;

	}

#footer_container dl {
	text-align:left;
	}

#footer_container dt {
	font-size:18px;
	margin:0 0 10px 0;
	color:#fff;
	font-weight:bold;
	background-color:#129F02;
	padding:3px 10px;
	}

#footer_container dd a {
	font-size:14px;
	color:#ddd;
	text-decoration:none;
	padding:3px 10px;
	width:90%;
	display:block;
	margin:0 0 5px;
	transition: 0.6s ;
	}
	
#footer_container dd a:hover {
 color:#fff; background-color:#129F02;
	}


#copyright{
	clear:both;
	font-size:14px;
	color:#fff;
	text-align:center;
	}

copyright_b{
	clear:both;
	font-size:14px;
	color:#000;
	text-align:center;
	}

/*----------------------------------------------------------------------

メニューページ

----------------------------------------------------------------------*/


/*グレー背景ー*/
#menu_container{
	background-color:#FFF;
	padding:20px 0;
	margin:0 auto 0;
	text-align:center;
	}



#menu_container_inner
{
	max-width:1200px;
	margin:0 auto 0;

	}

#menu_container dl {
	text-align:center;
	display:block;
	}

#menu_container dt {
	font-size:18px;
	margin:10px 0 10px 0;
	color:#fff;
	font-weight:bold;
	background-color:#129F02;
	padding:3px 10px;
	width:90vw;
	text-align:center;
	}

#menu_container dd a {
	width:100%;
	font-size:14px;
	color:#000;
	text-decoration:none;
	padding:6px 10px;
	width:90vw;
	display:block;
	margin:0 0 5px;
	border-bottom:1px solid #666;
	}
	
#menu_container dd a:hover {
 color:#fff; background-color:#129F02;
	}


#copyright{
	clear:both;
	font-size:14px;
	color:#fff;
	text-align:center;
	}

/*----------------------------------------------------------------------

map

----------------------------------------------------------------------*/

.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}





/*----------------------------------------------------------------------

ウィンドウサイズ別

----------------------------------------------------------------------*/


@media screen and (max-width: 1200px) {

#top_bg3{
background:none;
}


}


@media screen and (max-width: 1040px) {

/*トップキャッチコピー*/

h2{
	font-size:24px;
	}

/*メインビジュアル内テキストー*/

#main_txtbox p{
	font-size:16px;
	}


/*トップページメインコピー設定ー*/

#main_txtbox{
	top:-250px;
	width:360px;
	}


#main_txtbox2{
	top:-265px;
	width:640px;
	}
	
#main_txtbox2 p{
	max-width:520px;
	}
	
}




@media screen and (max-width: 768px) {

.last{
	margin:0 0 30px;
	padding:0;
	}

#profile{
	padding:0 20px;
	
}

#top_bg3{
width:100%;
margin:0 auto 0;
padding:70px 0 0;
margin:0 auto 0;
background-color:#eee;
}


#top_bg1{
width:100%;
margin:0 auto 0;
padding:70px 0 0;
margin:0 auto 140px;
background-color:#eee;
}

#top_bg{
width:100%;
margin:0 auto 0;
padding:70px 0 0;
margin:0 auto 0;
background-color:#eee;
}

/*メインビジュアル内テキストー*/

#main_txtbox p{
width:90%;
	}


/*トップページメインコピー設定ー*/

#main_txtbox{
	width:90%;
	margin:30px 10px -170px;
	top:-350px;

	}

#main_txtbox2{
	display:none;

	}

#sm_main_txtbox2{
	margin: 20px auto;
	}
	
	
#main_txtbox2 h4{
	font-size:14px;

	}

#main_txtbox2 h2{
	font-size:26px;

	}
#sm_main_txtbox2 h4{
	font-size:14px;
	text-align: left;
	padding: 0 20px;
	font-weight:bold;
	}

#sm_main_txtbox2 h2{
	font-size:20px;
	text-align: left;
	padding: 0 20px;
	}

#sm_main_txtbox2{
	display: block;
}


#sm_main_txtbox2 p{
	margin: 0;
	padding: 0 20px;
}
	
	
/*メニューラベル下部テキストー*/

p.read{
color:#666;
margin:5px 20px 20px;
line-height:1.5em;
font-size:16px;
	}


.gray_bg2{
	background-color:#D7EBD1;
	height:220px;
	position:relative;
	top:-150px;	
	}

.gray_bg3{
	background-color:#333;
	position:relative;
	top:-150px;	
	height:500px;
	}



/*各オブジェクト共通枠設定ー*/
.zone{
clear:both;
margin:40px auto 20px;
overflow:hidden;
height:auto;
text-align:center;
max-width:1200px;
display:block;
	}

.zone img{
max-width:100%;
height: auto;
width /***/:auto;
	}


/*3カラム版*/

.area3{
	margin:0 5px 30px;
	text-align:center;
	width:100%;
/*	border-top:solid 1px #ccc;*/
	padding:10px 0 0 0;
		
	}


/*4カラム版*/

.area4{
	width:45%;
		margin:0 2% 20px;
		text-align:center;
		float:left;
	}

/*2カラム版*/

.area2{
	width:100%;
		margin:0 7px 30px;
		text-align:center;
	}

/*メニューラベルー*/

h3{
	font-size:18px;
	margin:20px 0 10px;
	font-weight:bold;
	text-align:left;
	color:#fff;
	background-color:#333;
	padding:5px 20px;
	
	}
	

h3.top{
	font-size:38px;
	margin:20px 0 10px;
	font-weight:normal;
	text-align:center;
	color:#333;
	background:none;
	
	}
	
#news_container_inner{
	text-align:left;
	padding:0 10px;
	}



h4{
	font-size:20px;
	margin:20px 0 10px;
	}

h6{
	font-size: 20px;
		
	}
	
}

@media screen and (max-width: 540px) {



}




@media screen and (max-width: 380px) {




}





@media screen and (max-width: 320px) {





}
