/* ===========================================================
   G.C心理メソッド研究所 サイト改修 2026-08
   目的: 青系→紅赤調（暗めの臙脂）に振り、法人・金融機関が見て
        信頼できる面にする。参考=みらいワークス系の落ち着いた臙脂。
   =========================================================== */
:root{
  --gc-red:#8B1D2C;        /* 主色: 暗めの紅赤（臙脂）*/
  --gc-red-d:#6E1522;      /* 濃い側: ホバー・帯 */
  --gc-red-l:#A83545;      /* 明るい側: 線・アクセント */
  --gc-ink:#1C1A1B;        /* 文字 */
  --gc-paper:#FBF9F8;      /* わずかに温かい地 */
  --gc-line:#E4DEDC;
}

/* --- SWELLのテーマ変数を上書き --- */
:root{
  --color_main:var(--gc-red) !important;
  --color_link:var(--gc-red) !important;
  --color_htag:var(--gc-red) !important;
  --color_main_dark:var(--gc-red-d) !important;
  --color_main_thin:rgba(139,29,44,.06) !important;
  --color_list_check:var(--gc-red) !important;
  --color_list_num:var(--gc-red) !important;
  --color_gnav_bg:#1C1A1B !important;
  --color_footer_bg:#1C1A1B !important;
}

/* --- 動画の色は幕で寄せる。幕は動画レイヤーの中だけに置き、
       上に載る白カード（動画に焼き込まれた部分）は染めない --- */
.p-mainVisual__video{filter:saturate(.34) brightness(.93) contrast(1.04)}
.p-mainVisual__imgLayer::after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(180deg,
    rgba(24,20,22,.50) 0%,
    rgba(24,20,22,.26) 40%,
    rgba(96,18,30,.44) 100%);
}

/* --- 見出し・帯・区切り --- */
.p-mainVisual{border-bottom:4px solid var(--gc-red)}
h2, .wp-block-heading{color:var(--gc-ink)}
.is-style-section_ttl::after,
.is-style-btn_line::after{background:var(--gc-red) !important}

/* 黒帯の見出し（G.C心理メソッド研究所 3つの特徴 等）を臙脂に */
.is-style-onborder_ttl, .is-style-onborder_ttl2,
.swell-block-fullWide__inner .is-style-section_ttl{border-color:var(--gc-red)}

/* --- ボタン・リンク --- */
.swell-block-button__link{background-color:var(--gc-red) !important;border-color:var(--gc-red) !important}
.swell-block-button__link:hover{background-color:var(--gc-red-d) !important}
a{color:var(--gc-red)}
a:hover{color:var(--gc-red-d)}

/* --- カード上のラベル帯（1適職発掘 等の紺）--- */
figcaption, .wp-block-image figcaption{color:var(--gc-ink)}

/* --- 罫線・囲み --- */
hr, .wp-block-separator{border-color:var(--gc-line)}

/* --- 本文の強調は赤にしない（赤だらけ＝逆に安っぽくなる）--- */
.p-mainVisual + * strong, article strong{color:var(--gc-ink)}
strong{color:var(--gc-ink)}
/* 赤は「見出しの線」「ボタン」「番号」だけに絞る */
h2, h3, h4{color:var(--gc-ink) !important}
.wp-block-heading{color:var(--gc-ink) !important}

/* 本文中の「主色の文字」は臙脂にしない＝赤は面と線だけに使う */
p.has-swl-main-color, p.has-swl-main-color *{color:var(--gc-ink) !important}

/* ===== コラム入口（トップからの回遊導線・追加 2026-08） ===== */
.gc-column{padding:72px 0 80px;max-width:1040px;margin:0 auto}
.gc-column__head{text-align:center;margin:0 0 36px}
.gc-column__eyebrow{margin:0 0 10px;font-size:11px;font-weight:700;letter-spacing:.22em;color:var(--gc-red)}
.gc-column__head h2{margin:0 0 12px;font-size:26px;font-weight:700;letter-spacing:.06em;color:var(--gc-ink) !important}
.gc-column__lead{margin:0;font-size:13.5px;line-height:2;color:#5A5457}
.gc-column__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--gc-line);
  border:1px solid var(--gc-line)}
.gc-col{display:flex;flex-direction:column;gap:8px;background:#fff;padding:26px 24px 24px;
  text-decoration:none;transition:background .15s}
