
/* ---------- 基本（.taya-paisley の中だけ） ---------- */
.taya-paisley {
  --pz-ink: #2b2a28;
  --pz-sub: #6b6862;
  --pz-gold: #a7945f;
  --pz-gold-ink: #7d6b3c;
  --pz-paper: #faf8f3;
  --pz-white: #ffffff;
  --pz-line: #e3ded2;
  --pz-mincho: "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", serif;
  --pz-en: "Times New Roman", Times, "Yu Mincho", "Hiragino Mincho ProN", serif;
  --pz-header: 97px; /* PCの固定ヘッダーの高さ */
  font-family: var(--pz-mincho);
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.04em;
  color: var(--pz-ink);
  background: var(--pz-white);
  overflow-x: clip;
}
/* PC：固定ヘッダーの高さ分だけページ全体を下げる */
@media (min-width: 769px) {
  .taya-paisley { margin-top: var(--pz-header); }
  /* 仮ヘッダーが自身で高さを確保するプレビューでは二重に空けない */
  #mercart-shared-header + .taya-paisley { margin-top: 0; }
}
@media (max-width: 768px) {
  .taya-paisley { --pz-header: 0px; font-size: 15px; }
}
.taya-paisley *, .taya-paisley *::before, .taya-paisley *::after { box-sizing: border-box; }
.taya-paisley img { max-width: 100%; height: auto; display: block; }
.taya-paisley a { color: inherit; }
.taya-paisley [id] { scroll-margin-top: calc(var(--pz-header) + 24px); }
.taya-paisley :focus-visible { outline: 2px solid var(--pz-gold-ink); outline-offset: 3px; }
/* サイト共通CSSが見出し・段落に付ける飾りを打ち消す */
.taya-paisley h1, .taya-paisley h2, .taya-paisley h3 { background: none; padding: 0; margin: 0; border: 0; text-align: inherit; font-weight: 500; color: inherit; line-height: 1.6; letter-spacing: inherit; }
.taya-paisley h1::before, .taya-paisley h1::after, .taya-paisley h2::before, .taya-paisley h2::after, .taya-paisley h3::before, .taya-paisley h3::after { content: none; }
.taya-paisley p { margin: 0; }
.taya-paisley ul, .taya-paisley ol { margin: 0; padding: 0; list-style: none; }
.taya-paisley button { font: inherit; color: inherit; }
.taya-paisley .pz-wrap { max-width: 1000px; margin: 0 auto; padding: 0 40px; }
@media (max-width: 768px) { .taya-paisley .pz-wrap { padding: 0 20px; } }
.taya-paisley .pz-en { display: block; margin-top: 6px; font-family: var(--pz-en); font-size: 13px; letter-spacing: 0.18em; color: var(--pz-gold); font-weight: 400; }
/* 文節の途中で改行しない（JavaScriptで区切り目に <wbr> を入れる） */
.taya-paisley .pz-phrase { word-break: keep-all; overflow-wrap: anywhere; line-break: strict; }

