@charset "utf-8";
 footer {
background: #002040;
color: #D1D5DC;
border-top: 1px solid rgba(207, 255, 4, 0.2);
padding: 0;
font-family: Helvetica, 'Helvetica Neue', Arial, 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
} footer,
footer * {
font-feature-settings: normal;
letter-spacing: normal;
}
footer .footer__wrap {
max-width: 1280px;
margin: 0 auto;
padding: 48px 16px;
} footer .footer__grid {
display: grid;
grid-template-columns: 1fr;
gap: 32px;
} footer .footer__logo {
margin-bottom: 24px;
}
footer .footer__logo a {
display: inline-block;
background: none;
padding: 0;
}
footer .footer__logo img {
height: 80px;
width: auto !important;
object-fit: contain;
}
footer .footer__address-label {
color: #fff;
font-size: 18px;
font-weight: 700;
margin-bottom: 8px;
}
footer .footer__address p {
color: #99a1af;
font-size: 15px;
line-height: 1.6;
margin: 0;
text-align: left;
} footer .footer__cta {
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 12px 28px;
height: 64px;
background: transparent;
border: 2px solid #CCFF00;
color: #CCFF00;
border-radius: 10px;
text-decoration: none;
transition: background-color 0.3s ease, color 0.3s ease;
cursor: pointer;
}
footer .footer__cta:hover {
background: #CCFF00;
color: #1A1A1A;
}
footer .footer__cta .cta__primary {
font-size: 20px;
font-weight: 700;
line-height: 1.25;
color: inherit;
}
footer .footer__cta .cta__secondary {
font-size: 14px;
line-height: 1.25;
color: inherit;
}
footer .footer__tel-mail {
margin-top: 24px;
display: flex;
flex-direction: column;
gap: 8px;
}
footer .footer__tel,
footer .footer__mail {
display: flex;
align-items: center;
gap: 10px;
color: #99a1af;
text-decoration: none;
font-size: 16px;
transition: color 0.3s ease;
pointer-events: auto;
cursor: pointer;
}
footer .footer__tel:hover,
footer .footer__mail:hover {
color: #CFFF04;
}
footer .footer__tel img,
footer .footer__mail img {
width: 20px !important;
height: 20px;
flex-shrink: 0;
} footer .footer__links ul,
footer .footer__links-extra ul {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 20px;
}
footer .footer__links li,
footer .footer__links-extra li {
list-style: none;
}
footer .footer__links a,
footer .footer__links-extra a {
display: block;
text-decoration: none;
color: #fff;
transition: color 0.3s ease;
}
footer .footer__links a:hover,
footer .footer__links-extra a:hover {
color: #CFFF04;
}
footer .footer__links .nav__en,
footer .footer__links-extra .nav__en {
display: block;
color: #fff;
font-size: 20px;
font-weight: 700;
line-height: 1.25;
transition: color 0.3s ease;
}
footer .footer__links .nav__jp,
footer .footer__links-extra .nav__jp {
display: block;
color: #99a1af;
font-size: 14px;
line-height: 1.25;
transition: color 0.3s ease;
}
footer .footer__links a:hover .nav__en,
footer .footer__links-extra a:hover .nav__en,
footer .footer__links a:hover .nav__jp,
footer .footer__links-extra a:hover .nav__jp {
color: #CFFF04;
} footer .footer__sns {
margin-top: 24px;
}
footer .footer__sns-label .nav__en {
color: #fff;
font-size: 18px;
font-weight: 700;
line-height: 1.25;
}
footer .footer__sns-label .nav__jp {
color: #99a1af;
font-size: 14px;
line-height: 1.25;
}
footer .footer__sns-icons {
display: flex;
gap: 10px;
margin-top: 10px;
}
footer .footer__sns-icons a {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border-radius: 4px;
overflow: hidden;
transition: opacity 0.3s ease;
}
footer .footer__sns-icons a:hover {
opacity: 0.8;
}
footer .footer__sns-icons img {
width: 40px !important;
height: 40px;
object-fit: cover;
} footer .footer__copyright {
margin-top: 32px;
padding-top: 24px;
border-top: 1px solid rgba(204, 255, 0, 0.2);
text-align: center;
}
footer .footer__copyright p {
color: #99a1af;
font-size: 14px;
margin: 0;
text-align: center;
} @media (min-width: 768px) {
footer .footer__wrap {
padding: 48px 24px;
}
footer .footer__grid {
grid-template-columns: repeat(2, 1fr);
gap: 40px;
}
} @media (min-width: 1024px) {
footer .footer__wrap {
padding: 56px 64px;
}
footer .footer__grid {
grid-template-columns: auto auto auto auto;
justify-content: space-between;
gap: 40px;
}
} @media print {
footer,
#pageTop {
display: none;
}
}