@charset "UTF-8";
/****** commmon ******/
body {
  background: linear-gradient(180deg, #385380, #1b2a43) no-repeat;
  line-height: 1.7;
  letter-spacing: 0.05em;
  font-family: "Arial", "Noto Sans JP", sans-serif;
  overflow-x: clip;
}

.inner {
  width: min(93%, 1256px);
  margin: 0 auto;
}

@media (width > 767px) {
  .sp-br {
    display: none;
  }
}

section {
  scroll-margin-top: clamp(80px, 6.05vw + 57.313px, 140px);
}

/* home共通部分 */
.home .section-container {
  padding: clamp(52px, 8.78vw + 19.075px, 139px) 0 clamp(133px, 0.2vw + 132.25px, 135px);
  background: url(../img/page/home/home-common/section-wrap-bg.webp) no-repeat center/cover;
}
.home .cta-wrap {
  padding: clamp(84.5px, 4.04vw + 69.35px, 124.5px) 0 clamp(72px, 9.89vw + 34.913px, 170px);
  background: url(../img/page/home/home-common/home-cta-bg.webp) no-repeat center/cover;
}

/*** 下層ページ共通部分 ****/
body:not(.home) .logo svg path#logo-path01 {
  fill: #fff;
}
body:not(.home) .logo svg path#logo-path02 {
  fill: #fff;
}

