@charset "UTF-8";

#colmn_detail .color-vision {
  --cv-ink:#20242c;
  --cv-navy:#102647;
  --cv-blue:#1c416c;
  --cv-gold:#b48b43;
  --cv-gold-light:#dbc28e;
  --cv-ivory:#f7f3eb;
  --cv-line:#ded7ca;
  color:var(--cv-ink);
  font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;
  font-size:16px;
  line-height:2;
  letter-spacing:.025em;
}

#colmn_detail .color-vision .article-header { margin-bottom:30px; }
#colmn_detail .color-vision .article-date {
  margin:20px 0 24px;
  padding:12px 16px;
  border-left:4px solid #1e3260;
  background:#f8f8f8;
  color:#555;
  font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;
  font-size:14px;
  line-height:1.8;
}
#colmn_detail .color-vision .article-date p {
  margin:0;
}
#colmn_detail .color-vision .article-date time {
  font:inherit;
  color:inherit;
}

#colmn_detail .color-vision .article-category {
  margin:0 0 12px;
  color:#866526;
  font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
}
#colmn_detail .color-vision .eyebrow {
  margin:0 0 8px;
  color:#9a742e;
  font-family:Georgia,"Times New Roman",serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:.22em;
}
#colmn_detail .color-vision .title {
  position:relative;
  margin:0 0 24px;
  padding:0 0 18px;
  color:var(--cv-navy);
  font-size:clamp(26px,3.2vw,36px);
  line-height:1.5;
  letter-spacing:.05em;
}
#colmn_detail .color-vision .title::after {
  position:absolute; bottom:0; left:0; width:88px; height:3px;
  background:linear-gradient(90deg,var(--cv-gold),var(--cv-gold-light)); content:"";
}
#colmn_detail .color-vision .lead {
  margin:0 0 22px;
  padding:24px 28px;
  border:1px solid #e3d9c5;
  border-left:5px solid var(--cv-gold);
  background:linear-gradient(135deg,#fffdf8,var(--cv-ivory));
  box-shadow:0 10px 28px rgba(17,38,70,.06);
  font-size:1.12em;
}
#colmn_detail .color-vision > p:not(.lead) { margin-bottom:1.35em; }

#colmn_detail .color-vision .column-visual { margin:32px auto 48px; max-width:820px; text-align:center; }
#colmn_detail .color-vision .column-visual img {
  display:block; width:100%; height:auto; border-radius:12px;
  box-shadow:0 18px 40px rgba(10,27,49,.18);
}
#colmn_detail .color-vision .column-visual figcaption {
  margin:10px 0 0; color:#6a6d73; font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;
  font-size:12px; line-height:1.7; text-align:right;
}
#colmn_detail .color-vision .column-visual--lead { max-width:820px; }

#colmn_detail .color-vision .toc {
  position:relative; overflow:hidden; margin:0 0 54px; padding:28px 30px;
  border:1px solid #ddcfb5; border-radius:12px;
  background:linear-gradient(140deg,#fff,#f6f0e4); box-shadow:0 12px 30px rgba(15,37,67,.07);
}
#colmn_detail .color-vision .toc::before {
  position:absolute; top:0; left:0; width:100%; height:3px;
  background:linear-gradient(90deg,#9a742e,#d7bd78 52%,#8a6728); content:"";
}
#colmn_detail .color-vision .toc > strong { display:block; margin-bottom:14px; color:var(--cv-navy); font-size:18px; letter-spacing:.08em; }
#colmn_detail .color-vision .toc ol { margin:0; padding-left:1.5em; }
#colmn_detail .color-vision .toc li + li { margin-top:6px; }
#colmn_detail .color-vision .toc a { color:#334861; text-decoration:none; border-bottom:1px dotted #b9aa8c; }
#colmn_detail .color-vision .toc a:hover { color:#866526; }

