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


.p-intro {
	margin-block: 10rem 0px;
	@media (max-width: 767.98px) {
		margin-block: 6rem 0px;
	}
}

.p-intro__ttl {
	color: #0075C2;
}

.p-intro__desc {
	
}



.p-ss {
	margin-block: 10rem;
	@media (max-width: 767.98px) {
		margin-block: 6rem;
	}
}

.p-ss#efficiency {
	margin-block: 10rem;
	@media (max-width: 767.98px) {
		margin-block: 6rem 0;
	}
}


.p-ss__inner {
	display: grid;
	row-gap: 2rem;
}

.p-ss__ttl {
	color: #0075c2;
	font-size: clamp(1.8rem,2.4vw,2.4rem);
	font-weight: bold;
	@media (max-width: 767.98px) {
		font-size: 1.8rem;
	}
}

.p-ss__txt {
	font-size: clamp(1.4rem,1.8vw,1.8rem);
	line-height: 200%;
	@media (max-width: 767.98px) {
		font-size: 1.4rem;
	}
}

.ss_box {
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: 10rem;
	place-items: center;
	margin-top: 30px;
	@media (max-width: 767.98px) {
		grid-template-columns: repeat(1,1fr);
		gap: 3rem 2rem;
	}
}

.ss_box--anshin {
	margin-top: 0;
}

.ss_box__inner {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	place-items: center;
	row-gap: 2rem;
	@media (max-width: 767.98px) {
		row-gap: 1rem;
	}
}

.ss_box__inner--anshin {
	place-items: start;
	row-gap: 3rem;
}

.ss_ttl {
	font-size: clamp(1.6rem,2.2vw,2.2rem);
	font-weight: bold;
	text-align: center;
	@media (max-width: 767.98px) {
		font-size: 1.6rem;
	}
}

.ss_txt {
	font-size: clamp(1.4rem,1.8vw,1.8rem);
	font-weight: bold;
	text-align: justify;
	@media (max-width: 767.98px) {
		font-size: 1.4rem;
	}
}

.ss_desc {
	text-align: justify;
}

.page_img {
	display: flex;
	justify-content: center;
	height: auto;
	margin-block: 10rem;
	background:linear-gradient(to left,#D9EBF6,#CFE5F4);
	@media (max-width: 767.98px) {
		margin-block: 6rem;
	}
	.page_img__inner {
		max-width: 1200px;
		width: 90%;
		margin: 0px auto;
	}
}

.p-factory {
	margin-block: 5rem;
	margin-top: 0px;
	@media (max-width: 767.98px) {
		margin-block: 60px 0;
	}
}

.p-factory .p-ss__ttl {
	margin-bottom: 2rem;
}

.factory_list tr > th {
	width: 30%;
	p {
		font-weight: bold;
		font-size: clamp(1.4rem,1.8vw,1.8rem);
		@media (max-width: 767.98px) {
			font-size: 1.4rem;
		}
	}
}

.factory_address .addr_top {
  display: flex;
  flex-direction: column;
  gap: 0px 1em;
  @media (max-width: 599.98px) {
	display: grid;
  }
}

.factory_address .addr_top span {
  display: inline-block;
  font-size: clamp(1.4rem,1.8vw,1.8rem);
	@media (max-width: 767.98px) {
		font-size: 1.4rem;
	}
}

.factory_address .map_btn {
	background: #0075C2;
	color: #FFF;
	font-size: clamp(1.2rem,1.4vw,1.4rem);
	font-weight: bold;
	display: inline-flex;
	border-radius: 5px;
	margin-top: 10px;
	@media (max-width: 767.98px) {
		font-size: 1.2rem;
	}
	a {
		padding: 4px 10px;		
		display: block;
	}
}


.factory_tel {
	display: flex;
	flex-direction: column;
	gap: 2px 5px;
	width: 27%;
	@media (max-width: 599.98px) {
		display: grid;
	}
}