.fv {
  width: 100%;
  height: 83vh;
}
@media (width > 767px) {
  .fv {
    height: 92vh;
  }
}
.fv .inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.page-title {
  font-size: clamp(40px, 1.01vw + 36.212px, 50px);
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.page-title span {
  font-size: clamp(17px, 0.3vw + 15.875px, 20px);
}

.bg-wrap {
  background: url(../img/global/page-bg.webp) no-repeat top left/cover;
}

/*** 下層ページ独自全体指定 ****/
/* companyページ全体 */
.company .bg-wrap:first-child {
  padding-bottom: clamp(130px, 1.01vw + 126.213px, 140px);
}
.company .bg-wrap:last-of-type {
  padding-bottom: 134px;
}

/* serviceページ全体 */
.service .bg-wrap {
  padding-bottom: clamp(93.9px, 7.17vw + 67.013px, 165px);
}

/* environmentページ全体 */
.environment .bg-wrap {
  padding-bottom: clamp(137.9px, 0.45vw + 136.213px, 143px);
}

/* interviewページ全体 */
.interview .bg-wrap {
  padding-bottom: clamp(109px, 3.13vw + 97.263px, 140px);
}

/* お知らせ一覧ページ全体 */
.info-archives .bg-wrap {
  padding-bottom: clamp(137.9px, 0.45vw + 136.213px, 143px);
}

/* お知らせ記事ページ全体 */
.bg-wrap:has(.article) {
  padding-bottom: clamp(137.9px, 0.45vw + 136.213px, 143px);
}

/* アニメーションの設定 */
.fade-x {
  translate: -20px 0;
}
.fade-x.is_show {
  translate: 0;
}

.fade-y {
  translate: 0 40px;
}
.fade-y.is_show {
  translate: 0;
}

.fade-op {
  opacity: 0;
}
.fade-op.is_show {
  opacity: 1;
}

.fadein {
  transition-duration: 0.8s;
}

.d-03 {
  transition-delay: 0.3s;
}

.fv .mv-fade {
  transition-duration: 1s;
}

/****** module ******/
/* headr内エントリーボタン */
.entry-btn {
  width: clamp(150px, 24.88vw - 173.191px, 200px);
  aspect-ratio: 4.3695652174;
  display: grid;
  place-items: center;
  background: linear-gradient(90deg, #385380, #1b2a43) no-repeat;
  border-radius: 11px;
  font-size: clamp(16px, 2.99vw - 22.84px, 22px);
  color: #fff;
  font-weight: 900;
  transition: all 0.3s;
}
.entry-btn:hover {
  opacity: 0.8;
}

/* ボタンの中の矢印 */
.module-arrow {
  width: 23px;
  height: 23px;
  border: 1px solid #1b1464;
  display: grid;
  place-items: center;
  border-radius: 50%;
  flex-shrink: 0;
  overflow: clip;
  transition: all 0.3s;
}
.module-arrow img {
  width: 9.2px;
  height: 9.2px;
}

@media (width > 767px) {
  :has(> .module-arrow):hover .module-arrow {
    background-color: #fff;
  }
  :has(> .module-arrow):hover .module-arrow img {
    animation: arrow-anime 0.3s;
  }
}

@media (width > 767px) {
  .bg-transparent:has(> .module-arrow):hover .module-arrow {
    background-color: #012045;
  }
  .bg-transparent:has(> .module-arrow):hover .module-arrow img {
    animation: arrow-anime 0.3s;
  }
}

@keyframes arrow-anime {
  50% {
    translate: 50px 0;
  }
  51% {
    translate: -50px 0;
  }
  100% {
    translate: 0;
  }
}
/* cta-moreボタン */
.c-btn-more {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #1b1464;
}

/* ctaボタンアウトラインつき */
.c-btn-outline {
  width: -moz-fit-content;
  width: fit-content;
  background-color: #fff;
  border: 1px solid #1b1464;
  color: #000;
  display: flex;
  gap: 0 clamp(40px, 4.89vw + 21.663px, 95px);
  align-items: center;
  padding: 16px 22px 16px 40px;
  font-size: clamp(14px, 0.09vw + 13.662px, 15px);
  border-radius: 50px;
  text-wrap: nowrap;
  transition: all 0.3s;
}
.c-btn-outline:hover {
  background-color: #012045;
  color: #fff;
}
.c-btn-outline.bg-transparent {
  background-color: transparent;
  color: #fff;
}
.c-btn-outline.bg-transparent:hover {
  background-color: #fff;
  color: #012045;
}

/* タブ切り替えアコーディオンモジュール */
.tab-accordion-module {
  width: min(100%, 1192px);
  margin: 0 auto;
}
.tab-accordion-module .tabs-box {
  display: flex;
  width: 100%;
}
.tab-accordion-module .tabs-box .tab {
  width: min(50%, 250px);
  height: clamp(40px, 4.64vw + 22.6px, 86px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #e2e2e2;
  color: #000;
  font-size: clamp(12px, 0.81vw + 8.963px, 20px);
}
.tab-accordion-module .tabs-box .tab.current-content {
  background-color: #0093ff;
  color: #fff;
}
.tab-accordion-module .tabs-box .tab span {
  font-size: clamp(9px, 0.2vw + 8.25px, 11px);
}
.tab-accordion-module .accordion-content {
  background-color: #0093ff;
  padding: 0 clamp(6px, 0.91vw + 2.587px, 15px);
}
.tab-accordion-module .accordion-content:has(.is_opened) {
  padding: 0 clamp(6px, 0.91vw + 2.587px, 15px) 15px;
}
.tab-accordion-module .accordion-content:not(:last-child) {
  margin-bottom: 5px;
}
.tab-accordion-module .accordion-content__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: clamp(20px, 1.72vw + 0.55px, 24px) clamp(0px, 2.58vw - 9.675px, 29px);
  cursor: pointer;
}
.tab-accordion-module .accordion-content__header::after {
  content: "";
  display: block;
  width: clamp(16.07px, 1.22vw + 11.495px, 28.12px);
  aspect-ratio: 1.9858757062;
  background: url(../img/global/icon/accordion-arrow.svg) no-repeat center/cover;
  transition: all 0.3s;
}
.tab-accordion-module .accordion-content__header:has(+ .is_opened)::after {
  rotate: -180deg;
}
.tab-accordion-module .accordion-content__header__title {
  font-size: clamp(16px, 2.42vw + 6.925px, 40px);
  color: #fff;
}
.tab-accordion-module .accordion-content__list {
  background-color: #fff;
  padding: 52px 15px;
  display: none;
}
.tab-accordion-module .accordion-content__list.current-content {
  display: block;
}
.tab-accordion-module .accordion-content__list__item:not(:last-child) {
  margin-bottom: 47px;
}
.tab-accordion-module .accordion-content__list__item__title {
  font-size: 18px;
  font-weight: normal;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 3px;
}
.tab-accordion-module .accordion-content__list__item__title::before {
  content: "";
  display: block;
  width: 35.64px;
  aspect-ratio: 1.7687344913;
  background: url(../img/global/icon/accordion-title-icon.svg) no-repeat center/cover;
}
.tab-accordion-module .accordion-content__list__item__text {
  font-size: 14px;
  padding-left: 2em;
}
.tab-accordion-module .accordion-content__list__item__text > ul {
  margin-left: 1em;
}
.tab-accordion-module .accordion-content__list__item__text > ul > li:not(.m-hidden) {
  list-style: disc;
}
.tab-accordion-module .accordion-content__list__item__text > ul > li:not(:last-child) {
  margin-bottom: 10px;
}
.tab-accordion-module .accordion-content__list__item__text > ul > li > .bold {
  font-weight: bold;
}
.tab-accordion-module .accordion-content__list__item__text .m-t-b {
  margin: 20px 0 5px;
}

/* アコーディオン開閉のスタイル */
.ac-list-container {
  overflow: clip;
  transition: all 0.3s;
}
.ac-list-container:not(.is_opened) {
  height: 0;
}

/* ページ共通のCTAモジュール */
.cta-module {
  scroll-margin-top: clamp(80px, 6.05vw + 57.313px, 140px);
}
.cta-module__title {
  display: grid;
  place-items: center;
  position: relative;
  margin-bottom: 70px;
}
.cta-module__title img {
  width: clamp(270px, 27.55vw + 166.688px, 543px);
}
.cta-module__title span {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: clamp(16px, 1.61vw + 9.963px, 32px);
  text-align: center;
  line-height: 1.4;
  text-wrap: nowrap;
}
.cta-module__container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 31px 28px;
}
@media (width > 999px) {
  .cta-module__container {
    flex-direction: row;
  }
}
.cta-module__container__item {
  width: min(100%, 528px);
  background: linear-gradient(90deg, #316480, #062753);
  padding: clamp(17px, 1.72vw + 10.55px, 34px) clamp(32px, 1.51vw + 26.337px, 47px) clamp(25px, 1.11vw + 20.837px, 36px);
  flex: 1;
}
.cta-module__container__item__title {
  font-size: clamp(19px, 0.3vw + 17.875px, 22px);
  text-align: center;
  margin-bottom: clamp(21px, 0.91vw + 17.587px, 30px);
  color: #fff;
}
@media (width > 767px) {
  .cta-module__container__item__title {
    text-align: left;
  }
}
.cta-module__container__item__cards {
  display: flex;
  justify-content: center;
  gap: 0 clamp(22px, 0.91vw + 18.587px, 31px);
  /* ↓念のためとっておくが隠す。 */
}
.cta-module__container__item__cards:nth-child(2) .card:last-child {
  display: none;
}
.cta-module__container__item__cards .card {
  display: block;
  width: clamp(139px, 6.36vw + 115.15px, 202px);
  aspect-ratio: 3.15625;
  background-color: #fff;
  color: #012045;
  letter-spacing: 0.02em;
  line-height: 1;
  font-weight: bold;
}
.cta-module__container__item__cards .card > img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.cta-module__container__item {
  /**/
}
.cta-module__container__item.mid-career .card:first-child {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: clamp(12px, 0.91vw + 8.588px, 21px);
}
.cta-module__container__item.mid-career .card:first-child span {
  font-size: clamp(6px, 0.5vw + 4.125px, 11px);
}
.cta-module__container__item.mid-career .card:last-child {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 clamp(10px, 0.2vw + 9.25px, 12px);
  font-size: clamp(10px, 0.71vw + 7.338px, 17px);
}
.cta-module__container__item.mid-career .card:last-child .module-arrow {
  width: clamp(14px, 0.91vw + 10.588px, 23px);
  height: clamp(14px, 0.91vw + 10.588px, 23px);
}
.cta-module__container__item.mid-career .card:last-child .module-arrow img {
  width: clamp(5px, 0.4vw + 3.5px, 9px);
  height: clamp(5px, 0.4vw + 3.5px, 9px);
}

/* タイムラインモジュール */
.module-timeline {
  display: flex;
  flex-direction: column;
}
.module-timeline__item {
  display: flex;
  align-items: flex-start;
  line-height: 1;
  font-size: clamp(14px, 0.36vw + 12.65px, 18px);
}
.module-timeline__item:not(:last-child) > span:last-child {
  padding-bottom: clamp(64px, 2.31vw + 55.337px, 90px);
}
.module-timeline__item:not(:last-child) > span:last-child::before {
  content: "";
  display: block;
  width: 3px;
  height: 100%;
  background-color: #fff;
  position: absolute;
  inset: 0 auto auto calc(clamp(12.5px, 0.4vw + 11px, 17px) * -1);
}
.module-timeline__item::before {
  content: "";
  display: block;
  width: clamp(22px, 0.8vw + 19px, 31px);
  height: clamp(22px, 0.8vw + 19px, 31px);
  margin-top: -3px;
  background-color: #fff;
  border-radius: 50%;
}
@media (width > 767px) {
  .module-timeline__item::before {
    margin-top: -9px;
  }
}
.module-timeline__item > span:first-child {
  order: -1;
  margin-right: clamp(17px, 0.36vw + 15.65px, 21px);
}
.module-timeline__item > span:last-child {
  padding-left: clamp(21px, 0.71vw + 18.337px, 29px);
  position: relative;
  display: block;
  line-height: 2.4;
  margin-top: 0.05em;
  text-box: trim-both cap alphabetic;
}

/* スライダーモジュール */
.slide-module {
  position: relative;
  width: 75vw;
  margin: 0 auto;
}
@media (width > 767px) {
  .slide-module {
    width: auto;
  }
}
.slide-module .slide-container {
  width: 75vw;
  margin: 0 auto;
}
@media (width > 499px) {
  .slide-module .slide-container {
    width: auto;
  }
}
.slide-module .slide-container .slide-item {
  flex-shrink: 0;
}
.slide-module .slide-container .slide-item:not(.swiper-slide-active) {
  opacity: 0;
}
@media (width > 499px) {
  .slide-module .slide-container .slide-item:not(.swiper-slide-active) {
    opacity: 1;
  }
}
.slide-module .slide-container .slide-item a {
  display: block;
  background-color: #ccc;
}
.slide-module .slide-container .slide-item a img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.slide-module .slide-btn > svg {
  display: none;
}
.slide-module .slide-btn.swiper-button-prev {
  transition: all 0.3s;
  transform: translate(-50%, 0);
}
.slide-module .slide-btn.swiper-button-prev.swiper-button-disabled {
  opacity: 0;
  visibility: hidden;
}
.slide-module .slide-btn.swiper-button-next {
  transition: all 0.3s;
  transform: translate(50%, 0);
}
.slide-module .slide-btn.swiper-button-next.swiper-button-disabled {
  opacity: 0;
  visibility: hidden;
}

/****** header ******/
.header {
  width: 100%;
  padding: 13px 20px 19px clamp(20px, 11.63vw - 119.444px, 55px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: fixed;
  inset: 0 auto auto 0;
  z-index: 10000;
  pointer-events: none;
}
@media (width > 1199px) {
  .header {
    padding-right: 18px;
  }
}
.header .logo {
  width: clamp(209px, 12.82vw + 33.879px, 280px);
  aspect-ratio: 4.7008547009;
  padding-top: 0.9em;
  pointer-events: auto;
  position: relative;
  z-index: 10;
}
.header .logo svg {
  width: 100%;
}
.header .logo svg path {
  transition: all 0.3s;
}
.header .global-nav {
  width: min(100%, 393px);
  height: 100vh;
  padding: 109px 30px 108px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0 clamp(22px, 12.26vw - 100.477px, 30px);
  /* 	gap: 0 clamp(22px, 12.26vw - 100.477px, 67px); */
  background-color: #012045;
  position: fixed;
  inset: 0 0 auto auto;
  pointer-events: auto;
  overflow: auto;
  transition: all 0.3s;
  opacity: 0;
  visibility: hidden;
}
@media (width > 1199px) {
  .header .global-nav {
    width: 100%;
    align-items: center;
    padding: 5px 11px 5px 30px;
    flex-direction: row;
    border-radius: 10px;
    align-items: center;
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    background-color: #fff;
    opacity: 1;
    visibility: visible;
  }
}
@media (width > 1299px) {
  .header .global-nav {
    padding: 5px 11px 5px clamp(28px, 11.44vw - 86.286px, 40px);
    /* 	  padding: 5px 11px 5px clamp(28px, 11.44vw - 86.286px, 70px); */
  }
}
.header .global-nav.is_active {
  opacity: 1;
  visibility: visible;
}
.header .global-nav__list {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 15.3px clamp(20px, 12.26vw - 102.477px, 40px);
  /* 	gap: 15.3px clamp(20px, 12.26vw - 102.477px, 65px); */
  margin-bottom: 40px;
  font-size: 21px;
}
@media (width > 1199px) {
  .header .global-nav__list {
    flex-direction: row;
    margin-bottom: 0;
    font-size: clamp(12px, 0.54vw + 6.605px, 14px);
  }
}
.header .global-nav__list__item {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  color: #fff;
  font-weight: 500;
  padding: 32px 20px 36px 0;
  position: relative;
}
.header .global-nav__list__item::before {
  content: "";
  display: block;
  width: 68px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: 12px -12px auto auto;
}
.header .global-nav__list__item::after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: #fff;
  position: absolute;
  inset: 0 0 auto auto;
}
@media (width > 1199px) {
  .header .global-nav__list__item {
    color: #1b1464;
    flex-direction: row;
    align-items: center;
    padding: 0;
  }
  .header .global-nav__list__item::before {
    content: none;
  }
  .header .global-nav__list__item::after {
    content: none;
  }
}
.header .global-nav__list__item a {
  color: #fff;
}
@media (width > 1199px) {
  .header .global-nav__list__item a {
    color: #1b1464;
  }
}
.header .global-nav__list__item.has-arrow {
  position: relative;
}
@media (width > 1199px) {
  .header .global-nav__list__item.has-arrow {
    gap: clamp(9px, 0.61vw + 2.906px, 11.23px);
  }
}
@media (width > 1199px) {
  .header .global-nav__list__item.has-arrow::before {
    content: none;
  }
  .header .global-nav__list__item.has-arrow::after {
    content: "";
    display: block;
    width: clamp(9px, 0.61vw + 2.906px, 11.23px);
    aspect-ratio: 1.7492307692;
    background: url(../img/global/header/nav-arrow.svg) no-repeat center/cover;
    position: static;
  }
}
.header .global-nav__list__item.has-arrow .local-nav {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 20px;
  margin-top: 27px;
  font-size: 16px;
  text-wrap: nowrap;
}
@media (width > 1199px) {
  .header .global-nav__list__item.has-arrow .local-nav {
    align-items: stretch;
    margin-top: 0;
    position: absolute;
    inset: auto auto 0 0;
    width: 180%;
    width: -moz-fit-content;
    width: fit-content;
    transform: translate(0, 100%);
    background-color: #fff;
    padding: 20px 20px 10px 20px;
    box-shadow: rgba(1, 32, 69, 0.1647058824) 0 10px 10px;
    font-size: 12px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.3s;
  }
}
@media (width > 1199px) {
  .header .global-nav__list__item.has-arrow:hover .local-nav {
    opacity: 1;
    visibility: visible;
  }
}
.header .global-nav__list__item.sp-hidden {
  display: none;
}
@media (width > 1199px) {
  .header .global-nav__list__item.sp-hidden {
    display: block;
  }
}
.header .global-nav .entry-btn {
  display: none;
}
@media (width > 1199px) {
  .header .global-nav .entry-btn {
    display: grid;
  }
}
.header .global-nav .sub-nav {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
@media (width > 1199px) {
  .header .global-nav .sub-nav {
    display: none;
  }
}
.header .global-nav .sub-nav > a {
  color: #fff;
}
.header .global-nav .sub-nav .corp-site {
  margin-bottom: 40px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.header .global-nav .sub-nav .corp-site::after {
  content: "";
  display: block;
  width: 19.24px;
  height: 17.1px;
  background: url(../img/global/icon/target_blank-white.svg) no-repeat center/cover;
}
.header .global-nav .sub-nav .kensin-logo {
  width: 318px;
  margin-bottom: 20px;
}
.header .global-nav .sub-nav .privacy-policy {
  font-size: 17px;
  display: block;
  margin: 0 auto;
  text-decoration: underline;
}
.header .burger-btn {
  width: 41.37px;
  height: 25.71px;
  position: relative;
  z-index: 10;
  pointer-events: auto;
}
@media (width > 1199px) {
  .header .burger-btn {
    display: none;
  }
}
.header .burger-btn > span {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #fff;
  position: absolute;
  inset: 50% 0 auto auto;
  translate: 0 -50%;
  transition: all 0.3s;
  box-shadow: rgba(1, 32, 69, 0.3294117647) 0 0 6px;
}
.header .burger-btn > span:first-child {
  width: 33.3%;
  top: 0;
}
.header .burger-btn > span:nth-child(2) {
  width: 68%;
}
.header .burger-btn > span:last-child {
  top: 100%;
}
.header .burger-btn.is_active span:first-child {
  width: 100%;
  top: 50%;
  rotate: 390deg;
}
.header .burger-btn.is_active span:nth-child(2) {
  opacity: 0;
}
.header .burger-btn.is_active span:last-child {
  top: 50%;
  rotate: -390deg;
}

/* バーガーオープン時のロゴの色変更 */
.logo:has(+ .global-nav.is_active) a svg path#logo-path01 {
  fill: #fff;
}
.logo:has(+ .global-nav.is_active) a svg path#logo-path02 {
  fill: #fff;
}

/****** footer ******/
.footer {
  padding: clamp(66px, 1.01vw + 62.212px, 76px) 0 clamp(14px, 1.01vw + 10.213px, 24px);
  background-color: #fff;
}
.footer__content {
  display: flex;
  flex-direction: column;
  margin-bottom: clamp(21px, 1.72vw + 14.55px, 38px);
}
@media (width > 767px) {
  .footer__content {
    flex-direction: row;
    justify-content: space-between;
  }
}
.footer__content__item {
  display: contents;
}
@media (width > 767px) {
  .footer__content__item {
    display: block;
  }
}
.footer__content__item .footer__logo {
  width: 276px;
  margin-bottom: 60px;
}
@media (width > 767px) {
  .footer__content__item .footer__logo {
    width: 226px;
    margin-bottom: 107px;
  }
}
.footer__content__item .info-btn {
  font-weight: bold;
  font-size: 17px;
  color: #1b1464;
  order: 1;
  margin-bottom: 20px;
  display: block;
}
@media (width > 767px) {
  .footer__content__item .info-btn {
    order: 0;
    margin-bottom: 20px;
  }
}
.footer__content__item .corp-site {
  order: 2;
  margin-bottom: 49px;
  color: #1b1464;
  font-size: 17px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: bold;
}
@media (width > 767px) {
  .footer__content__item .corp-site {
    order: 0;
    margin-bottom: 20px;
  }
}
.footer__content__item .corp-site::after {
  content: "";
  display: block;
  width: 19.24px;
  height: 17.1px;
  background: url(../img/global/icon/target_blank.svg) no-repeat center/cover;
}
.footer__content__item .privacy-policy {
  display: block;
  order: 4;
  text-decoration: underline;
  text-align: center;
  font-size: clamp(12px, 0.1vw + 11.625px, 13px);
  color: #1b1464;
  font-weight: bold;
}
@media (width > 767px) {
  .footer__content__item .privacy-policy {
    order: 0;
    text-decoration: none;
    text-align: left;
  }
}
.footer__content__item .footer__nav {
  color: #1b1464;
  margin-bottom: 68px;
  font-weight: bold;
}
@media (width > 767px) {
  .footer__content__item .footer__nav {
    margin-bottom: 100px;
  }
}
.footer__content__item .footer__nav a {
  color: #1b1464;
}
.footer__content__item .footer__nav > ul {
  display: flex;
  flex-direction: column;
  gap: 58px 80px;
  font-size: 21px;
  line-height: 1;
}
@media (width > 1199px) {
  .footer__content__item .footer__nav > ul {
    flex-direction: row;
    font-size: 18px;
  }
}
.footer__content__item .footer__nav > ul > li {
  padding: 21px 0 0 25px;
  position: relative;
}
.footer__content__item .footer__nav > ul > li::before {
  /* 縦線 */
  content: "";
  display: block;
  width: 1px;
  height: calc(100% + 18px);
  background-color: #012045;
  position: absolute;
  inset: 0 auto auto 10px;
}
.footer__content__item .footer__nav > ul > li::after {
  /* 横線 */
  content: "";
  display: block;
  width: 68.74px;
  height: 1px;
  background-color: #012045;
  position: absolute;
  inset: 10px auto auto 0;
}
.footer__content__item .footer__nav > ul > li .local-nav {
  margin-top: 30px;
  font-size: 16px;
}
@media (width > 767px) {
  .footer__content__item .footer__nav > ul > li .local-nav {
    margin-top: 25px;
    font-size: 14px;
  }
}
.footer__content__item .footer__nav > ul > li .local-nav li:not(:last-child) {
  margin-bottom: 28px;
}
@media (width > 767px) {
  .footer__content__item .footer__nav > ul > li .local-nav li:not(:last-child) {
    margin-bottom: 17px;
  }
}
.footer__content__item .kensin-logo {
  width: 318px;
  margin: 0 auto 49px;
  order: 2;
}
@media (width > 767px) {
  .footer__content__item .kensin-logo {
    width: 238px;
    margin: 0 0 0 auto;
    order: 0;
  }
}
.footer .copy {
  color: #012045;
  text-align: center;
  font-size: clamp(9px, 0.4vw + 7.5px, 13px);
}

/****** front-page ******/
/* main-visual */
.home .main-visual {
  width: 100%;
  height: 100vh;
  display: flex;
  flex-direction: column;
  background: url(../img/page/home/mv/mv-bg.jpg) no-repeat center/cover;
  position: relative;
}
@media (width > 767px) {
  .home .main-visual {
    height: 91vh;
  }
}
@media (width > 1367px) {
  .home .main-visual {
    height: 94vh;
  }
}
.home .main-visual .mv-img1 {
  width: 76vw;
  aspect-ratio: 2.0342465753;
  margin-bottom: 30px;
  transition: all 1s;
}
@media (width > 767px) {
  .home .main-visual .mv-img1 {
    width: min(46vw, 634px);
    height: 40vh;
    margin-bottom: clamp(50px, 1.81vw + 25.275px, 60px);
  }
}
.home .main-visual .mv-img1 img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: right bottom;
  object-position: right bottom;
}
.home .main-visual .site-title {
  width: min(93%, 1256px);
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
@media (width > 767px) {
  .home .main-visual .site-title {
    width: -moz-fit-content;
    width: fit-content;
    margin-bottom: clamp(60px, 2.17vw + 30.358px, 72px);
    position: absolute;
    inset: 20vh 40px auto auto;
  }
  .home .main-visual .site-title::after {
    content: "";
    display: block;
    width: 100%;
    max-height: 40.42px;
    aspect-ratio: 10.625;
    position: absolute;
    inset: auto auto -35px 0;
    z-index: -1;
    background: url(../img/page/home/mv/title-marker.svg) no-repeat center right/cover;
    translate: -100% 0;
    opacity: 0;
    transition:
      opacity 1s,
      translate 1s 0.1s;
  }
}
@media (width > 767px) and (height < 999px) {
  .home .main-visual .site-title::after {
    content: none;
  }
}
@media (width > 767px) {
  .home .main-visual .site-title.is_show::after {
    translate: 0;
    opacity: 1;
  }
}
@media (width > 999px) {
  .home .main-visual .site-title {
    width: min(93%, 1256px);
    position: relative;
    inset: auto;
  }
  .home .main-visual .site-title::after {
    content: "";
    width: 42vw;
    inset: auto auto -35px calc((min(90vw, 1256px) - 100vw) / 2);
  }
}
@media (width > 1599px) {
  .home .main-visual .site-title {
    width: min(93%, 1500px);
  }
  .home .main-visual .site-title::after {
    width: 50vw;
  }
}
.home .main-visual .site-title img {
  width: clamp(284.86px, 17.26vw + 220.135px, 455.91px);
}
@media (width > 767px) {
  .home .main-visual .site-title img {
    width: 60vw;
  }
}
@media (width > 999px) {
  .home .main-visual .site-title img {
    width: clamp(284.86px, 17.26vw + 220.135px, 455.91px);
  }
}
@media (width > 1599px) {
  .home .main-visual .site-title img {
    width: 33vw;
  }
}
.home .main-visual .site-title img {
  translate: -10% 0;
  opacity: 0;
  transition:
    opacity 1s 1s,
    translate 1s 1.1s;
}
.home .main-visual .site-title.is_show img {
  translate: 0;
  opacity: 1;
}
.home .main-visual .mv-img2 {
  width: 92vw;
  align-self: flex-end;
  /* 
  ↓画像に戻した時ようにとっておく
  aspect-ratio: 1.6625792024;
  */
  aspect-ratio: 1.8774193548;
  position: relative;
  inset: -10px auto auto auto;
  margin-bottom: min(7vh - 10px, 54px);
  transition: all 1s 0.5s;
}
@media (width > 767px) {
  .home .main-visual .mv-img2 {
    position: absolute;
    inset: auto 0 -4vh auto;
    margin-bottom: 0;
  }
}
@media (width > 767px) and (height < 999px) {
  .home .main-visual .mv-img2 {
    height: 58vh;
  }
}
@media (width > 999px) {
  .home .main-visual .mv-img2 {
    width: 61vw;
    height: auto;
    max-height: 81%;
    inset: auto 0 -4vh auto;
    transform: translate(0);
  }
}
/* ↓画像に戻した時ようにとっておく
.home .main-visual .mv-img2 img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: left top;
  object-position: left top;
}
*/

/* videoの場合 */
.home .main-visual .mv-img2 video {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-mask: url(../video/mv/mask.webp) no-repeat left center/cover;
  mask: url(../video/mv/mask.webp) no-repeat left center/cover;
}
.home .main-visual .mv-img2::before {
  content: "";
  display: block;
  width: min(76.78%, 635px);
  width: 76%;
  aspect-ratio: 1.3894967177;
  position: absolute;
  inset: calc(clamp(38px, 2.02vw + 30.425px, 58px) * -1) 0 auto auto;
  background: url(../video/mv/mask-bg.png) no-repeat top left/contain;
}
/* videoの場合ここまで */

.home .main-visual .mv-text {
  width: min(93%, 1256px);
  margin: 0 auto;
  color: transparent;
  font-size: clamp(16px, 0.2vw + 15.25px, 18px);
  position: relative;
  z-index: 1;
  transition: all 1s 0.5s;
}
@media (width > 1599px) {
  .home .main-visual .mv-text {
    width: min(93%, 1500px);
    font-size: clamp(18px, 1.87vw - 11.901px, 24px);
  }
}
.home .main-visual .mv-text::before {
  content: "";
  display: block;
  width: 87vw;
  max-height: 32px;
  aspect-ratio: 10.625;
  background: url(../img/page/home/mv/title-marker.svg) no-repeat center right/cover;
  margin: 0 0 22px calc(50% - 50vw);
  translate: -100% 0;
  opacity: 0;
  transition:
    opacity 1s,
    translate 1s 0.1s;
}
@media (width > 767px) {
  .home .main-visual .mv-text::before {
    content: none;
  }
}
.home .main-visual .mv-text.is_show {
  color: #fff;
}
.home .main-visual .mv-text.is_show::before {
  translate: 0;
  opacity: 1;
}

/* infomation */
.home .infomation {
  background-color: #edf6ff;
  padding: clamp(51px, 2.12vw + 43.05px, 72px) 0 clamp(54px, 0.61vw + 51.712px, 60px);
}
.home .infomation .inner {
  display: flex;
  flex-direction: column;
  gap: 48px 6vw;
}
@media (width > 767px) {
  .home .infomation .inner {
    flex-direction: row;
  }
}
@media (width > 1599px) {
  .home .infomation .inner {
    flex-direction: row;
    width: min(93%, 1500px);
  }
}
.home .infomation__list {
  margin-bottom: 65px;
}
@media (width > 767px) {
  .home .infomation__list {
    margin-bottom: 40px;
  }
}
.home .infomation__list li:not(:last-child) {
  margin-bottom: 28px;
}
@media (width > 767px) {
  .home .infomation__list li:not(:last-child) {
    margin-bottom: 12px;
  }
}
.home .infomation__list li a {
  display: flex;
  flex-direction: column;
  gap: 2px 7vw;
}
@media (width > 767px) {
  .home .infomation__list li a {
    flex-direction: row;
  }
}

.home .infomation .section-title {
  font-size: clamp(28px, 0.91vw + 24.587px, 37px);
  color: #1b1464;
}
.home .infomation .section-title span {
  display: block;
  font-size: 16px;
  margin-top: 10px;
}

/* about */
.home .about {
  padding: clamp(86px, 2.52vw + 76.55px, 111px) 0 330px;
  background: url(../img/page/home/about/about-bg.webp) no-repeat center/cover;
  color: #fff;
  position: relative;
  isolation: isolate;
}
.home .about::before {
  content: "";
  display: block;
  width: clamp(320px, 68.11vw + 64.587px, 587px);
  aspect-ratio: 0.9483037157;
  background: url(../img/page/home/about/about-img01.webp) no-repeat right top/contain;
  /* 	background: url(../img/page/home/about/about-img01.webp) no-repeat center top/cover; */
  position: absolute;
  inset: clamp(40px, 11.4vw - 2.75px, 153px) 0 auto auto;
  z-index: -1;
}
.home .about::after {
  content: "";
  display: block;
  width: clamp(282px, 55.1vw + 75.375px, 498px);
  aspect-ratio: 0.9483037157;
  background: url(../img/page/home/about/about-img02.webp) no-repeat left top/contain;
  position: absolute;
  inset: auto auto 0 0;
  z-index: -1;
}
@media (width > 767px) {
  .home .about {
    padding-bottom: 203px;
  }
}
@media (width > 767px) {
  .home .about .inner {
    padding-left: 2vw;
  }
}
@media (width > 1599px) {
  .home .about .inner {
    width: min(93%, 1500px);
  }
}
.home .about__header {
  display: flex;
  flex-direction: column;
  gap: 85.4px 54px;
  margin-bottom: clamp(152px, 5.95vw + 129.688px, 211px);
}
@media (width > 767px) {
  .home .about__header {
    width: 45vw;
    flex-direction: row;
  }
}
.home .about__header__text {
  width: 84%;
  margin: 0 auto;
}
@media (width > 767px) {
  .home .about__header__text {
    width: auto;
    margin: 0;
  }
}
.home .about__header__text__title {
  font-size: 22px;
  line-height: 1.2;
  margin-bottom: 40px;
}
@media (width > 767px) {
  .home .about__header__text__title {
    font-size: 21px;
  }
}
.home .about__header__text__para {
  line-height: 2.3;
}
.home .about__header__text .c-btn-outline {
  width: min(100%, 304px);
  margin-top: clamp(24px, 3.23vw + 11.887px, 56px);
}
@media (width > 767px) {
  .home .about__body__section.vision {
    margin-left: auto;
  }
}
.home .about__body__section:not(:last-child) {
  margin-bottom: clamp(140px, 1.61vw + 133.963px, 156px);
}
@media (width > 767px) {
  .home .about__body__section {
    width: 51vw;
  }
}
.home .about__body__section__title {
  margin-bottom: clamp(34.7px, 1.04vw + 30.8px, 45px);
  line-height: 1.2;
  font-size: clamp(22px, 1.01vw + 18.212px, 32px);
  position: relative;
}
.home .about__body__section__title::before {
  content: "";
  display: block;
  position: absolute;
}
.home .about__body__section__title.mission-title::before {
  width: clamp(326px, 36.93vw + 187.512px, 692px);
  aspect-ratio: 4.0866238318;
  background: url(../img/page/home/about/mission-title.svg) no-repeat center/cover;
  inset: auto auto -10px -6px;
}
@media (width > 767px) {
  .home .about__body__section__title.mission-title::before {
    inset: auto auto -11px -5px;
  }
}
@media (width > 1599px) {
  .home .about__body__section__title.mission-title::before {
    width: 51vw;
  }
}
.home .about__body__section__title.vision-title::before {
  width: clamp(262px, 29.77vw + 150.363px, 557px);
  aspect-ratio: 3.2369942197;
  background: url(../img/page/home/about/vision-title.svg) no-repeat center/cover;
  inset: auto auto 20px -10px;
}
@media (width > 767px) {
  .home .about__body__section__title.vision-title::before {
    inset: auto auto 20px -10px;
  }
}
@media (width > 1599px) {
  .home .about__body__section__title.vision-title::before {
    width: 41vw;
  }
}
.home .about__body__section__text {
  line-height: 2.3;
}

.home .about .section-title {
  width: 16px;
  flex-shrink: 0;
}
@media (width > 767px) {
  .home .about .section-title {
    margin-top: -36px;
  }
}

/* what we do */
.home .wwd {
  background: linear-gradient(45deg, #fafdff, #dfecfd);
  padding: clamp(25.2px, 9.77vw - 11.437px, 122px) 0 71px;
  position: relative;
  isolation: isolate;
}
.home .wwd::after {
  content: "";
  display: block;
  width: clamp(216px, 9.59vw + 180.037px, 311px);
  aspect-ratio: 3.019417;
  background: url(../img/page/home/wwd/wwd-bg.svg) no-repeat center right/cover;
  position: absolute;
  inset: auto auto 106px 0;
  z-index: -1;
}
@media (width > 767px) {
  .home .wwd::after {
    bottom: 42px;
  }
}
@media (width > 767px) {
  .home .wwd {
    padding-bottom: 48px;
  }
}
.home .wwd__content {
  display: flex;
  flex-direction: column;
  gap: 33.2px 0;
  position: relative;
}
@media (width > 767px) {
  .home .wwd__content {
    flex-direction: row;
    justify-content: space-between;
  }
}
.home .wwd__content .section-title {
  height: 381.57px;
  display: flex;
  gap: 0 7px;
  position: relative;
  /* 横の線 */
}
.home .wwd__content .section-title::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #012045;
  position: absolute;
  inset: 60px auto auto 0;
  transition: all 0.8s 0.1s;
}
.home .wwd__content .section-title img {
  width: 36px;
  height: 341px;
  transform: translate(21px, 0);
  padding-top: 72px;
  transition: all 0.8s 0.4s;
  opacity: 0;
}
.home .wwd__content .section-title span {
  font-size: 16px;
  color: transparent;
  display: block;
  position: relative;
  padding: 72px 0 0 33px;
  transition: color 0.8s 0.5s;
  /* 縦の線 */
}
.home .wwd__content .section-title span::before {
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #012045;
  position: absolute;
  inset: 0 auto auto 21px;
  transition: all 0.8s;
}
.home .wwd__content .section-title.is_show::before {
  width: 178.09px;
}
.home .wwd__content .section-title.is_show img {
  opacity: 1;
}
.home .wwd__content .section-title.is_show span {
  color: #012045;
}
.home .wwd__content .section-title.is_show span::before {
  height: 100%;
}
.home .wwd__content__container {
  width: 78vw;
  margin: 0 auto;
}
@media (width > 767px) {
  .home .wwd__content__container {
    width: min(67vw, 914px);
    padding-top: 60px;
    margin: 0;
  }
}
.home .wwd__content__container__text {
  width: 74vw;
  position: absolute;
  inset: 126.3px auto auto 72px;
}
@media (width > 767px) {
  .home .wwd__content__container__text {
    width: auto;
    position: static;
    margin-bottom: 40px;
  }
}
.home .wwd__content__container__text p {
  text-align: justify;
  font-size: clamp(12px, 0.2vw + 11.25px, 14px);
}
.home .wwd__content__container__list {
  display: flex;
  flex-direction: column;
  gap: 53px 48px;
  isolation: isolate;
  margin-bottom: 100px;
}
@media (width > 767px) {
  .home .wwd__content__container__list {
    flex-direction: row;
  }
}
.home .wwd__content__container__list__item {
  flex: 1;
  position: relative;
}
.home .wwd__content__container__list__item:last-child {
  transition-delay: 0.3s;
}
.home .wwd__content__container__list__item .job-category {
  font-size: clamp(17px, 0.81vw + 13.963px, 25px);
  color: #fff;
  font-weight: 500;
  position: absolute;
  inset: auto auto clamp(15px, 0.5vw + 13.125px, 20px) clamp(15px, 0.5vw + 13.125px, 20px);
  z-index: 1;
}
.home .wwd__content__container__list__item .job-category span {
  font-size: clamp(12px, 0.61vw + 9.713px, 18px);
  margin-right: 7px;
}
.home .wwd__content__container__list__item img {
  display: block;
  transform: translate(-8px, 0);
  filter: brightness(0.6);
}
.home .wwd__content__container__list__item::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0 auto auto 0;
  background: url(../img/page/home/wwd/wwd-img-bg.jpg) no-repeat center/cover;
  z-index: -1;
  transform: translate(9px, 16px);
}
.home .wwd__content__container .c-btn-outline {
  margin: 0 auto;
}

/* data */
.home .data {
  margin-bottom: clamp(156px, 5.15vw + 136.688px, 207px);
  position: relative;
  isolation: isolate;
  overflow-x: clip;
}
.home .data::after {
  content: "";
  display: block;
  width: 110vw;
  aspect-ratio: 0.8309455587;
  background: url(../img/page/home/data/data-bg.svg) no-repeat top right/cover;
  position: absolute;
  inset: auto auto 0 0;
  z-index: -1;
}
@media (width > 767px) {
  .home .data::after {
    width: min(21vw, 290px);
  }
}
.home .data__header {
  position: relative;
  left: clamp(-21px, -5.36vw + 20.09px, 0px);
}
.home .data__header .section-title {
  height: 229.19px;
  font-size: 32px;
  color: #fff;
  position: relative;
}
.home .data__header .section-title span {
  display: block;
  padding: 0 0 0 33px;
  translate: -20px 0;
  opacity: 0;
}
.home .data__header .section-title span:first-child {
  padding-top: 20px;
  margin-bottom: 26px;
  letter-spacing: 0.2em;
  transition:
    opacity 0.3s 0.3s,
    translate 0.3s 0.4s;
  /* 横線 */
}
.home .data__header .section-title span:first-child::after {
  content: "";
  display: block;
  width: 178.09px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: 60px auto auto 0;
}
.home .data__header .section-title span:last-child {
  font-size: 16px;
  font-weight: normal;
  transition:
    opacity 0.3s 0.4s,
    translate 0.3s 0.5s;
}
.home .data__header .section-title {
  /* 縦線 */
}
.home .data__header .section-title::before {
  content: "";
  display: block;
  background-color: #fff;
  width: 1px;
  height: 0;
  position: absolute;
  inset: 0 auto auto 21px;
  transition: all 0.8s;
}
.home .data__header .section-title.is_show::before {
  height: 100%;
}
.home .data__header .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.home .data__header .section-title {
  margin-bottom: 140px;
}
@media (width > 767px) {
  .home .data__header .section-title {
    margin-bottom: 80px;
  }
}
.home .data__header__text {
  width: 81vw;
  font-size: clamp(12px, 0.2vw + 11.25px, 14px);
  line-height: 2;
  text-align: justify;
  color: #fff;
  position: absolute;
  inset: 150px auto auto 33px;
}
@media (width > 767px) {
  .home .data__header__text {
    top: 126px;
  }
}
.home .data__list {
  width: 74vw;
  min-height: 303.39px;
  margin: 0 auto;
  display: grid;
  grid-template-rows: repeat(8, 303.39px);
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 30px;
}
@media (width > 662px) {
  .home .data__list {
    grid-template-rows: auto;
  }
}
@media (width > 767px) {
  .home .data__list {
    width: auto;
    margin: 0;
    gap: 60px 30px;
  }
}
.home .data__list__item {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  padding: 42.2px 0 25.5px;
  position: sticky;
  top: 80px;
  box-shadow: rgba(1, 32, 69, 0.4784313725) 0 2px 10px;
  color: #1b1464;
  opacity: 0;
  translate: 0 20px;
  transition: all 0.8s;
}
@media (width > 662px) {
  .home .data__list__item {
    position: static;
    box-shadow: none;
  }
}
.home .data__list__item:first-child {
  transition-delay: 0;
}
.home .data__list__item:first-child .data-icon {
  width: 145.14px;
  height: 94.21px;
}
.home .data__list__item:nth-child(2) {
  transition-delay: 0.1s;
}
.home .data__list__item:nth-child(2) .data-icon {
  width: 126.59px;
  height: 97.01px;
}
.home .data__list__item:nth-child(3) {
  transition-delay: 0.2s;
}
.home .data__list__item:nth-child(3) .data-icon {
  width: 134px;
  height: 83.61px;
}
.home .data__list__item:nth-child(4) {
  transition-delay: 0.3s;
}
.home .data__list__item:nth-child(4) .data-icon {
  width: 126.53px;
  height: 95.44px;
}
.home .data__list__item:nth-child(5) {
  transition-delay: 0.4s;
}
.home .data__list__item:nth-child(5) .data-icon {
  width: 142.39px;
  height: 103.89px;
}
.home .data__list__item:nth-child(6) {
  transition-delay: 0.5s;
}
.home .data__list__item:nth-child(6) .data-icon {
  width: 125.43px;
  height: 98.5px;
}
.home .data__list__item:nth-child(7) {
  transition-delay: 0.6s;
}
.home .data__list__item:nth-child(7) .data-icon {
  width: 118.39px;
  height: 107.27px;
}
.home .data__list__item:last-child {
  transition-delay: 0.7s;
}
.home .data__list__item:last-child .data-icon {
  width: 88.67px;
  height: 90.41px;
}
.home .data__list__item h3 {
  font-size: 20px;
  text-align: center;
}
.home .data__list__item h3 span {
  margin-top: 10px;
  display: block;
  font-size: 18px;
  font-weight: normal;
}
.home .data__list__item p {
  font-size: 55px;
  font-weight: bold;
  display: flex;
  align-items: flex-end;
}
.home .data__list__item p span {
  font-size: 29px;
  font-weight: normal;
  display: block;
  transform: translate(0, calc((1cap - 5px) * -1));
}
.home .data__list.is_show .data__list__item {
  opacity: 1;
  translate: 0;
}

/* peaple */
.home .peaple {
  margin-bottom: clamp(89px, 2.93vw + 78.013px, 118px);
}
@media (width > 767px) {
  .home .peaple {
    position: relative;
    isolation: isolate;
  }
  .home .peaple::after {
    content: "";
    display: block;
    width: min(42vw, 575px);
    aspect-ratio: 0.5470980019;
    background: url(../img/page/home/peaple/peaple-bg.svg) no-repeat top left/cover;
    position: absolute;
    inset: 50% 0 auto auto;
    transform: translate(0, -50%);
    z-index: -1;
  }
}
.home .peaple__header {
  display: flex;
  flex-direction: column;
  margin-bottom: 93px;
}
@media (width > 767px) {
  .home .peaple__header {
    margin-bottom: 54px;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 50px;
  }
}
.home .peaple__header .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.home .peaple__header .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.home .peaple__header .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.home .peaple__header .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.home .peaple__header .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.home .peaple__header .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.home .peaple__header .section-title.is_show::before {
  height: 100%;
}
.home .peaple__header .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.home .peaple__header .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.home .peaple__header .section-title {
  margin-bottom: 47px;
  margin-left: calc(clamp(0px, 2.93vw - 10.988px, 29px) * -1);
}
@media (width > 767px) {
  .home .peaple__header .section-title {
    margin-bottom: 0;
  }
}
.home .peaple__header__text {
  color: #fff;
  font-size: clamp(12px, 0.2vw + 11.25px, 14px);
  text-align: justify;
}
@media (width > 767px) {
  .home .peaple__header__text {
    width: min(53vw, 726.75px);
  }
}
.home .peaple__content {
  margin-bottom: clamp(38px, 6.86vw + 12.275px, 106px);
}
.home .peaple__content .slide-item > a {
  position: relative;
}
.home .peaple__content .slide-item > a .cat {
  color: #fff;
  font-weight: bold;
  writing-mode: vertical-lr;
  letter-spacing: 0.3em;
  line-height: 1;
  position: absolute;
  inset: clamp(17px, 0.61vw + 14.713px, 23px) auto auto clamp(12px, 0.5vw + 10.125px, 17px);
  text-shadow: rgba(1, 32, 69, 0.5215686275) 0 0 2px;
}
.home .peaple__content .slide-item > a .profile {
  position: absolute;
  inset: auto auto clamp(20px, 1.01vw + 16.212px, 30px) clamp(15px, 0.5vw + 13.125px, 20px);
  background-color: #fff;
  padding: 9px 9px 11px 9px;
  line-height: 1;
}
.home .peaple__content .slide-item > a .profile .affiliation {
  font-size: clamp(12px, 0.2vw + 11.25px, 14px);
  margin-bottom: 8px;
}
.home .peaple__content .slide-item > a .profile .staff-name {
  font-size: clamp(16px, 0.2vw + 15.25px, 18px);
  display: flex;
  gap: 0.5em;
}
.home .peaple .c-btn-outline {
  margin: 0 auto;
}

/* recruit story */
.home .recruit-story .section-title {
  width: 88%;
  margin: 0 auto 78.5px;
}
@media (width > 767px) {
  .home .recruit-story .section-title {
    width: 100%;
    margin-bottom: 0;
  }
}
.home .recruit-story .video-list__item {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 54px 58px;
}
@media (width > 767px) {
  .home .recruit-story .video-list__item {
    flex-direction: row-reverse;
  }
}
.home .recruit-story .video-list__item:not(:last-child) {
  margin-bottom: 90px;
}
@media (width > 767px) {
  .home .recruit-story .video-list__item:not(:last-child) {
    margin-bottom: 32px;
  }
}
.home .recruit-story .video-list__item__text {
  color: #fff;
  flex: 1;
}
.home .recruit-story .video-list__item__text__title {
  font-size: clamp(27px, 0.5vw + 25.125px, 32px);
  margin-bottom: clamp(34px, 1.01vw + 30.212px, 44px);
  line-height: 1.2;
}
.home .recruit-story .video-list__item__text__title span {
  font-size: clamp(12px, 0.4vw + 10.5px, 16px);
  display: block;
}
.home .recruit-story .video-list__item__text__title span.video-sub-title {
  margin-bottom: 8px;
}
.home .recruit-story .video-list__item__text__title span.type-interviewee {
  display: block;
  font-size: clamp(12px, 0.4vw + 10.5px, 16px);
  margin-top: 8px;
}
.home .recruit-story .video-list__item__text p {
  font-size: clamp(13px, 0.1vw + 12.625px, 14px);
}
.home .recruit-story .video-list__item__video {
  width: 100%;
  aspect-ratio: 1.777845001440507;
}
.home .recruit-story .video-list__item__video video {
  height: 100%;
  object-fit: cover;
}

@media (width > 767px) {
  .home .recruit-story .video-list__item__video {
    width: min(48vw, 656px);
  }
}

/* work-space */
.home .wok-space {
  padding: clamp(16px, 2.62vw + 6.175px, 42px) 0 70px;
  background: url(../img/global/ws-bg-sp.jpg) no-repeat center/cover;
  position: relative;
  isolation: isolate;
  opacity: 0;
  transition: all 0.5s;
}
.home .wok-space.is_show {
  opacity: 1;
}
.home .wok-space::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.44);
  position: absolute;
  inset: 0 auto auto 0;
  z-index: -1;
}
@media (width > 767px) {
  .home .wok-space {
    padding-bottom: 60px;
    background-image: url(../img/global/ws-bg-pc.webp);
  }
}
.home .wok-space__content {
  position: relative;
  margin-bottom: 52px;
}
@media (width > 767px) {
  .home .wok-space__content {
    margin-bottom: 0;
  }
}
.home .wok-space__content .section-title {
  height: 381.57px;
  display: flex;
  gap: 0 7px;
  position: relative;
  /* 横の線 */
}
.home .wok-space__content .section-title::before {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: 60px auto auto 0;
  transition: all 0.8s 0.1s;
}
.home .wok-space__content .section-title img {
  width: 36px;
  height: 348px;
  transform: translate(21px, 0);
  padding-top: 72px;
  transition: all 0.8s 0.4s;
  opacity: 0;
}
.home .wok-space__content .section-title span {
  font-size: 16px;
  color: transparent;
  display: block;
  position: relative;
  padding: 72px 0 0 33px;
  transition: color 0.8s 0.5s;
  /* 縦の線 */
}
.home .wok-space__content .section-title span::before {
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 0 auto auto 21px;
  transition: all 0.8s;
}
.home .wok-space__content .section-title.is_show::before {
  width: 178.09px;
}
.home .wok-space__content .section-title.is_show img {
  opacity: 1;
}
.home .wok-space__content .section-title.is_show span {
  color: #fff;
}
.home .wok-space__content .section-title.is_show span::before {
  height: 100%;
}
.home .wok-space__content__text {
  width: min(74vw, 420.75px);
  position: absolute;
  inset: 126.3px auto auto 72px;
  color: #fff;
  font-size: clamp(12px, 0.2vw + 11.25px, 14px);
}
.home .wok-space .c-btn-outline {
  margin: 0 auto;
}
@media (width > 767px) {
  .home .wok-space .c-btn-outline {
    margin: 0 0 0 auto;
  }
}