/* ---------- いつもの丸いボタン ---------- */
.taya-paisley .pz-btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 240px; max-width: 100%; height: 50px; padding: 0 32px;
  border: 1px solid var(--pz-gold); border-radius: 999px; background: var(--pz-white);
  font-family: var(--pz-en); font-size: 14px; letter-spacing: 0.08em; color: var(--pz-ink);
  text-decoration: none; transition: background-color 0.3s ease, color 0.3s ease;
}
.taya-paisley .pz-btn:hover { background: var(--pz-gold); color: var(--pz-white); }
.taya-paisley .pz-btn.is-soldout, .taya-paisley .pz-btn.is-soldout:hover { border-color: #ccc; background: #f4f4f4; color: #999; cursor: default; letter-spacing: 0.12em; }

/* ---------- トップ：5つの時代を右から左へ ---------- */
.taya-paisley .pz-hero { position: relative; isolation: isolate; overflow: hidden; background: #241f35; }
.taya-paisley .pz-hero__media img { width: 100%; height: 700px; min-height: 620px; object-fit: cover; opacity: 0.28; }
.taya-paisley .pz-hero::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: linear-gradient(90deg, rgba(25,19,37,0.65), rgba(25,19,37,0.1)); }
.taya-paisley .pz-hero__body { position: absolute; top: 0; bottom: 0; left: max(4%, calc((100% - 1200px) / 2)); width: 43%; max-width: 520px; z-index: 2; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: #fff; padding: 0 12px 50px; text-shadow: 0 2px 20px rgba(0,0,0,0.6); }
.taya-paisley .pz-hero__en { font-family: var(--pz-en); font-size: 14px; letter-spacing: 0.4em; }
.taya-paisley .pz-hero__title { margin-top: 14px; font-size: clamp(30px, 3.6vw, 48px); letter-spacing: 0.12em; line-height: 1.5; }
.taya-paisley .pz-hero__copy { margin-top: 22px; font-size: clamp(12px, 1.2vw, 16px); letter-spacing: 0.06em; line-height: 2; }
.taya-paisley .pz-journey { position: absolute; z-index: 1; top: 0; bottom: 0; right: max(3%, calc((100% - 1200px) / 2)); width: 48%; max-width: 600px; color: #fff; }
.taya-paisley .pz-journey__stage { position: absolute; inset: 36px -12px 130px; overflow: hidden; }
.taya-paisley .pz-journey__slide { position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; transform: translateX(65%); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 18px; padding: 8px 24px; }
.taya-paisley .pz-journey__link { display: flex; flex-direction: column; align-items: center; gap: 12px; width: 100%; color: inherit; text-decoration: none; }
.taya-paisley .pz-journey__read { font-size: 11px; line-height: 1.5; letter-spacing: 0.08em; text-decoration: underline; text-underline-offset: 4px; }
.taya-paisley .pz-journey__link:hover .pz-journey__read { color: #e3d6af; }
.taya-paisley .pz-journey__slide { pointer-events: none; }
.taya-paisley .pz-journey__slide.is-active { pointer-events: auto; }
.taya-paisley .pz-journey__slide.is-active { opacity: 1; visibility: visible; transform: translateX(0); }
.taya-paisley .pz-journey__slide.is-leaving { opacity: 0; visibility: visible; transform: translateX(-65%); }
.taya-paisley .pz-journey__art { display: flex; align-items: center; justify-content: center; width: min(100%, 340px); height: auto; aspect-ratio: 1 / 1; flex-shrink: 0; padding: 0; background: #fff; box-shadow: 0 12px 28px rgba(0,0,0,0.25); }
.taya-paisley .pz-journey__art img { display: block; width: 100%; height: 100%; max-height: 100%; object-fit: contain; }
.taya-paisley .pz-journey__caption { text-align: center; text-shadow: 0 2px 10px rgba(0,0,0,0.6); }
.taya-paisley .pz-journey__period { display: block; font-family: var(--pz-en); font-size: 24px; letter-spacing: 0.08em; line-height: 1.5; }
.taya-paisley .pz-journey__name { display: block; margin-top: 5px; font-size: 18px; letter-spacing: 0.12em; }
.taya-paisley .pz-journey__source { display: block; margin-top: 8px; font-size: 10px; letter-spacing: 0.02em; opacity: 0.75; }
.taya-paisley .pz-journey__nav { position: absolute; left: 10px; right: 10px; bottom: 66px; display: flex; justify-content: center; gap: 10px; }
.taya-paisley .pz-journey__step { display: grid; place-items: center; width: 42px; min-height: 42px; padding: 0; border: 1px solid rgba(255,255,255,0.4); border-radius: 50%; background: transparent; color: #fff; font-family: var(--pz-en); font-size: 13px; cursor: pointer; }
.taya-paisley .pz-journey__step[aria-pressed="true"] { background: #fff; color: #302638; border-color: #fff; }
.taya-paisley .pz-journey__toggle { position: absolute; right: 12px; bottom: 22px; min-height: 32px; padding: 2px 8px; border: 0; background: transparent; color: rgba(255,255,255,0.85); font-size: 11px; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.taya-paisley .pz-hero__credit { position: absolute; left: 20px; bottom: 18px; z-index: 3; max-width: 50%; color: rgba(255,255,255,0.65); font-size: 9px; line-height: 1.7; }
@media (prefers-reduced-motion: no-preference) {
  .taya-paisley .pz-journey__slide { transition: opacity 0.85s ease, transform 0.85s cubic-bezier(0.2,0.7,0.3,1), visibility 0.85s; }
}
@media (max-width: 768px) {
  .taya-paisley .pz-hero__media img { height: 820px; min-height: 820px; }
  .taya-paisley .pz-hero__body { top: 24px; bottom: auto; left: 0; width: 100%; max-width: none; height: 230px; padding: 0 20px; }
  .taya-paisley .pz-hero__title { font-size: 32px; margin-top: 8px; }
  .taya-paisley .pz-hero__en { font-size: 12px; }
  .taya-paisley .pz-hero__copy { font-size: 12px; margin-top: 12px; }
  .taya-paisley .pz-journey { top: 260px; bottom: 40px; right: 0; width: 100%; max-width: none; }
  .taya-paisley .pz-journey__stage { inset: 0 0 90px; }
  .taya-paisley .pz-journey__slide { gap: 12px; padding: 8px 28px; }
  .taya-paisley .pz-journey__art { width: min(100%, 265px); }
  .taya-paisley .pz-journey__period { font-size: 21px; }
  .taya-paisley .pz-journey__name { font-size: 16px; }
  .taya-paisley .pz-journey__source { font-size: 9px; }
  .taya-paisley .pz-journey__nav { bottom: 42px; gap: 12px; }
  .taya-paisley .pz-journey__toggle { bottom: 2px; right: 18px; }
  .taya-paisley .pz-hero__credit { bottom: 12px; left: 16px; right: 16px; max-width: none; text-align: center; font-size: 8px; }
}

/* ---------- はじめに・目次 ---------- */
.taya-paisley .pz-intro { padding: 88px 0 64px; text-align: center; }
.taya-paisley .pz-intro__lead { font-size: clamp(19px, 2.2vw, 24px); line-height: 2; letter-spacing: 0.1em; }
.taya-paisley .pz-intro__text { max-width: 680px; margin: 28px auto 0; text-align: left; color: var(--pz-ink); }
.taya-paisley .pz-toc { max-width: 560px; margin: 48px auto 0; padding: 28px 32px; border-top: 1px solid var(--pz-gold); border-bottom: 1px solid var(--pz-gold); text-align: left; }
.taya-paisley .pz-toc__title { text-align: center; font-family: var(--pz-en); font-size: 13px; letter-spacing: 0.3em; color: var(--pz-gold); margin-bottom: 12px; }
.taya-paisley .pz-toc li + li { border-top: 1px dotted var(--pz-line); }
.taya-paisley .pz-toc a { display: flex; gap: 16px; align-items: baseline; padding: 10px 4px; text-decoration: none; transition: color 0.2s; }
.taya-paisley .pz-toc a:hover { color: var(--pz-gold-ink); }
.taya-paisley .pz-toc__num { flex: 0 0 40px; font-family: var(--pz-en); font-size: 13px; color: var(--pz-gold); letter-spacing: 0.08em; }
@media (max-width: 768px) {
  .taya-paisley .pz-intro { padding: 56px 0 40px; }
  .taya-paisley .pz-toc { padding: 20px 8px; }
}

/* ---------- 年表 ---------- */
.taya-paisley .pz-timeline { padding: 56px 0 72px; background: var(--pz-paper); }
.taya-paisley .pz-section-title { text-align: center; font-size: clamp(22px, 2.4vw, 28px); letter-spacing: 0.14em; margin-bottom: 36px; }
.taya-paisley .pz-tl { max-width: 720px; margin: 0 auto; position: relative; }
.taya-paisley .pz-tl::before { content: ""; position: absolute; top: 8px; bottom: 8px; left: 128px; width: 1px; background: var(--pz-gold); }
.taya-paisley .pz-tl__row { display: grid; grid-template-columns: 128px 1fr; gap: 0 32px; padding: 10px 0; position: relative; }
.taya-paisley .pz-tl__row::before { content: ""; position: absolute; left: 124px; top: 21px; width: 9px; height: 9px; border-radius: 50%; background: var(--pz-white); border: 1px solid var(--pz-gold); }
.taya-paisley .pz-tl dt { text-align: right; padding-right: 24px; font-family: var(--pz-en); color: var(--pz-gold-ink); letter-spacing: 0.06em; }
.taya-paisley .pz-tl dd { margin: 0; font-size: 15px; }
@media (max-width: 768px) {
  .taya-paisley .pz-tl::before { left: 6px; }
  .taya-paisley .pz-tl__row { grid-template-columns: 1fr; padding: 8px 0 8px 28px; }
  .taya-paisley .pz-tl__row::before { left: 2px; top: 17px; }
  .taya-paisley .pz-tl dt { text-align: left; padding-right: 0; font-size: 14px; }
  .taya-paisley .pz-tl dd { font-size: 14px; line-height: 1.8; }
}

/* ---------- 歴史の章 ---------- */
.taya-paisley .pz-story { padding: 96px 0 48px; }
.taya-paisley .pz-story__inner { max-width: 760px; }
.taya-paisley .pz-story__num { font-family: var(--pz-en); font-size: 56px; line-height: 1; color: var(--pz-gold); opacity: 0.5; text-align: center; letter-spacing: 0.06em; }
.taya-paisley .pz-story__title { margin-top: 12px; text-align: center; font-size: clamp(22px, 2.6vw, 30px); letter-spacing: 0.12em; }
.taya-paisley .pz-story__text { margin-top: 36px; }
.taya-paisley .pz-story__text p + p { margin-top: 1.4em; }
@media (max-width: 768px) {
  .taya-paisley .pz-story { padding: 64px 0 32px; }
  .taya-paisley .pz-story__num { font-size: 44px; }
  .taya-paisley .pz-story__text { margin-top: 24px; }
}

/* ---------- 各章の番号と見出しを横並びに ---------- */
.taya-paisley .pz-story__heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; column-gap: 24px; }
.taya-paisley .pz-story__heading .pz-story__num { flex: 0 0 auto; }
.taya-paisley .pz-story__heading .pz-story__title { flex: 0 1 auto; min-width: 0; max-width: calc(100% - 100px); margin-top: 0; text-align: left; }
/* 英文は番号と見出しの下段、中央に */
.taya-paisley .pz-story__heading .pz-story__en { flex: 0 0 100%; margin-top: 12px; text-align: center; }
@media (max-width: 768px) {
  .taya-paisley .pz-story__heading { column-gap: 16px; }
  .taya-paisley .pz-story__heading .pz-story__title { max-width: calc(100% - 76px); font-size: clamp(19px, 5vw, 24px); }
}

/* ---------- 歴史の案内・装い ---------- */
.taya-paisley .pz-about { padding-top: 24px; padding-bottom: 72px; }
.taya-paisley .pz-story__period { margin-top: 16px; text-align: center; color: var(--pz-sub); font-size: 13px; letter-spacing: 0.06em; }
.taya-paisley .pz-timeline__note { max-width: 720px; margin: 28px auto 0; color: var(--pz-sub); font-size: 13px; line-height: 1.9; }
@media (max-width: 768px) {
  .taya-paisley .pz-about { padding-top: 16px; padding-bottom: 48px; }
  }

/* ---------- 資料画像 ---------- */
.taya-paisley .pz-fig { margin: 48px 0 0; }
.taya-paisley .pz-fig__media { display: flex; align-items: center; justify-content: center; padding: 28px; background: transparent; }
.taya-paisley .pz-fig__media img { width: auto; max-height: 560px; }
.taya-paisley .pz-fig figcaption { margin-top: 12px; font-size: 13px; line-height: 1.8; color: var(--pz-sub); }
.taya-paisley .pz-fig__label { display: inline-block; margin-right: 10px; padding: 0 8px; border: 1px solid var(--pz-gold); font-size: 11px; line-height: 1.8; letter-spacing: 0.1em; color: var(--pz-gold-ink); vertical-align: 1px; }
.taya-paisley .pz-fig__credit { display: block; margin-top: 2px; font-size: 11px; }
.taya-paisley .pz-fig__credit a { color: inherit; text-underline-offset: 3px; }
.taya-paisley .pz-figs { display: grid; grid-template-columns: 1fr 1fr; gap: 0 24px; margin-top: 48px; }
.taya-paisley .pz-figs .pz-fig { margin: 0; display: flex; flex-direction: column; }
.taya-paisley .pz-figs .pz-fig__media { position: relative; aspect-ratio: 1 / 1; padding: 0; }
.taya-paisley .pz-figs .pz-fig__media img { position: absolute; top: 20px; left: 20px; width: calc(100% - 40px); height: calc(100% - 40px); max-height: none; object-fit: contain; }
@media (max-width: 768px) {
  .taya-paisley .pz-fig { margin-top: 32px; }
  .taya-paisley .pz-fig__media { padding: 16px; }
  .taya-paisley .pz-fig__media img { max-height: 70vh; }
  .taya-paisley .pz-figs { grid-template-columns: 1fr; gap: 32px; margin-top: 32px; }
  .taya-paisley .pz-figs .pz-fig__media img { top: 16px; left: 16px; width: calc(100% - 32px); height: calc(100% - 32px); }
}

/* ササン朝の細長い全体写真と部分写真を同じ高さで見せる */
.taya-paisley .pz-figs--sassanian .pz-fig__media { aspect-ratio: auto; height: 520px; }
@media (max-width: 768px) {
  .taya-paisley .pz-figs--sassanian .pz-fig__media { height: 480px; }
}

.taya-paisley .pz-figs--safavid, .taya-paisley .pz-figs--europe { row-gap: 40px; }

/* 第3章：横長のパネルは全幅、部分写真は幅を抑え、赤いショールはペアで比較 */
.taya-paisley .pz-kashmir-panel { margin-top: 48px; }
.taya-paisley .pz-kashmir-panel .pz-fig { margin-top: 0; }
.taya-paisley .pz-kashmir-panel .pz-fig__media { padding: 0; }
.taya-paisley .pz-kashmir-panel .pz-fig__media img { width: 100%; max-height: none; }
.taya-paisley .pz-kashmir-panel .pz-kashmir-panel__detail { max-width: 600px; margin: 32px auto 0; }
.taya-paisley .pz-figs--kashmir { margin-top: 56px; align-items: start; }
.taya-paisley .pz-figs--kashmir .pz-fig__media { aspect-ratio: auto; height: 460px; }
.taya-paisley .pz-figs--kashmir .pz-fig__media img { top: 0; left: 0; width: 100%; height: 100%; }
@media (max-width: 768px) {
  .taya-paisley .pz-kashmir-panel { margin-top: 32px; }
  .taya-paisley .pz-kashmir-panel .pz-kashmir-panel__detail { margin-top: 24px; }
  .taya-paisley .pz-figs--kashmir { margin-top: 40px; }
  .taya-paisley .pz-figs--kashmir .pz-fig__media { height: auto; aspect-ratio: auto; }
  .taya-paisley .pz-figs.pz-figs--kashmir .pz-zoom-trigger { position: relative; inset: auto; height: auto; }
  .taya-paisley .pz-figs--kashmir .pz-fig__media img { position: static; width: 100%; height: auto; max-height: 70vh; }
}

/* 写真と対応する本文を章の途中に挟む */
.taya-paisley .pz-story__text.pz-story__text--continuation { margin-top: 56px; }
.taya-paisley .pz-story__text--continuation + .pz-figs { margin-top: 32px; }
.taya-paisley .pz-europe-single { max-width: 760px; margin: 32px auto 0; }
.taya-paisley .pz-europe-single--portrait { max-width: 600px; }
@media (max-width: 768px) {
  .taya-paisley .pz-story__text.pz-story__text--continuation { margin-top: 40px; }
  .taya-paisley .pz-story__text--continuation + .pz-figs { margin-top: 24px; }
  .taya-paisley .pz-europe-single { margin-top: 24px; }
}

/* ---------- 資料画像の拡大表示 ---------- */
.taya-paisley .pz-zoom-trigger { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; border: 0; border-radius: 0; padding: 0; background: transparent; cursor: zoom-in; }
.taya-paisley .pz-zoom-trigger::after { content: "＋"; position: absolute; right: 8px; bottom: 8px; display: grid; place-items: center; width: 30px; height: 30px; border: 1px solid #aaa; border-radius: 50%; background: rgba(0,0,0,0.7); color: #fff; font-family: sans-serif; font-size: 20px; line-height: 1; }
.taya-paisley .pz-figs .pz-zoom-trigger { position: absolute; inset: 0; height: 100%; }
.taya-paisley .pz-lightbox { width: calc(100vw - 32px); max-width: 1400px; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 64px 28px 24px; border: 1px solid #333; border-radius: 0; background: #000; color: #fff; overflow: auto; overscroll-behavior: contain; }
.taya-paisley .pz-lightbox::backdrop { background: rgba(0, 0, 0, 0.92); }
.taya-paisley .pz-lightbox__close { position: absolute; top: 10px; right: 10px; display: grid; place-items: center; width: 44px; height: 44px; padding: 0; border: 1px solid #777; border-radius: 50%; background: #000; color: #fff; font-family: sans-serif; font-size: 28px; line-height: 1; cursor: pointer; }
.taya-paisley .pz-lightbox__image { position: static; display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100vh - 220px); max-height: calc(100dvh - 220px); margin: 0 auto; object-fit: contain; }
.taya-paisley .pz-lightbox__caption { max-width: 900px; margin: 20px auto 0; font-size: 13px; line-height: 1.8; color: #ddd; text-align: left; }
.taya-paisley .pz-zoom-trigger:focus-visible, .taya-paisley .pz-lightbox :focus-visible { outline-color: #fff; }
@media (max-width: 768px) {
  .taya-paisley .pz-lightbox { width: calc(100vw - 16px); max-height: calc(100vh - 16px); max-height: calc(100dvh - 16px); padding: 60px 14px 20px; }
  .taya-paisley .pz-lightbox__image { max-height: calc(100vh - 240px); max-height: calc(100dvh - 240px); }
}

/* ---------- よくある質問 ---------- */
.taya-paisley .pz-faq { padding: 88px 0 64px; }
.taya-paisley .pz-faq__item { max-width: 760px; margin: 0 auto; border-bottom: 1px solid var(--pz-line); }
.taya-paisley .pz-faq__item:first-of-type { border-top: 1px solid var(--pz-line); }
.taya-paisley .pz-faq__item summary { position: relative; padding: 18px 40px 18px 36px; cursor: pointer; list-style: none; font-size: 16px; }
.taya-paisley .pz-faq__item summary::-webkit-details-marker { display: none; }
.taya-paisley .pz-faq__item summary::before { content: "Q"; position: absolute; left: 4px; top: 16px; font-family: var(--pz-en); font-size: 18px; color: var(--pz-gold); }
.taya-paisley .pz-faq__item summary::after { content: "+"; position: absolute; right: 8px; top: 14px; font-family: var(--pz-en); font-size: 22px; color: var(--pz-gold); transition: transform 0.2s; }
.taya-paisley .pz-faq__item[open] summary::after { transform: rotate(45deg); }
.taya-paisley .pz-faq__item p { padding: 0 8px 20px 36px; font-size: 15px; color: var(--pz-ink); }

/* ---------- まとめ ---------- */
.taya-paisley .pz-outro { padding: 72px 0 104px; text-align: center; background: var(--pz-paper); }
.taya-paisley .pz-outro__title { font-size: clamp(22px, 2.6vw, 30px); letter-spacing: 0.14em; text-align: center; }
.taya-paisley .pz-outro__text { margin-top: 24px; }
.taya-paisley .pz-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 40px; }
@media (max-width: 768px) {
  .taya-paisley .pz-links { flex-direction: column; align-items: center; }
  .taya-paisley .pz-links .pz-btn { width: 280px; }
}

/* ---------- 参考資料 ---------- */
.taya-paisley .pz-sources { padding: 0 0 64px; }
.taya-paisley .pz-sources .pz-wrap { max-width: 840px; }
.taya-paisley .pz-sources__note { margin-top: 20px; font-size: 12px; color: var(--pz-sub); }
.taya-paisley .pz-sources__title { font-size: 14px; letter-spacing: 0.14em; color: var(--pz-sub); text-align: left; padding-bottom: 8px; border-bottom: 1px solid var(--pz-line); }
.taya-paisley .pz-sources__list { margin-top: 12px; }
.taya-paisley .pz-sources__list li { position: relative; padding-left: 1em; font-size: 12px; line-height: 1.9; color: var(--pz-sub); }
.taya-paisley .pz-sources__list li + li { margin-top: 6px; }
.taya-paisley .pz-sources__list li::before { content: "・"; position: absolute; left: 0; }

  /* 肖像画の全体・部分は、画像の上下端を同じ高さに揃える */
.taya-paisley .pz-figs--portrait .pz-fig__media img { top: 0; left: 0; width: 100%; height: 100%; }

/* 肖像画の部分拡大は原画像をCSSで表示範囲だけ絞る（x100 y2400 w1100 h1100） */
.taya-paisley .pz-figs .pz-fig__media.pz-portrait-crop { overflow: hidden; }
.taya-paisley .pz-figs .pz-fig__media.pz-portrait-crop img,
.taya-paisley .pz-lightbox__viewport.is-portrait-crop .pz-lightbox__image {
  position: absolute; left: -9.090909%; top: -218.181818%;
  width: 263.545455%; height: 363.636364%; max-width: none; max-height: none;
  object-fit: fill; margin: 0;
}
.taya-paisley .pz-lightbox__viewport { display: contents; }
.taya-paisley .pz-lightbox__viewport.is-portrait-crop {
  display: block; position: relative; overflow: hidden; width: min(100%, 75vh, 900px); aspect-ratio: 1; margin: 0 auto;
}

/* 歴史の締めから、田屋の現在の装いへ */
.taya-paisley .pz-outro__feature { margin: 40px auto 0; max-width: 920px; }
.taya-paisley .pz-outro__feature img { width: 100%; height: auto; }
.taya-paisley .pz-outro__feature-link { display: inline-flex; margin-top: 28px; font-family: var(--pz-mincho); background: transparent; color: var(--pz-ink); }
.taya-paisley .pz-outro__feature-link:hover, .taya-paisley .pz-outro__feature-link:focus-visible { background: var(--pz-gold); color: #fff; }
@media (max-width: 768px) {
  .taya-paisley .pz-outro__feature { margin-top: 28px; }
  .taya-paisley .pz-outro__feature-link { margin-top: 22px; }
}
.taya-paisley .pz-collection { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; margin-top: 40px; text-align: center; }
.taya-paisley .pz-collection__item { min-width: 0; display: flex; flex-direction: column; }
.taya-paisley .pz-collection__copy { flex: 1; }
.taya-paisley .pz-collection__photo { display: block; overflow: hidden; }
.taya-paisley .pz-collection__photo img { display: block; width: 100%; height: auto; aspect-ratio: 1; }
.taya-paisley .pz-collection__photo:hover { opacity: 0.88; }
.taya-paisley .pz-collection__title { margin-top: 22px; font-size: 20px; text-align: center; }
.taya-paisley .pz-collection__title .pz-en { margin-top: 4px; font-size: 12px; }
.taya-paisley .pz-collection__copy { margin-top: 14px; font-size: 13px; letter-spacing: 0.02em; }
.taya-paisley .pz-collection__button { min-width: 0; width: 100%; min-height: 50px; height: auto; padding: 10px 8px; margin-top: 22px; gap: 0; flex-wrap: wrap; font-family: var(--pz-mincho); font-size: 13px; line-height: 1.6; background: transparent; color: var(--pz-ink); }
.taya-paisley .pz-collection__button span { white-space: nowrap; }
.taya-paisley .pz-collection__button:hover, .taya-paisley .pz-collection__button:focus-visible { background: var(--pz-gold); color: #fff; }
@media (max-width: 768px) {
  .taya-paisley .pz-collection { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 32px; }
  .taya-paisley .pz-collection__title { margin-top: 14px; font-size: 12px; letter-spacing: 0.01em; }
  .taya-paisley .pz-collection__title .pz-en { font-size: 9px; letter-spacing: 0; }
  .taya-paisley .pz-collection__copy { font-size: 11px; line-height: 1.8; letter-spacing: 0; }
  .taya-paisley .pz-collection__button { margin-top: 14px; min-height: 48px; padding: 8px 4px; font-size: 10px; letter-spacing: 0; }
  .taya-paisley .pz-outro__text br { display: none; }
}

/* 年表と装いの入口に、トップ写真を薄い地紋として重ねる */
.taya-paisley .pz-timeline,
.taya-paisley .pz-outro { position: relative; isolation: isolate; overflow: hidden; }
.taya-paisley .pz-timeline::before,
.taya-paisley .pz-outro::before {
  content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background-image: url("/img/usr/feature/paisley-history/cover11.jpg");
  background-position: center; background-size: cover; background-repeat: no-repeat;
  opacity: 0.07;
}
.taya-paisley .pz-timeline > .pz-wrap,
.taya-paisley .pz-outro > .pz-wrap { position: relative; z-index: 1; }
@media (max-width: 768px) {
  .taya-paisley .pz-timeline::before,
  .taya-paisley .pz-outro::before { opacity: 0.05; }
}

