@charset "utf-8";

h2{
	width:100%;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	font-size:2.6rem;
	line-height: 1;
	display: flex;
	align-items: center;
	margin-bottom:80px;
}

h2::before,
h2::after{
	content:'';
	flex:1;
	height: 1px;
	display: block;
	border-top:1px solid #D6D6D6;
	border-bottom:1px solid #D6D6D6;
}

h2::before{
	margin-right:15px;
}

h2::after{
	margin-left:15px;
}


section table{
	width:100%;
	margin-top:20px;
	border-collapse:separate;
	border-spacing:0 5px;
}

section th,
section td{
	padding:10px 15px;
	line-height: 1.6;
}

section th{
	width:200px;
	background-color: #8ABA85;
	border-radius: 5px 0 0 5px;
	color:#fff;
	font-weight: bold;
}

section td{
	background-color: #F7F7F7;
	border-radius: 0 5px 5px 0;
	padding:5px 15px 5px 20px;
}

/*-----------------------
	スマホ・タブレット
-----------------------*/
@media screen and (min-width: 0) and (max-width: 480px){
	h2{
		font-size:2rem;
		margin-bottom:30px;
	}
	section th,
	section td{	
		width:100%;
		display: block;
		padding:5px 8px;
	}
	
	section th{
		border-radius: 3px 3px 0 0;
	}
	
	section td{
		border-radius: 0 0 3px 3px;
	}
}


/*------------------------------------


	目的・事業


------------------------------------*/

#business{
	width:100%;
	margin:0 auto 50px auto;
}

#business .inner{
	display: flex;
}

#business .photo img{
	border-radius: 10px;
}

#purpose .photo{
	width:478px;
	line-height: 0;
}

#purpose .photo img{
	width:478px;
	height: auto;
	height: 360px;
	object-fit: cover;
}

#purpose .inner .text{
	flex:1;
	margin-left:40px;
}

@media screen and (min-width: 890){
	#business .text strong{
		transform: rotate(0.003deg);
		font-size:1.003rem;
	}
}

#business .business{
	width:100%;
	margin-top:10px;
	border-radius: 5px;
	border:1px solid #D6D6D6;
	padding:5px;
	padding-bottom:15px;
}

#business .business h3{
	display: inline-block;
	padding:3px 15px;
	background-color: #66A554;
	border-radius: 6px;
	color:#fff;
	font-size:1.13rem;
	line-height: 1;
	margin-bottom:15px;
}

#business .business ul{
	padding:0 15px;
}

#business .business li{
	padding-left:3em;
	text-indent: -3em;
	line-height: 1.6;
	margin-bottom:5px;
}


#business p.mokuteki{
	font-size:1.15rem;
	margin-bottom:5px;
	font-weight: bold;
}

#bus-naiyo{
	width:100%;
	margin-top:50px;
}

#bus-naiyo .item{
	margin-bottom:50px;
}


#bus-naiyo .item h3{
	border-bottom:1px solid #D6D6D6;
	line-height: normal;
	font-size:1.6rem;
	margin-bottom:30px;
}

#bus-naiyo .item h3 span{
	border-bottom:2px solid #8ABF7B;
}

#bus-naiyo .item .inner{
	display: flex;
	width:100%;
}

#bus-naiyo .item .photo{
	width:300px;
	line-height: 0;
}

#bus-naiyo .item .photo img{
	width:100%;
	height: auto;
}

#bus-naiyo .item .cachi{
	flex:1;
	margin-left:15px;
}


#bus-naiyo .more{
	display: flex;
	justify-content: flex-end;
}

#bus-naiyo .more a{
	display: inline-flex;
	align-items: flex-end;
	color:#008C00;
	font-size: 0.98rem;
	font-weight: bold;
	margin-top:15px;
	line-height: 1;
}

#bus-naiyo .more a:nth-child(n+2){
	margin-left:10px;
}

#bus-naiyo .more a::before{
	content:'';
	width:1em;
	height: 1em;
	display: block;
	background-image: url("img/more-ico.jpg");
	background-size: cover;
	margin-right:3px;
	margin-bottom:3px;
}



/*-----------------------
	スマホ・タブレット
-----------------------*/
@media screen and (min-width: 0) and (max-width: 890px){
	#business .inner,
	#bus-naiyo .item .inner{
		display: block;
	}
	
	#business .photo,
	#bus-naiyo .item .photo{
		width:80%;
		max-width:300px;
		margin:0 auto 15px auto;
		text-align: center;
	}
	
	#business .photo img{
		width:100%;
		height: auto;
	}
	
	#bus-naiyo .item .photo img{
		width:250px;
		height:150px;
	}
	
	#bus-naiyo .item .cachi,
	#purpose .inner .text{
		margin-left: 0;
	}
	
	#business .text{
		width:100%;
		flex:none;
	}
}

@media screen and (min-width: 0) and (max-width: 480px){
	#business .business ul{
		padding:0;
	}
	
	#business .business h3{
		display: block;
		text-align: center;
	}

}

