@charset "UTF-8";

footer {
  background-color: #4b4b4b;
  color: #fff;
  padding-top: 70.8px;
}
.footer__wrapper {
  display: flex;
  justify-content: space-between;
  margin-bottom: 96px;
}
.footer__logo {
  max-width: 480px;
  width: 40%;
  padding-bottom: 62.6px;
}
.footer__logo--img {
  width: 120px;
}
.footer__list {
  display: flex;
  flex-wrap: wrap;
  max-width: 352px;
  width: 32.7%;
}
.footer__listItem {
  width: 50%;
  font-family: neue-haas-grotesk-display, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 18px;
  margin-bottom: 19px;
}

.footer__link {
  white-space: nowrap;
}

.footerBtm {
  margin-bottom: 30px;
  max-width: 257px;
  width: 21.5%;
}
.footerBtm__item {
  display: flex;
  justify-content: space-between;
  font-family: neue-haas-grotesk-display, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 15px;
  letter-spacing: 0.02em;
  padding-bottom: 22.2px;
  padding-top: 17.9px;
  border-bottom: solid 0.8px #606060;
}
.footerBtm__item:first-of-type {
  padding-top: 0;
}
.footerBtm__snsLink {
  margin-left: 10px;
  display: inline-block;
}
.footerTicker {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  margin-bottom: 18px;
}
@keyframes footerScroll {
  0% {
    transform: translateX(4px);
  }
  100% {
    transform: translateX(-100%);
  }
}
.footerTicker__list {
  display: inline-block;
  margin: 0;
  padding: 0;
  animation: footerScroll 65s linear infinite;
}
.footerTicker__listItem {
  display: inline-block;
  font-size: 70px;
  font-family: neue-haas-grotesk-display, sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #626262;
  letter-spacing: 0.04em;
}
.footerCopy {
  padding-bottom: 27px;
  display: flex;
  justify-content: space-between;
  font-size: 66px;
  font-family: neue-haas-grotesk-display, sans-serif;
  font-weight: 500;
  color: #c7c7c7;
  font-size: 11px;
  letter-spacing: 0.04em;
}

/*追加 2023/07/12↓*/
.bg--contact {
  background-color: #d8d6cd !important;
}
.contact {
  color: #000 !important;
  padding-top: 119px !important;
  padding-bottom: 115px !important;
}
.contact .contact__heading--ja {
  margin-bottom: 89px;
}
.contact .footerTicker {
  display: flex;
}
.contact .footerTicker__list {
  animation: footerScroll 30s linear infinite;
}
.contact .footerTicker__list.sp {
  display: block !important;
}
.contact .footerTicker__list.pc {
  display: none !important;
}
.contact .footerTicker__listItem {
  font-size: 128px;
  color: #000;
}
.contact .contact__btn--emoji {
  width: 30px;
  height: auto !important;
  margin: 0 25px;
  vertical-align: middle;
}
.contact .footerTicker {
  margin-bottom: 104px;
}
.contact .contact__txt {
  margin-bottom: 0;
}
/*追加 2023/07/12↑*/

