@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,500&display=swap");
/* ============================================================
   icd-seven.css
   7daysのコラム（column-7days-korea.html）だけが読む見た目。
   ARTICLES.json の "skin": "seven" で読み込まれ、本文の枠に .ic-skin-seven が付く。

   体験会LP（/icd/trial/）の7daysの段の部品を、コラムの中で使える形に写したもの：
   時間割 .sv-tt ／ 暦 .sv-cal ／ 3日目と4日目の囲み .sv-sway ／ 3枚の写真 .sv-ba3 ／
   埋め込みの図 .ic-fig--svg と凡例 .sv-legend ／ 決めの行 .sv-close ／ 出典 .sv-src .sv-srcs

   ※このサイトは html { font-size: 62.5% }（1rem = 10px）。LPの値は px のまま写す。
   ============================================================ */

.ic-skin-seven {
  --sv-ink: #1e2a22;
  --sv-text: #3a463d;
  --sv-leaf: #4f6b52;
  --sv-brass: #a98f5c;
  --sv-brass-ink: #7a6134;
  --sv-muted: #5a6453;
  --sv-rule: #d3d5c4;
  --sv-paper: #f9f8f2;
  --sv-seven: #ebeee3;
  --sv-serif: "Shippori Mincho", "Noto Serif JP", "Yu Mincho", serif;
  --sv-latin: "Cormorant Garamond", "Times New Roman", serif;
}
.ic-skin-seven .ib { display: inline-block; }
.ic-skin-seven .vh {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* ── 決めの行（葉の図の下・3日目の囲みの見出し） ── */
.ic-skin-seven .ic-article p.sv-line {
  max-width: none; margin: 4px 0 22px;
  font-family: var(--sv-serif); font-size: 17px; font-weight: 600; line-height: 1.8;
  letter-spacing: .05em; color: var(--sv-ink); text-align: center;
}

/* ── 出典の行 ── */
.ic-skin-seven .ic-article p.sv-src {
  margin: -8px 0 22px; font-size: 12.5px; line-height: 1.7; letter-spacing: .02em; color: var(--sv-muted);
}
.ic-skin-seven .ic-article .sv-src a,
.ic-skin-seven .ic-article .sv-srcs a { font-weight: 400; }

/* ── 時間割 ── */
.ic-skin-seven .sv-tt { list-style: none; margin: 6px 0 22px; padding: 0; max-width: 560px; }
.ic-skin-seven .sv-tt li { display: grid; grid-template-columns: 82px minmax(0, 1fr); margin: 0; padding: 0; }
.ic-skin-seven .sv-tt .tm {
  padding: 7px 0; font-family: var(--sv-serif); font-size: 15px; font-weight: 600; line-height: 1.7;
  letter-spacing: .02em; color: var(--sv-brass-ink); font-variant-numeric: tabular-nums;
}
.ic-skin-seven .sv-tt .tx {
  position: relative; padding: 7px 0 7px 18px; border-left: 1px solid var(--sv-brass);
  font-size: 14.5px; line-height: 1.7; color: var(--sv-text);
}
.ic-skin-seven .sv-tt li.t .tx::before {
  content: ""; position: absolute; left: -4px; top: 15px; width: 7px; height: 7px;
  border-radius: 50%; background: var(--sv-seven); border: 1px solid var(--sv-brass);
}
.ic-skin-seven .sv-tt li:first-child .tx { border-image: linear-gradient(to bottom, transparent 14px, var(--sv-brass) 14px) 1; }

/* ── 七日間の暦 ── */
.ic-skin-seven .sv-cal { list-style: none; margin: 8px 0 30px; padding: 0; max-width: 620px; border-top: 1px solid var(--sv-rule); }
.ic-skin-seven .sv-day {
  display: grid; grid-template-columns: 46px minmax(0, 1fr); column-gap: 8px;
  margin: 0; padding: 16px 0 18px; border-bottom: 1px solid var(--sv-rule);
}
.ic-skin-seven .sv-day .rn {
  font-family: var(--sv-latin); font-style: italic; font-weight: 500; font-size: 22px; line-height: 1.25;
  letter-spacing: .02em; color: var(--sv-brass-ink);
}
.ic-skin-seven .sv-day .dt {
  margin: 0; font-family: var(--sv-serif); font-size: 17px; font-weight: 600; line-height: 1.55;
  letter-spacing: .05em; color: var(--sv-ink);
}
.ic-skin-seven .sv-day .dd { margin: 4px 0 0; font-size: 14px; line-height: 1.8; color: var(--sv-muted); }
/* 3日目・4日目：左に真鍮の細い線 */
.ic-skin-seven .sv-day--sway { box-shadow: inset 2px 0 0 var(--sv-brass); padding-left: 10px; grid-template-columns: 36px minmax(0, 1fr); }

/* ── 3日目と4日目の囲み ── */
.ic-skin-seven .sv-sway { position: relative; margin: 6px 0 26px; padding: 22px 0 0; max-width: 42em; }
.ic-skin-seven .sv-sway::before { content: ""; position: absolute; left: 0; top: 0; width: 64px; height: 1px; background: var(--sv-brass); }
.ic-skin-seven .ic-article .sv-sway p.sv-sway__h {
  margin: 0 0 12px; font-family: var(--sv-serif); font-size: 18px; font-weight: 600; line-height: 1.7;
  letter-spacing: .05em; color: var(--sv-ink);
}

/* ── mina先生の3枚 ── */
.ic-skin-seven .sv-ba3 {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); column-gap: 6px;
  max-width: 640px; margin: 18px 0 34px; padding: 8px 8px 12px;
  background: var(--sv-paper); border: 1px solid var(--sv-rule);
}
.ic-skin-seven .sv-ba3 img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; background: #dfe6d3; }
.ic-skin-seven .sv-ba3__l { display: block; margin-top: 8px; text-align: center; font-size: 12px; line-height: 1.4; letter-spacing: .04em; color: var(--sv-muted); }
.ic-skin-seven .sv-ba3 figcaption { grid-column: 1 / -1; margin-top: 12px; padding: 0 4px; font-size: 12.8px; line-height: 1.75; color: var(--sv-muted); }
@media screen and (max-width: 480px) {
  .ic-skin-seven .sv-ba3 { grid-template-columns: 1fr 1fr; row-gap: 14px; }
  .ic-skin-seven .sv-ba3 > div:nth-child(3) { grid-column: 1 / -1; justify-self: center; width: 64%; }
}

