@charset "utf-8";

/**
 *
 *  ページ用CSS
 *　equipment
 */

/*--------------------------------------------------------------------------
   Overwright
---------------------------------------------------------------------------*/
.page-ttl::before{
	background-image:url(../image/bg_ttl.jpg);		
}


/* page-nav
-----------------------------------------------------------------*/

.page-nav._upper{
  padding: 110px 0 60px;  
}
.page-nav._bottom{
  padding: 150px 0 160px;  
}
.page-nav ul{
	display: flex;
	justify-content: space-between;
	max-width: 1240px;
	padding: 0 20px;
	margin: 0 auto;  
}
.page-nav ul li{
	max-width: 285px;
	width: calc((100% - 30px)/4);  
}
.page-nav ul li a{
  display: block;
  padding: 20px 5px 22px;
  background: rgba(255,255,255,.1);
  text-align: center;
  line-height: 1;
  transition :.3s;  
}
.page-nav ul li .en{
  font-size: 3rem;
  color: #fc0;
  letter-spacing: .085em; 
}
.page-nav ul li .ja{
  display: block;
  margin-top: 7px;
  color: #fff;
  font-size: 1.4rem;
  letter-spacing: .18em;  
}
.page-nav ul li.current a,
.page-nav ul li a:hover{
  background: rgba(255,255,255,1);
}
.page-nav ul li.current a .en,
.page-nav ul li a:hover .en,
.page-nav ul li.current a .ja,
.page-nav ul li a:hover .ja{
  color: #333;  
}


.ttl-cat{
  margin-bottom: 40px;
  color: #fc0;
  text-align: center;
  line-height: 1.2; 
}
.ttl-cat .en{
  font-size: 6rem;
  letter-spacing: .08em;   
}
.ttl-cat .ja{
  display: block;
  font-size: 1.4rem;
  letter-spacing: .08em;   
}
.ttl-cat + .txt-lead{
  margin-bottom: 80px;
  text-align: center;
  font-size: 2.2rem;
  letter-spacing: .1em   
}


.item-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;  
}
.item h3{
  margin: 14px 0 10px;
  line-height: 1.4;
  font-size: 2rem;  
}
.item .txt{
  font-size: 1.4rem;
  line-height: 1.6;
  text-align: justify;  
}
.item .note{
  margin-top: 10px;
  font-size: 1.1rem;  
}


.box-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;    
}
.box{
  padding: 30px;
  background: rgba(255,255,255,.1);
}
.box h3{
  margin-bottom: 10px;
  font-size: 2.4rem;
  line-height: 1.5;
}
.box .txt{
  font-size: 1.4rem;
  line-height: 1.6;
}
.box .note{
  margin-top: 15px;
  font-size: 1.1rem;  
}
.box .pic{
  position: relative;  
}
.box span.caption{
  position: absolute;
  right: 10px;
  bottom: 5px;
  font-size: 1.1rem;
  text-shadow: 0 0 5px rgba(0,0,0,.3);    
}
.box span.caption._bk{
  color: #333;
	text-shadow: 0 0 8px rgba(255,255,255,1),0 0 8px rgba(255,255,255,1),0 0 8px rgba(255,255,255,1),0 0 8px rgba(255,255,255,1);  
}




/*--------------------------------------------------------------------------
   Equipment
---------------------------------------------------------------------------*/
.equipment .txt-lead{
  margin-bottom: 60px;
  text-align: center;
  font-size: 3.6rem;
  letter-spacing: .1em 
}


/* cat
-----------------------------------------------------------------*/
.equipment .cat-nav{
  display: flex;
  justify-content: center;
  margin-bottom: 140px;   
}
.equipment .cat-nav li{
  width: 200px;
  margin: 0 10px; 
}
.equipment .cat-nav li a{
  position: relative;
  display: block;
  height: 90px;
  padding: 18px 5px 5px;
  text-align: center;
  background: #0a4561;
  line-height: 1;
  transition: .3s; 
}
.equipment .cat-nav li a:hover{
  opacity: .7;  
}
.equipment .cat-nav .en{
  font-size: 1.4rem;
  letter-spacing: .08em;
}
.equipment .cat-nav .ja{
  display: block;
  margin-top: 8px;
  font-size: 1.6rem;
  letter-spacing: .1em;  
}
.equipment .cat-nav li a::before,
.equipment .cat-nav li a::after{
  position: absolute;
  display: block;
  content: "";  
}
.equipment .cat-nav li a::before{
  left: 5px;
  top: 5px;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  border: 1px solid #fff;  
}
.equipment .cat-nav li a::after{
  left: 50%;
  bottom: 10px;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border: solid transparent;
  border-width: 6px 7px;
  border-top-color: #fff;  
}