/*get in touchホバーで動く ↓開始*/
.container {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
/*ここまでは見た目を整えるもの*/
.list a {
  color: #000;
  font-size: 128px;
  font-family: neue-haas-grotesk-display, sans-serif;
  display: block;
  padding: 0 12px;
  overflow: hidden; /*はみ出た要素を隠す*/
  letter-spacing: 0.1em; /*文字間を広げて余裕のある感じに*/
  text-decoration: none;
}
/* display:flexとalign-items:centerは中身の高さに合わせるために記述*/
.text-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.after {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
}
.before {
  display: flex;
  align-items: center;
}
.before span,
.after span {
  line-height: 1.1;
  transition: color 0.3s ease-out; /*ease-outで余裕のある動きに*/
}
.after span {
  transform: translateY(100%);
}

.before span:nth-child(1),
.after span:nth-child(1) {
  width: 97px;
}
.before span:nth-child(2),
.after span:nth-child(2) {
  width: 70px;
}
.before span:nth-child(3),
.after span:nth-child(3) {
  padding-right: 35px;
}
.before span:nth-child(4),
.after span:nth-child(4) {
  width: 32px;
}
.before span:nth-child(5),
.after span:nth-child(5) {
  padding-right: 8px;
}
.before span:nth-child(6),
.after span:nth-child(6) {
  width: 65px;
}
.before span:nth-child(7),
.after span:nth-child(7) {
  width: 76px;
}
.before span:nth-child(8),
.after span:nth-child(8) {
  width: 77px;
}
.before span:nth-child(9),
.after span:nth-child(9) {
  width: 71px;
}
.before span:nth-child(10),
.after span:nth-child(10) {
  background: url(../imgs/common/emoji_hand.png) right 19px bottom 46px / contain no-repeat;
  padding-right: 70px;
  background-size: 28px 34px;
}
.list a.sp {
  display: none;
}
/*get in touchホバーで動く ↑終了*/

@media screen and (max-width: 880px) {
  /*get in touchホバーで動く ↓開始*/
  .inner.contact {
    width: 100%;
    padding-top: 78px !important;
    padding-bottom: 84px !important;
  }
  .contact .contact__heading--ja {
    margin-bottom: 60px;
  }
  .contact .footerTicker {
    margin-bottom: 58px;
  }

  .list a {
    font-size: 88px;
    padding-right: 0;
  }
  .before span:nth-child(1),
  .after span:nth-child(1) {
    width: 67px;
  }
  .before span:nth-child(2),
  .after span:nth-child(2) {
    width: 50px;
  }
  .before span:nth-child(3),
  .after span:nth-child(3) {
    padding-right: 30px;
  }
  .before span:nth-child(4),
  .after span:nth-child(4) {
    width: 20px;
  }
  .before span:nth-child(5),
  .after span:nth-child(5) {
    padding-right: 18px;
  }
  .before span:nth-child(6),
  .after span:nth-child(6) {
    width: 49px;
  }
  .before span:nth-child(7),
  .after span:nth-child(7) {
    width: 56px;
  }
  .before span:nth-child(8),
  .after span:nth-child(8) {
    width: 49px;
  }
  .before span:nth-child(9),
  .after span:nth-child(9) {
    width: 51px;
  }
  .before span:nth-child(10),
  .after span:nth-child(10) {
    background: url(../imgs/common/emoji_hand.png) right 14px bottom 31px / contain no-repeat;
    padding-right: 50px;
    background-size: 21px 23px;
  }

  /*get in touchホバーで動く ↑終了*/
}
@media screen and (max-width: 750px) {
  .footer__wrapper {
    display: block;
  }
  .footer__logo {
    width: 120px;
    padding-bottom: 62.6px;
  }
  .footer__logo--img {
    width: 100%;
  }
  .footer__list,
  .footerBtm {
    width: 100%;
    max-width: 100%;
  }
  .footerTicker__listItem {
    font-size: 66px;
  }
  .footer__wrapper {
    margin-bottom: 0px;
  }
  .footerCopy {
    padding-bottom: 15px;
  }
  .footer__list {
    margin-bottom: 67px;
  }
  .footer__link {
    white-space: nowrap;
  }

  /*get in touchホバーで動く ↓開始*/
  /* .list a.pc {
    display: none;
  }
  .list a.sp {
    font-size: 55px;
    display: block;
  }
  .list a.sp span::after {
    content: "";
    background: url(../imgs/common/emoji_hand.png) left 10px bottom 21px / contain no-repeat;
    padding-right: 25px;
    background-size: 14px 17px;
  } */
  .contact .footerTicker__listItem {
    font-size: 88px;
  }
  .contact .footerTicker__listItem:nth-child(1),
  .contact .footerTicker__listItem:nth-child(3) {
    width: 500px;
  }
  .contact .contact__btn--emoji {
    width: 20px;
    margin: 0 17px;
  }
  .contact .footerTicker__list.sp {
    display: none !important;
  }
  .contact .footerTicker__list.pc {
    display: block !important;
  }
  /*get in touchホバーで動く ↑終了*/
}

@media screen and (max-width: 480px) {
  /*get in touchホバーで動く ↓開始*/
  .list a.sp {
    font-size: 47px;
  }
  .list a.sp span::after {
    background-size: 12px 15px;
  }
  /*get in touchホバーで動く ↑終了*/
}
