/* --------------------------------------------------------
* footer
* -------------------------------------------------------*/
:root {
	--space-xl: 120px;
	--space-l: 80px;
	--space-m: 60px;
	--space-s: 40px;
	--space-xs: 15px;
	--space-xxs: 10px;
}

@media (max-width: 1023px) {
	:root {
		--space-xl: 60px;
		--space-l: 40px;
		--space-m: 30px;
		--space-s: 25px;
		--space-xs: 20px;
		--space-xxs: 15px;
	}
}
.l-footer {
	display: block;
	height: auto;
	background-color: var(--color-theme);
	color: #fff;
	padding: var(--space-xl) 0 var(--space-m);
	position: relative;
	overflow: hidden;
}
@media (max-width: 1023px) {
	.l-footer {
		padding-bottom: 150px;
	}
}
.l-footer a {
	color: #fff;
	text-decoration: none;
}
.l-footer a:hover {
	color: #fff;
	text-decoration: underline;
}
.l-footer__inner {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-inline: 20px;
}
@media (min-width: 768px), print {
	.l-footer__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media (max-width: 1023px) {
	.l-footer__inner {
		padding: 0;
	}
}
.l-footer__rows {
	display: flex;
	justify-content: space-between;
}
@media (max-width: 1023px) {
	.l-footer__rows {
		flex-direction: column;
	}
}
.l-footer__logo {
	width: 373px;
}
@media (max-width: 1023px) {
	.l-footer__logo {
		width: 248px;
		margin: 0 auto var(--space-xl);
	}
}
@media (max-width: 1023px) {
	.l-footer__copyright {
		padding-inline: 20px;
	}
}
.l-footer__copyright-notes {
	margin-top: -46px;
	font-size: 1.3rem;
}
@media (max-width: 1023px) {
	.l-footer__copyright-notes {
		margin-top: var(--space-m);
	}
}
.l-footer__copyright-copy {
	margin-top: var(--space-m);
	font-size: 1rem;
}
.l-footer__pagetop {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
	width: 700px;
	height: 150px;
	padding: 66px 40px 0 0;
	text-align: right;
}
.l-footer__pagetop::after {
	content: "";
	width: 100%;
	height: 100%;
	background: #4471A8;
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.l-footer__pagetop-btn {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-left: auto;
	transition: 0.3s;
}
.l-footer__pagetop-btn p {
	font-size: 1.7rem;
	font-weight: 700;
	color: #fff;
}
.l-footer__pagetop-btn span {
	width: 40px;
	height: 26px;
	background: #EDF0FA;
	border: 1px solid #EDF0FA;
	border-radius: 14px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}
.l-footer__pagetop-btn span::after {
	content: "";
	background: url(../images/common/icon_08-arrow2-t_b.svg) center center/contain no-repeat;
	width: 14px;
	height: 14px;
	position: absolute;
	top: calc(50% - 7px);
	left: calc(50% - 7px);
}
.l-footer__pagetop-btn:hover span {
	background: transparent;
	border: 1px solid #fff;
}
.l-footer__pagetop-btn:hover span::after {
	background-image: url(../images/common/icon_08-arrow2-t.svg);
}

@media (min-width: 1024px) {
	.l-fnav {
		display: flex;
		gap: 90px;
	}
	.l-fnav__main {
		display: flex;
		align-items: center;
		gap: 10px;
		font-weight: 500;
		margin-bottom: 20px;
	}
	.l-fnav__main::after {
		content: "";
		display: block;
		width: 40px;
		height: 26px;
		border-radius: 13px;
		border: 1px solid var(--color-theme);
		background: url(../images/common/icon_05-arrow2-r.svg) center center/14px no-repeat #4471A8;
	}
	.l-fnav__main:hover {
		text-decoration: underline;
	}
	.l-fnav__main:hover::after {
		border: 1px solid #fff;
		background-color: var(--color-theme);
	}
	.l-fnav-list__item {
		font-size: 1.3rem;
		line-height: var(--line-height-s);
	}
	.l-fnav-list__item:not(:last-child) {
		margin-bottom: var(--space-xs);
	}
	.l-fnav-list__item > ul {
		border-left: 1px solid #fff;
	}
	.l-fnav-list__item-sub {
		margin-top: var(--space-xs);
		padding-left: 1em;
	}
	.l-fnav-list__item--top {
		display: none;
	}
}
@media (max-width: 1023px) {
	.l-fnav {
		border-bottom: 1px solid #4471A8;
	}
	.l-fnav a {
		color: #fff;
		text-decoration: none;
	}
	.l-fnav__main {
		border-top: 1px solid #4471A8;
		padding: 0 20px;
		height: 60px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.l-fnav__main::after {
		content: "";
		display: block;
		width: 40px;
		height: 26px;
		border-radius: 13px;
		border: 1px solid var(--color-theme);
		background: url(../images/common/icon_05-arrow2-r.svg) center center/14px no-repeat #4471A8;
	}
	.l-fnav__main.trigger::after {
		background: url(../images/common/icon_10-plus.svg) center center/14px no-repeat #4471A8;
	}
	.l-fnav__main.trigger.is-active::after {
		background: url(../images/common/icon_11-minus.svg) center center/14px no-repeat #4471A8;
	}
	.l-fnav__main:hover {
		text-decoration: underline;
	}
	.l-fnav__main:hover::after {
		border: 1px solid #fff;
		background-color: var(--color-theme);
	}
	.l-fnav-list {
		background: #4471A8;
		padding: var(--space-s) 20px;
	}
	.l-fnav-list__item:not(:last-child) {
		margin-bottom: var(--space-xs);
	}
	.l-fnav-list__item > ul {
		border-left: 1px solid #fff;
	}
	.l-fnav-list__item-sub {
		margin-top: var(--space-xs);
		padding-left: 1em;
	}
}
/*# sourceMappingURL=footer.css.map */