.equipment .cat + .cat{
  margin-top: 120px;  
}
.equipment .cat h2{
  margin-bottom: 30px;
  padding: 20px 0 15px;
  border-bottom: 1px solid #fc0;
  line-height: 1;
  color: #fc0;  
}
.equipment .cat h2 .en{
  padding-right: 15px;
  font-size: 3rem;
  letter-spacing: .1em;  
}
.equipment .cat h2 .ja{
  font-size: 1.4rem;
  letter-spacing: .08em;
}


/* cat01 */
.equipment .cat01 .l_01{
  margin-bottom: 35px;  
}
.equipment .cat01 .l_01 > *{
  width: calc(50% - 10px);  
}
.equipment .cat01 .l_02{
  margin-bottom: 50px;  
}
.equipment .cat01 .l_02 > div{
  width: calc(50% - 10px);  
}
.equipment .cat01 .l_02 > div:first-child{
  display: flex;
  justify-content: space-between;  
}
.equipment .cat01 .l_02 > div:first-child > *{
  width: calc(50% - 10px);
}
.equipment .cat01 .l_02 > div:first-child .item-list{
  display: block;  
}
.equipment .cat01 .l_02 > div:first-child .item-list li:nth-child(n+2){
  margin-top: 30px;  
}
.equipment .cat01 .l_02 > div:nth-child(2) .item-list li{
  width: calc(50% - 10px);  
}
.equipment .cat01 .l_02 > div:nth-child(2) .item-list li:nth-child(n+3){
  margin-top: 30px; 
}
.equipment .cat01 .l_02 + .item-list{
  width: calc(50% - 10px);  
}
.equipment .cat01 .l_02 + .item-list li{
  width: calc(50% - 10px); 
}



/* cat02 */
.equipment .cat02 .pic-main,
.equipment .cat01 .pic-main{
  margin-bottom: 35px;  
}
.equipment .cat02 .layout-box > *{
  width: calc(50% - 10px);  
}
.equipment .cat02 .item-list{
    margin-top: 8%;
}
.equipment .cat02 .item-list li{
  width: calc(50% - 10px); 
}

.cat02 .layout-box{
    align-items: flex-end;
}

/* cat03 */
.equipment .cat03 .layout-box{
  margin-bottom: 35px;  
}
.equipment .cat03 .layout-box > *{
  width: calc(50% - 10px);  
}
.equipment .cat03 .layout-box .item-list li{
  width: calc(50% - 10px); 
} 
.equipment .cat03 .layout-box + .item-list li{
  width: calc((100% - 60px)/4); 
} 


/* cat04 */
.equipment .cat04 .item-list li{
  width: calc((100% - 60px)/4); 
}
.equipment .cat04 .item-list li:nth-child(n+5){
  width: calc((100% - 40px)/3);
  margin-top: 60px; 
}




/*--------------------------------------------------------------------------
   ecology
---------------------------------------------------------------------------*/
.ecology .txt{
	line-height: 1.8;
}
.ecology .box-list > li{
	width: 100%;
}
.ecology .box-list > li:nth-child(n+2){
	margin-top: 40px;
}
.ecology .box-list > li:nth-child(n+3){
	max-width: 580px;
	width: calc(50% - 10px);
}


/* box01 */
.ecology .box01 .pc-layout{
	display: flex;
	justify-content: space-between;	
}
.ecology .box01 .pc-layout > div{
	width: 77.2%;
}
.ecology .box01 .pc-layout .pic.pc{
	width: 20%;
}
.ecology .box01 .l_02{
	margin-top: 20px;
}

