@charset "utf-8";

.footer {
	background-color:#343434;
}
.footer_inner {
	width:calc(100% - 60px);
	max-width:1100px;
	margin:0 auto;
}
.footer_inner .menu-gmenu-container {
	padding:40px 0;
	border-bottom:3px solid #FFFFFF;
}
.footer_inner .menu-gmenu-container ul {
	width:100%;
	display:inline-flex;
	align-items:flex-start;
	justify-content:center;
	font-size:1.2rem;
	font-weight:600;
}
.footer_inner .menu-gmenu-container ul ul {
	display:none;
}
.footer_inner .menu-gmenu-container li:not(:last-child) {
	margin-right:6%
}
.footer_inner .menu-gmenu-container li a {
	display:grid;
	grid-row-gap:1em;
	transition:.3s;
	white-space:nowrap;
	color:#FFFFFF;
}
.footer_inner .menu-gmenu-container li a:hover {
	color:#a5a5a5;
}
.footer_inner .menu-gmenu-container li a span {
	font-family: 'Bebas Neue', sans-serif;
	font-size:3.6rem;
	letter-spacing:.025em;
	font-weight:400;
}

.footer_info {
	padding:45px 0;
	display:grid;
	grid-template-columns:repeat(3,29%);
	justify-content:space-between;
	border-bottom:1px solid rgba(255,255,255,.5);
}
.footer_info dl {
	position:relative;
}
.footer_info dl:not(:last-child)::after {
	content:'';
	display:block;
	width:1px;
	height:100%;
	background-color:#FFFFFF;
	position:absolute;
	top:0;
	right:calc(-3.5% * (100/29));
}
.footer_info dt {
	font-size:2.0rem;
	line-height:1.4;
	color:#FFFFFF;
	display:grid;
	grid-template-columns:1.25em 1fr;
	align-items:center;
	grid-column-gap:.5em;
	font-weight:500;
	margin-bottom:1em;
}
.footer_info dd {
	font-size:1.4rem;
	line-height:2;
	color:#FFFFFF;
	letter-spacing:.05em;
}
.footer_contact {
	padding:35px 0 60px;
	display:grid;
	grid-template-columns:220px 1fr auto;
	grid-column-gap:30px;
}
.footer_contact .company dt,
.footer_contact .company dd {
	color:#FFFFFF;
	font-size:1.6rem;
	line-height:1.5;
}
.footer_contact .contact dt {
	font-size:1.3rem;
	background-color:#FFFFFF;
	margin-bottom:.66em;
	color:#343434;
	font-weight:600;
	text-align:center;
	line-height:1.8;
	border-radius:1em 2px 2px 2px;
}
.footer_contact .contact dd a {
	font-family: 'Bebas Neue', sans-serif;
	font-size:4.8rem;
	color:#FFFFFF;
	display:grid;
	grid-template-columns:50px 1fr;
	grid-gap:.25em;
	align-items:center;
}
.footer_contact .contact dd a img {
	transform:translateY(-.05em);
}
.footer .copyright {
	display:grid;
	grid-template-columns:auto auto;
	justify-content:space-between;
	align-items:center;
	padding-bottom:50px;
	font-size:1.4rem;
}
.footer .copyright p {
	font-size:inherit;
	color:rgba(255,255,255,.5);
	letter-spacing:.05em;
}
.footer .footer_menu {
	display:grid;
	grid-template-columns:repeat(3,auto);
	grid-gap:1em;
	align-items:center;
	letter-spacing:.05em;
}
.footer .footer_menu::after {
	content:'|';
	color:#ffffff;
	grid-area:1/2/2/3;
}
.footer .footer_menu a {
	color:rgba(255,255,255,.5);
	transition:.3s;
}
.footer .footer_menu a:hover {
	color:#FFFFFF;
}

@media screen and (max-width:940px){
	
	.footer_inner .menu-gmenu-container ul {
		font-size:1.0rem;
	}
	.footer_inner .menu-gmenu-container li:not(:last-child) {
		margin-right:5%
	}
	.footer_inner .menu-gmenu-container li a span {
		font-size:3.2rem;
	}
	.footer_info dt {
		font-size:1.6rem;
		line-height:1.4;
	}
	.footer_info dd {
		font-size:1.3rem;
		line-height:1.8;
	}
	.footer_contact {
		grid-template-columns:220px auto;
		grid-row-gap:30px;
		justify-content:center;
	}
	.footer_contact .contact {
		grid-area:2/1/3/3;
		justify-self:center;
	}

}

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

	.footer_inner {
		width:calc(100% - 40px);
	}
	.footer_inner .menu-gmenu-container {
		border-bottom:2px solid #FFFFFF;
		text-align:center;
	}
	.footer_inner .menu-gmenu-container ul {
		font-size:1.0rem;
		flex-wrap:wrap;
		max-width:350px;
	}
	.footer_inner .menu-gmenu-container li:nth-child(-n + 3) {
		margin-bottom:2em;
	}
	.footer_inner .menu-gmenu-container li:not(:last-child) {
		margin-right:7%
	}
	.footer_inner .menu-gmenu-container li:first-child {
		margin-left:5em;
	}
	.footer_inner .menu-gmenu-container li:nth-child(3) {
		margin-right:5em;
	}
	.footer_inner .menu-gmenu-container li a {
		justify-items:center;
	}
	.footer_inner .menu-gmenu-container li a:hover {		
		color:#FFFFFF;
	}
	.footer_inner .menu-gmenu-container li a span {
		font-size:min(6.67vw,2.5rem);
	}
	
	.footer_info {
		padding:0;
		grid-template-columns:1fr;
		border:none;
	}
	.footer_info dl {
		padding:30px 0;
		border-bottom:1px solid #ffffff;
	}
	.footer_info dl:not(:last-child)::after {
		content:none;
	}
	.footer_info dt {
		font-size:1.5rem;
		grid-template-columns:1.25em auto;
		justify-content:center;
	}
	.footer_info dd {
		font-size:1.2rem;
	}
	.footer_contact {
		grid-template-columns:min(30%,150px) auto;
		grid-column-gap:5%;
		padding:30px 0;
	}
	.footer_contact .company dt,
	.footer_contact .company dd {
		font-size:min(2.93vw,1.1rem);
	}
	.footer_contact .contact dt {
		line-height:1.6;
		font-size:1.2rem;
	}
	.footer_contact .contact dd a {
		font-size:3.6rem;
		grid-template-columns:40px 1fr;
	}
	.footer .copyright {
		grid-template-columns:1fr;
		grid-row-gap:30px;
		font-size:1.2rem;
		padding-bottom:40px;
	}
	.footer .copyright p {
		text-align:center;
	}
	.footer .footer_menu {
		justify-content:center;
		grid-area:1/1/2/2;
	}
	.footer .footer_menu a {
		transition:0s;
	}
	.footer .footer_menu a:hover {
		color:rgba(255,255,255,.5);
	}
	
}