/* entry-reqs */
.home .entry-reqs {
  margin-bottom: clamp(128px, 12.41vw + 81.463px, 251px);
}
.home .entry-reqs .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.home .entry-reqs .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.home .entry-reqs .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.home .entry-reqs .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.home .entry-reqs .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.home .entry-reqs .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.home .entry-reqs .section-title.is_show::before {
  height: 100%;
}
.home .entry-reqs .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.home .entry-reqs .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.home .entry-reqs .section-title {
  margin-bottom: clamp(66px, 2.42vw + 56.925px, 90px);
}

/****** page-company ******/
.company .fv {
  isolation: isolate;
}
.company .fv .inner {
  position: relative;
}
.company .fv__img {
  aspect-ratio: 0.6495867769;
  width: 110vw;
  position: absolute;
  inset: 10vh calc(50% - 50vw) auto auto;
  z-index: -1;
}
@media (width > 767px) {
  .company .fv__img {
    aspect-ratio: 0.7792;
    width: 65vw;
  }
}
@media (width > 1599px) {
  .company .fv__img {
    width: 71vw;
  }
}
.company .fv__img img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top left;
  object-position: top left;
}

/* companyページのabout */
.company .about-us {
  color: #fff;
  margin-bottom: clamp(132px, 4.64vw + 114.6px, 178px);
}
.company .about-us .section-title {
  height: 87.57px;
  margin-bottom: 32px;
  font-size: 26px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  position: relative;
  isolation: isolate;
  color: #fff;
}
.company .about-us .section-title::before {
  content: "";
  display: block;
  width: calc(50vw - 50% + 200px);
  height: 100%;
  background: url(../img/global/title-bg.svg) no-repeat center right/cover;
  position: absolute;
  inset: 0 auto auto calc(50% - 50vw);
  z-index: -1;
}
@media (width > 1599px) {
  .company .about-us .section-title::before {
    width: calc(50vw - 50% + 230px);
  }
}
.company .about-us .section-title span {
  font-size: clamp(14px, 0.2vw + 13.25px, 16px);
}
.company .about-us__content {
  margin-bottom: clamp(74px, 6.34vw + 50.225px, 136.8px);
}
.company .about-us__content.add-graph {
  display: flex;
  flex-direction: column-reverse;
  gap: 140px 40px;
  margin-bottom: 0;
}
@media (width > 767px) {
  .company .about-us__content.add-graph {
    flex-direction: row;
    align-items: center;
  }
}
.company .about-us__content__text {
  max-width: 690px;
}
.company .about-us__content__text h3 {
  font-size: clamp(24px, 0.81vw + 20.962px, 32px);
  margin-bottom: 28px;
  line-height: 1.45;
}
.company .about-us__content__text p {
  font-size: 15px;
  text-align: justify;
}
.company .about-us__content__graph {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  gap: 28px 0;
}
@media (width > 767px) {
  .company .about-us__content__graph {
    flex-direction: column;
  }
}
.company .about-us__content__graph figcaption {
  font-size: clamp(18px, 0.71vw + 15.338px, 25px);
}

