@charset "utf-8";
.s-kv .co-catch { font-size: 2.2rem; font-weight: 700; line-height: 1.6; letter-spacing: .04em; }
.s-kv .s-kv-lead .co-catch + p { margin-top: 1.6rem; }
@media print, screen and (min-width: 768px) {
  .s-kv .co-catch { font-size: 3rem; }
}
.co-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.6rem; }
.co-tag { display: inline-block; padding: 0 1.2rem; color: rgb(var(--c-accent-rgb)); border: .1rem solid currentColor; border-radius: 3em; font-size: 1.2rem; line-height: 2.6rem; letter-spacing: .04em; white-space: nowrap; }
.co-date { color: rgb(var(--c-accent-rgb)); font-family: var(--font-en); font-size: 1.3rem; font-weight: 600; letter-spacing: .04em; }
.co-pick { display: grid; gap: 3.2rem; padding: 4rem 2.4rem; background: rgb(255 255 255); border-radius: 1rem; }
.co-pick .co-pick-no { font-family: var(--font-en); font-size: 1.4rem; font-weight: 600; letter-spacing: .06em; color: rgb(var(--c-accent-rgb)); }
.co-pick h3 { margin: 2rem 0 1.6rem; font-size: 2.2rem; font-weight: 700; line-height: 1.6; letter-spacing: .04em; transition: opacity 300ms; }
.co-pick:hover h3 { opacity: .6; }
.co-pick .co-pick-lead { font-size: 1.5rem; line-height: 2; letter-spacing: .02em; }
.co-pick .co-pick-sub { margin-bottom: 1.2rem; font-size: 1.4rem; font-weight: 700; letter-spacing: .04em; }
.co-pick .s-check li { padding-top: 1.4rem; padding-bottom: 1.4rem; font-size: 1.4rem; }
.co-pick .s-check li::before { top: 2.15rem; }
.co-pick .co-arrow { display: inline-block; margin-top: 2.4rem; color: rgb(var(--c-accent-rgb)); font-size: 1.4rem; font-weight: 700; letter-spacing: .04em; }
.co-pick .co-arrow::after { content: "→"; margin-left: .8em; transition: margin 300ms; }
.co-pick:hover .co-arrow::after { margin-left: 1.2em; }
@media print, screen and (min-width: 768px) {
  .co-pick { grid-template-columns: 1fr 1fr; gap: 6rem; align-items: center; padding: 6rem; }
  .co-pick h3 { font-size: 2.8rem; }
  .co-pick .co-pick-lead { font-size: 1.6rem; }
}
@media print, screen and (min-width: 1024px) {
  .co-pick { gap: 8rem; padding: 7rem; }
}
.co-filter { display: none; flex-wrap: wrap; gap: 1rem; margin: -1rem 0 4rem; }
.js .co-filter { display: flex; }
.co-filter button { padding: 0 2rem; color: rgb(var(--c-accent-rgb)); background: rgb(255 255 255); border: .1rem solid rgb(var(--c-accent-rgb)); border-radius: 3em; font: inherit; font-size: 1.3rem; line-height: 4rem; letter-spacing: .04em; cursor: pointer; transition: 300ms; }
.co-filter button:hover { color: rgb(var(--c-ink-rgb)); border-color: rgb(var(--c-ink-rgb)); }
.co-filter button[aria-pressed="true"] { color: rgb(255 255 255); background: rgb(var(--c-sumi-rgb)); border-color: rgb(var(--c-sumi-rgb)); }
.co-filter button:focus-visible { outline: .2rem solid rgb(var(--c-accent-rgb)); outline-offset: .2rem; }
.co-filter .co-count { margin-left: .6em; font-family: var(--font-en); font-weight: 600; }
@media print, screen and (min-width: 768px) {
  .co-filter { margin: -2rem 0 5rem; }
  .co-filter button { font-size: 1.4rem; line-height: 4.4rem; }
}
.co-list { border-top: .1rem solid rgb(var(--c-ink-rgb) / .9); }
.co-list > li { border-bottom: .1rem solid rgb(var(--c-ink-rgb) / .2); }
.co-list > li[hidden] { display: none; }
.co-item { display: grid; grid-template-columns: 11rem 1fr; gap: 0 2rem; align-items: start; padding: 2.8rem 0; }
.co-item .s-ph { grid-row: 1 / span 4; aspect-ratio: 1 / 1; }
.co-item .co-meta { margin-bottom: 1.2rem; }
.co-item h3 { font-size: 1.6rem; font-weight: 700; line-height: 1.6; letter-spacing: .04em; transition: opacity 300ms; }
.co-item:hover h3 { opacity: .6; }
.co-item .co-ex { display: none; }
.co-item .s-arrow { display: none; }
.co-empty { padding: 4rem 0; color: rgb(var(--c-accent-rgb)); font-size: 1.5rem; }
@media print, screen and (min-width: 768px) {
  .co-item { grid-template-columns: 30rem 1fr; gap: 0 5rem; padding: 4rem 0; }
  .co-item .s-ph { aspect-ratio: 3 / 2; }
  .co-item h3 { font-size: 2.2rem; }
  .co-item .co-ex { display: block; margin-top: 1.4rem; font-size: 1.5rem; line-height: 1.95; letter-spacing: .02em; }
  .co-item .s-arrow { display: inline-block; margin-top: 2rem; color: rgb(var(--c-accent-rgb)); font-family: var(--font-en); font-size: 1.3rem; font-weight: 600; letter-spacing: .06em; }
  .co-item .s-arrow::after { content: "→"; margin-left: .8em; transition: margin 300ms; }
  .co-item:hover .s-arrow::after { margin-left: 1.2em; }
}
@media print, screen and (min-width: 1024px) {
  .co-item { grid-template-columns: 36rem 1fr; gap: 0 6rem; }
}
.co-frame { display: grid; place-items: center; overflow: hidden; aspect-ratio: 4 / 3; background: rgb(241 241 241); border-radius: 1rem; }
.s-gray .co-frame, .co-dl .co-frame { background: rgb(255 255 255); }
.co-cover { container-type: inline-size; width: 44%; aspect-ratio: 1 / 1.414; color: rgb(255 255 255); background: rgb(var(--c-sumi-rgb)); border-radius: .4rem; transition: transform 500ms cubic-bezier(0.19, 1, 0.22, 1); }
.co-cover.co-gray { background: rgb(var(--c-accent-rgb)); }
.co-cover .co-cv-in { display: flex; flex-direction: column; height: 100%; padding: 9cqw 9cqw 8cqw; }
.co-cover .co-cv-top { display: flex; white-space: nowrap; justify-content: space-between; gap: 4cqw; padding-bottom: 3.5cqw; border-bottom: .1rem solid rgb(255 255 255 / .45); font-family: var(--font-en); font-size: 5cqw; font-weight: 600; line-height: 1.2; letter-spacing: .06em; }
.co-cover .co-cv-no { margin-top: 9cqw; font-family: var(--font-en); font-size: 21cqw; font-weight: 600; line-height: 1; letter-spacing: 0; }
.co-cover .co-cv-ttl { margin-top: 5cqw; font-size: 10cqw; font-weight: 700; line-height: 1.45; letter-spacing: .02em; word-break: auto-phrase; }
.co-cover .co-cv-foot { margin-top: auto; padding-top: 3cqw; border-top: .1rem solid rgb(255 255 255 / .45); font-size: 4.6cqw; letter-spacing: .08em; opacity: .85; }
a:hover .co-cover { transform: scale(1.04); }
.co-cover-img { display: block; width: 86%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; border: .1rem solid rgb(var(--c-ink-rgb) / .12); border-radius: .4rem; transition: transform 500ms cubic-bezier(0.19, 1, 0.22, 1); }
a:hover .co-cover-img { transform: scale(1.04); }
@media (prefers-reduced-motion: reduce) {
  .co-cover, .co-cover-img { transition: none; }
}
.co-docs .s-link .co-frame { margin-bottom: 2rem; }
.co-docs .s-link .s-arrow { font-family: var(--font-jp); font-weight: 700; letter-spacing: .04em; }
.co-docs-lead { max-width: 64rem; margin: -2rem 0 5rem; font-size: 1.5rem; line-height: 2; }
@media print, screen and (min-width: 768px) {
  .co-docs-lead { margin: -3rem 0 7rem; font-size: 1.6rem; }
}
.co-akv h1 .t-lat { font-size: 4.4rem; }
.co-akv h1 .t-ja { max-width: 90rem; font-size: 2.4rem; line-height: 1.55; }
.co-akv .co-meta { margin-top: 2.8rem; }
@media print, screen and (min-width: 768px) {
  .co-akv h1 .t-lat { font-size: 6.4rem; }
  .co-akv h1 .t-ja { font-size: 3.6rem; }
}
.co-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6rem; }
.co-side { display: none; }
@media print, screen and (min-width: 1024px) {
  .co-layout { grid-template-columns: minmax(0, 1fr) 28rem; gap: 8rem; align-items: start; }
  .co-side { display: block; position: sticky; top: 12rem; }
}
.co-body { max-width: 78rem; }
.co-eye { overflow: hidden; margin-bottom: 5rem; border-radius: 1rem; aspect-ratio: 16 / 9; }
.co-eye img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 50% 35%; }
.co-body p { font-size: 1.5rem; line-height: 2.05; letter-spacing: .02em; }
.co-body p + p { margin-top: 1.5em; }
.co-body strong { font-weight: 700; }
.co-body .co-ask { padding: 2.4rem 2.8rem; background: rgb(241 241 241); border-radius: 1rem; font-weight: 700; }
.co-body .co-ask + p { margin-top: 3rem; }
.co-body .s-index { margin: 5rem 0 2rem; }
.co-body .s-index ol ol { margin: 0 0 1.4rem 3.6rem; counter-reset: none; }
.co-body .s-index ol ol li { counter-increment: none; border-top: 0; }
.co-body .s-index ol ol li a { padding: .4rem 0; font-size: 1.4rem; color: rgb(var(--c-accent-rgb)); }
.co-body .s-index ol ol li a::before { content: "—"; font-family: var(--font-jp); font-weight: 400; }
.co-h2 { margin: 9rem 0 3.2rem; padding-top: 2.8rem; border-top: .1rem solid rgb(var(--c-ink-rgb) / .9); font-size: 2.2rem; font-weight: 700; line-height: 1.6; letter-spacing: .04em; scroll-margin-top: 10rem; }
.co-h2 .co-h2-no { display: block; margin-bottom: 1.2rem; color: rgb(var(--c-accent-rgb)); font-family: var(--font-en); font-size: 1.4rem; font-weight: 600; letter-spacing: .06em; }
.co-h3 { margin: 5rem 0 1.6rem; padding-left: 1.6rem; border-left: .2rem solid rgb(var(--c-sumi-rgb)); font-size: 1.8rem; font-weight: 700; line-height: 1.6; letter-spacing: .04em; scroll-margin-top: 10rem; }
.co-h2 + .co-h3 { margin-top: 3.6rem; }
.co-body .s-check, .co-body .s-table-wrap, .co-body .s-dl, .co-body .s-steps, .co-body .co-ul { margin: 2.8rem 0; }
.co-body .s-check li { font-size: 1.5rem; }
.co-ul li { position: relative; padding-left: 1.6em; font-size: 1.5rem; line-height: 2; letter-spacing: .02em; }
.co-ul li + li { margin-top: .6em; }
.co-ul li::before { content: ""; position: absolute; top: 1em; left: .2em; width: .6em; height: .1rem; background: currentColor; }
.co-body .s-table { min-width: 56rem; font-size: 1.4rem; }
.co-body .s-table.co-fit { min-width: 0; }  
@media screen and (max-width: 767px) { .co-body .s-table.co-fit th, .co-body .s-table.co-fit td { padding: 1.6rem .8rem; } .co-body .s-table.co-fit tbody th { width: auto; word-break: normal; } }
.co-body .s-table-note { margin-top: 1.2rem; }
.co-body .s-dl dd { font-size: 1.5rem; }
.co-body .s-steps p { font-size: 1.4rem; }
.co-body .s-steps p + p { margin-top: 0; }
.co-body a.co-link { text-decoration: underline; text-underline-offset: .3em; transition: opacity 300ms; }
.co-body a.co-link:hover { opacity: .6; }
.co-body .co-faq { margin-top: 2.8rem; padding: 0; background: none; }
.co-body .co-faq dl { max-width: none; }
@media print, screen and (min-width: 768px) {
  .co-eye { margin-bottom: 6rem; }
  .co-body p, .co-ul li { font-size: 1.6rem; }
  .co-body .s-check li { font-size: 1.6rem; }
  .co-h2 { margin-top: 12rem; font-size: 2.8rem; }
  .co-h3 { font-size: 2.1rem; }
  .co-body .s-table { font-size: 1.5rem; }
  .co-body .s-dl > div { grid-template-columns: 18rem 1fr; }
  .co-body .co-faq dt button { padding-top: 2.2rem; padding-bottom: 2.2rem; font-size: 1.6rem; }
  .co-body .co-faq dd { font-size: 1.5rem; }
}
.co-dl { display: grid; gap: 2.8rem; margin: 6rem 0; padding: 3.2rem 2.4rem; background: rgb(241 241 241); border-radius: 1rem; }
.co-dl .co-frame { aspect-ratio: 16 / 10; }
.co-dl .co-cover { width: 34%; }
.co-dl .co-dl-label { margin-bottom: 1.2rem; color: rgb(var(--c-accent-rgb)); font-family: var(--font-en); font-size: 1.3rem; font-weight: 600; letter-spacing: .08em; }
.co-dl .co-dl-ttl { margin-bottom: 1.2rem; font-size: 2rem; font-weight: 700; line-height: 1.55; letter-spacing: .04em; }
.co-body .co-dl p.co-dl-txt { font-size: 1.4rem; line-height: 1.9; }
.co-dl .co-ul { margin: 1.6rem 0 0; }
.co-dl .co-ul li { font-size: 1.4rem; line-height: 1.8; }
.co-dl .t-more { margin-top: 2.4rem; }
.co-dl .t-more a { background: rgb(255 255 255); }
.co-dl .t-more a:hover { background: rgb(var(--c-accent-rgb)); }
@media print, screen and (min-width: 768px) {
  .co-dl { grid-template-columns: 24rem 1fr; gap: 4rem; align-items: center; padding: 4rem; }
  .co-dl .co-frame { aspect-ratio: 3 / 4; }
  .co-dl .co-cover { width: 62%; }
  .co-dl:has(.co-cover-img) { grid-template-columns: 32rem 1fr; }
  .co-dl .co-frame:has(.co-cover-img) { aspect-ratio: 16 / 10; }
  .co-dl .co-dl-ttl { font-size: 2.2rem; }
}
.co-cv { margin: 6rem 0; padding: 4rem 2.4rem; color: rgb(255 255 255); background: rgb(var(--c-sumi-rgb)); border-radius: 1rem; }
.co-cv .co-cv-label { margin-bottom: 1.6rem; color: rgb(var(--c-ondark-rgb)); font-family: var(--font-en); font-size: 1.3rem; font-weight: 600; letter-spacing: .08em; }
.co-cv .co-cv-h { margin-bottom: 1.6rem; font-size: 2rem; font-weight: 700; line-height: 1.6; letter-spacing: .04em; }
.co-body .co-cv p.co-cv-txt { color: rgb(255 255 255 / .85); font-size: 1.4rem; line-height: 1.9; }
.co-cv .t-more { margin-top: 2.8rem; }
.co-cv .t-more a { color: rgb(255 255 255); border-color: rgb(255 255 255 / .6); }
.co-cv .t-more a::after { background-image: url(../images/t-icon-001.svg); }
.co-cv .t-more a:hover { color: rgb(var(--c-sumi-rgb)); background: rgb(255 255 255); border-color: rgb(255 255 255); }
.co-cv .t-more a:hover::after { background-image: url(../images/t-icon-004.svg); }
@media print, screen and (min-width: 768px) {
  .co-cv { padding: 5rem 5.6rem; }
  .co-cv .co-cv-h { font-size: 2.4rem; }
}
.co-side .s-index { padding: 2.8rem 2.4rem; }
.co-side .s-index li a { padding: 1rem 0; font-size: 1.3rem; line-height: 1.6; gap: 1.2rem; }
.co-side-cv { margin-top: 2rem; padding: 2.8rem 2.4rem; border: .1rem solid rgb(var(--c-ink-rgb) / .2); border-radius: 1rem; }
.co-side-cv p { font-size: 1.4rem; font-weight: 700; line-height: 1.7; letter-spacing: .04em; }
.co-side-cv .t-more { margin-top: 1.6rem; }
.co-side-cv .t-more a { padding: 0 5rem 0 2.4rem; font-size: 1.3rem; line-height: 4.4rem; }
.co-side-cv .t-more a::after { right: 2rem; }
.co-side-cv .t-more + .t-more { margin-top: 1rem; }
.co-rel .s-link .s-ph { aspect-ratio: 3 / 2; }
.co-rel .co-meta { margin-bottom: 1.2rem; }
.co-rel .s-actions { margin-top: 6rem; }
@media print, screen and (min-width: 768px) {
  .co-rel .s-links { grid-template-columns: repeat(2, 1fr); }
}
#col-pick .cpk-cover {
  display: flex;
  margin: 0;
}
#col-pick .cpk-cover {
  position: relative;
  overflow: hidden;
  flex-direction: column;
  align-items: flex-start;
  min-height: 25rem;
  padding: 2.4rem 2.4rem 2.2rem;
  color: rgb(255 255 255);
  background: rgb(var(--c-sumi-rgb));
  border-radius: .6rem;
}
#col-pick .cpk-cover::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 34%;
  background: rgb(var(--c-sumi2-rgb));
  clip-path: polygon(62% 0, 100% 0, 100% 100%, 0 100%);
}
#col-pick .cpk-cover > span {
  position: relative;
  z-index: 1;
  max-width: 84%;
}
#col-pick .cpk-cv-tag {
  padding: 0 1.1rem;
  color: rgb(var(--c-ondark-rgb));
  border: .1rem solid rgb(var(--c-ondark-rgb) / .6);
  border-radius: 3em;
  font-family: var(--font-jp);
  font-size: 1.1rem;
  line-height: 2.4rem;
  letter-spacing: .04em;
  white-space: nowrap;
}
#col-pick .cpk-cv-ttl {
  margin-top: auto;
  padding-top: 2rem;
  font-family: var(--font-jp);
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .04em;
}
#col-pick .cpk-cv-sub {
  margin-top: 1rem;
  color: rgb(var(--c-ondark-rgb));
  font-family: var(--font-jp);
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: .04em;
}
#col-pick .cpk-cv-sub::after {
  content: "";
  display: block;
  width: 3.2rem;
  height: .2rem;
  margin-top: 1.4rem;
  background: rgb(var(--c-ondark-rgb));
}
#col-pick .cpk-cv-date {
  margin-top: auto;
  padding-top: 2rem;
  color: rgb(var(--c-ondark-rgb));
  font-family: var(--font-en);
  font-size: 1.2rem;
  font-weight: 600;
  letter-spacing: .08em;
}
#col-pick .co-pick:hover .cpk-cover {
  opacity: .9;
}
@media print, screen and (min-width: 768px) {
  #col-pick .co-pick {
    grid-template-columns: 40% 1fr;
    grid-template-rows: auto 1fr;
    gap: 0 6rem;
    align-items: start;
  }
  #col-pick .cpk-cover {
    grid-column: 1;
    grid-row: 1 / span 2;
    align-self: stretch;
    min-height: 36rem;
    padding: 3.6rem 3.2rem 3.2rem;
  }
  #col-pick .cpk-cv-ttl {
    font-size: 2.6rem;
  }
  #col-pick .cpk-cv-sub {
    font-size: 1.4rem;
  }
  #col-pick .cpk-cv-date {
    font-size: 1.3rem;
  }
  #col-pick .co-pick > div:first-of-type {
    grid-column: 2;
  }
  #col-pick .co-pick > div:last-of-type {
    grid-column: 2;
    margin-top: 3.6rem;
    padding-top: 3.2rem;
    border-top: .1rem solid rgb(var(--c-ink-rgb) / .15);
  }
}
@media print, screen and (min-width: 1024px) {
  #col-pick .co-pick {
    gap: 0 7rem;
  }
  #col-pick .cpk-cover {
    min-height: 40rem;
    padding: 4rem 3.6rem 3.6rem;
  }
  #col-pick .cpk-cv-ttl {
    font-size: 3rem;
  }
}
#col-kv .s-kv-ph {
  aspect-ratio: 3 / 2;
}
#col-kv .s-kv-ph img {
  object-position: 50% 62%;
}
@media print, screen and (min-width: 768px) {
  #col-kv .s-kv-ph {
    aspect-ratio: 16 / 9;
  }
}
@media print, screen and (min-width: 1024px) {
  #col-kv .s-wrap {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 40rem);
    grid-template-rows: auto auto 1fr;
    column-gap: 8rem;
    align-items: start;
  }
  #col-kv .s-crumb,
  #col-kv h1,
  #col-kv .s-kv-lead {
    grid-column: 1;
  }
  #col-kv .s-kv-ph {
    grid-column: 2;
    grid-row: 1 / 4;
    margin-top: 0;
    aspect-ratio: 4 / 5;
  }
  #col-kv .s-kv-ph img {
    object-position: 50% 50%;
  }
}
@media print, screen and (min-width: 1280px) {
  #col-kv .s-wrap {
    grid-template-columns: minmax(0, 1fr) minmax(0, 46rem);
  }
}
.co-frame:has(.co-cover-img) { align-self: start; aspect-ratio: 16 / 9; background: rgb(255 255 255); border: .1rem solid rgb(var(--c-ink-rgb) / .12); border-radius: .6rem; }
.co-frame .co-cover-img { width: 100%; border: 0; border-radius: 0; }
.co-body mark { padding: 0 .1em; color: inherit; font-weight: 700; background: linear-gradient(transparent 60%, rgb(var(--c-accent-rgb) / .22) 60%); }
.co-body .co-src { margin-top: 1.6rem; padding-left: 1.6em; list-style: decimal; font-size: 1.3rem; line-height: 1.9; }
.co-body .co-src li + li { margin-top: .4em; }
.co-body .co-src a { overflow-wrap: anywhere; text-decoration: underline; }
.co-item .s-ph.co-ph-thumb { aspect-ratio: 16 / 9; background: rgb(255 255 255); }
.co-item .s-ph.co-ph-thumb img { object-fit: contain; }
@media screen and (max-width: 767px) {
  .co-body .s-table.co-stack { display: block; min-width: 0; }
  .co-body .s-table.co-stack thead { display: none; }
  .co-body .s-table.co-stack tbody { display: block; border-top: .1rem solid rgb(var(--c-ink-rgb) / .9); }
  .co-body .s-table.co-stack tr { display: block; padding: 2rem 0; border-bottom: .1rem solid rgb(var(--c-ink-rgb) / .2); }
  .co-body .s-table.co-stack th, .co-body .s-table.co-stack td { display: block; width: auto; padding: 0; border: 0; }
  .co-body .s-table.co-stack th { font-size: 1.6rem; }
  .co-body .s-table.co-stack td { margin-top: 1.2rem; }
  .co-body .s-table.co-stack td::before { content: attr(data-label); display: block; margin-bottom: .2rem; font-size: 1.2rem; font-weight: 700; color: rgb(var(--c-ink-rgb) / .6); }
}
.co-rel .s-link .s-ph.co-ph-thumb { aspect-ratio: 16 / 9; background: rgb(255 255 255); }
.co-rel .s-link .s-ph.co-ph-thumb img { object-fit: contain; }
@media screen and (max-width: 767px) {
  .co-body .s-table.co-fit tbody th { width: 8.4em; word-break: auto-phrase; }
}
.co-side {
  display: none;
}
.co-layout {
  display: block;
  max-width: 92rem;
  margin-inline: auto;
}
.co-body {
  max-width: none;
}
.co-akv .s-crumb {
  text-align: left;
}
.co-akv h1 {
  text-align: center;
}
.co-akv h1 .t-lat {
  display: none;
}
.co-akv h1 .t-ja {
  font-size: 2.6rem;
  line-height: 1.6;
  word-break: auto-phrase;
}
.co-akv .co-meta {
  justify-content: center;
}
.co-h2 {
  margin: 7rem 0 2.8rem;
  padding: 1.6rem 1.8rem 1.8rem;
  font-size: 2.2rem;
  background: rgb(241 241 241);
  border-top: 0;
  border-left: .5rem solid rgb(var(--c-sumi-rgb));
}
.co-h2 .co-h2-no {
  display: none;
}
.co-h3 {
  margin: 4.8rem 0 2rem;
  padding: 0 0 1.2rem;
  border-left: 0;
  border-bottom: .4rem solid rgb(var(--c-ink-rgb) / .2);
}
.co-body mark {
  background: linear-gradient(transparent 86%, rgb(var(--c-sumi-rgb)) 86%);
}
.co-body .s-index {
  padding: 3.2rem 2.4rem;
  background: rgb(246 246 246);
  border: .1rem solid rgb(var(--c-ink-rgb) / .12);
  border-radius: 1rem;
}
.co-body .s-index .s-index-ttl {
  text-align: center;
}
@media print, screen and (min-width: 768px) {
  .co-akv h1 .t-ja {
    font-size: 4rem;
  }
  .co-body > p {
    font-size: 1.7rem;
    line-height: 1.95;
  }
  .co-h2 {
    margin-top: 8rem;
    font-size: 2.8rem;
  }
  .co-h3 {
    font-size: 2.2rem;
  }
  .co-body .s-index {
    padding: 3.6rem 4.8rem;
  }
  .co-body .s-table th,
  .co-body .s-table td {
    border: .1rem solid rgb(var(--c-ink-rgb) / .15);
  }
  .co-body .s-table thead th {
    background: rgb(241 241 241);
  }
}
.co-akv .s-crumb {
  max-width: 92rem;
  margin-inline: auto;
}
.co-akv h1 .t-ja {
  max-width: none;
  text-wrap: balance;
}
.co-akv h1 .t-ja {
  display: block;
  margin-inline: auto;
}
body[class*="t-sub-column-"] .t-head {
  background: rgb(255 255 255);
}
.co-body .s-table thead th {
  vertical-align: middle;
  padding-block: 1.4rem;
}
.co-akv,
.co-article,
.co-rel {
  font-family: "Noto Sans JP", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
  font-weight: 400;
  color: #0d0d0d;
}
.co-akv :is(h1, .t-ja, ol, li, a),
.co-article :is(h2, h3, p, li, th, td, dt, dd, a, span, .s-index-ttl) {
  font-family: inherit;
}
.co-akv .s-crumb {
  max-width: none;
  margin-inline: 0;
  font-size: 1.4rem;
}
.co-akv {
  padding-bottom: 0;
}
.co-akv h1 {
  margin-top: 4.8rem;
  padding: 0;
  text-align: center;
}
.co-akv h1 .t-ja {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 3.52rem;
  letter-spacing: .06em;
  color: #0d0d0d;
}
.co-akv .co-meta {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1.6rem;
  max-width: 92rem;
  margin: 3.2rem auto 0;
}
.co-akv .co-tag {
  display: inline-flex;
  align-items: center;
  height: 3.2rem;
  padding: 0 1.1rem;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.7rem;
  letter-spacing: .04em;
  color: #0d0d0d;
  background: none;
  border: .1rem solid rgb(112 112 112);
  border-radius: .3rem;
}
.co-akv .co-date {
  display: inline-flex;
  align-items: center;
  gap: .4em;
  height: 3.2rem;
  padding: 0 1.2rem;
  font-family: 'Zen Kaku Gothic New', sans-serif;
  font-size: 1.4rem;
  color: #0d0d0d;
  background: rgb(246 246 246);
  border-left: .3rem solid rgb(112 112 112);
}
.co-akv + #coa {
  padding-top: 2.4rem;
}
.co-eye {
  margin-bottom: 4rem;
  border-radius: 0;
}
.co-body > p,
.co-body > .co-ask {
  font-size: 1.6rem;
  line-height: 3.04rem;
  letter-spacing: .04em;
  font-weight: 400;
  text-wrap: balance;
}
.co-body > p + p {
  margin-top: 2.4rem;
}
.co-body .co-ask {
  padding: 0;
  background: none;
  border-radius: 0;
}
.co-body .co-ask + p {
  margin-top: 2.4rem;
}
.co-body strong {
  font-weight: 700;
  color: #0d0d0d;
}
.co-body mark {
  padding: 0 .02em .04em;
  font-weight: 700;
  color: #0d0d0d;
  background: linear-gradient(rgb(var(--c-sumi-rgb)), rgb(var(--c-sumi-rgb))) no-repeat 0 100% / 100% .14em;
}
.co-h2 {
  margin: 3.52rem 0 2.4rem;
  padding: 1.5rem;
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 2.9rem;
  letter-spacing: .02em;
  color: #0d0d0d;
  background: rgb(238 238 238);
  border-top: 0;
  border-left: .5rem solid rgb(204 204 204);
}
.co-h3 {
  margin: 4.6rem 0 2.4rem;
  padding: 1.4rem 0;
  font-size: 2rem;
  font-weight: 700;
  line-height: 2.6rem;
  letter-spacing: .02em;
  color: #0d0d0d;
  border-top: .5rem solid rgb(204 204 204);
  border-bottom: .5rem solid rgb(204 204 204);
  border-left: 0;
}
.co-body .s-index {
  margin: 1rem 0 5.6rem;
  padding: 2.8rem 2rem 2.4rem;
  background: repeating-linear-gradient(-45deg, rgb(0 0 0 / .022) 0 1px, transparent 1px 8px), rgb(246 246 246);
  border: .1rem solid rgb(230 230 230);
  border-radius: .8rem;
}
.co-body .s-index .s-index-ttl {
  margin-bottom: 2rem;
  font-size: 0;
  text-align: center;
}
.co-body .s-index .s-index-ttl::after {
  content: "目次";
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: .1em;
}
.co-body .s-index li {
  margin-bottom: 1.6rem;
  border-top: 0;
}
.co-body .s-index li a {
  display: block;
  padding: 0;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2.6rem;
  color: #141414;
  transition: color 300ms;
}
.co-body .s-index li a::before {
  content: none;
}
.co-body .s-index li a:hover {
  color: #777;
  opacity: 1;
}
.co-body .s-index ol ol {
  margin: 1rem 0 0 1.6rem;
}
.co-body .s-index ol ol li {
  margin-bottom: .6rem;
}
.co-body .s-index ol ol li a {
  padding: 0;
  font-size: 1.5rem;
  font-weight: 400;
  color: #444;
}
.co-ul li,
.co-body .s-check li {
  font-size: 1.6rem;
  line-height: 3.04rem;
  font-weight: 400;
}
.co-body .s-table-wrap {
  margin: 3.2rem 0 2.4rem;
}
.co-body .s-table {
  font-size: 1.6rem;
  line-height: 2.4rem;
  font-weight: 400;
}
@media print, screen and (min-width: 768px) {
  .co-akv h1 {
    margin-top: 10rem;
    padding: 0 7rem;
  }
  .co-akv h1 .t-ja {
    font-size: 4rem;
    line-height: 5.8rem;
  }
  .co-akv .co-meta {
    gap: 3.2rem;
    margin-top: 12rem;
  }
  .co-akv .co-date {
    font-size: 1.6rem;
  }
  .co-akv + #coa {
    padding-top: 4rem;
  }
  .co-body > p,
  .co-body > .co-ask {
    font-size: 1.8rem;
    line-height: 3.42rem;
  }
  .co-body > p + p,
  .co-body .co-ask + p {
    margin-top: 2.7rem;
  }
  .co-h2 {
    margin: 4.8rem 0 2.4rem;
    padding: 1.5rem 1.6rem 2.3rem 2.1rem;
    font-size: 3rem;
    line-height: 4.4rem;
  }
  .co-h3 {
    margin: 5.52rem 0 2.4rem;
    padding: 2rem 0;
    font-size: 2.4rem;
    line-height: 3.2rem;
  }
  .co-body .s-index {
    padding: 3.6rem 4.8rem 3.2rem;
  }
  .co-body .s-index li {
    margin-bottom: 2.2rem;
    padding-left: 2.4rem;
  }
  .co-body .s-index li a {
    font-size: 1.8rem;
    line-height: 2.79rem;
  }
  .co-body .s-index ol ol li {
    padding-left: 0;
  }
  .co-body .s-index ol ol li a {
    font-size: 1.5rem;
  }
  .co-body .s-table th,
  .co-body .s-table td {
    padding: 1.4rem 1.4rem 1.8rem;
    border: .1rem solid rgb(225 225 225);
  }
  .co-body .s-table thead th {
    font-weight: 700;
    background: rgb(249 249 249);
  }
  .co-body .s-table tbody th {
    font-weight: 400;
  }
}
