@charset "UTF-8";
/**
 * organichouse ヘッダーカスタマイズ（最適化版）
 *
 * このファイルにはorganichouseテーマのヘッダーデザインを再現するための
 * カスタムスタイルを記述します。
 */

/* ============================================
   フォント設定
   ============================================ */
@import url('https://fonts.googleapis.com/css?family=EB+Garamond:400,500');

/* ============================================
   カラー変数（organichouseのカラースキーム）
   ============================================ */
:root {
  --oh-bg-primary: #fff7e7;
  --oh-bg-light: #fff7e7;
  --oh-text-primary: #745f43;
  --oh-text-hover: #e66d3c;
  --oh-white: #fff5ef;
}

/* ============================================
   body背景色とフォント設定
   ============================================ */
body {
  background: var(--oh-bg-light);
  color: var(--oh-text-primary);
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  font-size: 14px;
  line-height: 1.5;
  padding-top: 0 !important;
}

/* 明朝体が必要な要素 */
.min {
  font-family: 'EB Garamond', YuMincho, "游明朝", "yu-mincho-pr6", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-transform: uppercase;
  font-weight: normal;
}

/* ============================================
   リンクの基本スタイル
   ============================================ */
a {
  color: var(--oh-text-primary);
  transition: color 0.3s ease-in-out;
}

a:hover {
  color: var(--oh-text-hover);
}

/* ============================================
   コンテンツエリア全体の背景
   ============================================ */
.l-content,
#body_wrap {
  background: var(--oh-bg-light);
}

/* ============================================
   ヘッダー全体のスタイル
   ============================================ */
.l-header {
  background: rgba(255, 247, 231, 0.85) !important;
  border-bottom: 1px solid var(--oh-text-primary);
  position: sticky !important;
  top: 0 !important;
  z-index: 1000 !important;
  box-shadow: 0 2px 4px rgba(116, 95, 67, 0.1);
  opacity: 1 !important;
  transition: none !important;
}

/* ホバー時も同じ背景透過度を維持 */
.l-header:hover {
  background: rgba(255, 247, 231, 0.85) !important;
  opacity: 1 !important;
  transition: opacity 0.3s ease;
}