/* perspective */
.company .perspective .section-title {
  width: min(100%, 1148px);
  margin: 0 auto clamp(63px, 0.5vw + 61.125px, 68px);
  color: #fff;
  position: relative;
}
.company .perspective .section-title span {
  width: 100%;
  text-align: center;
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -10%);
  font-size: clamp(16px, 1.61vw + 9.963px, 32px);
}
@media (width > 767px) {
  .company .perspective .section-title span {
    transform: translate(-50%, -50%);
  }
}
.company .perspective__message {
  font-size: clamp(11px, 0.91vw + 7.588px, 20px);
  color: #fff;
  text-align: center;
  line-height: 4.6;
}
@media (width > 767px) {
  .company .perspective__message {
    line-height: 2;
  }
}

/* culture */
.company .culture {
  padding: 114px 0 clamp(77px, 6.76vw + 51.65px, 144px);
  position: relative;
  isolation: isolate;
}
@media (width > 767px) {
  .company .culture {
    padding-top: 88px;
  }
}
.company .culture .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.company .culture .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.company .culture .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.company .culture .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.company .culture .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.company .culture .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.company .culture .section-title.is_show::before {
  height: 100%;
}
.company .culture .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.company .culture .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.company .culture .section-title {
  margin-bottom: 87px;
}
@media (width > 767px) {
  .company .culture .section-title {
    margin-bottom: 75px;
  }
}
.company .culture__text {
  color: #fff;
  margin-bottom: 840px;
}
@media (width > 767px) {
  .company .culture__text {
    margin-bottom: calc(50vh + 240px);
  }
}
@media (width > 767px) and (height > 799px) {
  .company .culture__text {
    margin-bottom: calc(60vh + 240px);
  }
}
@media (width > 1499px) {
  .company .culture__text {
    margin-bottom: calc(100vh + 248px);
  }
}
.company .culture__text h3 {
  line-height: 1.5;
  font-size: clamp(18px, 1.41vw + 12.713px, 32px);
  margin-bottom: 90px;
}
@media (width > 767px) {
  .company .culture__text h3 {
    margin-bottom: 58px;
  }
}
.company .culture__text p:not(:last-child) {
  margin-bottom: clamp(45px, 1.21vw + 40.462px, 57px);
}
@media (width > 767px) {
  .company .culture__feature {
    padding-left: 15vw;
  }
}
.company .culture__feature__list {
  display: flex;
  flex-direction: column;
  gap: 80px 0;
  color: #012045;
}
@media (width > 767px) {
  .company .culture__feature__list {
    gap: 70px 0;
  }
}
.company .culture__feature__list > li h4 {
  font-size: clamp(36px, 1.41vw + 30.712px, 50px);
  margin-bottom: 47px;
  position: relative;
  isolation: isolate;
}
@media (width > 767px) {
  .company .culture__feature__list > li h4 {
    margin-bottom: 40px;
  }
}
.company .culture__feature__list > li h4 .cul-feature-title {
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  inset: auto auto -0.35cap 0;
}
@media (width > 767px) {
  .company .culture__feature__list > li h4 .cul-feature-title {
    left: 1cap;
  }
}
.company .culture__feature__list > li .sub-list {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.company .culture__feature__list > li .sub-list > li {
  display: flex;
  align-items: center;
  gap: 0 5px;
  font-size: clamp(12px, 0.4vw + 10.5px, 16px);
}
.company .culture__feature__list > li .sub-list > li > span {
  flex: 1;
}
.company .culture__feature__list > li .sub-list > li::before {
  content: "";
  display: block;
  width: 21.59px;
  aspect-ratio: 1.7682227682;
  background: url(../img/global/icon/accordion-title-icon.svg) no-repeat center/cover;
}
.company .culture .culture-bg {
  width: 100%;
  height: 79%;
  position: absolute;
  inset: auto auto 0 0;
  z-index: -1;
}
@media (width > 767px) {
  .company .culture .culture-bg {
    height: 93%;
  }
}
.company .culture .culture-bg img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center top;
  object-position: center top;
}

