@charset "UTF-8";

/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;600&display=swap');

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon
Version:    1.1.2
*/

/* ============================================
   Axia Partners - LP統一デザイン
   ============================================ */

body {
  background-color: #ffffff !important;
  font-family: 'Noto Serif JP', 'Yu Mincho', serif !important;
  color: #1a1a1a !important;
}

/* ===== ヘッダー ===== */
#header {
  background-color: #ffffff !important;
  box-shadow: none !important;
  border-bottom: 1px solid #e8e8e8 !important;
  padding: 0 !important;
}

.logo img, .logo-header img, #header-logo img {
  max-height: 80px !important;
  width: auto !important;
  height: auto !important;
}

.logo, .logo-header {
  padding: 16px 0 !important;
  text-align: left !important;
}

/* ===== ナビゲーション ===== */
#navi, .navi {
  background-color: #ffffff !important;
  border-top: none !important;
  border-bottom: none !important;
}

.navi-in {
  background-color: #ffffff !important;
}

.navi-in > ul > li, .menu-top > li {
  border-right: none !important;
  border-left: none !important;
  width: auto !important;
}

/* 縦区切り線を削除（.item-label の border-right） */
#navi .navi-in ul li a .caption-wrap .item-label,
#navi .navi-in ul li .item-label,
.navi-in ul li .item-label,
.navi-in .item-label,
.item-label {
  border-right: none !important;
  border-left: none !important;
  font-weight: 400 !important;
}

.navi-in > ul > li > a, .menu-top .menu-item > a {
  font-family: 'Noto Serif JP', serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #333333 !important;
  letter-spacing: 0.1em !important;
  padding: 12px 16px !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
  transition: color 0.2s !important;
}

.navi-in > ul > li > a:hover, .menu-top .menu-item > a:hover {
  color: #b08d57 !important;
  background-color: transparent !important;
}

/* ===== ヒーロー画像エリア（.wrapを除外） ===== */
#appeal .appeal-in,
.appeal-in {
  background-color: transparent !important;
}

/* ===== コンテンツ背景（.wrapは除外） ===== */
#container,
.content-in,
#main,
#sidebar {
  background-color: #ffffff !important;
}

/* ===== 見出しスタイル ===== */
.entry-title, .page-title {
  font-family: 'Noto Serif JP', serif !important;
  font-weight: 300 !important;
  letter-spacing: 0.05em !important;
  color: #1a1a1a !important;
}

.entry-content h2 {
  font-family: 'Noto Serif JP', serif !important;
  font-weight: 300 !important;
  font-size: 1.75rem !important;
  color: #1a1a1a !important;
  border-left: none !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: 1px solid #ddd !important;
  padding: 0 0 12px !important;
  margin-bottom: 36px !important;
  background: none !important;
}

.entry-content h3 {
  font-family: 'Noto Serif JP', serif !important;
  font-weight: 400 !important;
  color: #333 !important;
  border-left: 2px solid #1a3a6b !important;
  border-top: none !important;
  border-right: none !important;
  border-bottom: none !important;
  padding-left: 12px !important;
  background: none !important;
}

/* ===== ドロップダウン ===== */
.navi-in .sub-menu {
  background-color: #ffffff !important;
  border: 1px solid #e8e8e8 !important;
  border-top: 2px solid #1a3a6b !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
}

.navi-in .sub-menu li .item-label { border-right: none !important; }

.navi-in .sub-menu li a {
  color: #333 !important;
  font-size: 12px !important;
  padding: 10px 16px !important;
  white-space: nowrap !important;
}

.navi-in .sub-menu li a:hover {
  background-color: #f5f7fa !important;
  color: #1a3a6b !important;
}

/* ===== フッター ===== */
#footer { background-color: #1a1a1a !important; color: #bbbbbb !important; }
#footer a { color: #aaaaaa !important; }
#footer a:hover { color: #ffffff !important; }

/* ===== レスポンシブ ===== */
@media screen and (max-width: 1023px){
  .navi-in > ul > li > a { font-size: 13px !important; padding: 12px 10px !important; }
}
@media screen and (max-width: 834px){
  .logo img, .logo-header img { max-height: 62px !important; }
}
@media screen and (max-width: 480px){
  .logo img, .logo-header img { max-height: 52px !important; }
}

/* sub-menu reachability */
body.home #header-container { position: relative !important; z-index: 100 !important; }
#navi .navi-in .sub-menu { z-index: 1000 !important; margin-top: 0 !important; }
#navi .navi-in li.menu-item-has-children > a { line-height: 1.4 !important; }


/* ============================================
   トップpage：ヒーロー非表示（ミニマル）
   ============================================ */
body.home #appeal { display: none !important; }
body.home .entry-title { display: none !important; }


/* トップページ：先頭ブロックの余白を詰める */
body.home #main { padding-top: 8px !important; }
body.home .entry-content > .wp-block-columns:first-child h2,
body.home .entry-content > .wp-block-columns:first-child h3 { margin-top: 0 !important; }
