/*-----------------------------------*\
  FOOTER
\*-----------------------------------*/

footer {
	padding: 60px 0 0;
}

body.trilogy-system footer {
	background: #fff;
}

.footer-main {
	font-size: 1.6rem;
}

.footer-main a {
	color: var(--textColor1);
}

footer ul {
	list-style: none;
}

.fm-logo {
	width: 162px; margin-bottom: 40px;
}

#menu-footer-mobile li {
	line-height: 1.1;
	margin-bottom: 30px;
}

#menu-footer-mobile li:last-child {
	margin-bottom: 40px;
}

.footer-legal {
	border-top: 1px solid rgba(22, 39, 59, 0.2);
	padding: 32px 0 72px;
	font-size: 1.4rem;
	color: rgba(22, 39, 59, 0.4);
}

.footer-legal a {
	color: rgba(22, 39, 59, 0.4);
}

#menu-legal li {
	margin-bottom: 8px;
}

.fl-menu {
	margin-bottom: 20px;
}

.fm-col2 {
	display: none;
}

@media only screen and (min-width: 768px) {

	.fm-mobmenu {
		display: none;
	}

	.footer-main a {
		color: rgba(22, 39, 59, 0.8);
	}

	.fm-logo {
		width: 240px; margin-bottom: 72px;
	}

	.fm-col2 {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
		grid-column-gap: 40px;
		column-gap: 40px;
		padding-bottom: 20px;
	}

	.fm-menu {
		margin-bottom: 80px;
	}

	.fm-menu ul li {
		margin-bottom: 20px;
	}

	.fm-menu ul li:first-child {
		font-weight: 500;
		margin-bottom: 30px;
	}

	.fm-menu ul li:last-child {
		margin-bottom: 0;
	}

	.fl-menu {
		margin-bottom: 0;
	}

}

@media only screen and (min-width: 1120px) {

	.fm-row {
		display: flex;
		justify-content: space-between;
	}

	.fm-col1 {
		width: 35%;
	}

	.fm-col2 {
		width: 65%;
	}

	#menu-legal li {
		display: inline-block;
		margin: 0 30px 0 0;
	}	

}

@media only screen and (min-width: 1440px) {

	.fm-col1 {
		width: 44%;
	}

	.fm-logo {
		width: 296px;
	}

	.fm-col2 {
		width: 56%;
		grid-column-gap: 60px;
		column-gap: 60px;
	}

}