/* message */
.company .message {
  margin-bottom: clamp(170px, 10.09vw + 132.162px, 270px);
  padding-top: clamp(74px, 8.07vw + 43.737px, 154px);
  color: #fff;
}
.company .message .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.company .message .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.company .message .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.company .message .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.company .message .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.company .message .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.company .message .section-title.is_show::before {
  height: 100%;
}
.company .message .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.company .message .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.company .message .section-title {
  margin-bottom: 54px;
}
@media (width > 767px) {
  .company .message .section-title {
    margin-bottom: 30px;
  }
}
.company .message__content {
  display: flex;
  flex-direction: column;
  gap: 59px 79px;
}
@media (width > 767px) {
  .company .message__content {
    flex-direction: row;
  }
}
.company .message__content__item:first-child {
  display: flex;
  flex-direction: column;
}
@media (width > 767px) {
  .company .message__content__item:first-child {
    width: 38vw;
    gap: 60px;
  }
}
.company .message__content__item:first-child .ceo-name {
  display: flex;
  flex-direction: column;
  gap: 5px;
  font-size: clamp(26px, 0.61vw + 23.712px, 32px);
  letter-spacing: 0.2em;
}
.company .message__content__item:first-child .ceo-name span {
  font-size: clamp(12px, 0.4vw + 10.5px, 16px);
  letter-spacing: 0.06em;
}
.company .message__content__item:last-child {
  flex: 1;
}
.company .message__content__item:last-child p {
  font-size: clamp(14px, 0.2vw + 13.25px, 16px);
  line-height: 2.3;
  text-align: justify;
}
.company .message__content__item:last-child p:not(:last-child) {
  margin-bottom: 60px;
}
@media (width > 767px) {
  .company .message__content__item:last-child p {
    line-height: 2.6;
  }
}

/* group */
.company .group {
  margin-bottom: clamp(135px, 10.39vw + 96.037px, 238px);
  color: #fff;
  position: relative;
  isolation: isolate;
}
.company .group::before {
  content: "";
  display: block;
  width: max(9vw, 118.44px);
  aspect-ratio: 0.1692677071;
  background: url(../img/page/company/group/group-bg.svg) no-repeat center/cover;
  position: absolute;
  inset: -45px auto auto 0;
  z-index: -1;
}
@media (width > 767px) {
  .company .group::before {
    top: 40px;
  }
}
.company .group::after {
  content: "";
  display: block;
  width: min(44vw, 609px);
  aspect-ratio: 0.5838926174;
  background: url(../img/page/company/group/group-bg-peaple.webp) no-repeat center/cover;
  position: absolute;
  inset: 26vh 0 auto auto;
  z-index: -1;
}
@media (width > 767px) {
  .company .group::after {
    inset: 0 0 auto auto;
  }
}
.company .group__header {
  margin-bottom: clamp(82px, 1.21vw + 77.463px, 94px);
}
.company .group__header .section-title {
  font-size: clamp(27px, 1.21vw + 22.462px, 39px);
  margin-bottom: 20px;
  line-height: 1.4;
}
@media (width > 767px) {
  .company .group__header .section-title {
    margin-bottom: 10px;
  }
}
.company .group__header p {
  font-size: clamp(14px, 0.2vw + 13.25px, 16px);
  line-height: 1.9;
}
.company .group__list {
  max-width: 517px;
  padding-left: calc(clamp(7px, 0.61vw + 4.713px, 13px) + 35.64px);
}
.company .group__list > li:not(:last-child) {
  margin-bottom: clamp(43px, 1.21vw + 38.462px, 55px);
}
.company .group__list > li h3 {
  font-size: clamp(21px, 0.2vw + 20.25px, 23px);
  margin-bottom: clamp(15px, 1.51vw + 9.337px, 30px);
  position: relative;
}
.company .group__list > li h3::before {
  content: "";
  display: block;
  width: 35.64px;
  aspect-ratio: 1.7687344913;
  background: url(../img/global/icon/title-icon-white.svg) no-repeat center/cover;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(calc(-100% - clamp(7px, 0.61vw + 4.713px, 13px)), -50%);
}
.company .group__list > li h4 {
  font-size: 15px;
  margin-bottom: clamp(13px, 0.2vw + 12.25px, 15px);
  line-height: 1.4;
}
.company .group__list > li p {
  font-size: 12px;
}
@media (width > 767px) {
  .company .group__list > li p {
    line-height: 2.5;
  }
}
.company .group__list > li .c-btn-outline {
  width: min(100%, 393px);
  margin-top: clamp(20px, 2.02vw + 12.425px, 40px);
  padding: 16px clamp(16px, 0.61vw + 13.713px, 22px) 16px clamp(16px, 2.42vw + 6.925px, 40px);
  gap: 0;
  justify-content: space-between;
  border: 1px solid #fff;
  font-size: clamp(12px, 0.1vw + 11.625px, 13px);
}
.company .group__list > li .c-btn-outline .module-arrow {
  border-color: #fff;
}

/* overview */
.company .overview {
  margin-bottom: clamp(32px, 6.05vw + 9.313px, 92px);
}
.company .overview .section-title {
  height: 87.57px;
  margin-bottom: 32px;
  font-size: 26px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  position: relative;
  isolation: isolate;
  color: #fff;
}
.company .overview .section-title::before {
  content: "";
  display: block;
  width: calc(50vw - 50% + 200px);
  height: 100%;
  background: url(../img/global/title-bg.svg) no-repeat center right/cover;
  position: absolute;
  inset: 0 auto auto calc(50% - 50vw);
  z-index: -1;
}
@media (width > 1599px) {
  .company .overview .section-title::before {
    width: calc(50vw - 50% + 230px);
  }
}
.company .overview .section-title span {
  font-size: clamp(14px, 0.2vw + 13.25px, 16px);
}
.company .overview .section-title {
  margin-bottom: clamp(53px, 0.91vw + 49.587px, 62px);
}
.company .overview__content {
  display: flex;
  flex-direction: column;
  gap: 25px 42px;
}
@media (width > 767px) {
  .company .overview__content {
    flex-direction: row;
  }
}
.company .overview__content__list {
  flex: 1;
  color: #fff;
  font-size: clamp(11px, 0.3vw + 9.875px, 14px);
  line-height: 2.3;
}
@media (width > 767px) {
  .company .overview__content__list {
    line-height: 1.8;
  }
}
.company .overview__content__list > li {
  display: flex;
  border-bottom: 1px solid #fff;
  padding: 15px 0;
}
.company .overview__content__list > li:first-child {
  padding-top: 0;
}
.company .overview__content__list > li .label {
  width: 7em;
}
.company .overview__content__list > li .value {
  flex: 1;
}
.company .overview__content__list > li address {
  font-style: normal;
}
.company .overview__content__list > li address > a {
  color: #fff;
  pointer-events: none;
}
.company .overview__content__map {
  flex: 1;
  width: max(21vw, 300px);
  aspect-ratio: 0.8620689655;
  margin: 0 auto;
}
@media (width > 767px) {
  .company .overview__content__map {
    width: auto;
    aspect-ratio: auto;
  }
}
.company .overview__content__map iframe {
  width: 100%;
  height: 100%;
}

/****** page-service ******/
/* fv-service */
.service .fv {
  position: relative;
  isolation: isolate;
  margin-bottom: 100px;
}
.service .fv__img {
  width: clamp(362px, 40.87vw + 208.737px, 767px);
  aspect-ratio: 0.5540334855;
  position: absolute;
  inset: 0 0 auto auto;
  z-index: -1;
}
@media (width > 767px) {
  .service .fv__img {
    aspect-ratio: 0.9274486094;
  }
}
.service .fv__img img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: bottom right;
  object-position: bottom right;
}

