/* Fidelity v02: render this adopted part in the cascade of its approved HTML (browser defaults + the approved CSS below). Theme-wide rules (.hal-lp base, Astra base, older section CSS) stop at #hal-column-review-v02; every approved rule below is more specific or later and still wins. Root values = the approved document body. SVG keeps its presentation attributes. */
#hal-column-review-v02{font:initial;color:#fff;letter-spacing:normal;word-spacing:normal;text-align:start;text-transform:none;text-indent:0;text-shadow:none;white-space:normal;word-break:normal;overflow-wrap:normal;line-break:auto;-webkit-font-smoothing:auto;font-feature-settings:normal;font-kerning:auto}
#hal-column-review-v02 :where(*:not(svg,svg *)),#hal-column-review-v02 :where(*:not(svg,svg *))::before,#hal-column-review-v02 :where(*:not(svg,svg *))::after{all:revert}

    #hal-column-review-v02{color:#fff;font-family:'Zen Kaku Gothic New',sans-serif;--hal-column-image:url('../media/c7373fe28a518757f724.webp')}
    #hal-column-review-v02 *{box-sizing:border-box}
    #hal-column-review-v02 .review-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 0;color:var(--foreground)}
    #hal-column-review-v02 .review-controls span{font-size:14px}
    #hal-column-review-v02 .review-buttons{display:flex;gap:8px}
    #hal-column-review-v02 .review-controls button{border:1px solid var(--border);background:var(--background);color:var(--foreground);padding:10px 14px;font:inherit;font-size:13px;border-radius:6px;min-height:44px}
    #hal-column-review-v02 .review-controls button[aria-pressed=true]{background:var(--primary);color:var(--primary-foreground)}
    #hal-column-review-v02 .preview-width{width:100%;max-width:1200px;margin:auto;container-type:inline-size;container-name:hal-column-preview;background:#080808}
    #hal-column-review-v02 .preview-width[data-view=mobile]{max-width:375px}
    #hal-column-review-v02 .column-section{display:grid;background:#080808;isolation:isolate}
    #hal-column-review-v02 .column-art{grid-area:1/1;align-self:start;position:sticky;top:0;height:660px;background-image:var(--hal-column-image);background-size:cover;background-position:28% center;overflow:hidden;z-index:0}
    #hal-column-review-v02 .column-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,.16) 39%,rgba(8,8,8,.85) 61%,#080808 100%),linear-gradient(0deg,#080808 0%,transparent 45%)}
    #hal-column-review-v02 .column-layout{grid-area:1/1;position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;padding:100px 5.5% 70px;min-height:760px;align-items:end}
    #hal-column-review-v02 .column-heading{padding-bottom:20px}
    #hal-column-review-v02 .column-kicker{display:block;color:#fff;font-size:12px;letter-spacing:.16em;margin-bottom:18px}
    #hal-column-review-v02 h2{font-family:'Zen Old Mincho',serif;font-size:clamp(34px,4.6cqi,54px);font-weight:500;line-height:1.5;margin:0;color:#fff;letter-spacing:.03em;text-shadow:0 2px 20px #000}
    #hal-column-review-v02 .column-heading p{font-size:15px;line-height:1.9;color:#eee;margin:22px 0 0;text-shadow:0 2px 12px #000}
    #hal-column-review-v02 .column-reading{align-self:center;min-width:0}
    #hal-column-review-v02 .article-link{width:90%;margin-inline:auto;display:grid;grid-template-columns:clamp(88px,11cqi,128px) minmax(0,1fr);column-gap:16px;padding:24px 0;border-top:1px solid rgba(255,255,255,.3);text-decoration:none;color:#fff;min-height:120px;transition:color .2s ease}
    #hal-column-review-v02 .article-thumbnail{display:block;grid-column:1;grid-row:1;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#161616;align-self:start}
    #hal-column-review-v02 .article-copy{grid-column:2;grid-row:1;min-width:0;padding-bottom:30px;container-type:inline-size}
    #hal-column-review-v02 .article-link:last-of-type{border-bottom:1px solid rgba(255,255,255,.3)}
    #hal-column-review-v02 .article-date{display:block;color:#c7c7c7;letter-spacing:.06em;font-size:12px;margin-bottom:10px}
    #hal-column-review-v02 .article-title{display:block;font-family:'Zen Old Mincho',serif;font-weight:500;font-size:min(20px,calc(100cqi / 34.5));line-height:1.65;white-space:nowrap;line-break:strict}
    #hal-column-review-v02 .article-arrow{grid-column:2;grid-row:1;font-size:24px;align-self:end;justify-self:end;transition:transform .25s ease;color:#fff}
    #hal-column-review-v02 .article-link:hover .article-arrow{transform:translateX(5px)}
    #hal-column-review-v02 .article-link:hover .article-title{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
    #hal-column-review-v02 .article-link:focus-visible,#hal-column-review-v02 .all-columns:focus-visible{outline:2px solid #fff;outline-offset:6px}
    #hal-column-review-v02 .all-columns{display:inline-flex;gap:24px;align-items:center;justify-content:space-between;min-height:48px;margin-top:28px;color:#fff;text-decoration:none;border-bottom:1px solid #fff;font-size:15px}
    #hal-column-review-v02 .all-columns:hover{opacity:.8}
    #hal-column-review-v02 .next-boundary{height:100px;background:#080808;border-top:1px solid #222}
    @container hal-column-preview (max-width:650px){
      #hal-column-review-v02 .column-art{height:380px;background-size:auto 380px;background-position:24% top}
      #hal-column-review-v02 .column-art:after{background:linear-gradient(0deg,#080808 0%,rgba(8,8,8,.6) 20%,rgba(8,8,8,.05) 68%)}
      #hal-column-review-v02 .column-layout{display:block;min-height:0;padding:250px 24px 52px}
      #hal-column-review-v02 .column-heading{padding:0 0 34px}
      #hal-column-review-v02 .column-kicker{font-size:11px;margin-bottom:12px}
      #hal-column-review-v02 h2{font-size:27.2px;line-height:1.5}
      #hal-column-review-v02 .column-heading p{font-size:14px;margin-top:14px}
      #hal-column-review-v02 .column-reading{background:#080808;position:relative}
      #hal-column-review-v02 .article-link{width:auto;margin-inline:0;padding:24px 0;grid-template-columns:minmax(0,1fr);row-gap:16px;min-height:120px}
      #hal-column-review-v02 .article-thumbnail{grid-column:1;grid-row:1}
      #hal-column-review-v02 .article-copy{grid-column:1;grid-row:2}
      #hal-column-review-v02 .article-arrow{grid-column:1;grid-row:2}
      #hal-column-review-v02 .article-title{font-size:18px;line-height:1.75;white-space:normal;overflow-wrap:anywhere}
      #hal-column-review-v02 .all-columns{width:100%;margin-top:24px}
    }
    @media(prefers-reduced-motion:reduce){#hal-column-review-v02 .column-art{position:relative}#hal-column-review-v02 .article-link,#hal-column-review-v02 .article-arrow{transition:none}#hal-column-review-v02 .article-link:hover .article-arrow{transform:none}}

/* OwnerFixR3 ColumnMobileFix1 (mobile column list) + FinalOwnerFix1 (PC background image, list link button).
   The 「コラムを全て読む」 button (PC and mobile) and the TOP legal-counsel link use the shared ArrowFillButton in arrow-fill.css. */
/* FinalOwnerFix1 PC: the whole background image (1600x900, 16:9) is shown - nothing of it is cut off (formerly cover in a 660px-high box,
   which cut the hat and hair at the top). The art box spans the whole section (no sticky travel); the image is drawn at its own 16:9
   size: as wide as the section allows but at most 760px high (the section height), from the top left. The space it leaves (right /
   bottom) is the section's existing #080808, joined to the image by two fades on the image's own right and bottom edges; the existing
   overlay gradients (:after) are unchanged. The thumbnails keep object-fit:contain. */
@container hal-column-preview (min-width:651px){
  #hal-column-review-v02 .column-art{--col-img-w:min(100cqi,calc(760px * 16 / 9));--col-img-h:calc(var(--col-img-w) * 9 / 16);
    align-self:stretch;height:auto;min-height:660px;
    background-image:linear-gradient(90deg,rgba(8,8,8,0) calc(var(--col-img-w) - 160px),#080808 var(--col-img-w)),linear-gradient(180deg,rgba(8,8,8,0) calc(var(--col-img-h) - 140px),#080808 var(--col-img-h)),var(--hal-column-image);
    background-size:100% 100%,100% 100%,var(--col-img-w) var(--col-img-h);background-position:0 0,0 0,0 0;background-repeat:no-repeat}
}
@container hal-column-preview (max-width:650px){
  /* white reading area; cards 80% of the former width, centred; spacing 75% of the former values; natural height (no fixed height, no scale) */
  #hal-column-review-v02 .column-reading{background:#fff;padding:14px 0 22px}
  #hal-column-review-v02 .article-link{width:80%;margin-inline:auto;padding:18px 0;row-gap:12px;min-height:0;background:#fff;color:#111;border-top:1px solid #ddd}
  #hal-column-review-v02 .article-link:last-of-type{border-bottom:1px solid #ddd}
  #hal-column-review-v02 .article-thumbnail{background:#f2f2f2}
  #hal-column-review-v02 .article-copy{padding-bottom:22px}
  #hal-column-review-v02 .article-date{color:#555;font-size:10px;margin-bottom:6px;text-align:center}
  #hal-column-review-v02 .article-title{font-size:13.5px;line-height:1.75;color:#111;text-align:center;white-space:normal;overflow-wrap:normal;letter-spacing:0}
  #hal-column-review-v02 .article-title__line{display:block;white-space:nowrap}
  #hal-column-review-v02 .article-title__phrase{display:inline-block;white-space:nowrap}
  #hal-column-review-v02 .article-arrow{font-size:18px;color:#111}
  #hal-column-review-v02 .article-link:focus-visible{outline-color:#111}
}
