@charset "UTF-8";
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; }

html { font-size: 0.52vw; }

body { font-family: "Noto Sans JP", YuGothicM, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; font-size: 1.6rem; -webkit-text-size-adjust: 100%; }

li { list-style: none; }

img { max-width: 100%; vertical-align: bottom; }

video { max-width: 100%; }

a:hover { text-decoration: none; }

button { padding: 0; border: none; background: none; font-family: inherit; font-size: 1.6rem; cursor: pointer; }

input[type="text"], input[type="password"], input[type="tel"], input[type="email"], input[type="submit"], input[type="button"], textarea, select { font-family: inherit; font-size: 1.6rem; }

.only-pc { display: block; }
@media screen and (max-width: 750px) { .only-pc { display: none; } }

.only-sp { display: none; }
@media screen and (max-width: 750px) { .only-sp { display: block; } }

img.only-pc, span.only-pc { display: inline; }
@media screen and (max-width: 750px) { img.only-pc, span.only-pc { display: none; } }
img.only-sp, span.only-sp { display: none; }
@media screen and (max-width: 750px) { img.only-sp, span.only-sp { display: inline; } }

table.only-pc { display: table; }
@media screen and (max-width: 750px) { table.only-pc { display: none; } }
table.only-sp { display: none; }
@media screen and (max-width: 750px) { table.only-sp { display: table; } }

.js-tel { color: #000 !important; text-decoration: none; cursor: default; }

.container { position: relative; width: 100%; aspect-ratio: 16 / 9; overflow: hidden; }

.main { position: relative; height: 100%; }

.footer { z-index: 99999; position: absolute; bottom: 0; left: 0; display: flex; align-items: center; column-gap: 3rem; }
.footer .footer-nav ul { display: flex; column-gap: 0.4rem; }
.footer .footer-nav ul li { width: 21rem; }
.footer .footer-nav ul li:last-child a .ico { margin-bottom: 1rem; }
.footer .footer-nav ul li a { display: flex; align-items: center; justify-content: center; flex-direction: column; text-decoration: none; height: 11rem; background-color: #1B1C80; transition: all .6s; }
.footer .footer-nav ul li a.active, .footer .footer-nav ul li a:hover { background-color: #2C61A6; }
.footer .footer-nav ul li a .ico-about { width: 3.8rem; }
.footer .footer-nav ul li a .ico-innovation { width: 2.9rem; }
.footer .footer-nav ul li a .ico-global { width: 3.8rem; }
.footer .footer-nav ul li a .ico-social { width: 4.8rem; }
.footer .footer-nav ul li a p { font-size: 1.8rem; font-weight: 700; color: #fff; text-align: center; line-height: 1.4; }
.footer .page-ttl { font-size: 4.0rem; font-weight: 700; }

.modal-sec { display: none; position: fixed; top: 0; left: 0; z-index: 99999; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); }
.modal-sec .modal-in { position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; width: 100%; aspect-ratio: 16 / 9; padding: 2rem; overflow-y: auto; }
.modal-sec .modal-con { position: relative; width: 100%; margin: auto; background-color: #fff; border-radius: 2.4rem; }

.ico { display: inline-flex; justify-content: center; align-items: center; width: 1em; line-height: 0; }
.ico::before { width: 100% !important; }

.ico-about::before { content: url("../img/common/ico_about.svg"); }

.ico-social::before { content: url("../img/common/ico_social.svg"); }

.ico-global::before { content: url("../img/common/ico_global.svg"); }

.ico-innovation::before { content: url("../img/common/ico_innovation.svg"); }

.ico-close::before { content: url("../img/common/ico_close.svg"); }

.ico-touch::before { content: url("../img/common/ico_touch.svg"); }

.clearfix { zoom: 1; }
.clearfix::before { content: ""; display: table; }
.clearfix::after { content: ""; display: table; clear: both; }

.w100 { width: 100%; }

.js-anime-fadein { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-fadein.js-anime-on { animation-name: fadeIn; }

@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
.js-anime-slide { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slide.js-anime-on { animation-name: slide; }

@keyframes slide { 0% { opacity: 0; transform: translateY(100px); }
  100% { opacity: 1; transform: translateY(0); } }
.js-anime-slideleft { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slideleft.js-anime-on { animation-name: slideLeft; }

@keyframes slideLeft { 0% { opacity: 0; transform: translateX(-100px); }
  100% { opacity: 1; transform: translateX(0); } }
.js-anime-slideright { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slideright.js-anime-on { animation-name: slideRight; }

@keyframes slideRight { 0% { opacity: 0; transform: translateX(100px); }
  100% { opacity: 1; transform: translateX(0); } }
@media print { .js-anime-fadein, .js-anime-slide, .js-anime-slideleft, .js-anime-slideright { opacity: initial; } }

/*# sourceMappingURL=style.css.map */
