

body.page .main-section .title-box {
	padding-bottom: 20px;
	position: relative;
	text-align: center;
}

body.page .main-section .title-box h2 {
	font-size: 3.8rem;
	font-weight: 700;
}

body.page .main-section .title-box::before {
	background: linear-gradient(90deg,rgba(199, 223, 255, 1) 0%, rgba(213, 255, 247, 1) 100%);
	bottom: 0;
	content: "";
	height: 2px;
	left: 50%;
	position: absolute;
	translate: -50% 0;
	width: 100px;
}

@media screen and (max-width: 767px) {
	body.page .main-section .title-box h2 {
		font-size: 2.4rem;
	}
}

body.page .sec-inner {
	padding: 100px 0;
}

@media screen and (max-width: 767px) {
	body.page .sec-inner {
		padding: 60px 0;
	}
}

body.page .text-box p a {
	color: #0066cc;
	text-decoration: underline;
}

/*
	事業・製品案内
*/
body#business .section-strength .business-strength-container {
	display: flex;
	gap: 30px 20px;
}

body#business .section-strength .business-strength-container .business-strength-item {
	max-width: 320px;
	width: 100%;
}

body#business .section-strength .business-strength-container .business-strength-item h3 {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 20px;
	text-align: center;
}

body#business .section-strength .business-strength-container .business-strength-item img {
	height: auto;
	width: 100%;
}

body#business .section-strength .business-strength-container .business-strength-item .text-box {
	margin-top: 20px;
}

body#business .section-strength .business-strength-container .business-strength-item .text-box p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.8;
}

@media screen and (max-width: 767px) {
	body#business .section-strength .business-strength-container {
		flex-wrap: wrap;
	}
	
	body#business .section-strength .business-strength-container .business-strength-item {
		max-width: unset;
		width: 100%;
	}
}

body#business .section-product {
	background: linear-gradient(135deg,rgba(232, 244, 255, 1) 0%, rgba(244, 250, 255, 1) 51%, rgba(255, 255, 255, 1) 100%);
}

body#business .section-product .introduction-container .image-box img {
	aspect-ratio: 25 / 7;
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

body#business .section-product .introduction-container .text-box {
	background-color: var(--white);
	box-shadow: 0px 1px 4px 1px rgba(0, 0, 0, 0.1);
	max-width: 900px;
	margin-inline: auto;
	padding: 40px 50px;
	position: relative;
	top: -60px;
	width: 100%;
}

body#business .section-product .introduction-container .text-box h3 {
	color: var(--main-color);
	font-size: 2.8rem;
	font-weight: 700;
}

body#business .section-product .introduction-container .text-box p {
	font-size: 1.6rem;
	line-height: 1.7;
	margin-top: 30px;
}

body#business .section-product .introduction-container .text-box .wrap-link {
	margin-top: 20px;
}

body#business .section-product .introduction-container .text-box .wrap-link .c-link {
	margin-left: auto;
	width: fit-content;
}

@media screen and (max-width: 1023px) {
	body#business .section-product .introduction-container .text-box {
		width: 92%;
	}
}

@media screen and (max-width: 767px) {
	body#business .section-product .introduction-container .image-box img {
		aspect-ratio: 5 / 2;
	}
	
	body#business .section-product .introduction-container .text-box {
		padding: 20px;
		top: -20px;
	}
}

body#business .section-product .product-container {

}

body#business .section-product .product-container .product-list {
	align-items: self-start;
	display: grid;
	gap: 0 64px;
	grid-template-areas:
	"image title"
	"image text"
	"image link"
	;
	grid-template-columns: 330px 1fr;
	grid-template-rows: auto auto 1fr;
}

body#business .section-product .product-container .product-list + .product-list {
	margin-top: 30px;
}

body#business .section-product .product-container .product-list .product-info {
	padding: 40px 0 30px;
}

body#business .section-product .product-container .product-list .image-box {
	grid-area: image;
}

body#business .section-product .product-container .product-list .image-box img {
	height: auto;
	width: 100%;
}

body#business .section-product .product-container .product-list .title {
	color: var(--main-color);
	font-size: 2.6rem;
	font-weight: 700;
	grid-area: title;
	margin-top: 35px;
}

body#business .section-product .product-container .product-list .text-box {
	margin-top: 20px;
	grid-area: text;
}

body#business .section-product .product-container .product-list .text-box p {
	font-size: 1.6rem;
	font-weight: 500;
}

body#business .section-product .product-container .product-list .wrap-link {
	grid-area: link;
	margin-top: 30px;
}

body#business .section-product .product-container .product-list .wrap-link .c-link {
	margin-left: auto;
	width: fit-content;
}

@media screen and (max-width: 1023px) {
	body#business .section-product .product-container {
		margin-top: 40px;
	}
}

@media screen and (max-width: 767px) {
	body#business .section-product .product-container .product-list {
		grid-template-areas:
		"title"
		"image"
		"text"
		"link"
		;
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	}
	
	body#business .section-product .product-container .product-list + .product-list {
		margin-top: 50px;
	}
	
	body#business .section-product .product-container .product-list .title {
		margin-top: 0;
	}
	
	body#business .section-product .product-container .product-list .image-box {
		margin-top: 20px;
	}
}


/*
	page-template
*/
body.page-template .section-introduction .heading-conteiner h3 {
	align-items: center;
	color: var(--main-text-color);
	column-gap: 20px;
	display: flex;
	font-size: 2.6rem;
	margin-top: 60px;
}

body.page-template .section-introduction .heading-conteiner h3::before {
	background-color: var(--main-color);
	border-radius: 90px;
	content: "";
	display: block;
	height: 60px;
	width: 6px;
}

body.page-template .section-introduction .heading-conteiner .text-box {
	margin-top: 45px;
}

