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


/*------------------------基本設定-----------------------*/

* {
margin:0;
}

img{
width: 100%;
height: auto;
}

a{
text-decoration:none;
}

/*ページ全体の設定*/

html {
	max-width: 1020px;
	margin: auto;
}

body {
	 font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", sans-serif;
    line-height: 1.7;
	color:#432;
	
}


.mgr-10{
	margin-right:10px;
}
.mgr-20{
	margin-right:20px;
}
.mgr-30{
	margin-right:30px;
}


.mgl-20{
	margin-left:20px;
}

.mgl-30{
	margin-left:30px;
}

.mgl-40{
	margin-left:40px;
}

.mgl-60{
	margin-left:60px;
}


.mgl-80{
	margin-left:80px;
}

.mgl-90{
	margin-left:90px;
}

.mgl-100{
	margin-left:100px;
}


.font-w{
	font-weight:800;
}




/*index全体の設定*/

body {
    display: grid;
	grid-template-columns: 20px 1fr 20px;
	grid-template-rows:
	              [top]  30px
				  [header gnav] 40px
				  [main] auto
				  [snav] auto
				  [bread] auto
				  [company] auto
				  [map] auto
				  [along] auto
				  [supplier] auto
				  [footer] 100px;
				  grid-row-gap:30px;
				  row-gap:30px;
}



/*-------------トップボタン---------------*/



/* 上に戻るボタン */
.pagetop {
	display: none;
	position: fixed;
	bottom: 100px;
	right: 0px;
	font-size: 1.5rem;
	width: 3.3rem;
	height: 3.3rem;
	line-height: 3.3rem;
	border-radius: 3.3rem;
	text-align: center;
	cursor: pointer;
}


.pagetop:hover {
    cursor:pointer;
    filter: alpha(opacity=60);       
    -ms-filter: "alpha(opacity=60)"; 
    -moz-opacity:0.6;                
    -khtml-opacity: 0.6;            
    opacity:0.6;
    zoom:1;
}



/*パーツの配置*/

body > *{
	grid-column: 2 / -2;
}
	

/*英語版*/

english{
	grid-row: top;
	justify-self: flex-end;
	align-self: center;
	}

english a{
	color:#ffffff;
	text-decoration:none;
	font-size:0.875em;
}
english a:hover {
	color:#ffa000;
}




/*英語の背景バー*/
body::before{
	content: "";
	background:#0064dc;
	grid-column: 1 / -1;
	grid-row: top;
	z-index:-1;
}


/*ロゴ*/

.logo{
	grid-row:header;
	align-self:center;
	margin-top:-44px;
}

.logo img{
	width:290px;
	height:auto;
}
.logo a:hover {
	color:#ffa000;
}


/*グローバルナビゲーション*/


.g-nav{
	grid-row: gnav;
	justify-self: flex-end;
	align-self:center;
	margin-top:-38px;
}


.g-nav li:not(:last-child)::after {
	content: 0.5px;
	content: '|';
	color: #aaa;
	padding: 0 10px;
}



.g-nav ul{
	list-style: none;
	display:grid;
	grid-auto-flow: column;

	
}

.g-nav li{
	font-weight:500;
}
	

.g-nav a{
	color:#666666;
	text-decoration:none;
}

.g-nav a:hover {
	color:#ffb400;
	z-index:1;
}

.p-gnav{
		visibility:hidden;
	}



	
/*-------------メインイメージ---------------*/

.main{
	grid-column: 1 / -1 ;
	grid-row: main;
	margin-top:-50px;
}

.main img{
	width:100%;
	height:auto;
	
}


/*--------サブメニュー--------*/

subnav{
	grid-column: 1 / -1;
	grid-row:snav;
	/*グリッド*/
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 30px 0px;
	gap:30px 0px;
	margin-top:-29px;
}

.nav-photo{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}

.nav-photo img{
	transition:1s all;
	z-index:-1;
	
}


.nav-photo img:hover{
	transform:scale(1.2,1.2);
	transition:1s all;
	background-color:#FFF;
	opacity:0.7;
}


subnav a{
	color: #000000;
	text-decoration:none;
}


subnav a:hover {
	color:#999;
}

.nav-title1{
	font-size: 1.8em;
	line-height:40px;
	text-align: center;
	color:#666;
	margin-top:-36px;
}

.nav-title{
	font-size: 1.8em;
	line-height:40px;
	text-align: center;
	color:#fff;
	margin-top:-36px;
}




/*---------パンくずリスト----------*/

.bread{
	grid-row: bread;
	align-self:center;
	margin-top:-20px;
}

.bread ul{
    display:grid;
	grid-auto-flow: column;
	justify-content: start;
	align-self:center;
	margin:0;
	padding:0;
	list-style: none
}


