@charset "UTF-8";

/* ---------------------------------------------------------------------------
  ★共通
--------------------------------------------------------------------------- */

html {
    font-size: 62.5%;
}

object {
    pointer-events: none;
}

.sp,
.header_sp {
    display: none !important;
}

a[href^="tel:"] {
    pointer-events: none;
}

a {
    text-decoration: none;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.img_r {
    overflow: hidden;
}

.img_r>img {
    float: right;
    width: 33%;
    margin-left: 15px;
    margin-bottom: 15px;
}

/* ---------------------------------------------------------------------------
  ～1300px
--------------------------------------------------------------------------- */
@media screen and (max-width: 1300px) {
  .header_nav .nav .flex {
    gap: 2%;
  }
}

/* ---------------------------------------------------------------------------
  ～1250px
--------------------------------------------------------------------------- */
@media screen and (max-width: 1250px) {
  .main h2 {
    font-size: clamp(30px, 3.43vw, 55px);
  }
  .main .f42 {
    font-size: clamp(1.6rem, 2.5vw, 4.2rem) !important;
  }
  .main .f34 {
    font-size: clamp(1.6rem, 1.93vw, 3.4rem) !important;
  }
  .footer02_nav ul {
    margin-left: 4%;
  }
  .home05 .w50 {
    width: 57%;
  }
  .home05 .w50 .gap5 {
    gap: 2%;
  }
  .home05 .w50 .w44 {
    width: 48%;
  }
  .footer01 .w23 {
    width: 27%;
  }
}

/* ---------------------------------------------------------------------------
  ～1050px
--------------------------------------------------------------------------- */
@media screen and (max-width: 1050px) {
  .home06 .gap10 {
    gap: 5%;
  }
  .footer01 .w60 {
    width: 73%;
  }
}
/* ---------------------------------------------------------------------------
  ～1024px
--------------------------------------------------------------------------- */
@media screen and (max-width: 1024px) {
  #esg02 .esg_card {
    width: calc((100% - 20px) / 2);
  }
}

/* ---------------------------------------------------------------------------
  ★インスタグラム
--------------------------------------------------------------------------- */

.instagramcont li {
    width: calc(100% / 4);
}

.instagramcont li a {
    display: block;
    overflow: hidden;
    position: relative;
    width: 100%;
    padding: 0 0 100%;
    background: #949494;
}

.instagramcont li a img {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
}
