
@media screen and (min-width: 821px) {
  .home-hero {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 0 1.5rem 1.5rem;
    min-height: calc(100vh - var(--header-height) - 1.5rem);
  }
  .home-hero > .text {
    padding: 4rem 2.5rem;
  }
  .home-hero > .text > .catch {
    font-size: clamp(1.813rem, 2.01vw, 2.188rem);
    margin-top: 2.5rem;
  }
  .home-hero > .text > .catch > .sub {
    font-size: clamp(1.313rem, 1.46vw, 1.563rem);
  }
  .home-hero > .text > .description {
    font-size: 0.875rem;
    line-height: 2.2;
    margin-top: 1.5rem;
  }
  .home-hero > .text > .note {
    font-size: 0.75rem;
    line-height: 2.2;
    margin-top: 1.5rem;
  }
  .home-hero > .text > .action {
    margin-top: 2.5rem;
    max-width: 25rem;
  }
  .home-hero > .image {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
  }
  .home-hero-title > .category {
    font-size: clamp(1.25rem, 1.39vw, 1.5rem);
    letter-spacing: 0.5em;
    line-height: 1.2;
    margin-bottom: clamp(0.75rem, 0.83vw, 0.875rem);
  }
  .home-hero-title > .logo {
    width: clamp(25.5rem, 28.33vw, 30.625rem);
  }
}

@media screen and (min-width: 821px) {
  .home-question-title {
    margin-bottom: 3rem;
  }
  .home-question-title > .site-heading-ornament {
    top: -4.375rem;
  }
  .home-question-list {
    gap: 3rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .home-aging-intro {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 0.85fr);
    margin-bottom: 4rem;
  }
  .home-aging-intro > .text > .title {
    margin-bottom: 1.5rem;
  }
  .home-aging-intro > .text > .title > .site-heading-ornament {
    top: -4.375rem;
    left: -3.75rem;
  }
  .home-aging-intro > .image {
    margin-left: -2rem;
    margin-right: -4rem;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .home-aging-list {
    gap: 2px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
  }
  .home-aging-list > .item > .site-heading-simple {
    margin: 0 1rem 0.5rem;
  }
  .home-aging-list > .item > .site-text-standard {
    margin: 0 1rem;
  }
  .home-case-layout {
    gap: 0;
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  }
  .home-case-layout > .text {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
    padding: 1rem 0rem 1rem 7.5rem;
  }
  .home-case-layout > .text > .title {
    text-align: left;
  }
  .home-case-layout > .text > .title > .site-heading-ornament {
    margin: 0;
    top: -4.375rem;
    right: auto;
    left: -3.75rem;
  }
  .home-setup-title {
    margin-bottom: 3rem;
  }
  .home-setup-title > .site-heading-ornament {
    top: -4.375rem;
  }
  .home-setup-title > .site-heading-simple {
    margin-bottom: 1.5rem;
  }
  .home-setup-list {
    gap: 1.5rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 0;
  }
  .home-setup-list > .item > .visual > .number {
    font-size: 4.5rem;
    font-weight: 500;
    line-height: 0.7;
    top: -2rem;
    left: -1rem;
  }
  .home-setup-list > .item > .site-heading-simple {
    margin: 0 1rem 0.5rem;
  }
  .home-setup-list > .item > .site-text-standard {
    margin: 0 1rem;
  }
  .home-spec-title {
    margin-bottom: 3rem;
  }
  .home-spec-title > .site-heading-ornament {
    top: -4.375rem;
    left: -3.75rem;
  }
  .home-spec-description > .item {
    display: grid;
    gap: 1rem;
    grid-template-columns: 15.625rem minmax(0, 1fr);
  }
  .home-spec-description > .item > dt, .home-spec-description > .item > dd {
    font-size: 1.125rem;
  }
  .home-spec-description > .item > dt {
    margin-bottom: 0;
  }
  .home-spec-standard {
    gap: 4rem;
    grid-template-columns: minmax(0, 0.85fr) minmax(0, 2.75fr);
    padding: 1.5rem 3rem;
  }
  .home-spec-standard > .standard {
    border-bottom: 0;
    border-right: 1px solid var(--color-border);
    padding: 1.5rem 4rem 1.5rem 0;
  }
  .home-spec-standard > .content {
    padding-block: 1.5rem;
  }
  .home-spec-strength {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .home-spec-composition {
    padding: 2rem 3rem;
  }
  .home-spec-composition > .list {
    grid-template-columns: repeat(9, minmax(0, 1fr));
  }
  .home-spec-composition > .list > .item {
    padding: 1rem;
  }
  .home-spec-composition > .list > .item:nth-child(3n) {
    border-right: 1px solid var(--color-border);
  }
  .home-spec-composition > .list > .item:last-child {
    border-right: 0;
  }
  .home-spec-table th, .home-spec-table td {
    font-size: 1rem;
  }
  .home-spec-table th {
    font-size: 1.125rem;
  }
  .home-spec-summary {
    gap: 1.5rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
  .home-spec-summary > .item {
    padding: 1.5rem;
  }
  .home-spec-summary > .item > dt {
    font-size: 1.125rem;
  }
  .home-spec-summary > .item .number > .value {
    font-size: 2.375rem;
  }
  .home-spec-summary > .item .description {
    font-size: 1rem;
  }
  .home-notice-layout {
    grid-template-columns: minmax(0, 0.6fr) minmax(0, 1fr);
  }
  .home-notice-title {
    margin-bottom: 0;
  }
  .home-notice-title > .site-heading-ornament {
    top: -4.375rem;
    left: -3.75rem;
  }
  .home-notice-list > .item {
    gap: 3rem;
  }
  .home-notice-points {
    margin-top: 1.5rem;
  }
  .home-notice-points > li {
    padding: 0.5rem 1.5rem;
  }
  .home-faq-title {
    margin-bottom: 2rem;
  }
  .home-faq-title > .site-heading-ornament {
    top: -4.375rem;
  }
  .home-faq-list > .item > .question {
    gap: 1.5rem;
    grid-template-columns: auto minmax(0, 1fr);
  }
  .home-faq-list > .item > .question > .mark {
    font-size: 3rem;
  }
  .home-faq-list > .item > .answer {
    margin: 1rem 0 0 3.813rem;
  }
  .home-contact {
    margin-inline: clamp(1rem, 1.67vw, 1.5rem);
    scroll-margin-top: 2rem;
  }
  .home-contact-layout {
    gap: 3rem;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
  .home-contact-layout > .text > .title > .site-heading-ornament {
    top: -4.375rem;
    left: -3.75rem;
  }
  .home-contact-layout > .form {
    height: 37.5rem;
    padding: 0 2rem;
  }
  .home-contact-sample {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    margin: 2rem 0;
  }
}