/* service-intro */
.service .service-intro {
  margin-bottom: 125px;
  position: relative;
  z-index: 1;
}
@media (width > 767px) {
  .service .service-intro {
    margin-bottom: min(152px + 14vh, 180px);
  }
}
@media (width > 1199px) {
  .service .service-intro {
    margin-bottom: min(152px + 14vh, 280px);
  }
}
.service .service-intro__header {
  color: #fff;
  margin-bottom: 110px;
}
@media (width > 767px) {
  .service .service-intro__header {
    margin-bottom: 85px;
  }
}
.service .service-intro__header .section-title {
  font-size: clamp(22px, 1.01vw + 18.212px, 32px);
  line-height: 1.5;
  margin-bottom: clamp(38px, 0.71vw + 35.337px, 45px);
}
.service .service-intro__header p {
  font-size: clamp(15px, 0.3vw + 13.875px, 18px);
  text-align: justify;
}
.service .service-intro__flow {
  display: flex;
  flex-direction: column;
  gap: 55.8px 0;
}
@media (width > 767px) {
  .service .service-intro__flow {
    flex-direction: row;
  }
}
.service .service-intro__flow__caption {
  flex: 1;
  display: flex;
  align-items: center;
  gap: clamp(6.5px, 0.31vw + 5.338px, 9.6px);
  font-size: clamp(20px, 1.01vw + 16.212px, 30px);
  color: #fff;
  text-wrap: nowrap;
}
.service .service-intro__flow__caption::before {
  content: "";
  display: block;
  width: clamp(31.15px, 1.52vw + 25.45px, 46.26px);
  aspect-ratio: 1.7688813174;
  background: url(../img/global/icon/title-icon-white.svg) no-repeat center/cover;
}
@media (width > 767px) {
  .service .service-intro__flow__img {
    flex: 1;
    aspect-ratio: 1.4560418483;
    position: relative;
  }

  .service .service-intro__flow__img img {
    width: min(61vw, 835px);
    aspect-ratio: 1.4560418483;
    position: absolute;
    inset: 0 auto auto -13vw;
  }
}

/* positions */
.service .positions {
  margin-bottom: clamp(110px, 6.89vw + 84.162px, 178.3px);
}
.service .positions .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.service .positions .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.service .positions .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.service .positions .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.service .positions .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.service .positions .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.service .positions .section-title.is_show::before {
  height: 100%;
}
.service .positions .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.service .positions .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.service .positions .section-title {
  margin-bottom: 30px;
}
@media (width > 767px) {
  .service .positions .section-title {
    margin-bottom: 19px;
  }
}
.service .positions__content:not(:last-child) {
  margin-bottom: clamp(154.7px, 11.88vw + 110.15px, 288.3px);
}
.service .positions__content__header {
  width: 100%;
  margin-bottom: clamp(34px, 2.83vw + 23.388px, 62px);
  position: relative;
}
.service .positions__content__header__title {
  color: #fff;
  font-size: clamp(30px, 2.49vw + 20.663px, 58px);
  position: absolute;
  inset: 34px auto auto 0;
}
@media (width > 767px) {
  .service .positions__content__header__title {
    inset: 50% auto auto 0;
    transform: translate(0, -50%);
    padding-left: 40px;
  }
}
.service .positions__content__header__title::before {
  content: "";
  display: block;
  width: clamp(47.89px, 4.93vw + 29.403px, 96.73px);
  aspect-ratio: 1.4;
  background: url(../img/page/service/positions/title01.svg) no-repeat center/contain;
  position: absolute;
  inset: 0 auto auto 0;
  transform: translate(0, -90%);
}
@media (width > 767px) {
  .service .positions__content__header__title::before {
    transform: translate(0, -80%);
  }
}
.service .positions__content__header__title.reporter-title::before {
  background-image: url(../img/page/service/positions/title02.svg);
}
.service .positions__content__header__img {
  width: 96%;
  margin-left: auto;
}
@media (width > 767px) {
  .service .positions__content__header__img {
    width: 76%;
  }
}
.service .positions__content__item:not(:last-child) {
  margin-bottom: 90px;
}
.service .positions__content__item__title {
  font-size: clamp(25px, 0.71vw + 22.337px, 32px);
  color: #fff;
  margin-bottom: clamp(18.9px, 1.92vw + 11.7px, 37.9px);
}
.service .positions__content__item__title span:first-child {
  display: flex;
  align-items: center;
  gap: clamp(6.7px, 0.17vw + 6.063px, 8.4px);
}
.service .positions__content__item__title span:first-child::before {
  content: "";
  display: block;
  width: clamp(28.27px, 0.74vw + 25.495px, 35.64px);
  aspect-ratio: 1.7687344913;
  background: url(../img/global/icon/title-icon-white.svg) no-repeat center/cover;
}
.service .positions__content__item__title span:last-child {
  font-weight: normal;
  font-size: clamp(15px, 0.3vw + 13.875px, 18px);
  padding-left: calc(clamp(28.27px, 0.74vw + 25.495px, 35.64px) + clamp(6.7px, 0.17vw + 6.063px, 8.4px));
}
.service .positions__content__item__desc {
  padding-left: calc(clamp(28.27px, 0.74vw + 25.495px, 35.64px) + clamp(6.7px, 0.17vw + 6.063px, 8.4px));
  text-align: justify;
  color: #fff;
}
.service .positions__content__item {
  /* h5階層のあるコンテンツ */
}
.service .positions__content__item.has-small-title .workflow-intro {
  margin-bottom: 49px;
  padding-left: calc(clamp(28.27px, 0.74vw + 25.495px, 35.64px) + clamp(6.7px, 0.17vw + 6.063px, 8.4px));
  color: #fff;
  display: none;
  line-height: 2.6;
}
@media (width > 767px) {
  .service .positions__content__item.has-small-title .workflow-intro {
    display: block;
  }
}
.service .positions__content__item.has-small-title li {
  font-size: clamp(13px, 0.81vw + 9.963px, 21px);
}
.service .positions__content__item.has-small-title li:not(:last-child) {
  margin-bottom: clamp(34px, 1.82vw + 27.175px, 52px);
}
.service .positions__content__item.has-small-title .small-title {
  display: flex;
  align-items: center;
  gap: clamp(9.7px, 0.49vw + 7.862px, 14.6px);
  margin-bottom: clamp(12px, 0.71vw + 9.338px, 19px);
  background-color: #fff;
  font-size: clamp(14px, 0.81vw + 10.963px, 22px);
  color: #012045;
  padding: 10px clamp(12px, 0.61vw + 9.713px, 18px);
}
.service .positions__content__item.has-small-title .small-title::before {
  content: "";
  display: block;
  width: clamp(22px, 1.21vw + 17.462px, 34px);
  height: 2px;
  background-color: #012045;
}
@media (width > 767px) {
  .service .positions__content__item.has-small-title .small-title + p {
    padding-left: 60px;
  }
}
.service .positions__content__item.has-small-title .small-title.border-hidden::before {
  content: none;
}
.service .positions__content__item {
  /* タイムライン */
}
.service .positions__content__item.has-timeline .caution {
  display: block;
  color: #fff;
  font-weight: normal;
  margin-top: clamp(24px, 1.87vw + 16.988px, 45px);
  font-size: clamp(14px, 0.18vw + 13.325px, 16px);
}
.service .positions__content__item.has-timeline .label {
  position: relative;
  text-wrap: nowrap;
}
.service .positions__content__item.has-timeline .label.ml-minus {
  margin-left: -1em;
}
.service .positions__content__item.has-timeline .label .sub-label {
  display: block;
  font-size: clamp(11px, 0.5vw + 9.125px, 16px);
  letter-spacing: normal;
  position: absolute;
  inset: auto auto 0 50%;
  transform: translate(-50%, 100%);
  text-wrap: nowrap;
}
.service .positions__content__item {
  /* faq */
}
.service .positions__content__item.has-faq-list .faq-list {
  font-size: clamp(14px, 0.71vw + 11.338px, 21px);
}
.service .positions__content__item.has-faq-list .faq-list > li {
  display: flex;
  flex-direction: column;
  gap: clamp(17px, 0.53vw + 15.012px, 23px);
}
.service .positions__content__item.has-faq-list .faq-list > li:not(:last-child) {
  margin-bottom: clamp(31px, 3.2vw + 19px, 67px);
}
.service .positions__content__item.has-faq-list .faq-list > li span {
  display: flex;
  align-items: flex-start;
}
.service .positions__content__item.has-faq-list .faq-list > li span.label::before {
  content: "Q.";
}
.service .positions__content__item.has-faq-list .faq-list > li span.value::before {
  content: "A.";
}
.service .positions__content .timeline-flex {
  display: flex;
  flex-direction: column;
  gap: 60px 12vw;
  margin-bottom: 90px;
}
@media (width > 999px) {
  .service .positions__content .timeline-flex {
    flex-direction: row;
    justify-content: center;
  }
}

/****** page-environment ******/
.environment .fv {
  position: relative;
  isolation: isolate;
}
.environment .fv .page-title {
  text-shadow: rgba(1, 32, 69, 0.3215686275) 0 0 10px;
}
.environment .fv .fv__img {
  width: min(94vw, 363px);
  aspect-ratio: 0.5317919075;
  position: absolute;
  inset: 0 0 auto auto;
  z-index: -1;
}
@media (width > 767px) {
  .environment .fv .fv__img {
    width: min(81vw, 1108px);
    aspect-ratio: 1.4540682415;
  }
}

/* environment-data */
.environment .data {
  margin-bottom: clamp(177.4px, 7.06vw + 150.925px, 247.4px);
}
.environment .data .section-title {
  height: 229.19px;
  font-size: 32px;
  color: #fff;
  position: relative;
}
.environment .data .section-title span {
  display: block;
  padding: 0 0 0 33px;
  translate: -20px 0;
  opacity: 0;
}
.environment .data .section-title span:first-child {
  padding-top: 20px;
  margin-bottom: 26px;
  letter-spacing: 0.2em;
  transition:
    opacity 0.3s 0.3s,
    translate 0.3s 0.4s;
  /* 横線 */
}
.environment .data .section-title span:first-child::after {
  content: "";
  display: block;
  width: 178.09px;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: 60px auto auto 0;
}
.environment .data .section-title span:last-child {
  font-size: 16px;
  font-weight: normal;
  transition:
    opacity 0.3s 0.4s,
    translate 0.3s 0.5s;
}
.environment .data .section-title {
  /* 縦線 */
}
.environment .data .section-title::before {
  content: "";
  display: block;
  background-color: #fff;
  width: 1px;
  height: 0;
  position: absolute;
  inset: 0 auto auto 21px;
  transition: all 0.8s;
}
.environment .data .section-title.is_show::before {
  height: 100%;
}
.environment .data .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.environment .data .section-title {
  margin-bottom: 39px;
}
@media (width > 767px) {
  .environment .data .section-title {
    margin-bottom: 0;
  }
}
.environment .data__list {
  width: 80vw;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 47px 0;
}
@media (width > 767px) {
  .environment .data__list {
    width: 100%;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 72px 0;
  }
}
.environment .data__list__item {
  width: 100%;
  border-bottom: 1px solid #fff;
  padding-bottom: 50px;
}
@media (width > 767px) {
  .environment .data__list__item {
    width: 33.3333333333%;
    padding: 0 50px;
    border-bottom: none;
    position: relative;
  }
  .environment .data__list__item::after {
    content: "";
    width: 100%;
    height: 1px;
    background-color: #fff;
    position: absolute;
    inset: auto auto -32px 0;
  }
}
.environment .data__list__item:first-child .list-icon {
  width: clamp(271.67px, 3.85vw + 257.233px, 309.79px);
}
@media (width > 767px) {
  .environment .data__list__item:first-child .list-icon {
    width: min(95%, 309.79px);
  }
}
@media (width > 767px) {
  .environment .data__list__item:nth-child(2) {
    position: relative;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
  }
}
.environment .data__list__item:nth-child(2) .list-icon {
  width: clamp(250.59px, 2.6vw + 240.84px, 276.39px);
}
@media (width > 767px) {
  .environment .data__list__item:nth-child(2) .list-icon {
    width: min(95%, 276.39px);
  }
}
.environment .data__list__item:nth-child(3) .list-icon {
  width: clamp(271.98px, -1.9vw + 279.105px, 253.17px);
}
@media (width > 767px) {
  .environment .data__list__item:nth-child(3) .list-icon {
    width: min(95%, 253.17px);
  }
}
@media (width > 767px) {
  .environment .data__list__item:nth-child(4) {
    width: 55%;
    border-right: 1px solid #fff;
  }
  .environment .data__list__item:nth-child(4)::after {
    content: none;
  }
}
.environment .data__list__item:nth-child(4) .list-icon {
  width: clamp(332.72px, 3.56vw + 319.37px, 368px);
}
@media (width > 767px) {
  .environment .data__list__item:nth-child(4) .list-icon {
    width: min(95%, 368px);
  }
}
.environment .data__list__item:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
@media (width > 767px) {
  .environment .data__list__item:last-child {
    width: 45%;
  }
  .environment .data__list__item:last-child::after {
    content: none;
  }
}
.environment .data__list__item:last-child .list-icon {
  width: clamp(227.02px, 12.21vw + 181.233px, 348.02px);
}
@media (width > 767px) {
  .environment .data__list__item:last-child .list-icon {
    width: min(95%, 348.02px);
  }
}
.environment .data__list__item .item-title {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: clamp(47px, 0.5vw + 45.125px, 52px);
  color: #fff;
}
.environment .data__list__item .item-title::before {
  content: "";
  display: block;
  width: 25px;
  aspect-ratio: 1.7692307692;
  background: url(../img/global/icon/title-icon-white.svg) no-repeat center/cover;
}
.environment .data__list__item .list-icon {
  margin: 0 auto;
}

