/*
Theme Name: Lightning Child
Theme URI: 
Template: lightning
Description: 
Author: 
Tags: 
Version: 0.6.0
*/








/* ========================================
   ヘッダーを上部固定
======================================== */

body {
  padding-top: 140px;
}

.site-header,
#site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: #fff;
}

/* ======================================
   ページヘッダー：左寄せ・タイトル拡大
====================================== */

/* Lightning本体の中央揃えを解除 */
body .page-header {
	display: flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	text-align: left !important;
}

/* タイトル領域を画面左側に広げる */
body .page-header > .page-header-inner.container {
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding-left: 40px !important;
	padding-right: 40px !important;
	text-align: left !important;
}

/* タイトルとサブタイトル */
body .page-header .custom-page-header-title {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	justify-content: center !important;
	width: 100% !important;
	margin: 0 !important;
	text-align: left !important;
}

/* 英語タイトル */
body .page-header .custom-page-header-title-en {
	display: block !important;
	margin: 0 !important;
	font-size: 56px !important;
	font-weight: 700 !important;
	line-height: 1.1 !important;
	letter-spacing: 0.04em !important;
	text-align: left !important;
}

/* 日本語サブタイトル */
body .page-header .custom-page-header-title-ja {
	display: block !important;
	margin-top: 10px !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	line-height: 1.5 !important;
	text-align: left !important;
}

/* パンくずも同じ左位置にする */
body #breadcrumb .container,
body .breadcrumb .container {
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 40px !important;
	padding-right: 40px !important;
	text-align: left !important;
}

/* スマートフォン */
@media (max-width: 767px) {
	body .page-header > .page-header-inner.container,
	body #breadcrumb .container,
	body .breadcrumb .container {
		padding-left: 20px !important;
		padding-right: 20px !important;
	}

	body .page-header .custom-page-header-title-en {
		font-size: 40px !important;
	}

	body .page-header .custom-page-header-title-ja {
		margin-top: 7px !important;
		font-size: 15px !important;
	}
}



/* =========================================
   施工事例一覧
========================================= */

.works-archive {
    padding: 70px 20px 100px;
    background: #fff;
}

.works-archive__inner {
    max-width: 1200px;
    margin: 0 auto;
}


/* =========================================
   タイトル
========================================= */

.works-heading {
    text-align: center;
    margin-bottom: 55px;
}

.works-heading__en {
    margin: 0 !important;
    padding: 0 !important;

    font-size: 64px;
    line-height: 1.1;
    letter-spacing: 0.12em;
    font-weight: 400;

    color: #333;

    border: 0 !important;
    background: none !important;
}

.works-heading__en::before,
.works-heading__en::after {
    display: none !important;
}

.works-heading__ja {
    margin: 15px 0 0;
    font-size: 15px;
    font-weight: 700;
    color: #333;
}


/* =========================================
   グリッド
========================================= */

.works-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 35px 28px;
}


/* =========================================
   カード
========================================= */

.works-card {
    margin: 0;
    padding: 0;

    background: #fff;

    box-shadow:
        0 2px 10px rgba(0, 0, 0, 0.08);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

.works-card:hover {
    transform: translateY(-4px);

    box-shadow:
        0 7px 22px rgba(0, 0, 0, 0.13);
}


.works-card__link {
    display: block;

    color: inherit !important;

    text-decoration: none !important;

    border: none !important;

    box-shadow: none !important;
}


/* =========================================
   画像
========================================= */

.works-card__image {
    width: 100%;

    aspect-ratio: 16 / 10;

    overflow: hidden;

    background: #eee;
}

.works-card__image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.35s ease;
}

.works-card:hover .works-card__image img {
    transform: scale(1.04);
}


.works-card__noimage {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    font-size: 14px;
    color: #999;
}


/* =========================================
   カード本文
========================================= */

.works-card__body {
    padding: 18px 18px 20px;
}


/* =========================================
   日付・タグ
========================================= */

.works-card__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 8px;

    margin-bottom: 17px;
}


.works-card__date {
    margin-right: 7px;

    font-size: 13px;

    letter-spacing: 0.08em;

    color: #666;
}


.works-card__tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 60px;

    padding: 5px 16px;

    border-radius: 30px;

    background: #1d5ca8;

    color: #fff;

    font-size: 12px;

    line-height: 1.2;
}


/* =========================================
   タイトル
========================================= */