/* box02 */
.ecology .box02 .layout-box{
	flex-wrap: wrap;
}
.ecology .box02 .logo{
	margin-left: 20px;
}
.ecology .box02 .note{
	margin-top: 5px;
}
.ecology .box02 .pic{
	width: 100%;
	margin-top: 20px;
}

/* box03 */
.ecology .box03 .txt-area{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 68.82%;
}
.ecology .box03 .txt-area .txt{
	margin-bottom: 10px;
}
.ecology .box03 .pic{
	width: 27.38%;
}

/* box04 */
.ecology .box04 .txt-area{
	display: flex;
	flex-direction: column;
	justify-content: space-between;	
	width: 61.03%;	
}
.ecology .box04 .txt-area .txt{
	margin-bottom: 10px;
}
.ecology .box04 .pic{
	width: 34.98%;
}

/* box05 */
.ecology .box05 .txt{
	margin-bottom: 35px;
}

/* box06 */
.ecology .box06 .txt{
	margin-bottom: 20px;
}
.ecology .box06 .layout-box{
	align-items: flex-start;
}
.ecology .box06 .pic-main{
	position: relative;
	width: 37.07%;
}
.ecology .box06 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 58.17%;
	font-size: 1.4rem;
	line-height: 1.6;
}
.ecology .box06 ul li{
	width: 47.4%;
}
.ecology .box06 ul li:nth-child(n+3){
	margin-top: 15px;	
}
.ecology .box06 .pic{
	margin-bottom: 8px;
}
.ecology .box06 .note{
	text-align: right;
}




/*--------------------------------------------------------------------------
   structure
---------------------------------------------------------------------------*/
.structure .main-area{
	flex-direction: row-reverse;
	margin-bottom: 40px;
	border-bottom: 1px solid #fff;
}
.structure .main-area .pic-main{
    margin-bottom: 2%;
}
.structure .main-area.layout-box{
    align-items: flex-end;
}
.structure .main-area ol{
	max-width: 410px;
	margin-right: 20px;
}
.structure .main-area ol li{
	margin-bottom: 15px;
}
.structure .main-area ol h3{
	display: flex;
	align-items: center;
	margin-bottom: 5px;
	color: #fc0;
	font-size: 1.8rem;
	line-height: 1.4;
}
.structure .main-area ol h3 .num{
	width: 30px;
	height: 30px;
	margin-right: 15px;
	background: #c09b23;
	color: #fff;
	text-align: center;
	line-height: 28px;	
}
.structure .main-area .pic{
	margin-top: 5px;
}
.structure .item-list{
	margin-bottom: 75px;
}
.structure .item-list li{
	max-width: 380px;
	width: calc((100% - 30px)/3);
}
.structure .item-list li:nth-child(n+4){
	margin-top: 55px;
	max-width: 580px;
	width: calc(50% - 7px);
}
.structure .item .txt+.note{
	margin: 25px 0 10px;
}
.structure .item02 .txt+.note{
	margin: 10px 0 0;
}
.structure .item-list .pic{
	margin-top: 50px;
}
.structure .item-list .item02 .pic{
	margin-top: 20px;
}
.structure .item-list li:nth-child(n+4) .pic{
	margin: 0;
}
.structure .item-list .pic+.note{
	text-align: right;
}

.structure .performance h2{
	margin-bottom: 30px;
	padding: 20px 0 15px;
	border-bottom: 1px solid #fc0;
	line-height: 1;
	color: #fc0;
	font-size: 2.4rem;	
}
.structure .performance .item{
	width: 75.4%;
	margin-right: 15px;
}
.structure .performance .logo{
	width: 24.6%;
	padding: 0 15px;
	text-align: center;
}



/*--------------------------------------------------------------------------
   safety
---------------------------------------------------------------------------*/
.safety .box-ttl{
	display: flex;
	align-items: center;
	margin-bottom: 25px;
	padding-bottom: 10px;
	border-bottom: 1px solid #fc0;
	line-height: 1.4;
	color: #fc0;
	font-size: 2.4rem;		
}
.safety .box-ttl .num{
	display: block;
	width: 40px;
	height: 40px;
	margin-right: 15px;
	background: #fc0;
	color: #fff;
	text-align: center;
	line-height: 38px;		
}
.safety .box-ttl > span{
	display: flex;
	align-items: center;	
}
.safety .box-ttl small{
	margin-left: 25px;
	font-size: 1.8rem;
}