/*------------------------------------


	組合概要


------------------------------------*/

#outline table{
	width:100%;
	margin-top:20px;
	border-collapse:separate;
	border-spacing:0 5px;
}

#outline th,
#outline td{
	padding:10px 15px;
	line-height: 1.6;
}

#outline th{
	width:200px;
	background-color: #8ABA85;
	border-radius: 5px 0 0 5px;
	color:#fff;
	font-weight: bold;
}

#outline td{
	background-color: #F7F7F7;
	border-radius: 0 5px 5px 0;
	padding:5px 15px 5px 20px;
}

#outline td h3{
	font-size:1.15rem;
}

#outline td .map{
	display: flex;
	align-items: center;
}

#outline td .map a{
	line-height: 0;
	margin-left:10px;
}

#outline td .sfont{
	font-size:0.875rem;
}

#outline .item{
	width:100%;
	margin-top:50px;
}

#outline .item h3{
	border-bottom:1px solid #D6D6D6;
	line-height: normal;
	font-size:1.6rem;
	margin-bottom:30px;
}

#outline .item h3 span{
	border-bottom:2px solid #8ABF7B;
}

#outline .item-inner{
	display: flex;
	align-items: center;
}

#outline .item-inner .photo{
	width:250px;
}

#outline .item-inner .photo img{
	width: 100%;
	height: auto;
}

#outline .item-inner .text{
	flex:1;
	margin-left:30px;
}

#outline p.cachi{
	margin-bottom:5px;
	font-weight: bold;
}

#outline .more{
	display: flex;
	justify-content: flex-end;
}

#outline .more a{
	display: inline-flex;
	align-items: flex-end;
	color:#008C00;
	font-size: 0.98rem;
	font-weight: bold;
	margin-top:15px;
	line-height: 1;
}

#outline .more a:nth-child(n+2){
	margin-left:10px;
}

#outline .more a::before{
	content:'';
	width:1em;
	height: 1em;
	display: block;
	background-image: url("img/more-ico.jpg");
	background-size: cover;
	margin-right:3px;
	margin-bottom:3px;
}

@media screen and (min-width: 891){
	#outline p.cachi{
		transform: rotate(0.003deg);
		font-size:1.003rem;
	}
	
	#outline .item h3{
		margin-bottom:20px;
		font-size:1.5rem;
	}
}

/*-----------------------
	スマホ・タブレット
-----------------------*/
@media screen and (min-width: 481px) and (max-width: 890px){
	#outline th{
		width:200px;
	}
}
	
@media screen and (min-width: 0) and (max-width: 480px){
	#outline th,
	#outline td{	
		width:100%;
		display: block;
		padding:5px 8px;
	}
	
	#outline th{
		border-radius: 3px 3px 0 0;
	}
	
	#outline td{
		border-radius: 0 0 3px 3px;
	}
	
	#outline td .map{
		display: block;
	}
}

/*-----------------------------------

	プラント

-----------------------------------*/

#plant-outline .cachi{
	display: flex;
	align-items: center;
}

#plant-outline .cachi .photo{
	width:400px;
	margin-right:15px;
	  flex-shrink: 0;
}

#plant-outline .cachi .photo img{
	width:100%;
	height: auto;
	border-radius: 5px;
}
#plant-outline td ul{
	padding-left:1em;
}

#plant-outline td span.time{
	background-color: #8ABA85;
	border-radius: 3px;
	color:#fff;
	font-weight: bold;
	padding:0 5px;
	margin-right:0.5em;
}

#plant-access{
	width:100%;
}

#plant-access h4{
	background-color: #8ABA85;
	padding:8px 15px;
	color:#fff;
	margin-bottom:10px;
	border-radius: 5px;
}

#plant-map{
	width:100%;
	height: 400px;
	overflow: hidden;
	border-radius: 6px;
	margin-bottom:15px;
}

#plant-map iframe{
	width:calc(100% + 6px);
	height:calc(100% + 6px);
}

#plant-howto{
	width:100%;
	display: flex;
	justify-content: space-between;
	margin-top:30px;
}

#plant-howto h5{
	font-size:1.3rem;
	border-bottom:1px solid #D6D6D6;
	margin-bottom:20px;
	line-height: normal;
}

#plant-howto h5 .sfont{
	font-size:1rem;
}

#plant-howto .flow{
	text-align: center;
}


#plant-howto .f-item{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 800;
	font-size:1.1rem;
	width:100%;
	background-color: #C3DCBB;
	padding:5px 8px;
	text-align: center;
	color:#000;
	text-shadow:1px 1px 0 #fff, -1px -1px 0 #fff,
              -1px 1px 0 #fff, 1px -1px 0 #fff,
              0px 1px 0 #fff,  0 -1px 0 #fff,
              -1px 0 0 #fff, 1px 0 0 #fff;
	line-height: normal;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin:3px 0;
	border-radius: 5px;
}