.works-card__title {
    margin: 0 !important;
    padding: 0 !important;

    font-size: 15px;
    line-height: 1.8;

    font-weight: 400;

    letter-spacing: 0.04em;

    color: #4c5565;

    border: none !important;
    background: none !important;
}

.works-card__title::before,
.works-card__title::after {
    display: none !important;
}


/* =========================================
   ページネーション
========================================= */

.works-pagination {
    display: flex;
    justify-content: center;

    margin-top: 60px;
}

.works-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    margin: 0 4px;

    border: 1px solid #ddd;

    color: #333;

    text-decoration: none;

    background: #fff;
}

.works-pagination .page-numbers.current {
    background: #1d5ca8;
    border-color: #1d5ca8;
    color: #fff;
}


/* =========================================
   タブレット
========================================= */

@media (max-width: 991px) {

    .works-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}


/* =========================================
   スマホ
========================================= */

@media (max-width: 767px) {

    .works-archive {
        padding: 45px 15px 70px;
    }


    .works-heading {
        margin-bottom: 35px;
    }


    .works-heading__en {
        font-size: 42px;
    }


    .works-grid {
        grid-template-columns: 1fr;

        gap: 25px;
    }


    .works-card__body {
        padding: 15px 15px 18px;
    }


    .works-card__title {
        font-size: 14px;
    }

}

/* =========================================
   施工事例 絞り込み
========================================= */

.works-filter {
    margin-bottom: 65px;
}


/* ボタン */

.works-filter__buttons {
    display: flex;
    justify-content: center;
    gap: 28px;
    flex-wrap: wrap;

    margin-bottom: 30px;
}

.works-filter__button {
    min-width: 230px;

    padding: 15px 25px;

    border: 0;
    border-radius: 4px;

    background: #555;

    color: #fff;

    font-size: 16px;
    font-weight: 700;

    cursor: pointer;

    transition: opacity 0.2s ease;
}

.works-filter__button:hover {
    opacity: 0.8;
}

.works-filter__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 19px;
    height: 19px;

    margin-right: 7px;

    border-radius: 50%;

    background: #fff;

    color: #555;

    font-size: 20px;
    line-height: 1;
}


/* =========================================
   キーワード検索
========================================= */

.works-keyword {
    max-width: 800px;
    margin: 0 auto;
}

.works-keyword__title {
    margin: 0 0 14px;

    text-align: center;

    font-size: 16px;
    font-weight: 700;
}

.works-keyword__form {
    position: relative;
}

.works-keyword__input {
    width: 100%;
    height: 60px;

    padding: 0 75px 0 35px;

    border: 2px solid #444;
    border-radius: 40px;

    background: #fff;

    font-size: 14px;

    outline: none;
}

.works-keyword__input:focus {
    border-color: #d90014;
}

.works-keyword__submit {
    position: absolute;

    top: 50%;
    right: 8px;

    transform: translateY(-50%);

    display: flex;
    align-items: center;
    justify-content: center;

    width: 48px;
    height: 48px;

    border: 0;
    border-radius: 50%;

    background: #d90014;

    color: #fff;

    font-size: 20px;

    cursor: pointer;
}


/* =========================================
   モーダル
========================================= */

.works-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;

    display: none !important;

    align-items: center;
    justify-content: center;

    padding: 20px;
}

.works-modal.is-open {
    display: flex !important;
}


/* 背景 */

.works-modal__overlay {
    position: absolute;

    inset: 0;

    background: rgba(0, 0, 0, 0.55);
}


/* 白いボックス */

.works-modal__content {
    position: relative;

    z-index: 2;

    width: min(1000px, 100%);

    max-height: 85vh;

    overflow-y: auto;

    padding: 55px 60px 50px;

    background: #fff;
}


/* 閉じる */

.works-modal__close {
    position: absolute;

    top: 10px;
    right: 10px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 36px;
    height: 36px;

    padding: 0;

    border: 0;

    background: #333;

    color: #fff;

    font-size: 30px;
    line-height: 1;

    cursor: pointer;
}


/* タイトル */

.works-modal__title {
    margin: 0 0 35px !important;
    padding: 0 !important;

    border: 0 !important;
    background: none !important;

    text-align: center;

    font-size: 22px;
    font-weight: 700;
}

.works-modal__title::before,
.works-modal__title::after {
    display: none !important;
}


/* チェックボックス */

.works-modal__checks {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;

    gap: 15px 16px;

    margin-bottom: 45px;
}

