@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-10{
	margin-left:10px;
}


.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;
}

.mar-10{
	margin-top:10px;
}


/*index全体の設定*/

body {
    display: grid;
	grid-template-columns: 20px 1fr 20px;
	grid-template-rows:
	              [top]  30px
				  [header gnav] 40px
				  [main] auto
				  [snav] auto
			      [bread] auto
				  [fukoku] auto
				  [t-japan] auto
				  [japan] auto
				  [t-world] auto
				  [world] 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;
}

.hero 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:-36px;
}

.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;
}



/*--------フコクバナー --------*/

.fukoku{
	grid-row:fukoku;
	max-width:750px;
	max-height:100px;
	margin:0 auto;
	overflow:hidden;
	border:solid 1px #888;
	margin-top:30px;
	margin-bottom:60px;

}

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


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



/*------タイトル（日本）------*/

.j-title{
	grid-row:t-japan;
	align-self:end;
	content:'';
	border-top: solid 4px #222;
	height:2px;
	border-bottom:solid 1px #222;
}

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



/*--------国内拠点--------*/

.japan{
	grid-row:japan;
	display:grid;
	grid-template-columns:1fr;
	grid-template-rows:1fr;
	margin-bottom:50px;
}


.japan-info{
	margin-top:20px;
}

.japan-info h4{
	font-size:1.125em;
	font-weight:600;
	line-height:1.5;
}

.japan-info p{
	margin-bottom:10px;
}



/*------タイトル（海外）------*/

.w-title{
	grid-row:t-world;
	align-self:end;
	content:'';
	border-top: solid 4px #222;
	height:2px;
	border-bottom:solid 1px #222;
}

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




/*-------海外--------*/

.world{
	grid-row: world;
	 display:grid;
	 grid-template-columns:1fr 1fr;
	 grid-template-rows:1fr;
	 glid-column-gap:20px;
	 column-gap:20px;
	 margin-bottom:100px;
	 
}



/*------インドネシア-------*/

.indonesia{
	margin-bottom:50px;
}


.indo-info{
	margin-top:20px;
}

.indo-info h4{
	font-size:1.125em;
	font-weight:600;
	line-height:1.5;
}

.indo-info p{
	margin-bottom:10px;
}


/*------タイ-------*/

.thai{
	margin-bottom:50px;
}

.thai-info{
	margin-top:20px;
}

.thai-info h4{
	font-size:1.125em;
	font-weight:600;
	line-height:1.5;
}

.thai-info p{
	margin-bottom:10px;
}



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

/*背景色*/
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;
}







/*-----------------レスポンシブ設定(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
				  [fukoku] auto
				  [t-japan] auto
				  [japan] auto
				  [t-world] auto
				  [world] 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:-16px;

}


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

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



/*-------タイトル（日本）--------*/


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

/*-------タイトル（海外）--------*/


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



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

.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
				  [fukoku] auto
				  [t-japan] auto
				  [japan] auto
				  [t-world] auto
				  [world] 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{
	grid-column:1 / -1;
	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;
}




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


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

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



/*-------タイトル（日本）--------*/

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

.j-title h2{
	margin-top:-33px;
    font-size:1.375em;
}


/*-------タイトル（海外）--------*/

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

.w-title h2{
	margin-top:-33px;
    font-size:1.375em;
}

/*-------海外--------*/

.world{
	 grid-template-columns:1fr;
	 grid-template-rows:1fr 1fr;
	 glid-column-gap:0px;
	 column-gap:0px;
	 grid-row-gap:20px;
	 row-gap:20px;
	 margin-bottom:40px;
	 
}



/*------インドネシア-------*/

.indo-info{
	margin-top:20px;
}

.indo-info h4{
	font-size:1.125em;
	font-weight:600;
	line-height:1.5;
}

.indo-info p{
	margin-bottom:10px;
}


/*------タイ-------*/

.thai-info{
	margin-top:20px;
}

.thai-info h4{
	font-size:1.125em;
	font-weight:600;
	line-height:1.5;
}

.thai-info p{
	margin-bottom:10px;
}





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


.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;
	row-gap:0px;
}

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

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

}

/*-------------レスポンシブ設定(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;
}
	
/*---------パンくずリスト----------*/

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



}