#plant-howto .f-item p{
	text-align: left;
}

#plant-howto .f-item p span{
	width:4.5em;
	display: inline-block;
}

#plant-howto .arrow{
	width:50px;
	margin:0 auto;
	line-height: 0;
	position: relative;
}

#plant-howto .time{
	width:8em;
	position: absolute;
	right:-8em;
	top:calc(50% - 5px);
	line-height: 1;
	font-size:0.95rem;
	font-weight: bold;
	text-align: left;
}

#plant-access-wark{
	width:calc( (100% / 3) - 20px);
}

#plant-access-wark .f-item{
	min-height: 65px;
}

#plant-access-car{
	width:calc( (100% / 3) * 2);
}

#plant-access-car .f-item{
	min-height: 65px;
}


#plant-kousoku{
	display: flex;
	justify-content: space-between;
}

#plant-kousoku .kitem{
	width:calc(50% - 2px);
}

#plant-kousoku .f-item strong{
	text-decoration-line: underline;
  	text-decoration-color: #D1161B;
	text-decoration-thickness: 3px;
}

#plant-kousoku .kitem:last-child{
	display: flex;
	flex-direction: column;
}

#plant-howto .kitem:last-child .arrow:nth-child(4){
	flex:1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

/*-----------------------
	スマホ・タブレット
-----------------------*/
@media screen and (min-width: 0) and (max-width: 890px){
	#plant-outline .cachi{
		display: block;
	}
	
	#plant-outline .cachi .photo{
		margin:0 auto 20px auto;
	}
	
	#plant-howto h5 .sfont{
		font-size:0.97rem
	}
	
	#plant-howto{
		display: block;
	}
		
	#plant-access-car,
	#plant-access-wark{
		width:100%;
		margin:0 auto 20px auto;
	}
	
}

@media screen and (min-width: 0) and (max-width: 480px){
	#plant-access h4{	
		padding:5px 8px;
	}
	#plant-outline .cachi .photo{
		width:80%;
	}
	#plant-outline td ul{
		padding-left:0;
	}
	
	#plant-outline td li{
		padding-left:1.5em;
		text-indent: -1.5em;
	}
	#plant-howto .f-item p span{
		width: auto;
	}
}

/*------------------------------------


	委員会紹介


------------------------------------*/

#committee .main{
	width:100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top:15px;
}

#committee .item{
	width:calc(50% - 10px);
	border-radius: 6px;
	border:1px solid #D6D6D6;
	padding:5px 5px 15px 5px;
	margin-bottom:20px;
}

#committee .item img{
	width:100%;
	height: auto;
	aspect-ratio: 14 / 5;
	border-radius: 5px;
	vertical-align: middle;
	object-fit: cover;
}

#committee .item:first-child img{
		object-position:top;
}

#committee .item-text{
	padding:0 5px;
	margin-top:15px;
}

#committee .item h3{
	font-size:1.5rem;
	margin-bottom:15px;
	border-left:10px solid #8ABF7B;
	padding-left:10px;
}

@media screen and (min-width: 890){
	#committee .item h3{
		 transform: rotate(0.003deg);
	}
}


/*-----------------------
	スマホ・タブレット
-----------------------*/

@media screen and (min-width: 0) and (max-width: 481px){
	#committee .main{
		display: block;
	}
	
	#committee .item{
		width:100%;
	}
}


/*------------------------------------


	組織図


------------------------------------*/

#soshiki-zu{
	width:90%;
	max-width:860px;
	line-height: 0;
	margin:0 auto 30px auto;
}

#soshiki-zu img{
	width:100%;
	height: auto;
}


#soshiki h3{
	border-bottom:1px solid #D6D6D6;
	line-height: normal;
	font-size:1.6rem;
	margin-bottom:30px;
}

#soshiki h3 span{
	border-bottom:2px solid #8ABF7B;
}

#soshiki h3::first-letter{
	display: inline-block;
	margin-right:1em;
}

#soshiki ul{
	display: flex;
	flex-wrap: wrap;
}

#soshiki li{
	width:calc(50% - 5px);
	margin-right:5px;
	padding-left:0;
	text-indent: 0;
	text-align: left;
}

#soshiki .company{
	font-size:0.85rem;
}

/*-----------------------
	スマホ・タブレット
-----------------------*/
@media screen and (min-width: 0) and (max-width: 890px){
	
	#soshiki ul{
		display: block;
	}
	
	#soshiki li{
		width:100%;
	}
}

/*-----------------------

	バナー

-----------------------*/

a#prbana{
	display: block;
	width:180px;
	margin:50px auto 0 auto;
	line-height: 0;
}

a#prbana img{
	width:100%;
	height: auto;
}

#exbana{
	width:min(80%,600px);
	margin:30px auto 80px auto;
}

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

/*-----------------------
	スマホ・タブレット
-----------------------*/

@media screen and (min-width: 0) and (max-width: 481px){
	#exbana{
		margin:30px auto;
	}
	
}