.works-modal__check {
    display: inline-flex;
    align-items: center;

    gap: 6px;

    font-size: 16px;
    font-weight: 600;

    cursor: pointer;
}

.works-modal__check input {
    width: 16px;
    height: 16px;

    margin: 0;
}


/* =========================================
   モーダル ボタン
========================================= */

.works-modal__actions {
    display: flex;
    justify-content: center;

    gap: 30px;
}

.works-modal__submit,
.works-modal__reset {
    width: 280px;

    padding: 15px;

    border: 0;

    color: #fff;

    font-size: 16px;
    font-weight: 700;

    cursor: pointer;
}

.works-modal__submit {
    background: #47D45A;
}

.works-modal__reset {
    background: #333;
}


/* =========================================
   スマホ
========================================= */

@media (max-width: 767px) {

    .works-filter {
        margin-bottom: 45px;
    }

    .works-filter__buttons {
        gap: 10px;

        margin-bottom: 25px;
    }

    .works-filter__button {
        width: 100%;
        min-width: 0;

        padding: 13px 15px;

        font-size: 14px;
    }


    .works-keyword__input {
        height: 52px;

        padding-left: 20px;

        font-size: 13px;
    }

    .works-keyword__submit {
        width: 42px;
        height: 42px;
    }


    .works-modal {
        padding: 15px;
    }

    .works-modal__content {
        padding: 50px 20px 30px;
    }

    .works-modal__title {
        margin-bottom: 25px !important;

        font-size: 19px;
    }

    .works-modal__checks {
        justify-content: flex-start;

        gap: 14px;

        margin-bottom: 30px;
    }

    .works-modal__check {
        width: calc(50% - 7px);

        font-size: 14px;
    }

    .works-modal__actions {
        gap: 10px;
    }

    .works-modal__submit,
    .works-modal__reset {
        width: 50%;

        padding: 13px 5px;

        font-size: 14px;
    }

}



/* =====================================================
   TOP 施工事例
===================================================== */

.top-works {
    padding: 20px 20px 60px;
    background: #fff;
}

.top-works__inner {
    max-width: 1200px;
    margin: 0 auto;
}


/* =====================================================
   施工場所タブ
===================================================== */

.top-works-tabs {
    display: flex;
    justify-content: center;
    align-items: center;

    gap: 8px;

    margin-bottom: 42px;
}

.top-works-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 100px;
    height: 44px;

    padding: 0 26px;

    border: 1px solid #555;
    border-radius: 30px;

    background: #fff;

    color: #333 !important;

    font-size: 15px;
    font-weight: 500;

    line-height: 1;

    text-decoration: none !important;

    white-space: nowrap;

    transition:
        background .2s ease,
        color .2s ease,
        border-color .2s ease;
}

.top-works-tab:hover {
    background: #1d5ca8;
    border-color: #1d5ca8;

    color: #fff !important;
}

.top-works-tab.is-active {
    background: #1d5ca8;
    border-color: #1d5ca8;

    color: #fff !important;
}


/* =====================================================
   3カラム
===================================================== */

.top-works-grid {
    display: grid;

    grid-template-columns: repeat(3, minmax(0, 1fr));

    gap: 28px;
}


/* =====================================================
   カード
===================================================== */

.top-works-card {
    margin: 0;

    background: #fff;

    box-shadow:
        0 2px 12px rgba(0, 0, 0, .10);

    overflow: hidden;
}

.top-works-card__link {
    display: block;

    color: inherit !important;

    text-decoration: none !important;
}


/* 画像 */

.top-works-card__image {
    width: 100%;

    aspect-ratio: 3 / 2;

    overflow: hidden;

    background: #eee;
}

.top-works-card__image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .35s ease;
}

.top-works-card:hover .top-works-card__image img {
    transform: scale(1.04);
}

.top-works-card__noimage {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    color: #999;
}


/* =====================================================
   カード本文
===================================================== */

.top-works-card__body {
    padding: 20px 18px 18px;
}


/* 日付＋タグ */

.top-works-card__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 9px;

    margin-bottom: 17px;
}

.top-works-card__date {
    margin-right: 5px;

    color: #555;

    font-size: 13px;

    letter-spacing: .08em;
}

.top-works-card__tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 60px;

    padding: 5px 15px;

    border-radius: 30px;

    background: #1d5ca8;

    color: #fff;

    font-size: 12px;

    line-height: 1;
}