/*--------会社概要--------*/
.company{
	grid-row:company;
	margin-top:60px;
	width:100%;
}


.company h2{
	line-height:2;
	margin-top:-47px;
	font-size:1.8em;
	font-weight:600;
}
.comp-title{
    align-self:end;
	content:'';
	border-top: solid 4px #222;
	height:2px;
	border-bottom:solid 1px #222;
}



.company p {
	line-height:5;
	border-bottom:solid 1px #ccc;
}





/*-------地図--------*/


.location{
	grid-row:map;
	margin-top:60px;
	width:100%;
}


.location h2{
	line-height:2;
	margin-top:-47px;
	font-size:1.8em;
    font-weight:600;
}


.map-title{
    align-self:end;
	content:'';
	border-top: solid 4px #222;
	height:2px;
	border-bottom:solid 1px #222;
}


.location p {
	line-height:2;
	margin-top:10px;
}



/*---- google-map ----*/

.location-map{
	margin-top:10px;
}


.location-map iframe{
	width:100%;
	height:400;
}




/*---------　沿線　---------*/
.along{
	grid-row:along;
	margin-top:60px;
	width:100%;
}


.along h2{
	line-height:2;
	margin-top:-47px;
	font-size:1.8em;
	font-weight:600;
}
.along-title{
    align-self:end;
	content:'';
	border-top: solid 4px #222;
	height:2px;
	border-bottom:solid 1px #222;
}



.along p {
	line-height:5;
	border-bottom:solid 1px #ccc;
}




/*---------　取引先　---------*/
.supplier{
	grid-row:supplier;
	margin-top:60px;
	width:100%;
	margin-bottom:100px;
}


.supplier h2{
	line-height:2;
	margin-top:-47px;
	font-size:1.8em;
	font-weight:600;
}
.supplier-title{
    align-self:end;
	content:'';
	border-top: solid 4px #222;
	height:2px;
	border-bottom:solid 1px #222;
}



.supplier p {
	margin-top:10px;
	line-height:2;
}




/*------------フッター-----------*/

/*背景色*/
body::after{
	content: "";
	background:#0064dc;
	grid-column: 1 / -1;
	grid-row: footer;
	z-index:-1;
	margin-bottom:-90px;
}
	
.foot-wrap {
	grid-row:footer;
	text-align:center;
	justify-self:center;
	align-self: end;
	margin-bottom:-70px;
}


.foot-wrap img{
	width:311px;
	height:auto;
	margin-bottom:40px;
}


.f-nav a{
	text-decoration:none;
	color:#FFF;
}

.f-nav a:hover {
	color:#ffa000;
}



.f-nav ul{
	list-style: none;
	display:grid;
	grid-auto-flow: column;
	
}

.f-nav li{
	padding-right:15px;
	margin-bottom:30px;
}

.foot-wrap p{
	color:#FFF;
	font-size:0.75em;
}


/*-----------------レスポンシブ設定(860px)-----------------*/

@media (max-width:860px){

.company .font-h{
	line-height:1.5;
	margin-top:20px;
}



}



/*-----------------レスポンシブ設定(800px)-----------------*/

@media (max-width:768px){
	
body {
    display: grid;
	grid-template-columns: 20px 1fr 20px;
	grid-template-rows:
	              [top]  30px
				  [header] 30px
				  [gnav] 30px
				  [main] auto
				  [snav] auto
				  [bread] auto
				  [company] auto
				  [map] auto
				  [along] auto
				  [supplier] auto
				  [footer] 100px;
				  grid-row-gap:10px;
				  row-gap:10px;
}



/*-------  logo  -------*/

.logo {
		justify-self:center;
		align-self:start;
		margin-top:-5px;
	}



/*------- グローバルメニュー -------*/

.g-nav{
		justify-self:center;
		align-self:center;
		margin-top:4px;
	}

	
/*-------------メインイメージ---------------*/

.main{
    margin-top:-6px;
}



/*---------パンくずリスト----------*/

.bread{
	margin-top:0px;
	
}


/*------------サブメニュー-----------*/


subnav{
	margin-top:-9px;
}

.nav-title1{
	font-size:1.25em;
	line-height:40px;
}

.nav-title{
	font-size:1.25em;
	line-height:40px;
}


/*--------会社概要--------*/


.company h2{
     font-size:1.5em;
	 margin-top:-38px;
}


.company h3{
	font-size:1.1em;
	margin-top:8px;
}





/*------------地図-----------*/


.location h2{
	margin-top:-38px;
	font-size:1.5em;
}

.location h3{
	font-size:1.1em;
	margin-top:8px;
}




/*- google-map -*/


.location-map iframe{
	width:100%;
	height:300px;
}



/*--------沿線--------*/


.along h2{
     font-size:1.5em;
	 margin-top:-38px;
}


.along h3{
	font-size:1.1em;
	margin-top:8px;
}





/*--------取引先--------*/


.supplier h2{
     font-size:1.5em;
	 margin-top:-38px;
}


.supplier h3{
	font-size:1.1em;
	margin-top:8px;
}



.supplier-title{
    border-top: solid 3px #222;

}







/*-------- フッター --------*/

.foot-wrap {
	padding-top:20px
}	


}




