.elementor-693 .elementor-element.elementor-element-946ff4f > .elementor-container{min-height:80px;}.elementor-693 .elementor-element.elementor-element-946ff4f > .elementor-container:after{content:"";min-height:inherit;}.elementor-693 .elementor-element.elementor-element-946ff4f{box-shadow:0px 0px 0px 0px rgba(255, 255, 255, 0.5);transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:10px;margin-bottom:10px;padding:0px 0px 0px 0px;z-index:10;}.elementor-693 .elementor-element.elementor-element-946ff4f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-693 .elementor-element.elementor-element-43710ec.elementor-column .elementor-column-wrap{align-items:flex-start;}.elementor-693 .elementor-element.elementor-element-43710ec.elementor-column.elementor-element[data-element_type="column"] > .elementor-column-wrap.elementor-element-populated > .elementor-widget-wrap{align-content:flex-start;align-items:flex-start;}.elementor-693 .elementor-element.elementor-element-43710ec > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-693 .elementor-element.elementor-element-43710ec > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-693 .elementor-element.elementor-element-ee3247e .elementor-image img{width:100%;max-width:300px;}.elementor-693 .elementor-element.elementor-element-ee3247e > .elementor-widget-container{margin:10px 10px 10px 10px;padding:0px 0px 0px 0px;}.elementor-693 .elementor-element.elementor-element-ee3247e{width:auto;max-width:auto;}.elementor-693 .elementor-element.elementor-element-682cafe .elementor-image img{width:100%;max-width:300px;}.elementor-693 .elementor-element.elementor-element-682cafe > .elementor-widget-container{margin:10px 10px 10px 10px;}.elementor-693 .elementor-element.elementor-element-682cafe{width:auto;max-width:auto;}.elementor-bc-flex-widget .elementor-693 .elementor-element.elementor-element-94641e0.elementor-column .elementor-column-wrap{align-items:center;}.elementor-693 .elementor-element.elementor-element-94641e0.elementor-column.elementor-element[data-element_type="column"] > .elementor-column-wrap.elementor-element-populated > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-693 .elementor-element.elementor-element-94641e0.elementor-column > .elementor-column-wrap > .elementor-widget-wrap{justify-content:flex-end;}.elementor-693 .elementor-element.elementor-element-94641e0 > .elementor-element-populated{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle{margin-left:auto;background-color:rgba(2, 1, 1, 0);}.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu .elementor-item{font-size:11px;}.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--main .elementor-item{padding-left:0px;padding-right:0px;padding-top:7px;padding-bottom:7px;}body:not(.rtl) .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li:not(:last-child){margin-right:0px;}body.rtl .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--layout-horizontal .elementor-nav-menu > li:not(:last-child){margin-left:0px;}.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:0px;}.elementor-693 .elementor-element.elementor-element-d30efee > .elementor-widget-container{margin:10px 10px 00px 10px;}.elementor-693 .elementor-element.elementor-element-d30efee{z-index:1;}@media(min-width:768px){.elementor-693 .elementor-element.elementor-element-43710ec{width:18%;}.elementor-693 .elementor-element.elementor-element-94641e0{width:82%;}}@media(max-width:767px){.elementor-693 .elementor-element.elementor-element-946ff4f > .elementor-container{min-height:0px;}.elementor-693 .elementor-element.elementor-element-946ff4f > .elementor-container:after{content:"";min-height:inherit;}.elementor-693 .elementor-element.elementor-element-946ff4f{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-693 .elementor-element.elementor-element-43710ec{width:50%;}.elementor-bc-flex-widget .elementor-693 .elementor-element.elementor-element-43710ec.elementor-column .elementor-column-wrap{align-items:center;}.elementor-693 .elementor-element.elementor-element-43710ec.elementor-column.elementor-element[data-element_type="column"] > .elementor-column-wrap.elementor-element-populated > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-693 .elementor-element.elementor-element-43710ec > .elementor-element-populated{margin:0px 0px 0px 0px;padding:5px 5px 5px 5px;}.elementor-693 .elementor-element.elementor-element-ee3247e > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-693 .elementor-element.elementor-element-94641e0{width:50%;}.elementor-bc-flex-widget .elementor-693 .elementor-element.elementor-element-94641e0.elementor-column .elementor-column-wrap{align-items:center;}.elementor-693 .elementor-element.elementor-element-94641e0.elementor-column.elementor-element[data-element_type="column"] > .elementor-column-wrap.elementor-element-populated > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-693 .elementor-element.elementor-element-94641e0 > .elementor-element-populated{margin:0px 0px 0px 0px;padding:5px 5px 5px 5px;}.elementor-693 .elementor-element.elementor-element-d30efee > .elementor-widget-container{margin:0px 0px 00px 0px;padding:0px 0px 0px 0px;}.elementor-693 .elementor-element.elementor-element-444d2c3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for nav-menu, class: .elementor-element-d30efee *//* ==================================================
   通常ナビ色分け
   ================================================== */

/* メニューごとに色味を少し変える */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(1) > a {
    color: #f7edf4 !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(2) > a {
    color: #ffc4e4 !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(3) > a {
    color: #efc8ff !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(4) > a {
    color: #d9d8ff !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(5) > a {
    color: #c4e4ff !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(6) > a {
    color: #c6fff0 !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(7) > a {
    color: #d1ffd4 !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(8) > a {
    color: #d8ffd2 !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(9) > a {
    color: #fff4c5 !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item:nth-child(10) > a {
    color: #fff1c7 !important;
}

/* 共通ホバー・現在地 */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item > a:hover,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item.current-menu-item > a,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu > .menu-item > a.elementor-item-active {
    opacity: 0.65;
}

/* 通常の横ナビ：ホバー時に少し上へ */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--main .elementor-nav-menu > .menu-item > a:hover,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--main .elementor-nav-menu > .menu-item.current-menu-item > a,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--main .elementor-nav-menu > .menu-item > a.elementor-item-active {
    transform: translateY(-2px);
}

/* 全画面メニュー：ホバー時に右へ */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .elementor-nav-menu > .menu-item > a:hover,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .elementor-nav-menu > .menu-item.current-menu-item > a,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .elementor-nav-menu > .menu-item > a.elementor-item-active {
    transform: translateX(10px);
}



/* ==================================================
   ハンバーガーアイコン
   ================================================== */

/* 標準アイコンを非表示 */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle i:before {
    display: none !important;
}

/* トグルボタン全体 */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle {
    position: relative;
    z-index: 1000001;
    display: flex !important;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    gap: 6px;
    width: 44px;
    height: 44px;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer;
}

/* 3本線共通 */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle:before,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle:after,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle i {
    content: '';
    display: block;
    height: 2px;
    background-color: #ffffff;
    transition: all 0.35s ease;
    border-radius: 2px;
}

/* 通常時：上・中・下で長さを変える */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle:not(.elementor-active):before {
    width: 30px;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle:not(.elementor-active) i {
    width: 22px;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle:not(.elementor-active):after {
    width: 14px;
}

/* 開いている時：中央線を消す */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle.elementor-active i {
    opacity: 0;
    width: 0;
}



/* ==================================================
   全画面メニュー本体
   ================================================== */

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: auto !important;
    bottom: auto !important;

    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;

    z-index: 1000000 !important;

    margin: 0 !important;
    padding: 72px 7vw 60px !important;

    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;

    background:
        linear-gradient(
            115deg,
            rgba(5, 15, 45, 0.97) 0%,
            rgba(4, 42, 67, 0.95) 48%,
            rgba(0, 128, 156, 0.84) 100%
        ),
        radial-gradient(
            circle at right bottom,
            rgba(255, 255, 255, 0.28),
            transparent 36%
        ) !important;

    box-shadow: none !important;
    border: none !important;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(100%);

    transition:
        opacity 0.4s ease,
        visibility 0.4s ease,
        transform 0.45s cubic-bezier(.7, 0, .2, 1);
}

/* 高さ制限を解除 */
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    max-height: none !important;
}

/* 開いた時 */
body.fullscreen-nav-open .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(0) !important;
}

/* ==================================================
   全画面メニュー上部ロゴ画像リンク
   ================================================== */

.elementor-693 .elementor-element.elementor-element-d30efee .fullscreen-menu-logo {
    display: inline-block;
    text-decoration: none !important;
    max-width: 100%;
}

.elementor-693 .elementor-element.elementor-element-d30efee .fullscreen-menu-logo img {
    display: block;
    width: clamp(240px, 38vw, 620px);
    height: auto;
    max-width: 100%;
}

.elementor-693 .elementor-element.elementor-element-d30efee .fullscreen-menu-logo:hover {
    opacity: 0.75;
    transition: opacity 0.3s ease;
}


/* ==================================================
   全画面メニューリスト
   ================================================== */

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .elementor-nav-menu {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 20px;

    margin-top: 80px !important;
    padding: 0 !important;
    background: transparent !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .menu-item {
    width: auto !important;
    display: block !important;
    background: transparent !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .menu-item a {
    display: inline-block !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;

    font-size: clamp(24px, 3.6vw, 40px);
    line-height: 1.2;
    letter-spacing: 0.12em;
    font-weight: 800;
    text-transform: uppercase;

    -webkit-background-clip: initial !important;
    background-clip: initial !important;
}

/* ==================================================
   サブメニュー対策
   ================================================== */

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .sub-menu {
    position: static !important;
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    margin: 12px 0 0 24px !important;
    padding: 0 !important;
}

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .sub-menu a {
    font-size: clamp(16px, 2.2vw, 22px) !important;
    letter-spacing: 0.08em;
    opacity: 0.85;
}

/* ==================================================
   背景の薄い装飾文字
   ================================================== */

body.fullscreen-nav-open .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .elementor-nav-menu:after {
    content: "DOKKYO SOUSHIN";
    position: fixed;
    right: -5vw;
    bottom: -2vw;
    z-index: -1;

    font-size: clamp(72px, 15vw, 190px);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 900;

    color: rgba(255, 255, 255, 0.08);
    pointer-events: none;
    white-space: nowrap;
}

/* ==================================================
   スマホ調整
   ================================================== */

@media (max-width: 767px) {

    .elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle {
        width: 40px;
        height: 40px;
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border: none !important;
    }

    .elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle.elementor-active {
        background: transparent !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border: none !important;
    }

    .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown {
        padding: 66px 28px 46px !important;
    }

    .elementor-693 .elementor-element.elementor-element-d30efee .fullscreen-menu-logo img {
        width: min(78vw, 330px);
    }

    .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .elementor-nav-menu {
        margin-top: 52px !important;
        gap: 18px;
    }

    .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .menu-item a {
        font-size: 22px;
        letter-spacing: 0.1em;
    }

    body.fullscreen-nav-open .elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--dropdown .elementor-nav-menu:after {
        font-size: 72px;
        right: -24vw;
        bottom: 2vw;
    }
}

/* ==================================================
   背景スクロール停止
   ================================================== */

body.fullscreen-nav-open {
    overflow: hidden !important;
    height: 100vh;
    height: 100dvh;
}


/* ==================================================
   通常ナビメニュー背景
   ================================================== */

.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--main,
.elementor-693 .elementor-element.elementor-element-d30efee .elementor-nav-menu--main .elementor-nav-menu {
    background: #000000 !important;
}

/* ==================================================
   ハンバーガーメニュー：通常時
   ================================================== */

.change-logo-header .elementor-menu-toggle:before,
.change-logo-header .elementor-menu-toggle i,
.change-logo-header .elementor-menu-toggle:after {
    background-color: #ffffff !important;
}

/* ==================================================
   ハンバーガーメニュー：通常時
   ================================================== */

.change-logo-header .elementor-menu-toggle:before,
.change-logo-header .elementor-menu-toggle i,
.change-logo-header .elementor-menu-toggle:after {
    background-color: #ffffff !important;
}


/* ==================================================
   実際にスクロールした時だけ色を変更
   iPhone対策：elementor-sticky--effects には依存しない
   ================================================== */

/* 上の線 */
body.is-header-scrolled .change-logo-header .elementor-menu-toggle:before {
    background-color: #1830b8 !important;
}

/* 中央の線 */
body.is-header-scrolled .change-logo-header .elementor-menu-toggle i {
    background-color: #0075e8 !important;
}

/* 下の線 */
body.is-header-scrolled .change-logo-header .elementor-menu-toggle:after {
    background-color: #8a3b00 !important;
}

/* 開いている時の×印 */
body.is-header-scrolled .change-logo-header .elementor-menu-toggle.elementor-active:before {
    background-color: #1830b8 !important;
}

body.is-header-scrolled .change-logo-header .elementor-menu-toggle.elementor-active:after {
    background-color: #8a3b00 !important;
}

/* ==================================================
   全画面メニュー専用：閉じるボタン
   Sticky時のクリック対策
   ================================================== */

.fullscreen-menu-close {
    display: none;
    position: fixed !important;
    top: 24px;
    right: 24px;
    z-index: 2147483647 !important;

    width: 44px;
    height: 44px;
    padding: 0;

    background: transparent !important;
    border: none !important;
    box-shadow: none !important;

    cursor: pointer;
    pointer-events: auto !important;
}

/* メニュー表示時だけ出す */
body.fullscreen-nav-open .fullscreen-menu-close {
    display: block !important;
}

/* ×印 */
.fullscreen-menu-close::before,
.fullscreen-menu-close::after {
    content: "";
    position: absolute;
    left: 7px;
    top: 21px;

    width: 30px;
    height: 2px;

    background: #ffffff;
    border-radius: 2px;
}

.fullscreen-menu-close::before {
    transform: rotate(45deg);
}

.fullscreen-menu-close::after {
    transform: rotate(-45deg);
}

/* Sticky時の×色 */
body.fullscreen-nav-open .change-logo-header.elementor-sticky--effects ~ .fullscreen-menu-close::before,
body.fullscreen-nav-open .elementor-sticky--effects ~ .fullscreen-menu-close::before,
body.fullscreen-nav-open .fullscreen-menu-close::before {
    background: #1830b8 !important;
}

body.fullscreen-nav-open .change-logo-header.elementor-sticky--effects ~ .fullscreen-menu-close::after,
body.fullscreen-nav-open .elementor-sticky--effects ~ .fullscreen-menu-close::after,
body.fullscreen-nav-open .fullscreen-menu-close::after {
    background: #8a3b00 !important;
}

/* スマホ位置 */
@media (max-width: 767px) {
    .fullscreen-menu-close {
        top: 18px;
        right: 22px;
        width: 40px;
        height: 40px;
    }

    .fullscreen-menu-close::before,
    .fullscreen-menu-close::after {
        left: 5px;
        top: 19px;
        width: 30px;
    }
}

/* PC：トグルボタンを非表示 */

@media (min-width: 1025px) {
    .elementor-693 .elementor-element.elementor-element-d30efee .elementor-menu-toggle {
        display: none !important;
    }

    .change-logo-header .elementor-menu-toggle {
        display: none !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-444d2c3 */.change-logo-header .elementor-widget-wrap,
.change-logo-header .elementor-column,
.change-logo-header .elementor-container {
  position: relative;
}

.change-logo-header .logo-normal,
.change-logo-header .logo-scroll {
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

.change-logo-header .logo-normal {
  opacity: 1;
  visibility: visible;
}

.change-logo-header .logo-scroll {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
}

.change-logo-header.is-scrolled .logo-normal {
  opacity: 0;
  visibility: hidden;
}

.change-logo-header.is-scrolled .logo-scroll {
  opacity: 1;
  visibility: visible;
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-946ff4f *//* ==================================================
   スクロール開始時：ヘッダー背景を半透明＋下側ぼかし
   ※ ヘッダーセクションに change-logo-header を設定
   ================================================== */

@media (max-width: 767px) {
/* 通常時 */
.change-logo-header {
    background: transparent !important;
    transition:
        background 0.35s ease,
        backdrop-filter 0.35s ease,
        -webkit-backdrop-filter 0.35s ease,
        box-shadow 0.35s ease;
}

/* スクロール後 */
body.is-header-scrolled .change-logo-header {
    background: rgba(255, 255, 255, 0.1) !important;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    box-shadow: none !important;
}

/* 下側だけ、ふわっとボケるグラデーション */
.change-logo-header::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -28px;

    height: 28px;
    pointer-events: none;

    opacity: 0;
    transition: opacity 0.35s ease;

    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0.2) 0%,
        rgba(255, 255, 255, 0.1) 30%,
        rgba(255, 255, 255, 0) 60%
    );

    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);

    z-index: -1;
}

/* スクロール後だけ下側ぼかしを表示 */
body.is-header-scrolled .change-logo-header::after {
    opacity: 1;
}

body.is-header-scrolled .change-logo-header {
    background: rgba(255, 255, 255, 0.05) !important;
}
}/* End custom CSS */