@charset "utf-8";
/* CSS Document */

/*〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
フッター
〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓*/
footer#glo_footer {
  padding: 0 0 6.4rem;
  @media screen and (max-width: 480px) {
    padding-bottom: 2.4rem;
  }
  .sns_contact_wrap {
    margin-bottom: 6.4rem;
    display: flex;
    border-top: 1px solid var(--color-blue);
    border-bottom: 1px solid var(--color-blue);
    @media screen and (max-width: 480px) {
      display: block;
      margin-bottom: 3.2rem;
    }
    .item {
      background-color: var(--color-ex-light-blue);
      width: 50%;
      box-sizing: border-box;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 7rem;
      height: 19.2rem;
      @media screen and (max-width: 480px) {
        height: 12rem;
        width: 100%;
        gap: 5.8rem;
      }
      h3 {
        letter-spacing: 0.18em;
        font-size: 1.6rem;
        font-weight: 500;
        color: var(--color-blue);
        @media screen and (max-width: 480px) {
          font-size: 1.2rem;
        }
      }
      ul {
        display: flex;
        align-items: center;
        gap: 5.8rem;
      }
      &.sns {
        border-right: 1px solid var(--color-blue);
        @media screen and (max-width: 480px) {
          border-right: none;
          border-bottom: 1px solid var(--color-blue);
        }
        ul {
          li {
            width: 6rem;
            @media screen and (max-width: 480px) {
              width: 3.7rem;
            }
          }
        }
      }
      &.contact {
        ul {
          li {
            font-size: 2.4rem;
            letter-spacing: 0.22em;
            font-weight: 500;
            padding-bottom: 0.2em;
            @media screen and (max-width: 480px) {
              font-size: 1.6rem;
            }
            a {
              color: #000;
            }
          }
        }
      }
    }
  }
  .footer_inner {
    max-width: 100rem;
    padding: 0 2rem;
    margin: auto;
    position: relative;
    height: 25rem;
    @media screen and (max-width: 480px) {
      height: auto;
      margin-bottom: 3rem;
    }
    /*--------------------*/
    /* ロゴ */
    .footer_logo {
      width: 39.6rem;
      margin-bottom: 1.8rem;
      @media screen and (max-width: 480px) {
        width: 25.7rem;
        margin-bottom: 1.4rem;
      }
      .logo-miurakokudo {
        a {
          display: flex;
          justify-content: space-between;
          .icon {
            width: 13%;
            max-width: 5.2rem;
          }
          .text {
            width: 82.07%;
          }
        }
      }
    }
    /*--------------------*/
    /* 住所 */
    address {
      font-size: 1.8rem;
      letter-spacing: 0.1em;
      font-style: normal;
      line-height: 1.5;
      @media screen and (max-width: 480px) {
        font-size: 1.2rem;
        margin-bottom: 2.8rem;
      }
    }

    /*〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓*/
    /* フッタメニュー */

    .footer_nav_wrap {
      position: absolute;
      right: 2rem;
      top: 0.9rem;
      width: 50rem;
      @media screen and (max-width: 480px) {
        position: static;
        display: flex;
        width: 100%;
      }

      .item {
        h4 {
          font-size: 1.6rem;
          letter-spacing: 0.1em;
          font-weight: 500;
          @media screen and (max-width: 480px) {
            font-size: 1.2rem;
            margin-bottom: 1em;
          }
        }
        ul {
          li {
            font-size: 1.6rem;
            letter-spacing: 0.1em;
            margin: 0.935em 0;
            @media screen and (max-width: 480px) {
              font-size: 1.2rem;
            }
            a {
              color: #000;
              &:hover {
                text-decoration: underline;
                font-weight: 600;
                @media screen and (max-width: 480px) {
                  text-decoration: none;
                }
              }
            }
          }
        }
        &.company {
          width: 28rem;
          position: relative;
          @media screen and (max-width: 480px) {
            width: 50%;
          }
          h4 {
            color: var(--color-blue);
          }
          ul.glo_menu {
            position: relative;

            li {
              &.menu-item-has-children {
                margin-top: 0;
                position: absolute;
                right: 0;
                top: 0;
                @media screen and (max-width: 480px) {
                  position: static;
                  margin-top: 0.5em;
                }
                .dropdown_menu {
                  ul {
                    li {
                      &::before {
                        content: "─ ";
                      }
                    }
                  }
                }
              }
            }
          }
          @media screen and (max-width: 480px) {
            ul.glo_menu {
              display: flex;
              flex-direction: column;
              & > li {
                margin: 0.5em 0;
                &:nth-child(1) {
                  order: 1;
                }
                &:nth-child(2) {
                  order: 4;
                }
                &:nth-child(3) {
                  order: 2;
                }
                &:nth-child(4) {
                  order: 3;
                }
              }
            }
          }
        }
        &.recruit {
          width: 12.6rem;
          position: absolute;
          right: 0;
          top: 0;
          @media screen and (max-width: 480px) {
            position: static;
            width: 50%;
          }
          h4 {
            color: var(--color-green);
          }
        }
      }
      /* スマホ用サブメニューを消す */
      .sub_menu-sp {
        display: none;
      }
    }
  }
  /*--------------------*/
  /* 著作権表記 */
  .copyright {
    font-size: 1.4rem;
    text-align: center;
    margin: 1em;
    letter-spacing: 0.1em;
    padding-left: 0.1em;
    @media screen and (max-width: 480px) {
      font-size: 1rem;
    }
  }
}