/* タイトル */

.top-works-card__title {
    margin: 0 !important;
    padding: 0 !important;

    border: none !important;
    background: none !important;

    color: #465062;

    font-size: 15px;
    font-weight: 400;

    line-height: 1.7;

    letter-spacing: .04em;
}

.top-works-card__title::before,
.top-works-card__title::after {
    display: none !important;
}


/* =====================================================
   詳しく見るボタン
===================================================== */

.top-works-more {
    display: flex;
    justify-content: center;

    margin-top: 40px;
}

.top-works-more__button {
    position: relative;

    display: flex;
    align-items: center;
    justify-content: center;

    min-width: 190px;
    height: 44px;

    padding: 0 55px 0 35px;

    border-radius: 30px;

    background: #df0000;

    color: #fff !important;

    font-size: 14px;
    font-weight: 700;

    text-decoration: none !important;
}

.top-works-more__arrow {
    position: absolute;

    right: 9px;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 27px;
    height: 27px;

    border-radius: 50%;

    background: #fff;

    color: #df0000;

    font-size: 28px;
    font-weight: 700;

    line-height: 1;
}


/* =====================================================
   タブレット
===================================================== */

@media (max-width: 991px) {

    .top-works-grid {
        gap: 18px;
    }

    .top-works-tab {
        padding: 0 20px;

        min-width: 90px;
    }

}


/* =====================================================
   スマホ
===================================================== */

@media (max-width: 767px) {

    .top-works {
        padding: 15px 15px 50px;
    }


    /* -----------------------------------------
       タブ横スクロール
    ----------------------------------------- */

    .top-works-tabs {
        justify-content: flex-start;

        gap: 8px;

        margin-left: -15px;
        margin-right: -15px;
        margin-bottom: 30px;

        padding: 0 15px 10px;

        overflow-x: auto;
        overflow-y: hidden;

        -webkit-overflow-scrolling: touch;

        scrollbar-width: none;
    }

    .top-works-tabs::-webkit-scrollbar {
        display: none;
    }

    .top-works-tab {
        flex: 0 0 auto;

        min-width: auto;
        height: 40px;

        padding: 0 22px;

        font-size: 14px;
    }


    /* -----------------------------------------
       カード
    ----------------------------------------- */

    .top-works-grid {
        grid-template-columns: 1fr;

        gap: 22px;
    }

    .top-works-card__body {
        padding: 16px;
    }

    .top-works-card__title {
        font-size: 14px;
    }


    .top-works-more {
        margin-top: 30px;
    }

}


