@charset "UTF-8";
/* =====================================
 * 変数設定
 * ================================== */
/* =====================================
 * カラー変数
 * ================================== */
/*

$c-〇〇〇-darker:標準カラーよりやや暗め;
$c-〇〇〇-dark:標準カラーより少し暗め;
$c-〇〇〇:標準カラー;
$c-〇〇〇-lighter:標準カラーより少し薄め;
$c-〇〇〇-light:標準カラーよりやや薄め;

↓

$c-blk-darker:#000;
$c-blk-dark:#111;
$c-blk:#333;
$c-blk-lighter:#555;
$c-blk-light:#777;

*/
/* =====================================
 * メディアクエリ
 * ================================== */
/* =====================================
 * extend用のclassをここに集約
 * ================================== */
.c-hover {
  transition: all 0.2s ease-in-out;
}
@media (min-width: 768px) {
  .c-hover:hover {
    cursor: pointer;
    text-decoration: none !important;
    opacity: 0.84;
  }
}

.c-img {
  aspect-ratio: 16/9;
}
.c-img img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.c-no-img {
  position: relative;
}
.c-no-img::before {
  content: "";
  display: block;
  background-color: #EFF1F5;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -20;
  pointer-events: none;
}
.c-no-img::after {
  content: "NO IMAGE";
  display: block;
  font-weight: 500;
  font-size: 1.5rem;
  text-align: center;
  position: absolute;
  z-index: -10;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 0.24;
}

.c-all-link {
  position: relative;
}
.c-all-link a::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.c-gra {
  background: linear-gradient(45deg, rgba(67, 92, 149, 0.8) 30%, rgba(67, 92, 149, 0.3));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.c-shadow, .p-csr-activities-col3__item, .p-business-col3__item, .p-business-flex__img, .c-cta__list, .c-submenu__img {
  box-shadow: 0.5rem 0.5rem 1.25rem 0.25rem rgba(21, 29, 47, 0.05);
}

.c-shadow-md {
  box-shadow: 0.5rem 0.5rem 1rem 0.5rem rgba(21, 29, 47, 0.05);
}

.c-radius, .p-business-col3__item, .p-sitemap, .c-pager__item[class] > * {
  border-radius: 0.125rem;
}

.c-radius-md {
  border-radius: 0.5rem;
}

/* =====================================
 * 共通パーツ
 * ================================== */
.c-pager__item[class] > * {
  border: none;
}

.c-pager__item[class].-prev > *,
.c-pager__item[class].-next > * {
  background-color: #151D2F;
}
.c-pager__item[class].-prev > *:hover,
.c-pager__item[class].-next > *:hover {
  opacity: 0.6;
}

.c-pager__item[class].-prev > * {
  background-image: url(../img/ico_arr_left_wht.svg);
  background-size: 0.875rem;
}

.c-pager__item[class].-next > * {
  background-image: url(../img/ico_arr_right_wht.svg);
  background-size: 0.875rem;
}

/* =====================================
 * サイトマップ
 * ================================== */
@media (max-width: 767px) {
  .p-sitemap {
    padding: 1.5rem;
  }
}
.p-sitemap__list[class] + .p-sitemap__list[class] {
  margin-top: 1.5rem;
}
@media (max-width: 767px) {
  .p-sitemap__list[class] + .p-sitemap__list[class] {
    margin-top: 1rem;
  }
}
.p-sitemap__list[class] > li + li {
  margin-top: 1.5rem;
}
@media (max-width: 767px) {
  .p-sitemap__list[class] > li + li {
    margin-top: 1rem;
  }
}
.p-sitemap__list[class] > li > a {
  font-weight: 500;
  font-size: 1.25rem;
  color: #151D2F;
  text-decoration: none;
}
.p-sitemap__list[class] > li > a[target=_blank] {
  background-repeat: no-repeat;
  background-size: 1rem auto;
  background-position: right center;
  background-image: url(../img/ico_blank.svg);
  padding-right: 1.25rem;
}
.p-sitemap__list[class] ul {
  padding: 0 0 0 2.5rem;
  margin-top: 0.5rem;
}
@media (max-width: 767px) {
  .p-sitemap__list[class] ul {
    padding: 0 0 0 2rem;
  }
}
.p-sitemap__list[class] ul li {
  position: relative;
}
.p-sitemap__list[class] ul li::before {
  content: "";
  display: block;
  background-color: #151D2F;
  width: 0.5rem;
  height: 1px;
  margin-right: 0.625rem;
  position: absolute;
  top: 50%;
  left: -1rem;
}
.p-sitemap__list[class] ul li a {
  text-decoration: none;
}

/* =====================================
 * サブメニュー
 * ================================== */
@media (min-width: 768px) {
  .c-submenu__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 3.75rem;
  }
}
@media (min-width: 768px) {
  .c-submenu__inner > * {
    flex-basis: calc(33.333% - 2.5rem);
    max-width: calc(33.333% - 2.5rem);
  }
}
.c-submenu__btn {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 150%;
  position: relative;
  width: 100%;
  display: block;
  padding-right: 1.75em;
}
.c-submenu__btn + * {
  margin-top: 1rem;
}
@media (max-width: 767px) {
  .c-submenu__btn + * {
    margin-top: 10px;
  }
}
.c-submenu__btn:before {
  content: "";
  transition: all 0.2s ease-in-out;
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  width: 1.25em;
  height: 100%;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position-y: center, center;
  background-position-x: calc(100% - 2.5em), right;
  background-image: url(../img/ico_arr_right_pri.svg), url(../img/ico_arr_right_pri.svg);
}
@media (min-width: 768px) {
  .c-submenu__btn:hover::before {
    background-position-x: right, calc(100% + 2.5em);
  }
}
.c-submenu__img img {
  width: 100%;
}
.c-submenu__img + * {
  margin-top: 1rem;
}
@media (max-width: 767px) {
  .c-submenu__img + * {
    margin-top: 10px;
  }
}
@media (max-width: 767px) {
  .c-submenu__item + .c-submenu__item {
    margin-top: 2rem;
  }
}
.c-submenu__item a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .c-submenu__item a:hover {
    opacity: 0.6;
    transition: all 0.2s ease-in-out;
  }
  .c-submenu__item a:hover .c-submenu__btn::before {
    background-position-x: right, calc(100% + 2.5em);
  }
}
.c-submenu__item.is-current a {
  pointer-events: none;
  color: #9F9F9F;
}
.c-submenu__item.is-current .c-submenu__img {
  position: relative;
}
.c-submenu__item.is-current .c-submenu__img::before {
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  background-color: rgba(21, 29, 47, 0.6);
}
.c-submenu__item.is-current .c-submenu__btn {
  opacity: 0.6;
}
.c-submenu__item.is-current .c-submenu__btn::before {
  content: none;
}