body.page-template .section-introduction .heading-conteiner .text-box p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.7;
}

body.page-template .section-introduction .heading-conteiner .image-box img {
	display: block;
	height: auto;
	margin-inline: auto;
	width: auto;
}

body.page-template .section-introduction .example-container {
	display: flex;
	gap: 50px 20px;
	margin-top: 50px;
	justify-content: flex-start;
}

body.page-template .section-introduction .example-container .example-item {
	max-width: 320px;
	width: 100%;
}

body.page-template .section-introduction .example-container .example-item .image-box img {
	aspect-ratio: 64 / 47;
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

body.page-template .section-introduction .example-container .example-item h4 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-top: 20px;
	text-align: center;
}

@media screen and (max-width: 767px) {
	body.page-template .section-introduction .heading-conteiner h3 {
		font-size: 2rem;
	}
	
	
	body.page-template .section-introduction .example-container {
		flex-wrap: wrap;
	}
	body.page-template .section-introduction .example-container .example-item {
		max-width: unset;
		width: 100%;
	}
	
	body.page-template .section-introduction .example-container .example-item h4 {
		margin-top: 10px;
	}
}

body.page-template .section-features {
	background: linear-gradient(45deg,rgba(232, 244, 255, 1) 0%, rgba(232, 244, 255, 1) 30%, rgba(255, 255, 255, 1) 100%);
}

body.page-template .section-features .features-container .features-item {
	align-items: self-start;
	background-color: var(--white);
	border-radius: 20px;
	box-shadow: inset 0 0 20px 4px rgba(186, 224, 255, 0.4);
	display: grid;
	gap: 0 60px;
	grid-template-areas:
	"image title"
	"image text"
	;
	grid-template-columns: 330px 1fr;
	grid-template-rows: auto 1fr;
	padding: 50px;
}

body.page-template .section-features .features-container .features-item:not(:has(.image-box)) {
	grid-template-areas:
	"title"
	"text"
	;
	grid-template-columns: 1fr;
}

body.page-template .section-features .features-container .features-item + .features-item {
	margin-top: 20px;
}

body.page-template .section-features .features-container .features-item .image-box {
	grid-area: image;
}

body.page-template .section-features .features-container .features-item .image-box img {
	height: auto;
	width: 100%;
}

body.page-template .section-features .features-container .features-item .title {
	align-self: self-start;
	color: var(--main-color);
	font-size: 3.2rem;
	font-weight: 700;
	grid-area: title;
	margin-top: 25px;
}

body.page-template .section-features .features-container .features-item .title span {
	color: var(--sub-color);
	display: block;
	font-size: 1.4rem;
	font-weight: 600;
	margin-bottom: 5px;
}

body.page-template .section-features .features-container .features-item .text-box {
	align-self: self-start;
	grid-area: text;
	margin-top: 50px;
}

body.page-template .section-features .features-container .features-item .text-box p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 2;
}

@media screen and (max-width: 767px) {
	body.page-template .section-features .features-container .features-item {
		align-items: self-start;
		gap: 20px 0;
		grid-template-areas:
		"title"
		"image"
		"text"
		;
		grid-template-columns: auto;
		grid-template-rows: auto 1fr;
		padding: 30px 20px;
	}
	
	body.page-template .section-features .features-container .features-item .title {
		align-self: start;
		font-size: 2.6rem;
		margin-top: 0;
	}
	
	body.page-template .section-features .features-container .features-item .text-box {
		margin-top: 0;
	}
}

body.page-template .group-title {
	font-size: 2.4rem;
	font-weight: 700;
	margin-bottom: 20px;
}

body.page-template .section-main-product {
	background: linear-gradient(45deg,rgba(232, 244, 255, 1) 0%, rgba(232, 244, 255, 1) 30%, rgba(255, 255, 255, 1) 100%);
}

body.page-template .section-main-product .wrap-main-product-container + .wrap-main-product-container {
	margin-top: 60px;
}

body.page-template .section-main-product .main-product-container {
	display: flex;
	flex-wrap: wrap;
	gap: 80px 30px;
}

body.page-template .section-main-product .main-product-container .main-product-item {
	width: calc(50% - 15px);
}

body#clean.page-template .section-main-product .main-product-container .main-product-item {
	width: calc(100% / 3 - 20px);
}

body.page-template .section-main-product .main-product-container .main-product-item .image-box img {
	border-radius: 10px;
	height: auto;
	width: 100%;
}

body.page-template .section-main-product .main-product-container .main-product-item h3.title {
	color: var(--sub-color);
	font-size: 1.8rem;
	font-weight: 500;
	margin-top: 40px;
}

body.page-template .section-main-product .main-product-container .main-product-item .title span {
	color: var(--main-color);
	display: block;
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1.2;
}

body.page-template .section-main-product .main-product-container .specification-contaienr {
	margin-top: 21px;
}

body.page-template .section-main-product .main-product-container .specification-contaienr .row {
	align-items: flex-start;
	border-top: 1px solid var(--white);
	column-gap: 10px;
	display: flex;
	padding: 15px 0;
}

body.page-template .section-main-product .main-product-container .specification-contaienr .row:last-child {
	border-bottom: 1px solid var(--white);
}

body.page-template .section-main-product .main-product-container .specification-contaienr .row .title {
	color: var(--main-text-color);
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.4;
	width: 124px;
}

body.page-template .section-main-product .main-product-container .specification-contaienr .row .explanation {
	color: var(--main-text-color);
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	width: calc(100% - 134px);
}

body.page-template .section-main-product .main-product-container .specification-contaienr .row .explanation .note {
	color: var(--main-text-color);
	font-size: 1.2rem;
	font-weight: 500;
}

