/* Insights（英語）・コラム（日本語）共通: 冒頭の説明文と、印刷／PDF保存（2026-09-25 オーナー指示）。
   記事は AOKI LIVING LLC（合同会社AOKIリビング）として書いているもの。紙の名義も AOKI LIVING にする
   （物件シートの RE/MAX INTERFACE の帯とは別物）。本文の文章は変えない。 */

/* ── 画面: 冒頭の説明文と印刷ボタン ───────────────────────── */
.art-intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px 24px; flex-wrap: wrap;
  margin: 6px 0 30px; padding: 16px 20px; background: #FAF7F0; border: 1px solid rgba(196,169,122,.35);
  border-left: 3px solid var(--gold, #A8895C); border-radius: 0 8px 8px 0; }
.art-intro__text { flex: 1 1 360px; margin: 0; font-family: var(--font-sans); font-size: .92rem; line-height: 1.75; color: var(--navy-dark, #1B2A4A); }
html[lang="ja"] .art-intro__text { font-family: 'Noto Sans JP', var(--font-sans); font-size: .95rem; }
.art-intro__by { display: block; margin-top: 4px; font-size: .74rem; letter-spacing: .06em; color: var(--gold-muted, #9A7C50); font-weight: 700; }
.art-print-btn { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; padding: 10px 14px; cursor: pointer;
  font-family: var(--font-sans); font-size: .66rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: var(--navy, #1B2A4A); background: #fff; border: 1px solid rgba(27,42,74,.24); border-radius: 4px; }
html[lang="ja"] .art-print-btn { text-transform: none; letter-spacing: .05em; font-size: .8rem; }
.art-print-btn:hover { border-color: var(--navy, #1B2A4A); }
.art-print-btn svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 1.6; }
.art-print-hint { flex: 1 1 100%; margin: 0; font-size: .78rem; line-height: 1.6; color: #4A5468; }
.art-print-hint[hidden] { display: none; }
.art-print-head, .art-print-foot, .art-cover { display: none; }
@media (max-width: 767px) {
  .art-intro { padding: 14px 16px; margin-bottom: 24px; }
  .art-print-btn { width: 100%; justify-content: center; min-height: 44px; }
}


/* ── よくある質問（2026-09-25）: 本文の最後、CTA・出典の前 ── */
.art-faq { margin: 44px 0 36px; padding: 28px 30px 12px; background: #fff; border: 1px solid var(--border, #E5E0D6); border-top: 3px solid var(--gold, #A8895C); border-radius: 0 0 10px 10px; }
.art-faq__title { font-family: var(--font-serif); font-size: clamp(1.35rem, 2.2vw, 1.7rem); font-weight: 600; color: var(--navy-dark, #1B2A4A); margin: 0 0 14px; }
.art-faq__item { padding: 16px 0 14px; border-top: 1px solid var(--border, #E5E0D6); }
.art-faq__q { position: relative; padding-left: 30px; margin: 0 0 8px; font-family: var(--font-sans); font-size: 1rem; font-weight: 700; line-height: 1.5; color: var(--navy-dark, #1B2A4A); }
.art-faq__q::before { content: "Q"; position: absolute; left: 0; top: 0; width: 22px; height: 22px; border-radius: 50%; background: var(--navy-dark, #1B2A4A); color: #fff; font-size: .72rem; line-height: 22px; text-align: center; }
.art-faq__a { position: relative; padding-left: 30px; margin: 0; font-family: var(--font-sans); font-size: .94rem; line-height: 1.75; color: #3A4254; }
.art-faq__a::before { content: "A"; position: absolute; left: 0; top: 1px; width: 22px; height: 22px; border-radius: 50%; border: 1px solid var(--gold, #A8895C); color: var(--gold-muted, #9A7C50); font-size: .72rem; font-weight: 700; line-height: 20px; text-align: center; box-sizing: border-box; }
@media (max-width: 767px) { .art-faq { padding: 20px 16px 6px; margin: 34px 0 28px; } .art-faq__q { font-size: .96rem; } }
/* 2026-09-25 オーナー指示：印刷・PDF では「よくある質問」は出さない（画面と検索用） */
@media print { .art-faq { display: none !important; } }

/* ── 紙・PDF（2026-09-25 v2: オーナー「印刷したときにあまり魅力的じゃない。デザイナーとして」）──────
   雑誌のレポートのような体裁にする:
     1枚目 = 表紙（写真を大きく、紺のグラデーションに白い大きな題名、AOKI LIVING の名義、冒頭の説明文、QR）
     2枚目以降 = 本文（ゆとりのある余白、見出しに金の罫、ページ下に名義とページ番号）
     最後 = 締めの囲み（AOKI LIVING について・連絡先・記事のQR）
   本文の文章は変えない。表紙・締めは /js/article-tools.js がページ内の要素から組み立てる。 */
@media print {
  @page { size: A4 portrait; margin: 18mm 17mm 20mm;
    @bottom-left { content: "AOKI LIVING LLC  ·  www.aoki-japan-property.com"; font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 7pt; color: #9A7C50; letter-spacing: .08em; }
    @bottom-right { content: counter(page) " / " counter(pages); font-family: Inter, sans-serif; font-size: 7pt; color: #888; }
  }
  @page :first { margin: 0; @bottom-left { content: none; } @bottom-right { content: none; } }
  html, body { background: #fff !important; }
  body { -webkit-print-color-adjust: exact; print-color-adjust: exact; font-size: 10pt; }

  /* 紙で意味を持たないもの */
  .nav, .nav__mobile, .footer, .article-back, .art-print-btn, .art-print-hint, .art-cta, .m-toc, .m-top,
  .lu-chapters, .article-nav, .art-related, .related-insights, .kd-share, .final-cta, .fab, .floating-cta,
  [data-print-hide] { display: none !important; }
  .fade-in, [class*="fade"] { opacity: 1 !important; transform: none !important; animation: none !important; }
  details > summary { list-style: none; }
  details:not([open]) { display: none !important; }
  /* 表紙に載せたので本文側では出さないもの */
  .article-hero, .art-intro, .art-print-head { display: none !important; }

  /* ── 1枚目: 表紙 ─────────────────────────────── */
  .art-cover { display: flex !important; flex-direction: column; width: 210mm; height: 296.5mm; break-after: page; page-break-after: always;
    overflow: hidden; background: #fff; position: relative; }
  .art-cover__img { position: relative; flex: 0 0 170mm; background: #0F1A30 center / cover no-repeat; }
  .art-cover__img::after { content: ""; position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(15,26,48,.55) 0%, rgba(15,26,48,.10) 28%, rgba(15,26,48,.25) 52%, rgba(15,26,48,.92) 100%); }
  .art-cover__top { position: absolute; z-index: 2; top: 13mm; left: 17mm; right: 17mm; display: flex; justify-content: space-between; align-items: flex-start; color: #fff; }
  .art-cover__co { font-family: 'Cormorant Garamond', 'Noto Serif JP', Georgia, serif; font-size: 17pt; font-weight: 600; letter-spacing: .08em; line-height: 1; }
  .art-cover__tag { display: block; margin-top: 2mm; font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 6.4pt; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: #D9BF8C; }
  html[lang="ja"] .art-cover__tag { letter-spacing: .1em; }
  .art-cover__kind { font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 7pt; font-weight: 700; letter-spacing: .24em; text-transform: uppercase;
    padding: 1.6mm 3mm; border: .6pt solid rgba(255,255,255,.7); }
  html[lang="ja"] .art-cover__kind { letter-spacing: .12em; }
  .art-cover__title { position: absolute; z-index: 2; left: 17mm; right: 17mm; bottom: 12mm; color: #fff; }
  .art-cover__series { font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 7.4pt; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: #D9BF8C; margin: 0 0 3mm; }
  html[lang="ja"] .art-cover__series { letter-spacing: .1em; }
  .art-cover__h, .art-cover__series, .art-cover__co { color: #fff !important; }
  .art-cover__series { color: #D9BF8C !important; }
  .art-cover__h { text-shadow: 0 1px 12px rgba(0,0,0,.35); font-family: 'Cormorant Garamond', 'Noto Serif JP', Georgia, serif; font-size: 30pt; font-weight: 600; line-height: 1.1; margin: 0; letter-spacing: -.005em;
    font-variant-numeric: lining-nums; }
  html[lang="ja"] .art-cover__h { font-family: 'Noto Serif JP', serif; font-size: 25pt; line-height: 1.4; letter-spacing: .02em; }
  .art-cover__rule { width: 16mm; height: 1.2pt; background: #C9AE82; margin: 5mm 0 0; }
  .art-cover__body { flex: 1 1 auto; display: flex; flex-direction: column; padding: 9mm 17mm 12mm; }
  .art-cover__sub { font-family: 'Cormorant Garamond', 'Noto Serif JP', Georgia, serif; font-size: 14pt; line-height: 1.4; color: #1B2A4A; margin: 0 0 4mm; font-style: italic; }
  html[lang="ja"] .art-cover__sub { font-family: 'Noto Serif JP', serif; font-style: normal; font-size: 12pt; line-height: 1.7; }
  .art-cover__meta { font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 8pt; color: #666; margin: 0 0 6mm; }
  .art-cover__meta b { color: #1B2A4A; font-weight: 600; }
  .art-cover__foot { margin-top: auto; display: flex; align-items: flex-end; justify-content: space-between; gap: 10mm;
    padding-top: 6mm; border-top: .8pt solid #C9AE82; }
  .art-cover__intro { font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 9pt; line-height: 1.7; color: #1F2533; margin: 0; max-width: 118mm; }
  .art-cover__intro b { display: block; margin-top: 1.6mm; font-size: 7pt; letter-spacing: .14em; text-transform: uppercase; color: #9A7C50; }
  html[lang="ja"] .art-cover__intro b { letter-spacing: .06em; }
  .art-cover__qr { display: flex; align-items: center; gap: 3mm; font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 6.6pt; line-height: 1.45; color: #555; text-align: right; }
  .art-cover__qr svg { width: 20mm; height: 20mm; display: block; }

  /* ── 本文 ─────────────────────────────── */
  .section, .article-hero + .section { padding: 0 !important; background: none !important; }
  .container { max-width: none !important; width: auto !important; padding: 0 !important; margin: 0 !important; }
  .article-body { max-width: none !important; margin: 0 !important; padding: 0 !important; background: none !important;
    box-shadow: none !important; border: 0 !important; border-radius: 0 !important; }
  /* 文字色は各部品のものを使う（紺地の枠の中が白文字のまま残るように、ここでは色を指定しない） */
  .article-body p, .article-body li, .article-p { font-size: 10.2pt !important; line-height: 1.75 !important; orphans: 3; widows: 3; }
  html[lang="ja"] .article-body p, html[lang="ja"] .article-body li { font-size: 9.8pt !important; line-height: 1.95 !important; }
  .article-h2 { font-family: 'Cormorant Garamond', 'Noto Serif JP', Georgia, serif !important; font-size: 17pt !important; font-weight: 600 !important; line-height: 1.25 !important;
    margin: 9mm 0 3.5mm !important; padding: 3mm 0 0 !important; color: #0F1A30 !important; border: 0 !important;
    border-top: 1.4pt solid #C9AE82 !important; break-after: avoid; page-break-after: avoid; }
  html[lang="ja"] .article-h2 { font-family: 'Noto Serif JP', serif !important; font-size: 14pt !important; line-height: 1.55 !important; }
  .article-section:first-of-type .article-h2 { margin-top: 0 !important; }
  h3, .lu-h3 { font-size: 11.5pt !important; margin-top: 5mm !important; break-after: avoid; page-break-after: avoid; color: #0F1A30 !important; }
  .article-section { margin: 0 0 5mm !important; }
  .article-section.lu-chapsec { margin-top: 4mm !important; padding-top: 0 !important; border-top: 0 !important; }
  .lu-chapsec > .article-h2 { border-top: 0 !important; padding-top: 0 !important; }
  .lu-chap { break-after: avoid; margin-top: 6mm !important; }

  /* 引用・要点・囲み */
  .art-pull { font-size: 13pt !important; line-height: 1.55 !important; color: #0F1A30 !important; border-left: 2pt solid #C9AE82 !important;
    padding: 1mm 0 1mm 5mm !important; margin: 6mm 0 !important; background: none !important; }
  figure, img, table, svg, .art-figure, .art-chart, .col-card, .lu-compare, .lu-funnel, .lu-note, .lu-alert, .lu-summary, .lu-points,
  .art-pull, .art-callout, .art-signal, .art-stat, .kd-box, blockquote, .mp-keys { break-inside: avoid; page-break-inside: avoid; }
  img { max-width: 100% !important; height: auto !important; }
  figure img { max-height: 80mm !important; width: auto !important; margin: 0 auto; display: block; object-fit: contain; border-radius: 1.5mm; }
  figcaption, .lu-cap { font-size: 7.6pt !important; color: #777 !important; text-align: center; }
  table { font-size: 8.6pt !important; }
  a { color: inherit !important; text-decoration: none !important; }
  .lu-summary { background: #0F1A30 !important; }
  .mp-keys, .mp-keys li, .mp-keys p, .mp-keys strong, .lu-summary p { color: #fff !important; }
  .mp-keys li { color: rgba(255,255,255,.86) !important; }
  .art-disclaimer, .art-disclaimer p { font-size: 7.8pt !important; line-height: 1.6 !important; color: #666 !important; }

  /* ── 最後: 締めの囲み ─────────────────────────────── */
  .art-print-foot { display: flex !important; gap: 8mm; align-items: center; margin-top: 10mm; padding: 7mm 8mm; background: #0F1A30; color: #fff;
    border-top: 1.4pt solid #C9AE82; break-inside: avoid; page-break-inside: avoid; }
  .art-print-foot__l { flex: 1 1 auto; font-family: Inter, 'Noto Sans JP', sans-serif; font-size: 8pt; line-height: 1.65; color: rgba(255,255,255,.8); }
  .art-print-foot__co { display: block; font-family: 'Cormorant Garamond', 'Noto Serif JP', Georgia, serif; font-size: 15pt; font-weight: 600; letter-spacing: .06em; color: #fff; margin-bottom: 1mm; }
  .art-print-foot__tag { display: block; font-size: 6.6pt; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: #D9BF8C; margin-bottom: 3mm; }
  html[lang="ja"] .art-print-foot__tag { letter-spacing: .08em; }
  .art-print-foot__small { display: block; margin-top: 2.5mm; font-size: 6.6pt; color: rgba(255,255,255,.55); }
  .art-print-foot__qr { flex: 0 0 auto; background: #fff; padding: 2mm; border-radius: 1mm; }
  .art-print-foot__qr svg { width: 19mm; height: 19mm; display: block; }
}
