/* ========== css/maintenance.css ========== */
/* 一般整備・修理ページ（.mmts-maint スコープ） */

.mmts-maint .mmts-stop-notice {
	margin: -24px auto 0;
	max-width: 920px;
	padding: 0 20px;
	position: relative;
	z-index: 2;
}
.mmts-maint .mmts-stop-notice__inner {
	background: #FFF5F6;
	border: 3px solid var(--mmts-brand);
	padding: 18px 22px;
	box-shadow: 0 8px 24px rgba(28, 31, 36, 0.08);
}
.mmts-maint .mmts-stop-notice__label {
	display: inline-block;
	background: var(--mmts-brand);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	padding: 4px 10px;
	margin-bottom: 10px;
	font-family: "Noto Sans JP", sans-serif;
}
.mmts-maint .mmts-stop-notice__main {
	margin: 0;
	font-size: 17px;
	font-weight: 700;
	color: var(--mmts-brand);
	line-height: 1.6;
	font-family: "Noto Sans JP", sans-serif;
}
.mmts-maint .mmts-stop-notice__sub {
	margin: 8px 0 0;
	font-size: 13px;
	font-weight: 500;
	color: #5C6570;
	line-height: 1.7;
	font-family: "Noto Sans JP", sans-serif;
}

.mmts-maint .mmts-photo-strip {
	margin: 28px 0 0;
	width: 100%;
	overflow: hidden;
	background: #1c1f24;
}
.mmts-maint .mmts-photo-strip figure {
	margin: 0;
}
.mmts-maint .mmts-photo-strip img {
	display: block;
	width: 100%;
	height: clamp(180px, 32vw, 360px);
	object-fit: cover;
	object-position: center;
}

.mmts-maint .mmts-gallery {
	background: #fff;
	padding: 48px 0 40px;
}
.mmts-maint .mmts-gallery__inner {
	margin: 0 auto;
	width: 70%;
	max-width: 760px;
}
.mmts-maint .mmts-gallery h2 {
	margin: 0 auto 16px;
	font-size: 24px;
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
	line-height: 1.5;
}
.mmts-maint .mmts-gallery .h2line {
	margin: 0 0 20px;
	width: 180px;
	height: 2px;
	text-indent: -99999px;
	background: linear-gradient(90deg, #D5D9DE 0%, #D5D9DE 78%, var(--mmts-brand) 78%, var(--mmts-brand) 100%);
}
.mmts-maint .mmts-gallery__lead {
	margin: 0 0 22px;
	font-size: 14px;
	line-height: 1.8;
	color: #5C6570;
	font-family: "Noto Sans JP", sans-serif;
}
.mmts-maint .mmts-gallery__grid {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}
.mmts-maint .mmts-gallery__grid li {
	margin: 0;
	background: #F3F4F6;
	border: 1px solid #D5D9DE;
	overflow: hidden;
}
.mmts-maint .mmts-gallery__grid img {
	display: block;
	width: 100%;
	height: 180px;
	object-fit: cover;
	object-position: center;
}
.mmts-maint .mmts-gallery__grid span {
	display: block;
	padding: 10px 12px 12px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
}

.mmts-maint #introduction {
	margin: 0 auto;
	width: 100%;
	background-color: #FFF;
	padding: 48px 0 40px;
}
.mmts-maint #introduction h2 {
	margin: 0 auto 24px;
	width: 70%;
	max-width: 720px;
	font-size: 26px;
	text-align: left;
	line-height: 1.7;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	color: #2A2E33;
}
.mmts-maint #introduction .h2line,
.mmts-maint #sec01title .h2line,
.mmts-maint #sec01title05 .h2line {
	margin: 0 auto 36px;
	width: 180px;
	height: 2px;
	text-indent: -99999px;
	background: linear-gradient(90deg, #D5D9DE 0%, #D5D9DE 78%, var(--mmts-brand) 78%, var(--mmts-brand) 100%);
}
.mmts-maint #introduction .cont {
	margin: 0 auto;
	width: 70%;
	max-width: 760px;
}
.mmts-maint #introduction .cont > p {
	margin: 0 auto 28px;
	width: 100%;
	font-size: 15px;
	line-height: 1.85;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 500;
	color: #5C6570;
}
.mmts-maint ul.mmts-points {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 16px;
	list-style: none;
}
.mmts-maint ul.mmts-points li {
	flex: 1 1 140px;
	text-align: center;
	max-width: 190px;
}
.mmts-maint ul.mmts-points li img {
	display: block;
	margin: 0 auto 10px;
	width: 100%;
	max-width: 160px;
	height: auto;
}
.mmts-maint ul.mmts-points li span {
	display: block;
	font-size: 13px;
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
	line-height: 1.5;
}

