@charset "UTF-8";


.l-footer {
	border: 0;
}


.c-copyright--inverse {
	background-color: #edede8;
	color: inherit;
}


@media ( min-width: 769px ) {
	.l-footer {
		clip-path: inset(
			0 0 0 0 round 0 0 36px 36px 
		);
	}

}



@media ( max-width: 768px ) {

	body {
		padding-bottom: calc(54px + env(safe-area-inset-bottom)) !important;
	}


	/* =========================
		スマホ用 固定フッターナビ
	========================= */
	.sp_fixed_nav {
		background-color: #333;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;

		display: flex;
		justify-content: space-between;
		align-items: center;

		height: calc(54px + env(safe-area-inset-bottom));
		padding-bottom: env(safe-area-inset-bottom);

		z-index: 1000;
		box-shadow: 0 -1px 2px rgb(0 0 0 / 20%);
	}

	/* ナビボタン共通 */
	.sp_fixed_nav a {
		flex: 1;
		display: flex;
		align-items: center;
		justify-content: center;

		color: #fff;
		text-decoration: none;
		font-size: 13px;
		font-feature-settings: "palt";

		min-height: 54px;
	}

	.sp_fixed_nav a img {
		width: 27px;
		height: auto;
	}

	.sp_fixed_nav a.sp_fixed_nav-nail img {
		width: 36px;
		height: auto;
	}

	.sp_fixed_nav a img {
		margin-right: 6px;
	}

	.sp_cta {
		border-top: 2px dotted #ccc;
		padding-top: 1em;
	}

	.sp_cta p {
		text-align: center;
	}

	.arrow {
		margin: 1em auto 0;
		text-align: center;
		animation: fuwafuwa 1s ease-in-out infinite alternate;
	}

	@keyframes fuwafuwa {
		0% {
			transform: translateY(10px); 
		}
		100% {
			transform: translateY(0);
	}

}

.footer_origin {
	text-align: center;
}