body.page-template .section-main-product .content-box .wrap-link {
	margin-top: 50px;
}

body.page-template .section-main-product .content-box .wrap-link .c-link {
	justify-content: flex-end;
}

@media screen and (max-width: 767px) {
	body.page-template .section-main-product .main-product-container {
		gap: 60px 0;
	}
	
	body.page-template .section-main-product .main-product-container .main-product-item {
		width: 100%;
	}
	
	body#clean.page-template .section-main-product .main-product-container .main-product-item {
		width: 100%;
	}
	
	body.page-template .section-main-product .main-product-container .main-product-item h3.title {
		font-size: 1.6rem;
		margin-top: 20px;
	}
	
	body.page-template .section-main-product .main-product-container .main-product-item h3.title span {
		font-size: 2.8rem;
	}
	
	body.page-template .section-main-product .main-product-container .specification-contaienr .row {
		padding: 10px 0;
	}
	
	body.page-template .section-main-product .main-product-container .specification-contaienr .row .title {
		font-size: 1.5rem;
	}

	body.page-template .section-main-product .main-product-container .specification-contaienr .row .explanation {
		font-size: 1.5rem;
	}
}

body.page-template .section-faq .wrap-faq-container {
	column-gap: 60px;
	display: flex;
}

body.page-template .section-faq .wrap-faq-container .sec-ttl-box {
	border-right: 1px solid #ccdfff;
	width: 250px;
}

body.page-template .section-faq .content-box {
	width: calc(100% - 310px);
}

@media screen and (max-width: 767px) {
	body.page-template .section-faq .wrap-faq-container {
		flex-wrap: wrap;
	}
	
	body.page-template .section-faq .wrap-faq-container .sec-ttl-box .sec-inner {
		padding-bottom: 0;
	}
	
	body.page-template .section-faq .wrap-faq-container .sec-ttl-box {
		border-right: none;
		width: 100%;
	}
	
	body.page-template .section-faq .content-box {
		width: 100%;
	}
	
	body.page-template .section-faq .content-box .sec-inner {
		padding-top: 0;
	}
}

body.page-template .section-faq .faq-item {
	border-bottom: 1px solid var(--border-color);
}

body.page-template .section-faq .faq-item:first-child {
	border-top: 1px solid var(--border-color);
}

body.page-template .section-faq .question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 30px 0 30px 10px;
	background-color: var(--white);
	color: var(--white);
	cursor: pointer;
}

body.page-template .section-faq .question .question-text {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	padding-left: 2em;
	text-indent: -2.4em;
	vertical-align: middle;
	width: calc(100% - 60px);
}

body.page-template .section-faq .question .question-text::before {
	color: var(--main-color);
	content: 'Q';
	font-family: "Poppins", sans-serif;
	font-weight: 700;
	font-size: 3rem;
	margin-right: 20px;
}

body.page-template .section-faq .question .icon {
	margin-right: 20px;
	position: relative;
}

body.page-template .section-faq .question .icon::before {
	background-color: var(--main-color);
	border-radius: 90px;
	content: '';
	display: block;
	height: 20px;
	transition: rotate .3s;
	width: 2px;
}
body.page-template .section-faq .question.active .icon::before {
	rotate: 90deg;
}

body.page-template .section-faq .question .icon::after {
	background-color: var(--main-color);
	border-radius: 90px;
	content: '';
	display: block;
	height: 2px;
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
	width: 20px;
}

body.page-template .section-faq .answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease-out;
}

body.page-template .section-faq .answer .wrap-answer-content {
	padding-bottom: 30px;
}

body.page-template .section-faq .answer .answer-content {
	background-color: #F7FBFF;
	border-radius: 10px;
	padding: 30px 40px;
}

body.page-template .section-faq .answer .answer-content p {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.75;
}

body.page-template .section-faq .answer .answer-content p a {
	color: #0066cc;
	text-decoration: underline;
}

@media screen and (max-width: 767px) {
	body.page-template .section-faq .question .question-text {
		line-height: 1.2;
	}
	
	body.page-template .section-faq .answer .answer-content {
		padding: 20px;
	}
}

/* ============================
	scroll-hint
============================ */
body.page-template .m-scroll-hint-show {
  display: block;
}

.m-scroll-hint {
	animation: scroll-hint-animation 2s infinite ease;
  background: rgba(0, 0, 0, 0.5);
  color: var(--white);
  display: none;
	font-size: 1.3rem;
  font-weight: 700;
  left: 50%;
  line-height: 1.4;
  padding: 10px 10px 10px 15px;
  position: absolute;
  top: 120px;
	width: 57%;
}

.m-scroll-hint span {
	align-items: baseline;
	color: var(--white);
	display: flex;
	justify-content: center;
	gap: 8px;
}

.m-scroll-hint span::after {
	border: 2px solid var(--white);
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	content: "";
	display: block;
	height: 8px;
	transform: rotate(45deg);
	transform-origin: center;
	width: 8px;
}

@keyframes scroll-hint-animation {
  0% {
    transform: translate(-50%, -50%);
  }
  50% {
    transform: translate(-40%, -50%);
  }
  100% {
    transform: translate(-50%, -50%);
  }
}

.m-scroll-hint-show {
  display: block;
}

@media screen and (max-width: 767px) {
	.m-scroll-hint {
		top: 160px;
	}
}

body.page-template section .template-content .table-scroll {
	overflow-x: auto;
	position: relative;
}

body.page-template section .template-content table {
	table-layout: fixed;
	margin-bottom: 0;
	margin-top: 50px;
	width: 100%;
	white-space: nowrap;
}

body.page-template section .template-content colgroup col:nth-child(1) {
	width: 56px;
}

body.page-template section .template-content colgroup col:nth-child(2) {
	width: 46px;
}

