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

/* START PC用スタイル ---------------------------------------------*/



	
	
.cssgrid01 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  grid-auto-rows: 1fr;
  grid-gap: 0.8em;
  margin-top: 0.5em;
	background: #fff;
	overflow:hidden;
}

.cssgrid01 img{
width:100%;
max-width: 100%;
max-height: 60%;
}


.cssgrid01 > div {
  background:#E9EEF4;
  overflow:hidden;
  min-width: 0;
height: auto;
	padding: 0.6em 0.8em 0.8em 0.8em;
	border: 1px solid #ddd;
	}

.cssgrid01 img {
transition:1s all;
	}
/*
.cssgrid01 img:hover{
  transform:scale(1.2,1.2);
  transition:1s all;
	}*/

.cssgrid01 p{
	font-size: 0.9em;
	font-weight: 550;
	margin-top: 1.0em;
	margin-left:0px;
	text-align: center;
	line-height: 2.0em;
	border-bottom: thin #ccc solid;
	/*border-top: thin #ccc solid;*/
	width: 100%;
}

.cssgrid02 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  grid-auto-rows: 1fr;
  grid-gap: 1.0em;
  margin-top: 0.5em;
	background: #fff;
	overflow:hidden;
}

.cssgrid02 > div {
  background:#fff;
  overflow:hidden;
  min-width: 0;
height: auto;
	padding: 0.8em 0.3em 0 0em;
	border: 1px solid #ddd;
	font-size:0.8em;
	text-align: center;
	}



.cssgrid03 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  grid-auto-rows: 1fr;
  grid-gap: 1.0em;
  margin-top: 0em;
 overflow:hidden;
	text-align: center;
}

.cssgrid03 img {
width:100%;
max-width: 100%;
height: 100%;
}

.cssgrid03 > div {
  overflow:hidden;
  min-width: 0;
  height: 150px;
	padding: 0em 0.0em 0 0em;
	/*border: 3px solid #ddd;*/
	font-size:0.8em;
	text-align: center;
	background-color: #fff;
	background-position: center;
	}


.back_cement{background: url("../images/topbanner01.jpg") no-repeat ;}
.back_ce{background: url("../images/topbanner02.jpg") no-repeat ;}
.back_co{background: url("../images/topbanner03.jpg") no-repeat ;image-rendering:-webkit-optimize-contract;}
.back_craft{background: url("../images/topbanner04.jpg") no-repeat ;-webkit-backface-visibility: hidden;
}
.back_solut{background: url("../images/topbanner05.jpg") no-repeat ;-webkit-backface-visibility: hidden;
}
.back_eco{background: url("../images/topbanner04jpg") no-repeat ;}




.cssgrid04 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  grid-auto-rows: 1fr;
  grid-gap: 0.8em;
  margin-top: 2em;
margin-bottom: 1em;
	overflow:hidden;
	image-rendering:-webkit-optimize-contract;
}

.cssgrid04 > div {
  overflow:hidden;
  min-width: 0;
  height: 65px;
	padding: 0em 0em 0 0em;
	/*border: 1px solid #ddd;*/
	font-size:0.8em;
	text-align: center;
	background-color: #fff;
	background-position: center;
	image-rendering:-webkit-optimize-contract;
	}

.cssgrid04 img {
width:100%;
max-width: 100%;
height: 100%;
}


