@charset "UTF-8";

.footer_cta {
	background-image: repeating-linear-gradient(135deg, #ffffff, #ffffff 3px, #e4f6f5 3px, #e4f6f5 6px);
}


#menu-footer_top,
#menu-footer_bottom {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
}

#menu-footer_top li + li,
#menu-footer_bottom li + li {
	margin-top: 0;
}

#menu-footer_top li a,
#menu-footer_bottom li a {
	padding: 0 1em;
}

.l-footer-widget-area,
.c-copyright--inverse {
	background-color: var(--accent-color);
	color: #fff;
}

.l-footer-widget-area .c-row > .c-row__col {
	margin-bottom: calc(var(--_gap) * .25);
}

.footer_rststem {
	background: url(../img/bg_footer.jpg) no-repeat center center;
	background-size: cover;
}

.footer_rststem_inner {
	--_container-margin: var(--_global--container-margin);
	--_container-margin-right: calc(var(--_container-margin) + env(safe-area-inset-right));
	--_container-margin-left: calc(var(--_container-margin) + env(safe-area-inset-left));
	--_container-margin-right: calc(var(--_container-margin) + env(safe-area-inset-right));
	--_container-margin-left: calc(var(--_container-margin) + env(safe-area-inset-left));
	padding-left: var(--_container-margin-left);
	padding-right: var(--_container-margin-right);
}

.footer_rststem_inner-news {
	background-color: rgba(255, 255, 255, .7);
	padding: calc(var(--_padding1) * .75) var(--_padding1);

}

.footer_rststem_inner-news h3:not(span) {
	font-family: var(--font-montserrat);
	font-size: 1.375rem;
}

.footer_rststem_inner-news h3 span {
	font-size: .875rem;
}

.footer_rststem_inner-news_head {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.footer_info-position {
	display: inline-block;
	background-color: var(--accent-color);
	color: #fff;
	font-size: .75rem;
	padding: 2px 1em;
}

.footer_info-license {
	margin-top: 1em;
}

.footer_info-company_name {
	font-size: 1.375rem;
}

.footer_info-license,
.footer-news {
	list-style: none;
	padding: 0;
	margin-top: .75rem;
}

.footer_info-license li {
	font-size: .875rem;
	display: flex;
	gap: 4px;
	align-items: center;
}

.footer_info-license li::before {
	content: "◯";
	font-size: .5rem;
	margin-top: 2px;
}

.footer_info-phone :not(span) {
	font-size: 1.3125rem;
	font-weight: bold;
}

.footer-news li a {
	display: block;
	text-decoration: none;
	color: inherit;
	padding: calc( var(--_padding1) * .25 ) calc( var(--_padding1) * .5 );
	transition: var(--hover_anime);
}

.footer-news li + li {
	border-top: 1px solid #ccc;
}

.footer-news .footer-news-date {
	font-size: .875rem;
}

a.cta_button span {
	display: flex;
	align-items: center;
	justify-content: center;
}

a.cta_button span::before {
	content: "";
	display: inline-block;
	margin-right: .25em;
	width: 1.125em;
	height: 1.125em;
	background-size: contain;
	background-repeat: no-repeat;
}

a.cta-mail span::before {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20fill%3D%22white%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M2.01%2021L23%2012%202.01%203%202%2010l15%202-15%202z%22%2F%3E%3C%2Fsvg%3E');
}

a.cta-phone span::before {
	background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJhIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA5NiA5NiI+PGRlZnM+PHN0eWxlPi5ie2ZpbGw6I2ZmZjt9PC9zdHlsZT48L2RlZnM+PHBhdGggY2xhc3M9ImIiIGQ9Ik0zNy43LDI5Ljc2Yy41OC41NCwxLjUsMi40Ni4xNCw0LjUtMS4zNiwyLjA1LTMuNTUsNS40Ni0zLjU1LDcuOTFzNS4yMyw4LjU1LDcuMDksMTAuNTFjMi44NywzLDcuNSw3LjIzLDkuODIsOC40NiwyLjMyLDEuMjMsNC43OC41NSw2LjQxLS4yNywxLjY0LS44Miw0LjA5LTMuNDEsNy41LTIuMzIsMy40MSwxLjA5LDEyLjk2LDguMDUsMTMuOTIsOC43My45Ni42OCwxLjUsMywuMTQsNS43My0xLjM2LDIuNzMtMy45Niw4LjE5LTEzLjIzLDcuMDktOS4yOC0xLjA5LTI3LjAxLTE0LjA1LTM0LjM4LTIyLjY1LTcuMzctOC42LTE1LjE0LTE5LjkyLTE1LjU1LTMwLjI5LS4xOS00Ljg1LDIuNjktOC42LDUuNDYtMTAuMSwzLjU1LTEuOTEsNi40NC0xLjQyLDcuMDktLjU1LDEuMjMsMS42NCw2Ljk2LDExLjE5LDkuMTQsMTMuMjNaIi8+PC9zdmc+");
}

@media ( min-width: 1024px ) {
	
}

@media ( min-width: 769px ) and ( max-width: 1023px ){

}

@media ( min-width: 769px ) {

	.l-footer--default .l-footer-widget-area {
		padding-bottom: var(--_padding3);
		padding-top: var(--_padding1);
	}

	#menu-footer_top li + li::before,
	#menu-footer_bottom li + li::before {
		content: "";
		display: inline-flex;
		width: 1px;
		height: 1rem;
		background-color: #fff;
	}

	#menu-footer_top li,
	#menu-footer_bottom li {
		display: flex;
		align-items: center;
	}

	.footer_rststem_inner {
		display: flex;
		gap: 2em;
		width: 980px;
		margin: 0 auto;
		justify-content: space-between;
	}

	.footer_rststem_inner-info {

	}

	.footer_rststem_inner-news {
		flex: 0 1 540px;
	}

	.cta_buttons {
		display: flex;
		align-items: center;
		justify-content: center;
		gap: 1em;
	}

	.cta_buttons a.cta_button {
		padding: calc(var(--_padding-1) * .5);
		background-color: var(--accent-color);
		color: #fff;
		text-decoration: none;
		border-radius: 6px;
		font-weight: bold;
		font-size: 1.625rem;
		width: 340px;
		text-align: center;
		transition: var(--hover_anime);
	}

	.footer_cta {
		position: relative;
	}

	.cta_1 {
		position: absolute;
		width: 200px;
		height: 200px;
		top: 0;
		left: calc( var(--_container-margin-left) + 40px );
		overflow: hidden;
		border-radius: 50%;
	}

	.cta_1 img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		display: block;
	}

	.cta_2 {
		position: absolute;
		width: 280px;
		height: 225px;
		top: 0;
		right: var(--_container-margin-right);
		overflow: hidden;
	}

	.cta_catch {
		font-size: 1.75rem;
		line-height: 1.5;
	}


}




