/* 简体中文のページだけの細かい直し（docs/多言語の決まり.md 4.・12.。tailwind のビルドは通さない＝手で書く・ml-pages-cn が持つ）
   2026-10-20 多言語化 段階3 */

/* 書体：Windows の SimSun は英数字が等幅で、本文の中の英字（Showa no Kodomotachi・Atelier Michiko Corporation）・数字が浮く。
   SimSun の前に EB Garamond（英語版で読み込み済みの Web フォント・漢字を持たない）を置き、英数字だけ Garamond で出す。
   Mac（Songti SC・STSong）は前に当たるので変わらない。漢字の字形は今までどおり中国の書体（日本の書体は置かない） */
html[lang="zh-Hans"] {
  --font-display: "Songti SC", "STSong", "EB Garamond", "SimSun", "Noto Serif SC", "Source Han Serif SC", serif;
  --font-body: "Songti SC", "STSong", "EB Garamond", "SimSun", "Noto Serif SC", "Source Han Serif SC", serif;
}

/* トップの言い切りの見出し（.vbox__ttl）：2つの文を1行ずつに（英語版は1行に流す形） */
html[lang="zh-Hans"] .vbox__line { display: block; }

/* ==== 英語のページだけに付いている組みの直し（style.css の html[lang=en] …）を简体中文にも当てる（2026-10-20 段階3）====
   style.css の英語の節には、横書きにしたときの組み（作品目録 .toc の並び・章の見出し .chap__head・詞 .poem の行間・
   トップの .cross__body の並び・下層の題 .phead.en-a〜d の組み・メニューの .nw など）が html[lang=en] だけで書いてある。
   简体中文でも同じ形が要る（1366px で .toc が右から左のまま崩れる等）ので、英語の指定を写した（[lang=ja] の添え書き→ [lang=en]）。
   書体（--font-display/--font-body の EB Garamond）と LP の帯の .en の書体は写さない。
   🔴 本来は共通の CSS（input.css/style.css）で html:not([lang="ja"]) に広げるもの＝ml-base に依頼中。広がったらこの節は消す */