.gc-col:hover{background:#FBF8F8}
.gc-col__n{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--gc-red)}
.gc-col b{font-size:16px;font-weight:700;line-height:1.7;color:var(--gc-ink);letter-spacing:.02em}
.gc-col__go{margin-top:6px;font-size:12px;color:#6B6467;display:inline-flex;align-items:center;gap:6px}
.gc-col__go::after{content:"";width:14px;height:1px;background:var(--gc-red)}
.gc-column__more{text-align:center;margin-top:32px}
.gc-more{display:inline-block;padding:14px 40px;border:1px solid var(--gc-red);color:var(--gc-red);
  text-decoration:none;font-size:13.5px;letter-spacing:.04em;transition:all .15s}
.gc-more:hover{background:var(--gc-red);color:#fff}
@media(max-width:900px){.gc-column__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){
  .gc-column{padding:48px 16px 56px}
  .gc-column__grid{grid-template-columns:1fr}
  .gc-column__head h2{font-size:21px}
  .gc-col{padding:20px 18px}
}

/* ===========================================================
   2026-08 第2次: 企業サイトの型に寄せる
   参考=識学 / コーチ・エィ（数値の羅列を出さず、白地＋明朝見出し＋
   細いアクセント線＋1px枠のカードで信頼を作る型）
   =========================================================== */
:root{
  --gc-mincho:"Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP",serif;
  --gc-gray:#5A5457;
}

/* --- ヘッダー: 画像ロゴ → テキストロゴ --- */
.gc-headLogo .c-headLogo__link{display:block;text-decoration:none}
.gc-logo{display:flex;flex-direction:column;align-items:center;gap:6px;line-height:1}
.gc-logo__sub{font-size:11px;letter-spacing:.14em;color:var(--gc-gray)}
.gc-logo__main{font-family:var(--gc-mincho);font-size:27px;font-weight:600;
  letter-spacing:.1em;color:var(--gc-ink)}
.gc-logo__main::first-letter{color:var(--gc-red)}
@media(max-width:959px){
  .gc-logo__sub{font-size:9.5px;letter-spacing:.06em}
  .gc-logo__main{font-size:19px;letter-spacing:.04em}
}

/* --- セクション見出しの共通型 --- */
.gc-sec__head{text-align:center;margin:0 0 44px}
.gc-sec__eyebrow{margin:0 0 14px;font-size:11px;font-weight:700;letter-spacing:.24em;
  color:var(--gc-red)}
.gc-sec__ttl{margin:0 0 18px !important;font-family:var(--gc-mincho);font-size:30px;
  font-weight:600;letter-spacing:.08em;color:var(--gc-ink) !important;line-height:1.5}
.gc-sec__ttl::after{content:"";display:block;width:40px;height:2px;background:var(--gc-red);
  margin:18px auto 0}
.gc-sec__lead{margin:0;font-size:14px;line-height:2.1;color:var(--gc-gray)}

/* --- 5つのテーマ: 焼き込み画像をやめてHTMLカードに --- */
.gc-themes5{display:grid;grid-template-columns:repeat(6,1fr);gap:28px 24px;
  max-width:960px;margin:8px auto 44px}
.gc-t5{grid-column:span 2}
.gc-t5:nth-child(4){grid-column:2 / span 2}
.gc-t5:nth-child(5){grid-column:4 / span 2}
.gc-t5__img{overflow:hidden;background:#EEE9E7}
.gc-t5__img img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;
  transition:transform .4s ease}
.gc-t5:hover .gc-t5__img img{transform:scale(1.04)}
.gc-t5__ttl{margin:16px 0 6px !important;font-size:16px;font-weight:700;letter-spacing:.03em;
  color:var(--gc-ink);line-height:1.6;padding-left:12px;border-left:2px solid var(--gc-red)}
.gc-t5__txt{margin:0 !important;font-size:13px;line-height:1.9;color:var(--gc-gray)}
@media(max-width:767px){
  .gc-themes5{grid-template-columns:repeat(2,1fr);gap:24px 16px;padding:0 16px}
  .gc-t5,.gc-t5:nth-child(4),.gc-t5:nth-child(5){grid-column:span 1}
  .gc-t5__ttl{font-size:14px;margin-top:12px !important}
  .gc-t5__txt{font-size:12px}
}

/* --- ご相談いただくテーマ（旧・統計実績ブロックの置き換え） --- */
.gc-themes{max-width:1000px;margin:0 auto;padding:8px 0 4px}
.gc-themes__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--gc-line);border:1px solid var(--gc-line)}
.gc-theme{background:#fff;padding:28px 24px 30px}
.gc-theme__cat{margin:0 0 18px !important;font-size:15px;font-weight:700;letter-spacing:.04em;
  color:var(--gc-ink);padding-bottom:14px;border-bottom:1px solid var(--gc-line);
  position:relative}
.gc-theme__cat::after{content:"";position:absolute;left:0;bottom:-1px;width:34px;height:1px;
  background:var(--gc-red)}
.gc-theme__list{margin:0;padding:0;list-style:none}
.gc-theme__list li{position:relative;padding-left:14px;margin-bottom:11px;font-size:13px;
  line-height:1.85;color:var(--gc-gray)}
.gc-theme__list li::before{content:"";position:absolute;left:0;top:.75em;width:5px;height:1px;
  background:#B9AFAD}
.gc-disclaimer{max-width:820px;margin:30px auto 0 !important;padding:18px 22px;
  background:#fff;border:1px solid var(--gc-line);
  font-size:12px;line-height:2;color:#4E4749;text-align:left}
@media(max-width:900px){.gc-themes__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){
  .gc-themes__grid{grid-template-columns:1fr}
  .gc-theme{padding:22px 18px 24px}
  .gc-disclaimer{margin:24px 16px 0 !important;font-size:11.5px}
}

/* --- 青が残っている挿絵を地の色に寄せる --- */
img[src*="/up.png"], img[data-src*="/up.png"]{filter:saturate(.28) contrast(1.03)}

/* --- 既存セクション見出しの体裁を揃える --- */
.is-style-section_ttl{font-family:var(--gc-mincho);letter-spacing:.08em}
.is-style-section_ttl .swl-inline-color{color:var(--gc-ink) !important}

/* --- コラム欄も共通見出しの型に合わせる --- */
.gc-column__head h2{font-family:var(--gc-mincho);font-size:30px;font-weight:600;
  letter-spacing:.08em}
.gc-column__head h2::after{content:"";display:block;width:40px;height:2px;
  background:var(--gc-red);margin:18px auto 0}

/* ===========================================================
   2026-08 第3次: 見出しの型を「赤ベタ帯」から
   「明朝＋赤の短線」へ。帯に黒文字が乗る事故も同時に解消。
   =========================================================== */
.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)){
  background:transparent !important;
  color:var(--gc-ink) !important;
  padding:0 !important;
  margin:0 auto 34px !important;
  text-align:center;
  font-family:var(--gc-mincho);
  font-size:30px;
  font-weight:600;
  letter-spacing:.08em;
  line-height:1.55;
}
.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before{
  display:none !important;
}
.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::after{
  content:"";display:block;position:static;width:40px;height:2px;
  background:var(--gc-red);margin:18px auto 0;border:0;
}
@media(max-width:599px){
  .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)){
    font-size:21px;margin-bottom:26px !important}
}

