@charset "UTF-8";
/*-----------------
基本設定
------------------*/
html {
  scroll-behavior: smooth;
}

img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

body {
  font-size: 15px;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  color: #3E3E3E;
  line-height: 2;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
}

.inner {
  max-width: 1140px;
  margin: 0 auto;
  width: 79.16%;
}

.textCenter {
  text-align: center;
}

.border-dashed {
  background-image: linear-gradient(to right, #ADADAD 5px, transparent 5px);
  background-size: 10px 1px;
  background-repeat: repeat-x;
  background-position: left bottom;
}

.only-pc {
  display: block;
}

.pc-tab1280 {
  display: block;
}

.pc-tab1024 {
  display: block;
}

.tab1280 {
  display: none;
}

.tab1280-tab1024 {
  display: none;
}

.tab1280-sp {
  display: none;
}

.tab1024 {
  display: none;
}

.tab1024-sp {
  display: none;
}

.only-sp {
  display: none;
}

@media screen and (max-width: 1280px) {
  .only-pc {
    display: none;
  }
  .pc-tab1280 {
    display: block;
  }
  .pc-tab1024 {
    display: block;
  }
  .tab1280 {
    display: block;
  }
  .tab1280-tab1024 {
    display: block;
  }
  .tab1280-sp {
    display: block;
  }
  .tab1024 {
    display: none;
  }
  .tab1024-sp {
    display: none;
  }
  .only-sp {
    display: none;
  }
  .inner {
    width: 89.333%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 1024px) {
  .only-pc {
    display: none;
  }
  .pc-tab1280 {
    display: none;
  }
  .pc-tab1024 {
    display: block;
  }
  .only-tab1280 {
    display: none;
  }
  .tab1280-tab1024 {
    display: block;
  }
  .tab1280-sp {
    display: block;
  }
  .only-tab1024 {
    display: block;
  }
  .tab1024-sp {
    display: block;
  }
  .only-sp {
    display: none;
  }
  .inner {
    width: 86.66%;
    margin: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .only-pc {
    display: none;
  }
  .pc-tab1280 {
    display: none;
  }
  .pc-tab1024 {
    display: none;
  }
  .only-tab1280 {
    display: none;
  }
  .tab1280-tab1024 {
    display: none;
  }
  .tab1280-sp {
    display: block;
  }
  .only-tab1024 {
    display: none;
  }
  .tab1024-sp {
    display: block;
  }
  .only-sp {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  body {
    font-size: 14px;
  }
  .inner {
    width: 89.333%;
  }
}
.l-center {
  margin-right: auto;
  margin-left: auto;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.l-left {
  margin-left: 0;
  margin-right: auto;
}

.l-right {
  margin-right: 0;
  margin-left: auto;
}

.bl-flex {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.bl-flex__rowCenter {
  justify-content: center;
}

.bl-flex__leftAlignment {
  justify-content: flex-start;
}

.bl-flex__rightAlignment {
  justify-content: flex-end;
}

.bl-flex__topAlignment {
  align-items: flex-start;
}

.bl-flex__bottomAlignment {
  align-items: flex-start;
}

/* 大見出し 英語（大）＋日本語（小） */
.bl-largeTitle {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.bl-largeTitle-ja {
  font-size: 20px;
  letter-spacing: 0.05em;
}

.bl-largeTitle-en {
  font-size: 75px;
  letter-spacing: 0.05em;
  font-family: "Jost", sans-serif;
}

/* 中見出し 英語（小）＋日本語（大） */
.bl-mediumTitle-ja {
  font-size: 34px;
  letter-spacing: 0.05em;
}

.bl-mediumTitle-en {
  font-size: 17px;
  letter-spacing: 0.05em;
  font-family: "Jost", sans-serif;
}

/* 小見出し */
.bl-smallTitle {
  font-size: 23px;
  letter-spacing: 0.05em;
}

/*---------------------------
ヘッダー
---------------------------*/
.head {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 4.7% 15px 6.9%;
  z-index: 999;
  transform: translateY(-100%);
  -webkit-animation-name: headerAnime;
          animation-name: headerAnime;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.head--recruit {
  background-color: #FFFFFF;
  -webkit-animation: unset;
          animation: unset;
  transform: translateY(0);
}

.head--thanks {
  -webkit-animation: unset;
          animation: unset;
  transform: translateY(0);
}

@-webkit-keyframes headerAnime {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}

@keyframes headerAnime {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
.head__side-r {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.head__logo {
  width: 17%;
}
@media screen and (max-width: 768px) {
  .head__logo {
    width: 32%;
    min-width: 170px;
  }
}

.headNav-list {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.headNav-list__item {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.headNav-list__item a {
  width: 160px;
  display: block;
  padding: 10px 0;
  text-align: center;
  line-height: 1;
  border-radius: 50px;
  letter-spacing: 0.032em;
}

.headNav-list__item--recruit {
  margin-right: 18px;
}
.headNav-list__item--recruit a {
  padding: 15px 0;
  color: #3E3E3E;
  background-image: linear-gradient(318deg, rgb(255, 255, 0), rgb(255, 188, 7));
}
@media screen and (max-width: 768px) {
  .headNav-list__item--recruit {
    display: none;
  }
}

.headNav-list__item--contact {
  margin-right: 32px;
}
.headNav-list__item--contact a {
  padding: 15px 0;
  color: #FFFFFF;
  background-color: #1A1A1A;
}
@media screen and (max-width: 768px) {
  .headNav-list__item--contact {
    display: none;
  }
}

/*========= ナビゲーションのためのCSS ===============*/
.burger-nav {
  position: fixed;
  z-index: -1;
  opacity: 0;
  top: 0;
  right: 0;
  width: 100%;
  height: 100vh;
  background-image: linear-gradient(180deg, rgb(255, 255, 255), rgb(223, 229, 240));
  transition: all 0.3s;
  pointer-events: none;
}

.burger-nav.panelactive {
  opacity: 1;
  z-index: 999;
  pointer-events: all;
}

.burger-nav.panelactive .burger-nav__listWrap {
  /*ナビの数が増えた場合縦スクロール*/
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100vh; /*表示する高さ*/
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
.burger-nav .burger-nav__list {
  display: none;
  /*ナビゲーション天地中央揃え*/
  position: absolute;
  z-index: 999;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.burger-nav.panelactive .burger-nav__list {
  display: block;
}

/*リストのレイアウト設定*/
.burger-nav .burger-nav__item {
  list-style: none;
  text-align: center;
}

.burger-nav .burger-nav__item a {
  color: #333;
  text-decoration: none;
  padding: 10px;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: bold;
}

/*========= ボタンのためのCSS ===============*/
.openbtn1 {
  position: relative;
  z-index: 9999; /*ボタンを最前面に*/
  cursor: pointer;
  width: 64px;
  height: 64px;
  background-color: #FFFFFF;
  border-radius: 50%;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 768px) {
  .openbtn1 {
    width: 46px;
    height: 46px;
  }
}

/*×に変化*/
.openbtn1 span {
  display: inline-block;
  transition: all 0.4s;
  position: absolute;
  left: 50%;
  height: 3px;
  background-color: #1A1A1A;
  width: 28px;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .openbtn1 span {
    height: 2px;
  }
}

.openbtn1 span:nth-of-type(1) {
  top: 24px;
}
@media screen and (max-width: 768px) {
  .openbtn1 span:nth-of-type(1) {
    top: 15px;
  }
}

.openbtn1 span:nth-of-type(2) {
  top: 50%;
  transform: translate(-50%, -50%);
}

.openbtn1 span:nth-of-type(3) {
  bottom: 24px;
}
@media screen and (max-width: 768px) {
  .openbtn1 span:nth-of-type(3) {
    bottom: 15px;
  }
}

.openbtn1.active span:nth-of-type(1) {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 35px;
}

.openbtn1.active span:nth-of-type(2) {
  opacity: 0;
}

.openbtn1.active span:nth-of-type(3) {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 35px;
}

.burger-nav__item--recruit {
  margin-top: 20px;
}
.burger-nav__item--recruit a {
  color: #3E3E3E;
  background-image: linear-gradient(318deg, rgb(255, 255, 0), rgb(255, 188, 7));
  border-radius: 50px;
}

.burger-nav__item--contact {
  margin-top: 20px;
}
.burger-nav__item--contact a {
  color: #FFFFFF !important;
  background-color: #1A1A1A;
  border-radius: 50px;
}

.burger-logo {
  position: absolute;
  top: 15px;
  left: 6.9%;
  width: 17%;
}
@media screen and (max-width: 768px) {
  .burger-logo {
    width: 32%;
    min-width: 170px;
  }
}

.burger-nav__item--recruit a {
  width: 160px;
}

.burger-nav__item--contact a {
  width: 160px;
}

/*---------------------------
フッター
---------------------------*/
.foot {
  padding: 58px 0 12px;
  background-image: linear-gradient(180deg, rgb(255, 255, 255), rgb(223, 229, 240));
}

.foot__logo {
  width: 17.9%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .foot__logo {
    width: 60%;
  }
}

.foot__copy {
  font-size: 12px;
  font-weight: 700;
  text-align: center;
  letter-spacing: 0;
  line-height: 1;
  margin-top: 33px;
}
@media screen and (max-width: 768px) {
  .foot__copy {
    font-size: 10px;
    margin-top: 20px;
    width: 100%;
  }
}

/*---------------------------
TOPページ
---------------------------*/
/*====== 動き =====*/
.fadeUp {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}

.fadeUp.is-show {
  opacity: 1;
  transform: translateY(0);
}

.bl-ttl {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 143px;
}
@media screen and (max-width: 1024px) {
  .bl-ttl {
    gap: 80px;
  }
}
@media screen and (max-width: 768px) {
  .bl-ttl {
    gap: 40px;
  }
}

.bl-ttl__en {
  font-size: 116px;
  letter-spacing: 0.032em;
  line-height: 1;
  position: relative;
  text-transform: uppercase;
  font-family: "Oswald", sans-serif;
}
@media screen and (max-width: 1024px) {
  .bl-ttl__en {
    font-size: 80px;
  }
}
@media screen and (max-width: 768px) {
  .bl-ttl__en {
    font-size: 48px;
  }
}
.bl-ttl__en::after {
  content: "";
  position: absolute;
  right: -40.5px;
  top: 50%;
  transform: translate(100%, -50%);
  width: 74px;
  height: 2px;
  background-color: #3E3E3E;
}
@media screen and (max-width: 1024px) {
  .bl-ttl__en::after {
    width: 57px;
    right: -8px;
  }
}
@media screen and (max-width: 768px) {
  .bl-ttl__en::after {
    width: 30px;
    right: -5px;
  }
}

.bl-ttl__ja {
  font-size: 24px;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .bl-ttl__ja {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  .bl-ttl__ja {
    font-size: 15px;
  }
}

.bg-movie {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.bg-movie img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.bg-movie video {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}
.bg-movie::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to right, rgba(186, 182, 174, 0.4) 1px, transparent 1px);
  background-size: 25vw 100%;
}

.underBg-wrap {
  position: relative;
}

.underBg-wrap__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.fv {
  width: 100%;
  height: 100vh;
  position: relative;
}

.fv-txt {
  width: 100%;
  height: auto;
  position: absolute;
  top: 48%;
  left: 0;
  z-index: 99;
}

.fv-txt--black {
  opacity: 1;
  -webkit-animation-name: loopTxtBlackAnime;
          animation-name: loopTxtBlackAnime;
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  font-family: "Oswald", sans-serif;
}

.fv-txt__wrapper {
  display: flex;
  width: 100%;
  overflow: hidden;
}

.fv-txt__loop-txt {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 10.1vw;
  letter-spacing: 0;
  line-height: 1.3;
  overflow: hidden;
  padding-left: 20px;
  background: linear-gradient(318deg, rgb(62, 62, 62), rgb(62, 62, 62));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: "Oswald", sans-serif;
}
@media screen and (max-width: 768px) {
  .fv-txt__loop-txt {
    font-size: 65px;
  }
}

.fv-txt__loop-txt:nth-child(odd) {
  -webkit-animation: loop 50s -25s linear infinite;
          animation: loop 50s -25s linear infinite;
}

.fv-txt__loop-txt:nth-child(even) {
  -webkit-animation: loop2 50s linear infinite;
          animation: loop2 50s linear infinite;
}

.fv-txt--yellow {
  z-index: 98;
  -webkit-animation-name: loopTxtYellowAnime;
          animation-name: loopTxtYellowAnime;
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  opacity: 0;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
.fv-txt--yellow .fv-txt__loop-txt {
  background: linear-gradient(318deg, rgb(255, 255, 0), rgb(255, 188, 7));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: "Oswald", sans-serif;
}

@-webkit-keyframes loopTxtBlackAnime {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes loopTxtBlackAnime {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes loopTxtYellowAnime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes loopTxtYellowAnime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes loop {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@-webkit-keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
@keyframes loop2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}
.fv-slider__slide {
  transition: transform 0.4s ease, opacity 0.4s ease;
  padding: 0 0.13%;
  transform: scale(0.82); /* 中央スライドを拡大 */
}

.slick-center {
  transform: scale(1); /* 中央スライドを拡大 */
  opacity: 1;
  z-index: 2;
}
.slick-center img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.fv-slider {
  top: 50%;
  left: 0;
  position: absolute;
  transform: translateY(-50%);
  width: 100%;
  max-height: 81.11vh;
  opacity: 0;
  -webkit-animation-name: fvAppearAnime;
          animation-name: fvAppearAnime;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.fv__catch {
  font-size: 2.98vw;
  color: #FFFFFF;
  padding: 25px 61px;
  background-color: #3E3E3E;
  line-height: 1;
  position: absolute;
  bottom: 7.88%;
  left: 0;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  letter-spacing: 0.14em;
  z-index: 99;
  opacity: 0;
  -webkit-animation-name: fvAppearAnime;
          animation-name: fvAppearAnime;
  -webkit-animation-duration: 1.5s;
          animation-duration: 1.5s;
  -webkit-animation-delay: 2s;
          animation-delay: 2s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
@media screen and (max-width: 768px) {
  .fv__catch {
    font-size: 18px;
    color: #FFFFFF;
    padding: 20px 7%;
  }
}

@-webkit-keyframes fvAppearAnime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fvAppearAnime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/*======= 私たちについて =======*/
.about {
  padding-top: 104px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .about {
    padding-top: 80px;
  }
}

.inner--about {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 8.7%;
  position: relative;
  z-index: 9;
}
@media screen and (max-width: 768px) {
  .inner--about {
    display: block;
  }
}

.about-ttl {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  flex-direction: row-reverse;
}
@media screen and (max-width: 768px) {
  .about-ttl {
    display: block;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: 0 auto;
  }
}
.about-ttl span {
  font-size: 55px;
  letter-spacing: 0.2em;
  line-height: 1.8;
  writing-mode: vertical-lr;
  display: block;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}
@media screen and (max-width: 1024px) {
  .about-ttl span {
    font-size: 40px;
  }
}
@media screen and (max-width: 768px) {
  .about-ttl span {
    font-size: 25px;
    writing-mode: unset;
  }
}
.about-ttl span:last-of-type {
  margin-top: 146px;
}
@media screen and (max-width: 768px) {
  .about-ttl span:last-of-type {
    margin-top: 0;
  }
}

.normalDocs--about {
  padding-bottom: 60px;
}
@media screen and (max-width: 768px) {
  .normalDocs--about {
    text-align: center;
    margin-top: 25px;
  }
}

.about-txt {
  width: 100%;
  height: auto;
  position: absolute;
  top: 48%;
  left: 0;
  z-index: 8;
  font-family: "Oswald", sans-serif;
}

.about-txt__wrapper {
  display: flex;
  width: 100%;
  overflow: hidden;
}

.about-txt__loop-txt {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 10.1vw;
  letter-spacing: 0;
  line-height: 1.3;
  overflow: hidden;
  padding-left: 20px;
  color: #FFFFFF;
}
@media screen and (max-width: 768px) {
  .about-txt__loop-txt {
    font-size: 65px;
  }
}

.about-txt__loop-txt:nth-child(odd) {
  -webkit-animation: loop 50s -25s linear infinite;
          animation: loop 50s -25s linear infinite;
}

.about-txt__loop-txt:nth-child(even) {
  -webkit-animation: loop2 50s linear infinite;
          animation: loop2 50s linear infinite;
}

/*========== underAbout ==========*/
.underAbout-slider {
  margin-top: 178px;
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .underAbout-slider {
    margin-top: 80px;
  }
}

/*======= スライダー =======*/
.underAboutSlider-wrap {
  width: 100%;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .underAboutSlider-wrap {
    margin-top: 63px;
  }
}

.underAboutSlider {
  width: 341.8%;
  aspect-ratio: 1/0.069;
  position: relative;
}
@media screen and (max-width: 768px) {
  .underAboutSlider {
    width: 452%;
  }
}

@media screen and (max-width: 1024px) {
  .underAboutSlider {
    width: 735.96%;
  }
}
.underAboutSlider .underAboutSlider__block {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  height: 100%;
  gap: 0.8%;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  -webkit-animation: infinity-scroll-left 40s infinite linear 0.5s both;
  animation: infinity-scroll-left 40s infinite linear 0.5s both;
  height: 100%;
  width: 50%;
  display: block;
  position: relative;
}

@media screen and (max-width: 1024px) {
  .underAboutSlider .underAboutSlider__block .underAboutSlider__list {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    -webkit-animation: infinity-scroll-left 30s infinite linear 0.5s both 0.001s;
    animation: infinity-scroll-left 30s infinite linear 0.5s both 0.001s;
  }
}
.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item {
  height: auto;
  position: absolute;
  border-radius: 10px;
  overflow: hidden;
  width: 15.4%;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:nth-of-type(odd) {
  top: 0;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:nth-of-type(even) {
  bottom: 0;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:first-of-type {
  left: 0;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:nth-of-type(2) {
  left: 16.9%;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:nth-of-type(3) {
  left: 33.8%;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:nth-of-type(4) {
  left: 50.7%;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:nth-of-type(5) {
  left: 67.6%;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item:nth-of-type(6) {
  left: 84.5%;
}

.underAboutSlider .underAboutSlider__block .underAboutSlider__list .underAboutSlider__item img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  box-shadow: 0 0 15px rgba(0, 0, 0, 0.16);
}

@-webkit-keyframes infinity-scroll-left {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
/*========== 訪問エリア ==========*/
.area {
  padding: 90px 0 110px;
  margin-top: 220px;
  background-color: #3E3E3E;
}
@media screen and (max-width: 768px) {
  .area {
    padding: 80px 0;
    margin-top: 80px;
  }
}

.inner--area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 7.8%;
}
@media screen and (max-width: 768px) {
  .inner--area {
    display: block;
  }
}

.area__side-l {
  width: 510px;
}
@media screen and (max-width: 1024px) {
  .area__side-l {
    width: 380px;
  }
}
@media screen and (max-width: 768px) {
  .area__side-l {
    width: 100%;
  }
}

.bl-ttl__en--area {
  color: #FFFFFF;
}
.bl-ttl__en--area::after {
  background-color: #FFFFFF;
}

.bl-ttl__ja--area {
  color: #FFFFFF;
}

.area__sub-ttl {
  color: #FFFFFF;
  margin-top: 65px;
  font-size: 24px;
  letter-spacing: 0.048em;
  line-height: 1.33;
}
@media screen and (max-width: 768px) {
  .area__sub-ttl {
    font-size: 18px;
    margin-top: 30px;
  }
}

.normalDocs--area {
  color: #FFFFFF;
  margin-top: 33px;
}
@media screen and (max-width: 768px) {
  .normalDocs--area {
    margin-top: 30px;
  }
}

.area__side-r {
  width: calc(92.2% - 510px);
  margin-right: -2.1%;
}
@media screen and (max-width: 1024px) {
  .area__side-r {
    width: calc(92.2% - 380px);
  }
}
@media screen and (max-width: 768px) {
  .area__side-r {
    width: 85%;
    max-width: 450px;
    margin: 30px auto 0;
  }
}

/*========== 事業内容 ==========*/
.service {
  margin-top: 45px;
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  .service {
    padding-top: 80px;
    margin-top: 0;
  }
}

.service-content {
  margin-top: 45px;
}
@media screen and (max-width: 768px) {
  .service-content {
    margin-top: 50px;
  }
}

.service__list .service__item:not(:first-of-type) {
  margin-top: 117px;
}
@media screen and (max-width: 768px) {
  .service__list .service__item:not(:first-of-type) {
    margin-top: 80px;
  }
}

.service__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5.8%;
}
@media screen and (max-width: 768px) {
  .service__item {
    display: block;
  }
}

.service-content__side-l {
  width: 504px;
}
@media screen and (max-width: 1024px) {
  .service-content__side-l {
    width: 410px;
  }
}
@media screen and (max-width: 768px) {
  .service-content__side-l {
    width: 100%;
  }
}

.service-content__side-r {
  width: calc(94.2% - 504px);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.16);
  border-radius: 20px;
  overflow: hidden;
}
@media screen and (max-width: 1024px) {
  .service-content__side-r {
    width: calc(94.2% - 410px);
  }
}
@media screen and (max-width: 768px) {
  .service-content__side-r {
    width: 100%;
    margin-top: 30px;
  }
}

.service-content__ttl-wrap {
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  gap: 40px;
}
@media screen and (max-width: 1024px) {
  .service-content__ttl-wrap {
    gap: 25px;
  }
}
@media screen and (max-width: 768px) {
  .service-content__ttl-wrap {
    align-items: center;
    gap: 15px;
  }
}

.service-num {
  font-family: "Oswald", sans-serif;
  font-size: 83px;
  background: linear-gradient(318deg, rgb(255, 255, 0), rgb(255, 188, 7));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .service-num {
    font-size: 63px;
  }
}
@media screen and (max-width: 768px) {
  .service-num {
    font-size: 55px;
  }
}

.service-content__ttl {
  font-size: 27px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.054em;
}
@media screen and (max-width: 1024px) {
  .service-content__ttl {
    font-size: 23px;
  }
}
@media screen and (max-width: 768px) {
  .service-content__ttl {
    font-size: 20px;
  }
}

.service-content__txt {
  margin-top: 41px;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .service-content__txt {
    margin-top: 20px;
  }
}

.service-detail__list {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 15px 8px;
  margin-top: 78px;
}
@media screen and (max-width: 768px) {
  .service-detail__list {
    padding-left: 0;
    margin-top: 30px;
    gap: 10px 10px;
  }
}

.service-detail__item {
  font-size: 18px;
  line-height: 1;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  padding: 5px 15px;
  background-color: #FFFFFF;
  border-radius: 5px;
}
@media screen and (max-width: 1024px) {
  .service-detail__item {
    font-size: 16px;
  }
}

.service-txt {
  width: 100%;
  height: auto;
  position: relative;
  margin-top: 156px;
  z-index: 8;
}

.service-txt__wrapper {
  display: flex;
  width: 100%;
  overflow: hidden;
}

.service-txt__loop-txt {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 10.1vw;
  letter-spacing: 0;
  line-height: 1.3;
  overflow: hidden;
  padding-left: 20px;
  color: #FFFFFF;
  font-family: "Oswald", sans-serif;
}
@media screen and (max-width: 768px) {
  .service-txt__loop-txt {
    font-size: 65px;
  }
}

.service-txt__loop-txt:nth-child(odd) {
  -webkit-animation: loop 50s -25s linear infinite;
          animation: loop 50s -25s linear infinite;
}

.service-txt__loop-txt:nth-child(even) {
  -webkit-animation: loop2 50s linear infinite;
          animation: loop2 50s linear infinite;
}

/*========== 取引のある病院 ==========*/
.partner {
  padding-top: 100px;
  margin-top: 111px;
}
@media screen and (max-width: 768px) {
  .partner {
    margin-top: 0;
    padding-top: 80px;
  }
}

.partner__list {
  margin-top: 60px;
  display: flex;
  align-items: stretch;
  justify-content: space-between;
  gap: 33px 2.89%;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .partner__list {
    margin-top: 50px;
    gap: 10px 10px;
  }
}

.partner__item {
  width: 31.08%;
  padding: 44px 2.8% 49px;
  background-color: #FFFFFF;
  border-radius: 20px;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 768px) {
  .partner__item {
    width: calc(50% - 5px);
    padding: 30px 2.8% 49px;
  }
}

.partner__logo {
  width: 100%;
  padding-bottom: 22px;
  border-bottom: 1px solid rgba(26, 26, 26, 0.3);
}
.partner__logo img {
  width: 93.8%;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .partner__logo img {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .partner__logo {
    padding-bottom: 10px;
  }
}

.partner__info {
  margin-top: 30px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.028em;
  line-height: 1.42;
}
@media screen and (max-width: 768px) {
  .partner__info {
    margin-top: 10px;
    font-size: 12px;
  }
}

/*========== 会社概要 ==========*/
.company {
  margin-top: 178px;
  padding: 120px 0 195px;
  background-color: #3E3E3E;
}
@media screen and (max-width: 768px) {
  .company {
    margin-top: 80px;
    padding: 80px 0;
  }
}

.bl-ttl__en--company {
  color: #FFFFFF;
}
.bl-ttl__en--company::after {
  background-color: #FFFFFF;
}

.bl-ttl__ja--company {
  color: #FFFFFF;
}

.company-table {
  display: block;
  width: 100%;
  margin-top: 70px;
}

.company-table__body {
  display: block;
  width: 100%;
}

.company-table__row {
  width: 100%;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
}

.company-table__head {
  width: 285px;
  padding: 35px 0;
  text-align: center;
  color: #FFFFFF;
  line-height: 1.5;
  border-bottom: 1.5px solid #FFCC08;
}
@media screen and (max-width: 768px) {
  .company-table__head {
    width: 85px;
    padding: 15px 0;
  }
}

.company-table__data {
  width: calc(100% - 285px);
  padding: 35px 20px 35px 40px;
  border-bottom: 1.5px solid #CECECE;
  color: #FFFFFF;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .company-table__data {
    width: calc(100% - 85px);
    padding: 15px;
  }
}

.company-table__data a{
  border-bottom: 1px solid #FFCC08;
  display: inline-block;
  color: #FFCC08;
}

/*========== お問い合わせ ==========*/
.contact {
  margin-top: 65px;
  padding-top: 100px;
}
@media screen and (max-width: 768px) {
  .contact {
    margin-top: 0;
    padding-top: 80px;
  }
}

.contact--confirm {
  margin-top: 0;
}

.contactForm {
  margin: 100px auto 160px;
  width: 87.1%;
}
@media screen and (max-width: 1024px) {
  .contactForm {
    width: 100%;
    margin: 50px auto 0;
  }
}

.formDl {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 30px;
}
@media screen and (max-width: 1024px) {
  .formDl {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .formDl {
    margin-bottom: 20px;
  }
}
.formDl.formDl-flexStart {
  align-items: flex-start;
}
@media screen and (max-width: 1024px) {
  .formDl.formDl-flexStart {
    display: block;
  }
}

.formDt {
  width: 209px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
@media screen and (max-width: 1024px) {
  .formDt {
    width: 100%;
    justify-content: flex-start;
  }
}

.formTtl {
  margin-right: 3px;
  color: #3E3E3E;
  text-align: right;
}
@media screen and (max-width: 1024px) {
  .formTtl {
    margin-right: 0;
  }
}

.formRequired {
  line-height: 1;
  color: #E63535;
}

.formDd {
  width: calc(100% - 209px);
  margin-left: 5.3%;
}
@media screen and (max-width: 1024px) {
  .formDd {
    width: 100%;
    margin-left: 0;
    margin-top: 5px;
  }
}

input[type=text],
input[type=email],
textarea {
  padding: 10px 20px;
  background-color: #FFFFFF;
  color: #3E3E3E;
  width: 100%;
}
@media screen and (max-width: 1024px) {
  input[type=text],
input[type=email],
textarea {
    padding: 5px 10px;
  }
}

textarea {
  height: 181px;
}

::-moz-placeholder {
  color: #AFAFAF;
}

::placeholder {
  color: #AFAFAF;
}

input[type=checkbox] {
  position: relative;
  width: 20px;
  height: 20px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #0D0D67;
}

input[type=checkbox]:checked:before {
  position: absolute;
  top: 0px;
  left: 6px;
  transform: rotate(50deg);
  width: 6px;
  height: 14px;
  content: "";
  border-bottom: 1px solid #0D0D67;
  border-right: 1px solid #0D0D67;
}

.privacy-wrap {
  width: 70%;
  min-width: 500px;
  margin: 82px auto 40px;
  color: #3E3E3E;
}
@media screen and (max-width: 768px) {
  .privacy-wrap {
    min-width: unset;
    width: 100%;
    margin: 50px auto 30px;
  }
}

.policy-check {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 30px auto;
}

.form--policyLink {
  text-decoration: underline;
}

.submit {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
  transition: all 0.3s;
  pointer-events: all;
  border-radius: 50px;
}
@media screen and (max-width: 768px) {
  .submit {
    margin-bottom: 80px;
  }
  .submit.submit--no-bottom {
    margin-bottom: 0;
  }
}

.submitBtn {
  width: 248px;
  padding: 15px 0;
  font-size: 20px;
  background-color: #151515;
  color: #FFFFFF;
  border-radius: 50px;
  text-align: center;
  line-height: 1;
  opacity: 1;
  transition: all 0.5s;
}
@media screen and (max-width: 768px) {
  .submitBtn {
    width: 180px;
    font-size: 16px;
  }
}

.submitBtn:hover {
  opacity: 0.7;
  transition: all 0.5s;
}

.thanks {
  padding: 200px 0;
  min-height: 100vh;
}

.thanks-txt {
  text-align: center;
}

.return-btn a {
  font-size: 20px;
  display: block;
  color: #FFFFFF;
  background-color: #1A1A1A;
  padding: 20px 0;
  width: 280px;
  margin: 100px auto 0;
  line-height: 1;
  border-radius: 50px;
  text-align: center;
  font-weight: 400;
  transition: all 0.5s;
}
.return-btn a:hover {
  opacity: 0.7;
  transition: all 0.5s;
}

.submit-wrap {
  margin-top: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1024px) {
  .submit-wrap {
    margin-top: 50px;
    flex-direction: column;
    gap: 30px;
  }
}

.privacy-wrap {
  margin: 55px auto 30px;
}

.policy-block {
  width: 100%;
  height: 212px;
  background-color: #FFFFFF;
  padding: 14px 43px 14px 17px;
  overflow-y: scroll;
  border: 1px solid #3E3E3E;
}

.policy-ttl {
  font-weight: 600;
  letter-spacing: 0.028em;
  line-height: 1.5;
  color: #3E3E3E;
}

.policy-txt {
  margin-top: 8px;
  font-size: 12px;
  letter-spacing: 0;
  line-height: 1.4;
  color: #3E3E3E;
}

.photo {
  margin-top: 112px;
}
@media screen and (max-width: 768px) {
  .photo {
    margin-top: 80px;
  }
}

.photo-gallery {
  margin-top: 80px;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  gap: 20px;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .photo-gallery {
    gap: 10px;
  }
}

.photo-gallery__item {
  width: calc(25% - 15px);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}
@media screen and (max-width: 768px) {
  .photo-gallery__item {
    width: calc(50% - 5px);
  }
}

.staff {
  margin-top: 280px;
}
@media screen and (max-width: 1024px) {
  .staff {
    margin-top: 150px;
  }
}
@media screen and (max-width: 768px) {
  .staff {
    margin-top: 100px;
  }
}

/*---------------------------
recruitページ
---------------------------*/
/*========= LoadingのためのCSS ===============*/
/* Loading背景画面設定　*/
#splash {
  position: fixed;
  width: 100%;
  height: 100vh;
  z-index: 9999;
  background: #FFFFFF;
  text-align: center;
  color: #fff;
  top: 0;
  left: 0;
}

/* Loading画像中央配置　*/
#splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.splash-bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #151515;
  transform: translateY(100%);
  -webkit-animation-name: loadingBgAnime;
          animation-name: loadingBgAnime;
  -webkit-animation-duration: 2s;
          animation-duration: 2s;
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

@-webkit-keyframes loadingBgAnime {
  0% {
    transform: translateY(100%);
  }
  45% {
    transform: translateY(0);
  }
  55% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}

@keyframes loadingBgAnime {
  0% {
    transform: translateY(100%);
  }
  45% {
    transform: translateY(0);
  }
  55% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-100%);
  }
}
/* Loading アイコンの大きさ設定　*/
#splash_logo img {
  width: 260px;
}

/* fadeUpをするアイコンの動き */
.loadingFadeUp {
  -webkit-animation-name: fadeInLoadingLogoAnime;
          animation-name: fadeInLoadingLogoAnime;
  -webkit-animation-duration: 2.3s;
          animation-duration: 2.3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes fadeInLoadingLogoAnime {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeInLoadingLogoAnime {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  70% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.recruit-fv {
  width: 100%;
  height: 100vh;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .recruit-fv {
    height: auto;
    margin-top: 80px;
  }
}

.recruit-fv__bg {
  width: 100%;
  height: 100%;
}
.recruit-fv__bg img {
  -o-object-position: top left;
     object-position: top left;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .recruit-fv__bg img {
    -o-object-position: top;
       object-position: top;
  }
}

.recruit-fv__en {
  font-size: min(7.98vw, 130px);
  letter-spacing: 0;
  line-height: 1.09;
  font-weight: 700;
  position: absolute;
  bottom: 6.55%;
  left: 6.9%;
  background: linear-gradient(318deg, rgb(255, 255, 0), rgb(255, 188, 7));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  height: min(28vw, 443px);
}
@media screen and (max-width: 768px) {
  .recruit-fv__en {
    top: 35%;
    bottom: unset;
    font-size: 9vw;
    height: 31vw;
  }
}

.recruit-fv__ja {
  font-size: min(2.8vw, 45px);
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.87;
  color: #000000;
  position: absolute;
  bottom: 8.33%;
  right: 2.56vw;
}
@media screen and (max-width: 768px) {
  .recruit-fv__ja {
    bottom: 4.33%;
    right: 5.56vw;
    font-size: 4.3vw;
  }
}

/*========= underFv =========*/
.underFv {
  width: 100%;
  height: auto;
  padding: 27.77vh 0 21.55vh;
  position: relative;
}
@media screen and (max-width: 768px) {
  .underFv {
    padding: 100px 0;
  }
}

.underFv-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -2;
  overflow-x: hidden;
  overflow-y: hidden;
}
.underFv-bg span:first-of-type {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 50%;
}
.underFv-bg span:first-of-type img {
  -o-object-fit: unset;
     object-fit: unset;
}
.underFv-bg span:last-of-type {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 50%;
}
.underFv-bg span:last-of-type img {
  -o-object-fit: unset;
     object-fit: unset;
  -o-object-position: bottom;
     object-position: bottom;
}

.underFv-txt {
  width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: -1;
  opacity: 1;
  -webkit-animation-name: loopTxtAnime;
          animation-name: loopTxtAnime;
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.underFv-txt__wrapper {
  display: flex;
  width: 100%;
  overflow: hidden;
}

.underFv-txt__loop-txt {
  flex: 0 0 auto;
  white-space: nowrap;
  font-size: 10.1vw;
  letter-spacing: 0;
  line-height: 1.3;
  overflow: hidden;
  padding-left: 20px;
  background: linear-gradient(318deg, rgb(255, 255, 0), rgb(255, 188, 7));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 768px) {
  .underFv-txt__loop-txt {
    font-size: 65px;
  }
}

.underFv-txt__loop-txt:nth-child(odd) {
  -webkit-animation: loop 50s -25s linear infinite;
          animation: loop 50s -25s linear infinite;
}

.underFv-txt__loop-txt:nth-child(even) {
  -webkit-animation: loop2 50s linear infinite;
          animation: loop2 50s linear infinite;
}

.underFv-content {
  width: 63.4%;
  margin: 0 auto;
  position: relative;
  aspect-ratio: 1/0.634;
  max-width: 913px;
}
@media screen and (max-width: 1024px) {
  .underFv-content {
    aspect-ratio: 1/1.956;
    width: 89.33%;
    height: calc(100vh - 180px);
    max-width: 480px;
    max-height: 85vh;
    border-radius: 20px;
    overflow: hidden;
  }
}

.underFv-content__img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.underFv-content__txt-wrap {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 20px;
  background-color: rgba(0, 0, 0, 0.8);
  opacity: 0;
}

.underFv-content__txt {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: clamp(14px, 1.25vw, 18px);
  color: #FFFFFF;
  text-align: center;
  letter-spacing: 0.036em;
  line-height: 2.55;
}

.underFv-txtTrigger {
  width: 100%;
  height: 100vh;
}

/*========= 看護師 =========*/
.professional {
  padding: 70px 0 0;
  position: relative;
}

.professional__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.professional__bg img {
  -o-object-fit: unset;
     object-fit: unset;
}
@media screen and (max-width: 768px) {
  .professional__bg {
    display: none;
  }
}

.bl-recruitTtl {
  position: relative;
}

.bl-recruitTtl__deco {
  width: 202px;
  height: 202px;
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-50%, -44.5%);
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .bl-recruitTtl__deco {
    width: 90px;
    height: 90px;
    transform: translate(-15px, -44.5%);
  }
}

.bl-recruitTtl__en {
  font-size: 67px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .bl-recruitTtl__en {
    font-size: 40px;
  }
}

.bl-recruitTtl__ja {
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.044em;
  line-height: 1;
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .bl-recruitTtl__ja {
    font-size: 16px;
  }
}

.inner--professional {
  width: 83.33%;
  max-width: 1200px;
}
@media screen and (max-width: 1024px) {
  .inner--professional {
    width: 86.66%;
  }
}
@media screen and (max-width: 768px) {
  .inner--professional {
    width: 89.33%;
  }
}

/*
.professional__slide{
    padding-left: 10.4%;
}*/
.professional__list {
  margin-top: 55px;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px;
  position: relative;
  z-index: 5;
}
@media screen and (max-width: 768px) {
  .professional__list {
    gap: 10px;
  }
}

.professional__item {
  width: calc(20% - 16px);
  /*&.slick-slide{
      padding: 0 15px;
  }*/
}
@media screen and (max-width: 768px) {
  .professional__item {
    width: calc(50% - 5px);
  }
}

/*========= インタビュー =========*/
.interview {
  padding: 105px 0 150px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .interview {
    padding: 100px 0;
  }
}

.interview__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}
.interview__bg img {
  -o-object-fit: unset;
     object-fit: unset;
}
@media screen and (max-width: 768px) {
  .interview__bg {
    display: none;
  }
}

.bl-recruitTtl--interview {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  margin: 0 auto;
}

.bl-recruitTtl__en--interview {
  text-align: center;
}

.bl-recruitTtl__ja--interview {
  text-align: center;
}

.interview__list {
  margin-top: 44px;
}
.interview__list .interview__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5.9%;
}
@media screen and (max-width: 1024px) {
  .interview__list .interview__item {
    gap: 3.71%;
  }
}
@media screen and (max-width: 768px) {
  .interview__list .interview__item {
    display: block;
  }
}
.interview__list .interview__item:not(:first-of-type) {
  margin-top: 40px;
}
.interview__list .interview__item:nth-of-type(odd) {
  flex-direction: row;
  padding: 27.5px 5.43% 27.5px 2.28%;
}
.interview__list .interview__item:nth-of-type(odd) .interview-border {
  left: 15px;
}
.interview__list .interview__item:nth-of-type(even) {
  flex-direction: row-reverse;
  padding: 27.5px 2.28% 27.5px 5.43%;
}
.interview__list .interview__item:nth-of-type(even) .interview-border {
  right: 15px;
}

.interview__item {
  background-color: #FFFFFF;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}

.interview-img {
  position: relative;
  width: 47.7%;
}
@media screen and (max-width: 768px) {
  .interview-img {
    width: 100%;
  }
}

.interview-border {
  position: absolute;
  width: auto;
  height: calc(100% + 55px);
  top: -27.5px;
}
@media screen and (max-width: 768px) {
  .interview-border {
    height: calc(100% + 30px);
    top: -15px;
  }
  .interview-border img {
    -o-object-fit: contain;
       object-fit: contain;
  }
}

.interview-content {
  width: 38.59%;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .interview-content {
    width: 48.59%;
  }
}
@media screen and (max-width: 768px) {
  .interview-content {
    width: 100%;
    margin-top: 50px;
  }
}

.interview-num {
  line-height: 1;
  letter-spacing: 0;
  color: #FFCC08;
  font-weight: 300;
  font-style: italic;
  font-size: clamp(80px, 1.08vw, 124px);
  position: absolute;
  top: 0;
  right: 0;
  transform: translateY(-27%);
  font-family: "Roboto Condensed", sans-serif;
}

.interview-name__head {
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.036em;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .interview-name__head {
    font-size: 16px;
  }
}

.interview-name__name {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0.044em;
  line-height: 1;
  margin-top: 5px;
}
@media screen and (max-width: 768px) {
  .interview-name__name {
    font-size: 20px;
  }
}

.interview__txt {
  margin-top: 25px;
}

/*========= 1日の動き =========*/
.daily-flow {
  padding: 220px 0 0;
  position: relative;
}
@media screen and (max-width: 768px) {
  .daily-flow {
    padding: 110px 0 0;
  }
}

.daily-flow__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.daily-flow__bg img {
  -o-object-fit: unset;
     object-fit: unset;
}
@media screen and (max-width: 768px) {
  .daily-flow__bg {
    display: none;
  }
}

.inner--daily-flow {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10%;
}
@media screen and (max-width: 768px) {
  .inner--daily-flow {
    flex-direction: column-reverse;
  }
}

.daily-flow__list {
  width: 50%;
  background-color: #FFFFFF;
  padding: 50px 4.7%;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  position: relative;
}
@media screen and (max-width: 768px) {
  .daily-flow__list {
    width: 100%;
    margin-top: 50px;
  }
}
.daily-flow__list::after {
  content: "";
  position: absolute;
  top: 50px;
  left: calc(4.7% + 105.5px);
  width: 2px;
  height: calc(100% - 100px);
  background-color: #FFCC08;
}
@media screen and (max-width: 1024px) {
  .daily-flow__list::after {
    left: calc(4.7% + 97px);
  }
}
@media screen and (max-width: 768px) {
  .daily-flow__list::after {
    left: calc(4.7% + 76px);
  }
}
.daily-flow__list .daily-flow__item:not(:first-of-type) {
  margin-top: 45px;
}

.daily-flow__item {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 70px;
}
@media screen and (max-width: 1024px) {
  .daily-flow__item {
    gap: 50px;
  }
}

.daily-flow__time {
  width: 50px;
  text-align: right;
  font-size: 18px;
  letter-spacing: 0.036em;
  line-height: 1;
  position: relative;
}
.daily-flow__time::after {
  content: "";
  position: absolute;
  width: 21px;
  height: 21px;
  background-color: #FFCC08;
  top: 50%;
  right: -21px;
  transform: translate(100%, -50%);
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  .daily-flow__time::after {
    right: -16px;
  }
}
.daily-flow__time::before {
  content: "";
  position: absolute;
  width: 29px;
  height: 29px;
  border: 1px solid #FFCC08;
  top: 50%;
  right: -17px;
  transform: translate(100%, -50%);
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  .daily-flow__time::before {
    right: -12px;
  }
}

.daily-flow__content {
  width: calc(100% - 120px);
}
@media screen and (max-width: 1024px) {
  .daily-flow__content {
    width: calc(100% - 100px);
  }
}

.daily-flow__ttl {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.33;
}

.daily-flow__detail {
  font-size: 14px;
  letter-spacing: 0.028em;
  line-height: 1.5;
  margin-top: 10px;
}

.daily-flow__side-r {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .daily-flow__side-r {
    width: 100%;
  }
}

.bl-recruitTtl--daily-flow {
  padding-left: 3.9%;
}

.daily-flow__img {
  width: 100%;
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  .daily-flow__img {
    margin-top: 50px;
  }
}

/*========= 募集要項 =========*/
.information {
  margin-top: 170px;
  padding-top: 80px;
}
@media screen and (max-width: 768px) {
  .information {
    margin-top: 100px;
  }
}

.information-table {
  margin-top: 45px;
  display: block;
  width: 100%;
}

.information-table__body {
  display: block;
  width: 100%;
}

.information-table__row {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
}

.information-table__head {
  padding: 25px 0;
  text-align: center;
  width: 285px;
  line-height: 1.5;
  border-bottom: 1.5px solid #FFCC08;
}
@media screen and (max-width: 768px) {
  .information-table__head {
    width: 85px;
    padding: 20px 0;
  }
}

.information-table__data {
  padding: 25px 20px 25px 40px;
  width: calc(100% - 285px);
  line-height: 1.5;
  border-bottom: 1.5px solid #CECECE;
}
@media screen and (max-width: 768px) {
  .information-table__data {
    width: calc(100% - 85px);
    padding: 20px 15px 20px 30px;
  }
}

/*========= エントリー =========*/
.entry {
  margin-top: 170px;
  padding-top: 80px;
}
@media screen and (max-width: 768px) {
  .entry {
    margin-top: 100px;
  }
}

.entry--confirm {
  margin-top: 0;
}

.contactForm--entry {
  margin-top: 70px;
}

.radioBtn-wrap {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

input[type=radio] {
  position: relative;
  width: 21px;
  height: 21px;
  background-color: #3E3E3E;
  border-radius: 50%;
  vertical-align: -2px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-right: 3px;
}

input[type=radio]:checked:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #FFFFFF;
  content: "";
}

.radioBtn {
  margin-right: 25px;
  color: #3E3E3E;
}
.radioBtn:last-of-type {
  margin-right: 0;
}
@media screen and (max-width: 420px) {
  .radioBtn {
    margin-right: 13px;
  }
  .radioBtn:last-of-type {
    margin-right: 0;
  }
}

@media screen and (max-width: 1024px) {
  .radioBtn-wrap__contactMethod {
    display: block;
  }
}
.entry input[type=text],
.entry input[type=email],
.entry textarea {
  background-color: #EBEBEB;
}

/*========== 福利厚生 =========*/
.benefits {
  margin-top: 196px;
}

.inner--benefits {
  width: 83.33%;
  max-width: 1200px;
}
@media screen and (max-width: 1024px) {
  .inner--benefits {
    width: 86.66%;
  }
}
@media screen and (max-width: 768px) {
  .inner--benefits {
    width: 89.333%;
  }
}

.benefits__list {
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 45px;
}
@media screen and (max-width: 768px) {
  .benefits__list {
    gap: 10px;
  }
}
.benefits__list .benefits__item:first-of-type .benefits-icon img {
  width: 55%;
}
.benefits__list .benefits__item:nth-of-type(2) .benefits-icon img {
  width: 98.9%;
}
.benefits__list .benefits__item:nth-of-type(3) .benefits-icon img {
  width: 81.6%;
}
.benefits__list .benefits__item:nth-of-type(4) .benefits-icon img {
  width: 89.7%;
}
.benefits__list .benefits__item:nth-of-type(5) .benefits-icon img {
  width: 100%;
}
.benefits__list .benefits__item:nth-of-type(6) .benefits-icon img {
  width: 65%;
}
.benefits__list .benefits__item:nth-of-type(7) .benefits-icon img {
  width: 79.59%;
}
.benefits__list .benefits__item:nth-of-type(8) .benefits-icon img {
  width: 97.9%;
}
.benefits__list .benefits__item:nth-of-type(9) .benefits-icon img {
  width: 48.9%;
}
.benefits__list .benefits__item:nth-of-type(10) .benefits-icon img {
  width: 85.7%;
}
.benefits__list .benefits__item:nth-of-type(11) .benefits-icon img {
  width: 61.22%;
}
.benefits__list .benefits__item:last-of-type .benefits-icon img {
  width: 71.4%;
}

.benefits__item {
  width: calc(25% - 15px);
  aspect-ratio: 1/0.59;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
  padding: 25px 0;
}
@media screen and (max-width: 768px) {
  .benefits__item {
    width: calc(50% - 5px);
  }
}

.benefits-icon {
  width: 32.9%;
  position: relative;
  aspect-ratio: 1/0.97;
  margin: 0 auto;
}
.benefits-icon img {
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.benefits-name {
  margin-top: 10px;
  font-size: clamp(13px, 1.6vw, 25px);
  text-align: center;
}

.recruit-gallery {
  padding-top: 80px;
  margin-top: 175px;
}
@media screen and (max-width: 768px) {
  .recruit-gallery {
    margin-top: 100px;
  }
}
/*# sourceMappingURL=style.css.map */