footer {
  background-color: var(--blue);
  color: white;
  text-align: center;
  font-weight: 400;
  width: 100%;
  height: 500px;
  margin: 100px 0 0 0;

  .company {
    padding-top: 20px;
  }

  /* ボタン */
  .btnArea {
    text-align: center;
    padding: 30px 0 0 0;
  }
  .btn {
    display: inline-block;
    height: 24px;
    padding: 10px 64px;
    border-radius: 4px;
    border: 1px solid var(--white);
    background-color: var(--blue);

    /* 文字 */
    color: #fff;
    font-size: 1.333em;
    text-decoration: none;

    div {
      display: inline-block;
    }

    img {
      width: 16px;
      height: 16px;
    }
  }

  /* 地図 */
  .mapArea {
    height: 200px;
    width: 80%;
    margin: 0 auto;
    margin-top: 20px;

    .map {
      width: 100%;
      height: 100%;
    }
  }

  .footerText {
    margin: 20px 20px 0 0;
  }
}

.pageTop {
  display: none;
}

@media screen and (min-width: 768px) {
  footer {
    height: 440px;

    .footCont {
      display: flex;
      padding: 40px 80px 0 80px;
      max-width: 1200px;
      margin: 0 auto;

      .left {
        text-align: left;
        width: 100%;
        padding: 20px;

        .company {
          padding-top: 0;
        }

        h4 {
          margin-top: 0;
          font-size: 3.5em;
        }

        .btnArea {
          text-align: left;
        }
      }

      .mapArea {
        height: 300px;
        width: 100%;
        margin: 20px;
      }
    }
    .footerText {
      text-align: right;
      padding: 20px;
      padding-bottom: 40px;
      margin: 0;
      background-color: var(--blue);
      transform: translateY(-16px);
    }
  }

  .pageTop {
    display: block;
    position: fixed;
    right: 45px;
    bottom: 50px;
    z-index: 1;
    background-color: var(--deepBlue);
    width: 80px;
    height: 80px;
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);

    a {
      display: flex;
      align-items: center;
      justify-content: center;
      color: var(--white);
      text-decoration: none;
      width: 100%;
      height: 100%;
    }
  }
}
