/**
 * Fonts
 */
.mv {
  width: 100%;
  height: 60vw;
  max-height: 1005px;
  position: relative; }
  @media screen and (max-width: 640px) {
    .mv {
      height: 120vw;
      max-height: auto; } }

.slideshow {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  margin: auto; }

.slideshow_bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: none; }

.slideshow_bg-image01 {
  background: url(../img/index/mv01.jpg) no-repeat center center/cover; }

.slideshow_bg-image02 {
  background: url(../img/index/mv02.jpg) no-repeat left center/cover; }

.slideshow_bg-image03 {
  background: url(../img/index/mv03.jpg) no-repeat left center/cover; }

@media screen and (max-width: 640px) {
  .slideshow_bg-image01 {
    background: url(../img/index/mv01__sp.jpg) no-repeat 10% center/cover; }
  .slideshow_bg-image02 {
    background: url(../img/index/mv02__sp.jpg) no-repeat left center/cover; }
  .slideshow_bg-image03 {
    background: url(../img/index/mv03__sp.jpg) no-repeat left center/cover; } }

.in {
  z-index: 2; }

.out {
  -webkit-transition: 4s;
  -o-transition: 4s;
  transition: 4s;
  z-index: 1; }

.aboutIndex,
.recruitIndex__list__item,
.companyIndex__profile,
.contactIndex__head {
  background: #083e94; }

.recruitIndex__msg {
  background: url(../img/index/recruit__msg__bg.jpg) no-repeat center bottom/100%;
  min-height: 360px;
  z-index: 10;
  position: relative; }

.contactIndex {
  color: #fff; }
  .contactIndex__head {
    padding: 50px 0; }
    @media screen and (max-width: 900px) {
      .contactIndex__head {
        padding: 40px 0; } }
    @media screen and (max-width: 640px) {
      .contactIndex__head {
        padding: 6.25vw 0 9.375vw; } }
  .contactIndex__ttl {
    font-size: 4rem;
    font-weight: bold;
    letter-spacing: 0.12em;
    text-align: center; }
    @media screen and (max-width: 900px) {
      .contactIndex__ttl {
        font-size: 2.4rem; } }
    @media screen and (max-width: 640px) {
      .contactIndex__ttl {
        font-size: 6.25vw; } }
  .contactIndex__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 40px;
    padding: 0 40px; }
    @media screen and (max-width: 900px) {
      .contactIndex__form {
        margin-top: 30px; } }
    @media screen and (max-width: 640px) {
      .contactIndex__form {
        display: block;
        padding: 0 8%;
        margin-top: 6.25vw; } }
    .contactIndex__form__ttl {
      margin-bottom: 5px;
      font-size: 2.6rem;
      font-weight: bold;
      letter-spacing: 0.12em; }
      @media screen and (max-width: 900px) {
        .contactIndex__form__ttl {
          font-size: 1.8rem; } }
      @media screen and (max-width: 640px) {
        .contactIndex__form__ttl {
          font-size: 4.375vw;
          margin-bottom: 3.125vw; } }
      .contactIndex__form__ttl span {
        font-size: 1.3rem;
        margin-left: 20px;
        letter-spacing: 0.06em; }
        @media screen and (max-width: 640px) {
          .contactIndex__form__ttl span {
            font-size: 3.125vw; } }
    .contactIndex__form__block--left .contactIndex__form__item:not(:first-child) {
      margin-top: 45px; }
      @media screen and (max-width: 640px) {
        .contactIndex__form__block--left .contactIndex__form__item:not(:first-child) {
          margin-top: 7.8125vw; } }
    .contactIndex__form__block--right {
      margin-left: 80px; }
      @media screen and (max-width: 900px) {
        .contactIndex__form__block--right {
          margin-left: 40px; } }
      @media screen and (max-width: 640px) {
        .contactIndex__form__block--right {
          margin: 3.125vw 0 0 0; } }
      .contactIndex__form__block--right .contactIndex__form__item:not(:first-child) {
        margin-top: 10px; }
        @media screen and (max-width: 640px) {
          .contactIndex__form__block--right .contactIndex__form__item:not(:first-child) {
            margin-top: 3.125vw; } }
    .contactIndex__form__radio {
      margin-top: 20px; }
      .contactIndex__form__radio__item {
        font-size: 2.4rem; }
        @media screen and (max-width: 900px) {
          .contactIndex__form__radio__item {
            font-size: 1.8rem; } }
        @media screen and (max-width: 640px) {
          .contactIndex__form__radio__item {
            font-size: 4.0625vw; } }
        .contactIndex__form__radio__item:not(:first-child) {
          margin-top: 20px; }
          @media screen and (max-width: 640px) {
            .contactIndex__form__radio__item:not(:first-child) {
              margin-top: 3.125vw; } }
        .contactIndex__form__radio__item input {
          margin-right: 10px; }
  .contactIndex__bottom {
    padding: 50px 40px; }
    @media screen and (max-width: 900px) {
      .contactIndex__bottom {
        padding: 40px 40px; } }
    @media screen and (max-width: 640px) {
      .contactIndex__bottom {
        padding: 9.375vw 7%; } }



  /*add 20211211*/
  .fixed-tel-wrapper{
          display: block;
          position: fixed;
          bottom: 0;
          right: 0;
          z-index: 20;
    }
    .fixed-tel{
        background: rgba(255,255,255,1);
        border-top: 1px solid #ddd;
        border-left: 1px solid #ddd;
        border-top-left-radius: 5px;
        padding: 10px;
    }
    .fixed-tel img{
        display: block;
        width: 100%;
        max-width: 500px;
    }
    @media screen and (max-width: 900px) {
      .fixed-tel img{
        display: block;
        width: 100%;
        max-width: 400px;
      }
    }
    @media screen and (max-width: 640px) {
      .fixed-tel-wrapper{
          display: none;
      }
    }
     /*sp tel*/
    .sp-telbanner{
      width: 100%;
      background: #fff;
    }
    .sp-telbanner img{
      display: block;
      width: 100%;
      max-width: 350px;
      margin: 0 auto;
    }
    @media screen and (min-width: 640px) {
      .sp-telbanner{
          display: none;
      }
    }

/*add 2024*/
.txt16{
  font-size: 1.6rem;
  color: #333;
  text-align: center;
  font-weight: 500;
  margin-top: 20px;
}