.safety .box-list{
	display: block;
	margin-bottom: 110px;
}
.safety .box-list > li:nth-child(n+2){
	margin-top: 45px;
}
.safety .box h3{
	font-size: 2rem;
}


/* box01 */
.safety .box01 .item-list li{
	max-width: 350px;
	width: calc((100% - 30px)/3);
}
.safety .box01 .item-list li:nth-child(n+4){
	margin-top: 50px;
}
.safety .box01 .item-list .note{
	margin-top: 5px;
}

/* box02 */
.safety .box02 > .item-list li{
	max-width: 350px;
	width: calc((100% - 30px)/3);
}
.safety .box02 > .item-list li:nth-child(n+4){
	margin-top: 30px;
}
.safety .box02 > .layout-box{
	margin-top: 45px;
	align-items: flex-start;
}
.safety .box02 .layout-box .item-list{
	display: block;
	max-width: 350px;
	width: calc((100% - 30px)/3);
}
.safety .box02 .layout-box .item-list li:nth-child(n+2){
	margin-top: 45px;
}
.safety .box02 .layout-box .smart-water-tank{
	max-width: 740px;
	width: calc(((100% - 30px)/3)*2 + 15px);
	padding: 25px 3%;
	background: #0a4561;
	border: 1px solid #fff;
}
.safety .box02 .layout-box .smart-water-tank h3{
	margin-bottom: 30px;
}
.safety .box02 .layout-box .smart-water-tank .txt-area{
	max-width: 334px;
	width: calc(50% - 5px);
}
.safety .box02 .layout-box .smart-water-tank h4{
	margin: -.4em 0 5px;
	font-size: 2rem;
	line-height: 1.4;
	color: #fc0;
}
.safety .box02 .layout-box .smart-water-tank .txt{
	margin-bottom: 15px;
}
.safety .box02 .layout-box .smart-water-tank .note{
	font-size: 1rem;
	text-align: right;
}
.safety .box02 .layout-box .smart-water-tank .pic-main{
	max-width: 297px;
	width: calc(50% - 5px);
}


/* box03 */
.safety .box03 .layout-box > div{
	max-width: 260px;
	width: 23%;
}
.safety .box03 .layout-box > div:last-child{
	max-width: 540px;
	width: 47.8%;
	padding: 20px 3%;
	background: #0a4561;
}
.safety .box03 .layout-box .pic{
	margin-bottom: 15px;
}


/* security-system */
.safety .security-system h2{
	display: flex;
	justify-content: space-between;
	padding-bottom: 15px;
	margin-bottom: 30px;
	border-bottom: 1px solid #fc0;
	font-size: 2.8rem;
	line-height: 1;
}
.safety .security-system h2 .en{
	font-size: 2.5rem;
	color: #fc0;
}
.safety .security-system .layout-box{
	margin-bottom: 35px;
}
.safety .security-system .layout-box > div{
	max-width: 420px;
	margin-right: 15px;
}
.safety .security-system .layout-box .pic{
	margin-bottom: 15px;
}
.safety .security-system .box{
	display: flex;
}
.safety .security-system .box .pic-main.pc{
	flex-shrink: 0;
	width: 318px;
}
.safety .security-system .box ul{
	width: calc((100% - 318px)/2);
}
.safety .security-system .box ul li{
	display: flex;
}
.safety .security-system .box ul.list01 li:nth-child(n+2){
	margin-top: 35px;
}
.safety .security-system .box ul.list01 li .txt-area{
	max-width: 235px;
	margin-right: 10px;
}
.safety .security-system .box h3{
	margin-bottom: 5px;
	font-size: 1.5rem;
}
.safety .security-system .box h3 .num{
	display: none;
}
.safety .security-system .box .txt{
	font-size: 1.2rem;
}
.safety .security-system .box ul.list02 li:nth-child(1){
	display: none;
}
.safety .security-system .box ul.list02 li:nth-child(2) .txt-area{
	max-width: 250px;
	margin-left: 10px;
}
.safety .security-system .box ul.list02 li:nth-child(3){
	display: block;
	margin-top: 10px;
}
.safety .security-system .box ul.list02 li:nth-child(4){
	margin-top: 10px;
}
.safety .security-system .box ul.list02 li:nth-child(4) .txt-area{
	max-width: 290px;
	margin-left: 10px;
}
.safety .security-system .box ul.list02 li:nth-child(4) .note{
	margin-top: 40px;
}
















