.w-beforeFooter {
	margin:6em auto 3em;
	overflow:hidden
}
.c-widget__title.-footer:before {
	background-color:currentcolor!important
}
.l-footer {
	background-color:var(--color_footer_bg);
	color:var(--color_footer_text);
	position:relative;
	z-index:0
}
.l-footer a, .l-footer span {
	color:inherit
}
.l-footer .copyright {
	font-size:12px;
	text-align:center;
	clear:both;
	display:none;
}
.l-footer .copyright a {
	color:var(--color_link)
}
.l-footer__nav {
	color:inherit;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	padding:.5em 0 1em
}
.l-footer__nav a {
	color:inherit;
	display:block;
	font-size:3vw;
	padding:.25em .5em;
	text-decoration:none
}
.l-footer__nav a:hover {
	text-decoration:underline
}
.l-footer__foot, .l-footer__widgetArea {
	padding-bottom:1em;
	padding-top:1em
}
.p-indexModal {
	padding:80px 16px
}
.p-indexModal__inner {
	background:#fdfdfd;
	border-radius:var(--swl-radius--4, 0);
	color:#333;
	height:100%;
	margin:-1em auto 0!important;
	max-width:800px;
	padding:2em 1.5em;
	position:relative;
	-webkit-transform:translateY(16px);
	transform:translateY(16px);
	transition:-webkit-transform .5s;
	transition:transform .5s;
	transition:transform .5s, -webkit-transform .5s;
	z-index:1
}
.is-opened>.p-indexModal__inner {
	-webkit-transform:translateY(0);
	transform:translateY(0)
}
.p-searchModal__inner {
	background:hsla(0,0%,100%,.1);
	left:50%;
	max-width:600px;
	padding:1em;
	position:absolute;
	top:calc(50% + 16px);
	-webkit-transform:translateX(-50%) translateY(-50%);
	transform:translateX(-50%) translateY(-50%);
	transition:top .5s;
	width:96%;
	z-index:1
}
.is-opened>.p-searchModal__inner {
	top:50%
}
.p-searchModal__inner .c-searchForm {
	box-shadow:0 0 4px hsla(0,0%,100%,.2)
}
.p-searchModal__inner .s {
	font-size:16px
}
@media (min-width:960px) {
.w-footer {
	display:flex;
	justify-content:space-between
}
.w-footer__box {
	flex:1;
	padding:1em
}
}
@media not all and (min-width:960px) {
.w-footer__box {
	padding:1em 0
}
.w-footer__box+.w-footer__box {
	margin-top:1em
}
.l-footer__inner {
padding-bottom:calc(env(safe-area-inset-bottom)*.5)
}
}
@media (min-width:600px) {
.l-footer__nav a {
	border-right:1px solid;
	font-size:13px;
	padding:0 .75em
}
.l-footer__nav li:first-child a {
	border-left:1px solid
}
.p-indexModal__inner {
	padding:2em
}
}
