.company-ttl { position: relative; }
.company-ttl .company-ttl-txt { position: absolute; top: 0; left: 0; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; padding: 20px; font-size: 3.0rem; color: #fff; font-weight: 700; line-height: 1.2; text-align: center; }
@media screen and (max-width: 750px) { .company-ttl .company-ttl-txt { padding: 4%; font-size: 1.8rem; } }
.company-ttl .company-ttl-txt span { display: block; font-size: 8.4rem; }
@media screen and (max-width: 750px) { .company-ttl .company-ttl-txt span { font-size: 3.4rem; } }

.company-main { background: url("../img/company/bg_company.png") no-repeat center top; padding-bottom: 100px; }
@media screen and (max-width: 750px) { .company-main { padding-bottom: 60px; } }
.company-main .company-in { position: relative; padding: 140px 0; }
@media screen and (max-width: 750px) { .company-main .company-in { padding: 60px 0 40px; } }
.company-main figure { position: absolute; top: 0; right: 0; width: 56.3333333333%; margin-top: 10%; margin-right: -5.8333333333%; }
@media screen and (max-width: 1300px) { .company-main figure { margin-right: 0; } }
@media screen and (max-width: 960px) { .company-main figure { position: static; width: 100%; margin: 0 auto; } }
.company-main .company-con { width: 47.5%; }
@media screen and (max-width: 1300px) { .company-main .company-con { width: 41.6666666667%; } }
@media screen and (max-width: 960px) { .company-main .company-con { width: 100%; } }
.company-main .company-con .company-heading { margin-bottom: 80px; font-size: 3.0rem; font-weight: 700; color: #fff; }
@media screen and (max-width: 750px) { .company-main .company-con .company-heading { font-size: 2.2rem; } }
.company-main .company-con .company-link { width: 100%; max-width: 550px; display: flex; flex-wrap: wrap; gap: 20px 3.6363636364%; }
@media screen and (max-width: 1300px) { .company-main .company-con .company-link { max-width: 100%; margin-bottom: 60px; } }
.company-main .company-con .company-link li { width: 48.1818181818%; }
.company-main .company-con .company-link li:first-child, .company-main .company-con .company-link li:nth-child(2) { width: 100%; }
.company-main .company-con .company-link li:first-child a, .company-main .company-con .company-link li:nth-child(2) a { height: auto; font-size: 2.6rem; }
@media screen and (max-width: 750px) { .company-main .company-con .company-link li:first-child a, .company-main .company-con .company-link li:nth-child(2) a { background-size: 27px auto; font-size: 2.0rem; } }
.company-main .company-con .company-link li:first-child a .ico-philosophy, .company-main .company-con .company-link li:nth-child(2) a .ico-philosophy { width: 5.1rem; margin-right: 40px; }
.company-main .company-con .company-link li:first-child a .ico-overview, .company-main .company-con .company-link li:nth-child(2) a .ico-overview { width: 3.2rem; margin-left: 10px; margin-right: 50px; }
.company-main .company-con .company-link li._external a { background-image: url("../img/common/ico_link.svg"); background-size: 27px auto; }
@media screen and (max-width: 750px) { .company-main .company-con .company-link li._external a { background-size: 17px auto; } }
.company-main .company-con .company-link li a { display: flex; align-items: center; text-decoration: none; height: 5em; padding: 20px 30px; border: 1px solid #B7B7B7; background: #F2F5FA url("../img/common/ico_arrow_circle_red.svg") no-repeat right 20px center; background-size: 38px auto; font-size: 1.7rem; }
@media screen and (max-width: 750px) { .company-main .company-con .company-link li a { font-size: 1.4rem; background-size: 18px auto; background-position: right 10px center; } }
.company-main .company-txt { overflow: hidden; }
.company-main .company-txt .swiper-wrapper { transition-timing-function: linear; }
.company-main .company-txt .swiper-slide { width: 80.8rem; }
@media screen and (max-width: 750px) { .company-main .company-txt .swiper-slide { width: 40.4rem; } }
.company-main .company-txt .swiper-slide img { width: 100%; max-width: initial; }
.company-main .company-txt._txt01 { margin-bottom: 20px; }
@media screen and (max-width: 750px) { .company-main .company-txt._txt01 { margin-bottom: 10px; } }
.company-main .company-txt._txt01 .swiper-slide { transform: translateX(30rem); }
@media screen and (max-width: 750px) { .company-main .company-txt._txt01 .swiper-slide { transform: translateX(15rem); } }

.company-ttl { margin-bottom: 25px; padding-bottom: 10px; border-bottom: 2px solid #EB534C; font-size: 2.4rem; font-weight: 500; }

._philosophy .philosophy-in { display: grid; grid-template-columns: 65% 1fr; column-gap: 5%; }
@media screen and (max-width: 750px) { ._philosophy .philosophy-in { display: block; } }
._philosophy .philosophy-con { display: flex; flex-direction: column; row-gap: 50px; }
._philosophy .philosophy-box .philosophy-date { margin-bottom: 20px; padding: 1rem 1em; border: 1px solid #D60019; color: #D60019; font-weight: 700; }
._philosophy .philosophy-box .philosophy-txt { display: grid; row-gap: 1.5rem; }
._philosophy .philosophy-box .philosophy-effort { margin-block: 20px; padding: 20px; border-radius: 10px; background-color: #F2F5FA; }
._philosophy .philosophy-box .philosophy-effort ul { margin-top: 1rem; }
._philosophy .philosophy-box .philosophy-fig { display: none; }
@media screen and (max-width: 750px) { ._philosophy .philosophy-box .philosophy-fig { display: flex; justify-content: space-between; margin-top: 2rem; }
  ._philosophy .philosophy-box .philosophy-fig._c { justify-content: center; }
  ._philosophy .philosophy-box .philosophy-fig figure { width: 48%; } }
._philosophy .philosophy-figs { display: grid; row-gap: 30px; }
@media screen and (max-width: 750px) { ._philosophy .philosophy-figs { display: none; } }
._philosophy .philosophy-figs figure { width: 83.3333333333%; }
._philosophy .philosophy-figs figure:nth-child(odd) { margin-left: auto; }

._overview .contents { display: flex; flex-direction: column; row-gap: 50px; }
._overview .overview-in { padding: 30px; border: 1px solid #D0D0D0; border-radius: 10px; }
@media screen and (max-width: 750px) { ._overview .overview-in { padding: 1em; } }
._overview .overview-data { margin-bottom: 40px; }
._overview .overview-data dl { display: flex; padding: 1rem 0 1rem 1em; border-bottom: 1px solid #D0D0D0; }
@media screen and (max-width: 750px) { ._overview .overview-data dl { flex-direction: column; row-gap: 5px; padding-inline: 0; } }
._overview .overview-data dl dt { width: 14em; font-weight: 700; }
@media screen and (max-width: 750px) { ._overview .overview-data dl dt { width: 100%; } }
._overview .overview-data dl dd { flex: 1; }
._overview .overview-data dl dd ul { display: grid; column-gap: 5px; grid-template-columns: 46% 1fr; }
@media screen and (max-width: 960px) { ._overview .overview-data dl dd ul { display: block; } }
._overview .overview-map { position: relative; aspect-ratio: 94 / 45; }
@media screen and (max-width: 750px) { ._overview .overview-map { aspect-ratio: 1 / 1; } }
._overview .overview-map iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
._overview .overview-box { margin-bottom: 40px; }
._overview .overview-box:last-child { margin-bottom: 0; }
._overview .overview-box .cmn-subheading { margin-bottom: 20px; border-left-color: #EB534C; }
._overview .overview-box .cmn-table._v tbody tr th:first-child { width: 12em !important; }
@media screen and (max-width: 750px) { ._overview .overview-box .cmn-table._v tbody tr th:first-child { width: 100% !important; } }

._history .history-in { position: relative; }
._history .history-in::before { content: ''; position: absolute; top: -1px; left: 0; width: 30%; height: 3px; background-color: #8EA5B9; }
@media screen and (max-width: 750px) { ._history .history-in::before { width: 3.5em; } }
._history .history-in::after { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 1px; background-color: #8EA5B9; }
._history .history-box { position: relative; padding: 1rem 0 1.2rem; }
._history .history-box::before { content: ''; position: absolute; bottom: -1px; left: 0; width: 30%; height: 3px; background-color: #8EA5B9; }
@media screen and (max-width: 750px) { ._history .history-box::before { width: 3.5em; } }
._history .history-box::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background-color: #8EA5B9; }
._history .history-box .history-y, ._history .history-box .history-m { width: 30%; padding-right: 4rem; text-align: right; }
@media screen and (max-width: 750px) { ._history .history-box .history-y, ._history .history-box .history-m { padding-right: 0; } }
._history .history-box .history-y span, ._history .history-box .history-m span { font-size: 2rem; font-weight: 700; }
@media screen and (max-width: 750px) { ._history .history-box .history-y { width: 100%; text-align: left; } }
@media screen and (max-width: 750px) { ._history .history-box .history-m { width: 3em; } }
._history .history-box .history-item { display: flex; margin-top: 0.5rem; }
._history .history-box .history-item .history-con { flex: 1; max-width: 620px; padding: 0.4rem 0 0 3rem; }
@media screen and (max-width: 750px) { ._history .history-box .history-item .history-con { padding-left: 1em; } }

/*# sourceMappingURL=company.css.map */
