/* "footer.css" */

/* ------------------------------ */
/* footer */

footer {
	background-color:			white;
	width:						100%;

	/* 紙面ページでフッターを上に表示するため */
	position:					relative;
	z-index:					1;
}
footer h2, footer h3 {
	font-size:					1rem;
	width:						fit-content;
}


/* 姉妹サイト */
.group_service {
	background-color:			var(--color-primary-100);
	padding: 1.5rem 0;
}
.group_service_sec {
	margin:						0 auto;
	max-width:					80rem;
	width:						100%;
}
@media screen and (min-width:1px) and (max-width:960px) {
	.group_service_sec {
		margin:					1.375rem;
		max-width:				fit-content;
	}
}
.group_service_ttl {
	margin-bottom:				1rem;
}
.group_service_ttl p {
	font-weight:				500;
}
.group_service .free_mark {
	align-items:				center;
	color:						var(--color-success-bold);
	display:					inline-flex;
	font-size:					0.85rem;
	font-weight:				700;
	justify-content:			center;
	margin-left:				0.375rem;
}
.group_service .free_text {
	align-items:				center;
	border:						1px solid var(--color-gray-400);
	border-radius:				0.25rem;
	display:					inline-flex;
	font-size:					0.75rem;
	font-weight:				normal;
	justify-content:			center;
	padding:					0.125rem 0.25rem;
	margin-left:				0.375rem;
}


.group_service_ul {
	display:					grid;
	grid-template-columns:		1fr 1fr 1fr;
	gap:						1rem;
}
@media screen and (min-width:601px) and (max-width:1000px) {
	.group_service_ul {
		grid-template-columns:	1fr 1fr;
	}
}
@media screen and (min-width:1px) and (max-width:600px) {
	.group_service_ul {
		grid-template-columns:	1fr;
	}
}
.group_service_li {
	align-items:				flex-start;
	background-color:			white;
	border:						1px solid var(--color-gray-100);;
	border-radius:				0.5rem;
	display:					flex;
	flex-direction:				column;
	width:						100%;
}
.group_service_li a {
	height:						100%;
	width:						100%;
}
.group_service_li div {
	align-items:				center;
	display:					flex;
	gap:						1rem;
	padding:					1rem;
}
.group_service_li img {
	border:						1px solid var(--color-gray-200);
	height:						3rem;
	width:						3rem;
}
@media screen and (min-width:1px) and (max-width:600px) {
	.group_service_li img {
		height:					2rem;
		width:					2rem;
	}
}
.group_service_li p {
	border-top:					1px solid var(--color-gray-200);
	font-size:					0.875rem;
	padding:					1rem;
	width:						100%;
}
@media screen and (min-width:1px) and (max-width:600px) {
	.group_service_li p {
		font-size:				0.75rem;
	}
}

/* 会社情報 */
.footer_main {
	display:					flex;
	margin:						0 auto;
	max-width:					80rem;
	padding:					2.5rem 0;
	width:						100%;
}
@media screen and (min-width:1px) and (max-width:960px) {
	.footer_main {
		display:				flex;
		flex-direction:			column;
		margin:					1.375rem;
		max-width:				fit-content;
	}
}
.footer_addr {
	flex:						0 0 20rem;
}
@media screen and (min-width:1px) and (max-width:960px) {
	.footer_addr {
		flex:					0 0 100%;
	}
}
.footer_cont {
	display:					flex;
	flex-direction:				column;
	gap:						1.5rem;
	width:						100%;
}
.footer_cont_ul {
	display:					flex;
	flex-wrap:					wrap;
	gap:						0 1rem;
}
.footer_cont_ul button {
	background-color:			transparent;
	border:						none;
	color:						var(--color-text-secondary);
	font-size:					1rem;
	margin:						0;
	line-height:				1;
	padding:					0;
}
.footer_cont_ul a:hover, .footer_cont_ul button:hover {
	text-decoration:			underline;
	transition:					text-decoration 0.2s ease-in-out 0.2s;
}


/* footer */
/* ------------------------------ */