/* ── 埋め込みの図（SVG） ── */
.ic-skin-seven .ic-fig--svg {
  margin: 26px 0 30px; padding: 18px 16px 14px; overflow: visible;
  background: var(--sv-paper); border: 1px solid var(--sv-rule); border-radius: 3px;
}
.ic-skin-seven .ic-fig--svg .ic-svg { display: block; width: 100%; height: auto; max-width: 600px; margin: 0 auto; }
.ic-skin-seven .ic-fig--svg[data-fig="g5"] { background: var(--sv-seven); }
.ic-skin-seven .ic-fig--svg[data-fig="g5"] .ic-svg { max-width: 280px; overflow: visible; }
.ic-skin-seven .ic-fig--svg[data-fig="g5"] figcaption { text-align: center; }
.ic-skin-seven .ic-fig--svg figcaption { max-width: 600px; margin: 0 auto; padding: 10px 0 0; }
.ic-skin-seven .ic-article p.ic-fig__ttl {
  max-width: 600px; margin: 0 auto 10px; font-family: var(--sv-serif); font-size: 15px; font-weight: 600;
  line-height: 1.6; letter-spacing: .06em; color: var(--sv-ink);
}
.ic-skin-seven .ic-fig__sub {
  display: block; margin-top: 4px; font-family: "Hiragino Sans", "Noto Sans JP", "Yu Gothic", sans-serif;
  font-size: 12.5px; font-weight: 400; line-height: 1.7; letter-spacing: .03em; color: var(--sv-muted);
}
.ic-skin-seven .ic-article p.sv-cap-lead { margin: 0 0 6px; font-size: 13.5px; line-height: 1.8; color: var(--sv-text); }
.ic-skin-seven .ic-article p.sv-cap-note { margin: 8px 0 0; font-size: 12px; line-height: 1.6; color: var(--sv-muted); }