/*--------------------*/
/* フッタバナー */

.banner-footer_wrap {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  aspect-ratio: 1200/340;
  border-top: 1px solid var(--color-blue);
  @media screen and (max-width: 480px) {
    aspect-ratio: 1200/412;
  }
  a.inner {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    clip-path: inset(3.75vw);
    position: relative;
    color: #fff;
    &::before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      mix-blend-mode: multiply;
    }
    &:hover {
      opacity: 1;
      clip-path: inset(3vw round 2rem);
    }
    .box {
      position: relative;
      width: 40%;
      flex-shrink: 0;
      box-sizing: border-box;
    }
  }
  &.recruit {
    background-image: url(../img/common/banner-recruit-img-bokashi.webp?ver3);
    a.inner {
      background-image: url(../img/common/banner-recruit-img.webp?er3);
      &::before {
        background: #2549aa;
        background: linear-gradient(
          113deg,
          rgba(37, 73, 170, 1) 0%,
          rgba(37, 73, 170, 1) 43%,
          rgba(132, 207, 0, 1) 43%,
          rgba(132, 207, 0, 1) 100%
        );
      }
      .box {
        &.left {
          h3 {
            font-size: 4.2vw;
            letter-spacing: 0.18em;
            font-weight: 300;
            @media screen and (max-width: 480px) {
              font-size: 1.8rem;
            }
          }
          p {
            margin-top: 0.8em;
            font-size: 1.5vw;
            letter-spacing: 0.18em;
            @media screen and (max-width: 480px) {
              font-size: 0.9rem;
            }
          }
        }
        &.right {
          text-align: center;
          font-size: 2.33vw;
          letter-spacing: 0.4em;
          padding-left: 0.4em;
          @media screen and (max-width: 480px) {
            font-size: 1.4rem;
            letter-spacing: 0.3em;
            padding-left: 0.3em;
          }
        }
      }
    }
  }
}
/*〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
リクルート
〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓*/
/* 共通 */
body.is-recruit {
  /*--------------------*/
  /* フッタバナー */
  .banner-footer_wrap {
    &.corporate {
      background-image: url(../img/recruit/banner-corporate-img-bokashi.webp?ver3);
      a.inner {
        background-image: url(../img/recruit/banner-corporate-img.webp?ver3);
        &::before {
          background: #1978d2;
          background: linear-gradient(
            113deg,
            rgba(25, 120, 210, 1) 0%,
            rgba(25, 120, 210, 1) 48%,
            rgba(37, 73, 170, 1) 48%,
            rgba(37, 73, 170, 1) 100%
          );
        }
        @media screen and (max-width: 480px) {
          &::before {
            background: #1978d2;
            background: linear-gradient(
              113deg,
              rgba(25, 120, 210, 1) 0%,
              rgba(25, 120, 210, 1) 46%,
              rgba(37, 73, 170, 1) 46%,
              rgba(37, 73, 170, 1) 100%
            );
          }
        }
        .box {
          @media screen and (max-width: 480px) {
            width: 41%;
          }
          &.left {
            padding-bottom: 2%;
            .logo {
              width: 72%;
              max-width: 38rem;
            }
          }
          &.right {
            padding-left: 7%;
            @media screen and (max-width: 480px) {
              padding-left: 4%;
            }
            h3 {
              font-size: 4.6rem;
              letter-spacing: 0.24em;
              @media screen and (max-width: 480px) {
                font-size: 1.6rem;
              }
              i {
                font-weight: 300;
              }
              span {
                font-weight: 500;
              }
            }
            p {
              font-size: 2.5rem;
              letter-spacing: 0.4em;
              margin-top: 0.76em;
              @media screen and (max-width: 480px) {
                font-size: 1rem;
                letter-spacing: 0.2em;
              }
            }
          }
        }
      }
    }
  }
}