/* ヘッダーを常に表示（スクロール時の非表示を防ぐ） */
.l-header.is-hidden,
.l-header.is-fixed,
.l-header.is-show,
.l-header.-fixed {
  transform: translateY(0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: sticky !important;
  top: 0 !important;
}

/* スクロール時に表示される固定ヘッダーを非表示 */
#fix_header,
.l-fixHeader {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* ヘッダー内側のスタイル */
.l-header .inner,
.l-header__inner,
.l-header .l-container {
  max-width: 1110px !important;
  margin: 0 auto;
  padding: 20px 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* ヘッダーバー（RSS・検索アイコン）を非表示 */
.l-header__bar {
  display: none !important;
}

/* ============================================
   ヘッダーロゴのスタイル
   ============================================ */
.l-header__logo {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  height: 100%;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 1 !important;
}

.c-headLogo,
.organichouse-logo {
  display: flex !important;
  align-items: center !important;
  height: auto !important;
  max-height: 29.5px !important;
  margin: auto 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 1 !important;
}

.c-headLogo__link {
  display: flex !important;
  align-items: center !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 1 !important;
}

.c-headLogo__img {
  display: block;
  margin: 0 !important;
  vertical-align: middle;
  max-width: 100%;
  height: 29.5px !important;
  width: auto !important;
  max-height: 29.5px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  opacity: 1 !important;
}

/* ロゴとSNSアイコンを完全に不透明化 */
.l-header__logo,
.l-header__logo *,
.c-headLogo,
.c-headLogo *,
.c-headLogo__img,
.organichouse-gnav .menu-item.sns,
.organichouse-gnav .menu-item.sns *,
.organichouse-gnav .menu-item.sns a,
.organichouse-gnav .menu-item.sns i {
  opacity: 1 !important;
  filter: none !important;
}

/* ============================================
   グローバルナビゲーション
   ============================================ */
.c-gnav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: nowrap;
  gap: 10px;
}

.c-gnav .menu-item {
  margin: 0 10px;
}

.c-gnav .menu-item a {
  display: inline-block;
  color: var(--oh-text-primary);
  text-decoration: none;
  transition: color 0.3s ease-in-out;
}

.c-gnav .menu-item a:hover {
  color: var(--oh-text-hover);
}

/* ヘッダーナビの右マージン */
.l-header__gnav.c-gnavWrap,
.l-header__gnav {
  margin-right: 20px !important;
}

/* ============================================
   organichouse カスタムナビゲーション
   ============================================ */
.organichouse-gnav .menu-item {
  margin: 0 10px;
  list-style: none;
  display: inline-flex;
  align-items: center;
}

.organichouse-gnav .menu-item a {
  display: inline-flex;
  align-items: center;
  color: var(--oh-text-primary);
  text-decoration: none;
  transition: color 0.3s ease-in-out;
  height: 100%;
}

.organichouse-gnav .menu-item a:hover {
  color: var(--oh-text-hover);
}

/* アイコン付きリンク */
.organichouse-gnav .menu-item a.icon {
  padding: 0 0 0 20px;
  background-repeat: no-repeat;
  background-position: left center;
}

.organichouse-gnav .menu-item a.icon.house {
  background-image: url('./common/img/icon/icon-house.svg');
  background-size: 12px 13px;
}

.organichouse-gnav .menu-item a.icon.house:hover {
  background-image: url('./common/img/icon/icon-house_on.svg');
  color: var(--oh-text-hover);
}

.organichouse-gnav .menu-item a.icon.map {
  background-image: url('./common/img/icon/icon-map.svg');
  background-size: 13px 16px;
}

.organichouse-gnav .menu-item a.icon.map:hover {
  background-image: url('./common/img/icon/icon-map_on.svg');
  color: var(--oh-text-hover);
}

.organichouse-gnav .menu-item a.icon.book {
  padding: 0 0 0 25px;
  background-image: url('./common/img/icon/icon-book.svg');
  background-size: 18px 14px;
}

.organichouse-gnav .menu-item a.icon.book:hover {
  background-image: url('./common/img/icon/icon-book_on.svg');
  color: var(--oh-text-hover);
}

.organichouse-gnav .menu-item a.icon.recruitment {
  background-image: url('./common/img/icon/icon-recruitment.svg');
  background-size: 11px 17px;
}

.organichouse-gnav .menu-item a.icon.recruitment:hover {
  background-image: url('./common/img/icon/icon-recruitment_on.svg');
  color: var(--oh-text-hover);
}

/* SNSアイコン */
.organichouse-gnav .menu-item.sns {
  margin: 0 5px 0 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}

.organichouse-gnav .menu-item.sns a {
  color: var(--oh-white);
  background: var(--oh-text-primary);
  width: 24px;
  height: 24px;
  padding: 0;
  line-height: 24px;
  text-align: center;
  font-size: 1rem;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s ease-in-out;
}

.organichouse-gnav .menu-item.sns a:hover {
  background: var(--oh-text-hover);
  color: var(--oh-white);
}

/* Font Awesome アイコンサイズ調整 */
.organichouse-gnav .menu-item.sns a i {
  font-size: 12px;
}

/* ============================================
   ヘッダー内のホバーアニメーション無効化
   ============================================ */
.l-header a,
.l-header__gnav a,
.organichouse-gnav a,
.c-gnav a {
  text-decoration: none !important;
  border-bottom: none !important;
  transition: none !important;
}

.l-header a:hover,
.l-header__gnav a:hover,
.organichouse-gnav a:hover,
.c-gnav a:hover {
  text-decoration: none !important;
  border-bottom: none !important;
}

/* SWELLテーマのホバー下線アニメーションを無効化 */
.l-header a::before,
.l-header a::after,
.l-header__gnav a::before,
.l-header__gnav a::after,
.organichouse-gnav a::before,
.organichouse-gnav a::after {
  display: none !important;
  content: none !important;
}

/* ============================================
   レスポンシブ: PC
   ============================================ */
@media (min-width: 960px) {
  .l-header {
    height: 70.17px !important;
    min-height: 70.17px !important;
  }

  .l-header__inner {
    height: 70.17px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }

  .l-header__logo {
    display: flex;
    align-items: center;
    height: 100%;
  }

  .l-header__gnav {
    display: flex;
    align-items: center;
    height: 100%;
  }
}

/* ============================================
   レスポンシブ: タブレット以下
   ============================================ */
@media (max-width: 959px) {
  /* ヘッダー高さ調整 */
  .l-header {
    height: 54.667px !important;
    min-height: 54.667px !important;
  }

  .l-header__inner {
    height: 54.667px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 0 9.750px !important;
    flex-direction: row !important;
  }

  /* ヘッダーロゴサイズ調整 */
  .l-header__logo {
    max-width: 250px;
    flex: 0 0 auto !important;
    order: 1 !important;
  }

  .c-headLogo__img {
    height: 19.698px !important;
    width: auto !important;
    max-width: none !important;
    max-height: 19.698px !important;
  }

  /* ナビゲーション調整 */
  .l-header__gnav {
    display: flex !important;
    flex: 0 0 auto !important;
    order: 2 !important;
  }

  .organichouse-gnav {
    display: flex !important;
    gap: 10px !important;
  }

  .organichouse-gnav .menu-item a.icon {
    padding-left: 15px;
  }

  /* SNSアイコンのみ表示 */
  .organichouse-gnav .menu-item.pc {
    display: none !important;
  }

  .organichouse-gnav .menu-item.sns {
    display: inline-flex !important;
  }

  .organichouse-gnav .menu-item.sns a {
    width: 24px !important;
    height: 24px !important;
    line-height: 24px !important;
    font-size: 12px !important;
  }

  .organichouse-gnav .menu-item.sns a i {
    font-size: 14px !important;
  }

  /* ハンバーガーメニューボタンを非表示 */
  .l-header__menuBtn,
  .c-iconBtn.-menuBtn,
  .l-header__customBtn {
    display: none !important;
  }

  /* ロゴとSNSアイコンを完全に不透明に */
  .l-header__logo,
  .l-header__logo *,
  .c-headLogo,
  .c-headLogo *,
  .c-headLogo__link,
  .c-headLogo__link *,
  .c-headLogo__img,
  .organichouse-gnav .menu-item.sns,
  .organichouse-gnav .menu-item.sns *,
  .organichouse-gnav .menu-item.sns a,
  .organichouse-gnav .menu-item.sns a *,
  .organichouse-gnav .menu-item.sns i {
    opacity: 1 !important;
    filter: none !important;
  }
}

/* ============================================
   レスポンシブ: スマホ
   ============================================ */
@media (max-width: 599px) {
  .l-header__logo {
    max-width: 200px;
  }

  .organichouse-gnav .menu-item.sns {
    margin: 0 3px;
  }
}

/* ============================================
   「さぁ、始めよう。」非表示
   ============================================ */
#main_visual {
	display: none !important;
}