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


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

* {
margin:0;
}

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

a{
text-decoration:none;
}

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


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

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

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

f-w{
	font-weight:600;
}





/*index全体の設定*/

body {
    display: grid;
	grid-template-columns: 20px auto 20px auto 20px auto 20px;
	grid-template-rows:
	              [top]  30px
				  [header gnav] 40px
				  [main] auto
				  [snav] auto
				  [ic] auto
				  [news poyon] 1fr
				  [footer] 100px;	
				  grid-row-gap:40px;
				  row-gap:40px;
}



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

/* 上に戻るボタン */
.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:#f90;
}




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




/*ロゴ*/

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

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


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



/*-----ヒーローイメージ(スライダー)-----*/

    .swiper-container {
	  grid-column:1 / -1;
	  grid-row: main;
      width: 100%;
	  margin-top:-70px;
    }

    .swiper-slide {
      background-position: center;
      background-size: cover;
      width: 50%;
      height:auto;
    }
	


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

subnav{
	grid-column:1 / -1;
	grid-row:snav;
	/*グリッド*/
	display:grid;
	grid-template-columns: 1fr 1fr 1fr;
	margin-top:-38px;

}

.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:#ffb400;
}



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

}


/*------次世代インタークーラホース------*/

article{
	grid-column: 1 / -1;
    grid-row:ic ;
    /*グリッド*/
	display:grid;
	grid-template-columns: 70% 30%;
	grid-template-rows:auto auto;
	background-color:#fafafa;
	border:solid 2px #ebebeb;
	margin-top:30px;
	margin-bottom:20px;
}

.ic-photo1{
	grid-column:1 / -1;
	grid-row:1;
	width:100%;
	height:auto;
	}	


.ic-text{
	grid-column:1;
	grid-row:2;
	text-align:left;
	align-self:center;
	line-height:1.5;
	font-size:1.125em;
	font-weight:500;
	margin-top:20px;
	margin-left:10px;
	margin-bottom:20px;
}



.ic-bottun{
	grid-column:2;
	grid-row:2;
	margin-top:20px;
	margin-bottom:30px;
}

.bottun{
	font-family:"遊明朝体", "ゆう明朝", "YuMincho", "ヒラギノ明朝Proを","ヒラギノ明朝Proの","MS P明朝","MS PMincho", serif;
    font-size:1.375em;
	font-weight:600;
	letter-spacing:0.2em;
    width:220px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
	margin-bottom:20px;
    text-align: center;
    font-weight: 600;
    padding: 15px 15px;
    background-color: #000000;
    color: #ffffff;
    border: #000000 solid 2px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* マウスオーバー時 */

.bottun:hover {
    color: #000000;
    background-color: #ffffff;
    cursor: pointer;
}


/*---------ニュース---------*/



news{
	grid-column:2 /5;
	grid-row:news;
	margin-top:30px;
	margin-bottom:40px;
}


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



news h2{
	justify-self:center;
	line-height:2;
	font-size:1.8em;
	font-weight:600;
	margin-top:-42px;
}

news .text{ 
	margin-top:15px;
}

news h3{
	font-size:1.25em;
	font-weight:900;
	line-height:1.8;
	color:#0064dc;
}

news h4{
	font-weight:800;
	line-height:1.8;
	font-size:1em;
}

news p{
	line-height:1.5;
	
}


.toiawase{
	margin-top:6px;
}

.toiawase a{
	color:#0064dc;
}


.toiawase a:hover{
	color: #F90;
}


/*キャラクター*/

aside {
	grid-column:6;
	grid-row:poyon;
	display:grid;
	justify-items:center;
	padding-left:10px;
	margin-bottom:40px;
	margin-top:30px;
}

aside figure{
	border:solid 1px #dddddd;
	width:100%;
	height:auto;
	margin-bottom:10px;
	
}


aside p{
	line-height:1.5;
}


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

aside img a {
	color: #000000;
	text-decoration:none;
}
aside a :hover {
	color:#ffb400;
}





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

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









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

@media (max-width:768px){
	
	body{
		grid-template-rows:
				  [top]  30px
				  [header] 30px
				  [gnav] 30px
				  [main] auto
				  [snav] auto
				  [ic] auto
				  [news poyon] 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;
	}



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

.swiper-container {

	 margin-top:-6px;
    }



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

subnav{
	margin-top:-9px;

}

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

/*------次世代インタークーラホース------*/

article{
	grid-column: 1 / -1;
    grid-row:ic ;
    /*グリッド*/
	display:grid;
	grid-template-columns: 1fr;
	grid-template-rows:auto auto auto;
}

.ic-photo1{
	grid-row:1;
}	


.ic-text{
	grid-row:2;
	padding-right:10px;
}

.ic-bottun{
	grid-column:1;
	grid-row:3;
	margin-top:-10px;
	margin-bottom:15px;
}





/*------------news-------------*/

news{
	margin-top:40px;

}

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


/*---------キャラクター--------*/

aside{
	margin-top:40px;
}


aside p{
	font-size:0.875em;
}



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

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

}	


}




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

@media (max-width:600px){
	
body {
    display: grid;	grid-template-rows:
	              [top]  30px
				  [header] 30px
				  [gnav] 30px
				  [main] auto
				  [snav] auto
				  [ic] auto
				  [news] auto
				  [poyon] 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-bottom:5px;
}

.g-nav li{
	line-height:1.5;
	padding-top:5px;
	padding-bottom:5px;
}

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




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

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


		



/*-------  news  ---------*/

news{
	grid-column:2 / -2;
	grid-row:news;

}

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



news h2{
	font-size:1.375em;
	margin-top:-35px;
}


/*------次世代インタークーラホース------*/

article{
	grid-column: 1 / -1;
    grid-row:ic ;
    /*グリッド*/
	display:grid;
	grid-template-columns: 1fr;
	grid-template-rows:auto auto auto;
}

.ic-photo1{
	grid-row:1;
}	


.ic-text{
	font-size:1em;
}

.ic-bottun{
	grid-column:1;
	grid-row:3;
	margin-top:-10px;
	margin-bottom:15px;
}

/*-------  キャラクター  -------*/

aside {
	grid-column:2 / -2;
	grid-row:poyon;

}

aside figure{
	max-width:238px;
}

aside p{
	font-size:1em;
}



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


.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){
	
	
body {
    display: grid;	grid-template-rows:
	              [top]  30px
				  [header] 30px
				  [gnav] 30px
				  [main] auto
				  [snav] auto
				  [ic] auto
				  [news] auto
				  [poyon] auto
				  [footer] 280px;	
				  grid-row-gap:1px;
				  row-gap:1px;
}	
	

/*------- ヘッダー：ロゴ ------------*/
.logo{
	margin-top:4px;
}

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


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


/*-----ヒーローイメージ(スライダー)-----*/

.swiper-container {
	margin-top:	20px;
}



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

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



.nav-title{
	margin-top:-25px;
}	


/*-------  news  ---------*/
.news-title{
	border-top: solid 3px #222;
}


}

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

@media (max-width:430px){
	
	


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

.logo img{
	max-width:235px;
}

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


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

.g-nav li{
	font-size:0.875em;
	line-height:2;

}

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

	
/*-----ヒーローイメージ(スライダー)-----*/

.swiper-container {
	margin-top:	17px;
}



/*-----------  news  ----------*/

news h2 {
	font-size:1.1em;
	margin-top:-30px;
}



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


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

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

}


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

}





