@charset "UTF-8";
/*
 * TUTURIGACHI 2026 / 総務部
 * Copyright (C) 2026 Tuturigachi Language Solutions Corp. All Rights Reserved.
 * 響き
 */
:root {

  --v1-kaeru:    oklch(0.72 0.19 135);

  --hibiki: 0;
  --accent-now: var(--fukagawa-teal-700);
  --life: calc(var(--hibiki) / 12);
  --wake: calc(var(--life) * 28%);
}

.t-new--v1 { color: var(--v1-kaeru); }
.t-cal .release { background: color-mix(in oklch, var(--v1-kaeru) 30%, white); color: oklch(0.38 0.1 140); font-weight: bold; }

.t-cal-legend i.t-cal-legend__release { background: color-mix(in oklch, var(--v1-kaeru) 30%, white); border-color: color-mix(in oklch, var(--v1-kaeru) 60%, white); }

.i-added { background: oklch(0.99 0.025 100); }
.t-principles .i-added .w { color: var(--accent-now); }

.i-oto, .i-otonow {
  --i-grid: oklch(0.78 0 0);
  --i-head: oklch(0.965 0.014 95);
  --i-mark: color-mix(in oklch, var(--accent-now) calc(var(--life) * 100%), var(--jimu-gray-500));
}
.i-oto { max-width: 660px; font-size: 13px; line-height: 1.85; }
.i-oto p { margin: 0 0 12px; }
.i-oto__title {
  margin: 22px 0 14px; padding: 0 0 5px;
  font: bold 17px/1.5 var(--font-ikeda); letter-spacing: 0.02em; color: var(--sumi);
  border-bottom: 2px solid var(--i-mark); cursor: default;
}
.i-oto__forms {
  display: grid; grid-template-columns: 9.5em minmax(0, 1fr); margin: 0 0 14px;
  font: 12px/1.7 var(--font-ikeda); border: solid var(--i-grid); border-width: 1px 0 0 1px;
}
.i-oto__forms dt, .i-oto__forms dd { margin: 0; padding: 4px 9px; border: solid var(--i-grid); border-width: 0 1px 1px 0; }
.i-oto__forms dt { background: var(--i-head); }
.i-oto__small { display: block; color: var(--notice-red); }
.i-oto__dial b { font-family: var(--font-ikeda); letter-spacing: 0.02em; white-space: nowrap; }

.i-oto__list { margin: 26px 0 20px; padding: 0; list-style: none; }
.i-oto__item { margin: 0 0 22px; scroll-margin-top: 16px; }
.i-oto__name {
  display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; margin: 0 0 6px;
  font: bold 15px/1.5 var(--font-ikeda); color: var(--sumi);
}
.i-oto__no {
  padding: 1px 7px; font-size: 11px; font-weight: normal; white-space: nowrap; color: var(--sumi);
  background: color-mix(in oklch, var(--song) 22%, white);
  border: 1px solid color-mix(in oklch, var(--song) 65%, var(--jimu-gray-500));
}
.i-oto__en { font: 11px var(--font-agency-en); letter-spacing: 0.06em; font-weight: normal; color: var(--sumi-sub); }
.i-oto__item:last-child .i-oto__name::after { content: "NEW"; font: italic bold 9px/1 var(--font-dates); letter-spacing: 0.02em; color: var(--v1-kaeru); }

.i-oto__table { width: 100%; border-collapse: collapse; font: 12px/1.7 var(--font-ikeda); }
.i-oto__table th, .i-oto__table td { padding: 4px 9px; text-align: left; vertical-align: middle; border: 1px solid var(--i-grid); }
.i-oto__table th { width: 9.5em; font-weight: normal; white-space: nowrap; background: var(--i-head); }
.i-oto__table td:has(> .i-oto__play) { width: 28px; padding: 4px 6px; text-align: center; }
.i-oto__meta a { font-family: var(--font-dates); font-size: 11px; }

.i-oto__table tr:has([aria-pressed="true"]) > * { background: color-mix(in oklch, var(--song) 18%, oklch(0.985 0.012 95)); }

