@charset "UTF-8";
/*******************************
topmv
*******************************/
.topmv-wrap {
  width: 100%;
  height: 100vh;
  display: flex;
}
.topmv_inner {
  margin: auto;
  width: 84.44444%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 8.5%;
}
.topmv-logoarea {
  flex: 0 1 50%;
  display: flex;
}
.topmv-logoarea p {
  margin: auto;
}
.topmv-textarea {
  flex: 0 1 50%;
}
.topmv-title {
  font-size: clamp(
    calc(26 / 16 * 1rem),
    calc(44 / 1440 * 100vw),
    calc(44 / 16 * 1rem)
  );
  font-family: "FOT-筑紫ゴシック Pro B";
  letter-spacing: 0.05em;
}
/* --------------------------- */
@media (max-width: 991.98px) {
  .topmv-wrap {
    padding-bottom: 16vh;
  }
  .topmv_inner {
    flex-direction: column;
    height: 100%;
    gap: 0 7%;
  }
  .topmv-logoarea p {
    margin: auto auto 0;
  }
  .topmv-textarea {
    padding-top: 208px;
    width: 100%;
  }
}
/*******************************
section-contents
*******************************/
/*whoweare
-------------------------------*/
section.home-whoweare {
  padding-top: clamp(0.75rem, (1vw * 112 / 1440 * 100), 7rem);
  padding-bottom: clamp(1.5rem, (1vw * 76 / 1440 * 100), 4.75rem);
  overflow: hidden;
}
.whoweare-wrap {
  margin-left: 8.5%;
  display: grid;
  grid-template-columns: 40% 60%;
  grid-template-rows: auto 1fr;
  grid-template-areas:
    "concept1 concept2"
    "concept3 concept2";
}
.whoweare-hading {
  padding-top: clamp(1rem, (1vw * 48 / 1440 * 100), 3rem);
  grid-area: concept1;
}
.whoweare-title {
  padding-top: clamp(3rem, (1vw * 68 / 1440 * 100), 4.25rem);
}
.whoweare-title .en {
  padding-bottom: 10px;
  font-size: clamp(
    calc(69 / 16 * 1rem),
    calc(74 / 1440 * 100vw),
    calc(74 / 16 * 1rem)
  );
  font-family: var(--googlefont-Instrument);
  line-height: 1;
}
.whoweare-title .en span {
  display: inline-block;
}
.whoweare-title .ja {
  padding-top: clamp(1rem, (1vw * 20 / 1440 * 100), 1.25rem);
  display: flex;
  align-items: center;
  font-size: clamp(
    calc(22 / 16 * 1rem),
    calc(26 / 1440 * 100vw),
    calc(26 / 16 * 1rem)
  );
  font-family: var(--fontplus-TsukushiB);
  letter-spacing: 0.05em;
  white-space: pre;
  font-feature-settings: "palt";
}
.whoweare-title .ja::before {
  content: "";
  margin-bottom: -4px;
  display: inline-block;
  margin-right: 0.625rem;
  width: clamp(2.5rem, (1vw * 48 / 1440 * 100), 3rem);
  height: 1px;
  background-color: #fff;
}
.whoweare-copy {
  margin-top: clamp(1.5rem, (1vw * 28 / 1440 * 100), 1.75rem);
  font-size: clamp(
    calc(14 / 16 * 1rem),
    calc(16 / 1440 * 100vw),
    calc(16 / 16 * 1rem)
  );
  line-height: 2.1;
  letter-spacing: 0.03em;
  font-feature-settings: "palt";
}
.whoweare-zicon {
  grid-area: concept2;
  max-width: 700px;
  aspect-ratio: 1;
}
.whoweare-contents {
  grid-area: concept3;
}
/* ///------------------------------- */
@media (max-width: 991.98px) {
  .whoweare-wrap {
    margin-left: 0;
    display: block;
  }
  .whoweare-zicon {
    padding-top: 1rem;
    padding-right: 2%;
    margin-left: -5%;
    max-width: none;
  }
  .whoweare-contents {
    padding-top: 3rem;
  }
  .whoweare-copy {
    margin-top: 3rem;
  }
}
/*business
-------------------------------*/
section.home-business {
  padding-top: clamp(1.5rem, (1vw * 80 / 1440 * 100), 6rem);
  margin-right: 1rem;
  padding-bottom: clamp(3rem, (1vw * 80 / 1440 * 100), 5rem);
  margin-left: 1rem;
}
.business-wrap {
  padding-right: 12%;
  position: relative;
  display: flex;
  aspect-ratio: 2.072;
  border-radius: 12px;
  overflow: hidden;
}
.business-wrap picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  /* clip-path: polygon(0 0, 3% 0, 3% 100%, 0 100%); */
  clip-path: polygon(0 0, 100% 0, 100% 1%, 0 1%);
  filter: grayscale(1000%);
  transition: 0.7s 0.1s ease-in-out;
}
.business-wrap.on picture {
  animation: grayscaleAnime 0.8s 0.85s ease-in-out forwards;
  opacity: 1;
  /* clip-path: polygon(0 0, 100% 0, 100% 99%, 0% 100%); */
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}
.business-wrap picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.business-textarea {
  margin: auto 0 auto auto;
  padding-bottom: 10px;
  position: relative;
}
.business-title {
  padding-bottom: 5px;
  margin-top: clamp(2.25rem, (1vw * 40 / 1440 * 100), 2.5rem);
  font-size: clamp(
    calc(34 / 16 * 1rem),
    calc(48 / 1440 * 100vw),
    calc(48 / 16 * 1rem)
  );
  line-height: 1;
  letter-spacing: 0.05em;
  font-family: var(--fontplus-TsukushiB);
  overflow: hidden;
}
.business-title span {
  display: inline-block;
  /* transform: translateY(100%);
  opacity: 0;
  transition: 0.4s 0.3s ease-in-out; */
}
/* .business-title.on span {
  transform: translateY(0);
  opacity: 1;
} */
.business-copy {
  margin-top: 1.5rem;
  /* margin-top: clamp(1.5rem, (1vw * 28 / 1440 * 100), 1.75rem); */
  font-size: clamp(
    calc(14 / 16 * 1rem),
    calc(20 / 1440 * 100vw),
    calc(20 / 16 * 1rem)
  );
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}
@media (max-width: 768px) {
  section.home-business {
    margin-right: 0.5rem;
    margin-left: 0.5rem;
  }
  .business-wrap {
    padding-right: 0;
    aspect-ratio: 0.59;
    border-radius: 6px;
  }
  .business-wrap picture::after {
    transition: 0.45s ease-in-out;
  }
  .business-textarea {
    margin: auto auto 0 7%;
    padding-bottom: 56px;
  }
  .business-title span {
    transition: 0.35s 0.05s ease-in-out;
  }
  .business-copy {
    margin-top: 1.125rem;
    letter-spacing: 0.03em;
    white-space: pre;
  }
}
/*recruit
-------------------------------*/
section.home-recruit {
  padding-top: clamp(3rem, (1vw * 112 / 1440 * 100), 7rem);
  padding-bottom: clamp(4rem, (1vw * 120 / 1440 * 100), 10rem);
}
/* recruit-wrap */
.recruit-wrap {
  display: flex;
  align-items: center;
}
.recruit-wrap picture {
  flex: 0 1 63.5%;
  position: relative;
  aspect-ratio: 1.034;
  border-radius: 0 12px 12px 0;
  overflow: hidden;
  opacity: 0;
  clip-path: polygon(0 0, 3% 0, 3% 100%, 0 100%);
  filter: grayscale(1000%);
  transition: 0.45s 0.1s ease-in-out;
}
.recruit-wrap.on picture {
  opacity: 1;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
  animation: grayscaleAnime 0.8s 0.6s ease-in-out forwards;
}
.recruit-wrap picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.recruit-textarea {
  margin-left: -7.75%;
  flex: 0 1 38%;
  position: relative;
  z-index: 10;
}
.recruit-title-outer {
  margin-top: 1.25rem;
  overflow: hidden;
}
.recruit-title {
  font-size: clamp(
    calc(26 / 16 * 1rem),
    calc(36 / 1440 * 100vw),
    calc(36 / 16 * 1rem)
  );
  line-height: 1.4;
  letter-spacing: 0.05em;
  font-family: var(--fontplus-TsukushiB);
}
.recruit-copy {
  margin-top: clamp(1.75rem, (1vw * 32 / 1440 * 100), 2rem);
  max-width: 432px;
  font-size: clamp(
    calc(14 / 16 * 1rem),
    calc(15 / 1440 * 100vw),
    calc(15 / 16 * 1rem)
  );
  line-height: 1.8;
  text-align: justify;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  /* recruit-wrap */
  .recruit-wrap {
    padding-right: 6.4%;
    display: block;
  }
  .recruit-wrap picture {
    aspect-ratio: 0.78;
    border-radius: 0 6px 6px 0;
  }
  .recruit-wrap picture::after {
    transition: 0.45s 0.01s ease-in-out;
  }
  .recruit-textarea {
    margin-top: -92px;
    margin-left: 6.4%;
  }
  .recruit-title span {
    display: block;
  }
  .recruit-copy {
    letter-spacing: 0.03em;
  }
}
/*cta
-------------------------------*/
section.home-cta {
  padding-top: clamp(3rem, (1vw * 80 / 1440 * 100), 6rem);
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}
/* ctabnr-list */
.ctabnr-list {
  display: flex;
  gap: 0 12px;
}
.ctabnr-list_item {
  flex: 0 1 50%;
  display: flex;
  position: relative;
  height: 328px;
  text-align: center;
  border-radius: 8px;
  overflow: hidden;
  transition: 0.5s ease-out;
  opacity: 0;
  clip-path: polygon(0 0, 100% 0, 100% 1%, 0 1%);
  filter: grayscale(1000%);
  transition: 0.45s 0.1s ease-in-out;
}
.ctabnr-list_item:nth-child(2) {
  transition: 0.45s 0.3s ease-in-out;
}
.ctabnr-list_item.on {
  opacity: 1;
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  animation: grayscaleAnime 0.8s 0.85s ease-in-out forwards;
}
.ctabnr-list_item picture {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ctabnr-list_item picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.45s ease-in-out;
}
@media (hover: hover) {
  .ctabnr-list_item:hover picture img {
    transform: scale(1.075);
  }
}
.ctabnr-contents {
  padding-top: 4.25rem;
  padding-bottom: clamp(3rem, (1vw * 74 / 1440 * 100), 4.625rem);
  margin: 0 auto;
  position: relative;
  text-align: center;
}
.ctabnr-title {
  font-size: clamp(
    calc(40 / 16 * 1rem),
    calc(48 / 1440 * 100vw),
    calc(48 / 16 * 1rem)
  );
  line-height: 1;
  letter-spacing: 0.05em;
  font-family: var(--googlefont-Instrument);
  text-transform: uppercase;
}
.ctabnr-copy {
  margin-top: clamp(0.875rem, (1vw * 18 / 1440 * 100), 1.125rem);
  font-size: clamp(
    calc(13 / 16 * 1rem),
    calc(15 / 1440 * 100vw),
    calc(15 / 16 * 1rem)
  );
  line-height: 1.8;
  letter-spacing: 0.05em;
}
@media (max-width: 768px) {
  section.home-cta {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  /* ctabnr-list */
  .ctabnr-list {
    display: block;
  }
  .ctabnr-list_item {
    height: 262px;
  }
  .ctabnr-list_item:nth-child(2) {
    margin-top: 8px;
  }
  .ctabnr-contents {
    padding-top: 2.625rem;
    padding-bottom: auto;
  }
}
