/*
Theme Name: AFFINGER Child
Template:   affinger
Description: AFFINGER6 対応 + fumy-s カスタムデザイン
Version: 20210719
*/

/*media Queries スマートフォンとタブレットサイズ（959px以下）で適応したいCSS - スマホ・タブレット
---------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 959px) {
	/*-- ここまで --*/
}

/*media Queries タブレットサイズ（600px～959px）のみで適応したいCSS -タブレットのみ
---------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 600px) and (max-width: 959px) {
	/*-- ここまで --*/
}

/*media Queries タブレット（600px）以上で適応したいCSS -タブレット・PC
---------------------------------------------------------------------------------------------------*/
@media only screen and (min-width: 600px) {
	/*-- ここまで --*/
}

/*media Queries PCサイズ（960px）以上で適応したいCSS - PCのみ
---------------------------------------------------------------------------------------------------*/
@media print, screen and (min-width: 960px) {
	/*-- ここまで --*/
}

/*media Queries スマホサイズ（599px）以下で適応したいCSS - スマホのみ
---------------------------------------------------------------------------------------------------*/
@media print, screen and (max-width: 599px) {
	/*-- ここまで --*/
}

/* ============================================================
   fumy-s カスタムデザイン
   ※ AFFINGERのテンプレートは一切上書きしない
   ※ front-page.php 専用のスタイルのみ追記
   ============================================================ */

/* CSS変数 */
:root {
  --fs-ai:    #1A2744;
  --fs-kon:   #0D1B3E;
  --fs-fuji:  #3D5A80;
  --fs-koke:  #2C4A3E;
  --fs-washi: #F4F0E8;
  --fs-cream: #FDFBF6;
  --fs-gin:   #D0C8B8;
  --fs-gold:  #B8965A;
  --fs-gold2: #D4AE72;
}

/* スクロールリビール */
.fumy-reveal { opacity:0; transform:translateY(20px); transition:opacity 0.7s ease,transform 0.7s ease; }
.fumy-reveal.fumy-on { opacity:1; transform:translateY(0); }

/* ============================================================
   新着記事帯
   ============================================================ */
