.elementor-23843 .elementor-element.elementor-element-7aaa963{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23843 .elementor-element.elementor-element-7aaa963:not(.elementor-motion-effects-element-type-background), .elementor-23843 .elementor-element.elementor-element-7aaa963 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-23843 .elementor-element.elementor-element-4930e867{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-23843 .elementor-element.elementor-element-15f74639{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-23843 .elementor-element.elementor-element-9f9cd1c{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Hiragino Sans, ヒラギノ角ゴ ProN, Hiragino Kaku Gothic ProN, 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-23843 .elementor-element.elementor-element-35457d9a{text-align:left;}.elementor-23843 .elementor-element.elementor-element-35457d9a img{width:auto;height:60px;}.elementor-23843 .elementor-element.elementor-element-6f0a959f{--display:flex;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:751px){.elementor-23843 .elementor-element.elementor-element-15f74639{--width:600px;}.elementor-23843 .elementor-element.elementor-element-9f9cd1c{--width:135px;}.elementor-23843 .elementor-element.elementor-element-6f0a959f{--width:calc(100% - 600px);}}@media(max-width:1201px){.elementor-23843 .elementor-element.elementor-element-7aaa963{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:3%;--padding-right:3%;}.elementor-23843 .elementor-element.elementor-element-4930e867{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23843 .elementor-element.elementor-element-15f74639{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-23843 .elementor-element.elementor-element-35457d9a img{width:100px;}.elementor-23843 .elementor-element.elementor-element-4ae28a28 > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-23843 .elementor-element.elementor-element-4ae28a28.elementor-element{--align-self:flex-end;}}@media(max-width:750px){.elementor-23843 .elementor-element.elementor-element-7aaa963{--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:5%;--padding-right:5%;}.elementor-23843 .elementor-element.elementor-element-4930e867{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23843 .elementor-element.elementor-element-15f74639{--width:282px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23843 .elementor-element.elementor-element-9f9cd1c{--width:67px;--justify-content:center;}.elementor-widget-theme-site-logo .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-23843 .elementor-element.elementor-element-35457d9a img{width:67px;height:30px;}.elementor-23843 .elementor-element.elementor-element-6f0a959f{--width:calc(100% - 282px);--justify-content:flex-end;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}}/* Start custom CSS for html, class: .elementor-element-6ee0ec09 *//* メニュー全体のスタイル */
.menu-content {
    display: none; /* 初期状態で非表示 */
    position: fixed;
    top: 0; /* 画面上端に配置 */
    left: 0;
    width: 100%;
    height: 80%; /* 高さを画面の80%に設定 */
    background: white;
    z-index: 1001;
    overflow-y: auto; /* コンテンツが多い場合にスクロール可能 */
    padding: 20px;
    opacity: 0; /* 初期状態で透明 */
    animation: slideDown 0.5s ease; /* アニメーションの適用 */
}

/* 表示状態 */
.menu-content.show {
    display: block; /* 表示に切り替え */
    opacity: 1; /* 表示状態で透明度を戻す */
    animation: slideDown 0.5s ease; /* 下からスライドする動きを付加 */
}

/* メニューのアニメーション */
@keyframes slideDown {
    from {
        transform: translateY(-100%); /* 初期位置：画面外（上） */
        opacity: 0; /* 完全に透明 */
    }
    to {
        transform: translateY(0); /* 最終位置：通常位置 */
        opacity: 1; /* 表示される */
    }
}

/* 背景を暗くしてぼかしを追加 */
.overlay {
    display: none; /* 初期状態で非表示 */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6); /* 背景を暗くする */
    backdrop-filter: blur(5px); /* 背景をぼかす */
    z-index: 1000;
    transition: opacity 0.5s ease; /* オーバーレイもアニメーション */
    opacity: 0;
}

/* 表示状態のオーバーレイ */
.overlay.show {
    display: block;
    opacity: 1;
    pointer-events: all; /* クリック可能にする */
}

/* トグルボタンのスタイル（≡） */
.icon-style {
    color: #6dada5;
    font-size: 32px;
    cursor: pointer;
    transition: color 0.3s ease;
}

/* 閉じるボタンのスタイル（×） */
.close-button {
    position: fixed; /* 画面内の固定位置 */
    top: 24px; /* 上から20px */
    padding: 8px 4px;
    right: calc(((100% - 1160px) / 2) + 0px); /* 右から20px */
    background: none;
    border: none;
    font-size: 32px;
    font-weight: bold;
    color: #6dada5;
    cursor: pointer;
    z-index: 1100; /* メニューの上に表示する */
    outline: none;
    transition: color 0.3s ease;
}

/* 閉じるボタンのホバー時 */
.close-button:hover {
    color: #4d8980; /* ホバー時の色 */
}

.sp-menu > li:last-child {
  border-bottom: none; /* 最後のアイテムのボーダーを削除 */
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4ae28a28 *//* メニュー全体のスタイル */
.sp-menu-content {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 90%;
  z-index: 1001;
  overflow-y: auto;
  padding: 0px;
  font-family: 'M PLUS 1p', sans-serif; /* フォントをM PLUS 1pに設定 */
}

/* 表示時のアニメーション */
.sp-menu-content.show {
  display: flex;
  flex-direction: column; /* カラムレイアウト */
  animation: spSlideDown 0.7s ease; /* スライドインアニメーション */
}

/* 各カラムのスタイル */
.sp-menu-column {
  flex: 1;
  padding: 15px;
}

/* カラム1の背景色 */
.sp-menu-column.column-1 {
  background-color: #6DADA5; /* カラム1の背景色 */
  padding-bottom:0px;
}

/* カラム2の背景色 */
.sp-menu-column.column-2 {
  background-color: #5E958E; /* カラム2の背景色 */
  padding-top: 0px;
}

/* クローズボタン */
.sp-close-button {
  position: absolute;
  top: 10px;
  right: 20px;
  background: none;
  border: none;
  font-size: 24px;
  color: #FFFFFF;
  cursor: pointer;
  z-index: 1100;
  outline: none;
}

/* トグルボタン */
.sp-icon-style {
  font-size: 32px;
  font-weight: bold;
  color: #6DADA5;
  border: none;
  background: none;
  cursor: pointer;
}

/* メニューリスト全体 */
.sp-menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

/* 各メニューアイテムのスタイル */
.sp-menu > li {
  font-size: 14px;
  font-weight: bold;
  color: #FFFFFF;
  border-bottom: 1px solid #84BBB4;
  padding:10px 0;
}

/* 子メニュー、孫メニュー */
.sub-menu,
.region-menu,
.sub-region-menu {
  list-style: none;
  margin: 0;
  padding: 10px 15px; /* インデント */
  display: none; /* 初期状態で非表示 */
}

/* 子メニュー、孫メニュー表示時 */
.sp-menu .menu-item.open > .sub-menu,
.sp-menu .region.open > .sub-region-menu {
  display: block;
  animation: spFadeIn 0.5s ease; /* フェードインアニメーション */
}

/* トグルアイコンのスタイル */
.toggle-icon {
  float: right;
  font-size: 14px;
  font-weight: bold;
  color: #FFFFFF;
  cursor: pointer;
}

/* リンクスタイル */
.sp-menu a {
  color: #DDDDDD;
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
}


/* アニメーション */
@keyframes spSlideDown {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes spFadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* オーバーレイ（背景のぼかし部分） */
.sp-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(5px); /* ブラー処理 */
  z-index: 1000;
}

/* オーバーレイ表示時 */
.sp-overlay.show {
  display: block;
}

/* トグルボタンのhover効果を削除 */
.sp-icon-style:hover,
.sp-close-button:hover,
.toggle-icon:hover {
  background: none; /* 背景色の変更を無効化 */
  color: inherit; /* 色の変更も無効化（必要に応じて削除） */
  cursor: pointer; /* ポインタはそのまま維持 */
}

/* メニューリンクのhover効果を削除 */
.sp-menu a:hover {
  background: none; /* 背景色の変更を無効化 */
  color: inherit; /* テキスト色の変更も無効化 */
  text-decoration: none; /* 下線などの効果を無効化 */
}

.sp-menu > li:last-child {
  border-bottom: none; /* 最後のアイテムのボーダーを削除 */
}

.region-menu > li {
  border-bottom: 1px solid #84BBB4;
}

.region-menu{
    padding:0px;
}

.region{
    padding-left:10px;
    padding-top:10px;
    padding-bottom:10px;
}

.menu-item{
    padding-left: 10px;
    padding-right: 10px;
}

.sp-menu-column {
    padding-left: 0px;
    padding-right: 0px;
}

.sp-menu a{
    padding-left: 10px;
}

.toggle-icon{
    padding-right:10px;
    padding-left: 30px;
}

.sp-close-button{
    padding-top: 0px;
}/* End custom CSS */