.c-flex__item img {
  width: 100%;
}

.c-cta__item {
  background-color: #E2E8EE;
}
.c-cta__item:hover {
  opacity: 0.6;
  transition: all 0.2s ease-in-out;
}
.c-cta__item a {
  text-decoration: none;
  position: relative;
  padding: 3.5rem;
  display: block;
}
@media (max-width: 767px) {
  .c-cta__item a {
    padding: 2rem;
  }
}
.c-cta__item a::before {
  content: "";
  display: block;
  right: 3.5rem;
  bottom: 3.5rem;
  width: 1rem;
  height: 1rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../img/ico_arr_right_pri.svg);
  background-size: cover;
  position: absolute;
}
@media (max-width: 767px) {
  .c-cta__item a::before {
    right: 2rem;
    bottom: 2rem;
  }
}
.c-cta__item.-park {
  position: relative;
  background-color: inherit;
}
.c-cta__item.-park::before {
  content: "";
  display: block;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../img/img_cta_park_bg.png);
  background-size: cover;
  position: absolute;
  z-index: -1;
}
.c-cta__item.-park::after {
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(21, 29, 47, 0.8) 0%, rgba(21, 29, 47, 0.8) 100%);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
  z-index: -1;
}
.c-cta__item.-park .c-cta__title,
.c-cta__item.-park .c-cta__desc {
  color: #fff;
}
.c-cta__item.-park a::before {
  background-image: url(../img/ico_arr_right_wht.svg);
}
@media (min-width: 768px) {
  .c-cta__text {
    max-width: 380px;
  }
}
.c-cta__title {
  text-align: center;
  font-size: 1.125rem;
  font-weight: 500;
}
.c-cta__title + * {
  margin-top: 1.5rem;
}
@media (max-width: 767px) {
  .c-cta__title + * {
    margin-top: 14px;
  }
}
.c-cta__logo {
  display: block;
  text-align: center;
}
.c-cta__logo + * {
  margin-top: 1rem;
}
@media (max-width: 767px) {
  .c-cta__logo + * {
    margin-top: 10px;
  }
}
@media (min-width: 768px) {
  .c-cta__list {
    display: flex;
  }
}
@media (min-width: 768px) {
  .c-cta__list > * {
    flex-basis: 50%;
    max-width: 50%;
  }
}
.c-cta__desc {
  text-align: center;
  padding-bottom: 1.75rem;
}
.c-cta__desc + .c-btn {
  margin-top: 2.5rem;
}
@media (max-width: 767px) {
  .c-cta__desc + .c-btn {
    margin-top: 24px;
  }
}

/* =====================================
 * 企業情報
 * ================================== */
