@charset "UTF-8";
/*
Theme Name: XeoryExtensionChild
Theme URI: https://xeory.jp/extension
Template: xeory_extension
Description: Xeory拡張子テーマ
Author: バズ部
Author URI: https://bazubu.com/
Version: 1.0.0
*/

/* ----------------------------------------
* 1, テーマカラー 06 の既存設定 (全て再掲)
---------------------------------------- */

.home.color06 #main_visual {
  background-color: #FFB046;
  background-image: -webkit-linear-gradient(bottom right, #FFB046, #E89A31);
  background-image: linear-gradient(to top left, #FFB046, #E89A31);
  color: #fff;
}
.home.color06 .front-loop {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  background: #fff;
}
.home.color06 .front-loop h2 {
  border-bottom: 1px solid #e5e5e5;
}
.home.color06 .front-loop .popular_post_box h3 {
  color: #666666;
}
.home.color06 .front-loop .popular_post_box h3 a {
  color: #666666;
}
.home.color06 .front-loop .popular_post_box h3 a:hover {
  color: #E89A31;
}
.home.color06 .front-loop .popular_post_box ul a {
  color: #666666;
}
.home.color06 .front-loop .popular_post_box ul a:hover {
  color: #E89A31;
}
.home.color06 .front-loop .popular_post_box .p_category {
  background: #333333;
  color: #fff;
}
.home.color06 .front-loop .popular_post_box .p_rank {
  background: #900;
  color: #fff;
}
.home.color06 .front-loop .popular_post_box .p_date {
  background: #333333;
  color: #fff;
}
.home.color06 .front-main-cont .front-cont-header {
  background: #333333;
  color: #fff;
}
.home.color06 .front-main-cont .tri-border span {
  border-left: 28px solid transparent;
  border-left: 56px solid transparent;
  border-right: 56px solid transparent;
  border-top: 18px solid #333333;
}
.home.color06 #front-contents .c_box {
  border-bottom: 1px solid #e5e5e5;
}
.home.color06 #front-contents .c_box.c_box_left {
  background-color: #fff;
}
.home.color06 #front-contents .c_box.c_box_right {
  background-color: #fafafa;
}
.home.color06 #front-contents .c_number {
  background: #FFB046;
  color: #fff;
}
.home.color06 #front-contents h3 {
  color: #FFB046;
}
.home.color06 #front-contents .c_english {
  color: #FFB046;
}
.home.color06 #front-contents .c_text .c_btn a {
  background: #333333;
  color: #fff;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
}
.home.color06 #front-service {
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
}
.home.color06 #front-service .front-service-inner h3 {
  color: #FFB046;
}
.home.color06 #front-service .front-service-inner .c_english {
  color: #FFB046;
}
.home.color06 #front-service .front-service-inner .c_text .c_btn a {
  background: #333333;
  color: #fff;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
}
.home.color06 #front-company {
  background: #fff;
}
.home.color06 #front-company .c_box {
  border-bottom: 1px solid #e5e5e5;
}
.home.color06 #front-company dl {
  border-bottom: 1px solid #e5e5e5;
}
.home.color06 #front-company dl#front-company-1 dt {
  border-top: 2px solid #FFB046;
}
.home.color06 #front-company dl#front-company-1 dd {
  border-top: 1px solid #e5e5e5;
}
.home.color06 #front-contact {
  background: #FFB046;
}
.home.color06 #front-contact .c_box_inner input[type=submit],
.home.color06 #front-contact .c_box_inner button {
  background: #333333;
}