@media screen and (max-width: 991px) {

  /* ==============================
     ハンバーガーボタン
  ============================== */

  #vk-mobile-nav-menu-btn {
    display: block !important;

    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;

    width: 72px !important;
    height: 72px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #444 !important;
    border: none !important;
    border-radius: 0 !important;

    z-index: 100000 !important;

    font-size: 0 !important;
    line-height: 1 !important;

    cursor: pointer !important;
  }


  /* 三本線 */
  #vk-mobile-nav-menu-btn::before {
    content: "" !important;

    position: absolute !important;
    top: 26px !important;
    left: 24px !important;

    width: 24px !important;
    height: 2px !important;

    background: #fff !important;

    box-shadow:
      0 8px 0 #fff,
      0 16px 0 #fff !important;

    transform: none !important;

    transition: .3s !important;
  }

  #vk-mobile-nav-menu-btn::after {
    content: "" !important;
    display: none !important;
  }


  /* ==============================
     開いた時は ×
  ============================== */

  #vk-mobile-nav-menu-btn.menu-open::before {
    top: 35px !important;
    left: 24px !important;

    box-shadow: none !important;

    transform: rotate(45deg) !important;
  }

  #vk-mobile-nav-menu-btn.menu-open::after {
    content: "" !important;

    display: block !important;

    position: absolute !important;
    top: 35px !important;
    left: 24px !important;

    width: 24px !important;
    height: 2px !important;

    background: #fff !important;

    transform: rotate(-45deg) !important;
  }


  /* ==============================
     メニュー本体
  ============================== */

  #vk-mobile-nav {
    display: block !important;

    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;

    width: 100% !important;
    height: 100dvh !important;

    padding: 95px 36px 40px !important;

    background: #4a4a4a !important;

    z-index: 99998 !important;

    overflow-y: auto !important;

    transform: translateX(100%) !important;

    transition: transform .35s ease !important;
  }


  /* 開いた状態 */
  #vk-mobile-nav.vk-mobile-nav-open {
    transform: translateX(0) !important;
  }


  /* ==============================
     管理者向け水色メッセージ非表示
  ============================== */

  #vk-mobile-nav .veu_adminEdit {
    display: none !important;
  }


  /* ==============================
     メニュー
  ============================== */

  #vk-mobile-nav .vk-mobile-nav-menu-outer,
  #vk-mobile-nav .vk-menu-acc,
  #vk-mobile-nav .vk-menu-acc ul {
    background: transparent !important;
  }

  #vk-mobile-nav .vk-menu-acc {
    margin: 0 !important;
    padding: 0 !important;
  }

  #vk-mobile-nav .vk-menu-acc > li {
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border-bottom:
      1px solid rgba(255,255,255,.35) !important;
  }

  #vk-mobile-nav .vk-menu-acc > li > a {
    display: flex !important;
    align-items: center !important;

    min-height: 56px !important;

    padding: 0 15px !important;

    background: transparent !important;

    color: #fff !important;

    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: .05em !important;

    text-decoration: none !important;

    border: none !important;
  }


  /* ==============================
     ＋
  ============================== */

  #vk-mobile-nav .menu-item-has-children {
    position: relative !important;
  }


  /* 親リンク */
  #vk-mobile-nav .menu-item-has-children > a {
    padding-right: 55px !important;
  }

  #vk-mobile-nav
  .menu-item-has-children.submenu-open > a::after {
    content: "−" !important;
  }


  #vk-mobile-nav .submenu-toggle {
    position: absolute !important;

    top: 0 !important;
    right: 0 !important;

    width: 50px !important;
    height: 56px !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;

    cursor: pointer !important;

    z-index: 5 !important;
  }


  /* 横線 */
  #vk-mobile-nav .submenu-toggle::before {
    content: "" !important;

    position: absolute !important;

    top: 50% !important;
    left: 50% !important;

    width: 11px !important;
    height: 1px !important;

    background: #fff !important;

    transform: translate(-50%, -50%) !important;
  }


  /* 縦線 */
  #vk-mobile-nav .submenu-toggle::after {
    content: "" !important;

    position: absolute !important;

    top: 50% !important;
    left: 50% !important;

    width: 1px !important;
    height: 11px !important;

    background: #fff !important;

    transform: translate(-50%, -50%) !important;
  }


  /* 開いた時は＋ → − */
  #vk-mobile-nav
  .menu-item-has-children.submenu-open
  > .submenu-toggle::after {
    display: none !important;
  }


  /* ============================
     子メニュー
  ============================ */

  #vk-mobile-nav
  .menu-item-has-children > ul.sub-menu {
    display: none !important;

    visibility: hidden !important;
    opacity: 0 !important;

    max-height: 0 !important;

    overflow: hidden !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
  }


  /* 開いた状態 */
  #vk-mobile-nav
  .menu-item-has-children.submenu-open
  > ul.sub-menu {
    display: block !important;

    visibility: visible !important;
    opacity: 1 !important;

    max-height: 300px !important;

    padding: 0 0 12px 15px !important;

    background: transparent !important;
  }


  /* 子メニュー li */
  #vk-mobile-nav
  .menu-item-has-children.submenu-open
  > ul.sub-menu > li {
    display: block !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;

    border: none !important;
  }


  /* 「よくある質問」 */
  #vk-mobile-nav
  .menu-item-has-children.submenu-open
  > ul.sub-menu > li > a {
    display: block !important;

    padding: 10px 15px 10px 30px !important;

    background: transparent !important;

    color: #ddd !important;

    font-size: 13px !important;
    font-weight: 400 !important;

    text-decoration: none !important;
  }

}


