@charset "UTF-8";

/* ==================================================
   第2-D段階：トップページ最終調整
================================================== */

.index-page .home-quick-cta {
	width: calc(100% - 64px);
	max-width: 960px;
	margin: 0 auto 56px;
	padding: 28px 32px;
	background: #f4faf5;
	border: 1px solid #cfe2d3;
	border-radius: 10px;
	box-shadow: 0 6px 18px rgba(20, 91, 45, 0.06);
}

.index-page .home-phone {
	color: #126b2d !important;
	font-size: 26px;
}

.index-page .home-quick-buttons {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 12px;
}

.index-page .home-quick-cta .home-primary-btn,
.index-page .home-quick-cta .home-secondary-btn {
	display: inline-flex;
	min-height: 52px;
	margin: 0;
	padding: 12px 24px;
	align-items: center;
	justify-content: center;
	border-radius: 6px;
	box-shadow: none;
	font-size: 16px;
	line-height: 1.5;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.index-page .home-quick-cta .home-primary-btn {
	background: #178637;
	border: 1px solid #178637;
	color: #ffffff !important;
}

.index-page .home-quick-cta .home-primary-btn:hover,
.index-page .home-quick-cta .home-primary-btn:focus {
	background: #106d2b;
	border-color: #106d2b;
	color: #ffffff !important;
	text-decoration: none;
}

.index-page .home-quick-cta .home-secondary-btn {
	background: #ffffff;
	border: 1px solid #178637;
	color: #178637 !important;
}

.index-page .home-quick-cta .home-secondary-btn:hover,
.index-page .home-quick-cta .home-secondary-btn:focus {
	background: #edf7ef;
	border-color: #106d2b;
	color: #106d2b !important;
	text-decoration: none;
}

.index-page .cta-label-lead,
.index-page .cta-label-tail {
	display: inline;
}

@media screen and (min-width: 769px) and (max-width: 900px) {
	.index-page .home-quick-cta {
		width: auto;
		margin-right: 32px;
		margin-left: 32px;
	}
}

@media screen and (max-width: 768px) {
	.index-page .home-quick-cta {
		width: auto;
		margin-right: 16px;
		margin-bottom: 48px;
		margin-left: 16px;
		padding: 24px 20px;
	}

	.index-page .home-phone {
		display: block;
		margin: 6px auto 0;
	}
}

@media screen and (max-width: 480px) {
	.index-page .home-quick-cta .home-quick-buttons {
		max-width: 360px;
		margin-right: auto;
		margin-left: auto;
		flex-direction: column;
	}

	.index-page .home-quick-cta .home-primary-btn,
	.index-page .home-quick-cta .home-secondary-btn {
		width: 100%;
	}
}

@media screen and (max-width: 359px) {
	.index-page .home-quick-cta .home-primary-btn,
	.index-page .cta-area .contact-btn {
		flex-direction: column;
	}
}

/* 独立ロゴ画像とHOMEページのナビ現在地表示 */
.index-page #header h1 a {
	width: auto;
	height: auto;
	background: none;
	text-indent: 0;
	overflow: visible;
}

.index-page #header h1 img {
	display: block;
	width: 220px;
	margin-top: -4.375px;
	margin-bottom: -4.375px;
	max-width: 100%;
	height: auto;
}

body.index-page #wrapper #navigation #navi4 a {
	background: #ffffff !important;
	border-bottom-color: #d8e6da;
	color: #333333 !important;
}

body.index-page #wrapper #navigation #navi4 a:hover,
body.index-page #wrapper #navigation #navi4 a:focus {
	background: #f1f8f2 !important;
	border-bottom-color: #d8e6da;
	color: #178637 !important;
}

@media screen and (max-width: 1023px) {
	.index-page #header h1 img {
		width: 160px;
		margin-top: 0;
		margin-bottom: 0;
	}
}

@media screen and (max-width: 340px) {
	.index-page #header h1 img {
		width: 150px;
	}
}