.color06 {
  color: #666666;
}
.color06 a {
  color: #FFB046;
}
.color06 form input[type="submit"],
.color06 form button {
  background: #333333;
  color: #fff;
}
.color06 #header {
  background-color: #FFB046;
}
.color06 #header a {
  color: #fff;
}
.color06 .breadcrumb-area {
  background: #fff;
  border-bottom: 1px solid #e5e5e5;
}
/* *** 既存の #gnav PC用スタイルを維持するために、ここでは #gnav の色を上書きしません *** */
.color06 #gnav ul li:hover a {
  background: #E89A31;
}
.color06 #gnav ul li.current-menu-item a {
  background: #E89A31;
}
.color06 #gnav ul li a {
  color: #fff;
  background: #FFB046;
}
.color06 #gnav ul li a:hover {
  color: #fff;
  background: #E89A31;
}
.color06 #gnav ul li .sub-menu {
  background: #fff;
  border: 1px #e5e5e5 solid;
}
.color06 #gnav ul li .sub-menu li {
  border-bottom: 1px #e5e5e5 solid;
}
.color06 #gnav ul li .sub-menu li a {
  color: #333333;
  background: #fff;
}
.color06 #gnav ul li .sub-menu li a:hover {
  background: #fafafa;
  color: #333333;
}
.color06 #header-fnav-area #header-fnav-btn a {
  background: #E89A31;
  display: flex;
  justify-content: center;
}
.color06 #header-fnav-area #header-fnav {
  background: #fff;
  border: 1px #e5e5e5 solid;
}
.color06 #header-fnav-area #header-fnav li {
  border-bottom: 1px #e5e5e5 solid;
}
.color06 #header-fnav-area #header-fnav li a {
  color: #333333;
  background: #fff;
}
.color06 #header-fnav-area #header-fnav li a:hover {
  background: #fafafa;
  color: #333333;
}
.color06 .cat-content,
.color06 article.post,
.color06 article.page {
  background: #fff;
  border: 1px #e5e5e5 solid;
}
.color06 .post-header {
  padding: 56px 64px 46px;
  border-bottom: 1px solid #e5e5e5;
}
.color06 .post-header .cat-name span {
  border: 1px solid #FFB046;
  color: #FFB046;
}
.color06 .post-title a {
  color: #666666;
}
.color06 .post-title a:hover {
  color: #E89A31;
}
.color06 .post-title a {
  color: #333333;
}
.color06 .post-title a:hover {
  color: #E89A31;
}
.color06 .post-meta-area {
  border-bottom: 1px solid #e5e5e5;
}
.color06 .post-meta-area .post-meta-comment li {
  border-left: 1px solid #e5e5e5;
}
.color06 .post-content hr {
  border-bottom: 1px solid #eee;
}
.color06 .post-content h2 {
  border-left: 10px solid #1E1E1E;
  background: #333333;
  color: #fff;
}
.color06 .post-content h3 {
  border-bottom: 2px solid #333333;
}
.color06 .post-content h4 {
  border-left: 5px solid #1E1E1E;
  clear: both;
}
.color06 .post-content blockquote {
  border: 1px #e5e5e5 solid;
  background: #fafafa;
}
.color06 .post-content blockquote:before {
  color: #e7e7e7;
}
.color06 .post-content blockquote cite {
  color: #808080;
}
.color06 .post-content table {
  border: 1px #ddd solid;
}
.color06 .post-content table th,
.color06 .post-content table td {
  border: #ddd solid 1px;
}
.color06 .post-content table th {
  color: #fff;
}
.color06 .post-content table thead th {
  background: #5e6265;
}
.color06 .post-content table tbody th {
  background: #919598;
}
.color06 .post-content table.table-line table,
.color06 .post-content table.table-line th,
.color06 .post-content table.table-line td {
  border-color: #fff;
}
.color06 .post-content table.table-line th {
  color: #666666;
}
.color06 .post-content table.table-line thead th {
  background: #5e6265;
  color: #fff;
}
.color06 .post-content table.table-line tr {
  background: #eee;
}
.color06 .post-content table.table-line tr:nth-child(2n+1) {
  background: #ddd;
}
.color06 .post-cta {
  background: #1E1E1E;
  color: #fff;
}
.color06 .post-cta .cta-post-title {
  border-bottom: 1px solid #eee;
}
.color06 .post-cta .post-cta-btn a {
  background: #E89A31;
  color: #fff;
}
.color06 .post-cta .post-cta-btn a:hover {
  background: #FFB046;
}
.color06 .post-cta .btn {
  background: #333333;
}
.color06 .post-cta .btn:hover {
  background: #E89A31;
}
.color06 .post-share .post-share-list1 a,
.color06 .post-share .post-share-list2 a,
.color06 .post-share .post-share-list3 a,
.color06 .post-share .post-share-list4 a {
  border: 1px #eee solid;
}
.color06 .post-share .post-share-list1 a:hover,
.color06 .post-share .post-share-list2 a:hover,
.color06 .post-share .post-share-list3 a:hover,
.color06 .post-share .post-share-list4 a:hover {
  background: #f7f7f7;
}
.color06 .post-author {
  border: 1px solid #e5e5e5;
  color: #666666;
  background: #fff;
}
.color06 .post-author a {
  color: #333333;
}
.color06 .post-author .post-author-meta {
  color: #666666;
}
.color06 #comments {
  background: #fff;
  border: 1px solid #e5e5e5;
  padding: 40px 45px;
}
@media screen and ( max-width: 767px ){
  .color06 #comments {
    padding: 20px;
  }
}
.color06 #comments h4 {
  border-bottom: 5px solid #333333;
}
.color06 #comments h4 i {
  color: #333333;
}
.color06 .comment-list > .comment {
  border-bottom: 1px #eee solid;
}
.color06 .comment-list .children .comment-body {
  background: #f7f7f7;
}
.color06 .cat-content {
  background: #fff;
}
.color06 .post-loop-wrap .more-link {
  border: 1px #333333 solid;
  color: #333333;
}
.color06 .post-loop-wrap .more-link:hover {
  background: #333333;
  color: #fff;
}
.color06 .post-loop-wrap .post-footer {
  border-top: 1px #eee solid;
}
.color06 .post-loop-wrap .post-footer a.morelink {
  background: #333333;
  color: #fff;
}
.color06 .pagination span, .color06 .pagination a {
  color: #666666;
  background: #fff;
}
.color06 .pagination a:hover {
  color: #fff;
  background: #FFB046;
}
.color06 .pagination .current {
  background: #FFB046;
  color: #fff;
}
.color06 .side-widget .side-title {
  background: #ebebeb;
  border: 1px solid #e4e4e4;
}
.color06 .side-widget a {
  color: #FFB046;
}
.color06 .side-widget a:hover {
  color: #E89A31;
}
.color06 .side-widget ul li {
  border-bottom: 1px solid #e5e5e5;
}
.color06 .side-widget .post-date {
  color: #999999;
}
.color06 .widget_search {
  border: 1px solid #e5e5e5;
}
.color06 .widget_search button {
  color: #5e6265;
}
.color06 .recentcomments {
  color: #808080;
}
.color06 .recentcomments a {
  color: #666666;
}
.color06 #side .share-list-wrap {
  background: #fff;
}
.color06 #footer {
  color: #fff;
  border-top: 8px solid #333333;
}
.color06 #footer a {
  color: #fff;
}
.color06 #footer a:hover {
  color: #ccc;
}
.color06 #footer-brand-area {
  border-bottom: 1px solid #333333;
}
.color06 .footer-01 {
  background: #333333;
}
.color06 .footer-02 {
  background: #282828;
}
.color06 .single-lp .lp-wrap {
  border: 1px solid #eee;
  background: #fff;
}
.color06 .single-lp .lp-thumbnail {
  border: 1px #ccc solid;
  border: 1px #ccc solid;
}
.color06 .single-lp #lp-header {
  background: #FFB046;
}
.color06 .single-lp #lp-header h1 {
  color: #333333;
  border-bottom: 1px solid #eee;
}
.color06 .single-lp .lp-form {
  background: #282828;
  color: #fff;
}
.color06 .single-lp .lp-form input[type=submit],
.color06 .single-lp .lp-form button {
  background: #E89A31;
  color: #fff;
  border-bottom: 5px solid #FFB046;
}
.color06 .single-lp .lp-form input[type=submit]:hover,
.color06 .single-lp .lp-form button:hover {
  background: #FFB046;
}
.color06 .pagetop {
  color: #fff;
}
.color06 .pagetop span {
  background: #333333;
}
.color06.single-lp #lp-header{
  background: #FFB046;
}