.bspase {width:100%;
         height: 0.5em;
         border-bottom: thick dotted #79A8BF;}


@media all and (-ms-high-contrast: none) {
  /* ここに書く */
.cssgrid01 {
  display: flex;
 flex-wrap: wrap;
  margin-top: 0.5em;
	background: #fff;
	overflow:hidden;
}
.cssgrid01 > div {
  background:#E9EEF4;
  overflow:hidden;
  min-width: 0;
height: auto;
	flex: 1 0 280px;
	padding: 0.8em 0.8em 0 0.8em;
	border: 1px solid #ddd;
	margin: 6px;
	}	

	
	
	
	
	
.cssgrid03 {
  display: flex;
 flex-wrap: wrap;
margin-top: 0em;
 overflow:hidden;
	text-align: center;
}

.cssgrid03 img {
width:95%;
max-width: 100%;
height: 100%;
}

.cssgrid03 > div {
  overflow:hidden;
  min-width: 0;
margin-left: 0.7em;	
  height: 150px;
	padding: 0em 0.0em 0 0em;
	/*border: 3px solid #ddd;*/
	font-size:0.8em;
	text-align: center;
	background-color: #fff;
	background-position: center;
	}	
	
.cssgrid04 {
  display: flex;
flex-wrap: wrap;
  grid-gap: 0.8em;
  margin-top: 2em;
margin-bottom: 1em;
	overflow:hidden;
	image-rendering:-webkit-optimize-contract;
}

.cssgrid04 > div {
  overflow:hidden;
  min-width: 0;
  height: 65px;
	padding: 0em 0em 0 0em;
	margin-left: 1em;
	margin-bottom: 1em;
	/*border: 1px solid #ddd;*/
	font-size:0.8em;
	text-align: center;
	background-color: #fff;
	background-position: center;
	image-rendering:-webkit-optimize-contract;
	}

.cssgrid04 img {
width:100%;
max-width: 100%;
height: 100%;
	
}	

.cssgrid02 {
  display: flex;
margin-top: 0.5em;
	background: #fff;
	overflow:hidden;
}

.cssgrid02 > div {
	width: 14.5%;
	margin-left: 0.8em;
  background:#fff;
  overflow:hidden;
  min-width: 0;
height: auto;
	padding: 0.8em 0.3em 0 0em;
	border: 1px solid #ddd;
	font-size:0.8em;
	text-align: center;
	}	
	
}


Android .example {

.cssgrid01 {
  display: flex;
 flex-wrap: wrap;
  margin-top: 0.5em;
	background: #fff;
	overflow:hidden;
}

.cssgrid01 > div {
  background:#E9EEF4;
  overflow:hidden;
  min-width: 0;
   height: auto;
	flex: 1 0 280px;
	padding: 0.8em 0.8em 0 0.8em;
	border: 1px solid #ddd;
	margin: 6px;
	}
	
}





/* END PC用スタイル ---------------------------------------------*/



/* START モバイル用スタイル ---------------------------------------------*/


@media screen and (max-width: 767px){
.cssgrid01 img{
width:100%;
max-width: 100%;
height: auto;
}
	
			
}

@media screen and (max-width:600px) { 
	
.cssgrid01 img{
width:100%;
max-width: 100%;
height: auto;
}
	
.cssgrid01 {
  grid-template-columns: repeat(auto-fit, minmax(45%, 1fr));
}

	.cssgrid03 img{
width:87%;
max-width: 87%;
height: 100%;	
}	
	
.cssgrid04 img {
width:82%;
max-width: 82%;
height: 100%;
}
	
		
}

@media screen and (max-width:480px) { 
	
.cssgrid01 {
width:100%;
max-width: 100%;
height: auto;
}
	
.cssgrid01 img{
width:100%;
max-width: 100%;
height: auto;
}

.cssgrid03 {

width:90%;
max-width: 100%;
height: 100%;
padding-left: 1.0em;
border: none !important;	
}		
	
.cssgrid03 img{
width:87%;
max-width: 87%;
height: 100%;	
}	
	
.cssgrid04 img {
width:80%;
max-width: 80%;
height: 100%;
}
	
	
	
.ttxt{
	padding: 0.5em;
	width:100%; 
	text-align: center;
	color: #fff;
	font-weight: 600;
	line-height: 21em;
	font-size: 0.9em;
	}	
	
.ttxt2{
	padding: 0.5em;
	width:100%; 
	text-align: center;
	color: #7F1113;
	font-weight: 800;
	line-height: 21em;
	font-size: 1.0em;
	}	
		
	
.back_eco{background: url("../images/topbanner01.jpg") no-repeat ;}
.back_ce{background: url("../images/topbanner02.jpg") no-repeat ;}
.back_co{background: url("../images/topbanner03.jpg") no-repeat ;background-size: contain;}	
	}


.space-height5px {
	height: 5px;
}

.space-height10px {
	height: 10px;
}

.space-height15px {
	height: 15px;
}



@media screen and (max-width: 480px) {
	.news {width: 100%;margin: 0;padding: 0;}
	.news3 ul{width:100%;margin: 0;padding: 0;}
	.date{width:100%; float: left;white-space: pre-wrap;padding-left: 0;}
	.home_info{width:100%; float: none;padding-left:1em;}
	.date_first{width:100%;}
  }



.date{
    color:#5A5858;
    margin-left: 0px;
	margin-right: 3px;
    margin-bottom: 14px;
	white-space: pre-wrap;
    position: relative;	
width:20%;
float:left;
}
.date_first{
    padding-top: 18px;
}
.home_info{
 width: 78%;
    float:left;
	text-align: left;
	padding-left: 0;
}

.news3 ul{
    width: 100%;
    min-height:160px;
    background-color: #fff;
    margin-left: 0px;
	padding-left: 0;
}
.news3 li{
    overflow: hidden;
}

.news3 li a{
	text-decoration: none;
	color: #4178F8;
}

.news {width: 96%;
	padding:0.2em;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: normal;
	background-color:#FFF;
	height: auto;
	margin: 0em 0 1em 0;
	
}

.news ul{ padding:0.2em; width: 98%;list-style: none;}

.news li{
	border-bottom:solid #F0F0F0 thin;
	width: 98%;
	padding-bottom: 0.2em 0.2em; 
	font-size: 0.9em;
    line-height: 2.3em;
	list-style: none;
    }

.news2 {width: 98%;
	padding:0.3em;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: normal;
	background-color:#F3F3F3;
	height: auto;
	margin:0 0 0.6em 0;
}

.news2 ul{ padding:1.0em 3px 0.3em 0; 
	width: 98%;}

.news2 li{
	border-bottom:solid #E0E0E0 thin;
	width: 92%;
	padding: 0.2em 4px 0.2em 0.2em;
	font-size: 0.9em;
    line-height: 2.3em;}

.news2 li a{	text-decoration: none;
	color: #4178F8;}



.newstit { width:97.5%;
background-color: #D3CDCD;font-weight: 600;font-size: 1.0em;height: 22px;　margin: 6px 0 0 0;
padding: 0.5em; text-indent: 0.5em; border-bottom: thin solid #878686;}


.newstit button{padding: 0 5px 0 5px; float: right; margin: 0 16px 0 0;}


.repotit { width:100%;
background-color: #D3CDCD;font-weight: 600;font-size: 1.0em;height: 22px;　margin: 6px 0 0 0;
padding: 0.5em; text-indent: 0.5em; border-bottom: thin solid #878686;}


.repo {width: 100%;
	padding:8px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: normal;
	background-color:#F3F3F3;
	height: auto;
	margin: 0em 0 1.0em auto;
}


.moviebox { width: 100%; height: auto; border: 0; margin: 0 auto ; padding: 0; clear: both;}



.topwrapper {
  height: auto; // 高さを画面いっぱいに指定する。(vhが効かない場合の対策)
  position:absolute;
  width: 100%; // 横幅もいっぱいに。
  border: #000 thick;
  padding: 0;
  margin : 0 auto;｝
	
#video {max-width: 200%; text-align: center;}	
	
		
	
@media screen and (max-width: 560px) {
  .iframe-responsive {
    position: relative;
	  margin: 0 auto;
	  text-align: center;
    width: 100%;
  }
  .iframe-responsive iframe {
    position:relative;
    top: 0;
    margin: 0 auto;
    width: 100%;
    height: 100%;
  }
}	

	