/* 凡例（a・b／1〜3） */
.ic-skin-seven .sv-legend { list-style: none; margin: 10px 0 0; padding: 0; }
.ic-skin-seven .sv-legend li { display: flex; align-items: flex-start; gap: 10px; margin: 0; font-size: 13px; line-height: 1.7; color: var(--sv-text); }
.ic-skin-seven .sv-legend li + li { margin-top: 6px; }
.ic-skin-seven .sv-legend i {
  flex: none; display: grid; place-items: center; width: 22px; height: 22px; margin-top: 0;
  border: 1px solid var(--sv-brass); border-radius: 50%; background: #fff;
  font-family: var(--sv-latin); font-style: italic; font-weight: 500; font-size: 15px; line-height: 1;
  color: var(--sv-brass-ink); font-variant-numeric: lining-nums;
}

/* ── 写真（ボトルの寄り・投稿のキャプチャ） ── */
.ic-skin-seven .ic-fig:has(img[src*="derma-label-pair"]) { max-width: 360px; margin-left: auto; margin-right: auto; }
.ic-skin-seven .ic-fig:has(img[src*="trial/voice-"]) { max-width: 520px; background: #fff; border: 1px solid var(--sv-rule); }

/* ── 声 ── */
.ic-skin-seven .sv-voice { max-width: 520px; margin: 8px 0 0; padding: 2px 0 2px 16px; border-left: 2px solid var(--sv-brass); }
.ic-skin-seven .ic-article .sv-voice p {
  margin: 0; font-family: var(--sv-serif); font-size: 17px; font-weight: 500; line-height: 1.9;
  letter-spacing: .05em; color: var(--sv-ink);
}
.ic-skin-seven .sv-voice + .ic-fig { margin-top: 16px; }

/* ── 肌の土台の話：i〜iv の番号 ── */
.ic-skin-seven .ic-article h3 .sv-rn {
  margin-right: .5em; font-family: var(--sv-latin); font-style: italic; font-weight: 500; font-size: 21px;
  line-height: 1; color: var(--sv-brass-ink); letter-spacing: 0;
}

/* ── 決めの行・ただし書き・出典のまとめ ── */
.ic-skin-seven .ic-article p.sv-close {
  max-width: none; margin: 34px 0 14px; font-family: var(--sv-serif); font-size: 20px; font-weight: 600;
  line-height: 1.75; letter-spacing: .05em; color: var(--sv-ink);
}
.ic-skin-seven .ic-article p.sv-note { font-size: 13px; line-height: 1.8; color: var(--sv-muted); }
.ic-skin-seven .sv-srcs {
  max-width: 42em; margin: 6px 0 30px; padding: 14px 16px 12px;
  background: var(--sv-paper); border: 1px solid var(--sv-rule); border-radius: 3px;
}
.ic-skin-seven .ic-article .sv-srcs p.sv-srcs__h { margin: 0 0 6px; font-size: 13px; font-weight: 700; letter-spacing: .08em; color: var(--sv-muted); }
.ic-skin-seven .sv-srcs ul { list-style: none; margin: 0; padding: 0; }
.ic-skin-seven .sv-srcs li { margin: 0; font-size: 12.5px; line-height: 1.75; letter-spacing: .02em; color: var(--sv-muted); }
.ic-skin-seven .sv-srcs li + li { margin-top: 2px; }

/* 図の見出しの「（模式図）」を途中で割らない */
.ic-skin-seven .ic-fig__nw { white-space: nowrap; }

/* 目次の子項目（h3 に data-toc を付けたもの） */
.ic-toc li.ic-toc__sub a { font-weight: 500; background: transparent; border-style: dashed; }
.ic-toc li.ic-toc__sub a::before { content: "└ "; color: #b9a77f; }

/* 右下の「上へ戻る」ボタンが図のパネルに重ならないよう、この記事の型だけ12px上げる */
body:has(.ic-skin-seven) .icd-totop { bottom: 108px; }
@media screen and (max-width: 767px) {
  body:has(.ic-skin-seven) .icd-totop { bottom: 96px; }
}
body.has-bottombar:has(.ic-skin-seven) .icd-totop { bottom: calc(78px + env(safe-area-inset-bottom, 0px)); }

@media screen and (max-width: 767px) {
  /* スマホでは図カードを画面の端から端まで使う（SVGの字を大きく出すため） */
  .ic-skin-seven .ic-fig--svg {
    box-sizing: border-box;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    padding: 16px 14px 14px;
    border-left: 0; border-right: 0; border-radius: 0;
  }
  .ic-skin-seven .ic-article p.sv-close { font-size: 18px; }
}