@media screen and (max-width: 991px) {

  /* ヘッダーのロゴを左寄せ */
  .site-header-logo {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .site-header-logo a {
    display: block !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .site-header-logo img {
    display: block !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

}


/* ========================================
   PCヘッダー調整
======================================== */
@media screen and (min-width: 992px) {

  /* ヘッダー内部を横いっぱいに広げる */
  .site-header .container {
    max-width: none !important;
    width: 100% !important;

    padding-left: 30px !important;
    padding-right: 30px !important;
  }


  /* ==============================
     ロゴを左へ
  ============================== */

  .site-header-logo {
    margin-left: 0 !important;
    margin-right: auto !important;

    text-align: left !important;
  }

  .site-header-logo a {
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .site-header-logo img {
    display: block !important;

    margin-left: 0 !important;
    margin-right: auto !important;
  }


  /* ==============================
     PCメニューを右へ
  ============================== */

  .global-nav {
    margin-left: auto !important;
    margin-right: 0 !important;
  }


  /* メニュー文字を少し大きく */
  .global-nav-list > li > a {
    font-size: 15px !important;
    font-weight: 600 !important;
  }


  /* メニュー同士の間隔 */
  .global-nav-list > li {
    margin-left: 18px !important;
    margin-right: 18px !important;
  }

}


/* ========================================
   PCグローバルナビ カラー変更
======================================== */
@media screen and (min-width: 992px) {

  /* hover時の下線 */
  .global-nav-list > li::before {
    background-color: #A2DF89 !important;
    border-color: #A2DF89 !important;
    border-bottom-color: #A2DF89 !important;
  }

  .global-nav-list > li:hover::before {
    background-color: #A2DF89 !important;
    border-color: #A2DF89 !important;
    border-bottom-color: #A2DF89 !important;
  }


  /* サブメニュー全体 */
  .global-nav-list > li > .sub-menu {
    background-color: #A2DF89 !important;
  }

  /* サブメニュー項目 */
  .global-nav-list > li > .sub-menu > li,
  .global-nav-list > li > .sub-menu > li > a {
    background-color: #A2DF89 !important;
  }

  /* サブメニュー hover */
  .global-nav-list > li > .sub-menu > li:hover,
  .global-nav-list > li > .sub-menu > li:hover > a {
    background-color: #A2DF89 !important;
  }

  /* サブメニュー文字 */
  .global-nav-list > li > .sub-menu > li > a {
    color: #fff !important;
  }

  .global-nav-list > li.menu-item-has-children::after {
    border-bottom-color: #A2DF89 !important;
  }
}

/* =====================================================
   ヘッダー お問い合わせCTA
===================================================== */


/* ========================================
   PC
======================================== */

@media screen and (min-width: 992px) {

  /* お問い合わせ用li */
  .global-nav-list > li.header-contact-pc {
    margin-left: 20px !important;
    margin-right: 0 !important;

    display: flex !important;
    align-items: center !important;
  }


  /* 赤いお問い合わせボタン */
  .global-nav-list > li.header-contact-pc > a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 9px !important;

    height: 48px !important;

    padding: 0 24px !important;

    background: #e60000 !important;

    border-radius: 30px !important;

    color: #fff !important;

    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: .08em !important;

    white-space: nowrap !important;

    text-decoration: none !important;

    transition:
      opacity .25s ease,
      transform .25s ease !important;
  }


  /* メールアイコン */
  .global-nav-list > li.header-contact-pc svg {
    width: 19px !important;
    height: 19px !important;

    flex-shrink: 0 !important;

    color: #fff !important;
  }


  /* hover */
  .global-nav-list > li.header-contact-pc > a:hover {
    opacity: .8 !important;

    transform: translateY(-1px) !important;
  }


  /* Lightningの下線をお問い合わせには出さない */
  .global-nav-list > li.header-contact-pc::before,
  .global-nav-list > li.header-contact-pc::after,
  .global-nav-list > li.header-contact-pc > a::before,
  .global-nav-list > li.header-contact-pc > a::after {
    display: none !important;
  }


  /* スマホボタンはPCでは非表示 */
  .mobile-header-actions {
    display: none !important;
  }

}



/* ========================================
   スマホ
======================================== */

@media screen and (max-width: 991px) {

  /* PCお問い合わせは非表示 */
  .header-contact-pc {
    display: none !important;
  }


  /* 電話＋メール */
  .mobile-header-actions {
    position: fixed !important;

    top: 0 !important;
    right: 72px !important;

    height: 72px !important;

    display: flex !important;

    z-index: 99999 !important;
  }


  .mobile-header-action {
    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    width: 52px !important;
    height: 72px !important;

    padding: 0 !important;
    margin: 0 !important;

    text-decoration: none !important;

    border: none !important;
  }


  .mobile-header-action svg {
    width: 23px !important;
    height: 23px !important;
  }


  /* 電話 */
  .mobile-header-phone {
    background: #A2DF89 !important;
    color: #fff !important;
  }


  /* メール */
  .mobile-header-mail {
    background: #e60000 !important;
    color: #fff !important;
  }

}