/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;1,400&family=Noto+Sans+JP:wght@300;400;500&display=swap');

/* ベース */
body { background: #fdfcfb !important; font-family: 'Noto Sans JP', sans-serif !important; font-weight: 300 !important; }

/* ナビゲーション */
.ep-header, .ep-header__inner, .ep-header__logo-area, header.ep-header { background: #0d1f33 !important; border-bottom: 0.5px solid rgba(42,157,143,0.2) !important; }
.ep-global-menu__link, .ep-header__logo a, .ep-header a { color: rgba(240,237,232,0.65) !important; }
.ep-global-menu__link:hover { color: #3bbfb0 !important; }

/* セクション見出し */
.wp-block-heading { font-family: 'Cormorant Garamond', 'Noto Serif JP', Georgia, serif !important; font-weight: 500 !important; letter-spacing: 0.01em !important; }
.wp-block-heading.has-info-color, .wp-block-heading.has-text-color { color: #0d1f33 !important; }
.epb-underline-blue { color: #0d1f33 !important; }

/* アクセントカラー（青→ティール） */
.has-info-color { color: #2a9d8f !important; }
.has-info-background-color { background-color: #2a9d8f !important; }
.has-light-blue-background-color { background-color: #2a9d8f !important; color: #fff !important; }

/* カード枠線なし＋ホバー */
.epb-panel-number, .epb-panel-number__inner { border: none !important; }
.epb-panel-number { transition: transform 0.2s, box-shadow 0.2s !important; }
.epb-panel-number:hover { transform: translateY(-3px) !important; box-shadow: 0 8px 20px rgba(13,31,51,0.08) !important; }

/* ナンバーバッジ（青→ティール） */
.epb-panel-number__item { background-color: #2a9d8f !important; --epb-panel-number-item-background-color: #2a9d8f !important; }

/* EPBボタン（ピルスタイル） */
.epb-advanced-button { border-radius: 100px !important; }

/* タイムライン */
.epb-timeline__number { background-color: #2a9d8f !important; color: #2a9d8f !important; }
.epb-timeline__item { --epb-border-color: #2a9d8f !important; }

/* Projectセクション背景 */
#link2 { scroll-margin-top: 70px; }

/* コンタクトボックス */
.has-background[style*="#d1e3f6"] { background-color: #f0f7f6 !important; }
.has-border-color[style*="2A5C7A"] { border-color: #2a9d8f !important; }

/* Services数字バッジ */
.ep-footer, footer.ep-footer, .ep-footer__inner { background: #0d1f33 !important; }
/* ── セクションラベル（PROFILE, PROJECT... ）── */
h1#link1::before { content: 'Profile'; display:block; font-size:11px; letter-spacing:0.2em; color:#2a9d8f; text-transform:uppercase; font-weight:400; margin-bottom:0.5rem; font-family:'Noto Sans JP',sans-serif; }
h1#link2::before { content: 'Project'; display:block; font-size:11px; letter-spacing:0.2em; color:#2a9d8f; text-transform:uppercase; font-weight:400; margin-bottom:0.5rem; font-family:'Noto Sans JP',sans-serif; }
h1#link_topics::before { content: 'Expertise'; display:block; font-size:11px; letter-spacing:0.2em; color:#2a9d8f; text-transform:uppercase; font-weight:400; margin-bottom:0.5rem; font-family:'Noto Sans JP',sans-serif; }
h1#link3::before { content: 'Achievements / Media'; display:block; font-size:11px; letter-spacing:0.2em; color:#2a9d8f; text-transform:uppercase; font-weight:400; margin-bottom:0.5rem; font-family:'Noto Sans JP',sans-serif; }
h1#link4::before { content: 'Message'; display:block; font-size:11px; letter-spacing:0.2em; color:#2a9d8f; text-transform:uppercase; font-weight:400; margin-bottom:0.5rem; font-family:'Noto Sans JP',sans-serif; }
h1#link_request::before { content: 'Services'; display:block; font-size:11px; letter-spacing:0.2em; color:#2a9d8f; text-transform:uppercase; font-weight:400; margin-bottom:0.5rem; font-family:'Noto Sans JP',sans-serif; }
h1#link5::before { content: 'Contact'; display:block; font-size:11px; letter-spacing:0.2em; color:#2a9d8f; text-transform:uppercase; font-weight:400; margin-bottom:0.5rem; font-family:'Noto Sans JP',sans-serif; }

/* ── Projectセクション クリーム背景 ── */
#link2 { scroll-margin-top: 70px; }
.ep-header a,
.ep-header nav a,
.ep-header li a,
.ep-header .menu-item a,
.ep-header__logo a {
  color: #ffffff !important;
  text-decoration: none !important;
}
.ep-header a:hover,
.ep-header li a:hover {
  color: #3bbfb0 !important;
}

/* セクション間の余白 */
h1#link1,
h1#link2,
h1#link_topics,
h1#link3,
h1#link4,
h1#link_request,
h1#link5 {
  margin-top: 5rem !important;
  padding-top: 2rem !important;
}

/* タイムラインとProjectセクションの間 */
.epb-timeline {
  margin-bottom: 3rem !important;
}

/* カードグループの下の余白 */
.epb-columns {
  margin-bottom: 2rem !important;
}