/* support */
.environment .support {
  margin-bottom: clamp(165px, 3.03vw + 153.637px, 195px);
  position: relative;
  isolation: isolate;
}
.environment .support::after {
  content: "";
  display: block;
  width: clamp(211px, 43.49vw + 47.912px, 642px);
  aspect-ratio: 0.9080622348;
  background: url(../img/page/environment/support/support-bg.svg) no-repeat top left/cover;
  position: absolute;
  inset: auto 0 0 auto;
  transform: translate(0, 110%);
  z-index: -1;
}
@media (width > 767px) {
  .environment .support::after {
    transform: translate(0);
  }
}
.environment .support .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.environment .support .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.environment .support .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.environment .support .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.environment .support .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.environment .support .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.environment .support .section-title.is_show::before {
  height: 100%;
}
.environment .support .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.environment .support .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.environment .support .section-title {
  margin-bottom: clamp(43px, 8.27vw + 11.988px, 125px);
}
.environment .support__sub-title {
  text-align: center;
  color: #fff;
  font-size: clamp(16px, 1.61vw + 9.963px, 32px);
  line-height: 1.4;
  margin-bottom: clamp(76px, 1.31vw + 71.088px, 89px);
}
.environment .support__list {
  display: flex;
  flex-direction: column;
  gap: 37px 70px;
}
@media (width > 999px) {
  .environment .support__list {
    flex-direction: row;
  }
}
.environment .support__list__card {
  padding: 33px 41px;
  background-color: #fff;
  color: #012045;
  flex: 1;
  position: sticky;
  top: 80px;
  box-shadow: rgba(1, 32, 69, 0.4784313725) 0 2px 10px;
}
@media (width > 767px) {
  .environment .support__list__card {
    position: static;
    box-shadow: none;
  }
}
.environment .support__list__card__title {
  font-size: 25px;
  margin-bottom: 12px;
  text-align: center;
}
.environment .support__list__card__icon {
  width: 70px;
  margin: 0 auto 30px;
}
.environment .support__list__card__text {
  font-size: 15px;
  margin-bottom: 23px;
}
.environment .support__list__card__content-list {
  margin-left: 20px;
  font-size: 20px;
}
.environment .support__list__card__content-list.fz-small {
  font-size: 16px;
}
.environment .support__list__card__content-list > li {
  list-style: disc;
}

/* locations */
.environment .locations {
  margin-bottom: 177px;
  position: relative;
  isolation: isolate;
}
@media (width > 767px) {
  .environment .locations {
    margin-bottom: 152px;
  }
  .environment .locations::after {
    content: "";
    display: block;
    width: min(25vw, 337px);
    aspect-ratio: 0.8618925831;
    background: url(../img/page/environment/locations/locations-bg.svg) no-repeat top right/cover;
    position: absolute;
    inset: auto auto 0 0;
    z-index: -1;
    transform: translate(0, 70%);
  }
}
.environment .locations .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.environment .locations .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.environment .locations .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.environment .locations .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.environment .locations .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.environment .locations .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.environment .locations .section-title.is_show::before {
  height: 100%;
}
.environment .locations .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.environment .locations .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.environment .locations .section-title {
  margin-bottom: 33px;
}
.environment .locations__content {
  display: flex;
  flex-direction: column;
  gap: 60px;
}
@media (width > 767px) {
  .environment .locations__content {
    flex-direction: row;
    padding-left: 42px;
  }
}
.environment .locations__content__img {
  width: min(100%, 490px);
}
.environment .locations__content__container {
  display: contents;
}
@media (width > 767px) {
  .environment .locations__content__container {
    display: block;
  }
}
.environment .locations__content__container__text {
  order: -1;
  color: #fff;
}
@media (width > 767px) {
  .environment .locations__content__container__text {
    order: 0;
    margin-bottom: 84px;
  }
}
.environment .locations__content__container__text__title {
  line-height: 1.5;
  font-size: clamp(24px, 0.71vw + 21.337px, 32px);
  margin-bottom: 38px;
}
@media (width > 767px) {
  .environment .locations__content__container__text__title {
    margin-bottom: 30px;
  }
}
.environment .locations__content__container__text__para {
  line-height: 2.3;
}
@media (width > 767px) {
  .environment .locations__content__container__text__para {
    line-height: 1.5;
  }
}
.environment .locations__content__container__list {
  color: #fff;
  font-size: 18px;
  display: grid;
  grid-template: auto/repeat(2, 1fr);
  justify-content: center;
  gap: 40px 0;
}
@media (width > 767px) {
  .environment .locations__content__container__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.environment .locations__content__container__list > li > span {
  display: flex;
  align-items: center;
  gap: 5px;
}
.environment .locations__content__container__list > li > span::before {
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border: 1px solid #fff;
}
.environment .locations__content__container__list > li .sub-list {
  font-size: 15px;
  padding-left: 2em;
}
.environment .locations__content__container__list > li .sub-list > li {
  display: flex;
  align-items: center;
  gap: 3px;
  line-height: 1.7;
}
.environment .locations__content__container__list > li .sub-list > li::before {
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  background-color: #fff;
  border-radius: 50%;
}

/* environment-entry-reqs */
.environment .entry-reqs {
  margin-bottom: 115px;
}
@media (width > 767px) {
  .environment .entry-reqs {
    margin-bottom: 101px;
  }
}
.environment .entry-reqs .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.environment .entry-reqs .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.environment .entry-reqs .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.environment .entry-reqs .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.environment .entry-reqs .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.environment .entry-reqs .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.environment .entry-reqs .section-title.is_show::before {
  height: 100%;
}
.environment .entry-reqs .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.environment .entry-reqs .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.environment .entry-reqs .section-title {
  margin-bottom: clamp(66.7px, 2.22vw + 58.375px, 91.7px);
}

/****** page-interview ******/
/* interview-fv */
.interview .fv {
  position: relative;
  isolation: isolate;
}
.interview .fv__img {
  width: 84vw;
  aspect-ratio: 1.5980861244;
  position: absolute;
  inset: 50% 0 auto auto;
  z-index: -1;
}
@media (width > 767px) {
  .interview .fv__img {
    width: min(66vw, 901px);
    aspect-ratio: 1.8387755102;
    transform: translate(0, -50%);
  }
}
.interview .fv__img img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: bottom left;
  object-position: bottom left;
}

/* voices */
.interview .vioces {
  margin-bottom: clamp(72.9px, 14.55vw + 18.338px, 217.1px);
}
.interview .vioces .section-title {
  width: -moz-fit-content;
  width: fit-content;
  height: 123.78px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 32px;
  position: relative;
  color: #fff;
}
.interview .vioces .section-title::before {
  /* 縦の線 */
  content: "";
  display: block;
  width: 1px;
  height: 0;
  background-color: #fff;
  position: absolute;
  inset: 50% auto auto 0;
  transform: translate(30px, -50%);
  transition: all 0.8s;
}
.interview .vioces .section-title span {
  display: block;
  padding-left: 42px;
  translate: -20px 0;
  opacity: 0;
}
.interview .vioces .section-title span:first-child {
  padding-bottom: 14px;
  position: relative;
  letter-spacing: 0.1em;
  transition:
    opacity 0.8s 0.3s,
    translate 0.8s 0.4s;
}
.interview .vioces .section-title span:first-child::after {
  /* 横の線 */
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background-color: #fff;
  position: absolute;
  inset: auto auto 0 0;
  transition: all 0.8s 0.3s;
}
.interview .vioces .section-title span:last-child {
  font-weight: normal;
  font-size: 16px;
  padding-top: 15px;
  transition:
    opacity 0.8s 0.4s,
    translate 0.8s 0.5s;
}
.interview .vioces .section-title.is_show::before {
  height: 100%;
}
.interview .vioces .section-title.is_show span {
  translate: 0;
  opacity: 1;
}
.interview .vioces .section-title.is_show span::after {
  /* 横の線 */
  width: clamp(340px, 100% + 70px, 90vw);
}
.interview .vioces .section-title {
  margin-bottom: 31px;
}
@media (width > 767px) {
  .interview .vioces .section-title {
    margin-bottom: 21px;
  }
}
.interview .vioces__list {
  width: 83%;
  margin: 0 auto;
}
@media (width > 767px) {
  .interview .vioces__list {
    width: 87%;
  }
}
.interview .vioces__list__item {
  display: flex;
  flex-direction: column;
  gap: 36px 86px;
  margin-bottom: 219px;
  margin-bottom: 180px;
  scroll-margin-top: clamp(80px, 6.05vw + 57.313px, 140px);
}
@media (width > 767px) {
  .interview .vioces__list__item {
    flex-direction: row;
  }
}
.interview .vioces__list__item:not(:last-child) {
  margin-bottom: 219px;
}
@media (width > 767px) {
  .interview .vioces__list__item:not(:last-child) {
    margin-bottom: 180px;
  }
}
@media (width > 767px) {
  .interview .vioces__list__item__img {
    width: min(31vw, 427px);
  }
}
.interview .vioces__list__item__text {
  flex: 1;
  color: #fff;
}
.interview .vioces__list__item__text .member-name {
  margin-bottom: 14px;
  font-size: 20px;
}
.interview .vioces__list__item__text .member-name > span.dept {
  font-size: 16px;
}
.interview .vioces__list__item__text .member-name > span.name {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-top: 7px;
}
.interview .vioces__list__item__text .member-name > span.name::before {
  content: "";
  display: block;
  width: 23px;
  height: 13px;
  background: url(../img/global/icon/title-icon-white.svg) no-repeat center/cover;
}
.interview .vioces__list__item__text .member-name > span.name .last-name {
  margin-right: calc(0.5em - 5px);
}
.interview .vioces__list__item__text .school {
  margin-bottom: 43.5px;
  font-size: 16px;
  line-height: 1.87;
}
.interview .vioces__list__item__text .school .school-name {
  margin-right: 1em;
}
.interview .vioces__list__item__text .member-content {
  font-size: 14px;
}
.interview .vioces__list__item__text .member-content:not(:last-child) {
  margin-bottom: 93px;
}
@media (width > 767px) {
  .interview .vioces__list__item__text .member-content:not(:last-child) {
    margin-bottom: 57px;
  }
}
.interview .ribbon-title {
  width: 230px;
  height: 31.4px;
  font-size: 14px;
  background: url(../img/page/interview/voices/voices-title-bg.svg) no-repeat center right/cover;
  display: flex;
  align-items: center;
  padding-left: 19px;
  margin-bottom: 14px;
  color: #fff;
}
.interview .schedule {
  font-size: 14px;
}
.interview .schedule__list > li {
  display: flex;
  flex-direction: column;
  gap: 0 25px;
}
@media (width > 767px) {
  .interview .schedule__list > li {
    flex-direction: row;
    align-items: center;
  }
}
.interview .schedule__list > li:not(:last-child) {
  margin-bottom: 10px;
}
.interview .schedule__list > li span {
  display: block;
}
@media (width > 767px) {
  .interview .schedule__list > li span:first-child {
    width: 2.8em;
    text-align: right;
  }
}
.interview .schedule__list > li span:last-child {
  flex-direction: 1;
}
.interview .reason > ul > li {
  display: flex;
  gap: 5px;
}
.interview .reason > ul > li::before {
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  background-color: #fff;
  border-radius: 50%;
  margin-top: 1cap;
}

/****** page-contact ******/
.contact {
  /* --- タイトル --- */
}
.contact .form-title {
  color: #ffffff;
  text-align: center;
  font-weight: bold;
  margin-bottom: 66px;
  letter-spacing: 0.1em;
  font-size: 30px;
}
@media (width > 767px) {
  .contact .form-title {
    font-size: 50px;
    margin-bottom: 97px;
  }
}
.contact {
  /* --- レイアウト --- */
}
.contact .form-section {
  padding: clamp(170px, 5.33vw + 150.012px, 230px) 10px clamp(192px, 9.16vw + 157.65px, 295px);
}
.contact .form-container {
  max-width: 800px;
  margin: 0 auto;
  background: #fff;
  border-radius: 12px;
  padding: 30px 15px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}