/* ----------------------------------------
* 2, カスタムメニュー専用の追加・上書きCSS
* (メニューボタンデザイン復元と全メニュー項目へのホバーアクション強制適用)
---------------------------------------- */

/* 1. アイコンフォントのインポート */
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200');

/* =======================================================
   ★★★ 修正ポイント 1: 鈴アイコン（SVG）の超大型化 ★★★
   ======================================================= */

/* メニューボタンのコンテナ（リンク要素） */
#header-fnav-btn a {
    /* コンテナをフレックスにし、アイコンとテキストを縦に並べる */
    display: flex !important;
    flex-direction: column !important; 
    align-items: center !important; 
    
    /* テキストスタイル調整 */
    text-transform: lowercase !important; /* 小文字「menu」を強制 */
    font-size: 13px !important; 
    line-height: 1.2 !important; 
    padding: 5px 10px !important; 
    
    position: relative; 
}

/* 鈴のアイコン (SVG) を表示に戻し、サイズを大きく調整 */
#header-fnav-btn a svg.concierge-icon {
    display: block !important; 
    width: 45px !important; /* 45pxに拡大 */
    height: 45px !important; /* 45pxに拡大 */
    margin-bottom: 0 !important; 
}

/* リンク要素の疑似要素（謎のアイコン対策の名残） */
#header-fnav-btn a:before,
#header-fnav-btn a:after {
    content: none !important; 
    display: none !important;
    visibility: hidden !important;
}


