/* footer.css */

/* PC版 */

.footer_container {
  margin-inline: auto;
  padding: 5.8rem 3.5rem 12.1rem 3.5rem;
  font-family: var(--NotoSerif);
  color: var(--white);
  background-color: var(--black);
}

.footer_logo_img {
  width: calc(16.051rem + 23rem);
  height: 4.6rem;
  object-fit: contain;
  object-position: left;
}

.footer_sp_nav {
  display: none;
}

.footer_nav_flex {
  display: flex;
  column-gap: 9.3rem;
  padding: 2.5rem 0 0 0;
}

.footer_left_flex {
  display: flex;
  column-gap: 9.3rem;
}

.footer_right_flex {
  display: flex;
  column-gap: 23.2rem;
}

.footer_link_flex {
  display: flex;
  flex-direction: column;
  row-gap: 2rem;
}

.footer_link_font {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.375em;
  letter-spacing: calc(2.4em / 16);
  text-align: left;
}

.contact_link_font {
  display: block;
  width: 14rem;
  height: 3.5rem;
  padding: 0.7rem 1rem 0.6rem 1rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.375em;
  letter-spacing: calc(2.4em / 16);
  text-align: center;
  color: var(--black);
  background-color: var(--white);
}

/* メニューのカレント表示 */

.current_footer_link {
  position: relative;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.375em;
  letter-spacing: calc(2.4em / 16);
  text-align: left;
  color: var(--white);
}

.current_footer_link::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -0.3rem;
  width: 100%;
  height: 0.1rem;
  display: inline-block;
  /*位置調整*/
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: var(--white);
}

.contact_link_font.current_footer_link {
  background-color: #dc000c;
  border: 0.1rem solid var(--black);
}

.contact_link_font.current_footer_link::after {
  display: none;
}

/* SP版 */

@media screen and (max-width: 699.98px) {

  .footer_container {
    width: 100%;
    padding: 2rem 1.9rem 6.7rem 1rem;
  }

  .footer_pc_nav {
    display: none;
  }

  .footer_sp_nav {
    display: block;
  }

  .footer_logo_img {
    width: calc(13.958rem + 0.642rem + 20rem);
  }

  .footer_nav_flex {
    justify-content: space-between;
    column-gap: 0;
    padding: 3.3rem 0 0 0;
  }

  .footer_left_flex {
    width:14rem;
    display: flex;
    flex-direction: column;
  }

  .contact_link_wrapper {
    margin: 6.2rem 0 0 0;
  }
}