.i-oto__play, .i-otonow__play {
  display: inline-grid; place-items: center; width: 26px; height: 20px; margin: 0; padding: 0;
  font: 11px/1 var(--font-agency-en); font-variant-emoji: text; color: var(--sumi); cursor: pointer;
  background: linear-gradient(#fff, oklch(0.9 0 0)); border: 1px solid oklch(0.6 0 0); border-radius: 2px;
  box-shadow: inset 0 1px 0 #fff;
}
.i-oto__play:hover, .i-otonow__play:hover { background: linear-gradient(#fff, oklch(0.94 0.012 95)); }
.i-oto__play:active, .i-otonow__play:active,
.i-oto__play[aria-pressed="true"], .i-otonow__play[aria-pressed="true"] {
  background: linear-gradient(oklch(0.87 0 0), oklch(0.97 0 0)); box-shadow: inset 0 1px 2px oklch(0 0 0 / 0.28);
}
.i-oto__play:focus-visible, .i-otonow__play:focus-visible { outline: 2px solid var(--fukagawa-teal-700); outline-offset: 2px; }

.i-otonow { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 8px; margin: 0 0 10px; padding: 0 0 0 9px; font-size: 12px; line-height: 1.6; border-left: 3px solid var(--i-mark); }
.i-otonow__play { --song: var(--accent-now); }
.i-otonow:has([aria-pressed="true"]) { border-left-color: color-mix(in oklch, var(--accent-now), var(--sumi) 15%); }

@media (pointer: coarse) {
  .i-oto__play, .i-otonow__play { width: 40px; height: 32px; font-size: 13px; }
}
@media (max-width: 760px) {
  .t-fluid .i-oto__forms { grid-template-columns: minmax(0, 1fr); }
  .t-fluid .i-oto__forms dt { font-weight: bold; }
  .t-fluid .i-oto__table th { width: auto; white-space: normal; }
}

.i-notice, .i-dossier, .i-cases {
  --i-grid: oklch(0.78 0 0);
  --i-head: oklch(0.965 0.014 95);
  --i-rule: oklch(0.52 0.004 215);
}
.i-kessai {
  --i-seal: oklch(0.6 0.125 34);
  --i-ink-edge: 0.42;
}

.i-emotion { margin: -6px 0 16px 2px; font: 11.5px/1.6 var(--font-ikeda); letter-spacing: 0.03em; color: var(--sumi-sub); }

.i-dossier__links li, .i-cases__more { position: relative; padding-left: 11px; }
.i-dossier__links li::before, .i-cases__more::before {
  content: ""; position: absolute; left: 1px; top: 50%; margin-top: -3.5px;
  border: 3.5px solid transparent; border-left: 5px solid var(--sumi-sub); border-right: 0;
}

.i-notice__arrow {
  display: table; margin: -4px 0 18px; padding: 2px 11px 2px 8px;
  font: 11.5px/1.6 var(--font-ikeda); letter-spacing: 0.03em; color: var(--sumi-sub);
  background: var(--shironezumi-50); border-left: 3px solid var(--jimu-gray-500);
}
.i-notice .d-article__body { max-width: 640px; font-family: var(--font-ikeda); }
.i-notice .d-article__body :is(ul, ol) { margin: 0 0 14px; padding: 0 0 0 1.6em; font-size: 13px; line-height: 1.95; }
.i-notice .d-article__body ul { list-style-type: "・"; padding-left: 1.3em; }

.i-pasted .i-pasted__more { margin-top: 7px; padding-top: 6px; text-align: right; font-size: 11.5px; border-top: 1px dotted oklch(0.78 0 0); }
.i-policy { margin: 0 0 8px; padding: 7px 11px; font-size: 12px; line-height: 1.6; color: var(--sumi); background: #fff; border: 1px solid oklch(0.8 0 0); }

.i-dossier { max-width: 680px; margin: 22px 0 0; font: 13px/1.9 var(--font-ikeda); color: var(--sumi); }
.i-dossier:lang(en) { font-family: var(--font-agency-en); }
.i-dossier:lang(en) :lang(ja) { font-family: var(--font-ikeda); }

.i-dossier__case {
  display: table; margin: 0 0 10px; padding: 1px 11px 1px 8px;
  font-size: 11.5px; line-height: 1.6; letter-spacing: 0.03em; color: var(--sumi-sub);
  background: var(--shironezumi-50); border-left: 3px solid var(--jimu-gray-500);
}
.i-dossier__title { margin: 0; padding: 0 0 7px; font: bold 20px/1.4 var(--font-ikeda); letter-spacing: 0.02em; color: var(--sumi); border-bottom: 2px solid var(--sumi); }
.i-dossier__title span { display: block; margin-top: 3px; font: normal 12px/1.45 var(--font-agency-en); letter-spacing: 0.05em; color: var(--sumi-sub); }
.i-dossier:lang(en) .i-dossier__title { font-family: var(--font-agency-en); letter-spacing: 0; }
.i-dossier:lang(en) .i-dossier__title span { font: normal 13px/1.5 var(--font-ikeda); letter-spacing: 0.04em; }
.i-dossier .i-emotion { margin: 9px 0 1px; }
.i-dossier .i-dossier__issued { margin: 0 0 24px; font-size: 11px; line-height: 1.7; text-align: right; color: var(--sumi-sub); }

.i-dossier__essay p { margin: 0 0 1em; line-height: 1.95; }
.i-dossier__h { margin: 32px 0 10px; padding: 0 0 4px; font: bold 13.5px/1.5 var(--font-ikeda); color: var(--sumi); border-bottom: 1px solid var(--i-grid); }
.i-dossier:lang(en) .i-dossier__h { font-family: var(--font-agency-en); }
.i-dossier__h::before { content: ""; display: inline-block; width: 0.6em; height: 0.6em; margin: 0 0.45em 0.12em 0; vertical-align: middle; background: currentColor; }

.i-dossier__specs, .i-dossier__ledger, .i-dossier__history { width: 100%; border-collapse: collapse; font-size: 12px; line-height: 1.7; }
:is(.i-dossier__specs, .i-dossier__ledger, .i-dossier__history) :is(th, td) { padding: 4px 9px; text-align: left; vertical-align: top; border: 1px solid var(--i-grid); }
:is(.i-dossier__specs, .i-dossier__ledger, .i-dossier__history) th { font-weight: normal; background: var(--i-head); }
.i-dossier__specs th { width: 9.5em; white-space: nowrap; }
.i-dossier:lang(en) .i-dossier__specs th { width: 13em; white-space: normal; }
.i-dossier__ledger td:first-child { width: 3.4em; font: 11px/1.95 var(--font-dates); text-align: right; white-space: nowrap; }
.i-dossier__ledger td:nth-child(2) { letter-spacing: 0.04em; white-space: nowrap; }
.i-dossier__ledger td:nth-child(4) { color: var(--sumi-sub); }
.i-dossier__history th { width: 6.5em; white-space: nowrap; }
.i-dossier__history td:nth-child(2) { width: 6.5em; font: 11px/1.95 var(--font-dates); white-space: nowrap; }

.i-dossier__list { margin: 0; padding: 0; list-style: none; }
.i-dossier__list li { position: relative; margin: 0 0 5px; padding: 0 0 0 1.25em; line-height: 1.8; }
.i-dossier__list li::before { content: ""; position: absolute; left: 0.35em; top: 0.74em; width: 0.34em; height: 0.34em; background: var(--sumi-sub); }

.i-dossier__list--caution { padding: 10px 14px 6px; border: 1px solid var(--i-rule); border-top-width: 3px; }
.i-dossier__list--caution li::before { top: 0.67em; width: 0.46em; height: 0.46em; border-radius: 50%; background: var(--sumi); }

.i-dossier .i-dossier__small { margin: 5px 0 0; font-size: 11px; line-height: 1.7; color: var(--sumi-sub); }
.i-dossier .i-dossier__refs { margin: 0; font-size: 12.5px; }

.i-kessai { display: flex; flex-wrap: wrap; margin: 6px 0 0; padding: 1px 0 0 1px; }
.i-kessai__box {
  --tilt: -3deg; --press: 28% 26%;
  display: flex; flex-direction: column; align-items: center; box-sizing: border-box; width: 92px; margin: -1px 0 0 -1px;
  background: #fff; border: 1px solid var(--i-rule);
}
.i-kessai__box:nth-child(2n) { --tilt: 2deg; --press: 72% 34%; }
.i-kessai__box:nth-child(3n) { --tilt: -1deg; --press: 38% 74%; }
.i-kessai__box:nth-child(5n) { --tilt: 4deg; --press: 64% 68%; }

.i-kessai__dept {
  display: flex; align-items: center; justify-content: center; align-self: stretch; box-sizing: border-box; min-height: 34px;
  padding: 3px 2px 2px; font-size: 10px; line-height: 1.35; text-align: center; word-break: keep-all; overflow-wrap: anywhere;
  background: var(--i-head); border-bottom: 1px solid var(--i-rule);
}
.i-kessai__box:lang(en) { width: 100px; }
.i-kessai__box:lang(en) .i-kessai__dept { min-height: 4.4em; font: 10px/1.35 var(--font-agency-en); }
.i-kessai__seal {
  display: grid; place-items: center; box-sizing: border-box; width: 38px; height: 38px; margin: 8px 0 4px;
  font: 700 12.5px/1 var(--font-agency-heading); writing-mode: vertical-rl; text-orientation: upright; letter-spacing: 0.06em;
  color: var(--i-seal); border: 1.6px solid currentColor; border-radius: 50%;
  transform: rotate(var(--tilt)); opacity: 0.88;
  -webkit-mask-image: radial-gradient(130% 130% at var(--press), #000 42%, rgb(0 0 0 / var(--i-ink-edge)) 100%);
  mask-image: radial-gradient(130% 130% at var(--press), #000 42%, rgb(0 0 0 / var(--i-ink-edge)) 100%);
}
.i-kessai__state { margin: auto 0 3px; font-size: 9.5px; line-height: 1.3; color: var(--sumi-sub); }
.i-kessai__box:lang(en) .i-kessai__state { font-family: var(--font-agency-en); }

.i-dossier__listen a, .tuturigachi .i-dossier__listen a:visited {
  position: relative; display: inline-block; padding: 6px 14px 6px 28px; font-size: 12.5px; line-height: 1.5;
  color: var(--link); text-decoration: none; border: 1px solid oklch(0.68 0 0); border-radius: 2px;
  background: linear-gradient(#fff, oklch(0.94 0 0)); box-shadow: inset 0 1px 0 #fff;
}
.i-dossier__listen a::before { content: ""; position: absolute; left: 11px; top: 50%; margin-top: -5px; border: 5px solid transparent; border-left: 8px solid currentColor; border-right: 0; }
.i-dossier__listen a:hover { color: var(--link-hover); background: linear-gradient(#fff, oklch(0.96 0.012 95)); }
.i-dossier__listen a:focus-visible { outline: 2px solid var(--fukagawa-teal-700); outline-offset: 2px; }
.i-dossier .i-dossier__listen { margin: 0; }
.i-dossier .i-dossier__credit { margin: 24px 0 0; font-size: 11px; line-height: 1.7; color: var(--sumi-sub); }
.i-dossier__links { display: flex; flex-wrap: wrap; gap: 4px 24px; margin: 14px 0 0; padding: 10px 0 0; list-style: none; font-size: 12px; border-top: 1px dotted var(--i-grid); }

.i-cases { font: 13px/1.9 var(--font-ikeda); color: var(--sumi); }
.i-cases > p:not([class]) { max-width: 680px; margin: 0 0 12px; }
.i-cases__table { width: 100%; margin: 10px 0 8px; border-collapse: collapse; font-size: 12px; line-height: 1.65; }
.i-cases__table :is(th, td) { padding: 5px 9px; text-align: left; vertical-align: top; border: 1px solid var(--i-grid); }
.i-cases__table th { font-weight: normal; white-space: nowrap; background: var(--i-head); }
.i-cases__table td:first-child, .i-cases__table td:last-child { white-space: nowrap; }

.i-cases__table--cases td:nth-child(5), .i-cases__table--cases td:nth-child(6) { white-space: nowrap; }
.i-cases__table--cases td:last-child { min-width: 8.5em; white-space: normal; word-break: keep-all; letter-spacing: 0.03em; }
.i-trials td:nth-child(3) { white-space: nowrap; font-variant-numeric: tabular-nums; }
.i-cases .i-cases__more { margin: 18px 0 0; font-size: 12px; }

.i-trials__zero td { background: oklch(0.977 0.008 85); }
.i-trials__zero td:nth-child(2) { color: var(--sumi-sub); }
.i-trials__checked { display: block; margin-top: 2px; font-size: 10.5px; line-height: 1.6; }

.i-cases .i-trials__statement { margin: 38px 0 4px; font-size: 13.5px; line-height: 1.8; letter-spacing: 0.04em; color: var(--sumi); }
.i-trials__statement::before { content: ""; display: block; width: 28px; margin: 0 0 14px; border-top: 1px solid var(--jimu-gray-500); }

@media (max-width: 760px) {
  .t-fluid .i-dossier { margin-top: 12px; }
  .t-fluid .i-dossier__title { font-size: 18px; }
  .t-fluid .i-dossier .i-dossier__issued { text-align: left; }
  .t-fluid .i-dossier__specs, .t-fluid .i-dossier__specs :is(tbody, tr, th, td) { display: block; width: auto; }
  .t-fluid .i-dossier__specs th { white-space: normal; border-bottom: 0; }
  .t-fluid .i-dossier__specs tr + tr th { border-top: 0; }
  .t-fluid :is(.i-dossier__ledger, .i-dossier__history, .i-cases__table) { display: block; overflow-x: auto; }

  .t-fluid :is(.i-dossier__ledger, .i-cases__table) th, .t-fluid .i-dossier__ledger td:is(:nth-child(3), :nth-child(4)) { white-space: nowrap; }
  .t-fluid .i-dossier__ledger td:nth-child(5) { min-width: 11em; }
  .t-fluid .i-cases__table td { min-width: 4.5em; }
  .t-fluid .i-cases__table td:nth-child(2) { min-width: 11em; }
  .t-fluid .i-dossier__links a, .t-fluid .i-cases__more a { display: inline-block; padding: 6px 0; }
  .t-fluid .i-dossier__listen a { padding-top: 10px; padding-bottom: 10px; }
}

.i-org { position: relative; container: i-org / inline-size; }
.i-org > img { margin-bottom: calc(var(--org-ext, 0) * 100cqw / 690); }
.i-org__pastes {
  --px: calc(100cqw / 690);
  position: absolute; left: 1px; top: 1px; z-index: 1; width: 100%; aspect-ratio: 690 / 390;
  font: max(9px, calc(11 * var(--px)))/1.3 var(--font-agency-ja); color: var(--sumi);
}
.i-org__pastes::after {
  content: ""; position: absolute; z-index: -2; left: -1px; right: -1px; top: calc(100% + 1px);
  height: calc(var(--org-ext, 0) * var(--px));
  background: oklch(0.995 0.003 95); border: solid var(--jimu-gray-200); border-width: 0 1px min(1px, calc(var(--org-ext, 0) * 1px));
}
.i-org__paste {
  position: absolute; left: var(--x, 0); top: var(--y, 0); box-sizing: border-box;
  display: flex; align-items: center; justify-content: center; gap: 0 0.15em;
  width: calc(var(--w, 96) * var(--px)); height: calc(var(--h, 20) * var(--px));
  padding: 0 calc(4 * var(--px)); white-space: nowrap;
}
.i-org__paste::before { content: ""; position: absolute; z-index: -1; box-sizing: border-box; border: 0 solid oklch(0.42 0.012 240); }
.i-org__note { font-size: 0.86em; }

.i-org__paste--v1-reprint .i-org__name { display: flex; align-items: center; justify-content: center; box-sizing: border-box; width: 100%; height: 100%; }

.i-org__paste[data-parent="gengo"]::before {
  right: 100%; bottom: 50%; width: calc(15 * var(--px)); height: calc(var(--up, 30) * var(--px));
  border-left-width: 1px; border-bottom-width: 1px;
}

.i-org__paste--v1-label {
  --w: 84; --h: 18;
  font-weight: bold; letter-spacing: 0.08em; color: oklch(0.2 0 0);
  background: linear-gradient(#fff 55%, oklch(0.95 0 0)); border-radius: calc(1.5 * var(--px));
  box-shadow: 0 0 0 0.5px oklch(0.72 0 0), 0 1px 1.5px oklch(0 0 0 / 0.22);
}
.i-org__paste--v1-label::before { left: 100%; top: 50%; width: calc(10 * var(--px)); border-top-width: 1px; }

.i-org__paste--v1-excel {
  --w: 70; --h: 24; --g: oklch(0.8 0 0); --t: calc(3 * var(--px));
  justify-content: flex-start; padding: 0 0 0 calc(7 * var(--px)); font-family: var(--font-ikeda);
  background:
    linear-gradient(var(--g), var(--g)) 0 var(--t) / 100% 1px no-repeat,
    linear-gradient(var(--g), var(--g)) 0 calc(100% - var(--t)) / 100% 1px no-repeat,
    linear-gradient(var(--g), var(--g)) var(--t) 0 / 1px 100% no-repeat,
    linear-gradient(var(--g), var(--g)) calc(100% - var(--t)) 0 / 1px 100% no-repeat,
    #fff;
  box-shadow: 0 0.5px 1.5px oklch(0 0 0 / 0.2);
}
.i-org__paste--v1-excel::after, .i-org__paste--v1-excel .i-org__name::after {
  content: ""; position: absolute; width: calc(24 * var(--px)); height: calc(9 * var(--px));
  background: linear-gradient(oklch(0.985 0.03 95 / 0.55), oklch(0.95 0.03 95 / 0.42));
  box-shadow: 0 0 0 0.5px oklch(0.8 0.03 90 / 0.6);
}
.i-org__paste--v1-excel::after { left: calc(-8 * var(--px)); top: calc(-2 * var(--px)); transform: rotate(-30deg); }
.i-org__paste--v1-excel .i-org__name::after { right: calc(-8 * var(--px)); bottom: calc(-2 * var(--px)); transform: rotate(-30deg); }
.i-org__paste--v1-excel::before { left: calc(35 * var(--px)); bottom: 100%; height: calc(4 * var(--px)); border-left-width: 1px; }

.i-org__paste--v1-tape {
  --w: 88; --h: 20; --up: 64;
  font-family: var(--font-agency-heading); letter-spacing: 0.06em;
  background: oklch(0.985 0.01 92); box-shadow: 0 0.5px 1.5px oklch(0 0 0 / 0.2);
}
.i-org__paste--v1-tape::after, .i-org__paste--v1-tape .i-org__name::after {
  content: ""; position: absolute; top: calc(-4 * var(--px)); width: calc(16 * var(--px)); height: calc(8 * var(--px));
  background: oklch(0.97 0.004 100 / 0.66); box-shadow: 0 0 0 0.5px oklch(0.78 0 0 / 0.55);
}
.i-org__paste--v1-tape::after { left: calc(-6 * var(--px)); transform: rotate(-34deg); }
.i-org__paste--v1-tape .i-org__name::after { right: calc(-6 * var(--px)); transform: rotate(32deg); }

.i-org__paste--v1-reprint { --w: 84; --h: 20; --up: 30; padding: 0; }
.i-org__paste--v1-reprint .i-org__name {
  font-family: var(--font-agency-heading); letter-spacing: 0.1em; color: oklch(0.32 0.02 60);
  background: oklch(0.95 0.04 86); border: 1px solid oklch(0.48 0.035 65);
  clip-path: polygon(0.6% 5%, 99.4% 0, 100% 94%, 0 100%);
}
.i-org__paste--v1-reprint .i-org__note {
  position: absolute; left: calc(100% + 3 * var(--px)); top: calc(-6 * var(--px));
  font-size: 0.95em; letter-spacing: 0.04em; color: oklch(0.52 0.2 27); transform: rotate(-7deg);
}

@container i-org (max-width: 520px) {
  .i-org > img { margin-bottom: 0; }
  .i-org__pastes {
    --px: 1.1px;
    position: static; display: flex; flex-wrap: wrap; align-items: center; gap: 16px 18px;
    width: auto; aspect-ratio: auto; margin: 10px 0 0; padding: 16px 14px;
    background: oklch(0.995 0.003 95); border: 1px solid var(--jimu-gray-200);
  }
  .i-org__pastes::after, .i-org__paste::before { display: none; }
  .i-org__paste { position: relative; left: auto; top: auto; }
  .i-org__paste--v1-reprint { margin-right: 56px; }
}