/*--------------------------------------------------------------------------
   mobile
---------------------------------------------------------------------------*/
@media screen and (max-width: 768px) {


/* page-nav
-----------------------------------------------------------------*/

	.page-nav._upper{
		padding: 50px 0 30px;  
	}
	.page-nav._bottom{
		padding: 40px 0 50px;  
	}
	.page-nav ul{
		flex-wrap: wrap;
		max-width: 580px;
	}
	.page-nav ul li{
		width: calc(50% - 5px);  
	}
	.page-nav ul li:nth-child(n+3){
		margin-top: 10px;
	}
	.page-nav ul li a{
		padding: 16px 5px;
	}
	.page-nav ul li .en{
		font-size: 1.6rem;
	}
	.page-nav ul li .ja{
		font-size: 1rem;
	}
	.page-nav ul li a:hover{
		background: rgba(255,255,255,.1);
	}
	.page-nav ul li a:hover .en{
		color: #fc0;
	}
	.page-nav ul li a:hover .ja{
		color: #fff;  
	}
	
	
	.ttl-cat{
		margin-bottom: 20px;
	}
	.ttl-cat .en{
		font-size: 3.2rem;
	}
	.ttl-cat .ja{
		font-size: 1.4rem;
	}
	.ttl-cat + .txt-lead{
		margin-bottom: 25px;
		font-size: 1.4rem;
	}
	
	.item h3{
		margin: 15px 0 10px;
		font-size: 1.4rem;  
	}
	.item .txt{
		font-size: 1.1rem;
	}
	.item .note{
		font-size: 1rem;  
	}
	
	.box{
		padding: 20px 15px;
	}
	.box h3{
		font-size: 1.4rem;
	}
	.box .txt{
		font-size: 1.1rem;
	}
	.box .note{
		margin-top: 10px;
		font-size: 1rem;  
	}
	.box span.caption{
		right: 5px;
		bottom: 5px;
		font-size: 1rem;
	}




/*--------------------------------------------------------------------------
   Equipment
---------------------------------------------------------------------------*/
	.equipment .txt-lead{
		margin-bottom: 25px;
		font-size: 1.7rem;
	}


/* cat
-----------------------------------------------------------------*/
	.equipment .cat-nav{
		flex-wrap: wrap;
		justify-conten: space-between;
		max-width: 280px;
		margin: 0 auto 30px;   
	}
	.equipment .cat-nav li{
		width: 132px;
		margin: 0; 
	}
	.equipment .cat-nav li:nth-child(n+3){
		margin-top: 20px;
	}
	.equipment .cat-nav li a{
		height: 60px;
		padding: 8px 5px 5px; 
	}
	.equipment .cat-nav li a:hover{
		opacity: 1;  
	}
	.equipment .cat-nav .en{
		font-size: 1rem;
	}
	.equipment .cat-nav .ja{
		margin-top: 2px;
		font-size: 1.1rem;
	}
	.equipment .cat-nav li a::before{
		left: 4px;
		top: 4px;
		width: calc(100% - 8px);
		height: calc(100% - 8px);
	}
	.equipment .cat-nav li a::after{
		bottom: 7px;
		border-width: 4px 5px;
	}
	
	.equipment .cat + .cat{
		margin-top: 50px;  
	}
	.equipment .cat h2{
		margin-bottom: 20px;
		padding: 10px 0 10px;
		border-bottom: 1px solid #fc0;
		line-height: 1;
		color: #fc0;  
	}
	.equipment .cat h2 .en{
		padding-right: 10px;
		font-size: 1.8rem;
	}
	.equipment .cat h2 .ja{
		font-size: 1.1rem;
	}


/* cat01 */
	.equipment .cat01 .l_01{
		display: block;
		margin-bottom: 25px;  
	}
	.equipment .cat01 .l_01 > *{
		width: 100%;  
	}
	.equipment .cat01 .l_01 > * + *{
		margin-top: 15px;
	}
	.equipment .cat01 .l_02{
		display: block;
		margin-bottom: 25px;  
	}
	.equipment .cat01 .l_02 > div{
		width: 100%;
		margin-bottom: 25px;  
	}
	.equipment .cat01 .l_02 > div:first-child > *{
		width: calc(50% - 6px);
	}
	.equipment .cat01 .l_02 > div:first-child .item-list li:nth-child(n+2){
		margin-top: 15px;  
	}
	.equipment .cat01 .l_02 > div:nth-child(2) .item-list li{
		width: calc(50% - 6px);  
	}
	.equipment .cat01 .l_02 > div:nth-child(2) .item-list li:nth-child(n+3){
		margin-top: 25px; 
	}
	.equipment .cat01 .l_02 + .item-list{
		width: 100%;  
	}
	.equipment .cat01 .l_02 + .item-list li{
		width: calc(50% - 6px); 
	}



/* cat02 */
	.equipment .cat02 .pic-main{
		margin-bottom: 20px;  
	}
	.equipment .cat02 .layout-box{
		display: block;
	}
	.equipment .cat02 .layout-box > *{
		width: 100%;  
	}
	.equipment .cat02 .item-list{
		margin-top: 25px;
	}
	.equipment .cat02 .item-list li{
		width: calc(50% - 6px); 
	}

/* cat03 */
	.equipment .cat03 .layout-box{
		display: block;
		margin-bottom: 25px;  
	}
	.equipment .cat03 .layout-box > *{
		width: 100%;  
	}
	.equipment .cat03 .pic-main{
		margin-bottom: 25px;
	}
	.equipment .cat03 .layout-box .item-list li{
		width: calc(50% - 6px); 
	} 
	.equipment .cat03 .layout-box + .item-list li{
		width: calc(50% - 6px);
	} 
	.equipment .cat03 .layout-box + .item-list li:nth-child(n+3){
		margin-top: 25px;	
	}

/* cat04 */
	.equipment .cat04 .item-list li{
		width: calc(50% - 6px);
	}
	.equipment .cat04 .item-list li:nth-child(n+3){
		margin-top: 25px;
	}
	.equipment .cat04 .item-list li:nth-child(n+5){
		width: calc(50% - 6px);
		margin-top: 25px; 
	}
	.equipment .cat04 .item-list li:nth-child(7){
		width: 100%;
	}




/*--------------------------------------------------------------------------
   ecology
---------------------------------------------------------------------------*/
	.ecology .txt{
		line-height: 1.6;
	}
	.ecology .box-list > li{
		width: 100%;
	}
	.ecology .box-list > li:nth-child(n+2){
		margin-top: 20px;
	}
	.ecology .box-list > li:nth-child(n+3){
		max-width: none;
		width: 100%;
	}


/* box01 */
	.ecology .box01 .pc-layout{
		display: block;
	}
	.ecology .box01 .pc-layout > div{
		width: 100%;
	}
	.ecology .box01 .l_01{
		margin-bottom: 15px;
	}
	.ecology .box01 .l_01 .logo{
		flex-shrink: 0;
		width: 80px;
		margin-left: 10px;
	}
	.ecology .box01 .pic.sp{
		width: 120px;
		margin: 0 auto;
	}
	.ecology .box01 .pic.sp .caption{
		right: -3em;
	}
	.ecology .box01 .l_02{
		margin-top: 20px;
	}

/* box02 */
	.ecology .box02 .layout-box{
		flex-wrap: wrap;
	}
	.ecology .box02 .txt-area{
		width: calc(100% - 90px);
	}
	.ecology .box02 .logo{
		width: 80px;
		margin-left: 10px;
	}
	.ecology .box02 .note{
		margin-top: 5px;
	}
	.ecology .box02 .pic{
		width: 100%;
		margin-top: 20px;
	}

/* box06 */
	.ecology .box06 .txt{
		margin-bottom: 20px;
	}
	.ecology .box06 .layout-box{
		display: block;
	}
	.ecology .box06 .pic-main{
		width: 210px;
		margin: 0 auto 20px;
	}
	.ecology .box06 ul{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		width: 100%;
		font-size: 1.2rem;
	}
	.ecology .box06 ul li{
		width: calc(50% - 6px);
	}





/*--------------------------------------------------------------------------
   structure
---------------------------------------------------------------------------*/
	.structure .main-area{
		display: block;
		padding-bottom: 5px;
		margin-bottom: 20px;
	}
	.structure .main-area ol{
		max-width: none;
		margin: 25px 0 0;
		padding: 0 5px;
	}
	.structure .main-area ol li{
		margin-bottom: 20px;
	}
	.structure .main-area ol h3{
		font-size: 1.4rem;
	}
	.structure .main-area ol h3 .num{
		width: 26px;
		height: 26px;
		margin-right: 10px;
		line-height: 24px;	
	}
	.structure .main-area ol .txt{
		font-size: 1.1rem;
	}
	.structure .main-area .pic{
		margin-top: 10px;
	}
	.structure .item-list{
		display: block;
		margin-bottom: 30px;
	}
	
	.structure .item-list li{
		max-width: none;
		width: 100%;
	}
	.structure .item-list li:nth-child(n+2){
		margin-top: 30px;
		max-width: none;
		width: 100%;
	}
	.structure .item-list li:nth-child(2),
	.structure .item-list li:nth-child(3){
		display: flex;
	}
	.structure .item-list li:nth-child(2) .pic,
	.structure .item-list li:nth-child(3) .pic{
		flex-shrink: 0;
		width: 132px;
		margin-left: 10px;
	}
	.structure .item-list .pic{
		margin-top: 20px;
	}
	.structure .item-list .item02 .pic{
		margin-top: 20px;
	}
	.structure .item-list .item03 .pic{
		margin-top: 45px;
	}
	.structure .item-list li:nth-child(n+4) .pic{
		margin: 0;
	}
	.structure .item-list .pic+.note{
		text-align: right;
	}
	
	.structure .performance h2{
		margin-bottom: 20px;
		padding: 0 0 10px;
		font-size: 1.6rem;
		line-height: 1.5;
		text-align: center;	
	}
	.structure .performance .layout-box{
		display: block;
	}
	.structure .performance .item{
		width: 100%;
		margin-right: 15px;
	}
	.structure .performance .item > div{
		display: flex;
	}
	.structure .performance .logo{
		flex-shrink: 0;
		width: 80px;
		padding: 0;
		margin-left: 10px;
	}



/*--------------------------------------------------------------------------
   safety
---------------------------------------------------------------------------*/
	.safety .box-ttl{
		align-items: center;
		margin-bottom: 15px;
		font-size: 1.4rem;		
	}
	.safety .box-ttl .num{
		flex-shrink: 0;
		width: 30px;
		height: 30px;
		margin-right: 10px;
		line-height: 28px;		
	}
	.safety .box-ttl > span{
		display: block;
	}
	.safety .box-ttl small{
		display: block;
		margin: 0;
		font-size: 1rem;
	}
	
	.safety .box-list{
		display: block;
		margin-bottom: 110px;
	}
	.safety .box-list > li:nth-child(n+2){
		margin-top: 45px;
	}
	.safety .box h3{
		font-size: 1.4rem;
	}
	
	.safety .box .item-list{
		display: block;
	}
	.safety .box .item-list h3{
		margin: 10px 0;
	}
	
/* box01 */
	.safety .box01 .item-list li{
		max-width: none;
		width: 100%;
	}
	.safety .box01 .item-list li:nth-child(n+2){
		margin-top: 25px;
	}

/* box02 */
	.safety .box02 > .item-list li{
		max-width: none;
		width: 100%;
	}
	.safety .box02 > .item-list li:nth-child(n+2){
		margin-top: 25px;
	}
	.safety .box02 > .layout-box{
		margin-top: 25px;
		display: block;
	}
	.safety .box02 .layout-box .item-list{
		max-width: none;
		width: 100%;
	}
	.safety .box02 .layout-box .item-list li:nth-child(n+2){
		margin-top: 25px;
	}
	.safety .box02 .layout-box .smart-water-tank{
		max-width: none;
		width: 100%;
		margin: 30px 0 0;
		padding: 20px 15px;
		background: #0a4561;
		border: 1px solid #fff;
	}
	.safety .box02 .layout-box .smart-water-tank h3{
		margin-bottom: 15px;
		text-align: center;
	}
	.safety .box02 .layout-box{
		display: block;
	}
	.safety .box02 .layout-box .smart-water-tank .txt-area{
		max-width: none;
		width: 100%;
	}
	.safety .box02 .layout-box .smart-water-tank h4{
		margin: 0 0 5px;
		font-size: 1.3rem;
		line-height: 1.6;
	}
	.safety .box02 .layout-box .smart-water-tank .txt{
		margin-bottom: 10px;
	}
	.safety .box02 .layout-box .smart-water-tank .note{
		text-align: left;
	}
	.safety .box02 .layout-box .smart-water-tank .pic-main{
		max-width: none;
		width: 100%;
		margin-top: 15px;
	}


/* box03 */
	.safety .box03 .layout-box{
		flex-wrap: wrap;
	}
	.safety .box03 .layout-box > div{
		max-width: none;
		width: calc(50% - 6px);
	}
	.safety .box03 .layout-box > div:last-child{
		max-width: none;
		width: 100%;
		margin-top: 20px;
		padding: 15px;
	}
	.safety .box03 .layout-box .pic{
		margin-bottom: 10px;
	}


/* security-system */
	.safety .security-system h2{
		align-items: flex-end;
		padding-bottom: 10px;
		margin-bottom: 20px;
		font-size: 1.7rem;
		line-height: 1.4;
	}
	.safety .security-system h2 .en{
		font-size: 1.3rem;
	}
	.safety .security-system .layout-box{
		flex-wrap:wrap;
		margin-bottom: 35px;
	}
	.safety .security-system .layout-box > div{
		max-width: none;
		width: 100%;
		margin: 0 0 25px;
	}
	.safety .security-system .layout-box .pic{
		margin-bottom: 15px;
	}
	.safety .security-system .layout-box .txt{
		font-size: 1.3rem;
	}
	.safety .security-system .box{
		display: block;
	}
	.safety .security-system .box .pic-main.sp{
		width: 220px;
		margin: 0 auto 30px;
	}
	.safety .security-system .box ul{
		width: 100%;
	}
	.safety .security-system .box ul.list01 li{
		flex-direction: row-reverse;
		align-items: center;
	}
	.safety .security-system .box ul.list01 li:nth-child(n+2){
		margin-top: 15px;
	}
	.safety .security-system .box ul li .pic{
		flex-shrink: 0;
		width: 120px;
		margin-right: 10px;
	}
	.safety .security-system .box ul.list01 li .txt-area{
		max-width: none;
		margin-right: 0;
	}
	.safety .security-system .box h3{
		display: flex;
		margin-bottom: 10px;
		font-size: 1.3rem;
	}
	.safety .security-system .box h3 .num{
		display: block;
		width: 22px;
		height: 22px;
		margin-right: 5px;
		background: #c9c2ac;
		text-align: center;
		line-height: 21px;
		color: #333;
	}
	.safety .security-system .box .txt{
		font-size: 1rem;
	}
	.safety .security-system .box ul.list02 li:nth-child(1){
		display: block;
		margin: 15px 0;
	}
	.safety .security-system .box ul.list02 li:nth-child(2){
		align-items: center;
	}
	.safety .security-system .box ul.list02 li:nth-child(2) .txt-area{
		max-width: none;
		margin-left: 0;
	}
	.safety .security-system .box ul.list02 li:nth-child(3){
		display: none;
	}
	.safety .security-system .box ul.list02 li:nth-child(4){
		margin-top: 15px;
	}
	.safety .security-system .box ul.list02 li:nth-child(4) .txt-area{
		max-width: none;
		margin-left: 0;
	}
	.safety .security-system .box ul.list02 li:nth-child(4) .note{
		margin-top: 10px;
	}



}