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

.wrap {
  background-image: url(../img/background/contents_back_nozaki.jpg);/*IR用背景*/
	background-repeat: repeat;
	background-size: 40px;
  -moz-appearance: none;
  appearance: none;
}

/*
.eco {
	background-image: url(../img/background/contents_back_eco.jpg);
	padding-bottom: 15vw;
}

.company {
	background-image: url(../img/background/contents_back_company.jpg);
}

.product {
	background-image: url(../img/background/contents_back_product.jpg);
}
*/


/* ここから上部イメージ画像 */

.contnts_bar{
	height: 300px;
	width: 100%;
	overflow: hidden;
	margin-bottom: 5em;
}

.contensTop_h1 {
	height: 100%;
	display: flex;
	align-items: center;
/*	justify-content: center;*/
	max-width: var(--max-size1);
	margin: auto;
	
/*	text-align: center;*/
}

h1 {
	display: inline-block;
	background-image: none;
/*	background-color: rgba(0, 112, 192, 0.9);*/
	background-color: rgba(255, 255, 255, 0.9);
	color: var(--main-color);
	font-weight: 600;
	
	padding: 1% 2em;
	margin:0;
	border: solid 2px var(--main-color);
}


.bar_product,
.bar_company,
.bar_sustainability,
.bar_esg{
	background-size: cover;
	background-position: center;
}

.bar_product {
	background-image: url(../img/product_img/product_bar.jpg);
}

.bar_company {
	background-image: url(../img/company_img/company_bar.jpg);
}

.bar_sustainability {
	background-image: url(../img/sustainability_img/sustainability_bar.jpg);
}

.bar_esg {
	background-image: url(../img/esg_img/esg_bar.jpg);
}
/* ここまで上部イメージ画像 */


.contentwrap {
	border: solid 1px;
}

.wrap-subtop {
	display: grid;
	grid-template-columns: repeat(auto-fit,minmax(250px,1fr));
	align-items: end;
	column-gap: 3em;
	row-gap: 7em;
	max-width: 85%;
	margin: 0 auto;
	align-items: start;
}

/* ここからIRライブラリー用 */
.wrap-library {
	background:none;
}

.wrap-library h1{
	background-image: url(../img/background/contents_back_ir.jpg);
    background-repeat: repeat;
	background-size: 2.8vw;
}
/* ここまでIRライブラリー用 */

.main {
	padding: 5vw 0vw;
}

.mainir{
	max-width: var(--max-size1);
	background-color: #fff;
	margin: 0 auto;
}

.article {
	font-size: var(--bunsyo);
	border: solid 1px #ccc;
}

.article a{
	display: block;
	text-decoration: none;
	vertical-align: bottom;
	position: relative;
}

.article a p::after {
	content: '>';
	color: var(--main-color);
	font-size: 0.7em;
	position: absolute;
	right: 0.5em;
	bottom: 0;
	transform: translateY(-25%);/* 上下中央にもっていく */
}

.article p {
	padding: 0 1rem;
	margin: 0.5em 0;
	color: var(--main-color);
	font-weight: 500;
	font-size: var(--bunsyo);
}





span.linkimg {
	display: block;
	overflow: hidden;
	aspect-ratio: 854 / 500; 
}

.article img {
/*	width: auto;*/
	width: 100%;
	object-fit: cover;
	vertical-align: bottom;
}

/* ここからホバー機能があるデバイスのみに適用 */
@media(hover: hover){
	.article a:hover p{
		opacity:0.5;
		transition:0.3s;
	}

	.article a:hover img{
		transform: scale(1.1,1.1);
		transition: 1s all;
		opacity:0.5;
	}
}
/* ここまでホバー機能があるデバイスのみに適用 */

/**********************
レスポンシブ対応
***********************/

@media screen and (max-width:786px)  {
	.wrap {
  	background-image: none;
	}
	
	.wrap-subtop {
		row-gap: 3em;
	}
	
	.eco {
		/*環境用背景*/
		padding-bottom: 10vw;
	}
	
/* ここから上部バー */
	.contnts_bar{
		height: 200px;
		margin-bottom: 3em;
	}

	h1 {
		font-size: 25px;
	}
/* ここまで上部バー */
	

	.article {
		max-width: 100%;
	}
	
	.article p {
		font-size: 16px;
	}
	
	span.linkimg {
		aspect-ratio: 854 / 285; 
	}
}