@charset "UTF-8";
.mainView {
  background: #BEF2FF;
  height: 100%;
  width: 100%;
  margin: 0 0 8.4rem;
  position: relative;
  overflow: hidden;
}

.mainView .message {
  padding: 0;
  z-index: 100;
  position: absolute;
  left: 10vw;
  top: 46%;
  -webkit-transform: translateY(-46%);
          transform: translateY(-46%);
}

.mainView .message__wrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
}

.mainView .message__en {
  font-size: 8rem;
  line-height: 1.1;
  letter-spacing: -0.023em;
  text-shadow: 2px 2px 1px rgba(255, 255, 255, 0.99);
  font-weight: bold;
  color: #1C60BF;
}

.mainView .message__jp {
  margin-left: 0.4rem;
  margin-bottom: 1.2rem;
  max-width: 188px;
  line-height: 1.6;
  color: #1C60BF;
  font-size: 2.5rem;
  font-weight: 600;
}

.mainView .sliderWrap {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 60px 0;
  padding-bottom: 2.6rem;
  overflow: hidden;
}

.mainView .sliderCont {
  width: 100%;
  overflow: hidden;
  position: static;
  bottom: 30px;
}

.mainView .sliderCont .slider {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: flex-start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 60px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  will-change: transform;
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.mainView .sliderTop {
  margin-top: -5rem;
}

.mainView .sliderTop .slider,
.mainView .sliderBottom .slider {
  -webkit-animation-play-state: paused;
          animation-play-state: paused;
  opacity: 0;
}

.mainView .sliderTop .slider.is-start,
.mainView .sliderBottom .slider.is-start {
  -webkit-animation-play-state: running;
          animation-play-state: running;
  opacity: 1;
}

/* Top: left → right（0.001s delay で初回レイアウト確定後の開始を安定化） */
.mainView .sliderTop .slider.is-start {
  -webkit-animation: scrollLTR 50s linear 0.01s infinite;
          animation: scrollLTR 50s linear 0.01s infinite;
}

/* Bottom: right → left */
.mainView .sliderBottom .slider.is-start {
  -webkit-animation: scrollRTL 50s linear 0.01s infinite;
          animation: scrollRTL 50s linear 0.01s infinite;
}

/* GPUレイヤーを維持するため translateZ(0) をキーフレームにも含める
   （リロード時の描画速度ばらつきを防ぐ） */
@-webkit-keyframes scrollLTR {
  from {
    -webkit-transform: translateX(0) translateZ(0);
            transform: translateX(0) translateZ(0);
  }
  to {
    -webkit-transform: translateX(-50%) translateZ(0);
            transform: translateX(-50%) translateZ(0);
  }
}
@keyframes scrollLTR {
  from {
    -webkit-transform: translateX(0) translateZ(0);
            transform: translateX(0) translateZ(0);
  }
  to {
    -webkit-transform: translateX(-50%) translateZ(0);
            transform: translateX(-50%) translateZ(0);
  }
}
@-webkit-keyframes scrollRTL {
  from {
    -webkit-transform: translateX(-50%) translateZ(0);
            transform: translateX(-50%) translateZ(0);
  }
  to {
    -webkit-transform: translateX(0) translateZ(0);
            transform: translateX(0) translateZ(0);
  }
}
@keyframes scrollRTL {
  from {
    -webkit-transform: translateX(-50%) translateZ(0);
            transform: translateX(-50%) translateZ(0);
  }
  to {
    -webkit-transform: translateX(0) translateZ(0);
            transform: translateX(0) translateZ(0);
  }
}
.mainView .sliderCont .sliderItem {
  max-width: 370px;
  width: 100%;
  margin-left: 0;
  aspect-ratio: 1/1;
  -o-object-fit: contain;
     object-fit: contain;
  line-height: 1;
  -webkit-animation: float 3s steps(2, start) infinite;
          animation: float 3s steps(2, start) infinite;
  -webkit-transform-origin: center center;
          transform-origin: center center;
}

@-webkit-keyframes float {
  0% {
    -webkit-transform: rotateZ(-15deg) rotateX(5deg);
            transform: rotateZ(-15deg) rotateX(5deg);
  }
  50% {
    -webkit-transform: rotateZ(15deg) rotateX(5deg);
            transform: rotateZ(15deg) rotateX(5deg);
  }
  100% {
    -webkit-transform: rotateZ(-15deg) rotateX(5deg);
            transform: rotateZ(-15deg) rotateX(5deg);
  }
}

@keyframes float {
  0% {
    -webkit-transform: rotateZ(-15deg) rotateX(5deg);
            transform: rotateZ(-15deg) rotateX(5deg);
  }
  50% {
    -webkit-transform: rotateZ(15deg) rotateX(5deg);
            transform: rotateZ(15deg) rotateX(5deg);
  }
  100% {
    -webkit-transform: rotateZ(-15deg) rotateX(5deg);
            transform: rotateZ(-15deg) rotateX(5deg);
  }
}
.mainView .sliderCont .sliderItem img {
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 1100px) {
  .mainView {
    margin: 0 0 6rem;
    height: 100%;
  }
  .mainView .message {
    top: 46%;
    left: 6vw;
  }
  .mainView .message__en {
    font-size: 5rem;
  }
  .mainView .message__jp {
    font-size: 2rem;
    margin-left: 2rem;
    max-width: 150px;
  }
  .mainView .sliderWrap {
    gap: 40px 0;
  }
  .mainView .sliderCont .slider {
    gap: 0 40px;
  }
  .mainView .sliderCont {
    width: 100%;
    position: relative;
    bottom: 10px;
  }
  .mainView .sliderCont .sliderItem {
    max-width: 300px;
    margin-left: 0;
  }
  .mainView .sliderCont .sliderItem img {
    max-width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 800px) {
  .mainView .message__img {
    display: none;
  }
}
@media screen and (max-width: 767.5px) {
  .mainView {
    margin: 0 0 4rem;
  }
  .mainView .message {
    display: block;
    padding: 0;
    top: 46%;
    left: 3vw;
  }
  .mainView .message__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .mainView .message__en {
    font-size: 4.2rem;
    margin-bottom: 0;
  }
  .mainView .message__jp {
    max-width: 100%;
    margin-left: 0;
    margin-bottom: 0;
    text-shadow: 2px 2px 1px rgba(255, 255, 255, 0.99);
  }
  .mainView .sliderWrap {
    gap: 20px 0;
    padding-bottom: 0;
  }
  .mainView .sliderCont .slider {
    gap: 0 20px;
  }
  .mainView .sliderCont {
    width: 100%;
    position: relative;
    bottom: 10px;
  }
  .mainView .sliderCont .sliderItem {
    max-width: 200px;
    margin-left: 0;
  }
  .mainView .sliderCont .sliderItem img {
    max-width: 100%;
    height: auto;
  }
}
/* --------------------

トップ：Service

----------------------*/
.titleArea {
  margin-bottom: 4rem;
  color: #1C60BF;
}

.mainTtl {
  margin-bottom: 0;
  letter-spacing: 0;
  line-height: 1.1;
  font-size: clamp(3.5rem, 6vw, 6.8rem);
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
}

.topSubttl {
  font-size: 2rem;
  font-weight: 500;
}

.top__serviceCont .service__message {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 4rem;
  height: auto;
}

.service__message .basicBtn {
  margin-top: 1.5rem;
}

.top__serviceCont .service__message .basicBtn a {
  margin-top: 0;
  margin-left: auto;
  margin-right: 11px;
  padding: 0.9rem 1.7rem 0.9rem 4.5rem;
  width: 222px;
  height: auto;
  letter-spacing: 0.05em;
  font-size: clamp(1.4rem, 2.2vw, 1.8rem);
}

.top__serviceCont .service__message .basicBtn a::before {
  top: 10px;
  left: 10px;
}

.service__message .txtArea p {
  max-width: 705px;
  letter-spacing: 0.05em;
  line-height: 35px;
  text-align: left;
  font-size: clamp(1.4rem, 3vw, 2.2rem);
}

.service__message .imgArea {
  position: relative;
  max-width: 340px;
  padding-top: 4.9rem;
}

.top__serviceDetail {
  margin-top: 19rem;
  position: relative;
}

.top__serviceDetail .bigTtl {
  position: absolute;
  top: -75px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}

.top__serviceDetail .detailCont {
  background: #EEF8FF;
}

.top__serviceDetail .detailCont__wrapper {
  max-width: 1366px;
  background: #EEF8FF;
  margin: -3rem auto 10rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: flex-start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
      justify-content: flex-start;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-flex-align: stretch;
  align-items: stretch;
  z-index: -100;
}

.detailCard {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 8rem 6rem;
  height: auto;
  text-align: center;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  cursor: pointer;
}

.detailCard img {
  height: 230px;
  width: auto;
  margin: 0 auto 3rem;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transition: -webkit-transform 0.4s ease;
  transition: -webkit-transform 0.4s ease;
  transition: transform 0.4s ease;
  transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  /* 画像も拡大アニメーション */
}

.detailCard:hover img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}

.detailCard p {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 0%;
      -ms-flex: 1 0 0%;
          flex: 1 0 0%;
  max-width: 340px;
  margin: 0 auto;
  text-align: left;
}

.detailCard.card01 {
  background: #EEF8FF;
}

.detailCard.card02 {
  background: #D1F5FF;
}

@media screen and (max-width: 1100px) {
  .top__serviceDetail {
    margin-top: 15rem;
  }
  .top__serviceCont .service__message {
    height: 600px;
  }
  .service__message .imgArea {
    max-width: 340px;
  }
  .service__message .basicBtn {
    margin-top: 5rem;
  }
  .detailCard {
    padding: 5rem 2rem;
  }
  .detailCard img {
    height: 150px;
    width: auto;
    margin: 0 auto 3rem;
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
    /* 画像も拡大アニメーション */
  }
  .detailCard:hover img {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@media screen and (max-width: 820px) {
  .mainTtl {
    font-size: 3.5rem;
  }
  .topSubttl {
    font-size: 2rem;
    margin-bottom: 3.6rem;
  }
  .top__serviceCont .service__message {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-bottom: 0;
    height: auto;
  }
  .service__message .basicBtn {
    margin-bottom: 0;
  }
  .top__serviceCont .service__message .basicBtn a {
    width: 100%;
    height: 70px;
    margin-right: auto;
  }
  .top__serviceCont .service__message .basicBtn a::before {
    top: 20px;
    left: 27px;
  }
  .service__message {
    padding-bottom: 80px;
    position: relative;
  }
  .service__message .imgArea {
    max-width: 80%;
    margin: 12rem auto 0 auto;
    position: inherit;
    display: block;
  }
  .service__message .basicBtn {
    max-width: 340px;
    width: 100%;
    margin-top: 0;
    position: absolute;
    left: 50%;
    bottom: 0;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
  .detailCard:hover img {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .top__serviceDetail {
    margin-top: 10rem;
  }
  .top__serviceDetail .bigTtl {
    position: absolute;
    top: -45px;
  }
  .top__serviceDetail br.nosp {
    display: none;
  }
  .top__serviceDetail .detailCont__wrapper {
    max-width: 100%;
    margin: -3rem auto 10rem;
  }
  .detailCard .sTxt {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767.5px) {
  .titleArea {
    margin-bottom: 2rem;
  }
  .service__message .basicBtn {
    margin-top: 4rem;
  }
  .typing-text {
    font-size: 1.8rem;
    margin-bottom: 3rem;
  }
  .service__message .imgArea {
    max-width: 300px;
    margin: 10rem auto 0 auto;
    padding-top: 0;
  }
  .top__serviceCont {
    min-height: 900px;
  }
  .top__serviceDetail br.nopc {
    display: block;
  }
  .top__serviceDetail .detailCont__wrapper {
    max-width: 100%;
    margin: -3rem auto 8rem;
    display: block;
  }
}
/* --------------------

トップ：Company

----------------------*/
.top__company {
  position: relative;
}

.top__company > .bigTtl {
  position: absolute;
  top: -84px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.top__companyWrapper {
  padding: 12rem 0 9rem;
  position: relative;
  max-width: 1500px;
  margin: 15rem auto 10rem;
}

.top__companyWrapper .companyImg {
  position: absolute;
  max-width: 600px;
  width: 55%;
  top: 0;
  right: 0;
  z-index: 100;
}

.top__company .mContainer {
  position: relative;
  z-index: 0;
}

.top__company .mContainer::before {
  top: -215px;
  left: 30px;
  width: 273px;
  height: 173px;
  background: url(../img/top/company_illust.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: contain;
  position: absolute;
  content: "";
}

.top__company .txtArea {
  width: 50%;
  margin-bottom: 0;
}

.top__company .txtArea p {
  padding-left: 2.9rem;
  padding-right: 1rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-size: clamp(1.4rem, 2.5vw, 2rem);
}

.top__company .txtArea .lTxt {
  margin-top: 6.2rem;
  margin-bottom: 3.4rem;
  padding-right: 0;
  padding-left: 2.9rem;
  letter-spacing: 0.05em;
  line-height: 1.5;
  font-size: clamp(3rem, 5vw, 3.5rem);
}

.top__company .txtArea .lTxt .count-number {
  font-size: clamp(3rem, 5vw, 3.5rem);
}

.top__company .basicBtn {
  position: absolute;
  left: 50%;
  bottom: -124px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.top__company .basicBtn a {
  margin-top: 0;
  font-size: clamp(1.6rem, 2.5vw, 2.1rem);
}

@media screen and (max-width: 1200px) {
  .top__companyWrapper .companyImg {
    max-width: 500px;
  }
}
@media screen and (max-width: 1100px) {
  .top__companyWrapper {
    padding: 12rem 3rem 8rem;
    position: relative;
    max-width: 100%;
  }
  .top__companyWrapper .companyImg {
    position: absolute;
    max-width: 480px;
    width: 50%;
  }
  .top__company .mContainer::before {
    top: -200px;
    left: 0;
    width: 230px;
    height: 150px;
  }
  .top__company .txtArea .lTxt {
    font-size: 3rem;
  }
  .top__company .txtArea {
    margin-bottom: 6rem;
  }
}
@media screen and (max-width: 820px) {
  .top__company > .bigTtl {
    margin-bottom: 0;
    top: -43px;
  }
  .top__companyWrapper {
    margin-top: 10rem;
    padding: 34rem 3rem 3rem;
  }
  .top__companyWrapper .companyImg {
    position: absolute;
    width: 52%;
    top: 0;
    z-index: 0;
  }
  .top__company .mContainer::before {
    top: -200px;
    left: 0;
    width: 230px;
    height: 150px;
  }
  .top__company .txtArea {
    width: 100%;
    z-index: 500;
  }
  .top__company .txtArea .lTxt {
    padding-left: 0;
  }
  .top__company .txtArea p {
    padding-left: 0;
  }
  .top__company .basicBtn {
    max-width: 400px;
    width: 100%;
  }
}
@media screen and (max-width: 767.5px) {
  .top__companyWrapper {
    padding: 6rem 3rem 12rem;
    margin-bottom: 0;
  }
  .top__companyWrapper .companyImg {
    position: static;
    width: 90%;
    margin-left: auto;
    -webkit-transform: none !important;
            transform: none !important;
  }
  .top__company .mContainer::before {
    display: none;
  }
}
/* --------------------

トップ：Recruit

----------------------*/
.top__recruit {
  max-width: 100%;
  padding: 8.3rem 0 11.7rem;
  margin: 16.8rem 0 12rem;
  background-color: #1C60BF;
  border-radius: 0;
  position: relative;
}

.top__recruit::before {
  display: block;
  content: "";
  width: 29.1vw;
  height: 100%;
  background-image: url(../img/top/recruit_bg_left.png);
  background-repeat: no-repeat;
  background-position: top right;
  background-size: auto 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.top__recruit::after {
  display: block;
  content: "";
  width: 10vw;
  height: 100%;
  background-image: url(../img/top/recruit_bg_right.png);
  background-repeat: no-repeat;
  background-position: top right;
  background-size: 100% auto;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}

.top__recruit .bigTtl {
  color: #78E3FD;
  position: absolute;
  top: -73px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.top__recruit .txtArea .recruitLabel {
  margin-bottom: 5rem;
  text-align: center;
  letter-spacing: 0.05em;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.1rem);
  font-weight: 600;
}

.top__recruit .txtArea .illust {
  max-width: 629px;
  width: 100%;
  margin: 0 auto 4.5rem;
}

.top__recruit .txtArea .summary {
  text-align: center;
  letter-spacing: 0.05em;
  line-height: 1.4;
  color: #fff;
  font-size: clamp(1.7rem, 3.2vw, 2.5rem);
  font-weight: 500;
}

.top__recruit .basicBtn {
  position: absolute;
  left: 50%;
  bottom: -35px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.top__recruit .basicBtn a {
  margin-top: 0;
  font-size: clamp(1.6rem, 2.5vw, 2.1rem);
}

@media screen and (max-width: 1100px) {
  .top__recruit {
    padding: 6rem;
  }
}
@media screen and (max-width: 820px) {
  .top__recruit {
    border-radius: 0;
    padding: 3rem 2rem 7rem;
    margin: 0 0 10rem;
    max-width: 100%;
  }
  .top__recruit::before {
    width: 35vw;
  }
  .top__recruit::after {
    width: 17vw;
    mix-blend-mode: soft-light;
  }
  .top__recruit .bigTtl {
    color: #fff;
    position: static;
    -webkit-transform: none;
            transform: none;
  }
  .top__recruit .basicBtn {
    max-width: 75%;
    width: 100%;
    margin-bottom: 0;
    bottom: -33px;
  }
  .top__recruit .basicBtn a {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 767.5px) {
  .top__recruit {
    border-radius: 0;
    padding: 3rem 2rem 7rem;
    margin: 0 0 10rem;
    max-width: 100%;
  }
  .top__recruit::before {
    width: 55vw;
  }
  .top__recruit .bigTtl {
    position: static;
    -webkit-transform: none;
            transform: none;
  }
}
/* --------------------

トップ：News

----------------------*/
.top_news {
  overflow-x: clip;
  margin-bottom: 10.8rem;
}

.top_news .ttlArea {
  text-align: center;
}

.top_news .ttlArea .bigTtl {
  margin-bottom: 0;
}

.top_news .newsArea {
  max-width: 730px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.top_news .newsArea a:hover {
  opacity: 0.7;
  cursor: pointer;
}

.newsArea__item a {
  display: block;
  padding: 1.8rem 2rem;
  text-align: left;
  font-size: 1.5rem;
}

.newsArea__item {
  border-bottom: 1px solid #D5D5D5;
}

.newsArea__item .date {
  letter-spacing: 0.06em;
  color: #CCCCCC;
  font-size: 1.3rem;
  font-weight: 600;
}

.newsArea__item .newsTxt {
  letter-spacing: 0.05em;
}

.top_news .linkBtn {
  max-width: 730px;
  width: 100%;
  margin-top: 2.5rem;
  margin-left: auto;
  margin-right: auto;
  text-align: right;
}

.top_news .linkBtn a {
  display: inline-block;
}

.top_news .linkBtn .text {
  letter-spacing: 0.07em;
}

.top_news .linkBtn .icon {
  display: inline-block;
}

@media screen and (max-width: 1100px) {
  .top_news .newsArea {
    max-width: 100%;
  }
  .top_news .ttlArea {
    max-width: 100%;
  }
  .newsArea__item a {
    display: block;
    padding: 2.5rem 0;
    text-align: left;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767.5px) {
  .newsArea__item a {
    padding: 2rem 0;
    font-size: 1.4rem;
  }
  .top_news .newsArea {
    max-width: 100%;
    margin-bottom: 0;
  }
  .newsFlex {
    display: block;
  }
  .newsFlex .date {
    font-size: 1.3rem;
    margin-right: 0;
  }
}
.detailCardBtn {
  display: none;
}
@media screen and (max-width: 1100px) {
  .detailCardBtn {
    display: block;
  }
}

.detailCardBtn span {
  font-size: 1.5rem;
  padding: 1.5rem 3rem 1.5rem 6rem;
  margin: 3rem auto 0;
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 100px;
  font-weight: 600;
  color: #fff;
  text-align: center;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(rgb(10, 207, 254)), to(rgb(73, 90, 255)));
  background: -webkit-linear-gradient(left, rgb(10, 207, 254), rgb(73, 90, 255));
  background: linear-gradient(90deg, rgb(10, 207, 254), rgb(73, 90, 255));
  -webkit-transition: background 0.5s ease, -webkit-transform 0.3s ease;
  transition: background 0.5s ease, -webkit-transform 0.3s ease;
  transition: background 0.5s ease, transform 0.3s ease;
  transition: background 0.5s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
  overflow: hidden;
}

.detailCardBtn span::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background: url(../img/common/icon_btn_arrow.svg) center/contain no-repeat;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
}

/* 各カード */
.mycard-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.mycard-item {
  width: calc((100% - 80px) / 3);
  border-radius: 28px;
  background: -webkit-gradient(linear, left top, right top, from(#007BFF), to(#00CFFF));
  background: -webkit-linear-gradient(left, #007BFF, #00CFFF);
  background: linear-gradient(to right, #007BFF, #00CFFF); /* グラデ枠 */
  padding: 3px; /* 枠の太さ */
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mycard-inner {
  background-color: #fff; /* 内側の白背景 */
  border-radius: 26px; /* 親の枠より少し小さく */
  padding: 30px 10px;
  text-align: center;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.mycard-inner a {
  display: block;
  text-decoration: none;
  color: inherit;
}

.mycard-inner img {
  width: 80px;
  height: 80px;
  margin-bottom: 19px;
}

.mycard-inner p {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.4;
  margin: 0;
}

/* カード内リンク */
.mycard-item a {
  display: block;
  text-decoration: none;
  color: #1C60BF;
}

.mycard-item.current a {
  color: #D8D8D8;
  pointer-events: none;
}

/* アイコン画像 */
.mycard-item img {
  width: 80px;
  height: 80px;
  margin-bottom: 10px;
}

.mycard-item.current img {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%);
  opacity: 0.3;
}

/* タイトル */
.mycard-item p {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.4;
  margin: 0;
}

/* スマホで縦並び */
@media screen and (max-width: 768px) {
  .mycard-container {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 20px;
  }
  .mycard-item {
    width: calc((100% - 20px) / 2);
  }
}
@media screen and (max-width: 480px) {
  .mycard-item {
    width: 100%;
  }
}
@media screen and (max-width: 1100px) {
  .servicePage .spOrderHeadingImageText .imgArea,
  .servicePage .spOrderHeadingImageText .imgList__2col {
    width: calc(40% - 20px);
  }
}
@media screen and (max-width: 767.5px) {
  .servicePage .spOrderHeadingImageText .imgArea,
  .servicePage .spOrderHeadingImageText .imgList__3col {
    width: 80%;
  }
}

.card-area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  max-width: 1200px;
  margin: 0 auto;
}

/* 各カード */
.card {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 0;
      -ms-flex: 1 1 0px;
          flex: 1 1 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  background: #ffffff;
  border: none;
  /* ▼水色の影 */
  -webkit-box-shadow: 8px 8px 0 rgba(0, 160, 255, 0.45);
          box-shadow: 8px 8px 0 rgba(0, 160, 255, 0.45);
  -webkit-transition: -webkit-box-shadow 0.25s ease, -webkit-transform 0.25s ease;
  transition: -webkit-box-shadow 0.25s ease, -webkit-transform 0.25s ease;
  transition: box-shadow 0.25s ease, transform 0.25s ease;
  transition: box-shadow 0.25s ease, transform 0.25s ease, -webkit-box-shadow 0.25s ease, -webkit-transform 0.25s ease;
}

/* 少し強調） */
.card:hover {
  -webkit-box-shadow: 10px 10px 0 rgba(0, 160, 255, 0.55);
          box-shadow: 10px 10px 0 rgba(0, 160, 255, 0.55);
  -webkit-transform: translate(-4px, -4px);
          transform: translate(-4px, -4px);
}

/* 画像部分（画像だけ角丸＋余白） */
.card-img {
  padding: 16px;
  text-align: center;
}

.card-img img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
  display: inline-block;
}

/* テキスト部分 */
.card-body {
  padding: 20px 22px 24px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  height: 100%;
}

/* 上の小見出し */
.card-tag {
  font-size: 0.9rem;
  color: #0070c0;
  margin: 0 0 6px;
}

/* タイトル（大きめ） */
.card-title {
  font-size: 1.3rem;
  font-weight: 700;
  margin: 0 0 14px;
  line-height: 1.45;
}

/* 本文 */
.card-text {
  font-size: 0.9rem;
  line-height: 1.7;
  color: #333333;
  margin: 0;
}

/* スマホで縦並び */
.case .card-area .card .card-body .card-title {
  font-size: 1.5rem;
}

.case .card-area .card .card-body p {
  font-size: 1.4rem;
  line-height: 1.6;
  margin-bottom: 0;
}

.servicePage .spNone {
  display: block;
}

@media screen and (max-width: 1053px) {
  .servicePage .spNone {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .servicePage .flexBox:nth-of-type(n + 2) {
    margin-top: 8rem;
  }
  .servicePage .flexBox .imgArea {
    text-align: center;
  }
  .servicePage .flexBox .txtArea {
    margin-bottom: 0;
  }
}
.ses-haken_en {
  font-size: 10rem;
  color: #78E3FD;
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  line-height: 1;
  text-align: left;
}

@media screen and (max-width: 910px) {
  .ses-haken_en {
    font-size: 7rem;
  }
}
@media screen and (max-width: 767.5px) {
  .ses-haken_en {
    font-size: 5rem;
  }
}
.-capabilities {
  background: url(../img/service/ses-haken/capabilities_bg.jpg) no-repeat;
  background-size: cover;
  margin-top: 15rem;
}

@media screen and (max-width: 768px) {
  .-capabilities {
    margin-top: 10rem;
  }
}
.-capabilities .capaTtl {
  color: #78E3FD;
  font-size: 8rem;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  text-align: center;
  margin: -20rem 0 6rem;
  line-height: 1;
}

@media screen and (max-width: 768px) {
  .-capabilities .capaTtl {
    font-size: 5rem;
    margin: -13rem 0 5rem;
  }
}
.-capabilities .capaArea {
  margin-top: 6em;
}

@media screen and (max-width: 768px) {
  .-capabilities .capaArea {
    margin-top: 3em;
  }
}
.-capabilities .capaArea .areaTtl {
  font-size: 3.5rem;
  font-weight: 800;
  margin-bottom: 5rem;
  color: #FFF;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .-capabilities .capaArea .areaTtl {
    font-size: 3rem;
    margin-bottom: 3rem;
  }
}
.-capabilities .capaList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 4rem;
}

@media screen and (max-width: 768px) {
  .-capabilities .capaList {
    gap: 2rem;
  }
}
.-capabilities .capaList .capaList__item {
  width: calc((100% - 40px) / 2);
  background-color: #FFF;
  border-radius: 15px;
  padding: 2.5rem 4rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3rem;
}

@media screen and (max-width: 768px) {
  .-capabilities .capaList .capaList__item {
    width: 100%;
    padding: 2rem;
    gap: 2rem;
  }
}
.-capabilities .capaList .capaList__item .icon {
  max-width: 80px;
  width: 100%;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
}

@media screen and (max-width: 768px) {
  .-capabilities .capaList .capaList__item .icon {
    max-width: 60px;
  }
}
.-capabilities .capaList .capaList__item .icon img {
  width: 100%;
  height: auto;
  display: block;
}

.-capabilities .capaList .capaList__item .text {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.-capabilities .capaList .capaList__item .text .textTtl {
  font-size: 2rem;
  margin-bottom: 0.5rem;
}

@media screen and (max-width: 768px) {
  .-capabilities .capaList .capaList__item .text .textTtl {
    font-size: 1.8rem;
  }
}
.-capabilities .capaList .capaList__item .text p {
  margin-bottom: 0;
  line-height: 1.7;
}

.partnerArea {
  margin: 0 auto 14rem;
  padding: 14rem 0;
  background: #EEF8FF !important;
}

.partnerArea .flexBox .imgArea {
  background: #fff;
  border: 1px solid #34F6F2;
  border-radius: 50px;
  padding: 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 767.5px) {
  .partnerArea {
    margin: 0 auto 8rem;
    padding: 8rem 0;
  }
  .partnerArea .mContainer {
    margin-bottom: 0;
  }
}
.inhouseArea .flexBox .imgArea {
  background: #fff;
  border: 1px solid #1C60BF;
  border-radius: 50px;
  padding: 2rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.servicePackagePage .basicBtn a {
  margin: 4rem 0 0 0;
}

@media screen and (max-width: 500px) {
  .servicePackagePage .basicBtn {
    margin-bottom: 0;
  }
  .servicePackagePage .basicBtn a {
    margin: 3rem 0 0 0;
  }
}
.solution h3 {
  text-align: center;
  margin: 3rem 0;
}

.solution h3 span {
  color: #BF1C2D;
}

.package {
  margin-bottom: 8rem !important;
}

@media screen and (max-width: 767.5px) {
  .package {
    margin-bottom: 3rem !important;
  }
}
.package .flexBox .imgArea {
  width: calc(48% - 40px);
}

.package .flexBox .txtArea {
  width: 55%;
}

.package .en {
  font-size: 10rem;
  color: #78E3FD;
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  line-height: 1;
  text-align: left;
  letter-spacing: 0;
}

@media screen and (max-width: 900px) {
  .package .en {
    font-size: 7rem;
  }
}
@media screen and (max-width: 830px) {
  .package .en {
    font-size: 6.5rem;
  }
  .package .flexBox .txtArea {
    width: 51%;
  }
  .package .flexBox .imgArea {
    width: calc(49% - 30px);
  }
}
@media screen and (max-width: 767px) {
  .package .flexBox .imgArea {
    width: 80%;
  }
  .package .flexBox .txtArea {
    width: 100%;
  }
  .package .en {
    font-size: 5rem;
  }
}
.solution .spShow {
  display: none;
}

.solution .spNone {
  display: block;
}

@media screen and (max-width: 767px) {
  .solution .spShow {
    display: block;
  }
  .solution .spNone {
    display: none;
  }
}
@media screen and (max-width: 382px) {
  .solution .spShow {
    display: none;
  }
}
@media screen and (max-width: 767.5px) {
  .partnerArea .flexBox,
  .inhouseArea .flexBox,
  .package .flexBox {
    margin: 0 auto 6rem;
  }
}
@media screen and (max-width: 767px) {
  .solution .spNone {
    display: block;
  }
}
@media screen and (max-width: 440px) {
  .solution .spNone {
    display: none;
  }
}
.packageProblemList {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin: 0 auto 6rem;
  gap: 40px;
  overflow-x: visible;
}
@media screen and (max-width: 1100px) {
  .packageProblemList {
    gap: 3rem;
  }
}
@media screen and (max-width: 767.5px) {
  .packageProblemList {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
}

.packageProblemListItem {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  border: 1px solid #fff;
  border-radius: 20px;
  padding: 1.5rem;
  -webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.5);
          box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.5);
}
@media screen and (max-width: 840px) {
  .packageProblemListItem {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.packageProblemListItem img {
  border-radius: 0;
  max-width: 70px;
  margin-right: 15px;
  width: 100%;
  margin-bottom: 2rem;
}
@media screen and (max-width: 840px) {
  .packageProblemListItem img {
    margin-right: 0;
  }
}
.packageProblemListItem p {
  -webkit-box-flex: 1;
  -webkit-flex: 1 0 0%;
      -ms-flex: 1 0 0%;
          flex: 1 0 0%;
  margin-bottom: 0;
  font-size: 120%;
  font-weight: bold;
  line-height: 1.6;
  letter-spacing: 0;
  text-align: justify;
}
@media screen and (max-width: 767.5px) {
  .packageProblemListItem p {
    font-size: 1.6rem;
    line-height: 1.4;
  }
}

/* ナビゲーション */
.mContainer.rnavi {
  margin-bottom: 0;
  padding: 7rem 0 11.7rem;
}

.companyNavList {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 57px 30px;
}

.companyNavList a {
  display: inline-block;
  padding-left: 7rem;
  color: #000000;
  font-size: clamp(2.4rem, 4vw, 2.4rem);
  font-weight: 600;
  position: relative;
}

.companyNavList a::before {
  display: block;
  content: "";
  width: 50px;
  height: 50px;
  background-image: url(../img/recruit/company/icon_arrow_next.svg);
  background-repeat: no-repeat;
  background-position: center left;
  background-size: 50px auto;
  position: absolute;
  top: -3px;
  left: 0;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.companyNavList a:hover {
  color: #1C60BF;
}

.companyNavList a:hover::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.companyNavList .current {
  color: #C6C6C6;
  pointer-events: none;
}

@media screen and (max-width: 820px) {
  .mContainer.rnavi {
    /* padding-top: 0; */
    padding-bottom: 0;
  }
  .companyNavList {
    gap: 30px 30px;
  }
  .companyNavList a {
    padding-left: 5rem;
  }
  .companyNavList a::before {
    width: 35px;
    height: 35px;
    background-size: 35px auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .companyNavList a:hover::before {
    -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
  }
}
.companyPage .imgList .imgList__4col {
  width: calc(33% - 30px);
}

@media screen and (min-width: 1100px) {
  .companyPage .imgList.wrapper_4col {
    max-width: 990px;
  }
}
@media screen and (max-width: 1100px) {
  .companyPage .imgList.wrapper_4col {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .companyPage .imgList {
    gap: 0;
  }
  .companyPage .imgList.wrapper_4col .imgList__4col {
    width: 48%;
    margin-right: 4%;
    -webkit-box-flex: 1;
    -webkit-flex: auto;
        -ms-flex: auto;
            flex: auto;
  }
  .imgList.wrapper_4col .imgList__4col:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 480px) {
  .companyPage .imgList .imgList__4col .circleArrowImg .circleArrow {
    width: 11vw;
    height: 11vw;
  }
  .companyPage .imgList .imgList__4col .headLv4_02 {
    font-size: 120%;
  }
}
.basicTable.-profileTable th {
  font-weight: 300;
}

.profileLabel {
  color: #1C60BF;
  text-align: center;
  line-height: 0.8;
  margin-bottom: 0;
}

.profileLabel .en {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 8rem;
  font-weight: 500;
}

.profileLabel .jp {
  font-size: 2rem;
  font-weight: 500;
}

.profileSubttl {
  font-size: 2.2rem;
  color: #000000;
  background-image: url("../img/company/profile/bg.png");
  background-position: bottom;
  background-repeat: repeat-x;
  padding-bottom: 6px;
  position: relative;
  padding-left: 5rem;
  margin: 7rem 0 0;
}

.profileSubttl::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 38px;
  height: 38px;
  background-image: url("../img/company/profile/icon_01.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: left bottom;
}

#accessmap iframe {
  display: block;
}

.accesCont {
  background-color: #fff;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.accesCont > .imgArea {
  width: 24.2727272727%;
}

.accesCont > .txtArea {
  padding: 2rem 4rem;
  width: 75.7272727273%;
}

.accesCont > .txtArea > .ttl,
.accesCont > .txtArea > .text {
  position: relative;
  padding-left: 3rem;
  margin-bottom: 0.5em;
}

.accesCont > .txtArea > .ttl.-mt {
  margin-top: 1em;
}

.accesCont > .txtArea > .ttl::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 21.3px;
  height: 26.88px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url("../img/company/profile/icon_02.svg") no-repeat center/contain;
}

.accesCont > .txtArea > .text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 21.3px;
  height: 26.49px;
  background: url("../img/company/profile/icon_03.svg") no-repeat center/contain;
}

@media screen and (max-width: 820px) {
  .profileLabel .en {
    font-size: 5.5rem;
  }
  .profileLabel .jp {
    font-size: 1.6rem;
  }
  .companyProfilePage .mContainer.rnavi {
    padding-top: 7rem;
  }
}
@media screen and (max-width: 560px) {
  .accesCont {
    display: block;
  }
  .accesCont > .imgArea {
    width: 100%;
    padding: 0 2rem 2rem;
  }
  .accesCont > .txtArea {
    padding: 2rem;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .-corporatePhilosophy .flexBox:nth-of-type(n + 2) {
    margin-top: 8rem;
  }
  .-corporatePhilosophy .flexBox .imgArea {
    text-align: center;
  }
  .-corporatePhilosophy .flexBox .txtArea {
    margin-bottom: 0;
  }
}

#aisatsu .sContainer {
  margin-bottom: 10rem;
}

.lowerCont .notes {
  margin-top: 1em;
  padding-left: 1em;
  text-indent: -1em;
  display: block;
  font-size: 90%;
}

.lowerCont .headLv3_02.-certificationLabel {
  background-color: #B9F1FF;
  border-left: 5px solid #34D7FF;
  padding: 0.3em 0.5em 0.3em 0.7em;
  margin-top: 8rem;
}

.certificationImg {
  margin: 4em auto 0;
  max-width: 360px;
}

.certificationImg.-sdgs {
  max-width: 311px;
}

.certificationImg.-sdgs02 {
  max-width: 845px;
}

.certificationImg.-mb {
  margin-bottom: 2em;
}

.margin-rate {
  border: 1px solid #DDDDDD;
  border-radius: 3rem;
  padding: 3rem;
  margin-bottom: 6rem;
}

.margin-rate .ttl {
  color: #1C60BF;
  font-size: 150%;
  text-align: center;
}

.margin-rate .imgCont {
  max-width: 673px;
  margin: 1.5em auto;
}

.margin-rate > p {
  margin-bottom: 0;
}

.basicTable.-certificationTable th {
  font-weight: 300;
}

.basicTable.-certificationTable .basicList {
  margin: 0;
}

.certificationList {
  max-width: 790px;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.certificationList .certificationList__item:first-child {
  max-width: 403px;
}

.certificationList .certificationList__item:nth-last-child {
  max-width: 360px;
}

@media screen and (max-width: 560px) {
  .margin-rate {
    padding: 1.5rem;
  }
}
.companyAffiliatePage .grayGrid {
  padding-top: 2px;
}

.grayGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px 40px;
}

.grayBox a,
.grayBox p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  min-height: 120px;
  border: 1px solid #ccc;
  border-radius: 20px;
  margin: 0;
  padding: 2rem;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  align-items: center;
}

.grayBox a {
  color: #1C60BF;
  background: url(../img/common/icon_circleArrow.svg);
  background-position: center right 20px;
  background-repeat: no-repeat;
  background-size: 22px auto;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

@media screen and (max-width: 768px) {
  .grayGrid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.aisatsuTtl {
  margin-bottom: 4rem;
}

.aisatsuTtl .lTxt {
  position: relative;
  margin-bottom: 6rem;
}

.aisatsuTtl .lTxt::after {
  content: "";
  width: 70px;
  height: 4px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  bottom: -25px;
  position: absolute;
  background: -webkit-gradient(linear, left top, right top, from(rgb(10, 207, 254)), to(rgb(73, 90, 255)));
  background: -webkit-linear-gradient(left, rgb(10, 207, 254), rgb(73, 90, 255));
  background: linear-gradient(90deg, rgb(10, 207, 254), rgb(73, 90, 255));
}

.recruitCont #recruit {
  position: relative;
  z-index: 2;
}

.recruitCont .sContainer {
  margin-bottom: 5.9em;
}

.recruitCont .linkArea {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  max-width: 813px;
  margin: 5em auto 11em;
}

.recruitCont .linkArea .item {
  width: 30%;
  margin-right: 5%;
  border-radius: 20px;
  overflow: hidden;
}

.recruitCont .linkArea .item a.recruitLink {
  position: relative;
  display: block;
  width: 100%;
  min-height: 300px;
  height: 100%;
}

.recruitCont .linkArea .item:first-child {
  background: url(../img/recruit/top/link_img01.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.recruitCont .linkArea .item:nth-child(2) {
  background: url(../img/recruit/top/link_img02.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.recruitCont .linkArea .item:nth-child(3) {
  margin-right: 0;
  background: url(../img/recruit/top/link_img03.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.recruitCont .linkArea .item:nth-child(4) {
  margin-top: 5%;
  background: url(../img/recruit/top/link_img04.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

.recruitCont .linkArea .item:last-child {
  margin-top: 5%;
  margin-right: 0;
}

.recruitCont .linkArea .item.-wide {
  width: 65%;
  margin-top: 5%;
  background: url(../img/recruit/top/link_img05.png?20260304);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  position: relative;
}

.recruitCont .linkArea .item .linkTtl {
  padding: 0.5em;
  text-align: center;
  font-size: 173.5%;
  color: white;
  text-shadow: 0px 3px 6px rgb(0, 0, 0);
}

.recruitCont .linkArea .item .linkTtl.-linkTtl01 {
  background: rgba(255, 196, 30, 0.57);
}

.recruitCont .linkArea .item .linkTtl.-linkTtl02 {
  background: rgba(26, 185, 255, 0.57);
}

.recruitCont .linkArea .item .linkTtl.-linkTtl03 {
  background: rgba(236, 104, 255, 0.58);
}

.recruitCont .linkArea .item .linkTtl.-linkTtl04 {
  background: rgba(255, 255, 255, 0.5);
}

.recruitCont .linkArea .item .linkTtl.-linkTtl05 {
  background: rgba(88, 227, 107, 0.76);
}

.recruitCont .linkArea .item .circleArrow {
  display: inline-block;
  width: 50px;
  height: 50px;
  position: absolute;
  bottom: 23px;
  left: 23px;
}

.recruitCont .linkArea .item:hover .circleArrow {
  opacity: 1;
  background: url(../img/common/icon_circleArrow_hover.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  cursor: pointer;
}

.recruitCont .linkArea .item.-wide .linkSub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  padding: 0 20px 20px 20px;
  position: absolute;
  bottom: 0;
}

.recruitCont .linkArea .item.-wide .linkSub .circleArrowImg {
  display: inline-block;
  width: 48%;
  margin-right: 4%;
  border-radius: 100px;
  background: #8AE8FF;
}

.recruitCont .linkArea .item.-wide .linkSub .circleArrowImg:first-child {
  margin-bottom: 27px;
}

.recruitCont .linkArea .item.-wide .linkSub .circleArrowImg:nth-child(2n) {
  margin-bottom: 27px;
  margin-right: 0;
}

.recruitCont .linkArea .item.-wide .linkSub .circleArrowImg:last-child {
  margin-right: 0;
  width: 60%;
}

.recruitCont .linkArea .item.-wide .linkSub .circleArrowImg p {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 60px;
  height: 100%;
  margin-bottom: 0;
  padding-left: 70px;
  font-size: 153.5%;
  font-weight: bold;
  line-height: 1;
  color: white;
}

.recruitCont .linkArea .item.-wide .linkSub .circleArrowImg .circleArrow {
  margin-top: -25px;
  position: absolute;
  top: 50%;
  left: 7px;
}

.recruitCont .pointArea .headLv2_01 {
  margin-top: 0;
}

.recruitCont .pointArea .headLv2_01 .en {
  display: block;
  text-align: center;
  font-family: "Roboto Condensed", sans-serif;
  font-size: 430%;
  font-weight: bold;
  line-height: 0.3;
  color: #7ECAFF;
}

.recruitCont .pointArea .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 60px;
}

.recruitCont .pointArea .item:last-child {
  margin-bottom: 0;
}

.recruitCont .pointArea .item .imageArea {
  width: 328px;
  margin-right: 3em;
}

.recruitCont .pointArea .item .textArea {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.recruitCont .pointArea .item .textArea .headLv3_01 {
  margin-top: 0;
}

.recruitCont .pointArea .item .textArea .headLv3_01.-recruitTop {
  color: #000000;
}

@media screen and (max-width: 1010px) {
  .recruitCont:before {
    top: 100px;
  }
}
@media screen and (max-width: 820px) {
  .recruitCont .linkArea .item .linkTtl {
    border-radius: 18px 18px 0 0;
  }
  .recruitCont .linkArea {
    margin-top: 3em;
  }
}
@media screen and (max-width: 768px) {
  .recruitCont .linkArea .item .linkTtl {
    font-size: 134%;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg p {
    font-size: 120%;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg:last-child {
    width: 80%;
  }
  .recruitCont .pointArea .headLv2_01 .en {
    font-size: 17vw;
  }
  .recruitCont .pointArea .item .imageArea {
    width: 40%;
    margin-right: 5%;
  }
}
@media screen and (max-width: 640px) {
  .recruitCont .linkArea {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .recruitCont .linkArea .item {
    width: 48%;
    margin-right: 4%;
    min-height: 200px;
  }
  .recruitCont .linkArea .item:nth-child(3) {
    margin-right: 4%;
    margin-top: 4%;
  }
  .recruitCont .linkArea .item:nth-child(4) {
    margin-right: 4%;
    margin-top: 4%;
  }
  .recruitCont .linkArea .item:last-child {
    margin-top: 4%;
  }
  .recruitCont .linkArea .item:nth-child(2n) {
    margin-right: 0;
  }
  .recruitCont .linkArea .item.-wide {
    width: 100%;
  }
  .recruitCont .linkArea .item.-wide .linkSub {
    position: static;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg {
    width: 100%;
    margin-right: 0;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg:first-child {
    margin-bottom: 15px;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg:nth-child(2n) {
    margin-bottom: 15px;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg:last-child {
    width: 100%;
    margin-bottom: 0;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg p {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 40px;
    margin-bottom: 0;
    padding-left: 50px;
    font-size: 100%;
  }
  .recruitCont .linkArea .item.-wide .linkSub .circleArrowImg .circleArrow {
    width: 30px;
    height: 30px;
    margin-top: -15px;
  }
  .recruitCont .pointArea .item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .recruitCont .pointArea .item .imageArea {
    max-width: 400px;
    width: 100%;
    margin-right: 0;
  }
  .recruitCont .pointArea .item .textArea {
    width: 100%;
  }
}
@media screen and (max-width: 560px) {
  .recruitCont .linkArea {
    margin: 5em auto 6em;
  }
}
@media screen and (max-width: 460px) {
  .pointArea h2,
  .headLv2_01 {
    font-size: 2.6rem;
    letter-spacing: -0.1px;
  }
}
@media screen and (max-width: 430px) {
  .recruitCont .linkArea .item.-wide {
    background-position: center top;
  }
}
/* ナビゲーション */
.mContainer.rnavi {
  padding: 7rem 0 11.7rem;
}

.recruitNavList {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
  gap: 57px 30px;
}

.recruitNavList a {
  display: inline-block;
  padding-left: 7rem;
  color: #000000;
  font-size: clamp(2.4rem, 4vw, 2.4rem);
  font-weight: 600;
  position: relative;
}

.recruitNavList a::before {
  display: block;
  content: "";
  width: 50px;
  height: 50px;
  background-image: url(../img/recruit/company/icon_arrow_next.svg);
  background-repeat: no-repeat;
  background-position: center left;
  background-size: 50px auto;
  position: absolute;
  top: -3px;
  left: 0;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.recruitNavList a:hover {
  color: #1C60BF;
}

.recruitNavList a:hover::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.recruitNavList .current {
  color: #C6C6C6;
  pointer-events: none;
}

@media screen and (max-width: 820px) {
  .mContainer.rnavi {
    padding-top: 0;
  }
  .recruitNavList {
    gap: 30px 30px;
  }
  .recruitNavList a {
    padding-left: 5rem;
  }
  .recruitNavList a::before {
    width: 35px;
    height: 35px;
    background-size: 35px auto;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .recruitNavList a:hover::before {
    -webkit-transform: translateY(-50%) rotate(45deg);
            transform: translateY(-50%) rotate(45deg);
  }
}
.lowerPage.recruit {
  overflow: hidden;
}

.lowerPage.recruit .pageHead {
  padding: 10rem 0 25rem;
}

@media screen and (max-width: 820px) {
  .lowerPage.recruit .pageHead {
    padding: 12rem 0 16rem;
  }
}
@media screen and (max-width: 820px) {
  .recruit .lower__headArea .pageHead::before {
    bottom: -234px;
  }
}
.lowerPage.recruit .lowerCont {
  position: relative;
}

.lowerPage.recruit .lowerCont:before {
  content: "";
  display: inline-block;
  width: 290px;
  height: 388px;
  background: url(../img/recruit/back_left.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: -90px;
}

.lowerPage.recruit .lowerCont:after {
  content: "";
  display: inline-block;
  width: 282px;
  height: 380px;
  background: url(../img/recruit/back_right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -100px;
  right: 0;
}

@media screen and (max-width: 1100px) {
  .lowerPage.recruit .lowerCont:before,
  .lowerPage.recruit .lowerCont:after {
    content: none;
  }
}
.anchorLink h3 {
  font-size: 2.3rem;
  margin-bottom: 1rem;
  color: #000;
  font-weight: bold;
}

.anchorLink h3 span {
  font-size: 1.3rem;
  font-weight: 300;
}

.anchorLink p {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 0;
}

.anchorLink .imgList .imgList__4col img {
  border-radius: none;
}

@media screen and (max-width: 1100px) {
  .anchorLink h3 span {
    display: block;
  }
}
.interviewArea {
  margin: 0 auto 30rem;
  padding: 15rem 0;
  border-radius: 60px;
  background: #EEF8FF !important;
}

.lowerCont .interviewArea .mContainer {
  margin-bottom: 0;
}

.interviewArea:first-of-type {
  margin-top: 25rem;
}

.interviewArea:last-of-type {
  margin-bottom: 10rem;
}

.interviewTtl {
  margin-bottom: 15rem;
  z-index: 100;
  position: relative;
  min-height: 300px;
}

.interviewTtl .mTxt {
  font-weight: bold;
}

.interviewTtl__num {
  font-size: 20rem;
  top: -418px;
  position: absolute;
  color: #EEF8FF;
  font-weight: 800;
  text-align: left;
}

.interviewTtl .txtArea h3 {
  margin-bottom: 4rem;
}

.interviewTtl .imgArea {
  top: -250px;
  right: 0;
  width: 600px;
  height: auto;
  position: absolute;
  color: #EEF8FF;
}

.interviewTtl .imgArea img {
  border-radius: 60px 0 0 60px;
  width: 100%;
  position: relative;
}

.interviewTtl .imgArea::after {
  position: absolute;
  content: "";
  z-index: -100;
  bottom: -50px;
  left: -50px;
  width: 600px;
  height: 355px;
  background: -webkit-gradient(linear, left top, right top, from(rgb(10, 207, 254)), to(rgb(73, 90, 255)));
  background: -webkit-linear-gradient(left, rgb(10, 207, 254), rgb(73, 90, 255));
  background: linear-gradient(90deg, rgb(10, 207, 254), rgb(73, 90, 255));
  border-radius: 0 0 0 60px;
}

@media (min-width: 1600px) {
  .interviewTtl .imgArea {
    top: -350px;
    right: 0;
    width: 750px;
  }
  .interviewTtl .imgArea::after {
    width: 700px;
    height: 500px;
  }
}
.interviewArea .headLv3_03 {
  margin-top: 0;
}

.interviewArea .flexBox {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.interviewArea p {
  text-align: justify;
}

.pointQ {
  font-size: 1.5rem;
  margin-bottom: 1.8rem;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: #1C60BF;
}

.pointQ::before {
  width: 20px;
  height: 20px;
  margin-right: 1rem;
  line-height: 1;
  content: "";
  background: url(../img/recruit/interview/pointQ.png) no-repeat;
  background-size: contain;
  background-position: top;
}

@media screen and (max-width: 1100px) {
  .interviewTtl .imgArea {
    max-width: 460px;
  }
  .interviewTtl .imgArea::after {
    bottom: -30px;
    left: -30px;
    width: 500px;
    height: 255px;
  }
  .interviewTtl .txtArea {
    width: 55%;
  }
  .interviewTtl {
    margin-bottom: 10rem;
  }
}
@media screen and (max-width: 820px) {
  .interviewArea:first-of-type {
    margin-top: 20rem;
  }
  .interviewTtl .txtArea {
    width: 100%;
    margin-bottom: 2rem;
  }
  .interviewTtl .imgArea {
    max-width: 60%;
  }
  .interviewTtl .imgArea::after {
    width: 60%;
    height: 255px;
  }
  .interviewTtl {
    padding-top: 25rem;
  }
  .interviewTtl__num {
    font-size: 15rem;
    top: -352px;
  }
}
@media screen and (max-width: 767.5px) {
  #interview-02 .flowBox .txtArea::before {
    height: 335px;
  }
  #interview-03 .flowBox .txtArea::before {
    height: 330px;
  }
}
@media screen and (max-width: 600px) {
  .interviewArea {
    border-radius: 25px;
    margin-bottom: 12rem;
    padding-bottom: 10rem;
  }
  .interviewArea:first-of-type {
    margin-top: 15rem;
  }
  .interviewTtl {
    padding-top: 20rem;
  }
  .interviewTtl__num {
    font-size: 10rem;
    top: 90px;
    left: 10px;
    z-index: -100;
    color: #fff;
  }
  .interviewTtl .imgArea {
    top: -200px;
    max-width: 300px;
    margin: 0 0 0 auto;
  }
  .interviewTtl .imgArea img {
    border-radius: 0 25px 0 0;
  }
  .interviewTtl .imgArea::after {
    width: 300px;
    height: 200px;
    border-radius: 0 0 0 25px;
  }
  .headLv3_03 .pointQ {
    margin-bottom: 1rem;
  }
  .interviewArea .headLv3_03 {
    font-size: 2.2rem;
    margin-bottom: 4rem;
  }
}
@media screen and (max-width: 500px) {
  .headLv3_03 .pointQ {
    margin-bottom: 1rem;
  }
  .interviewArea .headLv3_03 {
    font-size: 2.2rem;
    margin-bottom: 4rem;
  }
}
.recruitCompanyPage .lowerCont .mContainer {
  margin-bottom: 17.5rem;
}

@media screen and (max-width: 767.5px) {
  .recruitCompanyPage .lowerCont .mContainer {
    margin-bottom: 9rem;
  }
}
.recruitCompanyPage .-round {
  padding-left: 3rem;
  padding-bottom: 3rem;
}

.recruitCompanyPage .-round .img {
  max-width: 100%;
  height: auto;
  background-color: #1C60BF;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border: 2px solid #1C60BF;
  -webkit-box-shadow: -30px 30px 0 rgb(28, 96, 191);
          box-shadow: -30px 30px 0 rgb(28, 96, 191);
  border-radius: 50px;
}

.recruitCompanyPage .-round .img img {
  max-width: 100%;
  height: auto;
}

.recruitCompanyPage .flexBox .txtArea {
  width: 46%;
}

.recruitCompanyPage .flexBox {
  margin: 0 auto 6.3rem;
}

.recruitCompanyPage .interviewArea {
  margin-top: 0;
  padding-top: 0;
  border-radius: 0;
}

.recruitCompanyPage .interviewArea:first-of-type {
  margin-top: 12rem;
  margin-bottom: 23rem;
  padding-bottom: 10.2rem;
}

@media screen and (max-width: 767.5px) {
  .recruitCompanyPage .interviewArea:first-of-type {
    margin-top: 9rem;
  }
}
.recruitCompanyPage .interviewTtl {
  margin-bottom: 10rem;
  padding-top: 12rem;
}

@media screen and (max-width: 768px) {
  .recruitCompanyPage .interviewTtl {
    margin-bottom: 7rem;
  }
  .recruitCompanyPage .interviewTtl .mContainer {
    margin-bottom: 0;
  }
}
.recruitCompanyPage .interviewTtl .imgArea {
  width: 600px;
}

.recruitCompanyPage .interviewTtl .imgArea::before {
  content: "";
  position: absolute;
  bottom: -111px;
  right: 23px;
  width: 282.63px;
  height: 212.63px;
  background-image: url("../img/recruit/pattern-01.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  z-index: 1;
}

.recruitCompanyPage .interviewTtl .imgArea img {
  max-width: 100%;
  height: auto;
}

.recruitCompanyPage .interviewTtl .txtArea {
  width: 47%;
}

.recruitCompanyPage .interviewTtl .txtArea > .lTxt {
  margin-bottom: 3.2rem;
  letter-spacing: 0.05em;
}

.recruitCompanyPage .interviewTtl .txtArea > p:not(.interviewTtl__num) {
  letter-spacing: 0.03em;
  line-height: 2.3;
}

.recruitCompanyPage .interviewTtl .imgArea::after {
  width: 100%;
  height: 100%;
  border-radius: 53px;
}

.recruitCompanyPage .interviewTtl__num {
  margin-bottom: 0;
  line-height: 1;
  letter-spacing: 0;
  font-size: clamp(8rem, 15vw, 20rem);
  top: auto;
  bottom: calc(100% - 0.15em);
}

.recruitCompanyPage .interviewTtl__num span {
  font-size: clamp(4rem, 6vw, 6rem);
}

.recruitCompanyPage .interviewTtl .imgArea {
  top: -150px;
}

.recruitCompanyPage .careerBox .flexBox {
  margin: 0 auto;
  padding-bottom: 17.5rem;
  position: relative;
}

.recruitCompanyPage .careerBox .flexBox:last-of-type {
  padding-bottom: 0;
}

.recruitCompanyPage .careerBox .flexBox::before {
  display: block;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #1C60BF;
  position: absolute;
  left: 23%;
  top: 0;
  -webkit-transform: translateX(-23%);
          transform: translateX(-23%);
  z-index: -1;
}

.recruitCompanyPage .careerBox .flexBox:last-of-type::before {
  content: none;
}

.recruitCompanyPage .interviewArea.career {
  padding-bottom: 11rem;
}

.recruitCompanyPage .careerBox .flexBox .headLv3_03 {
  letter-spacing: 0.04em;
}

.recruitCompanyPage .careerBox .flexBox .headLv5_01 {
  display: inline-block;
  padding: 1px 6px;
  background-color: #78E3FD;
  color: #fff;
  font-size: clamp(1.7rem, 3vw, 2.3rem);
}

.recruitCompanyPage .careerBox .flexBox .imgArea {
  position: relative;
}

.recruitCompanyPage .careerBox .flexBox .imgArea .tag {
  min-width: 158px;
  padding: 0.18em 1.4em;
  background-color: #1C60BF;
  border-radius: 50px 0px 20px 0px;
  text-align: center;
  color: #fff;
  font-size: clamp(1.8rem, 3vw, 2.8rem);
  font-weight: 600;
  position: absolute;
}

.-read {
  position: relative;
  z-index: 10;
}

.recruitCompanyPage .mContainer.rnavi {
  padding-bottom: 0 !important;
}

@media screen and (max-width: 820px) {
  .recruitCompanyPage .mContainer.rnavi {
    padding-top: 7rem;
  }
}
@media screen and (max-width: 1260px) {
  .recruitCompanyPage .interviewTtl .txtArea {
    width: 37%;
  }
}
@media screen and (max-width: 820px) {
  .recruitCompanyPage .interviewTtl {
    padding-top: 50%;
  }
  .recruitCompanyPage .interviewTtl__num {
    top: auto;
    left: 10px;
    bottom: calc(100% - 0.3em);
    z-index: -100;
    color: #fff;
  }
  .recruitCompanyPage .interviewTtl .txtArea {
    width: 100%;
    position: relative;
  }
}
@media screen and (max-width: 768px) {
  .recruitCompanyPage .interviewTtl .imgArea::before {
    bottom: -100px;
    width: 200px;
    height: 150px;
  }
}
@media screen and (max-width: 767.5px) {
  .recruitCompanyPage .careerBox .flexBox {
    padding-bottom: 6rem;
  }
  .recruitCompanyPage .flexBox .txtArea {
    width: 100%;
  }
  .recruitCompanyPage .careerBox .flexBox .imgArea {
    max-width: 100%;
    margin-left: 0;
  }
  .recruitCompanyPage .careerBox .flexBox::before {
    left: 10%;
    -webkit-transform: translateX(-13%);
            transform: translateX(-13%);
  }
  .recruitCompanyPage .careerBox .flexBox .txtArea {
    width: 80%;
    margin-left: auto;
    margin-bottom: 0;
  }
  .recruitCompanyPage .careerBox .flexBox:last-of-type .txtArea {
    width: 90%;
  }
  .recruitCompanyPage .-round {
    padding-left: 2rem;
    padding-bottom: 2rem;
  }
  .recruitCompanyPage .-round .img {
    border-radius: 25px;
    -webkit-box-shadow: -20px 20px 0 rgb(28, 96, 191);
            box-shadow: -20px 20px 0 rgb(28, 96, 191);
  }
  .recruitCompanyPage .careerBox .flexBox .imgArea .tag {
    border-radius: 25px 0px 10px 0px;
  }
}
@media screen and (max-width: 600px) {
  .recruitCompanyPage .interviewTtl .imgArea img {
    border-radius: 25px 0 0 25px;
  }
  .recruitCompanyPage .interviewTtl .imgArea::after {
    border-radius: 25px;
  }
  .recruitCompanyPage .interviewTtl {
    padding-top: 57%;
  }
  .recruitCompanyPage .careerBox .flexBox::before {
    content: none;
  }
  .recruitCompanyPage .careerBox .flexBox .txtArea {
    width: 100%;
  }
  .recruitCompanyPage .careerBox .flexBox:last-of-type .txtArea {
    width: 100%;
  }
}
@media screen and (max-width: 480px) {
  .recruitCompanyPage .interviewTtl {
    padding-top: 70%;
  }
}
@media screen and (max-width: 767.5px) {
  .recruitCompanyPage .imgAreaSpNoPosition {
    padding-top: 20%;
  }
  .recruitCompanyPage .imgAreaSpNoPosition .imgArea {
    position: relative;
    top: 0;
    right: -16px;
    margin-inline: auto;
    margin-bottom: 10rem;
  }
}
@media screen and (max-width: 480px) {
  .recruitCompanyPage .imgAreaSpNoPosition {
    padding-top: 30%;
  }
}

.recruitWorkPage .-lightblue {
  background: #D1F5FF !important;
}

.job .headLv2_01::after {
  display: none;
}

.job .imgList {
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.job .imgList__3col {
  border-radius: 30px;
  background: #fff;
  padding: 1.5rem 3rem;
  text-align: center;
}

.job .imgList__3col img {
  max-width: 295px;
}

.job .headLv4_03 {
  text-align: left;
  padding-left: 0;
}

.job .headLv4_03::after {
  display: none;
}

.job {
  margin-bottom: 0;
  position: relative;
  padding: 10rem 0;
}

.job .bigTtl {
  position: absolute;
  top: -20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 14rem;
  color: #fff;
}

.interviewArea {
  border-radius: 0px;
}

.work {
  position: relative;
  padding: 10rem 0;
}

.work.small {
  max-width: 813px;
  width: 100%;
  margin: 0 auto 210px auto;
  padding-bottom: 0;
}

.recruitWorkPage .workList .imgList__3col img {
  border-radius: 30px;
}

.work.small .imgList__3col .circleArrowImg .circleArrow {
  width: 50px;
  height: 50px;
  bottom: 20px;
}

.work.small .imgList {
  gap: 0;
  margin-bottom: 0;
}

.work.small .imgList .imgList__3col {
  width: 30%;
  margin-right: 5%;
}

.work.small .imgList .imgList__3col:last-child {
  margin-right: 0;
}

.work.small .imgList .imgList__3col .headLv4_02 {
  letter-spacing: 0;
}

.work .bigTtl {
  position: absolute;
  top: -20px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-size: 14rem;
  color: #D1F5FF;
}

.work .headLv2_01::after {
  display: none;
}

.work .interviewTtl {
  position: relative;
  z-index: 5;
}

.work .interviewTtl__num {
  top: -370px;
}

.work .imgList {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.work .imgList__2col {
  /*min-height: 330px;*/
  border: 1px solid #1C60BF;
  border-radius: 20px;
  background: #fff;
}

.work .imgList__2col h4 {
  text-align: center;
  background: #1C60BF;
  border-radius: 20px 20px 0 0;
  color: #fff;
  padding: 1rem;
}

.work .basicList {
  padding: 0 3rem;
  margin-top: 3rem;
}

.work .interviewTtl__num span {
  font-size: 6rem;
  position: relative;
  top: -7px;
}

.work .interviewTtl .imgArea {
  /* top: -200px; 20260302_Nhands_suzuki */
  top: -300px;
}

.work .interviewTtl .imgArea::after {
  border-radius: 60px;
  height: 655px;
}

.work .interviewTtl .imgArea::before {
  content: "";
  position: absolute;
  bottom: -111px;
  right: 0;
  width: 282.63px;
  height: 212.63px;
  background-image: url(../img/recruit/work/pattern-01.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  z-index: 1;
}

.work .interviewTtl .imgArea .imgWrap {
  position: relative;
}

.work .interviewTtl .imgArea .imgWrap::before {
  content: "";
  position: absolute;
  top: 100px;
  left: -120px;
  width: 100px;
  height: 100px;
  background-image: url(../img/recruit/work/pattern-02.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
  z-index: 1;
}

.work .interviewArea {
  margin-bottom: 0;
}

#recruit-work-03 {
  margin-bottom: 14rem;
}

.career .careerCont {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 10px;
}

.career .careerCont img {
  width: 114px;
  height: auto;
}

.career .careerCont p {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
      -ms-flex: 1;
          flex: 1;
  text-align: center;
}

.recruitWorkPage .career .lTxt {
  font-size: 4rem;
  text-align: center;
}

.-read {
  position: relative;
  z-index: 10;
}

@media screen and (max-width: 1100px) {
  .work .interviewTtl .imgArea::after {
    height: 385px;
  }
}
@media screen and (max-width: 1010px) {
  .work .interviewTtl .imgArea::after {
    height: 485px;
  }
}
@media screen and (max-width: 820px) {
  .interviewTtl .imgArea {
    width: 320px;
  }
  .work .interviewTtl .imgArea::after {
    height: 300px;
    width: 100%;
  }
  /* .work .interviewTtl {
      padding-top: 0;
  } */
  .career .careerCont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .career .careerCont img {
    width: 80px;
  }
  .career .careerCont img.careerImg02 {
    display: none;
  }
  .recruitWorkPage .career .lTxt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 768px) {
  .imgList__3col {
    width: calc(50% - 20px);
  }
}
@media screen and (max-width: 560px) {
  .interviewTtl .imgArea img {
    border-radius: 25px 0 0 25px;
  }
}
/* 20260302_Nhands_suzuki */
.work .lTxt {
  font-size: 3rem;
}

@media screen and (max-width: 1600px) {
  .work .interviewTtl .imgArea {
    top: -200px;
  }
  .work .interviewTtl .imgArea::after {
    height: 555px;
  }
}
@media screen and (max-width: 1300px) {
  .work .interviewTtl .imgArea {
    width: 400px;
    /* 画像エリアを小さく */
    top: -200px;
  }
  .work .interviewTtl .imgArea::after {
    height: 360px;
  }
}
@media screen and (max-width: 1000px) {
  .work .lTxt {
    font-size: 2.3rem;
  }
  .work .interviewTtl .imgArea {
    width: 300px;
  }
  .work .interviewTtl .imgArea::after {
    height: 260px;
  }
  #recruit-work-02 .work {
    padding: 5rem 0;
  }
}
@media screen and (max-width: 930px) {
  .work .interviewTtl__num {
    font-size: 11rem;
    /* 文字サイズ縮小 */
    top: -248px;
    /* 文字位置調整 */
  }
}
@media screen and (max-width: 820px) {
  .work .interviewTtl {
    padding-top: 16rem;
  }
}
@media screen and (max-width: 768px) {
  .job .imgList {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    /* 2カラムで表示 */
  }
}
@media screen and (max-width: 660px) {
  .work .interviewTtl__num {
    top: -249px;
    /* 文字位置調整 */
    font-size: 11rem;
    /* 文字サイズ縮小 */
  }
  .work .interviewTtl__num span {
    font-size: 8rem;
    /* 文字サイズ縮小 */
    top: 0;
  }
  .work .interviewTtl .imgArea {
    top: -100px;
  }
  .work .interviewTtl {
    padding-top: 30rem;
  }
}
@media screen and (max-width: 600px) {
  .work .interviewTtl__num {
    color: #EEF8FF;
    /* Workの文字が消えるのを解消 */
  }
}
@media screen and (max-width: 500px) {
  .job .imgList {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap; /* 1カラムで表示 */
  }
  .job .imgList__3col {
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
        -ms-flex: 0 0 100%;
            flex: 0 0 100%; /* imgList微調整 */
    max-width: 100%; /* imgList微調整 */
  }
  .interviewTtl {
    margin-bottom: 4rem;
  }
  .work.small .imgListSpForcibly2col {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    overflow: visible !important;
    gap: 2rem;
  }
  .work.small .imgListSpForcibly2col .imgList__3col {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
  }
  .work .imgListSpForcibly1col {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    overflow: visible !important;
    gap: 4rem;
    margin-bottom: 0;
  }
  .work .imgListSpForcibly1col .imgList__2col {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
  }
  .career .careerCont img {
    width: 60px;
  }
}
.tag_01 {
  font-size: 1.2rem;
  line-height: 1;
  padding: 0.8rem 1rem;
  margin-bottom: 1rem;
  letter-spacing: 0.1em;
  display: inline-block;
  color: #fff;
  background: -webkit-gradient(linear, left top, right top, from(rgb(10, 207, 254)), to(rgb(73, 90, 255)));
  background: -webkit-linear-gradient(left, rgb(10, 207, 254), rgb(73, 90, 255));
  background: linear-gradient(90deg, rgb(10, 207, 254), rgb(73, 90, 255));
}

.flowBox {
  margin: 20rem auto 0;
  padding: 9rem 11rem;
  border-radius: 50px;
  background: #fff;
  position: relative;
}

.flowBox .en {
  font-size: 10rem;
  text-align: center;
  top: -134px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  color: #fff;
  font-weight: bold;
  position: absolute;
}

.interviewArea .flowBox .flexBox {
  margin-bottom: 0;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}

.flowBox .headLv3_03 {
  margin-top: 0;
  margin-bottom: 4rem;
}

.flowBox .flexBox .txtArea {
  width: 58%;
  position: relative;
}

.flowBox .txtArea::before {
  content: "";
  position: absolute;
  left: 6px;
  top: 10px;
  bottom: 0;
  width: 3px;
  height: 360px;
  background: #1C60BF;
}

#interview-02 .flowBox .txtArea::before {
  height: 310px;
}

#interview-03 .flowBox .txtArea::before {
  height: 320px;
}

#interview-04 .flowBox .txtArea::before {
  height: 380px;
}

.flowBox dl {
  font-size: 1.8rem;
  margin-bottom: 3rem;
  padding-left: 5rem;
  line-height: 1.3;
  font-weight: 600;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
}

.flowBox dl::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 15px;
  height: 15px;
  background: #1C60BF;
  border-radius: 50%;
}

.flowBox dl:last-of-type {
  margin-bottom: 0;
}

.flowBox dl p {
  font-size: 1.3rem;
  margin-bottom: 0;
  font-weight: 300;
}

.flowBox dt {
  font-size: 2.3rem;
  margin-right: 4rem;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: bold;
  color: #1C60BF;
}

.flowBox .imgArea {
  max-width: 250px;
}

@media screen and (max-width: 1100px) {
  .flowBox dl {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 820px) {
  .flowBox {
    margin: 15rem auto 0;
    padding: 5rem 4rem;
  }
  .flowBox .en {
    font-size: 7rem;
    width: 100%;
    top: -93px;
  }
  .flowBox .flexBox .txtArea {
    width: 100%;
    position: relative;
    margin-bottom: 2rem;
  }
  .flowBox .imgArea {
    max-width: 200px;
    margin: -40rem 0 0 auto;
  }
}
@media screen and (max-width: 767.5px) {
  .flowBox {
    padding-bottom: 10rem;
  }
  .flowBox .en {
    font-size: 5rem;
    width: 100%;
    top: -68px;
  }
  .flowBox dt {
    font-size: 1.8rem;
    margin-right: 2rem;
  }
  .flowBox dl {
    padding-left: 2rem;
  }
  .flowBox dl::before {
    width: 10px;
    height: 10px;
  }
  .flowBox .txtArea::before {
    left: 4px;
    top: 16px;
    bottom: 0;
    width: 2px;
    height: 390px;
  }
  #interview-02 .flowBox .txtArea::before {
    height: 335px;
  }
  #interview-03 .flowBox .txtArea::before {
    height: 330px;
  }
}
@media screen and (max-width: 600px) {
  .flowBox {
    margin: 10rem auto 0;
    padding: 3rem 2rem;
    border-radius: 25px;
  }
  .flowBox .imgArea {
    max-width: 150px;
    margin: 4rem auto 0;
  }
}
@media screen and (max-width: 500px) {
  .flowBox {
    margin: 10rem auto 0;
    padding: 3rem 2rem;
    border-radius: 25px;
  }
  .flowBox .imgArea {
    max-width: 150px;
    margin: 4rem auto 0;
  }
}
.recruit-interview #interview-01,
.recruit-interview #interview-02,
.recruit-interview #interview-03,
.recruit-interview #interview-04 {
  scroll-margin-top: 210px;
}

@media screen and (max-width: 600px) {
  .recruit-interview #interview-01,
  .recruit-interview #interview-02,
  .recruit-interview #interview-03,
  .recruit-interview #interview-04 {
    scroll-margin-top: 80px;
  }
}
.recruit-interview .interviewArea {
  border-radius: 0;
  position: relative;
}

.recruit-interview .interviewArea:before {
  content: "";
  display: inline-block;
  width: 492px;
  height: 410px;
  background: url(../img/recruit/back_deco01.svg);
  position: absolute;
  bottom: 0;
  left: 0;
}

.recruit-interview .interviewTtl .tbShow {
  display: none;
}

@media screen and (max-width: 1000px) {
  .recruit-interview .interviewTtl {
    margin-bottom: 3rem;
    padding-top: 30rem;
  }
  .recruit-interview .interviewTtl .tbShow {
    display: inline;
  }
}
@media screen and (max-width: 860px) {
  .recruit-interview .interviewTtl {
    padding-top: 25rem;
  }
}
@media screen and (max-width: 767px) {
  .recruit-interview .interviewTtl {
    padding-top: 22rem;
  }
}
@media screen and (max-width: 480px) {
  .recruit-interview .interviewTtl {
    padding-top: 16rem;
  }
}
.recruit-interview .interviewTtl .imgArea {
  z-index: -1;
}

.recruit-interview .interviewTtl .imgArea .pcShow {
  display: block;
}

.recruit-interview .interviewTtl .imgArea .tbShow {
  display: none;
}

@media screen and (max-width: 1000px) {
  .recruit-interview .interviewTtl .imgArea .pcShow {
    display: none;
  }
  .recruit-interview .interviewTtl .imgArea .tbShow {
    display: block;
  }
  .recruit-interview .interviewTtl .imgArea {
    max-width: 70%;
    width: 100%;
  }
}
@media screen and (max-width: 560px) {
  .recruit-interview .interviewTtl .imgArea {
    max-width: 90%;
  }
}
.recruit-interview .interviewTtl .imgArea:before {
  content: "";
  display: inline-block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 10;
}

.recruit-interview .interviewTtl .imgArea.-deco01:before {
  width: 154px;
  height: 277px;
  bottom: -80px;
  left: -130px;
  background: url(../img/recruit/interview/backimg_01.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.recruit-interview .interviewTtl .imgArea.-deco02:before {
  width: 110px;
  height: 277px;
  bottom: -80px;
  left: -80px;
  background: url(../img/recruit/interview/backimg_02.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.recruit-interview .interviewTtl .imgArea.-deco03:before {
  width: 145px;
  height: 280px;
  bottom: -80px;
  left: -110px;
  background: url(../img/recruit/interview/backimg_03.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.recruit-interview .interviewTtl .imgArea.-deco04:before {
  width: 101px;
  height: 280px;
  bottom: -80px;
  left: -70px;
  background: url(../img/recruit/interview/backimg_04.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (max-width: 1000px) {
  .recruit-interview .interviewTtl .imgArea.-deco01:before,
  .recruit-interview .interviewTtl .imgArea.-deco02:before,
  .recruit-interview .interviewTtl .imgArea.-deco03:before,
  .recruit-interview .interviewTtl .imgArea.-deco04:before {
    width: 130px;
    height: 234px;
    left: -30%;
    bottom: 5%;
  }
}
@media screen and (max-width: 560px) {
  .recruit-interview .interviewTtl .imgArea.-deco01:before,
  .recruit-interview .interviewTtl .imgArea.-deco02:before,
  .recruit-interview .interviewTtl .imgArea.-deco03:before,
  .recruit-interview .interviewTtl .imgArea.-deco04:before {
    content: none;
  }
}
.recruit-interview .interviewTtl .imgArea:after {
  content: none;
}

@media screen and (max-width: 1000px) {
  .recruit-interview .interviewTtl .txtArea {
    width: 100%;
  }
}
@media screen and (max-width: 1000px) {
  .recruit-interview .interviewTtl__num {
    font-size: 10rem;
    top: 175px;
    left: 5vw;
    z-index: -100;
    color: #fff;
  }
}
@media screen and (max-width: 860px) {
  .recruit-interview .interviewTtl__num {
    top: 120px;
  }
}
@media screen and (max-width: 767px) {
  .recruit-interview .interviewTtl__num {
    top: 90px;
    left: 3vw;
  }
}
@media screen and (max-width: 480px) {
  .recruit-interview .interviewTtl__num {
    top: 30px;
  }
}
.recruit-interview .interviewArea .interviewTtl__num span {
  font-size: clamp(4rem, 6vw, 6rem);
}

@media screen and (max-width: 1000px) {
  #interview-01 .lTxt .tablet {
    display: none;
  }
}
.recruit-interview .imgList__4col .voiceTtl {
  margin-bottom: 0.8em;
  font-size: 134%;
  font-weight: bold;
  color: #1C60BF;
}

.recruit-interview .flowBox {
  position: relative;
  padding: 7rem 11rem;
  border: 5px solid transparent;
  background: -webkit-linear-gradient(#fff, #fff) padding-box, -webkit-linear-gradient(45deg, #0ACFFE, #495AFF) border-box;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(45deg, #0ACFFE, #495AFF) border-box;
}

@media screen and (max-width: 768px) {
  .recruit-interview .flowBox {
    padding: 5rem 7rem;
  }
}
@media screen and (max-width: 480px) {
  .recruit-interview .flowBox {
    border: 4px solid transparent;
    padding: 3rem 4rem;
  }
}
@media screen and (max-width: 375px) {
  .recruit-interview .imgList__4col .voiceTtl {
    min-height: 4.5em;
  }
}
.recruit-interview .flowBox:before {
  content: "";
  display: inline-block;
  position: absolute;
}

.recruit-interview .flowBox.-man:before {
  background: url(../img/recruit/interview/backimg_05.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.recruit-interview .flowBox.-woman:before {
  background: url(../img/recruit/interview/backimg_06.svg);
  background-repeat: no-repeat;
  background-size: contain;
}

.recruit-interview .flowBox .en {
  top: -200px;
}

.recruit-interview .flexBox {
  -webkit-box-align: start !important;
  -webkit-align-items: flex-start !important;
      -ms-flex-align: start !important;
          align-items: flex-start !important;
}

@media screen and (max-width: 1000px) {
  .recruit-interview .flexBox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media screen and (max-width: 1000px) {
  .recruit-interview .flexBox .imgArea {
    max-width: 70%;
    width: 100%;
    margin: 0 auto 3rem auto;
  }
}
@media screen and (max-width: 560px) {
  .recruit-interview .flexBox .imgArea {
    max-width: 90%;
  }
}
@media screen and (max-width: 1000px) {
  .recruit-interview .flexBox .txtArea {
    width: 100% !important;
  }
}
.recruit-interview .flowBox .txtArea {
  width: 48% !important;
}

.recruit-interview .flowBox .txtArea:before {
  height: calc(100% - 20px) !important;
}

.recruit-interview .flowBox .headLv3_03 {
  padding-bottom: 0;
  font-weight: 800;
}

@media screen and (max-width: 480px) {
  .recruit-interview .flowBox .headLv3_03 {
    margin-bottom: 3rem;
  }
}
.recruit-interview .flowBox .headLv3_03::after {
  display: none;
}

.recruit-interview .-read {
  position: relative;
  z-index: 10;
}

@media screen and (min-width: 1000px) {
  .recruit-interview .flowBox.-man:before {
    width: 156px;
    height: 274px;
    top: -150px;
    right: 90px;
  }
  .recruit-interview .flowBox.-woman:before {
    width: 128px;
    height: 250px;
    top: -150px;
    right: 110px;
  }
}
@media screen and (max-width: 1000px) {
  .recruit-interview .flowBox.-man:before {
    width: 10vw;
    height: 20vw;
    top: -10vw;
    right: 5vw;
  }
  .recruit-interview .flowBox.-woman:before {
    width: 10vw;
    height: 20vw;
    top: -10vw;
    right: 5vw;
  }
}
@media screen and (max-width: 820px) {
  .recruit-interview .flowBox .en {
    width: 60%;
    top: -100px;
    font-size: 5rem;
  }
  .recruit-interview .flowBox .txtArea {
    width: 100% !important;
  }
}
@media screen and (max-width: 600px) {
  .recruit-interview .recruitInterviewRead {
    text-align: left !important;
  }
}

@media screen and (max-width: 1100px) {
  .recruit-interview .imgListSpForcibly2col {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: visible !important;
    gap: 4rem;
  }
  .recruit-interview .imgListSpForcibly2col .imgList__4col {
    width: 100%;
    max-width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 880px) {
  .recruit-interview .imgListSpForcibly2col {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 540px) {
  .recruit-interview .imgListSpForcibly2col {
    gap: 3rem;
  }
}
@media screen and (max-width: 400px) {
  .recruit-interview .imgListSpForcibly2col {
    gap: 2rem;
  }
}

.backWhite {
  padding: 80px;
  border-radius: 50px;
  background: #FFFFFF;
}

.accordion .accordionDetail {
  border: 2px solid #1C60BF;
  border-radius: 0 0 10px 10px;
}

.accordion summary {
  border-radius: 10px;
  background: #1C60BF;
}

.accordion[open] summary {
  border-radius: 10px 10px 0 0;
}

.richBtn {
  border: 4px solid transparent;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff)) padding-box, -webkit-gradient(linear, left top, right top, from(rgb(10, 207, 254)), to(rgb(73, 90, 255))) border-box;
  background: -webkit-linear-gradient(#fff, #fff) padding-box, -webkit-linear-gradient(left, rgb(10, 207, 254), rgb(73, 90, 255)) border-box;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(90deg, rgb(10, 207, 254), rgb(73, 90, 255)) border-box;
  border-radius: 27px;
}

.richBtn a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  min-width: 340px;
  min-height: 177px;
  width: 100%;
  height: 100%;
  padding: 1em;
  font-size: 23px;
  font-weight: bold;
  border-radius: 27px;
  overflow: hidden;
  color: #1C60BF;
  position: relative;
}

.richBtn a:before {
  content: "";
  display: inline-block;
  width: 74px;
  height: 74px;
  margin-left: -37px;
  background-image: url(../img/recruit/company/icon_arrow_next.svg);
  background-repeat: no-repeat;
  background-size: 74px auto;
  position: absolute;
  top: 1em;
  left: 50%;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}

.richBtn a:hover:before {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

.recruit-job-description .bgCont .basicTable tr {
  border-top: 1px solid #DDDDDD;
}

.recruit-job-description .bgCont .basicTable tr:last-of-type {
  border-bottom: 1px solid #DDDDDD;
}

.headLv3_04.-square {
  display: inline-block;
  width: auto;
  margin-top: 0;
  margin-bottom: 20px;
  padding-bottom: 0;
  padding-left: 0.2em;
  padding-right: 0.2em;
  background: #1C60BF;
  color: #FFFFFF;
}

.headLv3_04.-square:before,
.headLv3_04.-square:after {
  display: none;
}

.blueLine {
  margin-top: 4em;
  margin-bottom: 2.2em;
  font-size: 186%;
  color: #000000;
  position: relative;
}

.blueLine:before {
  content: "";
  display: inline-block;
  width: 75px;
  height: 5px;
  background: #1C60BF;
  position: absolute;
  bottom: -25px;
  left: 0;
}

.blueLine:first-child {
  margin-top: 0;
}

.recruit-job-description .basicTable tr {
  position: relative;
}

.recruit-job-description .basicTable tr:before {
  content: "";
  display: inline-block;
  max-width: 250px;
  width: 100%;
  height: 1px;
  background: #1C60BF;
  position: absolute;
  top: -1px;
  left: 0;
}

.recruit-job-description .basicTable tr:last-of-type {
  position: relative;
}

.recruit-job-description .basicTable tr:last-of-type:after {
  content: "";
  display: inline-block;
  max-width: 250px;
  width: 100%;
  height: 1px;
  background: #1C60BF;
  position: absolute;
  bottom: -1px;
  left: 0;
}

.interviewArea {
  position: relative;
}

.recruit-job-description .jobSubnav {
  z-index: 10;
  position: relative;
}

#graduate,
#internship,
#career {
  scroll-margin-top: 200px;
}

@media screen and (max-width: 600px) {
  #graduate,
  #internship,
  #career {
    scroll-margin-top: 50px;
  }
}
.interviewArea .basicBtn {
  margin-left: -160px;
  position: absolute;
  bottom: -35px;
  left: 50%;
}

.interviewArea.bgBlue {
  background: #1C60BF !important;
  border-radius: 0;
}

.interviewArea.bgBlue .interviewTtl .en {
  color: #1C60BF;
}

.interviewArea .interviewTtl .en .-small {
  font-size: 30%;
  letter-spacing: 0;
}

.interviewArea .interviewTtl .txtArea .info {
  width: 50%;
}

.interviewArea.bgBlue .interviewTtl,
.interviewArea.bgBlue .interviewTtl .lTxt {
  color: #FFFFFF;
}

.voiceBox {
  max-width: 800px;
  width: 100%;
  margin: 5em auto 0 auto;
  padding: 0 5vw;
}

.voiceBox .item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 5em;
}

.voiceBox .item.-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-bottom: 0;
}

.voiceBox .item .imgArea {
  width: 15%;
  margin-right: 5%;
}

.voiceBox .item .imgArea img {
  max-height: 280px;
  height: 100%;
}

.voiceBox .item .txtArea {
  width: 80%;
  padding: 2px;
}

.voiceBox .item .txtArea .txtInner {
  border-radius: 46px;
  padding: 2em;
  border: 4px solid transparent;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#fff)) padding-box, -webkit-gradient(linear, left top, right top, from(rgb(10, 207, 254)), to(rgb(73, 90, 255))) border-box;
  background: -webkit-linear-gradient(#fff, #fff) padding-box, -webkit-linear-gradient(left, rgb(10, 207, 254), rgb(73, 90, 255)) border-box;
  background: linear-gradient(#fff, #fff) padding-box, linear-gradient(90deg, rgb(10, 207, 254), rgb(73, 90, 255)) border-box;
}

.voiceBox .item .txtArea .txtInner p {
  overflow: hidden;
}

.voiceBox .item .txtArea h5,
.voiceBox .item .txtArea p {
  position: relative;
  z-index: 10;
}

.voiceBox .item .txtArea h5 {
  font-size: 134%;
  font-weight: bold;
  color: #707070;
}

.voiceBox .item.-reverse .imgArea {
  margin-right: 0;
}

.voiceBox .item.-reverse .txtArea {
  margin-right: 5%;
}

.recruit-job-description .interviewTtl .imgArea:before {
  content: "";
  display: inline-block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  z-index: 10;
}

.recruit-job-description .interviewTtl .imgArea.-deco01:before {
  width: 230px;
  height: 280px;
  bottom: -20px;
  left: -80px;
  background: url(../img/recruit/job-description/back_img02.svg);
}

.recruit-job-description .interviewTtl .imgArea.-deco03:before {
  width: 186px;
  height: 300px;
  bottom: -20px;
  left: -80px;
  background: url(../img/recruit/job-description/img_14.svg);
}

.recruit-job-description .interviewTtl .imgArea:after {
  content: none;
}

.recruit-job-description .headLv4_03 {
  padding-left: 0;
}

@media screen and (max-width: 1103px) {
  .richBtn {
    margin-bottom: 1em;
  }
  .richBtn:last-of-type {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 820px) {
  .interviewArea .interviewTtl .txtArea .info {
    width: 100%;
  }
  .backWhite {
    padding: 6rem 0;
  }
  .richBtn a {
    min-height: 130px;
    font-size: 20px;
  }
  .richBtn a::before {
    width: 44px;
    height: 44px;
    background-size: 44px auto;
    margin-left: -20px;
  }
}
@media screen and (max-width: 767px) {
  .accordion summary {
    font-size: 1.6rem;
    padding: 1.5rem;
  }
  .accordion summary::after {
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
  }
}
@media screen and (max-width: 600px) {
  .interviewArea.bgBlue .interviewTtl .en {
    color: #6196df;
  }
}
@media screen and (max-width: 480px) {
  .richBtn a {
    min-width: auto;
  }
  .accordion summary::after {
    width: 8px;
    height: 5px;
  }
  .recruit-job-description .interviewTtl .imgArea.-deco01::before {
    bottom: -80px;
    left: -130px;
  }
}
@media screen and (max-width: 600px) {
  .interviewTtl .txtArea {
    padding-top: 3rem;
  }
}

#aisatsu p.-right {
  font-size: 1.6rem;
  font-weight: 500;
}

.aisatsuBlk_01,
.aisatsuBlk_02 {
  position: relative;
}

.aisatsuBlk_01 {
  margin-bottom: 8rem;
}

.aisatsuBlk_02 {
  margin-bottom: 10rem;
}

.aisatsuBlk_01 img {
  width: 180px;
  bottom: -110px;
  right: -150px;
  position: absolute;
  z-index: -100;
}

.aisatsuBlk_02 img {
  width: 180px;
  bottom: -50px;
  left: -180px;
  position: absolute;
  z-index: -100;
}

@media screen and (max-width: 1200px) {
  .aisatsuBlk_01 img {
    width: 150px;
    bottom: -110px;
    right: -20px;
  }
  .aisatsuBlk_02 img {
    width: 150px;
    bottom: -80px;
    left: -20px;
  }
}
@media screen and (max-width: 767.5px) {
  #aisatsu p.mb40 {
    margin-bottom: 2rem;
  }
  .aisatsuBlk_01 {
    margin-bottom: 12rem;
  }
  .aisatsuBlk_02 {
    margin-bottom: 14rem;
  }
  .aisatsuBlk_02 img {
    width: 120px;
  }
}
.aisatsuTtl .mImg {
  max-width: 720px;
  margin: 0 auto;
}

.aisatsuCont #aisatsu {
  position: relative;
}

.aisatsuCont #aisatsu:before {
  content: "";
  display: inline-block;
  width: 290px;
  height: 388px;
  background: url(../img/recruit/back_left.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: -90px;
}

.aisatsuCont #aisatsu:after {
  content: "";
  display: inline-block;
  width: 282px;
  height: 380px;
  background: url(../img/recruit/back_right.svg);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -100px;
  right: 0;
}

.aisatsuCont .aisatsuBlk_01 .lTxt {
  margin-bottom: 70px;
}

.aisatsuCont .aisatsuBlk_01 p.-right {
  color: #707070;
}

@media screen and (max-width: 1010px) {
  .aisatsuCont #aisatsu:before {
    top: 100px;
  }
}
@media screen and (max-width: 820px) {
  .aisatsuCont #aisatsu:after {
    top: -90px;
  }
}
@media screen and (max-width: 560px) {
  .aisatsuCont #aisatsu:before {
    width: 160px;
    left: -50px;
    top: 150px;
  }
  .aisatsuCont #aisatsu:after {
    width: 160px;
  }
}
.headLv3_04-Privacy {
  position: relative;
  padding-bottom: 1.5rem;
  padding-left: 1rem;
  color: #1C60BF;
  margin-top: 2em;
}

.headLv3_04-Privacy::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
  background: #E2E2E2;
  z-index: 999;
}

.headLv3_04-Privacy::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 36.3636363636%;
  min-width: 160px;
  height: 5px;
  background: -webkit-gradient(linear, left top, right top, from(#1a3fdc), to(#67c8ff));
  background: -webkit-linear-gradient(left, #1a3fdc, #67c8ff);
  background: linear-gradient(90deg, #1a3fdc, #67c8ff);
  z-index: 1000;
}

.basicList.-privacy li::before {
  background: #000000;
}

.privacyWrap {
  border: 3px solid #6CA8D0;
  padding: 4rem;
  max-width: 1000px;
  margin: 10rem auto 0;
}

.privacyWrap .privacyLabel {
  color: #6CA8D0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6em;
  width: 100%;
  margin: 0;
  line-height: 1.2;
  margin-bottom: 1em;
  text-align: center;
}

.privacyWrap .privacyLabel::before,
.privacyWrap .privacyLabel::after {
  content: "";
  inline-size: 27px;
  block-size: 33px;
  background: no-repeat center/contain;
}

.privacyWrap .privacyLabel::before,
.privacyWrap .privacyLabel::after {
  background-image: url("../img/privacy_policy/icon_01.png");
}

.privacyWrap .privacyBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 800px;
  margin: 0 auto;
}

.privacyWrap .privacyBox .txtArea {
  width: calc(100% - 166px);
}

.privacyWrap .privacyBox .txtArea .tel {
  margin-top: 1em;
}

.privacyWrap .privacyBox .txtArea .address > p,
.privacyWrap .privacyBox .txtArea .tel > p {
  margin: 0 0 0.5em 2em;
}

.privacyWrap .privacyBox .txtArea .address,
.privacyWrap .privacyBox .txtArea .tel {
  position: relative;
}

.privacyWrap .privacyBox .txtArea .address::before {
  position: absolute;
  content: "";
  inline-size: 12px;
  block-size: 21px;
  top: 5px;
  background: no-repeat center/contain;
  background-image: url("../img/privacy_policy/icon_02.png");
}

.privacyWrap .privacyBox .txtArea .tel::before {
  position: absolute;
  content: "";
  inline-size: 20px;
  block-size: 21px;
  top: 5px;
  background: no-repeat center/contain;
  background-image: url("../img/privacy_policy/icon_03.png");
}

.privacyWrap .privacyBox .txtArea .address .mapBtn {
  display: inline-block;
  border: 3px solid #76A9CB;
  padding: 0 1em;
  margin-left: 1em;
  border-radius: 2em;
  color: #76A9CB;
  font-size: 1.2rem;
  font-weight: bold;
}

.privacyWrap .privacyBox .imgArea {
  max-width: 136px;
  margin-left: 30px;
}

.privacyWrap .privacyBox .txtArea .tel .telBtn {
  display: inline-block;
  background: #6CA8D0;
  color: #fff;
  font-weight: bold;
  padding: 0 1.5em;
  border-radius: 10px;
  -webkit-box-shadow: 0 4px 10px rgba(0, 0, 0, 0.16);
          box-shadow: 0 4px 10px rgba(0, 0, 0, 0.16);
}

@media screen and (max-width: 800px) {
  .privacyWrap {
    padding: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .privacyWrap .privacyBox {
    display: block;
  }
  .privacyWrap .privacyBox .txtArea {
    width: 100%;
  }
  .privacyWrap .privacyBox .imgArea {
    width: 100%;
    margin: 1em auto 0 auto;
  }
}
@media screen and (max-width: 480px) {
  .privacyWrap {
    padding: 1.5rem;
  }
  .privacyWrap .privacyLabel {
    font-size: 2.2rem;
  }
}
.tbShow {
  display: none;
}

.spShow {
  display: none;
}

.spNone {
  display: block;
}

@media screen and (max-width: 767px) {
  .tbShow {
    display: block;
  }
  .spShow {
    display: none;
  }
  .spNone {
    display: block;
  }
}
@media screen and (max-width: 480px) {
  .tbShow {
    display: none;
  }
  .spShow {
    display: block;
  }
  .spNone {
    display: none;
  }
}