#colmn_detail .color-vision > section { margin:0 0 54px; }
#colmn_detail .color-vision > section > h2 {
  position:relative; margin:0 0 24px; padding:4px 0 14px 20px;
  border-bottom:1px solid #d9c9a7; color:var(--cv-navy);
  font-size:clamp(21px,2.5vw,27px); line-height:1.55;
}
#colmn_detail .color-vision > section > h2::before {
  position:absolute; top:5px; bottom:15px; left:0; width:5px;
  background:linear-gradient(var(--cv-gold),#dfc589); content:"";
}
#colmn_detail .color-vision > section > p { margin-bottom:1.35em; }
#colmn_detail .color-vision strong { color:#172c4a; }

#colmn_detail .color-vision .action-message {
  margin:28px 0; padding:20px 24px; border:1px solid #e3d9c5; border-left:5px solid var(--cv-gold);
  background:linear-gradient(135deg,#fffdf8,var(--cv-ivory)); box-shadow:0 8px 22px rgba(17,38,70,.05);
  font-size:1.05em; line-height:1.9;
}

#colmn_detail .color-vision .seo-column-action,
#colmn_detail .color-vision .related-columns,
#colmn_detail .color-vision .about-column {
  position:relative; overflow:hidden; padding:34px 36px; border:1px solid #d9d1c1; border-radius:12px;
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,244,235,.96));
  box-shadow:0 14px 36px rgba(37,31,22,.08);
}
#colmn_detail .color-vision .seo-column-action::before,
#colmn_detail .color-vision .related-columns::before,
#colmn_detail .color-vision .about-column::before {
  position:absolute; top:0; left:0; width:100%; height:4px;
  background:linear-gradient(90deg,#9a742e,#d7bd78 52%,#8a6728); content:"";
}
#colmn_detail .color-vision .seo-column-action__links,
#colmn_detail .color-vision .related-columns__links {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:28px 0 0; padding:0; list-style:none;
}
#colmn_detail .color-vision .seo-column-action__links li,
#colmn_detail .color-vision .related-columns__links li { margin:0; list-style:none; }
#colmn_detail .color-vision .seo-column-action__links a,
#colmn_detail .color-vision .related-columns__links a {
  position:relative; display:flex; min-height:92px; flex-direction:column; justify-content:center;
  padding:18px 45px 18px 20px; border:1px solid #ded7ca; border-radius:8px;
  background:linear-gradient(135deg,#f5ead0,#fff8e8); color:#2d2922; text-decoration:none;
  box-shadow:0 6px 16px rgba(37,31,22,.08); transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease,background .25s ease;
}
#colmn_detail .color-vision .seo-column-action__links a::after,
#colmn_detail .color-vision .related-columns__links a::after {
  position:absolute; top:50%; right:20px; width:9px; height:9px; margin-top:-5px;
  border-top:1px solid #9a742e; border-right:1px solid #9a742e; content:""; transform:rotate(45deg);
}
#colmn_detail .color-vision .seo-column-action__links a:hover,
#colmn_detail .color-vision .related-columns__links a:hover {
  border-color:#b99a55; background:linear-gradient(135deg,#efdfb9,#fff4d8); box-shadow:0 12px 24px rgba(37,31,22,.11); transform:translateY(-2px);
}
#colmn_detail .color-vision .seo-column-action__links span,
#colmn_detail .color-vision .related-columns__links span {
  display:block; margin-bottom:5px; color:#8a6728; font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif; font-size:11px; font-weight:700; letter-spacing:.08em;
}
#colmn_detail .color-vision .seo-column-action__links strong,
#colmn_detail .color-vision .related-columns__links strong { font-size:15px; line-height:1.55; }
#colmn_detail .color-vision .about-column__link a { color:var(--cv-navy); font-weight:700; }

#colmn_detail .color-vision .references {
  padding:24px 28px; border:1px solid #cfd9e6; border-radius:10px;
  background:linear-gradient(135deg,#f5f8fc,#eaf0f7); color:#334861;
}
#colmn_detail .color-vision .references h2 { border-bottom-color:#bfcddd; }

