

.lay { display: flex; flex-direction: column; min-height: 100vh; }
.lay-bd { display: flex; flex-direction: column; }
.lay-mn { order: 1; flex: 1; min-width: 0; }
.lay-sd { order: 2; padding: 0 1.2em var(--sp-4); }

.wrp { width: 100%; max-width: 76em; margin: 0 auto; padding: 0 1.2em; }


.lay-ct {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1em;
}
.sec { padding: var(--sp-5) var(--sp-3); flex: 1 1 100%; }
.sec h2 { margin-bottom: var(--sp-3); }

.tone-dk { background: var(--deep); color: var(--text-invert); }
.tone-dk h2, .tone-dk h3 { color: var(--text-invert); }
.tone-dk .ink-mu { color: rgba(247, 239, 231, 0.7); }
.tone-dk .faq-a { color: rgba(247, 239, 231, 0.82); }
.tone-lt { background: #ffffff; color: #333333; }
.tone-cr { background: var(--bg-secondary); }

.grid-a { display: flex; flex-wrap: wrap; gap: var(--sp-3); }
.grid-a > * { flex: 1 1 15em; }


@media (max-width: 47.99em) {
  .acc { border-bottom: 0.0625em solid var(--line); }
  .acc-t {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    text-align: left;
  }
  .acc-t::after {
    content: "+";
    font-size: 1.4em;
    line-height: 1;
    color: var(--accent);
  }
  .acc.is-open .acc-t::after { content: "\2013"; }
  .acc-p { display: none; }
  .acc.is-open .acc-p { display: block; }
  .lay-ct > .sec { padding: var(--sp-4) var(--sp-2); }
}


@media (min-width: 48em) {
  h1 { font-size: 3em; }
  h2 { font-size: 2.1em; }
  .hd { padding: 0.9em 2.6em; }
  .hd-tel { display: block; }
  .hd-list { margin-left: auto; }
  .lay-ct { gap: 1.618em; }
  .lay-bd > .lay-sd { padding: 0 2.6em var(--sp-4); }
  .fx-half { flex: 1 1 calc(50% - 0.809em); }
  .wrp { padding: 0 2.6em; }
}


@media (min-width: 64em) {
  .lay-bd { flex-direction: row; align-items: stretch; }
  .lay-mn { flex: 1 1 62%; }
  .lay-sd { flex: 0 0 22em; padding: var(--sp-4) 2em var(--sp-4) 0; }
  .rail { position: sticky; top: 6.5em; }
  .sec { padding: var(--sp-5) var(--sp-4); }
}

.acc-t { display: block; width: 100%; text-align: left; font: inherit; color: inherit; }
