.page-disclaimer{
  --dis-line:rgba(18,34,74,.16);
  --dis-line-soft:rgba(18,34,74,.07);
  --dis-ink:#242a3a;
  --dis-band:linear-gradient(90deg,var(--indigo) 0 33%,var(--red) 33% 66%,var(--gold) 66% 100%);
  background:var(--paper);
  color:var(--ink);
  overflow-x:clip;
}

.page-disclaimer .yf-crumb{
  margin:18px 0 0;
}

.page-disclaimer .dis-hero{
  display:grid;
  gap:24px;
  padding:24px 0 34px;
}

.page-disclaimer .dis-ribbon{
  display:block;
  width:88px;
  height:6px;
  border-radius:2px;
  background:var(--dis-band);
  margin-bottom:18px;
}

.page-disclaimer .dis-kicker{
  margin:0 0 12px;
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--muted);
}

.page-disclaimer .dis-h1{
  margin:0 0 16px;
  font-family:var(--display);
  font-weight:900;
  font-size:clamp(2rem,5.4vw,3.35rem);
  line-height:1.14;
  letter-spacing:-.02em;
  color:var(--indigo);
}

.page-disclaimer .dis-lead{
  margin:0;
  max-width:58ch;
  font-size:1.0625rem;
  line-height:1.85;
  color:var(--dis-ink);
}

.page-disclaimer .dis-hero__fig{
  margin:0;
  min-width:0;
}

.page-disclaimer .dis-hero__fig img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:12 / 5;
  object-fit:cover;
  border:1px solid var(--dis-line);
  border-radius:4px;
  box-shadow:var(--shadow-tag);
}

.page-disclaimer .dis-hero__cap{
  margin-top:10px;
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.1em;
  color:var(--muted);
}

.page-disclaimer .yf-rule--band{
  margin:0 0 6px;
}

.page-disclaimer .dis-body{
  display:grid;
  gap:34px;
  padding:14px 0 64px;
}

.page-disclaimer .dis-articles{
  min-width:0;
}

.page-disclaimer .dis-term{
  display:grid;
  grid-template-columns:46px minmax(0,1fr);
  gap:14px;
  padding:28px 0;
  border-bottom:1px solid var(--dis-line);
  scroll-margin-top:76px;
}

.page-disclaimer .dis-term:first-child{
  border-top:1px solid var(--dis-line);
}

.page-disclaimer .dis-term__idx{
  font-family:var(--mono);
  font-weight:600;
  font-size:1.25rem;
  line-height:1;
  letter-spacing:.02em;
  color:var(--red);
  padding-top:.35em;
}

.page-disclaimer .dis-term__body{
  min-width:0;
}

.page-disclaimer .dis-term__h{
  margin:0 0 12px;
  font-family:var(--display);
  font-weight:700;
  font-size:clamp(1.12rem,2.5vw,1.45rem);
  line-height:1.4;
  letter-spacing:-.01em;
  color:var(--indigo);
}

.page-disclaimer .dis-term__body p{
  margin:0 0 12px;
  max-width:64ch;
  font-size:1rem;
  line-height:1.85;
  color:var(--dis-ink);
}

.page-disclaimer .dis-term__body p:last-child{
  margin-bottom:0;
}

.page-disclaimer .dis-key{
  border-left:3px solid var(--cyan);
  background:rgba(18,194,180,.08);
  border-radius:0 4px 4px 0;
  padding:12px 15px;
  font-size:.96rem;
  line-height:1.8;
  color:var(--indigo);
}

.page-disclaimer .dis-link{
  color:var(--indigo);
  text-decoration:none;
  border-bottom:1px solid rgba(18,194,180,.65);
  transition:color .2s var(--ease),border-color .2s var(--ease);
}

.page-disclaimer .dis-link:hover,
.page-disclaimer .dis-link:focus-visible{
  color:var(--red);
  border-bottom-color:var(--red);
}

.page-disclaimer .dis-aside{
  display:flex;
  flex-direction:column;
  gap:22px;
  min-width:0;
}

.page-disclaimer .dis-notice{
  background:rgba(255,252,247,.9);
  border:1px solid var(--dis-line);
  border-left:4px solid var(--gold);
  border-radius:4px;
  padding:16px 16px 18px;
  box-shadow:var(--shadow-tag);
}

.page-disclaimer .dis-notice__k{
  margin:0 0 8px;
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.14em;
  color:var(--red);
}

.page-disclaimer .dis-notice p{
  margin:0 0 10px;
  font-size:.86rem;
  line-height:1.75;
  color:var(--dis-ink);
}

.page-disclaimer .dis-notice p:last-child{
  margin-bottom:0;
}

.page-disclaimer .dis-notice__c{
  font-family:var(--mono);
  font-size:.82rem;
  letter-spacing:.02em;
  color:var(--indigo-2);
  word-break:break-all;
}

.page-disclaimer .dis-toc{
  border-top:1px solid var(--dis-line);
  padding-top:14px;
}

.page-disclaimer .dis-toc__title{
  margin:0 0 8px;
  font-family:var(--mono);
  font-size:.7rem;
  letter-spacing:.14em;
  color:var(--muted);
}

.page-disclaimer .dis-toc a{
  display:block;
  padding:8px 0;
  font-size:.875rem;
  line-height:1.5;
  color:var(--indigo);
  text-decoration:none;
  border-bottom:1px dashed var(--dis-line-soft);
  transition:color .2s var(--ease),padding-left .2s var(--ease);
}

.page-disclaimer .dis-toc a:hover,
.page-disclaimer .dis-toc a:focus-visible{
  color:var(--red);
  padding-left:6px;
}

.page-disclaimer .dis-close{
  margin:0 0 72px;
  padding:24px 22px 26px;
  background:var(--paper-2);
  border:1px solid var(--dis-line);
  border-left:5px solid var(--indigo);
  border-radius:4px;
  box-shadow:var(--shadow-tag);
}

.page-disclaimer .dis-close p{
  margin:0 0 18px;
  max-width:62ch;
  font-size:.98rem;
  line-height:1.85;
  color:var(--dis-ink);
}

.page-disclaimer .dis-close__acts{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

@media (min-width:900px){
  .page-disclaimer .dis-hero{
    grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
    gap:48px;
    align-items:center;
    padding:36px 0 50px;
  }

  .page-disclaimer .dis-body{
    grid-template-columns:minmax(0,1fr) 262px;
    gap:44px;
    align-items:start;
    padding:16px 0 72px;
  }

  .page-disclaimer .dis-articles{
    grid-column:1;
    grid-row:1;
  }

  .page-disclaimer .dis-aside{
    grid-column:2;
    grid-row:1;
  }

  .page-disclaimer .dis-term{
    grid-template-columns:84px minmax(0,1fr);
    gap:28px;
    padding:34px 0;
  }

  .page-disclaimer .dis-term__idx{
    font-size:1.6rem;
  }
}

@media (min-width:1080px){
  .page-disclaimer .dis-body{
    grid-template-columns:minmax(0,1fr) 296px;
    gap:64px;
  }

  .page-disclaimer .dis-aside{
    position:sticky;
    top:32px;
  }

  .page-disclaimer .dis-term__idx{
    font-size:1.85rem;
  }

  .page-disclaimer .dis-close{
    margin-bottom:88px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-disclaimer .dis-link,
  .page-disclaimer .dis-toc a{
    transition:none;
  }
}
