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




.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
				  [bread] auto
				  [privacy] auto
				  [article] 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;	
}




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

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

/*----------privacy-------*/


.privacy{
	grid-row:privacy;
	margin-top:10px;
}



/*--------article--------*/

.article{
	grid-row:article;
	margin-bottom:100px;
}

.article h3{
	margin-bottom:10px;
}

.article p{
	margin-bottom:40px;
	line-height:1.5;
}


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




/*背景色*/
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
				  [bread] auto
				  [privacy] auto
				  [article] 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;
	
}



/*----------privacy-------*/


.privacy{
	margin-bottom:30px;
}


/*--------article--------*/

.article p{
	margin-bottom:30px;
}



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

.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
				  [bread] auto
				  [privacy] auto
				  [article] 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;
}



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


.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-gap: 30px 20px;
	gap:30px 20px;
	margin-top:3px;
}

subnav{
	gap:20px 10px;
}

.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;
}
	
/*-------------メインイメージ---------------*/

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

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


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


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

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

}


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

}



















