.footer {
    width: calc(100% - 72px);
    margin-left: auto;
    background-color: #202020;
    color: #fff;
  }
  
  @media screen and (max-width: 999px) {
    .footer {
      width: 100%;
    }
  }
  
  .to-top {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 15px;
    padding-bottom: 27px;
    margin-left: -93px;
    gap: 11px;
    border-bottom: 1px solid #ffffff;
  }
  
  @media screen and (max-width: 999px) {
    .to-top {
      padding-bottom: 15px;
      margin-left: auto;
      margin-right: auto;
    }
  }
  
  .to-top img {
    width: 10.31px;
  }
  .to-top span {
    font-family: "Cormorant Garamond", serif;
    font-size: 19px;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  
  @media screen and (max-width: 999px) {
    .to-top span {
      font-size: 15px;
    }
  }
  
  .footer__main {
    display: flex;
    justify-content: space-between;
    max-width: 1045px;
    margin-left: -93px;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    padding-top: 72px;
    padding-bottom: 193px;
  }
  
  @media (min-width: 1000px) and (max-width: 1320px) {
    .footer__main {
      width: 90%;
    }
  }
  @media (min-width: 768px) and (max-width: 999px) {
    .footer__main {
      box-sizing: border-box;
      padding-left: 60px;
      padding-right: 20px;
      width: 100%;
      flex-direction: column;
      padding-bottom: 60px;
      margin-left: auto;
      padding-top: 30px;
      padding-bottom: 30px;
    }
  }
  
  @media screen and (max-width: 767px) {
    .footer__main {
      box-sizing: border-box;
      padding-left: 20px;
      padding-right: 20px;
      width: 100%;
      flex-direction: column;
      padding-bottom: 60px;
      margin-left: auto;
      padding-top: 20px;
      padding-bottom: 20px;
    }
  }
  
  .footer__mainInfo {
    display: flex;
    flex-direction: column;
  }
  
  .footer__mainInfoTop {
    display: flex;
    flex-direction: column;
  }
  
  .footer__mainLogo {
    width: 167.82px;
  }
  
  .footer__mainTel {
    font-weight: 500;
    letter-spacing: 0.04em;
    font-size: 22px;
    font-family: "Noto Serif JP", serif;
    margin-top: 18px;
    margin-bottom: 7px;
  }
  
  .footer__mainTime {
    font-weight: 500;
    letter-spacing: 0.04em;
    font-size: 14px;
    font-family: "Noto Serif JP", serif;
  }
  
  .footer__mainInfoBottom {
  }
  
  .footer__icons {
    display: flex;
    margin-top: 200px;
    gap: 20px;
  }
  
  @media screen and (max-width: 999px) {
    .footer__icons {
      margin-top: 20px;
    }
  }
  
  .footer__icon {
  }
  
  .footer__icon--instagram {
    width: 24.6px;
  }
  
  .footer__icon--line {
    width: 27.92px;
  }
  
  .footer__icon--youtube {
    width: 28.74px;
    transform: translateY(-4px);
  }
  
  @media screen and (max-width: 999px) {
    .footer__icon--youtube {
      transform: translateY(1px);
    }
  }
  
  .footer__nav {
    display: flex;
    padding-top: 25px;
    justify-content: space-between;
  }
  
  @media (min-width: 1000px) and (max-width: 1230px) {
    .footer__nav {
      gap: 40px;
      justify-content: flex-start;
    }
  }
  
  @media screen and (max-width: 999px) {
    .footer__nav {
      flex-direction: column;
      gap: 15px;
    }
  }
  
  .footer__navRow {
    display: flex;
  }
  
  .footer__navList {
    display: flex;
    flex-direction: column;
    gap: 22px;
  }
  
  @media screen and (max-width: 999px) {
    .footer__navList {
      gap: 15px;
    }
  }
  
  .footer__navItem a {
    text-decoration: none;
    color: #fff;
    font-size: 14px;
    letter-spacing: 0.04em;
    font-weight: bold;
  }
  
  .footer__bottom {
    background-color: #000;
  }
  
  .footer__bottomContents {
    display: flex;
    justify-content: space-between;
    max-width: 1200px;
    padding-top: 46px;
    padding-bottom: 41px;
    padding-left: 3%;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
  }
  
  @media screen and (max-width: 999px) {
    .footer__bottomContents {
      padding-top: 20px;
      padding-bottom: 20px;
      box-sizing: border-box;
      padding-left: 20px;
      padding-right: 20px;
      width: 100%;
    }
  }
  .footer__privacy,
  .footer__copy {
    font-size: 15px;
    letter-spacing: 0.04em;
    font-weight: bold;
  }
  
  @media (min-width: 768px) and (max-width: 999px) {
    .footer__privacy,
    .footer__copy {
      font-size: 12px;
    }
  }
  
  @media screen and (max-width: 767px) {
    .footer__privacy,
    .footer__copy {
      font-size: 12px;
    }
  }
  