.fumy-latest-band { background:#F4F0E8; border-bottom:1px solid #D0C8B8; }
.fumy-latest-band-inner { max-width:1140px; margin:0 auto; padding:0 32px; display:flex; align-items:stretch; min-height:52px; }
.fumy-latest-band-label { font-family:'EB Garamond',serif; font-size:10px; letter-spacing:0.25em; color:#fff; background:#1A2744; padding:0 18px; display:flex; align-items:center; flex-shrink:0; }
.fumy-latest-band-list { display:flex; align-items:stretch; flex:1; overflow:hidden; }
.fumy-latest-band-item { display:flex; align-items:center; gap:10px; padding:0 20px; text-decoration:none; border-right:1px solid #D0C8B8; transition:background 0.2s; flex:1; min-width:0; }
.fumy-latest-band-item:hover { background:rgba(26,39,68,0.04); }
.fumy-latest-band-cat { font-family:'EB Garamond',serif; font-size:9px; letter-spacing:0.12em; color:#fff; padding:1px 7px; flex-shrink:0; white-space:nowrap; }
.fumy-latest-band-cat--content-strategy,.fumy-latest-band-cat--expression,.fumy-latest-band-cat--communication-design { background:linear-gradient(90deg,#1A2744,#3D5A80); }
.fumy-latest-band-cat--mind-temperament,.fumy-latest-band-cat--personality-classification,.fumy-latest-band-cat--subconscious { background:linear-gradient(90deg,#1A2744,#2C4A3E); }
.fumy-latest-band-cat--life-design,.fumy-latest-band-cat--time-and-energy,.fumy-latest-band-cat--habit-design,.fumy-latest-band-cat--goal-design { background:linear-gradient(90deg,#0D2B23,#2C4A3E); }
.fumy-latest-band-title { font-family:'Shippori Mincho',serif; font-size:12px; color:#1A2744; letter-spacing:0.03em; flex:1; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.fumy-latest-band-date { font-family:'EB Garamond',serif; font-size:11px; color:#aaa; letter-spacing:0.06em; flex-shrink:0; white-space:nowrap; }
.fumy-latest-band-more { font-family:'EB Garamond',serif; font-size:12px; color:#B8965A; text-decoration:none; letter-spacing:0.1em; padding:0 20px; display:flex; align-items:center; flex-shrink:0; white-space:nowrap; transition:color 0.2s; }
.fumy-latest-band-more:hover { color:#1A2744; }

/* ============================================================
   ヒーロー
   ============================================================ */
.fumy-hero { background:#0D1B3E; min-height:100vh; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; margin-top:0 !important; }
#fumy-canvas { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; opacity:0.55; }
.fumy-hero-inner { max-width:1140px; margin:0 auto; padding:80px 32px; position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; width:100%; }
.fumy-hero-eyebrow { font-family:'EB Garamond',serif; font-size:12px; letter-spacing:0.3em; color:#D4B878; display:flex; align-items:center; gap:14px; margin-bottom:32px; animation:fumyFadeUp 0.9s 0.1s both; }
.fumy-hero-eyebrow::before { content:''; display:block; width:36px; height:1px; background:#D4B878; }
.fumy-hero-title { font-family:'Shippori Mincho',serif; font-size:clamp(26px,3.8vw,50px); font-weight:600; color:#F4F0E8; line-height:1.5; letter-spacing:0.04em; margin-bottom:24px; animation:fumyFadeUp 0.9s 0.3s both; }
.fumy-hero-title em { font-style:normal; color:#E8D5A3; }
.fumy-hero-sub { font-size:14px; color:rgba(244,240,232,0.88); letter-spacing:0.08em; line-height:2.1; margin-bottom:48px; animation:fumyFadeUp 0.9s 0.5s both; }
.fumy-hero-cta { display:flex; gap:16px; flex-wrap:wrap; animation:fumyFadeUp 0.9s 0.7s both; }
.fumy-btn-gold { font-family:'Shippori Mincho',serif; font-size:13px; letter-spacing:0.12em; color:#0D1B3E; background:#C8A870; padding:14px 36px; text-decoration:none; border:1px solid #C8A870; transition:all 0.3s; display:inline-block; font-weight:500; }
.fumy-btn-gold:hover { background:transparent !important; color:#D4AE72 !important; }
.fumy-btn-outline { font-family:'Shippori Mincho',serif; font-size:13px; letter-spacing:0.12em; color:#F0EDE6; background:transparent; padding:14px 36px; text-decoration:none; border:1px solid rgba(240,237,230,0.7); transition:all 0.3s; display:inline-block; }
.fumy-btn-outline:hover { border-color:#fff !important; color:#fff !important; }
.fumy-hero-right { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:32px; animation:fumyFadeUp 1s 0.5s both; }
.fumy-hero-emblem { width:min(320px,100%); animation:fumySpin 60s linear infinite; }
@keyframes fumySpin { from{transform:rotate(0deg);}to{transform:rotate(360deg);} }
.fumy-hero-keywords { display:flex; flex-wrap:wrap; gap:8px; justify-content:center; max-width:340px; }
.fhk { font-family:'EB Garamond',serif; font-size:11px; letter-spacing:0.12em; color:rgba(240,215,160,1.0); border:1px solid rgba(240,215,160,0.5); padding:4px 12px; animation:fumyFadeUp 0.8s both; }
.fhk--1{animation-delay:0.8s;}.fhk--2{animation-delay:1.0s;}.fhk--3{animation-delay:1.2s;}
.fhk--4{animation-delay:1.4s;}.fhk--5{animation-delay:1.6s;}.fhk--6{animation-delay:1.8s;}
.fumy-hero-scroll { position:absolute; bottom:32px; left:50%; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:8px; z-index:1; animation:fumyFadeUp 1s 2s both; }
.fumy-hero-scroll span { font-family:'EB Garamond',serif; font-size:10px; letter-spacing:0.25em; color:rgba(244,240,232,0.3); }
.fumy-scroll-line { width:1px; height:48px; background:linear-gradient(to bottom,rgba(184,150,90,0.6),transparent); animation:fumyScrollPulse 2s 2.5s infinite; }
@keyframes fumyFadeUp { from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:translateY(0);} }
@keyframes fumyScrollPulse { 0%,100%{opacity:0.4;}50%{opacity:1;} }

/* ============================================================
   ABOUT / PHILOSOPHY
   ============================================================ */
.fumy-philosophy { background:#FDFBF6; padding:96px 32px; border-bottom:1px solid #D0C8B8; }
.fumy-philosophy-inner { max-width:1140px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.fumy-sec-title-en { display:block; font-family:'EB Garamond',serif; font-size:11px; color:#B8965A; letter-spacing:0.22em; margin-bottom:3px; }
.fumy-philosophy-title { font-family:'Shippori Mincho',serif; font-size:clamp(20px,2.5vw,28px); font-weight:600; color:#1A2744; line-height:1.7; letter-spacing:0.04em; margin:12px 0 24px; background:none !important; border:none !important; padding:0 !important; }
.fumy-philosophy-desc { font-size:14px; color:#555; line-height:2.1; margin-bottom:16px; }
.fumy-philosophy-3layer { display:flex; flex-direction:column; gap:10px; margin-top:24px; }
.fumy-layer-item { display:flex; align-items:flex-start; gap:14px; padding:12px 16px; background:#F0EDE6; border-left:2px solid #1A2744; }
.fumy-layer-num { font-family:'EB Garamond',serif; font-size:11px; color:#B8965A; letter-spacing:0.1em; flex-shrink:0; margin-top:2px; }
.fumy-layer-text { font-family:'Shippori Mincho',serif; font-size:13px; color:#444; line-height:1.7; letter-spacing:0.03em; }
.fumy-layer-text strong { color:#1A2744; font-weight:600; }
.fumy-philosophy-profile { border-left:1px solid #D0C8B8; padding-left:48px; }
.fumy-philosophy-name-block { margin-bottom:16px; padding-bottom:16px; border-bottom:1px solid #D0C8B8; position:relative; }
.fumy-philosophy-name-block::after { content:''; position:absolute; bottom:-1px; left:0; width:32px; height:1px; background:#B8965A; }
.fumy-philosophy-name { font-family:'EB Garamond',serif; font-size:24px; color:#1A2744; letter-spacing:0.12em; margin:0 0 4px; }
.fumy-philosophy-role { font-family:'EB Garamond',serif; font-size:12px; color:#B8965A; letter-spacing:0.12em; margin:0; }
.fumy-philosophy-bio { font-size:13px; color:#666; line-height:1.95; margin-bottom:24px; }
.fumy-philosophy-skills { display:flex; flex-wrap:wrap; gap:7px; margin-top:14px; }
.fumy-ptag { font-family:'EB Garamond',serif; font-size:11px; letter-spacing:0.12em; color:#B8965A; border:1px solid rgba(184,150,90,0.4); padding:3px 12px; }
.fumy-philosophy-link { font-family:'Shippori Mincho',serif; font-size:13px; color:#3D5A80; text-decoration:none; letter-spacing:0.08em; display:inline-flex; align-items:center; gap:6px; border-bottom:1px solid rgba(61,90,128,0.3); padding-bottom:2px; transition:gap 0.2s,color 0.2s; }
.fumy-philosophy-link:hover { color:#1A2744 !important; gap:10px; }
.fumy-philosophy-link--sub { color:#888 !important; border-color:rgba(0,0,0,0.15) !important; }

/* ============================================================
   サービスバンド
   ============================================================ */
.fumy-service-band { background:#1A2744; padding:24px 32px; }
.fumy-service-band-inner { max-width:1140px; margin:0 auto; display:flex; align-items:center; gap:24px; }
.fumy-service-band-label { font-family:'EB Garamond',serif; font-size:11px; letter-spacing:0.25em; color:#B8965A; flex-shrink:0; }
.fumy-service-band-text { font-family:'Shippori Mincho',serif; font-size:13px; color:rgba(244,240,232,0.7); letter-spacing:0.06em; flex:1; }
.fumy-service-band-link { font-family:'EB Garamond',serif; font-size:13px; color:#B8965A; text-decoration:none; letter-spacing:0.1em; white-space:nowrap; border:1px solid rgba(184,150,90,0.4); padding:6px 18px; transition:all 0.2s; flex-shrink:0; }
.fumy-service-band-link:hover { background:rgba(184,150,90,0.15) !important; color:#D4AE72 !important; }

/* ============================================================
   カテゴリバンド
   ============================================================ */
.fumy-cat-band { background:#1A2744; border-top:1px solid rgba(184,150,90,0.15); border-bottom:1px solid rgba(184,150,90,0.15); }
.fumy-cat-band-inner { max-width:1140px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); }
.fumy-cat-link { padding:20px 24px; border-right:1px solid rgba(184,150,90,0.12); display:flex; align-items:center; gap:14px; text-decoration:none; transition:background 0.25s; min-width:0; }
.fumy-cat-link:last-child { border-right:none; }
.fumy-cat-link:hover { background:rgba(255,255,255,0.04); }
.fumy-cat-icon { width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-family:'Shippori Mincho',serif; font-size:14px; flex-shrink:0; }
.fumy-cat-meta { display:flex; flex-direction:column; min-width:0; overflow:hidden; }
.fumy-cat-name { font-family:'Shippori Mincho',serif; font-size:13px; color:#F0EDE6; letter-spacing:0.04em; white-space:nowrap; font-weight:500; }
.fumy-cat-en { font-family:'EB Garamond',serif; font-size:11px; color:rgba(240,237,230,0.55); letter-spacing:0.08em; white-space:nowrap; }

/* ============================================================
   記事グリッド
   ============================================================ */
.fumy-top-main { max-width:1140px; margin:0 auto; padding:72px 32px 0; }
.fumy-section { margin-bottom:72px; }
.fumy-sec-head { display:flex; align-items:flex-end; justify-content:space-between; margin-bottom:32px; padding-bottom:14px; border-bottom:1px solid rgba(184,150,90,0.3); position:relative; }
.fumy-sec-head::after { content:''; position:absolute; bottom:-1px; left:0; width:44px; height:2px; background:#B8965A; }
.fumy-sec-title { font-family:'Shippori Mincho',serif; font-size:20px; font-weight:600; color:#F0EDE6; letter-spacing:0.06em; margin:0; background:none !important; border:none !important; padding:0 !important; }
.fumy-sec-more { font-family:'EB Garamond',serif; font-size:13px; color:#B8965A; text-decoration:none; letter-spacing:0.1em; display:flex; align-items:center; gap:5px; transition:gap 0.2s; white-space:nowrap; }
.fumy-sec-more:hover { gap:9px; color:#F0EDE6 !important; }
.fumy-feat-grid { display:grid; grid-template-columns:1.2fr 1fr; grid-template-rows:auto auto; gap:3px; background:#D0C8B8; }
.fumy-card { background:#FDFBF6; text-decoration:none; color:inherit; display:block; overflow:hidden; border-bottom:2px solid transparent; transition:border-color 0.3s; }
.fumy-card--large { grid-row:1/3; }
.fumy-card:hover { border-bottom-color:#B8965A; }
.fumy-card:hover .fumy-cimg img { transform:scale(1.04); }
.fumy-cimg { overflow:hidden; aspect-ratio:16/10; }
.fumy-cimg--large { aspect-ratio:unset; min-height:300px; height:62%; }
.fumy-cimg img { width:100%; height:100%; object-fit:cover; display:block; transition:transform 0.5s ease; }
.fumy-ph { width:100%; height:100%; min-height:140px; }
.fumy-ph--ai { background:linear-gradient(135deg,#0D1B3E,#3D5A80); }
.fumy-ph--nuri { background:linear-gradient(135deg,#0A1E18,#2C4A3E); }
.fumy-ph--mind-temperament { background:linear-gradient(135deg,#0D1B3E,#2C4A3E); }
.fumy-ph--content-strategy { background:linear-gradient(135deg,#0A1828,#2A4060); }
.fumy-ph--life-design { background:linear-gradient(135deg,#0A1E18,#1A3A2A); }
.fumy-cbody { padding:18px 22px 22px; }
.fumy-card--large .fumy-cbody { padding:22px 26px 26px; }
.fumy-ctag { font-family:'EB Garamond',serif; font-size:10px; letter-spacing:0.18em; color:#fff; padding:2px 9px; display:inline-block; margin-bottom:9px; }
.fumy-ctag--content-strategy,.fumy-ctag--expression,.fumy-ctag--communication-design { background:linear-gradient(90deg,#1A2744,#3D5A80); }
.fumy-ctag--mind-temperament,.fumy-ctag--personality-classification,.fumy-ctag--subconscious { background:linear-gradient(90deg,#1A2744,#2C4A3E); }
.fumy-ctag--life-design,.fumy-ctag--time-and-energy,.fumy-ctag--habit-design,.fumy-ctag--goal-design { background:linear-gradient(90deg,#0D2B23,#2C4A3E); }
.fumy-ctitle { font-family:'Shippori Mincho',serif; font-size:15px; font-weight:600; color:#1A2744; line-height:1.6; margin-bottom:6px; background:none !important; border:none !important; padding:0 !important; }
.fumy-card--large .fumy-ctitle { font-size:19px; }
.fumy-cexcerpt { font-size:12px; color:#666; line-height:1.85; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.fumy-cdate { font-family:'EB Garamond',serif; font-size:11px; color:#aaa; margin-top:10px; }
.fumy-grid3 { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.fumy-card-std { background:#FDFBF6; text-decoration:none; color:inherit; display:block; overflow:hidden; border-bottom:2px solid transparent; transition:border-color 0.3s; }
.fumy-card-std:hover { border-bottom-color:#B8965A; }
.fumy-card-std:hover .fumy-cimg img { transform:scale(1.04); }
.fumy-card-std .fumy-cimg { aspect-ratio:16/10; }

/* ============================================================
   CTA
   ============================================================ */
.fumy-cta-section { background:#0D1B3E; padding:80px 32px; margin-top:80px; text-align:center; position:relative; overflow:hidden; }
.fumy-cta-section::before { content:''; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:600px; height:600px; border:1px solid rgba(184,150,90,0.08); border-radius:50%; pointer-events:none; }
.fumy-cta-inner { position:relative; z-index:1; }
.fumy-cta-en { font-family:'EB Garamond',serif; font-size:11px; letter-spacing:0.3em; color:#B8965A; margin-bottom:12px; }
.fumy-cta-title { font-family:'Shippori Mincho',serif; font-size:clamp(20px,2.5vw,28px); font-weight:600; color:#F4F0E8; letter-spacing:0.06em; margin-bottom:16px; background:none !important; border:none !important; padding:0 !important; }
.fumy-cta-desc { font-size:13px; color:rgba(244,240,232,0.5); letter-spacing:0.06em; margin-bottom:36px; }
.fumy-cta-btn { font-family:'Shippori Mincho',serif; font-size:14px; letter-spacing:0.12em; color:#0D1B3E; background:#B8965A; padding:16px 48px; text-decoration:none; border:1px solid #B8965A; transition:all 0.3s; display:inline-block; }
.fumy-cta-btn:hover { background:transparent !important; color:#B8965A !important; }

/* ============================================================
   レスポンシブ
   ============================================================ */
@media (max-width: 900px) {
  .fumy-hero { min-height:80vh; }
  .fumy-hero-inner { grid-template-columns:1fr; gap:32px; padding:40px 24px 56px; }
  .fumy-hero-right { display:none; }
  .fumy-philosophy-inner { grid-template-columns:1fr; gap:48px; }
  .fumy-philosophy-profile { border-left:none; border-top:1px solid #D0C8B8; padding-left:0; padding-top:40px; }
  .fumy-feat-grid { grid-template-columns:1fr; }
  .fumy-card--large { grid-row:auto; }
  .fumy-grid3 { grid-template-columns:repeat(2,1fr); }
  .fumy-service-band-inner { flex-direction:column; text-align:center; gap:12px; }
  .fumy-latest-band-list { flex-direction:column; }
  .fumy-latest-band-item { border-right:none; border-bottom:1px solid #D0C8B8; padding:10px 16px; flex:none; }
  .fumy-latest-band-more { padding:10px 16px; border-top:1px solid #D0C8B8; }
  .fumy-latest-band-inner { flex-direction:column; padding:0; }
  .fumy-latest-band-label { padding:8px 16px; }
}

@media (max-width: 600px) {
  .fumy-hero { min-height:auto; }
  .fumy-hero-inner { padding:32px 20px 48px; }
  .fumy-hero-sub { margin-bottom:32px; }
  .fumy-hero-scroll { display:none; }
  .fumy-philosophy { padding:48px 20px; }
  .fumy-top-main { padding:40px 20px 0; }
  .fumy-section { margin-bottom:48px; }
  .fumy-grid3 { grid-template-columns:1fr; }
  .fumy-cat-link { padding:12px 8px; flex-direction:column; gap:5px; text-align:center; }
  .fumy-cat-en { display:none; }
  .fumy-cta-section { padding:48px 20px; }
}

/* ============================================================
   AFFINGERヘッダー背景・キャッチフレーズ対策
   ============================================================ */
#header,
#header-in,
#headbox {
  background-color: #0D1B3E !important;
  background-image: none !important;
}

/* キャッチフレーズ非表示 */
#site-description,
.site-description,
#catch,
.header-catch {
  display: none !important;
}

/* ヘッダー下余白除去 */
#header { margin-bottom: 0 !important; padding-bottom: 0 !important; }
#navi, #navi-in { margin-bottom: 0 !important; }
.fumy-hero { margin-top: 0 !important; }

/* ナビリンク色 */
#navi .menu-content > li > a,
.navi-in > ul > li > a {
  color: #F0EDE6 !important;
}

/* ============================================================
   ヘッダー画像・メインビジュアル強制非表示
   ============================================================ */
#header-image,
.header-image,
#main-image,
.main-image,
#slider,
.slider,
#mv,
.mv,
#mainvisual,
.mainvisual,
#eyecatch-wrap,
.eyecatch-wrap,
#st-header-image,
.st-header-image,
#affinger-header-image,
[id*="header-image"],
[class*="header-image"],
[id*="main-image"],
[class*="main-image"],
[id*="slider"],
[class*="slider-wrap"],
#catch-bg,
.catch-bg {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
}


/* ============================================================
   ヒーロー CTAボタン（カテゴリ別・モダン）
   ============================================================ */
.fumy-hero-cta {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  animation: fumyFadeUp 0.9s 0.7s both;
  margin-bottom: 14px;
}
.fumy-btn-cat {
  font-family: 'Shippori Mincho', serif;
  font-size: 12px;
  letter-spacing: 0.08em;
  color: #fff;
  padding: 10px 20px;
  text-decoration: none;
  transition: all 0.3s;
  display: inline-block;
  border: none;
}
.fumy-btn-cat--mind    { background: linear-gradient(135deg,#1A2744,#2C4A3E); }
.fumy-btn-cat--content { background: linear-gradient(135deg,#1A2744,#3D5A80); }
.fumy-btn-cat--life    { background: linear-gradient(135deg,#0D2B23,#2C4A3E); }
.fumy-btn-cat:hover { opacity: 0.82; transform: translateY(-2px); color: #fff !important; }
.fumy-hero-sub-cta { animation: fumyFadeUp 0.9s 0.9s both; }

/* ============================================================
   SP（599px以下）完全刷新
   ============================================================ */
@media (max-width: 599px) {

  .fumy-hero { min-height: auto !important; }
  .fumy-hero-inner { grid-template-columns: 1fr !important; padding: 36px 20px 52px !important; gap: 0 !important; }
  .fumy-hero-right { display: none !important; }
  .fumy-hero-scroll { display: none !important; }

  .fumy-hero-eyebrow { font-size: 9px !important; letter-spacing: 0.18em !important; margin-bottom: 16px !important; gap: 10px !important; }
  .fumy-hero-eyebrow::before { width: 20px !important; }

  .fumy-hero-title { font-size: 7.5vw !important; line-height: 1.45 !important; letter-spacing: 0.02em !important; margin-bottom: 16px !important; word-break: keep-all !important; }

  .fumy-hero-sub { font-size: 12px !important; line-height: 1.85 !important; margin-bottom: 24px !important; color: rgba(244,240,232,0.85) !important; }

  .fumy-hero-cta { gap: 6px !important; margin-bottom: 10px !important; }
  .fumy-btn-cat { font-size: 11px !important; padding: 8px 12px !important; letter-spacing: 0.05em !important; flex: 1 !important; text-align: center !important; min-width: 0 !important; }
  .fumy-btn-outline { font-size: 11px !important; padding: 8px 20px !important; letter-spacing: 0.08em !important; color: rgba(244,240,232,0.7) !important; border-color: rgba(244,240,232,0.3) !important; display: inline-block !important; }

  .fumy-latest-band-inner { padding: 0 !important; flex-direction: column !important; }
  .fumy-latest-band-label { padding: 8px 14px !important; font-size: 9px !important; }
  .fumy-latest-band-list { flex-direction: column !important; }
  .fumy-latest-band-item { border-right: none !important; border-bottom: 1px solid #D0C8B8 !important; padding: 9px 14px !important; flex: none !important; gap: 8px !important; }
  .fumy-latest-band-title { font-size: 11px !important; }
  .fumy-latest-band-date { display: none !important; }
  .fumy-latest-band-more { padding: 9px 14px !important; font-size: 11px !important; border-top: 1px solid #D0C8B8 !important; }

  .fumy-cat-band-inner { grid-template-columns: repeat(3,1fr) !important; }
  .fumy-cat-link { padding: 12px 4px !important; flex-direction: column !important; gap: 4px !important; text-align: center !important; align-items: center !important; }
  .fumy-cat-icon { width: 28px !important; height: 28px !important; font-size: 11px !important; }
  .fumy-cat-name { font-size: 10px !important; white-space: normal !important; line-height: 1.3 !important; }
  .fumy-cat-en { display: none !important; }

  .fumy-philosophy { padding: 40px 16px !important; }
  .fumy-philosophy-inner { grid-template-columns: 1fr !important; gap: 32px !important; }
  .fumy-philosophy-title { font-size: 17px !important; margin: 8px 0 16px !important; }
  .fumy-philosophy-desc { font-size: 13px !important; margin-bottom: 12px !important; }
  .fumy-layer-item { padding: 10px 12px !important; }
  .fumy-layer-text { font-size: 12px !important; }
  .fumy-philosophy-profile { border-left: none !important; border-top: 1px solid #D0C8B8 !important; padding-left: 0 !important; padding-top: 28px !important; }
  .fumy-philosophy-name { font-size: 18px !important; }
  .fumy-philosophy-bio { font-size: 12px !important; }

  .fumy-service-band { padding: 16px !important; }
  .fumy-service-band-inner { flex-direction: column !important; gap: 8px !important; text-align: center !important; }
  .fumy-service-band-text { font-size: 12px !important; }
  .fumy-service-band-link { padding: 6px 16px !important; font-size: 12px !important; }

  .fumy-top-main { padding: 28px 16px 0 !important; }
  .fumy-section { margin-bottom: 40px !important; }
  .fumy-sec-title { font-size: 15px !important; }
  .fumy-sec-more { font-size: 11px !important; }
  .fumy-feat-grid { grid-template-columns: 1fr !important; }
  .fumy-card--large { grid-row: auto !important; }
  .fumy-grid3 { grid-template-columns: 1fr !important; }
  .fumy-ctitle { font-size: 13px !important; }
  .fumy-cexcerpt { display: none !important; }
  .fumy-cbody { padding: 12px 14px 14px !important; }

  .fumy-cta-section { padding: 40px 16px !important; margin-top: 48px !important; }
  .fumy-cta-title { font-size: 17px !important; }
  .fumy-cta-desc { font-size: 12px !important; margin-bottom: 24px !important; }
  .fumy-cta-btn { padding: 12px 28px !important; font-size: 13px !important; }
}

/* ============================================================
   記事グリッドエリア背景・セクションタイトル色修正
   ============================================================ */
.fumy-top-main {
  background: #F4F0E8 !important;
}

/* セクションタイトルが紺背景に溶け込む場合の対策 */
.fumy-sec-title {
  color: #1A2744 !important;
  background: none !important;
  padding: 0 !important;
  border: none !important;
}

.fumy-sec-head {
  background: transparent !important;
}

/* fumy-section全体の背景を和紙色に */
.fumy-section {
  background: #F4F0E8 !important;
}