body.page-template section .template-content colgroup col:nth-child(3) {
	width: 435px;
}

body.page-template section .template-content table thead th {
	background-color: var(--main-color);
	border: 1px solid var(--main-color);
	color: var(--white);
	font-weight: 700;
	padding: 13px 10px;
}

body.page-template section .template-content table thead th + th {
	border-left-color: var(--white);
}

body.page-template section .template-content table tbody tr:nth-child(even) {
	background-color: #F8F8F8;
}

body.page-template section .template-content table tbody tr td {
	font-size: 1.6rem;
	padding: 3.5px 10px;
}

body.page-template section .template-content table tbody tr td:first-child {
	text-align: center;
}

body.page-template section .template-content table tbody tr td:first-child {
	text-align: center;
}

body.page-template section .template-content table tbody tr td.category-cell {
	text-align: center;
	vertical-align: middle;
	writing-mode: vertical-rl;
}

body.page-template section .template-content table tbody tr td.number {
	text-align: center;
}

@media screen and (max-width: 767px) {
	body.page-template section .template-content table thead th {
		font-size: 1.4rem;
		padding: 10px;
	}
	
	body.page-template section .template-content table tbody tr td {
		font-size: 1.4rem;
	}
	
	body.page-template section .template-content colgroup col:nth-child(3) {
		width: 390px;
	}
	
	body.page-template section .template-content colgroup col:nth-child(4) {
		width: 180px;
	}

	body.page-template section .template-content colgroup col:nth-child(5) {
		width: 180px;
	}
}

body.page-template section .template-content .institution-container {
	background-color: #F8F8F8;
	padding: 30px 50px;
	border-radius: 12px;
	width: 100%;
}

body.page-template section .template-content .institution-container h3 {
	color: var(--main-color);
	font-size: 1.8rem;
	font-weight: 700;
	margin: 0;
	padding: 0;
}

body.page-template section .template-content .institution-container h3::before {
	content: none;
}

body.page-template section .template-content .institution-container .institution-list {
	column-gap: 50px;
	columns: 2;
	list-style: none;
	margin-top: 30px;
	padding: 0;
}


body.page-template section .template-content .institution-container .institution-list li {
	font-size: 1.6rem;
	font-weight: 500;
	padding-left: 0;
}


body.page-template section .template-content .institution-container .institution-list li::before {
	content: none;
}

@media screen and (max-width: 767px) {
	body.page-template section .template-content .institution-container {
		padding: 20px;
	}
	
	body.page-template section .template-content .institution-container .institution-list {
		columns: 1;
	}
}

/*
	会社案内
*/
body#company section:nth-child(even) {
	background: linear-gradient(135deg, rgba(232, 244, 255, 1) 0%, rgba(244, 250, 255, 1) 51%, rgba(255, 255, 255, 1) 100%);
}

body#company .section-philosophy .text-box p {
	font-size: 1.8rem;
	text-align: center;
}

@media screen and (max-width: 767px) {
	body#company .section-philosophy .text-box p {
		font-size: 1.6rem;
		text-align: left;
	}
}

body#company .section-message .text-box p + p {
	margin-top: 1em;
}

body#company .section-overview .overview-item {
	background-color: var(--white);
	display: flex;
}

body#company .section-overview .overview-item:nth-child(odd) {
	background-color: #F8F8F8;
}

body#company .section-overview .overview-item:last-child {
}

body#company .section-overview .overview-item .title {
	border-right: 1px solid var(--border-color);
	line-height: 2;
	padding: 24px 32px;
	width: 170px;
}

body#company .section-overview .overview-item .title p {
	
}

body#company .section-overview .overview-item .text {
	padding: 24px 32px;
	line-height: 2;
	width: calc(100% - 170px);
}

@media screen and (max-width: 767px) {
	body#company .section-overview .overview-item {
		border-bottom: 1px solid var(--border-color);
		flex-wrap: wrap;
	}
	
	body#company .section-overview .overview-item:nth-child(odd) {
		background-color: var(--white);
	}
	
	body#company .section-overview .overview-item .title {
		background-color: #F8F8F8;
		border-right: none;
		flex-basis: 100%;
		padding: 16px 20px;
		width: 100%;
	}
	
	body#company .section-overview .overview-item .title p {
		font-size: 1.4rem;
	}
	
	body#company .section-overview .overview-item .text {
		flex-basis: 100%;
		padding: 16px 20px;
		width: 100%;
	}
	
	body#company .section-overview .overview-item .text p {
		font-size: 1.4rem;
	}
}

body#company .section-history .history-container .history-item {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

body#company .section-history .history-container .history-item + .history-item {
	margin-top: 5px;
}

body#company .section-history .history-container .history-item .title {
	width: 100%;
}

body#company .section-history .history-container .history-item .title p {
	color: var(--main-color);
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.4;
}

body#company .section-history .history-container .history-item .text {
	border-left: 1px solid var(--sub-color);
	flex-basis: auto;
	margin-left: 20px;
	padding-bottom: 35px;
	padding-left: 20px;
	padding-top: 5px;
	position: relative;
	width: 100%;
}

body#company .section-history .history-container .history-item .text p {
	font-size: 1.5rem;
}

body#company .section-history .history-container .history-item:last-child .text{
	padding-bottom: 0;
}

@media screen and (max-width: 767px) {
	body#company .section-history .history-container .history-item + .history-item {
		margin-top: 8px;
	}
	
	body#company .section-history .history-container .history-item .title p {
		font-size: 1.8rem;
	}
	
	body#company .section-history .history-container .history-item .text p {
		font-size: 1.4rem;
	}
}

body#company .section-access .google-maps iframe {
	height: 350px;
	width: 100%;
}