@media (max-width:767px) {
  html[lang="zh-Hans"] .logo__sub {
    letter-spacing:.06em;
    font-size:12px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .logo__main {
    letter-spacing:.04em;
    font-size:clamp(18px,5.8vw,28px);
  }
}
html[lang="zh-Hans"] .hero__catch {
  letter-spacing:.005em;
  text-wrap:balance;
  max-width:7.6em;
  font-size:54px;
  line-height:1.12;
}
html[lang="zh-Hans"] .hero__sub {
  letter-spacing:.01em;
  text-wrap:balance;
  max-width:21em;
  margin-top:22px;
  font-size:22px;
  line-height:1.5;
}
html[lang="zh-Hans"] .hero__en {
  letter-spacing:.12em;
  margin-top:22px;
  font-size:18px;
}
html[lang="zh-Hans"] .hero__works {
  letter-spacing:.04em;
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .hero__tate {
    gap:8px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .hero__catch {
    line-height:1.12;
    white-space:normal!important;
    font-size:32px!important;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .hero__sub {
    max-width:18em;
    line-height:1.5;
    white-space:normal!important;
    font-size:16px!important;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .hero__en {
    letter-spacing:.1em;
    font-size:14px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .hero__works {
    letter-spacing:.02em;
    max-width:calc(100% - 182px);
    font-size:13px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .hero__works span {
    white-space:normal;
    align-self:end;
    line-height:1.35;
  }
}
html[lang="zh-Hans"] .vbox__line {
  text-wrap:balance;
  display:block;
}
html[lang="zh-Hans"] .vbox__head {
  align-items:flex-start;
  gap:22px;
}
html[lang="zh-Hans"] .vbox__en {
  text-align:left;
  letter-spacing:.1em;
  font-size:16px;
  line-height:1.9;
}
html[lang="zh-Hans"] .vbox__text p+p {
  margin:1.1em 0 0;
}
@media (min-width:921px) {
  html[lang="zh-Hans"] .vbox__head {
    flex:0 0 400px;
  }
}
@media (min-width:921px) {
  html[lang="zh-Hans"] .vbox__ttl {
    letter-spacing:.005em;
    font-size:36px;
    line-height:1.3;
  }
}
@media (min-width:921px) {
  html[lang="zh-Hans"] .vbox__text {
    letter-spacing:.01em;
    width:540px;
    font-size:20px;
    line-height:1.75;
  }
}
@media (max-width:920px) {
  html[lang="zh-Hans"] .vbox__ttl {
    letter-spacing:.005em;
    font-size:28px;
    line-height:1.3;
  }
}
@media (max-width:920px) {
  html[lang="zh-Hans"] .vbox__text {
    letter-spacing:.01em;
    line-height:1.75;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .vbox__ttl {
    white-space:normal!important;
    font-size:25px!important;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .vbox__text,html[lang="zh-Hans"] .vbox__text p {
    white-space:normal!important;
    font-size:15.5px!important;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .vbox__text {
    margin-top:32px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .vbox__en {
    font-size:15px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .vbox__en br {
    display:inline;
  }
}
html[lang="zh-Hans"] .cross__label .jp {
  letter-spacing:.04em;
}
html[lang="zh-Hans"] .cross__label .en {
  letter-spacing:.1em;
  font-size:15px;
}
html[lang="zh-Hans"] .cross__catch {
  letter-spacing:.005em;
  text-wrap:balance;
  line-height:1.25;
}
html[lang="zh-Hans"] .cross__text {
  letter-spacing:.01em;
  line-height:1.75;
}
html[lang="zh-Hans"] .cross__text p+p {
  margin:.9em 0 0;
}
@media (min-width:1200px) {
  html[lang="zh-Hans"] .cross__body {
    flex-direction:column;
    align-items:flex-start;
    gap:28px;
    width:600px;
  }
}
@media (min-width:1200px) {
  html[lang="zh-Hans"] .cross__sec:nth-child(2n) .cross__body {
    justify-content:flex-start;
  }
}
@media (min-width:1200px) {
  html[lang="zh-Hans"] .cross__head {
    align-items:flex-start;
    gap:18px;
  }
}
@media (min-width:1200px) {
  html[lang="zh-Hans"] .cross__label {
    flex-direction:row;
    align-items:baseline;
    gap:14px;
  }
}
@media (min-width:1200px) {
  html[lang="zh-Hans"] .cross__catch {
    max-width:15em;
    font-size:36px;
  }
}
@media (min-width:1200px) {
  html[lang="zh-Hans"] .cross__text {
    max-width:32em;
    padding-top:0;
    font-size:19px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .cross__catch {
    white-space:normal!important;
    font-size:25px!important;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .cross__text,html[lang="zh-Hans"] .cross__text p {
    white-space:normal!important;
    font-size:15.5px!important;
  }
}
html[lang="zh-Hans"] .has-hero .card__ttl {
  letter-spacing:.02em;
  text-wrap:balance;
}
html[lang="zh-Hans"] .has-hero .card__sub[lang=en] {
  letter-spacing:.08em;
  margin-top:8px;
  font-size:16px;
  line-height:1.5;
}
html[lang="zh-Hans"] .has-hero .vttl__en[lang=en] {
  letter-spacing:.1em;
  font-size:16px;
}
html[lang="zh-Hans"] .cta__catch {
  letter-spacing:.005em;
  text-wrap:balance;
  max-width:10em;
  line-height:1.3;
}
@media (max-width:767px) {
  html[lang="zh-Hans"] .cta__catch {
    max-width:none;
    white-space:normal!important;
    font-size:24px!important;
  }
}
html[lang="zh-Hans"] main:has(.phead.en-a) :is(.intro__catch,.crumb,.sec__lead,.gal figcaption b) {
  letter-spacing:.01em;
}
html[lang="zh-Hans"] main:has(.phead.en-a) .intro__catch {
  text-wrap:balance;
  max-width:30em;
  line-height:1.45;
}
html[lang="zh-Hans"] main:has(.phead.en-a) .intro__text,html[lang="zh-Hans"] main:has(.phead.en-a) .sec__lead {
  line-height:1.85;
}
html[lang="zh-Hans"] main:has(.phead.en-a) .sec__ttl .en {
  letter-spacing:.08em;
  font-size:16px;
}
@media (max-width:767px) {
  html[lang="zh-Hans"] main:has(.phead.en-a) .intro__catch {
    white-space:normal!important;
    font-size:22px!important;
  }
}
html[lang="zh-Hans"] .poem__ttl {
  letter-spacing:.04em;
}
html[lang="zh-Hans"] .poem__body {
  letter-spacing:.01em;
  line-height:1.8;
}
html[lang="zh-Hans"] .poem__ttl+.poem__body {
  margin:22px 0 0;
}
html[lang="zh-Hans"] .poem__body p+p {
  margin:1.3em 0 0;
}
html[lang="zh-Hans"] .poem__body p.is-wide {
  margin:2.4em 0 0;
}
@media (min-width:1280px) {
  html[lang="zh-Hans"] .poem__ttl {
    font-size:26px;
  }
}
@media (min-width:1280px) {
  html[lang="zh-Hans"] .poem__body {
    font-size:19px;
  }
}
html[lang="zh-Hans"] .chap__ttl {
  letter-spacing:.02em;
  order:-1;
}
html[lang="zh-Hans"] .chap__no {
  letter-spacing:.1em;
  font-size:16px;
}
html[lang="zh-Hans"] .chap__lead {
  letter-spacing:.01em;
  line-height:1.7;
}
@media (min-width:768px) {
  html[lang="zh-Hans"] .chap__head {
    flex:0 0 210px;
    align-items:flex-start;
    gap:12px;
  }
}
@media (min-width:768px) {
  html[lang="zh-Hans"] .chap__ttl {
    font-size:34px;
  }
}
@media (min-width:768px) {
  html[lang="zh-Hans"] .chap__lead {
    text-wrap:balance;
    margin-top:8px;
    font-size:18px;
  }
}
html[lang="zh-Hans"] .gal figcaption b {
  line-height:1.4;
}
html[lang="zh-Hans"] .gal__text {
  line-height:1.7;
}
@media (min-width:768px) {
  html[lang="zh-Hans"] .toc ol {
    direction:ltr;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0 32px;
  }
}
@media (min-width:768px) {
  html[lang="zh-Hans"] .toc li {
    border-bottom:1px dotted var(--color-line);
    letter-spacing:.01em;
    justify-self:stretch;
    padding:10px 0;
    font-size:18px;
    line-height:1.5;
  }
}
@media (min-width:768px) {
  html[lang="zh-Hans"] .toc li small {
    margin:2px 0 0;
    font-size:15px;
    display:block;
  }
}
html[lang="zh-Hans"] main:has(.phead.en-b) :is(.intro__catch,.intro__sub,.duo__ttl,.duo__meta,.scene__kicker,.scene__ttl,.scene__meta,.essay__ttl,.essay__sub,.flow__ttl,.scope th,.ng__ttl,.tbl dt,.figs dt,.figs dd,.tanka,.letter__body,.letter__sign,.crumb,.sec__lead) {
  letter-spacing:.01em;
}
html[lang="zh-Hans"] main:has(.phead.en-b) :is(.intro__catch,.duo__ttl,.scene__ttl,.essay__ttl,.tanka) {
  text-wrap:balance;
}
html[lang="zh-Hans"] main:has(.phead.en-b) .sec__ttl .en,html[lang="zh-Hans"] main:has(.phead.en-b) .letter__ttl .en {
  letter-spacing:.08em;
  font-size:16px;
}
html[lang="zh-Hans"] .tanka-ro {
  color:var(--color-mute);
  letter-spacing:.01em;
  text-wrap:balance;
  margin-top:12px;
  font-size:16.5px;
  font-style:italic;
  line-height:1.8;
}
html[lang="zh-Hans"] main:has(.phead.en-c) :is(.intro__catch,.plan-sec__ttl,.plan-sec__catch,.plan-nav__ttl,.points b,.sub,.tbl dt,.flow__ttl,.faq summary,.gal figcaption b,.callout__ttl,.parts .t,.patterns h3,.tags li,.case__place,.case__ttl,.crumb,.sec__lead,.btn,.view-btn a) {
  letter-spacing:.01em;
}
html[lang="zh-Hans"] main:has(.phead.en-c) :is(.intro__catch,.plan-sec__catch,.callout__ttl,.patterns h3,.case__ttl) {
  text-wrap:balance;
}
html[lang="zh-Hans"] main:has(.phead.en-c) .intro__catch {
  max-width:30em;
  line-height:1.45;
}
html[lang="zh-Hans"] main:has(.phead.en-c) .plan-sec__catch {
  max-width:32em;
  line-height:1.5;
}
html[lang="zh-Hans"] main:has(.phead.en-c) :is(.sec__ttl .en,.plan-sec__en) {
  letter-spacing:.08em;
  font-size:16px;
}
html[lang="zh-Hans"] main:has(.phead.en-c) .points b small {
  letter-spacing:.06em;
  font-size:15px;
}
html[lang="zh-Hans"] main:has(.phead.en-c) .btn .en[lang=en] {
  letter-spacing:.06em;
}
html[lang="zh-Hans"] main:has(.phead.en-c) .gal figcaption b {
  line-height:1.4;
}
html[lang="zh-Hans"] main:has(.phead.en-c) .sec__lead+.gal {
  margin-top:28px;
}
html[lang="zh-Hans"] main:has(.phead.en-c) .now__facts dt {
  flex-basis:6.2em;
}
@media (min-width:768px) {
  html[lang="zh-Hans"] main:has(.phead.en-c) .parts li {
    padding:26px 10px 22px;
  }
}
@media (min-width:768px) {
  html[lang="zh-Hans"] main:has(.phead.en-c) .parts .t {
    text-align:center;
    text-wrap:balance;
    min-height:3.9em;
    font-size:19px;
    line-height:1.3;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] main:has(.phead.en-c) .intro__catch {
    white-space:normal!important;
    font-size:22px!important;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] main:has(.phead.en-c) .plan-sec__catch {
    font-size:20px;
  }
}
@media (max-width:767px) {
  html[lang="zh-Hans"] main:has(.phead.en-c) .parts .t {
    letter-spacing:.01em;
    font-size:17px;
    line-height:1.35;
  }
}
html[lang="zh-Hans"] main:has(.phead.en-d) :is(.intro__catch,.item__ttl,.item__price,.ws-items h3,.essay__ttl,.flow__ttl,.tbl dt,.item dt,.crumb,.sec__lead,.sub,.tags li) {
  letter-spacing:.01em;
}
html[lang="zh-Hans"] main:has(.phead.en-d) :is(.intro__catch,.item__ttl,.ws-items h3,.essay__ttl) {
  text-wrap:balance;
}
html[lang="zh-Hans"] main:has(.phead.en-d) .sec__ttl .en {
  letter-spacing:.08em;
  font-size:16px;
}
html[lang="zh-Hans"] .lp-row__ttl {
  letter-spacing:.04em;
}
html[lang="zh-Hans"] .lp-row__name,html[lang="zh-Hans"] .lp-row__note {
  letter-spacing:0;
}

/* お問い合わせの帯（Showa/cta）：見出し「联系我们」を2行に割らない（1366px で縦に割れた） */
html[lang="zh-Hans"] .cta .vttl__jp { white-space: nowrap; }

/* ==== 320/390/1366px のスクリーンショットで見つけた崩れの直し（2026-10-20 段階3） ==== */
/* 語のまとまり（テンプレートで <span class="cn-seg"> に分けた所）の中では折らない＝まとまりの間だけで折る
   - トップのヒーローの題：「“哭过、笑／过”的每一天」と語の中で折れた → 「“哭过、笑过”／的每一天」
   - 昭和博の七つのテーマ：「技艺·巧／思·智慧」→「技艺·／巧思·智慧」（PC の箱）・「生活与自／然」→「生活与／自然」（320px）
   - 人偶展示・照片展板のキャッチ（320px）：「将陆续来到您的机／构。」「令人放松的空／间。」→ 読点・句の間で折る
   - 関連商品・明信片の値段（320px）：「1,000日元（含／税）」・授权の一覧（320px）：「纪念广／告」「廉价促／销」
   - 作品の題に添えた日本語の題（390px）：「（紙芝／居）」「（三輪／車）」と日本語の語の中で折れた → 括弧ごとひとまとまり（長い題は1行に入らないときだけ中で折る） */
html[lang="zh-Hans"] .cn-seg { display: inline-block; }
/* トップ「致企业与经营者」の2列のカードのボタン「了解详情（日语）」：390px で「（日／语）」と括弧の中で折れた
   ＝字間を詰め、折るときは括弧の前で（「了解详情／（日语）」。keep-all＝漢字の間では折らない） */
@media (max-width: 767px) {
  html[lang="zh-Hans"] .biz .card .more { gap: 8px; padding-left: 12px; padding-right: 10px; letter-spacing: 0.02em; word-break: keep-all; }
}
/* 段落の最後の行の1字（「念”。」など）は直さない：共通の CSS（input.css 1542〜・1576〜）が iOS 26 の WebKit の不具合で
   text-wrap: pretty を外している（2026-10-05 石井さん）。中国語だけ戻すと同じ不具合が出るため */