/* 見出しに残っていた紺のインライン色（#3d5484 等）を地の文字色へ */
h1 .swl-inline-color, h2 .swl-inline-color, h3 .swl-inline-color,
h4 .swl-inline-color, h5 .swl-inline-color{color:var(--gc-ink) !important}

/* 淡い青のベタ背景画像を外し、温かいグレーに置き換える */
[data-bg*="12.11.52"], [style*="12.11.52"]{
  background-image:none !important;
  background-color:#F6F3F2 !important;
}

/* カード見出しの左border（当社NG装飾）をやめ、上に短い赤線を置く */
.gc-t5__ttl{border-left:0 !important;padding-left:0 !important;position:relative;
  padding-top:14px !important;margin-top:16px !important}
.gc-t5__ttl::before{content:"";position:absolute;left:0;top:0;width:24px;height:2px;
  background:var(--gc-red)}

/* ===== 末尾の問い合わせ導線（追加 2026-08） ===== */
.gc-cta{background:var(--gc-red-d);color:#fff;padding:76px 20px 82px;text-align:center}
.gc-cta__inner{max-width:760px;margin:0 auto}
.gc-cta__eyebrow{margin:0 0 16px;font-size:11px;font-weight:700;letter-spacing:.24em;
  color:rgba(255,255,255,.72)}
.gc-cta__ttl{margin:0 0 22px;font-family:var(--gc-mincho);font-size:29px;font-weight:600;
  letter-spacing:.06em;line-height:1.6;color:#fff}
.gc-cta__lead{margin:0 0 36px;font-size:14px;line-height:2.1;color:rgba(255,255,255,.86)}
.gc-cta__btns{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}
.gc-btn{display:inline-block;min-width:264px;padding:17px 28px;font-size:14.5px;
  letter-spacing:.04em;text-decoration:none;transition:all .15s}
.gc-btn.-solid{background:#fff;color:var(--gc-red-d);font-weight:700}
.gc-btn.-solid:hover{background:#F3E9EA;color:var(--gc-red-d)}
.gc-btn.-ghost{border:1px solid rgba(255,255,255,.6);color:#fff}
.gc-btn.-ghost:hover{background:rgba(255,255,255,.12);color:#fff}
@media(max-width:599px){
  .gc-cta{padding:52px 16px 58px}
  .gc-cta__ttl{font-size:21px}
  .gc-cta__lead{font-size:13px}
  .gc-btn{min-width:0;width:100%}
}

/* セクション見出しのh3も同じ型に寄せる（左border＋全幅下線をやめる） */
.post_content h3.has-text-align-center:where(:not([class^="swell-block-"])){
  background:transparent !important;border:0 !important;padding:0 !important;
  font-family:var(--gc-mincho);font-size:25px;font-weight:600;letter-spacing:.08em;
  color:var(--gc-ink) !important;margin:0 auto 30px !important}
.post_content h3.has-text-align-center:where(:not([class^="swell-block-"]))::before{display:none !important}
.post_content h3.has-text-align-center:where(:not([class^="swell-block-"]))::after{
  content:"";display:block;position:static;width:34px;height:2px;background:var(--gc-red);
  margin:16px auto 0;border:0}
@media(max-width:599px){
  .post_content h3.has-text-align-center:where(:not([class^="swell-block-"])){font-size:19px}
}

/* CTA見出しはSWELLのh2規則より優先して白（臙脂地に黒文字を防ぐ） */
.gc-cta .gc-cta__ttl,
.post_content .gc-cta .gc-cta__ttl{color:#fff !important;background:transparent !important;
  padding:0 !important;margin:0 auto 22px !important;font-size:29px}
.gc-cta .gc-cta__ttl::before,.gc-cta .gc-cta__ttl::after{display:none !important;content:none !important}
@media(max-width:599px){.gc-cta .gc-cta__ttl{font-size:21px}}



/* ===========================================================
   2026-08 第4次: 地の模様 / 読みものサムネ / 本能セクション再構成 / 動き
   =========================================================== */

/* ---------- 地の模様: 細い方眼 ----------
   屋号の頭文字を斜めに敷き詰める形は、ラグジュアリーブランドの
   モノグラム柄と同じ作りになるので使わない。
   「研究所」に合う、製図用紙のような細い方眼を極薄で敷く。 */
.gc-tex{position:relative;isolation:isolate;overflow:hidden}
.gc-tex::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(to right, rgba(110,21,34,.05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(110,21,34,.05) 1px, transparent 1px);
  background-size:112px 112px;
  -webkit-mask-image:radial-gradient(100% 80% at 50% 45%, #000 0%, transparent 92%);
  mask-image:radial-gradient(100% 80% at 50% 45%, #000 0%, transparent 92%);
}
.gc-tex > *{position:relative;z-index:1}

/* 濃い地（CTA）では白の方眼 */
.gc-tex.-light::before{
  background-image:
    linear-gradient(to right, rgba(255,255,255,.08) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255,255,255,.08) 1px, transparent 1px);
}

/* セクション背後の大きな円弧（1本の線だけ。飾りを増やさない） */
.gc-arc{position:relative;overflow:hidden}
.gc-arc::after{
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:min(760px,86vw);aspect-ratio:1;border:1px solid rgba(110,21,34,.13);
  border-radius:50%;left:50%;top:0;transform:translate(-50%,-34%);
}
.gc-arc > *{position:relative;z-index:1}

/* ---------- 読みもの: サムネ付きカード ---------- */
.gc-column__grid{background:transparent;border:0;gap:24px;
  grid-template-columns:repeat(3,1fr)}
.gc-col{background:#fff;border:1px solid var(--gc-line);padding:0;gap:0;
  overflow:hidden;transition:transform .35s cubic-bezier(.2,.7,.3,1),box-shadow .35s}
.gc-col:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(40,20,24,.13);background:#fff}
.gc-col__thumb{display:block;overflow:hidden;background:#EEE9E7;aspect-ratio:16/9}
.gc-col__thumb img{display:block;width:100%;height:100%;object-fit:cover;
  filter:saturate(.72) contrast(1.03);transition:transform .6s cubic-bezier(.2,.7,.3,1),filter .4s}
.gc-col:hover .gc-col__thumb img{transform:scale(1.07);filter:saturate(.95)}
.gc-col__n{padding:20px 22px 0}
.gc-col b{display:block;padding:8px 22px 0;font-size:15.5px}
.gc-col__go{padding:14px 22px 20px;margin-top:auto}
@media(max-width:900px){.gc-column__grid{grid-template-columns:repeat(2,1fr);gap:18px}}
@media(max-width:600px){.gc-column__grid{grid-template-columns:1fr}}

/* ---------- 本能セクション ---------- */
.gc-symptoms{margin:26px 0 30px;border-top:1px solid var(--gc-line);
  border-bottom:1px solid var(--gc-line)}
.gc-symptoms p{margin:0 !important;padding:15px 4px 15px 30px;position:relative;
  font-size:14.5px;line-height:1.8;color:var(--gc-ink)}
.gc-symptoms p + p{border-top:1px dashed var(--gc-line)}
.gc-symptoms p::before{content:"";position:absolute;left:6px;top:calc(50% - 3px);
  width:6px;height:6px;background:var(--gc-red);border-radius:50%}

/* ---------- 動き ---------- */
@media(prefers-reduced-motion:no-preference){
  [data-anim]{opacity:0;transform:translateY(26px);
    transition:opacity .9s cubic-bezier(.2,.7,.3,1),transform .9s cubic-bezier(.2,.7,.3,1)}
  [data-anim].is-in{opacity:1;transform:none}
  [data-anim][data-anim="right"]{transform:translateX(-28px)}
  [data-anim][data-anim="right"].is-in{transform:none}

  /* 見出しの下線が伸びる */
  .post_content h2::after,.post_content h3.has-text-align-center::after,
  .gc-sec__ttl::after,.gc-column__head h2::after{
    transform:scaleX(0);transform-origin:center;transition:transform .8s .15s cubic-bezier(.2,.7,.3,1)}
  .is-in .post_content h2::after,
  h2.is-in::after,h3.is-in::after{transform:scaleX(1)}

  /* FVの面: 読み込み時に立ち上がる */
  .gc-hero__box{animation:gcHeroIn 1.05s cubic-bezier(.16,.84,.32,1) both}
  .gc-hero__sub{animation:gcRise .8s .30s cubic-bezier(.2,.7,.3,1) both}
  .gc-hero__ttl{animation:gcRise .9s .42s cubic-bezier(.2,.7,.3,1) both}
  .gc-hero__lead{animation:gcRise .9s .56s cubic-bezier(.2,.7,.3,1) both}
  .gc-hero__name{animation:gcRise .9s .68s cubic-bezier(.2,.7,.3,1) both}
}
@keyframes gcHeroIn{from{opacity:0;transform:translateY(30px) scale(.985)}to{opacity:1;transform:none}}
@keyframes gcRise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}

/* 5テーマ・相談テーマのホバー */
.gc-t5__img img{transition:transform .7s cubic-bezier(.2,.7,.3,1),filter .5s}
.gc-t5:hover .gc-t5__img img{transform:scale(1.06)}
.gc-theme{transition:background .3s}
.gc-theme:hover{background:#FDFBFB}

/* CTAボタンの押し出し */
.gc-btn{transition:transform .25s cubic-bezier(.2,.7,.3,1),background .2s,color .2s}
.gc-btn:hover{transform:translateY(-3px)}

/* パララックス用の受け口（JSが --gc-par を書き込む） */
.gc-tex::before{transform:translate3d(0,var(--gc-par,0),0)}
.gc-arc::after{transform:translate(-50%,calc(-34% + var(--gc-par,0px)))}
.p-mainVisual__imgLayer{will-change:transform}


/* ---------- 本能セクション: 見出しを左に固定した2段組 ---------- */
.gc-instinct{background:#F6F3F2;padding:88px 20px 96px}
.gc-instinct__inner{max-width:1040px;margin:0 auto;display:grid;
  grid-template-columns:300px 1fr;gap:64px;align-items:start}
.gc-instinct__head{position:sticky;top:120px}
.gc-instinct__label{margin:0 0 18px;font-family:var(--gc-mincho);font-size:26px;
  font-weight:600;letter-spacing:.08em;color:var(--gc-ink);line-height:1.5;
  padding-bottom:18px;border-bottom:1px solid var(--gc-line);position:relative}
.gc-instinct__label::after{content:"";position:absolute;left:0;bottom:-1px;width:40px;height:2px;
  background:var(--gc-red)}
.gc-instinct__lead{margin:0 0 28px;font-size:13.5px;line-height:2;color:var(--gc-gray)}
.gc-instinct__fig{margin:0}
.gc-instinct__fig img{display:block;width:100%;height:auto;filter:saturate(.24) contrast(1.04)}
.gc-instinct__body p{margin:0 0 22px;font-size:15px;line-height:2.15;color:var(--gc-ink)}
.gc-instinct__body p:last-child{margin-bottom:0}
@media(max-width:900px){
  .gc-instinct{padding:56px 16px 62px}
  .gc-instinct__inner{grid-template-columns:1fr;gap:28px}
  .gc-instinct__head{position:static}
  .gc-instinct__label{font-size:21px}
  .gc-instinct__fig{max-width:190px}
  .gc-instinct__body p{font-size:14px;line-height:2.05;margin-bottom:18px}
}

/* 固定ヘッダーではロゴを1行に（縦積みで崩れていた） */
.l-fixHeader .gc-logo{flex-direction:row;align-items:baseline;gap:10px;white-space:nowrap}
.l-fixHeader .gc-logo__sub{display:none}
.l-fixHeader .gc-logo__main{font-size:19px;letter-spacing:.04em}
.l-fixHeader__logo .c-headLogo{margin:0}

/* 本能セクションを全幅の帯にする（.post_content 内から抜け出す） */
.gc-instinct{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}

/* ===========================================================
   復元ブロック（誤って削除したものを戻す）
   =========================================================== */

/* フッター: 黒地に灰文字だとコントラスト不足。白寄りに上げる */
.l-footer, .l-footer a, .l-footer .copyright, .l-footer span,
.l-footer__foot, .l-footer__foot a{color:#F2EEED !important}
.l-footer a:hover{color:#fff !important}

/* 日本語の改行: 文節で折る（語中で割れるのを防ぐ） */
body, .post_content, .post_content p, .post_content li,
.gc-t5__txt, .gc-t5__ttl, .gc-theme__list li, .gc-theme__cat,
.gc-disclaimer, .gc-cta__lead, .gc-cta__ttl, .gc-column__lead,
.gc-sec__lead, .gc-sec__ttl, .gc-col b,
.gc-instinct__body p, .gc-instinct__lead, .gc-symptoms p{
  word-break:auto-phrase;
  line-break:strict;
  overflow-wrap:break-word;
}
@media(max-width:599px){
  .post_content p{overflow-wrap:anywhere}
}

/* 960〜1240px: グローバルナビが入りきらず端が切れていたので詰める */
@media(min-width:960px) and (max-width:1100px){
  .c-gnav > li > a{padding:0 6px !important;font-size:11px !important;letter-spacing:0 !important}
  .c-gnav .ttl{letter-spacing:0 !important}
}
@media(min-width:1101px) and (max-width:1240px){
  .c-gnav > li > a{padding:0 9px !important;font-size:12px !important;letter-spacing:0 !important}
  .c-gnav .ttl{letter-spacing:0 !important}
}

/* ===== FVの見出し面（動画の焼き込み文字を覆う） =====
   動画は左右と上下に見える状態で残し、中央の面に見出しを置く。 */
.p-mainVisual__inner{position:relative}
.gc-hero{position:absolute;z-index:3;display:flex;align-items:center;justify-content:center;
  left:14%;right:14%;top:21%;bottom:6%;pointer-events:none}
.gc-hero__box{width:100%;height:100%;display:flex;flex-direction:column;
  align-items:center;justify-content:center;
  background:linear-gradient(135deg,#6E1522 0%,#57101B 100%);
  padding:4% 5%;box-sizing:border-box;
  box-shadow:0 24px 60px rgba(0,0,0,.42)}
.gc-hero__sub{margin:0 0 3.2%;font-size:clamp(11px,1.02vw,15px);letter-spacing:.14em;
  color:rgba(255,255,255,.82);line-height:1.6}
.gc-hero__ttl{margin:0 0 3.4%;font-family:var(--gc-mincho);
  font-size:clamp(21px,3.05vw,46px);font-weight:600;letter-spacing:.06em;line-height:1.5;
  color:#fff}
.gc-hero__lead{margin:0 0 4.4%;font-size:clamp(11px,1.06vw,16px);line-height:1.95;
  color:rgba(255,255,255,.88)}
.gc-hero__name{margin:0;padding-top:3%;border-top:1px solid rgba(255,255,255,.32);
  font-size:clamp(10px,.92vw,14px);letter-spacing:.3em;color:rgba(255,255,255,.72)}
.p-mainVisual__imgLayer::after{
  background:linear-gradient(180deg,
    rgba(24,20,22,.42) 0%, rgba(24,20,22,.30) 45%, rgba(96,18,30,.40) 100%) !important}
@media(max-width:959px){
  .gc-hero{left:0;right:0;top:14%;bottom:8%}
  .gc-hero__box{padding:26px 20px}
  .gc-hero__sub{font-size:11px;margin-bottom:14px}
  .gc-hero__ttl{font-size:clamp(20px,5.6vw,28px);margin-bottom:14px}
  .gc-hero__lead{font-size:12.5px;line-height:1.9;margin-bottom:18px}
  .gc-hero__name{font-size:10px;padding-top:14px}
}
@media(prefers-reduced-motion:no-preference){
  .gc-hero__box{animation:gcHeroIn 1.05s cubic-bezier(.16,.84,.32,1) both}
  .gc-hero__sub{animation:gcRise .8s .30s cubic-bezier(.2,.7,.3,1) both}
  .gc-hero__ttl{animation:gcRise .9s .42s cubic-bezier(.2,.7,.3,1) both}
  .gc-hero__lead{animation:gcRise .9s .56s cubic-bezier(.2,.7,.3,1) both}
  .gc-hero__name{animation:gcRise .9s .68s cubic-bezier(.2,.7,.3,1) both}
}

/* FVの面を半透過に。奥の映像は透けるが、動画に焼き込まれた文字は
   backdrop-filter のぼかしで読めなくする（覆う目的を保ったまま抜け感を出す） */
.gc-hero__box{
  background:linear-gradient(135deg,rgba(110,21,34,.80) 0%,rgba(87,16,27,.86) 100%) !important;
  -webkit-backdrop-filter:blur(22px) saturate(.55) brightness(.86);
  backdrop-filter:blur(22px) saturate(.55) brightness(.86);
  border:1px solid rgba(255,255,255,.10);
}

/* 読み込み直後にFVの面がフェードインする間、動画の焼き込み文字が
   一瞬見えていた。面は最初から不透明度100%で置き、動くのは中の文字だけにする。
   backdrop-filter が効き始める前でも隠れるよう、下地の臙脂も濃くする。 */
.gc-hero__box{
  animation:none !important;
  opacity:1 !important;
  background:linear-gradient(135deg,rgba(110,21,34,.80) 0%,rgba(87,16,27,.86) 100%) !important;
}

/* スクロール時の固定ヘッダー: ロゴと横並びになる分ナビが入りきらず
   右端が切れていた。固定ヘッダー内だけ字送りと余白を詰める。 */
@media(min-width:960px){
  .l-fixHeader__inner{max-width:100%;padding-left:20px;padding-right:20px;overflow:hidden}
  .l-fixHeader__logo{margin-right:20px;flex:0 0 auto}
  .l-fixHeader .c-gnav{flex-wrap:nowrap}
  .l-fixHeader .c-gnav > li > a{padding:0 9px !important;font-size:12px !important;
    letter-spacing:0 !important;white-space:nowrap}
  .l-fixHeader .c-gnav .ttl{letter-spacing:0 !important}
}
@media(min-width:960px) and (max-width:1180px){
  .l-fixHeader .c-gnav > li > a{padding:0 5px !important;font-size:10.5px !important}
  .l-fixHeader .gc-logo__main{font-size:15px}
}

/* 固定ヘッダー: 1250px以下はロゴを詰めてナビの居場所を確保 */
@media(min-width:960px) and (max-width:1250px){
  .l-fixHeader .gc-logo__main{font-size:14px;letter-spacing:0}
  .l-fixHeader__logo{margin-right:14px}
  .l-fixHeader .c-gnav > li > a{padding:0 5px !important;font-size:10.5px !important}
}

/* 1250px以下の固定ヘッダーはロゴを頭文字だけにしてナビを収める */
@media(min-width:960px) and (max-width:1250px){
  .l-fixHeader .gc-logo__main{font-size:0;letter-spacing:0}
  .l-fixHeader .gc-logo__main::before{content:"G.C";font-size:17px;letter-spacing:.04em;
    font-family:var(--gc-mincho);color:var(--gc-red)}
  .l-fixHeader__logo{margin-right:12px}
}
@media(min-width:960px) and (max-width:1060px){
  .l-fixHeader .c-gnav > li > a{padding:0 3px !important;font-size:9.8px !important}
}

/* 固定ヘッダーの重なり順
   #body_wrap が z-index:1 の重なり文脈を作っているため、その後ろに置いた
   コラム欄・CTAが、body_wrap の中にある固定ヘッダーより前に出ていた。
   ラッパー側を持ち上げて、ヘッダーが常に最前面に来るようにする。 */
#body_wrap{z-index:3}

/* 固定ヘッダーの地は不透明に（写真の上に来ると文字が読みにくくなるため） */
.l-fixHeader::before{opacity:1 !important}
.l-fixHeader{box-shadow:0 1px 0 rgba(28,26,27,.10)}

/* ===========================================================
   スマホのFV
   動画は「焼き込み文字が入っていない下側」だけを拡大して全面に敷き、
   その上にPCと同じ赤い面を浮かせる。面の外周に映像が見える状態を保つ。
   =========================================================== */
@media(max-width:959px){
  .p-mainVisual,
  .p-mainVisual__inner{height:auto !important;min-height:0 !important}
  .p-mainVisual__inner{display:block;position:relative;aspect-ratio:.80}
  /* SP動画は文字が全幅に焼き込まれていて逃げ場が無く、拡大すると粗が出る。
     23MBのダウンロードも回線に重い。スマホは静止画に差し替える。 */
  .p-mainVisual__imgLayer{position:absolute !important;inset:0 !important;overflow:hidden;
    background:#241c1e url("assets/fv-sp.jpg") 52% 26%/cover no-repeat}
  .p-mainVisual__video{display:none !important}
  .p-mainVisual__imgLayer::after{
    background:linear-gradient(180deg,rgba(24,20,22,.20) 0%,rgba(60,12,20,.34) 100%) !important}
  .p-mainVisual__textLayer{display:none}

  .gc-hero{position:absolute !important;left:20px;right:20px;top:66px;bottom:66px;
    display:flex;align-items:center;justify-content:center;padding:0}
  .gc-hero__box{height:100%;padding:26px 20px 28px;
    background:linear-gradient(150deg,rgba(110,21,34,.86) 0%,rgba(87,16,27,.90) 100%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(.55) brightness(.86);
    backdrop-filter:blur(18px) saturate(.55) brightness(.86);
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 18px 44px rgba(0,0,0,.40)}
  .gc-hero__sub{font-size:10.5px;letter-spacing:.1em;margin-bottom:13px}
  .gc-hero__ttl{font-size:clamp(21px,5.9vw,28px);line-height:1.55;margin-bottom:14px}
  .gc-hero__lead{font-size:12.5px;line-height:1.9;margin-bottom:18px}
  .gc-hero__name{font-size:9.5px;padding-top:14px}
  .p-mainVisual{border-bottom:3px solid var(--gc-red)}
}

/* ===========================================================
   スマホの読みやすさ調整
   =========================================================== */
@media(max-width:600px){
  /* 読みもの: 縦積みのカードだと6件で画面2枚分になるので、
     サムネを左に置いた一覧に切り替える */
  .gc-column{padding:52px 16px 58px}
  .gc-column__grid{grid-template-columns:1fr;gap:0;
    border-top:1px solid var(--gc-line);border-left:0;border-right:0;border-bottom:0}
  .gc-col{display:grid;grid-template-columns:100px 1fr;column-gap:14px;row-gap:0;
    align-items:center;border:0;border-bottom:1px solid var(--gc-line);
    padding:13px 0;overflow:visible}
  .gc-col:hover{transform:none;box-shadow:none}
  .gc-col__thumb{grid-column:1;grid-row:1 / span 3;aspect-ratio:4/3;align-self:center}
  .gc-col__n{grid-column:2;padding:0;font-size:10px}
  .gc-col b{grid-column:2;padding:5px 0 0;font-size:14.5px;line-height:1.55}
  .gc-col__go{grid-column:2;padding:6px 0 0;margin:0;font-size:11px}
  .gc-column__more{margin-top:26px}

  /* 冒頭の一文ずつ並ぶ導入は行間を詰めて、間延びを止める */
  .post_content > .wp-block-group:first-of-type p.wp-block-paragraph{margin-bottom:.55em}

  /* フッターのリンクは詰まって読めないので2列に開く */
  .l-footer__nav{display:grid !important;grid-template-columns:1fr 1fr;gap:0;
    max-width:330px;margin:0 auto}
  .l-footer__nav li{border:0 !important;text-align:left}
  .l-footer__nav li a{display:block;padding:9px 4px;font-size:12px;line-height:1.5}
  .l-footer .copyright{margin-top:14px;font-size:11px}

  /* 5つのテーマ: 説明の行数差で高さが揃わないので上端を合わせる */
  .gc-themes5{align-items:start}
  .gc-t5__txt{font-size:11.5px;line-height:1.8}
}

/* 本能セクション: 長文を3つのまとまりに割って、小見出しで拾えるようにする */
.gc-point{padding:0 0 30px;margin:0 0 30px;border-bottom:1px solid var(--gc-line)}
.gc-point:last-child{border-bottom:0;padding-bottom:0;margin-bottom:0}
.gc-point__ttl{margin:0 0 16px !important;font-size:17px;font-weight:700;
  letter-spacing:.03em;line-height:1.6;color:var(--gc-ink);
  padding-left:14px;position:relative}
.gc-point__ttl::before{content:"";position:absolute;left:0;top:.35em;bottom:.35em;
  width:2px;background:var(--gc-red)}
.gc-point .gc-symptoms{margin:0}
@media(max-width:900px){
  .gc-point{padding-bottom:24px;margin-bottom:24px}
  .gc-point__ttl{font-size:15.5px;margin-bottom:13px !important}
}

/* 5つのテーマの締め: 一続きの文だと読みにくいので2つの札に分ける */
.gc-two{max-width:720px;margin:16px auto 0;text-align:center}
.gc-two__lead{margin:0 0 18px !important;font-size:13.5px;color:var(--gc-gray)}
.gc-two__grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gc-two__item{border:1px solid var(--gc-line);background:#fff;padding:20px 16px}
.gc-two__item b{font-size:15px;font-weight:700;letter-spacing:.02em;line-height:1.7;
  color:var(--gc-ink)}
@media(max-width:600px){
  .gc-two{padding:0 16px}
  .gc-two__grid{grid-template-columns:1fr;gap:10px}
  .gc-two__item{padding:15px 14px}
  .gc-two__item b{font-size:14px}
}

/* 帯のセクションに写真をうっすら敷く（面ではなく奥行きを出す用） */
.gc-photo{position:relative;isolation:isolate}
.gc-photo::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:url("assets/bg-soft.jpg") center/cover no-repeat;
  opacity:.11;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 32%,#000 68%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 32%,#000 68%,transparent 100%);
}
.gc-cta.gc-photo::after{opacity:.14;mix-blend-mode:soft-light}

/* 方眼はやめる（薄い線が画面を横切ってノイズに見えるため）。
   地の質感は写真だけで作る。 */
.gc-tex::before,.gc-tex.-light::before{display:none !important}

/* 注記行: 全角スペースで字下げされていて位置がずれていたので中央に揃える */
.gc-note-line{margin-top:26px !important;color:#6B6467}

/* 施主指示（2026-08-20）: 冒頭の導入だけ明朝にする（信頼と高級感） */
.gc-lead-mincho p,
.gc-lead-mincho .swl-fz{font-family:var(--gc-mincho) !important;letter-spacing:.04em}
.gc-lead-mincho p{line-height:2.2}

/* 施主指示（2026-08-24）
   ・サブタイトルは必ず1行に収める（折り返すと見出しに被って崩れる）
   ・テーマは3つに変更 */
.gc-logo__sub{white-space:nowrap}
@media(max-width:959px){
  .gc-logo__sub{font-size:clamp(8px,2.42vw,10px);letter-spacing:.02em}
}
@media(max-width:374px){
  .gc-logo__sub{font-size:7.8px}
}
.gc-themes5{grid-template-columns:repeat(3,1fr);gap:26px 24px}
.gc-t5,.gc-t5:nth-child(4),.gc-t5:nth-child(5){grid-column:auto}
.gc-t5__ttl{font-size:18px}
@media(max-width:767px){
  /* SPは3列だと説明文が細く折れて読めないので、画像を左に置いた一覧にする */
  .gc-themes5{grid-template-columns:1fr;gap:0;padding:0 16px}
  .gc-t5{display:grid;grid-template-columns:112px 1fr;column-gap:16px;row-gap:0;
    align-items:center;padding:15px 0;border-bottom:1px solid var(--gc-line)}
  .gc-t5:last-child{border-bottom:0}
  .gc-t5__img{grid-column:1;grid-row:1 / span 2}
  .gc-t5__ttl{grid-column:2;font-size:16px;margin-top:0 !important;padding-top:12px !important}
  .gc-t5__txt{grid-column:2;font-size:12.5px;line-height:1.85}
}
/* 3つのまとめ文 */
.gc-three-line{max-width:720px;margin:34px auto 0 !important;font-size:16px;
  letter-spacing:.02em;color:var(--gc-ink)}
.gc-three-line strong{color:var(--gc-red)}
@media(max-width:600px){.gc-three-line{font-size:14px;margin-top:26px !important;padding:0 16px}}

/* ===== 本番（固定ページの本文内）用の調整 =====
   確認用ページでは コラム入口とCTA を本文ブロックの外に置いていたが、
   本番ではどちらも固定ページの本文に入る。幅と余白をここで戻す。
   全幅は 100vw ではなく WP の alignfull を使う（100vw だとスクロールバーの分だけ横にはみ出す）。 */
#main_visual{position:relative}
.post_content .gc-cta{margin-bottom:0}
.post_content .gc-column__head h2,
.post_content .gc-cta__ttl{padding:0 !important;background:transparent !important}
.post_content .gc-column__head h2::before,
.post_content .gc-cta__ttl::before{display:none !important;content:none !important}
.post_content .gc-column__grid{margin:0 auto}
/* コラム入口も alignfull にして、中身だけ 1040px で中央に置く
   （本文の幅に押し込むとカードが痩せて確認用ページと見え方が変わるため） */
.post_content .gc-column.alignfull{max-width:none;padding-left:20px;padding-right:20px;box-sizing:border-box}
.post_content .gc-column.alignfull > *{max-width:1040px;margin-left:auto;margin-right:auto}
@media(max-width:767px){.post_content .gc-column.alignfull{padding-left:16px;padding-right:16px}}
/* 本文の中に入ると .post_content 付きの指定（29px）が
   SPの縮小指定（21px）に特異度で勝ってしまうため、SP側も同じ土俵に揃える */
@media(max-width:599px){
  .gc-cta .gc-cta__ttl,
  .post_content .gc-cta .gc-cta__ttl{font-size:21px}
}
/* 本文の中に入ると .post_content 側の指定を拾ってしまう箇所を、
   確認用ページと同じ値に固定する（見出しサイズと行送り） */
.post_content .gc-column__head h2{font-size:30px}
.post_content .gc-more,
.post_content .gc-btn,
.post_content .gc-col__go{line-height:1.6}
.post_content .gc-column__head h2{line-height:1.6}
.post_content .gc-cta .gc-cta__ttl{line-height:1.6}