/* =======================================================
   ★★★ 修正ポイント 4: Z-Indexの調整でクリックを有効化 ★★★
   ヘッダーとボタンのz-indexを調整し、ボタンを最前面に持ってくる
   ======================================================= */

/* スクロール時のメニュー表示を維持するためのCSS強制固定 */
#header {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 99999 !important; /* ヘッダーのz-indexを99999に設定 */
}

/* 2. メニューボタンの強制表示とz-indexの確保 */
#header-fnav-btn {
    display: block !important; 
    visibility: visible !important;
    opacity: 1 !important;
    position: relative; 
    /* ヘッダーのz-index (99999) よりも**さらに高く**設定し、タッチを確保 */
    z-index: 100000 !important; 
    height: auto; 
    width: auto; 
}

/* =======================================================
   ★★★ メニューリストの配置（右寄せ＋被り解消） ★★★
   ======================================================= */
#gnav {
    display: none; 
    float: none; 
    margin: 0;
    text-align: left;
    
    /* 右寄せ（右端から10px余白）の設定 */
    position: absolute; 
    right: 10px; /* 右側に10pxの余白 */
    left: auto; 
    transform: none; 
    top: 75px; /* メニューボタンの下に配置するため、topを75pxに調整 */
    /* メニューリストはボタンの下に来るため、ボタン(100000)より低く、しかし他要素より高く */
    z-index: 99998 !important; 

    width: 280px; 
    max-width: 90vw; 

    background: #ffffff !important; 
    border: 1px solid #e5e5e5;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); 
}

/* リストアイテムの縦並び */
#gnav ul { margin: 0; padding: 0; }
#gnav ul li {
    display: block !important;
    float: none !important;
    position: relative;
    border-bottom: 1px solid #e5e5e5 !important; 
}
#gnav ul li:last-child {
    border-bottom: none !important;
}

/* =======================================================
   ★★★ ホバーアクションの最終調整 ★★★
   ======================================================= */

/* 1. 非カレントのデフォルトスタイル (薄いオレンジ) */
#gnav #gnav-ul li:not(.current-menu-item) {
    background: #FED8B1 !important; 
    border-left: 5px solid #D1FBF8 !important; 
}

/* 2. カレントのスタイル */
#gnav #gnav-ul li.current-menu-item {
    background: #21FFF3 !important; 
    border-left: 5px solid #0000FF !important; 
}

/* 3. 「お問合せ」メニュー項目のLIのデフォルト背景 (薄いオレンジ) */
#gnav #gnav-ul li.send-thanks {
    background: #FED8B1 !important; 
    border-left: 5px solid #D1FBF8 !important; 
}

/* 4. 「お問合せ」メニューの<a>タグの**通常時**の背景色を透明化 */
#gnav #gnav-ul li.send-thanks > a {
    background: transparent !important; 
    color: #000000 !important;
    font-weight: normal !important;
}

/* 5. ホバー時のスタイル (liとaに分けて、確実に適用) */

/* 親要素(li)にホバー色を適用 */
#gnav #gnav-ul li:hover,
#gnav #gnav-ul li.send-thanks:hover {
    background: #C6FF8C !important; 
    border-left: 5px solid #7AF200 !important; 
}

/* ホバー時の子要素(a)のテキストを黒色・ボールド化 */
#gnav #gnav-ul li:hover > a,
#gnav #gnav-ul li.send-thanks:hover > a {
    background: transparent !important; 
    color: #000000 !important; 
    font-weight: bold !important; 
}

/* 全てのリンク要素に共通のスタイル */
#gnav #gnav-ul li a {
    color: #000000 !important;
    display: block !important;
    padding: 15px 20px !important;
    background: transparent !important; 
}

/* -------------------------------------------------------------------------- */
/* 3-1. ヘッダー行の安定化とロゴ位置の調整 (垂直中央揃えを強制 & 高さを最小化)  */
/* -------------------------------------------------------------------------- */

/* 1. ヘッダー行 (#header) の最小パディングと安定化 */
#header {
    padding-top: 0px !important; 
    padding-bottom: 0px !important; 
    
    /* 左右のパディングとマージンをリセット */
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    position: relative !important; 
    z-index: 10; 
}