/*-------------レスポンシブ設定(600px)---------------------*/

@media (max-width:600px){
	
body {
    display: grid;
	grid-template-columns: 20px 1fr 20px;
	grid-template-rows:
	              [top]  30px
				  [header] 30px
				  [gnav] 30px
				  [main] auto 
				  [snav] auto
				  [bread] auto
				  [company] auto
				  [map] auto
				  [along] auto
				  [supplier] auto
				  [footer] 280px;
				  grid-row-gap:10px;
				  row-gap:10px;
}

/*-------------トップボタン---------------*/


/* 上に戻るボタン */
.pagetop {
	width: 2.9rem;
	height: 2.9rem;
	line-height: 2.9rem;
	border-radius: 2.9rem;
	text-align: center;
}



/*----------グローバルメニュー---------------*/

.g-nav{
	margin-top:5px;
}

.g-nav li{
	font-size:1em;
	line-height:1.5;
	padding-top:5px;
	padding-bottom:5px;

}

.g-nav li:not(:last-child)::after {
	padding: 0 8px;
}


/*-------------メインイメージ---------------*/

.main{

}


	
/*----------  サブメニュー  -----------*/


.nav-title1{
	font-size:1em;
	line-height:1.5;
	margin-top:-27px;
}

.nav-title{
	font-size:1em;
	line-height:1.5;
	margin-top:-27px;
}



/*--------会社概要--------*/

.comp-title{
    border-top: solid 3px #222;
}


.company p{
	font-size:0.9375em;
}


/*-----------地図-------------*/

.map-title{
	border-top: solid 3px #222;
}

.location p{
	font-size:0.9375em;

}



/*-----------沿線------------*/

.along-title{
    border-top: solid 3px #222;

}

.along p{
	font-size:0.9375em;

}

/*------------取引先-----------*/

.supplier-title{
    border-top: solid 3px #222;

}

.supplier p{
	font-size:0.9375em;

}



/*----------- フッター -----------*/


.foot-wrap img{
	width:235px;
	margin-bottom:30px;
}

.f-nav ul{
	grid-auto-flow: row;
}

.f-nav li{
	margin-bottom:15px;
}

.copy{
	margin-top:20px;
}

}


/*-------------レスポンシブ設定(490px)---------------------*/

@media (max-width:490px){

/*--------サブメニュー--------*/

subnav{
	grid-row:snav;
	/*グリッド*/
	display:grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows:1fr 1fr;
	grid-row-gap: 0px;
	grid-gap:0px;

}

.nav-title1{
	font-size:1em;
	line-height:20px;
	margin-top:-22px;
}	

.nav-title{
	font-size:1em;
	line-height:20px;
	margin-top:-22px;
}

.font-s {
	font-size:0.9375em;
}


}

/*-------------レスポンシブ設定(430px)---------------------*/

@media (max-width:430px){
	
	

/*------- ヘッダー：ロゴ ------------*/

.logo img{
	max-width:235px;
}
	
	
/*----------グローバルメニュー---------------*/


.g-nav li{
	font-size:0.875em;
	line-height:2;
	margin-top:-10px;
}

.g-nav li:not(:last-child)::after {
	padding: 0 3px;
}
	
	
/*-------------メインイメージ---------------*/

.main{
    margin-top:-10px;
}
	
	
	
/*---------パンくずリスト----------*/

.bread li{
	font-size:0.875em;
}	
	
	


/*--------会社概要--------*/

.comp-title{
    border-top: solid 3px #222;
}


/*-----------地図-------------*/

.map-title{
	border-top: solid 3px #222;
}


/*-----------沿線------------*/

.along-title{
    border-top: solid 3px #222;

}

/*------------取引先-----------*/

.supplier-title{
    border-top: solid 3px #222;

}

/*-------------フッター----------------*/


.foot-wrap{
		grid-column:1 / -1;
}

.foot-wrap p{
	font-size:0.7em;

}


.f-nav li{
	font-size:0.9375em;
}

}


/*-------------レスポンシブ設定(380px)---------------------*/

@media (max-width:380px){

.along .font-h{
	line-height:1.5;
	margin-top:20px;
	
	
}


}















