body {
  margin: 0;
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  /* width: 100%; */
}
.header__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 10px 30px;
  height: 60px;
  background-color: #1d2088;
}
.header__logo img {
  height: 100%;
}
/* ローディング画面 */
.kv-loading {
  background-color: white;
  position: fixed;
  height: 100vh;
  width: 100vw;
  z-index: 10020;
  text-align: center;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  animation: slide-out-container 1s cubic-bezier(0.42, 0, 0.58, 1) 2.5s normal
    forwards;
  animation-fill-mode: forwards;
}

@keyframes slide-out-container {
  0% {
    height: 100vh;
    opacity: 1;
  }
  40% {
    height: 100vh;
    opacity: 1;
  }

  100% {
    height: 0%;
    opacity: 0.5;
  }
}

.kv-loading-header__logo-copy {
  animation: fadeIn 2s ease 0s 1 normal backwards;
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.kv-loading-header__logo img {
  width: 50vw;
  max-width: 200px;
  margin: 0 auto;
}

.kv-loading-header__copy,
.kv-loading-header__logo img {
  display: block;
  font-size: min(5vw, 1.25rem);
  font-weight: 700;
  text-align: center;
  margin: 0 auto;
  margin-top: 10px;
  animation: opacity 1s cubic-bezier(0.42, 0, 0.58, 1) 2s normal forwards;
  animation-fill-mode: forwards;
}

@keyframes opacity {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 1;
  }

  75% {
    opacity: 0.5;
  }

  100% {
    opacity: 0;
  }
}

.subtitle__blue {
  color: #1d2088;
}

.kv-loading__blue {
  background-color: rgba(29, 32, 136, 0.7);
  position: fixed;
  height: 100vh;
  width: 100vw;
  z-index: 10010;
  text-align: center;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  animation: slide-out-container 0.5s ease 3s normal forwards;
}

@keyframes slide-out-container {
  0% {
    height: 100vh;
    opacity: 1;
  }

  100% {
    height: 0%;
    opacity: 0;
  }
}
/* ローディング画面終わり */

.sp-hamburger__button {
  position: fixed;
  top: 0;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 60px;
  width: 60px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 1000;
  background-color: #fff;
}
.sp-hamburger__button span:before {
  bottom: 8px;
}
.sp-hamburger__button span:after {
  top: 8px;
}
.sp-hamburger__button span,
.sp-hamburger__button span:before,
.sp-hamburger__button span:after {
  content: "";
  display: block;
  height: 3px;
  width: 30px;
  border-radius: 3px;
  background-color: #1d2088;
  position: absolute;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
#menu-btn-check {
  display: none;
}
#menu-btn-check:checked ~ .sp-hamburger__button span {
  background-color: rgba(255, 255, 255, 0);
}
#menu-btn-check:checked ~ .sp-hamburger__button span::before {
  bottom: 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
#menu-btn-check:checked ~ .sp-hamburger__button span::after {
  top: 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
#menu-btn-check:checked ~ .sp-nav {
  bottom: 0;
}
.sp-nav {
  position: fixed;
  bottom: 100%;
  left: 0;
  z-index: 900;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  padding-bottom: 20px;
  background-color: rgba(255, 255, 255, 0.85);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
.sp-nav__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 85%;
  max-width: 400px;
}
.sp-nav__item {
  width: 100%;
  padding: 12px 0;
  font-size: 16px;
  font-weight: 700;
  text-align: center;
  border-bottom: 1px solid #ddd;
  text-decoration: none;
  color: #1d2088;
}
.pc-nav {
  display: none;
  height: 60px;
  padding: 0 20px;
  background-color: #fff;
  z-index: 20;
}
.pc-nav__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5em;
}
.pc-nav__inner a {
  font-weight: 700;
  color: #1d2088;
  text-decoration: none;
}
.fv {
  width: 100%;
  position: relative;
}
.fv img {
  width: 100%;
  animation: fv 3.5s cubic-bezier(0.42, 0, 0.58, 1) 2.5s normal forwards;
}

@keyframes fv {
  0% {
    height: 0%;
    opacity: 0;
  }
  100% {
    height: 100vh;
    opacity: 1;
  }
}