#colmn_detail .color-vision img { max-width:100%; }

@media (max-width:767px) {
  #colmn_detail .color-vision { font-size:15px; line-height:1.9; }
  #colmn_detail .color-vision .article-date { margin:14px 0 18px; padding:10px 12px; font-size:13px; }
  #colmn_detail .color-vision .lead { padding:20px; }
  #colmn_detail .color-vision .title { font-size:26px; }
  #colmn_detail .color-vision .column-visual { margin:26px 0 40px; }
  #colmn_detail .color-vision .column-visual figcaption { text-align:left; }
  #colmn_detail .color-vision .toc { padding:24px 20px; }
  #colmn_detail .color-vision .seo-column-action,
  #colmn_detail .color-vision .related-columns,
  #colmn_detail .color-vision .about-column { padding:28px 20px 22px; }
  #colmn_detail .color-vision .seo-column-action__links,
  #colmn_detail .color-vision .related-columns__links { grid-template-columns:1fr; gap:10px; margin-top:22px; }
  #colmn_detail .color-vision .seo-column-action__links a,
  #colmn_detail .color-vision .related-columns__links a { min-height:0; padding:16px 44px 16px 16px; }
}

@media (prefers-reduced-motion:reduce) {
  #colmn_detail .color-vision .seo-column-action__links a,
  #colmn_detail .color-vision .related-columns__links a { transition:none; }
}

/* Course CTA color variations: keep the first (one-day trial) as the existing gold style. */
#colmn_detail .color-vision .seo-column-action__links li:nth-child(2) a {
  border-color:#6f2530;
  background:linear-gradient(135deg,#7a2632 0%,#963646 54%,#681f2b 100%);
  color:#fffaf7;
  box-shadow:0 7px 18px rgba(86,25,36,.20);
}
#colmn_detail .color-vision .seo-column-action__links li:nth-child(2) a span { color:#f3d8d6; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(2) a strong { color:#fff; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(2) a::after { border-color:#ead2c0; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(2) a:hover {
  border-color:#8d3542;
  background:linear-gradient(135deg,#842d3a 0%,#a34252 54%,#732531 100%);
  box-shadow:0 12px 25px rgba(86,25,36,.25);
}

#colmn_detail .color-vision .seo-column-action__links li:nth-child(3) a {
  border-color:#2f5b47;
  background:linear-gradient(135deg,#315f49 0%,#44745c 54%,#284e3d 100%);
  color:#f8fff9;
  box-shadow:0 7px 18px rgba(29,70,51,.20);
}
#colmn_detail .color-vision .seo-column-action__links li:nth-child(3) a span { color:#d4e7da; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(3) a strong { color:#fff; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(3) a::after { border-color:#d5e5d1; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(3) a:hover {
  border-color:#3c7057;
  background:linear-gradient(135deg,#376a51 0%,#4c8166 54%,#2e5945 100%);
  box-shadow:0 12px 25px rgba(29,70,51,.25);
}

#colmn_detail .color-vision .seo-column-action__links li:nth-child(4) a {
  border-color:#a8adb3;
  background:linear-gradient(135deg,#d9dde1 0%,#f3f4f5 48%,#c4c9ce 100%);
  color:#333b42;
  box-shadow:0 7px 18px rgba(70,78,86,.16);
}
#colmn_detail .color-vision .seo-column-action__links li:nth-child(4) a span { color:#687078; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(4) a strong { color:#30383f; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(4) a::after { border-color:#666e75; }
#colmn_detail .color-vision .seo-column-action__links li:nth-child(4) a:hover {
  border-color:#92989e;
  background:linear-gradient(135deg,#cdd2d7 0%,#eceeef 48%,#b9bec4 100%);
  box-shadow:0 12px 25px rgba(70,78,86,.20);
}