.mmts-maint #section01 {
	background: #F3F4F6;
	padding: 48px 0 24px;
}
.mmts-maint #sec01title,
.mmts-maint #sec01title05 {
	margin: 0 auto 28px;
	width: 70%;
	max-width: 760px;
}
.mmts-maint #sec01title h2,
.mmts-maint #sec01title05 h2 {
	margin: 0 auto 16px;
	font-size: 24px;
	text-align: left;
	line-height: 1.5;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	color: #2A2E33;
}
.mmts-maint .service-area {
	margin: 0 auto 28px;
	width: 70%;
	max-width: 760px;
	display: flex !important;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px;
	align-items: center;
	float: none !important;
	opacity: 1 !important;
	transform: none !important;
}
.mmts-maint .service-area .img,
.mmts-maint .service-area .img.flipLeftTrigger {
	flex: 0 1 46%;
	margin: 0;
	opacity: 1 !important;
	transform: none !important;
}
.mmts-maint .service-area .content,
.mmts-maint .service-area .content.flipLeftTrigger {
	flex: 0 1 48%;
	opacity: 1 !important;
	transform: none !important;
}
.mmts-maint .service-area h3 {
	margin: 0 0 10px;
	font-size: 18px;
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
	line-height: 1.4;
}
.mmts-maint .service-area p {
	margin: 0;
	font-size: 14px;
	line-height: 1.85;
	color: #5C6570;
	font-family: "Noto Sans JP", sans-serif;
}

.mmts-maint #section02 {
	background: #fff;
	padding: 48px 0;
}
.mmts-maint .mmts-cat-lead {
	margin: 0 auto 24px;
	width: 70%;
	max-width: 760px;
}
.mmts-maint .mmts-cat-lead p {
	margin: 0;
	font-size: 14px;
	line-height: 1.85;
	color: #5C6570;
	font-family: "Noto Sans JP", sans-serif;
}
.mmts-maint .mmts-rate-banner {
	margin: 0 auto 24px;
	width: 70%;
	max-width: 760px;
	border: 2px solid var(--mmts-brand);
	background: #FFF5F6;
	padding: 0;
	text-align: center;
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	overflow: hidden;
}
.mmts-maint .mmts-rate-banner__photo {
	margin: 0;
	min-height: 180px;
	background: #1c1f24;
}
.mmts-maint .mmts-rate-banner__photo img {
	display: block;
	width: 100%;
	height: 180px;
	object-fit: cover;
	object-position: center;
}
.mmts-maint .mmts-rate-banner__body {
	padding: 20px 18px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.mmts-maint .mmts-rate-banner__label {
	margin: 0 0 6px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.08em;
	color: var(--mmts-brand);
	font-family: "Noto Sans JP", sans-serif;
}
.mmts-maint .mmts-rate-banner__price {
	margin: 0;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
	line-height: 1.3;
}
.mmts-maint .mmts-rate-banner__price .num {
	font-size: 36px;
	font-weight: 700;
	color: var(--mmts-brand);
	letter-spacing: 0.02em;
}
.mmts-maint .mmts-rate-banner__price .unit {
	display: inline-block;
	margin-left: 6px;
	font-size: 15px;
	font-weight: 700;
}
.mmts-maint .mmts-rate-banner__note {
	margin: 8px 0 0;
	font-size: 12px;
	color: #5C6570;
	font-family: "Noto Sans JP", sans-serif;
}

.mmts-maint .mmts-menu-price {
	margin: 0 auto;
	width: 70%;
	max-width: 760px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 14px;
}
.mmts-maint .mmts-menu-block {
	background: #F3F4F6;
	border: 1px solid #D5D9DE;
	padding: 18px;
}
.mmts-maint .mmts-menu-block h3 {
	margin: 0 0 10px;
	font-size: 15px;
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--mmts-brand);
}
.mmts-maint .mmts-menu-block ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.mmts-maint .mmts-menu-block li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
	padding: 8px 0;
	border-bottom: 1px dashed #D5D9DE;
	font-size: 13px;
	line-height: 1.5;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
}
.mmts-maint .mmts-menu-block li span:last-child {
	flex-shrink: 0;
	font-weight: 700;
	color: var(--mmts-brand);
	white-space: nowrap;
}
.mmts-maint .mmts-price-foot {
	margin: 18px auto 0;
	width: 70%;
	max-width: 760px;
	font-size: 12px;
	line-height: 1.8;
	color: #5C6570;
	font-family: "Noto Sans JP", sans-serif;
}