.fv picture {
  width: 100%;
}
.fv source,
.fv img {
  vertical-align: top;
  margin-top: 60px;
}
.ribon {
  display: block;
  text-decoration: none;
  background-color: #1d2088;
  padding: 12px 10%;
  color: #fff;
  -webkit-transition-property: opacity;
  -o-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.ribon:hover {
  opacity: 0.6;
}
.ribon h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4px;
}
.ribon h2 span:first-child {
  position: relative;
  top: 2px;
  font-size: 16px;
}
.ribon h2 span:last-child {
  font-size: 24px;
}
.ribon__button {
  display: grid;
  place-items: center;
}
.message {
  padding: 60px 0;
}
.message__inner {
  width: 85%;
  max-width: 1000px;
  margin: 0 auto;
}
.message__text {
  font-size: clamp(22px, 4vw, 30px);
  font-weight: 700;
  line-height: 2;
  color: #252525;
}
.message__image {
  height: clamp(30px, 8vw, 60px);
  margin: 1em 0;
}
.message__image svg {
  height: clamp(30px, 8vw, 60px);
}
.message__image svg .cls-1 {
  fill: #1d2088;
}
.about {
  background-color: #f7f5f6;
}
.about__inner {
  display: grid;
  gap: 20px;
  width: 85%;
  max-width: 1000px;
  margin: 0 auto;
}
.about__heading {
  font-size: clamp(22px, 4vw, 30px);
  color: #333;
}
.about__main {
  line-height: 1.5;
}
.about__spimg {
  display: block;
  margin: 0 auto;
}
.benefit {
  padding: 80px 0;
}
.benefit__container {
  padding-top: 60px;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  gap: 40px;
}
.benefit-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
  padding: 20px 20px 30px;
  background-color: #f7f5f6;
  border-radius: 8px;
}
.benefit-card__number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 36px;
  height: 36px;
  overflow: hidden;
  font-size: 20px;
  font-weight: 700;
  background-color: #1d2088;
  color: #fff;
  border-radius: 100vh;
}
.benefit-card__title {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  color: #1d2088;
}
.benefit-card__title span {
  display: inline-block;
}
.benefit-card__description {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.button--24 {
  display: block;
  width: 100%;
  max-width: 280px;
  padding: 0.4em 1em;
  font-weight: 700;
  text-align: center;
  color: #333;
  text-decoration: none;
  background-color: #f5f5f5;
  border: 1px solid #bbb;
  border-radius: 100vh;
  -webkit-transition: opacity 0.2s ease-out;
  -o-transition: opacity 0.2s ease-out;
  transition: opacity 0.2s ease-out;
}
.button--24:hover {
  opacity: 0.6;
}
.flow {
  background-color: #f7f5f6;
}
.flow__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
  padding-top: 40px;
}
.flow__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  background-color: #fff;
  padding: 20px 15px;
  border-radius: 10px;
}
.flow__number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  top: 10px;
  left: 10px;
  width: 30px;
  height: 30px;
  font-size: 16px;
  font-weight: 700;
  background-color: #1d2088;
  color: #fff;
  border-radius: 100vh;
}
.flow__icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 80px;
  height: 80px;
}
.flow__icon svg {
  fill: #1d2088;
}
.flow__title {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
}
.flow__description {
  font-weight: 400;
}
.flow__arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.flow__arrow svg {
  width: 20px;
  fill: #1d2088;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.top5__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 40px 0;
}
.top5__item {
  position: relative;
  width: 300px;
  padding: 30px 20px 40px;
  margin-bottom: 40px;
  cursor: pointer;
}
.top5__item:nth-child(1) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/oLimg-01.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-01.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-01.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.top5__item:nth-child(1):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/oLimg-01.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-01.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-01.jpg");
  background-size: cover;
}
.top5__item:nth-child(1):hover .top5__number,
.top5__item:nth-child(1):hover .top5__title,
.top5__item:nth-child(1):hover .top5__plus {
  color: #fff;
}
.top5__item:nth-child(2) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/oLimg-02.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-02.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-02.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.top5__item:nth-child(2):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/oLimg-02.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-02.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-02.jpg");
  background-size: cover;
}
.top5__item:nth-child(2):hover .top5__number,
.top5__item:nth-child(2):hover .top5__title,
.top5__item:nth-child(2):hover .top5__plus {
  color: #fff;
}
.top5__item:nth-child(3) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/oLimg-03.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-03.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-03.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.top5__item:nth-child(3):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/oLimg-03.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-03.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-03.jpg");
  background-size: cover;
}
.top5__item:nth-child(3):hover .top5__number,
.top5__item:nth-child(3):hover .top5__title,
.top5__item:nth-child(3):hover .top5__plus {
  color: #fff;
}
.top5__item:nth-child(4) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/oLimg-04.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-04.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-04.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.top5__item:nth-child(4):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/oLimg-04.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-04.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-04.jpg");
  background-size: cover;
}
.top5__item:nth-child(4):hover .top5__number,
.top5__item:nth-child(4):hover .top5__title,
.top5__item:nth-child(4):hover .top5__plus {
  color: #fff;
}
.top5__item:nth-child(5) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/oLimg-05.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-05.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/oLimg-05.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.top5__item:nth-child(5):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/oLimg-05.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-05.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/oLimg-05.jpg");
  background-size: cover;
}
.top5__item:nth-child(5):hover .top5__number,
.top5__item:nth-child(5):hover .top5__title,
.top5__item:nth-child(5):hover .top5__plus {
  color: #fff;
}
.top5__number {
  font-size: 24px;
  font-weight: 700;
  text-align: center;
  color: #1d2088;
}
.top5__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.4em;
  font-weight: 700;
  color: #333;
}
.top5__plus {
  position: absolute;
  right: -270px;
  bottom: 0px;
  font-size: 30px;
  font-weight: 700;
  color: #1d2088;
}
.entry {
  text-align: center;
}
.entry__button {
  position: relative;
  display: block;
  background-color: #e73c79;
  width: 100%;
  margin: 40px auto 10px;
  max-width: 400px;
  padding: 40px 20px;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  -o-transition: all 0.2s;
  transition: all 0.2s;
}
.entry__button:hover {
  opacity: 0.6;
}
.entry__button::after {
  content: "";
  position: absolute;
  right: 16px;
  bottom: 16px;
  width: 36px;
  height: 36px;
  background-image: url("../images/Icon ionic-ios-arrow-dropright-circle-2@2x.png");
  background-size: cover;
}
.entry__text {
  font-size: 26px;
  font-weight: 700;
  text-align: center;
  color: #fff;
}
.entry__subtext {
  text-align: center;
}
.career-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 40px;
  padding: 60px;
}
.career-item {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
}
.career-item img {
  display: block;
  margin: 0 auto 20px;
}
.career__icon {
  fill: #1d2088;
}
.fullOverlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 900;
}
.fullOverlay__close {
  position: fixed;
  bottom: 20px;
  right: calc(50% - 20px);
  cursor: pointer;
  text-align: center;
  z-index: 1000;
  -webkit-filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
}
.fullOverlay__close img {
  width: 40px;
  height: 40px;
}
.fullOverlay__wrapper {
  width: 100vw;
  height: 100vh;
  overflow-y: scroll;
  padding: 40px 10%;
  background-color: rgba(0, 0, 0, 0.75);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.fullOverlay__inner {
  display: grid;
  width: 100%;
  gap: 30px;
  max-width: 1200px;
  margin: 0 auto;
  padding-right: 2px;
  padding-bottom: 200px;
  color: #fff;
}
.fullOverlay__inner::-webkit-scrollbar {
  width: 2px;
}
.fullOverlay__inner::-webkit-scrollbar-thumb {
  background-color: #f0bcce;
  border-radius: 2px;
}
.fullOverlay__heading {
  text-align: center;
}
.fullOverlay__number {
  font-size: clamp(1.4em, 3vw, 2.4em);
  font-weight: 700;
}
.fullOverlay__title {
  font-size: clamp(1.6em, 3vw, 2.8em);
  font-weight: 700;
}
.fullOverlay__title span {
  display: inline-block;
}
.fullOverlay__contents {
  display: grid;
  grid-template-rows: auto auto;
  row-gap: 20px;
}
.fullOverlay__img {
  grid-row: 2/3;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  margin-bottom: 10px;
}
.fullOverlay__description {
  grid-row: 1/2;
  width: 100%;
  font-size: clamp(1em, 2vw, 1.4em);
  line-height: 2;
  text-align: justify;
}
.fullOverlay__description a {
  color: #4169e1;
}
.fullOverlay-01 {
  display: none;
}
.fullOverlay-02 {
  display: none;
}
.fullOverlay-03 {
  display: none;
}
.fullOverlay-04 {
  display: none;
}
.fullOverlay-05 {
  display: none;
}
.interview__inner {
  display: grid;
  gap: 40px;
  width: 85%;
  max-width: 1000px;
  margin: 0 auto;
}
.interview__cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.interviewCard {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  cursor: pointer;
  width: 100%;
  min-width: 300px;
  aspect-ratio: 2/1;
  min-height: 150px;
  padding: 16px;
  margin: 0 auto 40px;
  color: #1d2088;
  background-color: #eee;
}
.interviewCard:nth-child(odd) {
  text-align: right;
}
.interviewCard::after {
  content: "+";
  position: absolute;
  right: 10px;
  bottom: 10px;
  font-size: 30px;
  font-weight: 700px;
  line-height: 1;
}
.interviewCard__title {
  display: grid;
  font-size: clamp(20px, 3vw, 24px);
  line-height: 1.6;
}
.interviewCard:nth-child(1) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/interview/interviewCard_1.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/interview/interviewCard_1.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/interview/interviewCard_1.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.interviewCard:nth-child(1):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/interview/interviewCard_1.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/interview/interviewCard_1.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/interview/interviewCard_1.jpg");
  background-size: cover;
  color: #fff;
}
.interviewCard:nth-child(2) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/interview/interviewCard_2.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/interview/interviewCard_2.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/interview/interviewCard_2.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.interviewCard:nth-child(2):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/interview/interviewCard_2.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/interview/interviewCard_2.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/interview/interviewCard_2.jpg");
  background-size: cover;
  color: #fff;
}
.interviewCard:nth-child(3) {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(255, 255, 255, 0.7)),
      to(rgba(255, 255, 255, 0.7))
    ),
    url("../images/interview/interviewCard_3.jpg");
  background: -o-linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/interview/interviewCard_3.jpg");
  background: linear-gradient(
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.7)
    ),
    url("../images/interview/interviewCard_3.jpg");
  background-size: cover;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.interviewCard:nth-child(3):hover {
  background: -webkit-gradient(
      linear,
      left top,
      left bottom,
      from(rgba(29, 32, 136, 0.7)),
      to(rgba(29, 32, 136, 0.7))
    ),
    url("../images/interview/interviewCard_3.jpg");
  background: -o-linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/interview/interviewCard_3.jpg");
  background: linear-gradient(rgba(29, 32, 136, 0.7), rgba(29, 32, 136, 0.7)),
    url("../images/interview/interviewCard_3.jpg");
  background-size: cover;
  color: #fff;
}
.movie {
  padding: 60px 0;
  background-color: #333;
  color: #fff;
}
.movie__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
  width: 85%;
  max-width: 1400px;
  margin: 0 auto;
}
.movie__text {
  font-size: clamp(1.2em, 2vw, 1.4em);
  text-align: center;
}
.movie__text span {
  display: inline-block;
}
.movie iframe {
  width: 100%;
  aspect-ratio: 16/9;
}
.training {
  padding: 60px 0;
  background-color: #f7f5f6;
}
.training__inner {
  display: grid;
  gap: 40px;
  width: 85%;
  max-width: 1000px;
  margin: 0 auto;
}
.training__cards {
  display: grid;
  gap: 30px;
}
.trainingCard {
  display: grid;
  grid-template-columns: 35% calc(65% - 12px);
  grid-template-rows: repeat(3 auto);
  grid-template-areas: "number number" "title title" "image image" "description description";
  row-gap: 12px;
  -webkit-column-gap: 20px;
  -moz-column-gap: 20px;
  column-gap: 20px;
  padding: 20px;
  background-color: #fff;
}
.trainingCard__number {
  grid-area: number;
  font-size: clamp(1.2em, 3vw, 1.6em);
  text-align: center;
  color: #1d2088;
}
.trainingCard__title {
  grid-area: title;
  font-size: clamp(1.2em, 2.2vw, 1.4em);
  text-align: center;
}
.trainingCard__title span {
  display: inline-block;
}
.trainingCard__image {
  grid-area: image;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.trainingCard__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.trainingCard__description {
  grid-area: description;
}
.mt16 {
  margin-top: 16px;
}
.job-description__inner {
  display: grid;
  gap: 40px;
  width: 85%;
  max-width: 1000px;
  margin: 0 auto;
}
.job-description__cards {
  display: grid;
  gap: 30px;
}
.job-descriptionCard {
  padding: 16px;
  background-color: #f7f5f6;
}
.job-descriptionCard__title {
  margin-bottom: 0.8em;
  font-size: 1.2em;
  text-align: center;
  color: #1d2088;
}
.job-descriptionCard__heading {
  font-size: 1.2em;
  font-weight: 700;
  text-align: center;
}
.job-descriptionCard__contents {
  display: grid;
  gap: 0.5em;
}
.job-descriptionCard__contents ul {
  display: grid;
  gap: 0.5em;
}
.job-descriptionCard__contents ul li {
  position: relative;
  padding-left: 1em;
}
.job-descriptionCard__contents ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.5em;
  border-radius: 100vh;
  width: 0.6em;
  height: 0.6em;
  background-color: #1d2088;
}
.job-accordion__title {
  cursor: pointer;
  padding: 20px;
  font-size: 1.4em;
  text-align: center;
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}
.job-accordion__title--close {
  color: #fff;
  background-color: #1d2088;
}
.job-accordion__title--open {
  background-color: #f7f5f6;
  color: #1d2088;
}
.job-accordion__body {
  display: none;
  font-size: 0.9em;
}
.job-accordion__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 20px 0;
  border-bottom: 1px solid #ccc;
}
.job-accordion__heading {
  width: 112px;
}
.job-accordion__texts {
  display: grid;
  gap: 1.2em;
  width: calc(100% - 112px);
}
.job-accordion__texts span {
  display: inline-block;
}
.job-accordion__table--sp table {
  width: 100%;
  border-collapse: collapse;
}
.job-accordion__table--sp caption {
  background-color: #1d2088;
  color: #fff;
}
.job-accordion__table--sp th {
  padding: 0.5em;
  background-color: #f7f5f6;
}
.job-accordion__table--sp td {
  text-align: center;
}
.job-accordion__table--pc {
  display: none;
}
.job-accordion__table--pc table {
  width: 100%;
  border-collapse: collapse;
}
.job-accordion__table--pc th {
  padding: 0.4em;
}
.job-accordion__table--pc thead th {
  background-color: #1d2088;
  color: #fff;
}
.job-accordion__table--pc tbody th {
  background-color: #f7f5f6;
}
.job-accordion__table--pc tbody td {
  text-align: center;
}
.footer__image {
  width: 100%;
  aspect-ratio: 5/2;
}
.footer__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  vertical-align: top;
}
.footer__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 0;
  color: #fff;
  background-color: #333;
  text-align: center;
}
.footer__box p {
  font-size: 14px;
}
.interviewOverlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 900;
}
.interviewOverlay__close {
  position: fixed;
  bottom: 20px;
  right: calc(50% - 25px);
  cursor: pointer;
  text-align: center;
  z-index: 1000;
  -webkit-filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.15));
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.15));
}
.interviewOverlay__close img {
  width: 50px;
  height: 50px;
}
.interviewOverlay__wrapper {
  width: 100vw;
  height: 100vh;
  overflow-y: scroll;
  padding: 40px 10% 160px;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.interviewOverlay__inner {
  display: grid;
  gap: 40px;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-right: 2px;
}
.interviewOverlay__inner::-webkit-scrollbar {
  width: 2px;
}
.interviewOverlay__inner::-webkit-scrollbar-thumb {
  background-color: #f0bcce;
  border-radius: 2px;
}
.interviewOverlay-fv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
}
.interviewOverlay-fv__img {
  width: 100%;
  aspect-ratio: 2/1;
  background-color: #ccc;
}
.interviewOverlay-fv__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  vertical-align: bottom;
}
.interviewOverlay-fv__texts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 1em;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.interviewOverlay-fv__title {
  display: grid;
  font-size: clamp(1.4em, 4vw, 2em);
  color: #1d2088;
}
.interviewOverlay-fv__devision {
  display: grid;
  font-size: clamp(0.8em, 2vw, 1em);
}
.interviewOverlay-fv__name {
  font-size: clamp(1.2em, 3.2vw, 1.6em);
  font-weight: 700;
}
.interviewOverlay-fv__name span {
  font-size: 0.6em;
  font-weight: 400;
}
.interviewOverlay-block {
  display: grid;
  gap: 20px;
}
.interviewOverlay-block__heading {
  color: #1d2088;
  margin-bottom: 1em;
}
.interviewOverlay-block__heading p {
  position: relative;
  font-size: 0.8em;
  margin-bottom: 0.5em;
  padding-left: 28px;
}
.interviewOverlay-block__heading p::before {
  content: "";
  display: block;
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 20px;
  height: 2px;
  background-color: #1d2088;
}
.interviewOverlay-block__heading h4 {
  font-size: 1.4em;
}
.interviewOverlay-block__heading h4 span {
  display: inline-block;
}
.interviewOverlay-block__description {
  display: grid;
  gap: 0.5em;
}
.interviewOverlay-block__description p {
  text-align: justify;
}
.interviewOverlay-block__img {
  width: 100%;
  aspect-ratio: 16/9;
  background-color: #ccc;
}
.interviewOverlay-block__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  vertical-align: bottom;
}
.interviewOverlay--1,
.interviewOverlay--2,
.interviewOverlay--3 {
  display: none;
}
.entry-btn {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 100;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: clamp(100px, 12vw, 180px);
  height: clamp(100px, 12vw, 180px);
  padding-top: 0.4em;
  font-size: clamp(0.9em, 1.8vw, 1.4em);
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background-color: #e73c79;
  color: white;
  border-radius: 100vh;
  -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  /* ここから */
  opacity: 0;
  transition: all 0.65s;
  /* ここまで */
}
/* ここから */
.entry-btn.isActive {
  opacity: 1;
  transition: all 0.65s;
}
/* ここまで */
.entry-btn:hover {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
}
.entry-btn__top{
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  bottom: 10%;
  z-index: 100;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width:300px;
  height: 50px;
  font-size:18px;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  background-color: #e73c79;
  color: white;
  -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
  -webkit-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
  animation: entry-btn__top 3.5s cubic-bezier(0.42, 0, 0.58, 1) 2.5s normal forwards;
}
@keyframes entry-btn__top {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.entry-btn__top::after {
  content: "";
  position: absolute;
  right: 22px;
  bottom: 14px;
  width: 20px;
  height: 20px;
  background-image: url("../images/Icon ionic-ios-arrow-dropright-circle-2@2x.png");
  background-size: cover;
}



* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
html,
head,
body,
footer,
p,
h2,
h3,
h4 {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0;
  padding: 0;
  width: 100%;
  overflow-x: hidden;
}
html {
  overflow-y: scroll;
}
ul,
li {
  margin: 0;
  padding: 0;
  list-style: none;
}
img {
  max-width: 100%;
}
h6 {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: 0 0;
}
table,
tr,
th,
td {
  margin: 0;
  padding: 0;
}
.is-pc {
  display: none;
}
.is-sp {
  display: block;
}
.section-ttl {
  font-family: Arial, "Noto Sans JP", sans-serif;
  text-align: center;
}
.section-ttl p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: #1d2088;
  font-size: clamp(30px, 4vw, 40px);
  font-weight: 500;
}
.section-ttl span {
  font-size: 16px;
  color: #333;
}
.main-item {
  padding: 40px 0;
  font-weight: 500;
}
.main-item__inner {
  width: 85%;
  max-width: 1000px;
  margin: 0 auto;
}
.wrapper {
  overflow: hidden;
}
.header-ttl {
  width: 100%;
  color: #252525;
  font-size: 24px;
  font-weight: 600;
  text-align: left;
  margin: 0 0 -40px 40px;
  padding-top: 40px;
  letter-spacing: 0;
  opacity: 1;
  line-height: 50px;
}
#tsunagu-slogan {
  display: block;
}
.main-sec {
  color: #1d2088;
  width: 100%;
  z-index: 5;
}
.header-logo {
  background: #1d2088;
  width: 150px;
  height: 34px;
  padding: 6px 0px 8px 30px;
  position: sticky;
  top: 0;
  left: 0;
  background-size: cover;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header-logo img {
  width: 66%;
}
.hover-style01 {
  text-decoration: none;
}
.section-border {
  border-top: solid 2px #0e4d8c;
  margin: 20px auto 0 auto;
  width: 40px;
}
#contents-01 {
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 1.44px;
  padding-left: 11px;
}
#item-01,
#item-03,
#entry {
  background-color: #fff;
}
#item-02,
#item-05 {
  background-color: #f7f5f6;
}
.contents-img {
  margin: 0 auto;
  width: 100%;
}
#contents-img02pc {
  display: block;
  width: 1000px;
}
#contents-img02sp {
  display: none;
}
#ttl-03 {
  letter-spacing: -2px;
}
.contents-items-03 {
  background-repeat: no-repeat;
  background-size: cover;
  height: 168px;
  margin: 25px 0 50px;
  text-align: center;
}
#item-03 {
  padding-bottom: 0;
}
.items-03-fade {
  background: rgba(237, 243, 255, 0.8);
  height: 100%;
  position: relative;
  color: #1d2088;
}
.items-03-fade:hover {
  background: rgba(231, 60, 121, 0.8);
  color: #fff;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
}
.item-ttl {
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 36;
  margin: 0 auto;
  position: relative;
  top: 20px;
}
.item-txt {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 36;
  padding: 0 20px;
  margin-top: 20px;
  text-align: left;
  color: #333;
  -webkit-transition: color 0.3s;
  -o-transition: color 0.3s;
  transition: color 0.3s;
}
.items-03-fade:hover .item-txt {
  color: #fff;
}
.item-focus {
  bottom: 0;
  display: block;
  font-size: 30px;
  padding-right: 10px;
  position: absolute;
  right: 0;
}
#item-0301 {
  background-image: url("../images/oLimg-01.jpg");
}
#item-0302 {
  background-image: url("../images/oLimg-02.jpg");
}
#item-0303 {
  background-image: url("../images/oLimg-03.jpg");
}
#item-0304 {
  background-image: url("../images/oLimg-04.jpg");
}
#item-0305 {
  background-image: url("../images/oLimg-05.jpg");
}
.item-overlay {
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  display: none;
  left: 0;
  padding: 0 20px;
  position: absolute;
  text-align: center;
}
.oL-wrapper {
  position: relative;
  overflow-y: scroll;
  overflow-x: hidden;
}
.oL-ttl {
  font-size: 30px;
  font-weight: bold;
  margin: 0;
  padding: 10px 0 0 0;
  line-height: 36px;
}
.oL-subttl {
  font-size: 30px;
  font-weight: 500;
  margin-top: -30px;
}
.oL-img {
  width: 335px;
}
.oL-txt {
  font-size: 18px;
  font-weight: 300;
  line-height: 36px;
  text-align: left;
}
.oL-close {
  bottom: 0;
  position: absolute;
  width: 100%;
}
.oL-close > p {
  border: solid 2px #fff;
  border-radius: 50%;
  bottom: 40px;
  font-size: 60px;
  height: 42px;
  line-height: 40px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  right: 20px;
  width: 42px;
}
.oL-close > p:after {
  content: "×";
  color: #fff;
  font-size: 48px;
  position: relative;
  bottom: 6px;
  right: 3px;
}
#oLtxt-02 p > a {
  color: #fff;
  text-decoration: none;
}
.contents-slider {
  margin-bottom: 50px;
}
.slider {
  max-height: 250px;
}
.slider img {
  height: 250px;
  padding: 0;
}
.slick-slider {
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
  width: 100vw !important;
}
.slider-text {
  color: #333;
  text-align: left;
  width: 300px;
  font-weight: 300;
  line-height: 24px;
  margin-left: 100px;
  font-weight: 400;
}
.slider-text br {
  display: inline;
}
.slick-dots {
  /* bottom: -132px !important; */
  left: -7px;
  position: relative;
}
.slick-dots li button:before {
  color: #1d2088 !important;
}
#contents-04 {
  margin-top: 40px;
}
.contents-items-04 {
  background: #fff;
  border-radius: 5px;
  margin: 15px 0;
  text-align: center;
}
.ttl-wrapper {
  padding-top: 10px;
  text-align: left;
  width: 100%;
}
.item-ttl-wrapper {
  margin-top: -34px !important;
  position: relative;
  text-align: center;
  width: 100%;
}
.item-ttl-wrapper > .item-ttl-04 {
  font-size: 24px !important;
  font-weight: 600;
}
.item-ttl-label {
  background: #1d2088;
  border-radius: 50%;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  font-weight: 300;
  height: 30px;
  left: 10px;
  line-height: 30px;
  position: relative;
  text-align: center;
  top: 5px;
  width: 30px;
}
.item-ttl-04 {
  color: #333;
  display: inline-block;
  font-size: 24px;
  font-weight: 400;
  position: relative;
}
#contents-05 {
  margin-bottom: 50px;
}
#contents-05 > p {
  color: #333;
  text-align: left;
  letter-spacing: 0;
  font-weight: 500;
  color: #333;
}
.contents-items-05 {
  border-bottom: solid 1px #0e4d8c;
  height: 108px;
  width: 100%;
}
.contents-items-05 > a {
  display: block;
  position: relative;
  text-decoration: none;
}
.items-05-txt-wrapper {
  color: #0e4d8c;
  display: block;
  font-size: 18px;
  font-weight: 500;
  padding: 20px 0 0 20px;
  position: relative;
  width: 250px;
}
#item-0503-txt {
  position: relative;
  top: 1em;
}
#item-0503-img {
  top: 0;
}
.items-05-img-wrapper {
  display: inline-block;
  height: 100%;
  position: relative;
  text-align: right;
  top: -35px;
  width: 100%;
}
.items-05-img-wrapper > img {
  position: relative;
  right: 20px;
}
.contents-items-05:hover {
  background: #0e4d8c;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.contents-items-05:hover .items-05-txt-wrapper {
  color: #fff;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.contents-items-05:hover .items-05-img-wrapper > img {
  -webkit-filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg)
    brightness(107%) contrast(101%);
  filter: invert(88%) sepia(61%) saturate(0%) hue-rotate(229deg)
    brightness(107%) contrast(101%);
}
#item-0501 {
  border-top: solid 1px #0e4d8c;
}
#company {
  background-color: #f7f5f6;
}
#contents-06 {
  margin-bottom: 50px;
}
#contents-06 table {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 50px;
  line-height: 35px;
  color: #333;
}
#contents-06 tr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}
#contents-06 table th {
  padding-bottom: 5px;
  text-align: left;
}
#contents-06 table td {
  padding-bottom: 25px;
  font-weight: 400;
  font-size: 14px;
}
#contents-06 table th {
  width: 150px;
}
#contents-06 table th a {
  color: #1d2088;
  font-size: 1.1em;
  text-decoration: none;
  border-bottom: 1px solid #1d2088;
}
#contents-06 > p {
  color: #333;
  text-align: center;
  letter-spacing: 0;
  color: #333;
  font-weight: 400;
}
#contents-label-06 {
  text-align: center;
  margin-bottom: 15px;
}
#contents-label-06 > h2 {
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  background-color: #0e4d8c;
  padding: 8px 10px 2px;
  display: inline;
}
.recruit__list {
  margin: 0 auto;
  border-top: solid 1px #0e4d8c;
}
.recruit__list > a {
  display: block;
  position: relative;
  text-decoration: none;
}
.recruit__item {
  border-bottom: solid 1px #0e4d8c;
  width: 100%;
}
.recruit__item__title {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.recruit__item__title h5 {
  font-size: 18px;
  width: calc(100% - 60px);
}
.recruit__item__title__direction {
  content: "";
  height: 19.93px;
  width: 19.93px;
  display: inline-block;
  position: relative;
  border-left: solid 2px #0e4d8c;
  border-bottom: solid 2px #0e4d8c;
  -webkit-transform: rotate(315deg);
  -ms-transform: rotate(315deg);
  transform: rotate(315deg);
  margin: auto 0;
  right: 20px;
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.recruit__item__title__direction.open {
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
  -webkit-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
.recruit__item__body {
  line-height: 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
  -webkit-transition-duration: 0.4s;
  -o-transition-duration: 0.4s;
  transition-duration: 0.4s;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.recruit__item__body.open {
  background-color: #fff;
  padding: 10px 5px;
  line-height: normal;
  height: auto;
  width: 100%;
  opacity: 1;
  padding-bottom: 45px;
}
.recruit__item__body__content {
  width: 100%;
  padding: 17.067px 17.067px 36.693px;
  background-color: #fff;
  margin-right: 11.25px;
  position: relative;
  border: solid 1px;
  margin-top: 11.25px;
}
.recruit__item__body__content > a {
  display: inline-block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.recruit__item__body__content__title {
  font-size: 15px;
  line-height: 1.33333;
  letter-spacing: 1.6px;
  font-weight: 700;
}
.recruit__item__body__content__place {
  font-size: 10.5px;
  line-height: 1.66667;
  letter-spacing: 1.6px;
  height: 45px;
  overflow: hidden;
}
.recruit__item__body__content__place > p {
  margin: 0;
}
.recruit__item__body__content__detail {
  font-size: 10.75px;
  font-weight: 400;
  letter-spacing: 0.1em;
  color: #333;
  margin-bottom: 10px;
}
.recruit__item__body__content__detail > p {
  margin: 0;
}
.recruit__item__body__content__time {
  font-size: 10.5px;
  position: absolute;
  right: 20px;
  bottom: 14.625px;
}
.recruit__item__body__content__tag {
  font-size: 10px;
  letter-spacing: 0.5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  bottom: 14.625px;
  list-style: none;
}
.recruit__item__body__content__tag li {
  color: #fff;
  text-align: center;
  width: 30px;
  padding: 3.375px 0;
  background-color: #0e4d8c;
}
@font-face {
  font-family: "icomoon";
  src: url("../fonts/icomoon.eot?516kf6");
  src: url("../fonts/icomoon.eot?516kf6#iefix") format("embedded-opentype"),
    url("../fonts/icomoon.ttf?516kf6") format("truetype"),
    url("../fonts/icomoon.woff?516kf6") format("woff"),
    url("../fonts/icomoon.svg?516kf6#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
[class^="icon-"],
[class*=" icon-"] {
  font-family: "icomoon" !important;
  speak-as: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-icon-link:before {
  content: "";
  color: #1d2088;
  padding-right: 6px;
}
@media screen and (min-width: 576px) {
  body {
    margin: 0;
  }
  .message {
    padding: 80px 0;
  }
  .job-accordion__title--close:hover {
    background-color: #f7f5f6;
    color: #1d2088;
  }
  .job-accordion__title--open:hover {
    color: #fff;
    background-color: #1d2088;
  }
  .job-accordion__table--sp {
    display: none;
  }
  .job-accordion__table--pc {
    display: block;
  }
  .is-pc {
    display: block;
  }
  .is-sp {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  body {
    margin: 0;
  }
  .fv img {
    margin-top: 0px;
  }

  .ribon {
    padding: 20px;
  }
  .ribon h2 {
    gap: 12px;
  }
  .ribon h2 span:first-child {
    font-size: 20px;
  }
  .ribon h2 span:last-child {
    font-size: 28px;
  }
  .flow__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .flow__card {
    width: 30%;
    max-width: 290px;
  }
  .flow__arrow svg {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  .top5__list {
    gap: 50px;
  }
  .top5__item {
    margin-bottom: 0;
  }
  .career-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .career-item {
    width: calc(50% - 20px);
  }
  .fullOverlay__close {
    top: 40px;
    right: 40px;
  }
  .fullOverlay__close img {
    width: 50px;
    height: 50px;
  }
  .fullOverlay__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 40px 10%;
  }
  .fullOverlay__contents {
    grid-template-rows: auto;
    grid-template-columns: repeat(2, auto);
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
  }
  .fullOverlay__img {
    grid-row: 1/2;
  }
  .fullOverlay__description {
    grid-row: 1/2;
  }
  .interview__cards {
    gap: 40px;
  }
  .interviewCard {
    width: calc(50% - 20px);
    margin: 0 auto;
  }
  .trainingCard {
    grid-template-rows: repeat(2 auto);
    grid-template-areas: "image number" "image title" "image description";
    padding: 28px;
  }
  .trainingCard__number {
    text-align: left;
  }
  .trainingCard__title {
    text-align: left;
  }
  .trainingCard__image {
    aspect-ratio: 4/3;
  }
  .trainingCard:nth-child(even) {
    grid-template-columns: calc(65% - 12px) 35%;
    grid-template-areas: "number image" "title image" "description image";
  }
  .job-descriptionCard {
    padding: 24px;
  }
  .job-accordion__heading {
    width: 160px;
  }
  .interviewOverlay__close {
    top: 40px;
    right: 40px;
  }
  .interviewOverlay__close img {
    width: 60px;
    height: 60px;
  }
  .interviewOverlay__wrapper {
    padding: 80px 10% 240px;
  }
}
@media screen and (min-width: 992px) {
  body {
    margin: 0;
  }

  .header {
    width: 100%;
  }

  .sp-hamburger {
    display: none;
  }
  .pc-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .about__heading {
    text-align: center;
  }
  .career-item {
    width: calc(25% - 40px);
  }
  .fullOverlay__close {
    top: 60px;
    right: 60px;
  }
  .fullOverlay__inner {
    gap: 60px;
    padding-right: 12px;
    padding-bottom: 0;
  }
  .fullOverlay__inner {
    gap: 100px;
  }
  .movie__inner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 30px;
  }
  .movie__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
  }
  .movie__text p {
    padding: 2em 0;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
  }
  .trainingCard__image {
    aspect-ratio: 2/1;
  }
  .job-description__cards {
    grid-template-columns: repeat(2, 1fr);
  }
  .interviewOverlay__close {
    top: 60px;
    right: 60px;
  }
  .interviewOverlay__inner {
    gap: 60px;
    padding-right: 12px;
  }
  .interviewOverlay__inner {
    gap: 100px;
  }
  .interviewOverlay-fv {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    gap: 30px;
  }
  .interviewOverlay-fv__img {
    width: 60%;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .interviewOverlay-block:nth-child(2),
  .interviewOverlay-block:nth-child(4),
  .interviewOverlay-block:nth-child(6) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    gap: 40px;
  }
  .interviewOverlay-block:nth-child(2) .interviewOverlay-block__texts,
  .interviewOverlay-block:nth-child(4) .interviewOverlay-block__texts,
  .interviewOverlay-block:nth-child(6) .interviewOverlay-block__texts {
    width: calc(70% - 40px);
  }
  .interviewOverlay-block:nth-child(5) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
  }
  .interviewOverlay-block:nth-child(5) .interviewOverlay-block__texts {
    width: calc(70% - 40px);
  }
  .interviewOverlay-block:nth-child(3),
  .interviewOverlay-block:nth-child(7) {
    margin-left: 10%;
  }
  .interviewOverlay-block__heading h4 {
    display: block;
  }
  .interviewOverlay-block__img {
    width: 30%;
    aspect-ratio: auto;
  }
  .entry-btn {
    right: 40px;
    bottom: 40px;
  }
  main {
    margin-top: 60px;
  }
}
@media screen and (min-width: 1000px) {
  .main-sec {
    color: #1d2088;
    width: 100%;
  }
  .logo-wrap {
    position: relative;
    height: 200px !important;
  }

  .header {
    width: 100%;
  }

  .header-ttl {
    margin: 0 auto 0;
  }
  #tsunagu-logo {
    width: 400px;
  }
  #tsunagu-slogan {
    width: 500px;
  }
  .header-ttl {
    width: 100%;
    color: #252525;
    font-size: 30px;
    font-weight: 600;
    text-align: left;
    margin: 0 0 -40px 184px;
    opacity: 1;
    line-height: 60px;
    padding-top: 40px;
  }
  .main-item > p {
    width: 1000px;
    margin: 28px auto 40px;
  }
  .section-border {
    margin: 40px auto 48px !important;
  }
  #contents-01 {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 1.44px;
    padding-left: 11px;
  }
  #contents-03 {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1366px;
    margin: 40px auto 0;
  }
  #contents-03 ul {
    width: 1000px;
    margin: 0 auto;
    position: relative;
    left: 25px;
  }
  .contents-items-03 {
    display: inline-block;
    width: 290px;
    margin: 22px 0;
    position: relative;
    bottom: 32px;
  }
  #item-0301 {
    margin: 0 30px 0 0;
    position: relative;
    top: 0;
  }
  #item-0303 {
    margin: 0 0 0 30px;
  }
  #item-0304 {
    margin: 0 65px 0 150px;
    position: relative;
    bottom: 66px;
  }
  .slider {
    max-height: 500px;
  }
  .slider img {
    height: 500px;
  }
  .slider-text {
    text-align: center;
    line-height: 40px;
    margin-left: 0;
    width: auto;
  }
  .slider-text br {
    display: none;
  }
  .slick-dots {
    /* bottom: -78px !important; */
    left: -7px;
    position: relative;
  }
  #item-05 ul {
    max-width: 1000px;
    margin: 0 auto;
  }
  #contents-05 {
    text-align: center;
    margin: 40px auto;
  }
  .contents-05 {
    height: 99px;
    vertical-align: middle;
  }
  #contents-05 > p {
    color: #333;
    text-align: center;
    letter-spacing: 0;
    color: #333;
  }
  .contents-items-05 {
    max-width: 1000px;
  }
  .items-05-txt-wrapper {
    width: auto;
    padding: 45px 0 0 20px;
  }
  .items-05-img-wrapper {
    top: -20px;
  }
  #item-0503-txt {
    top: 0;
  }
  #item-0503-img {
    top: -25px;
  }
}
@media screen and (max-width: 1000px) {
  #contents-img02pc {
    display: none;
  }
  #contents-img02sp {
    display: block;
  }
}
@media screen and (max-width: 1080px) {
  .entry-btn{
    opacity: 1;
  }
  .entry-btn__top{
    display: none;
  }
}
@media screen and (max-width: 320px) {
  .item-overlay {
    padding: 0;
    width: 100%;
  }
  .oL-img {
    width: 90%;
  }
  .oL-txt {
    width: 288px;
    padding: 0 13px;
  }
  .oL-close > p {
    right: 0;
  }
}
@media screen and (max-width: 375px) and (min-width: 321px) {
  .item-overlay {
    padding: 0;
    width: 100%;
  }
  .oL-txt {
    width: 335px;
    padding: 0 20px;
    word-wrap: break-word;
  }
  .oL-close > p {
    right: 0;
  }
}
@media screen and (min-width: 1025px) {
  .oL-subttl > p br {
    display: none;
  }
  .oL-txt {
    width: 400px;
  }
}
@media (min-width: 1052px) {
  #contents-06 table tbody {
    width: 1000px;
  }
  #contents-06 table tr {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  #contents-06 table th {
    padding-bottom: 25px;
  }
  #contents-label-06 {
    width: 1052px;
    margin: 48px auto 28px;
    left: 12px;
    position: relative;
  }
  #contents-06 > p {
    color: #333;
    text-align: center;
    letter-spacing: 0px;
    color: #333;
  }
  #contents-label-06 {
    text-align: left;
    margin-bottom: 50px;
  }
  #contents-label-06 > h2 {
    font-size: 40.5px;
    font-weight: 700;
    color: #fff;
    background-color: #0e4d8c;
    padding: 0 20px;
    display: inline;
  }
  .recruit__item__title__direction {
    height: 37.375px;
    width: 38.375px;
    top: 50px;
    margin: 0;
  }
  .recruit__item__body.open {
    width: 1052px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
  }
  .recruit__list {
    width: 1052px;
  }
  .recruit__item__body__content {
    width: 247.109px;
    padding: 45px 45px 65.25px;
    margin-right: 11.25px;
    border: solid 1px;
  }
  .recruit__item__body__content:nth-child(n + 4) {
    margin-top: 11.25px;
  }
  .recruit__item__body__content__detail {
    height: 108px;
  }
  .recruit__item__title h5 {
    width: auto;
    padding: 20px 0 0 20px;
  }
  .recruit__item__body__content__title {
    font-size: 20px;
    line-height: 1.33333;
    letter-spacing: 1.6px;
    font-weight: 700;
  }
  .recruit__item__body__content__place {
    font-size: 13.5px;
    line-height: 1.66667;
    letter-spacing: 1.6px;
    height: 45px;
    margin-bottom: 27px;
    overflow: hidden;
  }
  .recruit__item__body__content__detail {
    font-size: 15.75px;
    letter-spacing: 0.1em;
    color: #333;
  }
  .recruit__item__body__content__time {
    font-size: 13.5px;
    position: absolute;
    right: 20px;
    bottom: 14.625px;
  }
  .recruit__item__body__content__tag {
    font-size: 18px;
    letter-spacing: 0.5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    left: 45px;
    bottom: 14.625px;
    list-style: none;
  }
  .recruit__item__body__content__tag li {
    color: #fff;
    text-align: center;
    width: 45px;
    padding: 3.375px 0;
    background-color: #0e4d8c;
  }
}
@media screen and (min-width: 599px) {
  .sp-edition {
    display: none !important;
  }
  .header-ttl img {
    width: 400px;
  }
  #contents-05 ul {
    text-align: center;
  }
}
@media screen and (max-width: 600px) {
  #tsunagu-slogan {
    width: 90% !important;
  }
  .pc-edition {
    display: none !important;
  }
  .main-sec {
    color: #1d2088;
    width: 100%;
  }
  .header-logo {
    display: none;
  }
  .header-ttl {
    width: 100%;
    color: #252525;
    font-size: 20px;
    font-weight: 600;
    text-align: left;
    margin: 0 0 -40px 10px;
    line-height: 2;
  }
  .header-ttl img {
    width: 320px;
  }
  .item-ttl-wrapper {
    margin-top: -28px !important;
    position: relative;
    text-align: center;
    width: 100%;
  }
  #contents-05 ul {
    text-align: center;
  }
}
@media only screen and (max-device-width: 320px) and (orientation: portrait) {
  .header-ttl img {
    width: 260px !important;
  }
}
/*# sourceMappingURL=style.css.map */