body#company .section-access .access-detail address {
	font-size: 1.6rem;
	font-style: normal;
	margin-top: 1em;
}

@media screen and (max-width: 767px) {
	body#company .section-access .google-maps iframe {
		height: 250px;
	}
}

body#company .section-sdgs .explanation-container .image-box {
	margin-inline: auto;
	margin-top: 80px;
	width: fit-content;
}

body#company .section-sdgs .sdgs-container {
	margin-top: 80px;
}

body#company .section-sdgs .sdgs-container .sdgs-item h3 {
	color: var(--main-color);
	font-size: 3rem;
	font-weight: 700;
}

body#company .section-sdgs .sdgs-container .sdgs-item .icon-box {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-top: 20px;
}

body#company .section-sdgs .sdgs-container .sdgs-item .icon-box img {
	height: auto;
	width: 96px;
}

body#company .section-sdgs .sdgs-container .sdgs-item + .sdgs-item {
	margin-top: 60px;
}

body#company .section-sdgs .sdgs-container .sdgs-item .text-box {
	margin-top: 20px;
}

@media screen and (max-width: 767px) {
	body#company .section-sdgs .sdgs-container .sdgs-item h3 {
		font-size: 2.4rem;
	}
	
	body#company .section-sdgs .sdgs-container .sdgs-item + .sdgs-item {
		margin-top: 40px;
	}
	
	body#company .section-sdgs .sdgs-container .sdgs-item .icon-box img {
		height: auto;
		width: 64px;
	}
}

body#contact .section-mail {
	background-color: #e8f4ff;
}

/*
	お問い合わせ
*/
body#contact .content-box .text-box p {
	font-size: 2rem;
	margin-top: 40px;
	text-align: center;
}

body#contact .content-box .wrap-tel {
	margin-top: 40px;
	text-align: center;
}

body#contact .content-box .wrap-tel .tel {
	font-size: 4rem;
}

@media screen and (max-width: 767px) {
	body#contact .content-box .text-box p {
		font-size: 1.8rem;
		margin-top: 20px;
		text-align: center;
	}

	body#contact .content-box .wrap-tel {
		margin-top: 20px;
		text-align: center;
	}

	body#contact .content-box .wrap-tel .tel {
		font-size: 2.8rem;
		font-weight: 700;
	}
	
}

/*
	プライバシーポリシー
*/

/*
	業務用空調機
*/
body#airconditioner .page-mv {
	background-image: url("../images/airconditioner/mv_bg.png");
	background-repeat: no-repeat;
	background-position: center -80px;
	background-size: cover;
	height: 100%;
	position: relative;
}

body#airconditioner .page-mv::before {
	background: linear-gradient(0deg, rgba(255, 255, 255, 1) 0%, rgba(247, 251, 255, 0.29) 40%, rgba(242, 249, 255, 0) 100%);
	bottom: 0;
	content: "";
	left: 0;
	height: 200px;
	position: absolute;
	top: unset;
	width: 100%;
	z-index: 1;
}

body#airconditioner .page-mv .page-ttl-box {
	position: relative;
	top: 40px;
	width: fit-content;
}

body#airconditioner .page-mv .page-ttl-box .catch {
	background-color: #383F91;
	border-radius: 10px;
	text-align: center;
	width: fit-content;
}

body#airconditioner .page-mv .page-ttl-box .catch p {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--white);
	letter-spacing: .03em;
	padding: 8px 34px;
}

body#airconditioner .page-mv .page-ttl-box h1 {
	color: var(--main-text-color);
	font-size: 5.8rem;
	font-weight: 700;
	letter-spacing: -.03em;
	line-height: 1.2;
	margin-top: 20px;
	text-shadow: 2px 2px 5px var(--white);
}

body#airconditioner .page-mv .page-ttl-box h1 span {
	color: var(--main-color);
}

body#airconditioner .page-mv .page-ttl-box .point-box {
	display: flex;
	gap: 10px;
	margin-top: 20px;
}

body#airconditioner .page-mv .page-ttl-box .point-box .point-item {
	align-items: center;
	background-color: var(--white);
	border-radius: 50%;
	display: flex;
	justify-content: center;
	height: 160px;
	position: relative;
	width: 160px;
}

body#airconditioner .page-mv .page-ttl-box .point-box .point-item::before {
	border: 2px solid #E6F7FF;
	border-radius: 50%;
	content: "";
	display: block;
	height: 140px;
	left: 50%;
	position: absolute;
	top: 50%;
	translate: -50% -50%;
	width: 140px;
}

body#airconditioner .page-mv .page-ttl-box .point-box .point-item p {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
}

body#airconditioner .page-mv .page-ttl-box .point-box .point-item p em {
	color: var(--main-color);
	display: block;
	font-size: 2.2rem;
	font-style: normal;
	margin-top: 4px;
}

@media screen and (max-width: 767px) {
	body#airconditioner .page-mv {
		background-position: center -80px;
	}
	
	body#airconditioner .page-mv .page-ttl-box {
		margin-inline: auto;
	}
	
	body#airconditioner .page-mv .page-ttl-box h1 {
		font-size: 3rem;
	}
	
	body#airconditioner .page-mv .page-ttl-box .catch {
		margin-inline: auto;
	}
	
	body#airconditioner .page-mv .page-ttl-box .catch p {
		font-size: 1.9rem;
		padding-left: 20px;
		padding-right: 20px;
	}
	
	body#airconditioner .page-mv .page-ttl-box .point-box {
		justify-content: space-between;
	}
	
	body#airconditioner .page-mv .page-ttl-box .point-box .point-item {
		align-items: center;
		background-color: var(--white);
		border-radius: 50%;
		display: flex;
		justify-content: center;
		height: 105px;
		position: relative;
		width: 105px;
	}
	
	body#airconditioner .page-mv .page-ttl-box .point-box .point-item::before {
		height: 100px;
		width: 100px;
	}
	
	body#airconditioner .page-mv .page-ttl-box .point-box .point-item p {
		font-size: 1.4rem;
	}

	body#airconditioner .page-mv .page-ttl-box .point-box .point-item p em {
		font-size: 1.6rem;
	}
}