.mmts-maint #section03 {
	background: #F3F4F6;
	padding: 48px 0;
}

.mmts-maint #case {
	background: #fff;
	padding: 48px 0;
}
.mmts-maint #casestudy {
	margin: 0 auto;
	width: 70%;
	max-width: 760px;
}
.mmts-maint #casestudy dl {
	background: #F3F4F6;
	border: 1px solid #D5D9DE;
	padding: 16px;
	margin: 0 0 16px;
}
.mmts-maint #casestudy dt {
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	margin-bottom: 8px;
}
.mmts-maint #casestudy dd {
	margin: 0 0 6px;
	font-size: 13px;
	line-height: 1.7;
	color: #5C6570;
	font-family: "Noto Sans JP", sans-serif;
}

.mmts-maint .mmts-cta-note {
	background: #1c1f24;
	color: #fff;
	text-align: center;
	padding: 28px 20px;
}
.mmts-maint .mmts-cta-note p {
	margin: 0;
	font-size: 14px;
	line-height: 1.8;
	font-family: "Noto Sans JP", sans-serif;
	opacity: 0.92;
}

.mmts-maint .mmts-page-faq {
	background: #F3F4F6;
	padding: 48px 0;
}
.mmts-maint .mmts-page-faq__inner {
	margin: 0 auto;
	width: 70%;
	max-width: 760px;
}
.mmts-maint .mmts-page-faq h2 {
	margin: 0 0 16px;
	font-size: 24px;
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
}
.mmts-maint .mmts-page-faq .h2line {
	margin: 0 0 24px;
	width: 180px;
	height: 2px;
	text-indent: -99999px;
	background: linear-gradient(90deg, #D5D9DE 0%, #D5D9DE 78%, var(--mmts-brand) 78%, var(--mmts-brand) 100%);
}
.mmts-maint .mmts-page-faq .accordion-area {
	margin: 0;
	padding: 0;
	list-style: none;
}
.mmts-maint .mmts-page-faq .accordion-area > li {
	margin: 0 0 10px;
	background: #fff;
	border: 1px solid #D5D9DE;
}
.mmts-maint .mmts-page-faq .accordion-area .title {
	margin: 0;
	padding: 14px 16px;
	font-size: 15px;
	font-weight: 700;
	font-family: "Noto Sans JP", sans-serif;
	color: #2A2E33;
	cursor: pointer;
	line-height: 1.5;
}
.mmts-maint .mmts-page-faq .accordion-area .box {
	padding: 0 16px 16px;
}
.mmts-maint .mmts-page-faq .accordion-area .box p {
	margin: 0;
	font-size: 14px;
	line-height: 1.8;
	color: #5C6570;
	font-family: "Noto Sans JP", sans-serif;
}

@media screen and (max-width: 768px) {
	.mmts-maint .mmts-stop-notice {
		margin-top: 16px;
		padding: 0 12px;
	}
	.mmts-maint #introduction h2,
	.mmts-maint #introduction .cont,
	.mmts-maint #sec01title,
	.mmts-maint #sec01title05,
	.mmts-maint .service-area,
	.mmts-maint .mmts-cat-lead,
	.mmts-maint .mmts-rate-banner,
	.mmts-maint .mmts-menu-price,
	.mmts-maint .mmts-price-foot,
	.mmts-maint .mmts-gallery__inner,
	.mmts-maint .mmts-page-faq__inner,
	.mmts-maint #casestudy {
		width: 90%;
	}
	.mmts-maint #introduction h2 { font-size: 20px; }
	.mmts-maint ul.mmts-points { justify-content: center; }
	.mmts-maint .service-area .img,
	.mmts-maint .service-area .content { flex: 1 1 100%; }
	.mmts-maint .mmts-menu-price { grid-template-columns: 1fr; }
	.mmts-maint .mmts-rate-banner { grid-template-columns: 1fr; }
	.mmts-maint .mmts-rate-banner__photo img { height: 160px; min-height: 160px; }
	.mmts-maint .mmts-rate-banner__price .num { font-size: 30px; }
	.mmts-maint .mmts-gallery__grid { grid-template-columns: 1fr; }
	.mmts-maint .mmts-gallery__grid img { height: 200px; }
	.mmts-maint .mmts-photo-strip img { height: 200px; }
}