@media (width > 767px) {
  .contact .form-container {
    padding: 50px;
    border-radius: 20px;
  }
}
.contact {
  /* --- フォーム項目 --- */
}
.contact .form-item {
  margin-bottom: 25px;
}
.contact .form-label {
  display: block;
  font-weight: bold;
  font-size: 14px;
  color: #012045;
  margin-bottom: 10px;
}
@media (width > 767px) {
  .contact .form-label {
    font-size: 16px;
  }
}
.contact {
  /* --- バッジ --- */
}
.contact .badge-required,
.contact .badge-optional {
  color: #fff;
  font-size: 11px;
  padding: 4px 8px;
  border-radius: 2px;
  margin-left: 8px;
  vertical-align: middle;
  display: inline-block;
  line-height: 1;
  letter-spacing: 0.1em;
  font-weight: normal;
}
.contact .badge-required {
  background: #ff1c1c;
}
.contact .badge-optional {
  background: #999;
}
.contact .input-base {
  width: 100%;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 15px 12px;
  font-size: clamp(13px, 0.3vw + 12px, 14px);
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  line-height: 1.5;
  color: #012045;
  letter-spacing: inherit;
}
.contact textarea.input-base {
  height: 277.75px;
}
@media (width > 767px) {
  .contact .input-base {
    height: 55px;
    padding: 0 12px;
    font-size: 16px;
  }
  .contact textarea.input-base {
    height: 420px;
    padding: 15px 12px;
  }
}
.contact .input-base::-moz-placeholder {
  color: #b9b9b9;
  opacity: 1;
}
.contact .input-base::placeholder {
  color: #b9b9b9;
  opacity: 1;
}
@media (width > 767px) {
  .contact .input-base::-moz-placeholder {
    font-size: 16px;
  }
  .contact .input-base::placeholder {
    font-size: 16px;
  }
}
.contact .input-base:focus {
  outline: none;
  border-color: #012045;
}
.contact .input-sub-label {
  display: block;
  font-size: 14px;
  color: #012045;
  margin-bottom: 4px;
  font-weight: 500;
}
@media (width > 767px) {
  .contact .input-sub-label {
    font-size: 16px;
    font-weight: 400;
  }
}
.contact {
  /* --- セレクトボックス --- */
}
.contact select.input-base {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23012045'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 16px;
}
.contact select.input-base:invalid {
  color: #b9b9b9;
}
.contact .grid-row {
  display: flex;
  gap: 10px;
}
@media (width > 767px) {
  .contact .grid-row {
    gap: 20px;
  }
  .contact .grid-row .input-base {
    width: 295px;
    flex: 0 0 295px;
  }
}
.contact .flex-wrap-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 8px;
}
.contact .flex-center-gap {
  display: flex;
  align-items: center;
  gap: 4px;
}
.contact .space-y-md > * + * {
  margin-top: 1rem;
}
.contact {
  /* --- 幅指定 --- */
}
.contact .w-half-mobile {
  width: 100%;
}
@media (min-width: 640px) {
  .contact .w-half-mobile {
    width: 50%;
  }
}
@media (width > 767px) {
  .contact .w-half-mobile {
    width: 33.333333%;
  }
}
.contact .w-year {
  width: 85px;
}
.contact .w-month-day {
  width: 70px;
}
@media (width > 767px) {
  .contact .w-year,
  .contact .w-month-day {
    padding: 0 12px;
  }
}
.contact .w-tel {
  width: 100%;
}
@media (min-width: 640px) {
  .contact .w-tel {
    width: 75%;
  }
}
@media (width > 767px) {
  .contact .w-tel {
    width: 50%;
  }
}
.contact {
  /* --- ファイルアップロード --- */
}
.contact .file-instruction {
  font-size: 10px;
  margin-bottom: 0.5rem;
  line-height: 1.25;
  color: #012045;
  opacity: 0.8;
}
@media (width > 767px) {
  .contact .file-instruction {
    font-size: 16px;
  }
}
.contact .file-upload-box {
  display: flex;
  align-items: center;
  border: 1px solid #ddd;
  border-radius: 8px;
  overflow: hidden;
}
@media (width > 767px) {
  .contact .file-upload-box {
    height: 55px;
  }
}
/* .contact .hidden-input {
  display: none;
} */

.hidden-input {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.contact .file-select-btn {
  background: #d9d9d9;
  color: #012045;
  padding: 15px;
  font-size: 13px;
  cursor: pointer;
  transition: 0.2s;
  border: none;
  flex-shrink: 0;
  letter-spacing: inherit;
  font-weight: 500;
  display: flex;
  align-items: center;
  height: 100%;
}
@media (width > 767px) {
  .contact .file-select-btn {
    padding: 0 20px;
    font-size: 14px;
  }
}
.contact .file-select-btn:hover {
  background: #cccccc;
}
.contact .file-name-display {
  padding: 0 10px;
  font-size: 13px;
  color: #b9b9b9;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.contact {
  /* --- 送信ボタン --- */
}
.contact .btn-wrap {
  text-align: center;
  margin-top: 40px;
}
.contact .btn-submit {
  display: grid;
  place-items: center;
  background: #012045;
  color: #fff;
  width: 100%;
  max-width: 280px;
  height: 54px;
  border-radius: 30px;
  font-weight: bold;
  font-size: clamp(13px, 0.3vw + 12px, 14px);
  text-decoration: none;
  transition: all 0.3s;
  border: none;
  cursor: pointer;
  letter-spacing: 0.2em;
  padding: 0;
  margin: 0 auto;
  position: relative;
}
.contact .btn-submit .module-arrow {
  border-color: #fff;
  position: absolute;
  inset: 50% 47.8px auto auto;
  transform: translate(0, -50%);
}
.contact .btn-submit:hover {
  opacity: 0.8;
}
.contact .btn-icon-img {
  margin-left: 12px;
  width: 20px;
  height: 20px;
  -o-object-fit: contain;
  object-fit: contain;
}
.contact {
  /* --- 注意書き --- */
}
.contact .privacy-note {
  font-size: 10px;
  line-height: 1.625;
  margin-top: 12px;
  color: #012045;
  opacity: 0.7;
}
@media (width > 767px) {
  .contact .privacy-note {
    font-size: 16px;
    margin-top: 2.5rem;
  }
}
.contact {
  /* --- その他 --- */
}
.contact .br-desktop {
  display: none;
}
@media (min-width: 640px) {
  .contact .br-desktop {
    display: block;
  }
}
.contact .unit-text {
  font-size: 0.75rem;
}
@media (width > 767px) {
  .contact .unit-text {
    font-size: 0.875rem;
  }
}

option[value="選択してください"] {
  display: none;
}

/* privacypolicy */
.privacypolicy {
  color: #ffffff;
  /* --- メイン--- */
}
.privacypolicy .policy {
  padding: clamp(172px, 4.98vw + 153.325px, 228px) 20px 60px;
  min-height: 100vh;
}
.privacypolicy .policy-inner {
  width: 100%;
  margin: 0 auto;
}
.privacypolicy {
  /* 大見出し*/
}
.privacypolicy .policy-main-title {
  text-align: center;
  font-weight: 700;
  margin-top: 0;
  margin-bottom: 60px;
  font-size: 26px;
  letter-spacing: 0.01em;
  white-space: nowrap;
}
.privacypolicy .policy-section {
  margin-bottom: 60px;
}
.privacypolicy {
  /* 中見出し: 20px〜 */
}
.privacypolicy .policy-sub-title {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 1.5rem;
  line-height: 1.4;
}
.privacypolicy .policy-text {
  font-size: 16px;
  margin-bottom: 2.5rem;
  opacity: 0.9;
}
.privacypolicy .policy-content {
  margin-top: 40px;
}
.privacypolicy .policy-list {
  display: block;
  margin: 0;
  padding: 0;
}
.privacypolicy {
  /* 見出し（dt）: 18px〜 */
}
.privacypolicy .policy-item-title {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
  line-height: 1.4;
}
.privacypolicy .policy-item-title:not(:first-of-type) {
  margin-top: 35px;
}
.privacypolicy .policy-item-description {
  font-size: 16px;
  margin-left: 0;
  opacity: 0.9;
}
.privacypolicy .policy-sub-list {
  list-style: none;
  padding: 0;
  margin: 15px 0 0 0;
}
.privacypolicy .policy-sub-list li {
  position: relative;
  padding-left: 1.5em;
  margin-bottom: 8px;
}
.privacypolicy .policy-sub-list li > a {
  color: #fff;
}
.privacypolicy .policy-sub-list li::before {
  content: "・";
  position: absolute;
  left: 0;
}
.privacypolicy .policy-contact {
  margin-top: 15px;
  font-weight: 700;
}
.privacypolicy {
  /* --- タブレット、pc --- */
  /* タブレット以上 (768px〜) */
}
@media (width > 767px) {
  .privacypolicy .policy {
    padding: 80px 40px;
  }
  .privacypolicy .policy-inner {
    max-width: 90%;
  }
  .privacypolicy .policy-main-title {
    font-size: clamp(32px, 5vw, 50px);
    letter-spacing: clamp(0.1em, 0.4vw, 0.3em);
    margin-bottom: 80px;
  }
  .privacypolicy .policy-sub-title {
    font-size: clamp(22px, 2.2vw, 24px);
    margin-bottom: 2rem;
  }
  .privacypolicy .policy-item-title {
    font-size: clamp(20px, 1.8vw, 22px);
  }
  .privacypolicy .policy-item-title:not(:first-of-type) {
    margin-top: 45px;
  }
}
.privacypolicy {
  /* デスクトップ (1100px〜) */
}
@media (width > 1100px) {
  .privacypolicy body {
    line-height: 2;
  }
  .privacypolicy .policy {
    padding: 120px 20px;
  }
  .privacypolicy .policy-inner {
    max-width: 1100px;
  }
  .privacypolicy .policy-main-title {
    font-size: 50px;
    margin-bottom: 120px;
  }
  .privacypolicy .policy-section {
    margin-bottom: 80px;
  }
  .privacypolicy .policy-text {
    margin-bottom: 4rem;
  }
  .privacypolicy .policy-item-title:not(:first-of-type) {
    margin-top: 50px;
  }
}

/*************************************************************/

/* お知らせ一覧 */
.info-archives .fv {
  height: 40vh;
}
.info-archives .fv .page-title {
  padding-top: 0.5em;
}
@media (width>767px) {
  .info-archives .fv {
    height: 60vh;
  }
  .info-archives .fv .page-title {
    padding-top: 1em;
  }
}
.info-archives .archives {
  margin-bottom: clamp(100px, 10.09vw + 62.163px, 200px);
}

.info-archives .archives__list {
  margin-bottom: clamp(40px, 3.12vw - 9.889px, 50px);
}
.info-archives .archives__list li article a {
  color: #fff;
  display: flex;
  flex-direction: column;
  padding: 30px 0;
  gap: 10px 40px;
  border-bottom: 1px solid #fff;
}
@media (width > 767px) {
  .info-archives .archives__list li article a {
    flex-direction: row;
    align-items: center;
  }
}
.info-archives .archives__list li article a time {
  font-size: 14px;
  transition: all 0.3s;
  text-wrap: nowrap;
  line-height: 2;
}
.info-archives .archives__list li article a span {
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  transition: all 0.3s;
}
.info-archives .archives__list li article a:hover time {
  opacity: 0.5;
}
.info-archives .archives__list li article a:hover span {
  opacity: 0.5;
}
.info-archives .archives__list li:first-child article a {
  padding-top: 0;
}
.info-archives .archives .pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: clamp(16px, 0.4vw + 14.5px, 20px);
}
.info-archives .archives .pagination .page-numbers {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  background-color: #fff;
  font-weight: bold;
  font-size: 20px;
  cursor: pointer;
}
.info-archives .archives .pagination .page-numbers.current {
  background-color: #012045;
  color: #fff;
  border: 1px solid #fff;
}
.info-archives .archives .pagination .page-numbers.prev {
  display: grid;
  place-items: center;
}
.info-archives .archives .pagination .page-numbers .prev {
  display: block;
  width: 8px;
  height: 8px;
  border-top: 3px solid #012045;
  border-left: 3px solid #012045;
  transform: translate(4px, 0) rotate(-45deg);
}
.info-archives .archives .pagination .page-numbers .next {
  display: block;
  width: 8px;
  height: 8px;
  border-top: 3px solid #012045;
  border-right: 3px solid #012045;
  transform: translate(-4px, 0) rotate(45deg);
}

/* お知らせ記事のスタイル */
.article {
  text-align: justify;
  margin-bottom: 60px;
}
.article .article-title {
  line-height: 1.5;
  text-box: trim-both cap alphabetic;
}
.article .fv {
  height: auto;
  padding: calc(clamp(100px, 4.04vw + 84.85px, 140px) + 60px) 0 60px;
  color: #fff;
}
.article .fv .inner {
  margin: 0;
}
.article .fv .inner time {
  margin-bottom: clamp(16px, 0.4vw + 14.5px, 20px);
}
.article .fv .article-title {
  font-size: clamp(28px, 1.41vw + 22.712px, 42px);
}
.article .article__inner {
  background-color: #fff;
  padding: clamp(60px, 2.02vw + 52.425px, 80px) clamp(20px, 4.04vw + 4.85px, 60px);
}
.back-btn {
  width: 250px;
  height: 50px;
  display: grid;
  place-items: center;
  margin: 0 auto clamp(100px, 10.09vw + 62.163px, 200px);
  border-radius: 50px;
  background-color: rgb(0, 147, 255);
  color: #fff;
  font-weight: bold;
  font-size: clamp(16px, 0.2vw + 15.25px, 18px);
  transition: all 0.3s;
}
.back-btn:hover {
  opacity: 0.8;
}

/* 各タグのスタイル */
.article .article__inner h2 {
  font-size: clamp(24px, 0.4vw + 22.5px, 28px);
  border-bottom: 1px solid #012045;
  margin-bottom: 30px;
  padding-bottom: 20px;
  line-height: 1.5;
  text-box: trim-both cap alphabetic;
}
.article .article__inner h2:not(:first-child) {
  margin-top: 40px;
}
.article .article__inner h3 {
  font-size: clamp(20px, 0.4vw + 18.5px, 24px);
  margin: 40px 0 20px;
  border-left: 8px solid #012045;
  padding-left: 0.5em;
  line-height: 1.5;
  text-box: trim-both cap alphabetic;
}
.article .article__inner h4 {
  font-size: clamp(18px, 0.2vw + 17.25px, 20px);
  line-height: 1.5;
  text-box: trim-both cap alphabetic;
  margin: 40px 0 20px;
}
.article .article__inner h5 {
  font-size: clamp(16px, 0.2vw + 15.25px, 18px);
  line-height: 1.5;
  text-box: trim-both cap alphabetic;
  margin: 40px 0 20px;
}
.article .article__inner p {
  line-height: 2;
  margin-bottom: clamp(16px, 0.4vw + 14.5px, 20px);
}
.article .article__inner ul,
.article .article__inner ol,
.article .article__inner dl {
  line-height: 2;
  margin-bottom: 20px;
}
.article .article__inner li:not(:last-child) {
  margin-bottom: 10px;
}
.article .article__inner figure {
  margin-bottom: 20px;
}
.article .article__inner table {
  line-height: 2;
  margin-bottom: 20px;
}

/*# sourceMappingURL=style.css.map */