.p-company-information {
  padding: 5rem;
  background-color: #151D2F;
}
@media (max-width: 767px) {
  .p-company-information {
    padding: 2rem;
  }
}
.p-company-information__title {
  font-size: 2.25rem;
  font-weight: 500;
  color: #fff;
  line-height: 180%;
  text-align: center;
}
@media (max-width: 767px) {
  .p-company-information__title {
    font-size: 2rem;
  }
}
.p-company-information__title + * {
  margin-top: 3rem;
}
@media (max-width: 767px) {
  .p-company-information__title + * {
    margin-top: 28px;
  }
}
.p-company-information__desc {
  color: #fff;
  line-height: 160%;
}
@media (min-width: 768px) {
  .p-company-information__desc {
    max-width: 731px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* =====================================
 * 事業内容ページ
 * ================================== */
.p-business-flex + * {
  margin-top: 4rem;
}
@media (max-width: 767px) {
  .p-business-flex + * {
    margin-top: 35px;
  }
}
@media (min-width: 768px) {
  .p-business-flex__inner {
    display: flex;
    flex-direction: row-reverse;
    gap: 3.25rem;
  }
}
.p-business-flex__img {
  flex-shrink: 0;
  flex-grow: 0;
}
.p-business-flex__img img {
  width: 100%;
}
@media (max-width: 767px) {
  .p-business-flex__img + * {
    margin-top: 19px;
  }
}

.p-business-flex-footer {
  background-color: #151D2F;
  padding: 3rem;
}
.p-business-flex-footer__text {
  font-size: 1.5rem;
  font-weight: 500;
  color: #fff;
}
@media (max-width: 767px) {
  .p-business-flex-footer__text {
    font-size: 1.25rem;
  }
}
@media (min-width: 768px) {
  .p-business-flex-footer__text {
    text-align: center;
  }
}

@media (min-width: 768px) {
  .p-business-card__inner {
    display: flex;
    justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .p-business-card__img {
    display: block;
    text-align: center;
  }
}
.p-business-card__img + .p-business-card__img {
  position: relative;
}
@media (max-width: 767px) {
  .p-business-card__img + .p-business-card__img {
    margin-top: 5rem;
  }
}
.p-business-card__img + .p-business-card__img::before {
  content: "";
  display: block;
  width: 3rem;
  height: 3rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../img/img_businesscard_arr.png);
  background-size: 100%;
  position: absolute;
}
@media (min-width: 768px) {
  .p-business-card__img + .p-business-card__img::before {
    top: 50%;
    left: -6.5rem;
    transform: translateY(-50%);
  }
}
@media (max-width: 767px) {
  .p-business-card__img + .p-business-card__img::before {
    top: -2.5rem;
    left: 50%;
    transform: rotate(90deg) translateX(-50%);
  }
}

.p-business-bgcard {
  position: relative;
}
.p-business-bgcard__text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
@media (max-width: 767px) {
  .p-business-bgcard__text {
    width: 80%;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .p-business-bgcard__text img {
    max-height: 120px;
  }
}
.p-business-bgcard__bg {
  position: relative;
  display: block;
}
@media (max-width: 767px) {
  .p-business-bgcard__bg img {
    height: 200px;
    object-fit: cover;
  }
}
.p-business-bgcard__bg::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(72deg, rgba(21, 29, 47, 0.8) 11.31%, rgba(67, 92, 149, 0.8) 95.08%, rgba(255, 255, 255, 0.8) 153.9%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

@media (min-width: 768px) {
  .p-business-col3__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 3.5rem 2.5rem;
  }
}
@media (min-width: 768px) {
  .p-business-col3__inner > * {
    flex-basis: calc(33.333% - 1.6666666667rem);
    max-width: calc(33.333% - 1.6666666667rem);
  }
}
.p-business-col3__title {
  color: #151D2F;
  font-size: 1.25rem;
  font-weight: 500;
  text-align: center;
}
.p-business-col3__title + * {
  margin-top: 1.25rem;
}
@media (max-width: 767px) {
  .p-business-col3__title + * {
    margin-top: 12px;
  }
}
.p-business-col3__img img {
  width: 100%;
}
.p-business-col3__img + * {
  margin-top: 1.25rem;
}
@media (max-width: 767px) {
  .p-business-col3__img + * {
    margin-top: 12px;
  }
}
.p-business-col3__item {
  padding: 2rem 2.5rem;
}
@media (max-width: 767px) {
  .p-business-col3__item + .p-business-col3__item {
    margin-top: 2rem;
  }
}

/* =====================================
 * お知らせ
 * ================================== */
.p-post-detail__meta + * {
  margin-top: 1.25rem;
}
.p-post-detail__title {
  font-weight: 500;
  font-size: 2rem;
  color: #151D2F;
}
.p-post-detail__time {
  color: #151D2F;
}

@media (max-width: 767px) {
  .c-cat__list {
    display: flex;
    flex-wrap: wrap;
    margin: -1rem 0 0 -1rem;
  }
}
@media (max-width: 767px) {
  .c-cat__list li {
    margin: 1rem 0 0 1rem;
  }
}
.c-cat__list li > * {
  transition: all 0.2s ease-in-out;
  display: inline-block;
  background-position: right center;
  background-position-x: calc(100% - 1rem);
  padding-left: 1.375rem;
}
.c-cat__list li > *:hover {
  text-decoration: none;
  color: #151D2F;
}
.c-cat__list li a {
  position: relative;
  color: #9F9F9F;
  font-weight: 500;
}
.c-cat__list li a::after {
  content: "";
  display: block;
  transition: all 0.2s ease-in-out;
  border-radius: 50%;
  background-color: #9F9F9F;
  width: 0.5rem;
  height: 0.5rem;
  position: absolute;
  top: 0.55rem;
  left: 0;
}
.c-cat__list li a:hover::after {
  background-color: #151D2F;
}
.c-cat__list li.is-current a {
  color: #151D2F;
}
.c-cat__list li.is-current a::after {
  background-color: #151D2F;
}
.c-cat__list li + li {
  margin-top: 1rem;
}

.c-cat__list[class] li > * {
  text-decoration: none;
}

.c-sidebar__section + .c-sidebar__section {
  margin-top: 3rem;
}
.c-sidebar__title {
  font-weight: bold;
}
.c-sidebar__title + * {
  margin-top: 1rem;
}
.c-sidebar + .c-sidebar {
  margin-top: 1rem;
}

@media (min-width: 768px) {
  .l-main__inner.-col2 {
    flex-direction: row-reverse;
  }
}
@media (max-width: 767px) {
  .l-main__inner.-col2 {
    display: flex;
    flex-direction: column-reverse;
  }
}

@media (min-width: 768px) {
  .l-main__inner.-col2 .l-main__content {
    flex-basis: calc(100% - 240px);
    max-width: calc(100% - 240px);
    padding-right: 0;
  }
}

@media (min-width: 768px) {
  .l-main__sidebar {
    flex-basis: 240px;
    max-width: 240px;
  }
}

/* =====================================
 * 代表メッセージ
 * ================================== */
@media (min-width: 768px) {
  .p-message-flex__inner {
    display: flex;
    flex-direction: row-reverse;
    gap: 5rem;
  }
}
.p-message-flex__img {
  flex-shrink: 0;
  flex-grow: 0;
}
.p-message-flex__img img {
  width: 100%;
}
@media (max-width: 767px) {
  .p-message-flex__img + * {
    margin-top: 19px;
  }
}
.p-message-flex__title {
  font-size: 1.5rem;
  font-weight: 500;
}
.p-message-flex__title + * {
  margin-top: 1.25rem;
}
@media (max-width: 767px) {
  .p-message-flex__title + * {
    margin-top: 12px;
  }
}
.p-message-flex__desc + * {
  margin-top: 2.5rem;
}
@media (max-width: 767px) {
  .p-message-flex__desc + * {
    margin-top: 24px;
  }
}

.p-message-position {
  font-size: 1.125rem;
}
.p-message-position + * {
  margin-top: 0.75rem;
}
@media (max-width: 767px) {
  .p-message-position + * {
    margin-top: 8px;
  }
}

.p-message-name {
  font-size: 1.5rem;
  font-weight: 500;
}

/* =====================================
 * 企業文化・方針
 * ================================== */
.p-corporate-identity-subtitle {
  font-size: 3.75rem;
}
.p-corporate-identity-subtitle + h2:not([class]) {
  margin-top: 0.5rem;
}

.p-corporate-identity-value {
  background-color: #151D2F;
  padding: 5.5rem;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px) {
  .p-corporate-identity-value {
    padding: 2rem;
  }
}
.p-corporate-identity-value__inner {
  display: flex;
  flex-direction: column;
  counter-reset: number 0;
}
@media (min-width: 768px) {
  .p-corporate-identity-value__inner {
    gap: 2.5rem;
    max-width: 663px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (max-width: 767px) {
  .p-corporate-identity-value__inner {
    gap: 2rem;
  }
}
.p-corporate-identity-value__num::after {
  counter-increment: number 1;
  content: "0" counter(number) ".";
  display: block;
  font-size: 3.5rem;
  font-style: italic;
  color: #9F9F9F;
}
@media (max-width: 767px) {
  .p-corporate-identity-value__num::after {
    font-size: 2.5rem;
    line-height: 1;
  }
}
.p-corporate-identity-value__title {
  font-size: 3rem;
  color: #fff;
}
@media (min-width: 768px) {
  .p-corporate-identity-value__title {
    max-width: 663px;
    margin-left: auto;
    margin-right: auto;
  }
}
.p-corporate-identity-value__title + * {
  margin-top: 2.5rem;
}
@media (max-width: 767px) {
  .p-corporate-identity-value__title + * {
    margin-top: 24px;
  }
}
.p-corporate-identity-value__item {
  display: flex;
  gap: 2.5rem;
}
@media (max-width: 767px) {
  .p-corporate-identity-value__item {
    gap: 1.5rem;
  }
}
.p-corporate-identity-value__en {
  font-size: 1.125rem;
  letter-spacing: 0.1125rem;
  color: #9F9F9F;
}
.p-corporate-identity-value__texttitle {
  font-size: 1.5rem;
  color: #fff;
}
.p-corporate-identity-value__desc {
  color: #fff;
}
.p-corporate-identity-value__img {
  flex-shrink: 0;
  flex-grow: 0;
}
.p-corporate-identity-value__img img {
  width: 100%;
}
@media (max-width: 767px) {
  .p-corporate-identity-value__img + * {
    margin-top: 19px;
  }
}

.p-company-profile[class] {
  border-right: none;
  border-bottom: none;
}
.p-company-profile[class] th,
.p-company-profile[class] td {
  border-top: none;
  border-left: none;
  padding: 1.5rem;
  border-bottom: 1px solid #dddddd;
}
.p-company-profile[class] th {
  background-color: #fff;
  color: #151D2F;
}
@media (min-width: 768px) {
  .p-company-profile[class] td:has(ul) {
    display: flex;
    gap: 2.63rem;
  }
}
.p-company-profile[class] td:has(ul) ul + ul {
  margin-top: 0;
}
.p-company-profile[class] td:has(ul) ul + ul::after {
  content: "順不同";
  display: block;
  font-size: 1rem;
  text-align: right;
  margin-top: 1rem;
}

/* =====================================
 * 沿革
 * ================================== */
.p-history {
  position: relative;
}
.p-history::after {
  content: "";
  display: block;
  top: -1px;
  left: -1px;
  border-radius: 0.75rem;
  width: 4px;
  height: 9px;
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
}
@media (max-width: 767px) {
  .p-history::after {
    height: 8px;
  }
}
.p-history::before {
  content: "";
  display: block;
  bottom: -1px;
  left: -1px;
  border-radius: 0.75rem;
  width: 4px;
  height: 32px;
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
}
@media (max-width: 767px) {
  .p-history::before {
    height: 51px;
  }
}
.p-history__inner {
  display: flex;
}
.p-history__year {
  font-size: 2.5rem;
  font-weight: 500;
  color: #151D2F;
  padding-right: 1.5rem;
  border-right: 2px solid #151D2F;
  line-height: 0.75;
  padding-top: 2.5rem;
  min-width: 129px;
}
@media (max-width: 767px) {
  .p-history__year {
    font-size: 2rem;
    min-width: 100px;
  }
}
.p-history__text {
  padding-left: 1.75rem;
  border-left: 1px solid #151D2F;
}
.p-history__month {
  position: relative;
  display: flex;
  gap: 2.75rem;
}
.p-history__month::before {
  content: "";
  display: block;
  top: 0.5rem;
  left: -2.15rem;
  border-radius: 0.75rem;
  width: 0.75rem;
  height: 0.75rem;
  background-color: #151D2F;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
}
.p-history__month span {
  font-size: 1.25rem;
  min-width: 70px;
  display: inline-block;
  margin-top: -0.2rem;
}
@media (max-width: 767px) {
  .p-history__month span {
    display: block;
  }
}
.p-history__month + * {
  margin-top: 3rem;
}
@media (max-width: 767px) {
  .p-history__month + * {
    margin-top: 8px;
  }
}
.p-history__month:first-child::before {
  content: "";
  display: block;
  top: 0.5rem;
  left: -2.15rem;
  border-radius: 0.75rem;
  width: 0.75rem;
  height: 0.75rem;
  background-color: #151D2F;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100%;
  position: absolute;
}

/* =====================================
 * 事業所一覧
 * ================================== */
@media (min-width: 768px) {
  .p-office-information-imgflex__inner {
    display: flex;
    flex-direction: row-reverse;
    gap: 3.25rem;
    justify-content: space-between;
  }
}
.p-office-information-imgflex__img {
  flex-shrink: 0;
  flex-grow: 0;
}
.p-office-information-imgflex__img img {
  width: 100%;
}
@media (max-width: 767px) {
  .p-office-information-imgflex__img + * {
    margin-top: 19px;
  }
}
.p-office-information-imgflex__text h4:not([class]) + * {
  margin-top: 1rem;
}
.p-office-information-imgflex__map + * {
  margin-top: 0.75rem;
}
@media (max-width: 767px) {
  .p-office-information-imgflex__map + * {
    margin-top: 8px;
  }
}
.p-office-information-imgflex__map a[target=_blank] {
  position: relative;
}
.p-office-information-imgflex__map a[target=_blank]:before {
  content: "";
  display: block;
  top: 50%;
  transform: translateY(-50%);
  margin-right: -1.25rem;
  right: 0;
  width: 0.875rem;
  height: 0.875rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url("../img/img_blank_blk.png");
  background-size: 100%;
  position: absolute;
}

/* =====================================
 * CSR活動
 * ================================== */
@media (min-width: 768px) {
  .c-anchor-link__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 1.87rem;
  }
}
@media (min-width: 768px) {
  .c-anchor-link__inner.-max3 > * {
    flex-basis: calc(33.333% - 1.75rem);
    max-width: calc(33.333% - 1.75rem);
  }
}
.c-anchor-link__btn {
  border-bottom: 1px solid #dddddd;
}
.c-anchor-link__btn a {
  padding-right: 2.45rem;
  padding-bottom: 1rem;
  text-decoration: none;
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}
@media (min-width: 768px) {
  .c-anchor-link__btn a:hover::before {
    transform: scale(1, 1);
    /*ホバー後、x軸方向に1（相対値）伸長*/
  }
}
.c-anchor-link__btn a::before {
  position: absolute;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: #151D2F;
  bottom: -1px;
  /*アンダーラインがaタグの下端から現れる*/
  transform: scale(0, 1);
  /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
  transform-origin: left top;
  /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
  transition: transform 0.4s;
  /*変形の時間*/
}
.c-anchor-link__btn a::after {
  content: "";
  display: block;
  top: calc(50% - 0.5rem);
  right: 0.65rem;
  transform: translateY(-50%);
  width: 0.75rem;
  height: 0.375rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../img/img_arr_down_blk.png);
  background-size: 100%;
  position: absolute;
}
@media (max-width: 767px) {
  .c-anchor-link__btn + .c-anchor-link__btn {
    margin-top: 1rem;
  }
}

@media (min-width: 768px) {
  .p-csr-activities-col3__inner {
    display: flex;
    flex-wrap: wrap;
    gap: 3rem;
  }
}
@media (min-width: 768px) {
  .p-csr-activities-col3__inner > * {
    flex-basis: calc(33.333% - 2rem);
    max-width: calc(33.333% - 2rem);
  }
}
.p-csr-activities-col3__item {
  padding: 2.75rem;
}
.p-csr-activities-col3__title {
  font-size: 1rem;
  font-weight: 500;
  line-height: 150%;
  text-align: center;
}
.p-csr-activities-col3__title + * {
  margin-top: 1.5rem;
}
@media (max-width: 767px) {
  .p-csr-activities-col3__title + * {
    margin-top: 14px;
  }
}
.p-csr-activities-col3__desc {
  font-size: 0.875rem;
}
.p-csr-activities-col3__img {
  text-align: center;
}
.p-csr-activities-col3__img img {
  width: fit-content;
}
.p-csr-activities-col3__img + * {
  margin-top: 1.25rem;
}
@media (max-width: 767px) {
  .p-csr-activities-col3__img + * {
    margin-top: 12px;
  }
}
@media (max-width: 767px) {
  .p-csr-activities-col3__item + .p-csr-activities-col3__item {
    margin-top: 2rem;
  }
}

@media (min-width: 768px) {
  .p-csr-activities-flex__inner {
    display: flex;
    gap: 3.25rem;
  }
}
.p-csr-activities-flex__img {
  flex-shrink: 0;
  flex-grow: 0;
  width: 18.75rem;
  height: 18.75rem;
  text-align: center;
  display: block;
}
@media (max-width: 767px) {
  .p-csr-activities-flex__img {
    width: 100%;
    height: 100%;
  }
}
@media (max-width: 767px) {
  .p-csr-activities-flex__img + * {
    margin-top: 19px;
  }
}

/* =====================================
 * フォーム
 * ================================== */
.p-form__inner {
  padding: 6.25rem 8.125rem;
  background-color: #EFF1F5;
}
@media (max-width: 767px) {
  .p-form__inner {
    padding: 1.5rem;
  }
}
.p-form__inner dt + * {
  margin-top: 0.5rem;
}
.p-form__inner dd + * {
  margin-top: 1.5rem;
}
.p-form__item-headline {
  font-size: 0.875rem;
}
.p-form__item-headline + * {
  margin-top: 0.5rem;
}
.p-form__req:after {
  content: "*";
  font-size: 1rem;
  display: inline-block;
  background-color: inherit;
  color: #B70000;
  font-weight: normal;
  padding: 0 0.5rem;
  margin-left: 0;
  margin-bottom: 0.5rem;
}
.p-form__item + .p-form__item {
  margin-top: 0.75rem;
}
.p-form input[class],
.p-form select[class] {
  border: none;
}
.p-form-name {
  font-size: 1.25rem;
  font-weight: 500;
}
.p-form-name + * {
  margin-top: 2rem;
}
@media (max-width: 767px) {
  .p-form-name + * {
    margin-top: 19px;
  }
}
.p-form-note {
  font-weight: 500;
}
.p-form-note::before {
  content: "*";
  font-size: 1rem;
  display: inline-block;
  background-color: inherit;
  color: #B70000;
  font-weight: normal;
  padding: 0 0.5rem;
  margin-left: 0;
  margin-bottom: 0.5rem;
}
.p-form-note + * {
  margin-top: 2rem;
}
@media (max-width: 767px) {
  .p-form-note + * {
    margin-top: 19px;
  }
}

@media (max-width: 767px) {
  .c-tab__trigger {
    margin-bottom: 2rem;
  }
}
.c-tab__trigger-list {
  display: flex;
  justify-content: center;
  gap: 6px;
}
@media (max-width: 767px) {
  .c-tab__trigger-list {
    flex-wrap: wrap;
    gap: 2px;
  }
}
@media (min-width: 768px) {
  .c-tab__trigger-list > * {
    flex-basis: calc(33.3333% - 4px);
    max-width: calc(33.3333% - 4px);
  }
}
.c-tab__trigger-list li.is-active a,
.c-tab__trigger-list .c-alink__list li.is-active a {
  background-color: #EFF1F5;
  pointer-events: none;
  color: #151D2F;
  position: relative;
}
@media (max-width: 767px) {
  .c-tab__trigger-list li.is-active a,
  .c-tab__trigger-list .c-alink__list li.is-active a {
    opacity: 0.6;
    color: #9F9F9F;
  }
}
.c-tab__trigger-list li.is-active a::before,
.c-tab__trigger-list .c-alink__list li.is-active a::before {
  content: none;
}
@media (max-width: 767px) {
  .c-tab_item {
    width: 100%;
  }
}
.c-tab_item a {
  text-decoration: none;
  padding: 1.25rem;
  background-color: #151D2F;
  color: #fff;
  line-height: 1.5;
  font-size: 1rem;
  display: block;
  text-align: center;
  font-weight: 500;
  transition: all 0.2s ease;
  cursor: pointer;
  position: relative;
}
@media (max-width: 767px) {
  .c-tab_item a {
    box-shadow: 0.5rem 0.5rem 1.25rem 0.25rem rgba(21, 29, 47, 0.05);
  }
}
.c-tab_item a:hover {
  opacity: 0.6;
  transition: all 0.2s ease-in-out;
}
.c-tab_item a::before {
  content: "";
  display: block;
  top: 0;
  right: 0;
  width: 1rem;
  height: 1rem;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(../img/ico_arr_down_wht.svg);
  background-size: 100%;
  position: absolute;
  margin-top: 1.5rem;
  margin-right: 1.5rem;
  z-index: 1;
}
@media (max-width: 767px) {
  .c-tab_item a {
    width: 100%;
  }
}

.p-form-thanks-title {
  font-size: 2rem;
  text-align: center;
  font-weight: 500;
  letter-spacing: -0.01em;
}

.p-form-thanks-desc {
  text-align: center;
}

.wpcf7-number {
  max-width: 203px;
}

.wpcf7-checkbox {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.wpcf7-checkbox > * {
  margin-left: 0;
}

.p-form textarea {
  border: none;
}

.p-form textarea:focus {
  outline: none;
}

/* =====================================
 * HOME調整
 * ================================== */
@media (max-width: 767px) {
  .l-header__menu-list li a[target=_blank] {
    padding-right: 0;
  }
}

@media (min-width: 768px) {
  .p-home-business__bnr-item:hover {
    opacity: 0.6;
    transition: all 0.2s ease-in-out;
  }
}

@media (min-width: 768px) {
  .p-home-business__bnr-item:hover .p-home-business__bnr-top {
    background-color: inherit;
  }
}

@media (min-width: 768px) {
  .p-home-business__bnr-item:hover .p-home-business__bnr-title {
    color: #fff;
  }
}

.p-home-mv__desc-wrapper {
  position: relative;
  z-index: 99;
}

@media (min-width: 768px) {
  .p-home-mv__desc {
    max-width: 348px;
  }
}

#videoPlaceholder.p-home-mv__img {
  position: absolute;
  top: 0;
  right: 0;
}

.p-home-section + .p-home-section.p-home-recruit {
  margin-top: 0;
}

.p-home-section__body.p-home-company__body {
  padding-bottom: 7.5rem;
}
@media (max-width: 767px) {
  .p-home-section__body.p-home-company__body {
    padding-bottom: 5rem;
  }
}

.c-submenu__btn {
  font-size: 1rem;
}
.c-submenu__btn::before {
  width: 1rem;
}

.c-pagetitle__subtitle,
.c-headline01__sub,
.p-corporate-identity-subtitle,
.p-corporate-identity-subtitle,
.p-corporate-identity-value__title,
.p-corporate-identity-value__num::after,
.p-corporate-identity-value__en {
  font-weight: 400;
}

@media (min-width: 768px) {
  .c-cta__list,
  .c-submenu__inner {
    min-width: 1200px;
  }
}

@media (min-width: 768px) {
  .c-cta.c-cta-bg-inner,
  .c-submenu {
    display: flex;
    justify-content: center;
  }
}

@media (max-width: 767px) {
  .c-btn[class].-mail > *:hover::before {
    background-image: url(../img/ico_mail_wht.svg);
  }
}

@media (max-width: 767px) {
  .l-header__btn-list li a[data-title-class=-mail]:hover::before {
    background-image: url(../img/ico_mail_wht.svg);
  }
}

.table-item {
  margin-bottom: 8px;
}

.table-item__a {
  padding-top: 0.5rem;
}

.table-item__q {
  position: relative;
  padding-right: 2rem;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
}

.table-item__q-subtitle {
  text-decoration: underline;
}

.table-item__q:hover .table-item__q-subtitle {
  text-decoration: none;
}

.table-item__q span {
  display: inline-block;
  margin-right: 1rem;
  min-width: 150px;
}

.table-item__q:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  transform: translateY(-50%);
  /* width: 2px; */
  width: 1rem;
  height: 1rem;
  /* background-color: #151D2F; */
  background-image: url(../../assets/img/img_arr_down_pri.svg);
}

.table-item__q::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  /* background-color: #151D2F; */
  background-image: url(../../assets/img/img_arr_up_pri.svg);
}

.table-item__a {
  color: #333;
  display: none;
}

.is-active .table-item__q:before {
  display: none;
}

.table-item .table-item__q:after {
  display: none;
}

.table-item.is-active .table-item__q:after {
  display: block;
}

.p-home-business__img iframe {
  width: 100%;
  height: 540px;
  object-fit: cover;
}
@media (max-width: 767px) {
  .p-home-business__img iframe {
    height: 350px;
  }
}

.p-home-business__footer-title {
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
}

.p-home-business__footer-title + * {
  margin-top: 1.75rem;
}

.p-home-business__img + * {
  margin-top: 1.75rem;
}

.p-home-business__footer-desc {
  color: #fff;
}

.p-home-business__bnr-top {
  display: block;
}

.p-home-business__bnr-img {
  flex-basis: 100%;
  max-width: 100%;
}

@media (min-width: 768px) {
  .p-home-business__bnr-list {
    gap: 1.85rem;
  }
}
@media (min-width: 768px) {
  .p-home-business__bnr-list > * {
    flex-basis: calc(33.3333333333% - 1.2333333333rem);
    max-width: calc(33.3333333333% - 1.2333333333rem);
  }
}

.p-home-business__bnr-img {
  aspect-ratio: 300/168;
}

.p-home-business__bnr-item {
  background-color: #151D2F;
}

body:not([data-page-slug=home]) .p-home-business__bnr-top {
  border: 1px solid #151D2F;
}

.p-home-business__bnr-title a {
  padding: 2rem;
}
@media (max-width: 767px) {
  .p-home-business__bnr-title a {
    padding: 2rem 1.25rem;
  }
}
.p-home-business__bnr-title a:hover .p-home-business__bnr-title-btn::after {
  background-position-x: right, calc(100% + 2.5em);
}
.p-home-business__bnr-title-title {
  font-size: 0.85rem;
}
@media (max-width: 767px) {
  .p-home-business__bnr-title-title {
    font-size: 1rem;
  }
}
.p-home-business__bnr-title-title + * {
  margin-top: 0.5rem;
}
.p-home-business__bnr-title-desc {
  font-size: 0.75rem;
  font-weight: normal;
  text-align: left;
  line-height: 1.75;
}
.p-home-business__bnr-title-desc + * {
  margin-top: 1.5rem;
}
@media (max-width: 767px) {
  .p-home-business__bnr-title-desc + * {
    margin-top: 14px;
  }
}
.p-home-business__bnr-title-btn {
  font-size: 0.75rem;
  font-weight: normal;
  position: relative;
  display: inline-block;
  padding-right: 1.25rem;
  padding-left: 0.75rem;
}
.p-home-business__bnr-title-btn:after {
  content: "";
  transition: all 0.2s ease-in-out;
  display: block;
  background-repeat: no-repeat;
  background-position-y: center, center;
  background-position-x: calc(100% - 2.5em), right;
  background-image: url(../img/ico_arr_right_wht.svg), url(../img/ico_arr_right_wht.svg);
  background-size: 100% auto;
  width: 1em;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
}/*# sourceMappingURL=style.css.map */