/* 2. 【強化】ヘッダー内のラッパー要素の上下パディングを強制ゼロに */
#header > .wrap {
    /* ロゴとメニューを垂直中央に揃える（最重要） */
    display: flex !important;
    align-items: center !important; /* 垂直中央揃え */
    justify-content: space-between !important; 
    
    /* 左右パディング維持。上下パディングを強制ゼロ。 */
    padding-left: 50px !important; 
    padding-right: 50px !important; 
    padding-top: 0 !important; /* 強制ゼロ */
    padding-bottom: 0 !important; /* 強制ゼロ */
    
    margin: 0 !important;
    width: 100% !important; 
}

/* 3. ロゴ画像自体の最大高さを設定（ヘッダー高さを制御する鍵） */
#logo.imagelogo img {
    /* ロゴの高さを 45px に設定（前回設定を維持） */
    max-height: 45px !important; 
    height: auto !important; 
    width: auto !important; 
}

/* Flexboxを適用したことにより、ナビゲーション全体を右端に寄せる */
#header-right {
    flex-grow: 1; 
    display: flex;
    justify-content: flex-end; 
    align-items: center; 
}

/* -------------------------------------------------------------------------- */
/*  3-2. メニューボタンのレイアウト崩れ対策（最重要） */
/* -------------------------------------------------------------------------- */

/* メニューボタンのリンク要素（aタグ）を強制的に Flexbox にして縦崩れを防ぐ */
#header-fnav-btn a {
    display: flex !important;
    flex-direction: column !important; 
    justify-content: center !important; 
    align-items: center !important; 
    height: 100% !important; 
    line-height: 1.2 !important; 
}

/* ----------------------------------------
* 3-3. スライダーと余白の最終駆逐 (隙間完全駆逐 V21 - 最終ゴールデンピクセル値 -3px)
---------------------------------------- */

/* ヘッダー直後の要素のインライン余白（改行、&nbsp;）を強制ゼロにする */
#header + * {
    font-size: 0 !important;
    line-height: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* 1. スライダー領域 (#main_visual) の余白リセットと背景色駆逐 (デスクトップ基本設定) */
#main_visual {
    margin-top: -20px !important; 
    margin-bottom: -30px !important; 
    padding: 0 !important;
    
    width: 100% !important;
    height: auto !important; 
    min-height: 0 !important;
    display: block !important;
    border: none !important;
    box-shadow: none !important;
    background-color: transparent !important; 
    background-image: none !important;
    overflow: visible !important; 
}

/* 2. ヘッダー直下にあるPタグなど、表示を妨げる要素を強制的に非表示にする */
#header + p, 
#header + div:empty,
#header + br {
    display: none !important;
}

/* 3. Smart Slider 3 内部要素の余白を強制ゼロに (全デバイス共通) */
.n2-ss-slider .n2-padding,
.n2-section-smartslider,
ss3-force-full-width,
.n2-ss-slider-wrapper {
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    transform: none !important; 
    height: auto !important; 
    min-height: 0 !important;
}

/* 4. スライダー直後のコンテンツ (#content) の余白リセット */
#content {
    margin-top: 0 !important;
    padding-top: initial !important; 
}

/* 5. スライダー直後のコンテンツラッパーの余白を最終駆逐 (デスクトップ用) */
#popular_post_content {
    margin-top: -45px !important; 
    padding-top: 0 !important;
}

/* --- モバイルでの画像切れ防止と【下部隙間最終修正】ルール --- */

@media screen and (max-width: 768px) {
    
    /* 6-1. モバイルでヘッダーの被りを解消 */
    #main_visual {
        margin-top: 0 !important; 
        height: auto !important; /* V20で追加した引き延ばしを元に戻す */
    }
    
    /* 6-2. 【★★最終ゴールデンピクセル値 -3px★★】次のコンテンツをわずか3px上に移動 */
    #popular_post_content {
        /* V20で追加した引き延ばしを元に戻す */
        margin-top: -3px !important; 
        padding-top: 0 !important; 
    }

    /* 6-3. スライダーの下部マージンとパディングの調整 */
    #content, /* 親要素のボトムパディング排除は維持 */
    #main_visual,
    .n2-ss-slider-wrapper, 
    .n2-ss-slider {
        margin-bottom: -45px !important; /* スライダー全体の下マージンは維持 */
        padding-bottom: 0 !important; /* 親要素が持つボトムパディングを強制除去 */
        height: auto !important; /* V20で追加した引き延ばしを元に戻す */
    }

    /* 6-4. スライドコンテンツの背景画像の調整 */
    .n2-ss-slide-background,
    .top-contents .slide-content {
        background-size: contain !important; 
        background-repeat: no-repeat !important;
        background-position: center center !important;
        
        height: auto !important;
        min-height: 40vw !important; 
        max-height: 60vh !important;
    }

    /* 6-5. もし画像が <img> タグで挿入されている場合のための設定 */
    .top-contents .slide-content img {
        width: 100% !important;
        height: auto !important; 
        display: block !important;
        object-fit: contain !important; 
    }
}