body#airconditioner .page-mv .mv-cta {
	background-image: url("../images/airconditioner/mv_cta_bg.png");
	background-color: var(--main-color);
	background-position: right;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 10px;
	margin-inline: auto;
	margin-top: 90px;
	max-width: 1000px;
	padding: 50px 10px 40px;
	position: relative;
	width: 100%;
	z-index: 2;
}

body#airconditioner .page-mv .mv-cta .text-box {
	text-align: center;
}

body#airconditioner .page-mv .mv-cta .text-box p {
	color: var(--white);
	font-size: 2.2rem;
	line-height: 1.5;
}

body#airconditioner .page-mv .mv-cta .c-lp-link {
	margin-top: 30px;
	padding-left: 80px;
}

@media screen and (max-width: 767px) {
	body#airconditioner .page-mv .mv-cta {
		padding: 30px 20px;
	}
	
	body#airconditioner .page-mv .mv-cta .text-box {
		text-align: left;
	}
	
	body#airconditioner .page-mv .mv-cta .text-box p {
		font-size: 1.8rem;
	}
	
	body#airconditioner .page-mv .mv-cta .c-lp-link {
		max-width: 360px;
		padding-left: 60px;
		width: 100%;
	}
}

body#airconditioner .sec-ttl-box p {
	font-size: 9.8rem;
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 1;
}

body#airconditioner .sec-ttl-box h2 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-top: 5px;
}

body#airconditioner .section-problem .sec-inner {
	padding-top: 50px;
}

@media screen and (max-width: 767px) {
	body#airconditioner .sec-ttl-box p {
		font-size: 5.2rem;
	}
	
	body#airconditioner .sec-ttl-box h2 {
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 413px) {
		body#airconditioner .page-mv .mv-cta .c-lp-link {
		padding-left: 40px;
	}
}

body#airconditioner .section-problem h2 {
	font-size: 3rem;
	line-height: 1.4;
	text-align: center;
}

body#airconditioner .section-problem .problem-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}

body#airconditioner .section-problem .problem-container .problem-item {
	align-items: center;
	background-color: #E5EAEF;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	height: auto;
	min-height: 160px;
	overflow: hidden;
	padding: 15px;
	position: relative;
	width: calc(100% / 3 - 14px);
}

body#airconditioner .section-problem .problem-container .problem-item::before {
	background: linear-gradient(0deg,rgba(201, 218, 235, .3) 0%, rgba(255, 255, 255, .3) 100%);
	border-radius: 50%;
	content: '';
	height: 258px;
	left: 50%;
	position: absolute;
	top: -112px;
	transform: translateX(-50%);
	width: 360px;
	z-index: 2;
}

body#airconditioner .section-problem .problem-container .problem-item p {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	position: relative;
	text-align: center;
	z-index: 3;
}

@media screen and (max-width: 959px) {
	body#airconditioner .section-problem .problem-container .problem-item {
		width: calc(50% - 10px);
	}
	
	body#airconditioner .section-problem .problem-container .problem-item::before {
		width: 500px;
	}
}

@media screen and (max-width: 767px) {
	body#airconditioner .section-problem h2 {
		font-size: 2rem;
		text-align: left;
	}
	
	body#airconditioner .section-problem .problem-container .problem-item {
		align-items: center;
		background-color: #E5EAEF;
		border-radius: 10px;
		display: flex;
		justify-content: center;
		min-height: 100px;
		padding: 15px;
		width: 100%;
	}
	
	body#airconditioner .section-problem .problem-container .problem-item::before {
		top: -172px;
	}
	
	body#airconditioner .section-problem .problem-container .problem-item p {
		font-size: 1.6rem;
	}
}

body#airconditioner .section-point {
	background-color: #E6F7FF;
	background-image: url("../images/airconditioner/point_bg.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center top;
}

body#airconditioner .section-point .sec-inner {
	background-color: var(--white);
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 50px;
}

body#airconditioner .section-point .sec-inner .lead-text-box {
	padding: 0 20px;
}

body#airconditioner .section-point .sec-inner .point-container {
	counter-reset: number 0;
	margin-top: 50px;
	padding: 0 50px;
}

body#airconditioner .section-point .sec-inner .point-container .point-item {
	align-items: flex-start;
	display: flex;
}

body#airconditioner .section-point .sec-inner .point-container .point-item + .point-item {
	margin-top: 60px;
}

body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) {
	flex-direction: row-reverse;
	justify-content: flex-end
}

body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) .image-box::before {
	border: 4px solid #F2F9FF;
	content: "";
	display: block;
	left: 20px;
	height: 100%;
	max-height: 300px;
	max-width: 360px;
	right: unset;
	top: 20px;
	width: 100%;
	z-index: 0;
}

body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) .text-box .title {
	padding-left: 0;
	padding-right: 50px;
}

