.header {
  position: fixed;
  display: flex;
  width: 100%;
  height: 120px;
  padding: 25px 0px 24.595px 30px;
  align-items: center;
  flex-shrink: 0;
  border-radius: 0 0 var(--Margin-M) var(--Corner-L);
  background: var(--Fill-white);
  box-shadow: 2px 2px 10px 0 rgba(0, 0, 0, 0.1);
  z-index: 999;
}
.header__logo {
  display: flex;
  height: 70.405px;
  align-self: stretch;
  aspect-ratio: 185.4/70.41;
  background-image: url("../../images/renewal_img/logo-header.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.header__logo:hover {
  opacity: 0.7;
  cursor: pointer;
}

.content-header {
  display: flex;
  width: 100%;
  flex-direction: column;
  align-items: center;
  border-radius: 0 0 var(--Radius-radius-4xl, 24px) var(--Radius-radius-4xl, 24px);
  background: var(--Yellow-90, #ffefd1);
}

.content-header__container {
  display: flex;
  max-width: 1548px;
  width: 100%;
  padding: 144px 240px 76px 0;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-624-px, 24px);
}

.content-header__breadcrumb {
  display: flex;
  align-items: center;
  align-content: center;
  gap: 4px var(--spacing-14-px, 4px);
  align-self: stretch;
  flex-wrap: wrap;
}

.content-header__nav {
  color: var(--Text-Primary, #333);
  font-feature-settings: "pwid" on, "palt" on;
  font-family: "Noto Sans JP";
  font-size: var(--typography-font-size-text-sm-14-px, 14px);
  font-style: normal;
  font-weight: 400;
  line-height: 170%;
  display: flex;
  align-items: center;
}

.content-header__nav span:not(:last-of-type):hover {
  opacity: 0.7;
  cursor: pointer;
}

.content-header__nav svg {
  margin-inline: 4px;
}

.content-header__current {
  color: var(--Text-Secondary, #636363);
}

.content-header__title {
  color: var(--darkBrown-30, #534b3d);
  font-feature-settings: "pwid" on, "palt" on;
  font-family: "Noto Sans JP";
  font-size: var(--Typography-Size-display-H1, 48px);
  font-style: normal;
  font-weight: 900;
  line-height: 150%;
  letter-spacing: 1.92px;
  margin-bottom: 48px;
}

.footer {
  background-color: #fff;
}

.footer__container {
  display: flex;
  padding: 30px 40px 31px 40px;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
}

.footer__left {
  flex: 0 0 auto;
}
.footer__left:hover {
  opacity: 0.7;
  cursor: pointer;
}
.footer__logo {
  width: 160px;
}

.footer__right {
  text-align: right;
  line-height: 1.6;
  width: 40%;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: var(--spacing-312-px, 12px);
}

.footer__link {
  color: var(--Text-Secondary, #636363);
  font-feature-settings: "pwid" on, "palt" on;
  font-size: var(--typography-font-size-text-md-16-px, 16px);
  font-weight: 400;
  text-decoration: none;
  line-height: 170%;
}
.footer__link:hover {
  opacity: 0.7;
  cursor: pointer;
}

.column {
  display: inline-block;
  width: 1px;
  height: 20px;
  background: var(--Border-primary, #e9e7e7);
  margin-inline: 16px;
}

.footer__copy {
  color: var(--Text-Secondary, #636363);
  text-align: right;
  font-feature-settings: "pwid" on, "palt" on;
  font-size: var(--typography-font-size-text-xs-12-px, 12px);
  font-weight: 400;
  line-height: 170%;
}

@media screen and (max-width: 1588px) {
  .content-header__container {
    padding-inline: 20px;
  }
}

@media (min-width: 320px) and (max-width: 1064px) {
  .header {
    display: flex;
    height: 70px;
    padding: 9px 0px 9px 20px;
    align-items: center;
    flex-shrink: 0;
    border-radius: 0 0 20px 20px;
  }
  .header__logo {
    width: 136.933px;
    height: 52px;
    flex-shrink: 0;
    aspect-ratio: 136.93/52;
  }
  .content-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--spacing-624-px, 24px);
    padding: 0 20px;
  }
  .content-header__container {
    min-width: var(--layout-column-124, 335px);
    padding: 94px 0px 0px 0;
  }
  .content-header__title {
    font-size: 30px;
    font-style: normal;
    font-weight: 900;
    line-height: 150%;
    letter-spacing: 1.2px;
  }

  .footer__container {
    width: 100%;
    padding: 20px 0px;
  }

  .footer__left,
  .footer__links {
    display: none;
  }

  .footer__right {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  .footer__copy {
    color: var(--Text-Primary, #333);
  }
}

@media (min-width: 320px) and (max-width: 374px) {
  .content-header {
    width: 100%;
    min-width: 320px;
  }

  .content-header__container {
    min-width: 320px;
    padding: 20px;
    padding: 94px 20px 6px 20px;
    width: 100%;
  }
}