/* ----------------------------------------
* 4,追従ヘッダー（スクロール時）用 CSS
* スクロール時のメニューボタン消失を防ぐ
---------------------------------------- */

/* 1. トランジション（動きを滑らかにする設定） */
#header,
#header:after,
#header .wrap, 
#header .logo,
#header #logo,
#header-gnav-area,
#header #logo img { 
    transition: all 0.3s ease;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
}

/* 2. Fixed クラスが適用された際の固定設定 */
#header.fixed {
    /* 【最重要】高さを 40px に制限 */
    height: 40px !important; 
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    z-index: 99999 !important; 
    width: 100% !important;

    background: rgba(255, 153, 51, 0.95) !important; 
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1) !important;
    box-sizing: border-box !important;
}

/* 3. 最も外側のコンテナ（.wrap）に高さを強制適用 */
#header.fixed .wrap {
    height: 40px !important; /* 40px に統一 */
}

/* 4. 追従時のロゴ全体（h1#logo）の調整（コンパクト化） */
#header.fixed #logo {
    padding: 0 !important;
    margin: 0 !important;
    height: 40px !important; /* 40px に統一 */
    line-height: 40px !important;
    max-width: 300px !important; 
    font-size: 22px !important; 
    display: flex !important; 
    align-items: center !important; 
}

/* 5. ロゴ画像（img）の高さ制限 */
#header.fixed #logo img {
    /* 追従時は画像も小さく、ヘッダーに合わせて 30px に固定 */
    max-height: 30px !important; 
    height: 30px !important;
    width: auto !important;
    vertical-align: middle !important; 
}

/* 6. 追従時のナビゲーションエリアとボタンの調整 */
#header.fixed #header-gnav-area {
    height: 40px !important; /* 40px に統一 */
    line-height: 40px !important; 
}

/* 6-0. 追従ヘッダーが有効な場合、ボタンを強制表示 */
#header.fixed #header-fnav-btn {
    display: block !important;
}

/* 6-1. 追従時のメニューボタンリンクのレイアウト変更 (アイコンとテキストを横並びに) */
#header.fixed #header-fnav-btn a {
    flex-direction: row !important; 
    align-items: center !important; 
    justify-content: center !important;
    padding: 0 15px !important; 
    height: 40px !important; /* 40px に統一 */
    line-height: 40px !important; 
}

/* 6-2. 追従時のアイコンのサイズ調整 */
#header.fixed #header-fnav-btn a .concierge-icon {
    font-size: 20px !important; 
    margin-right: 5px !important; 
    line-height: 1.0 !important; 
}

/* 6-3. 追従時のテキストのサイズ調整 */
#header.fixed #header-fnav-btn a span {
    font-size: 14px !important; 
    line-height: 1.0 !important; 
}

/* 7. メニューリストへの影響を避けるため、追従時は何もしない */
#header.fixed #gnav {
    height: auto !important;
    line-height: normal !important;
}

/* 8. 「お問合せ」ボタンの修正: 追従ヘッダー時にボタンをコンパクトに収める */
#header.fixed #gnav-ul li.send-thanks a,
#header.fixed #gnav-ul li#menu-item-71 a {
    padding-top: 0px !important; 
    padding-bottom: 0px !important; 
    height: 40px !important; /* 40px に統一 */
    line-height: 40px !important; 
    border-left: none !important; 
    background: transparent !important; 
    color: #fff !important; 
}

/* 9. その他の調整（基本状態のpaddingを維持） */
/* 基本状態のメニュー項目にパディングを適用し、ヘッダーの高さを確保 */
#header .footer-logo, 
#header #logo { 
    padding-top: 2px;
    padding-bottom: 2px;
}
/* 【最終強化】グローバルナビゲーションのリンクの上下パディングを最小化 */
#header #gnav ul li a {
    padding-top: 6px !important; 
    padding-bottom: 6px !important; 
}