body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) .text-box .explanation-box {
	padding-left: 0;
	padding-right: 50px;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .image-box {
	height: auto;
	max-width: 360px;
	position: relative;
	width: 100%;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .image-box img {
	height: auto;
	position: relative;
	width: 100%;
	z-index: 1;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .image-box::before {
	border: 4px solid #F2F9FF;
	content: "";
	display: block;
	left: unset;
	height: 100%;
	max-height: 300px;
	max-width: 360px;
	position: absolute;
	right: 20px;
	top: 20px;
	width: 100%;
	z-index: 0;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .text-box {
	max-width: 440px;
	width: 100%;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .title {
	border-bottom: 2px solid #F2F2F2;
	line-height: 1.5;
	margin-top: 15px;
	padding-bottom: 30px;
	padding-left: 50px;
	padding-right: 0;
	position: relative;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .title::before {
	color: var(--sub-color);
	counter-increment: number 1;
	content: "0"counter(number);
	display: block;
	font-family: "Poppins", sans-serif;
	font-size: 2.2rem;
	font-weight: 600;
	left: 50px;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .explanation-box {
	padding-left: 50px;
	padding-right: 0;
	padding-top: 30px;
}

body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .explanation-box p {
	line-height: 1.6;
}

@media screen and (max-width: 767px) {
	body#airconditioner .section-point .sec-inner {
		padding-left: 0;
		padding-right: 0;
		width: calc(100% - 40px);
	}
	
	body#airconditioner .section-point .sec-inner .point-container {
		padding: 0 20px;
	}
	
	body#airconditioner .section-point .sec-inner .lead-text-box {
		padding: 0 20px;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item {
		flex-wrap: wrap-reverse;
		row-gap: 20px;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .image-box {
		max-width: unset;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .text-box {
		max-width: unset;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .title {
		padding-bottom: 20px;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .title,
	body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) .text-box .title {
		padding-left: 0;
		padding-right: 0;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .explanation-box {
		padding-top: 20px;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .text-box .explanation-box,
	body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) .text-box .explanation-box {
		padding-left: 0;
		padding-right: 0;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .image-box::before,
	body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) .image-box::before {
		max-height: unset;
		max-width: unset;
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item .image-box::before {
		right: 10px;
		top: 10px
	}
	
	body#airconditioner .section-point .sec-inner .point-container .point-item:nth-child(even) .image-box::before {
		left: 10px;
		top: 10px
	}
}

body#airconditioner .section-service {
	background-image: url("../images/airconditioner/service_bg.png");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
}

body#airconditioner .section-service .service-container {
	counter-reset: service-number 0;
	display: flex;
	flex-wrap: wrap;
	gap: 50px 20px;
	justify-content: center;
}

body#airconditioner .section-service .service-container .service-item {
	max-width: 320px;
	width: 100%;
}

body#airconditioner .section-service .service-container .service-item .image-box img {
	border-radius: 10px;
	height: auto;
	width: 100%;
}

body#airconditioner .section-service .service-container .service-item .text-box {
	padding: 0 10px;
}

body#airconditioner .section-service .service-container .service-item .text-box .title {
	color: var(--sub-color);
	font-size: 2.2rem;
	font-weight: 700;
	margin-top: 30px;
	position: relative;
	text-align: center;
}

body#airconditioner .section-service .service-container .service-item .text-box .title::before {
	color: #D7E2F2;
	counter-increment: service-number 1;
	content: counter(service-number);
	display: block;
	font-family: "Poppins", sans-serif;
	font-size: 6.2rem;
	font-weight: 600;
	left: 0;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
}

body#airconditioner .section-service .service-container .service-item .text-box .explanation-box {
	margin-top: 20px;
}

@media screen and (max-width: 767px) {
	body#airconditioner .section-service .service-container .service-item {
		max-width: unset;
	}
}

body#airconditioner .section-case {
	background: linear-gradient(90deg,rgba(109, 167, 244, 1) 0%, rgba(147, 199, 244, 1) 100%);
	position: relative;
	overflow: hidden;
}

body#airconditioner .section-case::before,
body#airconditioner .section-case::after {
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	display: block;
	position: absolute;
	z-index: 0;
}

body#airconditioner .section-case::before {
	background-image: url("../images/airconditioner/case_circle01.png");
	height: 370px;
	right: -90px;
	top: -125px;
	width: 500px;
}

body#airconditioner .section-case::after {
	background-image: url("../images/airconditioner/case_circle02.png");
	height: 360px;
	left: -80px;
	bottom: -100px;
	width: 360px;
}

body#airconditioner .section-case .sec-inner {
	position: relative;
	z-index: 1;
}

body#airconditioner .section-case .sec-ttl-box p {
	color: var(--white);
}

body#airconditioner .section-case .sec-ttl-box h2 {
	color: var(--white);
}

body#airconditioner .section-case .service-item {
	border-radius: 0 10px 10px 0;
	display: flex;
	overflow: hidden;
}

body#airconditioner .section-case .service-item + .service-item {
	margin-top: 30px;
}

body#airconditioner .section-case .service-item .image-box {
	width: 380px;
}

body#airconditioner .section-case .service-item .image-box img {
	height: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}

body#airconditioner .section-case .service-item .text-box {
	background-color: var(--white);
	padding: 45px 50px;
	width: calc(100% - 380px);
}

body#airconditioner .section-case .service-item .text-box .title {
	font-size: 2.6rem;
	font-weight: 700;
}

body#airconditioner .section-case .service-item .text-box .meta-info {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 5px 10px;
	margin-top: 12px;
}

body#airconditioner .section-case .service-item .text-box .meta-info .area {
	background-color: var(--main-color);
	border-radius: 20px;
	color: var(--white);
	font-size: 1.4rem;
	font-weight: 700;
	padding: 1px 13px;
}

body#airconditioner .section-case .service-item .text-box .meta-info .client {
	font-size: 1.4rem;
	font-weight: 700;
}

body#airconditioner .section-case .service-item .explanation-box {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.8;
	margin-top: 15px;
}