@media ( max-width: 768px ) {

	.l-footer {
		display: flex;
		flex-direction: column;
	}

	.l-footer .footer_cta {
		order: 1;
	}

	.l-footer .l-footer-widget-area {
		order: 2;
	}

	.l-footer .footer_rststem {
		order: 3;
		padding: 1.5em 0;
	}

	.l-footer .c-copyright {
		order: 4;
	}

	.footer_rststem_inner {
		display: flex;
		flex-direction: column-reverse;
	}

		.footer_cta {
		position: relative;
	}

	.cta_1 {
		display: none;
	}

	.cta_2 {
		display: none;
	}

	.cta_catch {
		font-size: 1.25rem;
		line-height: 1.5;
	}

	.cta_buttons {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: .5em;
	}

	.cta_buttons a.cta_button {
		padding: calc(var(--_padding-1) * .5);
		background-color: var(--accent-color);
		color: #fff;
		text-decoration: none;
		border-radius: 6px;
		font-weight: bold;
		font-size: 1.25rem;
		width: 340px;
		text-align: center;
		transition: var(--hover_anime);
	}

	.l-footer--default .l-footer-widget-area {
		padding-top: 2em;
		padding-bottom: 2em;
	}

	.l-footer .l-footer-widget-area .c-container .c-row {
		display: flex;
		gap: 1em;
		flex-wrap: nowrap !important;
		margin-bottom: 0;
	}

	.l-footer .l-footer-widget-area .c-container .c-row__col {
		flex: 0 0 50% !important;
		max-width: 50%;
		margin-bottom: 0;
	}

	#menu-footer_top,
	#menu-footer_bottom {
		flex-direction: column;
		align-items: flex-start;
	}

	#menu-footer_top li a,
	#menu-footer_bottom li a {
		font-size: .875rem;
		padding: 0;
	}
	
	.footer_rststem_inner-info {
		margin-top: 1.5em;
	}

	.footer-news li a {
		padding: calc(var(--_padding1) * .25) 0;
	}

	.footer_rststem_inner-news {
		box-shadow: 0 0 5px #00000055;
	}

	.footer_rststem_inner-news h3:not(span) {
		font-size: 1.75rem;
	}

}


@media (any-hover: hover) {
	.footer-news li a:hover {
		background-color: rgba(238, 238, 238, .7);
	}
	.cta_buttons a.cta_button:hover {
		filter: brightness(.8)
	}
}



img.slide-img {
	height: 300px;
	aspect-ratio: 1.5;
	object-fit: cover;
}