/* ----------------------------------------
* 5,フッターメニューの横並び表示修正（!importantで強制）
* (ブランドエリアとメニューエリアの隙間を最小化)
---------------------------------------- */

/* [必須] Feedlyボタンの非表示 */
li.header-feedly {
    display: none !important; 
    visibility: hidden !important;
}

/* 0. 【高さ削減】フッター全体およびコンテナの縦パディングを徹底的に削減 */
.footer-01 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.footer-01 > .wrap {
    padding-top: 10px !important; 
    padding-bottom: 10px !important;
}

/* ★★★★★ 調整ポイント：ブランドエリア（上部）の底と、コンテンツエリア（下部）の天井を詰める ★★★★★ */

/* ブランドエリア (アロアロ株式会社が入っているコンテナ) */
#footer-brand-area {
    padding-top: 5px !important; 
    padding-bottom: 0 !important; /* 底のパディングをゼロに */
}

/* コンテンツエリア (フッターメニューが入っているコンテナ) */
#footer-content-area {
    padding-top: 5px !important; /* 天井のパディングを最小限に */
    padding-bottom: 10px !important; 
    margin-bottom: 0 !important; 
}

/* ロゴ/ブランド名が入っている要素の底の余白も削除 */
.footer-logo {
    margin: 0 !important;
    padding-top: 0 !important; 
    padding-bottom: 0 !important; /* ここをゼロにして、次のエリアとの隙間を徹底的に詰める */
    line-height: 1.2 !important;
}
/* 住所エリアの調整 */
.footer-address {
    margin: 0 !important;
    padding-top: 0 !important; 
    padding-bottom: 5px !important; 
}


/* --- フッターコンテンツエリア内の配置調整（メニューとSNS） --- */

/* 1. フッターメニューコンテナ (#footer-cont-about) の調整 */
#footer-cont-about {
    width: 100% !important; 
    float: none !important; 
    clear: both !important; 
    margin: 0 !important;
    padding: 0 15px !important; 
    box-sizing: border-box !important;
}
/* 空のh4タグを非表示 */
#footer-cont-about h4 {
    display: none !important; 
}


/* 2. リスト全体 (ul: #footer-nav) を Flexbox で横並びに強制 */
#footer-nav {
    display: flex !important; 
    list-style: none !important; 
    padding: 0 !important; 
    margin: 0 !important; 
    flex-wrap: wrap !important; 
    justify-content: flex-start; 
    align-items: center !important; 
}

/* 3. 各メニュー項目 (li) の調整と記号の削除 */
#footer-nav li {
    display: flex !important; 
    float: none !important; 
    flex-shrink: 0 !important; 
    width: auto !important; 
    margin: 0 !important; 
    padding: 0 !important; 
    border: none !important;
}
/* メニュー項目の前に表示される全ての記号を強制的に非表示にする */
#footer-nav li:before,
#footer-nav li::before,
#footer-nav li > a:before,
#footer-nav li > a::before {
    content: none !important;
    display: none !important;
    margin-left: 0 !important; 
    padding-right: 0 !important; 
}


/* 4. リンク要素 (a) のスタイルを強制し、区切り線を追加 */
#footer-nav li a {
    color: #ffffff !important; 
    text-decoration: none !important;
    font-size: 14px !important;
    line-height: 1.2 !important; 
    
    /* 区切り線(|)とテキストの間隔を確保 */
    padding: 5px 12px !important; /* 上下5px、左右12pxのパディング */
    white-space: nowrap; 
    
    /* リンクの左側に区切り線を追加（最初の要素を除く） */
    border-left: 1px solid #ffffff; 
    border-right: none !important; 
}
/* 最初の要素の左側の区切り線を削除 */
#footer-nav li:first-child a {
    border-left: none !important;
    padding-left: 0 !important; /* 左端のパディングも削除して密着させる */
}
/* ドロップダウンのトグル（不要な矢印など）を非表示 */
#footer-nav li .dropdown-toggle {
    display: none !important;
}


/* --- 5. ソーシャルメディアセクションをフッターメニューの一段下に強制配置 --- */
#footer-cont-sns {
    width: 100% !important; 
    float: none !important; 
    clear: both !important; 
    padding: 10px 15px 0 !important; 
    margin: 0 !important;
    box-sizing: border-box !important;
}
#footer-cont-sns h3 {
    font-size: 14px !important;
    margin-top: 0 !important;
    margin-bottom: 5px !important;
}