@media screen and (max-width: 767px) {
	body#airconditioner .section-case::before {
		height: 185px;
		right: -45px;
		top: -62px;
		width: 250px;
	}
	
	body#airconditioner .section-case::after {
		height: 180px;
		left: -40px;
		bottom: -50px;
		width: 180px;
	}
		
	body#airconditioner .section-case .service-item {
		border-radius: 10px 10px 0 0;
		flex-wrap: wrap-reverse;
	}
	
	body#airconditioner .section-case .service-item .image-box {
		width: 100%;
	}
	
	body#airconditioner .section-case .service-item .text-box {
		background-color: var(--white);
		padding: 20px;
		width: 100%;
	}
	
	body#airconditioner .section-case .service-item .text-box .meta-info {
		align-items: flex-start;
		flex-direction: column;
	}
}



body#airconditioner .section-faq .faq-item {
	border: 1px solid var(--border-color);
	border-radius: 10px;
	overflow: hidden;
}

body#airconditioner .section-faq .faq-item + .faq-item {
	margin-top: 30px;
}

body#airconditioner .section-faq .question {
	align-items: center;
	background-color: #F7FBFF;
	display: flex;
	justify-content: space-between;
	padding: 30px;
	color: var(--white);
	cursor: pointer;
}

body#airconditioner .section-faq .question .question-text {
	display: flex;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
	padding-left: 0;
	text-indent: 0;
	width: calc(100% - 80px);
}

body#airconditioner .section-faq .question .question-text::before {
	color: var(--sub-color);
	content: 'Q';
	font-family: "Poppins", sans-serif;
	font-weight: 400;
	font-size: 3.2rem;
	line-height: 1;
	margin-right: 20px;
}

body#airconditioner .section-faq .question .icon {
	margin-right: 20px;
	position: relative;
}

body#airconditioner .section-faq .question .icon::before {
	background-color: var(--sub-color);
	border-radius: 90px;
	content: '';
	display: block;
	height: 20px;
	transition: rotate .3s;
	width: 2px;
}
body#airconditioner .section-faq .question.active .icon::before {
	rotate: 90deg;
}

body#airconditioner .section-faq .question .icon::after {
	background-color: var(--sub-color);
	border-radius: 90px;
	content: '';
	display: block;
	height: 2px;
	position: absolute;
	left: 50%;
	top: 50%;
	translate: -50% -50%;
	width: 20px;
}

body#airconditioner .section-faq .answer {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease-out;
}

body#airconditioner .section-faq .answer .answer-content {
	display: flex;
	padding: 30px;
}

body#airconditioner .section-faq .answer .answer-content::before {
	color: var(--sub-color);
	content: 'A';
	font-family: "Poppins", sans-serif;
	font-weight: 400;
	font-size: 3.2rem;
	line-height: 1;
	margin-right: 20px;
}

body#airconditioner .section-faq .answer .answer-content p {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.75;
}

body#airconditioner .section-faq .answer .answer-content p a {
	color: #0066cc;
	text-decoration: underline;
}

@media screen and (max-width: 767px) {
	body#airconditioner .section-faq .question {
		padding: 20px;
	}
	
	body#airconditioner .section-faq .answer .answer-content {
		padding: 20px;
	}
	
	body#airconditioner .section-faq .question .question-text {
		font-size: 1,6rem;
		width: calc(100% - 25px);
	}
	
	body#airconditioner .section-faq .question .icon {
		margin-right: 0px;
	}
	
	body#airconditioner .section-faq .answer .answer-content p {
		font-size: 1.4rem;
	}
}

body#airconditioner .section-mail .tel-contents {
	align-items: center;
	background-color: #F4FAFF;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 40px 50px 30px;
}

body#airconditioner .section-mail .tel-contents .text-box {
	border-right: 1px solid #E7E7E7;
	max-width: 326px;
	width: 100%;
}

body#airconditioner .section-mail .tel-contents .text-box h3 {
	font-size: 2.2rem;
	font-weight: 700;
}

body#airconditioner .section-mail .tel-contents .text-box p {
	font-size: 1.6rem;
	font-weight: 400;
}

body#airconditioner .section-mail .tel-contents .wrap-tel .tel {
	align-items: baseline;
	color: var(--main-color);
	display: flex;
	font-size: 5rem;
	font-weight: 600;
	line-height: 1.5;
	width: 100%;
}

body#airconditioner .section-mail .tel-contents .wrap-tel span {
	color: var(--main-color);
	font-size: 3.4rem;
	margin-right: 5px;
}

body#airconditioner .section-mail .tel-contents .wrap-tel p {
	font-size: 1.4rem;
	font-weight: 400;
	text-align: right;
}

@media screen and (max-width: 895px) {
	body#airconditioner .section-mail .tel-contents {
		justify-content: center;
	}
		
	body#airconditioner .section-mail .tel-contents .text-box {
		border-bottom: 1px solid #E7E7E7;
		border-right: none;
		max-width: unset;
		padding-bottom: 10px;
		text-align: center;
	}
	
	body#airconditioner .section-mail .tel-contents .wrap-tel .tel {
		
	}
}

@media screen and (max-width: 767px) {
	body#airconditioner .section-mail .tel-contents {
		padding: 30px 20px;
		row-gap: 10px;
	}
	
	body#airconditioner .section-mail .tel-contents .wrap-tel .tel {
		font-size: 3rem;
	}

	body#airconditioner .section-mail .tel-contents .wrap-tel span {
		font-size: 1.8rem;
	}
}

body#airconditioner .section-mail .lp-mail-form .form-title {
	font-size: 3.8rem;
	font-weight: 700;
	margin-inline: auto;
	width: fit-content;
}

@media screen and (max-width: 767px) {
	body#airconditioner .section-mail .lp-mail-form .form-title {
		font-size: 2.6rem;
	}
}

body#thanks .content-box {
	margin-top: 0;
}