/* -------------------------------------------------------------------------- */
/* 6.会社概要セクション（About Us）の調整（見出しコンパクト化） */
/* -------------------------------------------------------------------------- */

/* 1. セクションヘッダー（見出し）の高さを小さくする */
#front-company .front-cont-header,
#aboutus .section-header {
    /* 上下のパディングを削減して高さを圧縮 */
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    margin-bottom: 10px !important; 
}

/* 2. アイコンの非表示化 */
#front-company .front-cont-header .cont-icon {
    display: none !important;
}

/* 3. 見出しテキスト自体のフォントサイズ調整（必要であれば） */
#front-company .front-cont-header h2 {
    font-size: 28px !important; 
    line-height: 1.2 !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* -------------------------------------------------------------------------- */
/* 7. 会社概要セクションの上下余白（パディング）徹底削除 */
/* -------------------------------------------------------------------------- */

/* 1. セクション全体 (#front-company) の上下余白を強制ゼロに */
#front-company.front-main-cont {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;  
    padding-bottom: 0 !important; 
}

/* 2. セクション内のコンテンツエリア (#front-contents-1) の上下余白を強制ゼロに */
#front-company #front-contents-1 {
    margin-top: 5px !important;
    margin-bottom: 5px !important;
    padding-top: 0 !important; 
    padding-bottom: 0 !important; 
}

/* 3. 会社情報リストを囲む c_box_inner の上下パディングを最小限にする */
#front-company #front-contents-1 .c_box_inner {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
}

/* 4. コンテンツラッパー (.wrap) の上下パディングを削除 */
#front-company #front-contents-1 .wrap {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 auto !important;
    max-width: 100% !important; 
}

/* 5. DLタグの間の余白を削減 (dl, dt, ddのデフォルトmarginを潰す) */
#front-company dl {
    margin-top: 2px !important;
    margin-bottom: 2px !important;
}
#front-company dt, #front-company dd {
    padding-top: 2px !important;
    padding-bottom: 2px !important;
}

/* 6. 地図エリア（c_img_box）が使われていない場合の余白を完全に削除 */
#front-company #front-contents-1 .c_img_box {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 7. ボタンエリア（company-btn-wrap）の余白調整 */
#front-company .company-btn-wrap {
    /* ボタンの上下パディングを最小限に設定 */
    padding: 10px 0 !important; 
    margin: 0 !important;
}

/* 8. 【最終手段】会社概要の直下、およびページ全体の余白を強制ゼロに */
/* ボタン下の白い空間（次のセクションまたはフッターまでのスペース）をターゲットにします */
#front-contact,
#content {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* ----------------------------------------
* 8, Instagramアイコンの強制表示とスタイリング (新規追加)
* ---------------------------------------- */

/* SNSリスト自体を横並びにする設定 */
#footer-cont-sns #footer-sns ul {
    display: flex;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Instagramのli要素の基本表示設定 */
#footer-cont-sns .header-instagram {
    display: inline-block !important; /* 強制的に表示 */
    float: none !important;
    margin: 0 10px 0 0 !important; /* 右側に余白を設定 */
    padding: 0 !important;
}

/* リンク要素の調整 */
#footer-cont-sns .header-instagram a {
    display: block;
    line-height: 1; 
    padding: 5px; 
}

/* ★★★ Instagram SVG アイコンのスタイリング（表示強制） ★★★ */
#footer-cont-sns .header-instagram .svg-inline--fa {
    width: 24px !important;  /* サイズを強制 */
    height: 24px !important; /* サイズを強制 */
    color: #ffffff !important; /* 色を強制（フッターの背景色に合わせています） */
    fill: currentColor !important;
    vertical-align: middle;
    margin: 0 !important;
}

/* hover時の色の変更 */
#footer-cont-sns .header-instagram a:hover .svg-inline--fa {
    color: #ccc !important;
}

/* ----------------------------------------
* 9, フッター浮き上がり修正 (Clearfix 最終強制)
---------------------------------------- */

/* 1. コンテンツエリア全体を囲む要素のフロート解除を強制 */
#content {
    overflow: hidden !important; 
    clear: both !important;
}

/* 2. メインコンテンツとサイドバーの親要素のフロート解除を強制 */
#content .wrap {
    overflow: hidden !important; 
    clear: both !important;
}

/* 3. フッター自身もフロートの影響を受けないよう強制 */
#footer {
    clear: both !important;
    margin-top: 0 !important;
}
