.elementor-89941 .elementor-element.elementor-element-52094a29{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:2%;--padding-bottom:2%;--padding-left:4%;--padding-right:4%;}.elementor-89941 .elementor-element.elementor-element-5f7667e3{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-89941 .elementor-element.elementor-element-311294be{text-align:left;}.elementor-89941 .elementor-element.elementor-element-311294be img{width:85%;}.elementor-89941 .elementor-element.elementor-element-3fb86a0f{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-89941 .elementor-element.elementor-element-7b37dd7c{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:0px 0px 0px 0px;--padding-top:3px;--padding-bottom:3px;--padding-left:60px;--padding-right:60px;}.elementor-89941 .elementor-element.elementor-element-6a1cf434{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-89941 .elementor-element.elementor-element-296f96f8{text-align:left;}.elementor-89941 .elementor-element.elementor-element-296f96f8 img{width:70%;}.elementor-89941 .elementor-element.elementor-element-171a8dd0{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-89941 .elementor-element.elementor-element-1df5531f{--display:flex;}.elementor-89941 .elementor-element.elementor-element-12f20c5e{--display:flex;}.elementor-89941 .elementor-element.elementor-element-708e2cec{--display:flex;}.elementor-89941 .elementor-element.elementor-element-12bd2254{--display:flex;}.elementor-89941 .elementor-element.elementor-element-65634735{--display:flex;}.elementor-89941 .elementor-element.elementor-element-2e8a91de{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:11px;--n-menu-title-font-size:14.5px;--n-menu-title-color-normal:#292929;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-89941 .elementor-element.elementor-element-2e8a91de > .elementor-widget-container > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-89941 .elementor-element.elementor-element-2e8a91de > .elementor-widget-container > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-89941 .elementor-element.elementor-element-2e8a91de > .elementor-widget-container > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:"Noto Sans Balinese", Sans-serif;font-weight:500;--n-menu-title-line-height:1;letter-spacing:0.5px;}.elementor-89941 .elementor-element.elementor-element-2e8a91de {--n-menu-title-color-hover:#5634CA;--n-menu-title-color-active:#5634CA;}.elementor-89941 .elementor-element.elementor-element-ee32690{--display:flex;--min-height:0px;--justify-content:center;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-89941 .elementor-element.elementor-element-3221598c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:651px){.elementor-89941 .elementor-element.elementor-element-5f7667e3{--width:15%;}.elementor-89941 .elementor-element.elementor-element-3fb86a0f{--width:20%;}.elementor-89941 .elementor-element.elementor-element-7b37dd7c{--width:100%;}.elementor-89941 .elementor-element.elementor-element-6a1cf434{--width:15%;}.elementor-89941 .elementor-element.elementor-element-171a8dd0{--width:65%;}.elementor-89941 .elementor-element.elementor-element-ee32690{--width:20%;}}@media(max-width:650px){.elementor-89941 .elementor-element.elementor-element-52094a29{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--z-index:15;}.elementor-89941 .elementor-element.elementor-element-5f7667e3{--width:40%;}.elementor-89941 .elementor-element.elementor-element-311294be > .elementor-widget-container{margin:0px 0px 0px 0px;padding:5px 0px 0px 0px;}.elementor-89941 .elementor-element.elementor-element-3fb86a0f{--width:60%;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-89941 .elementor-element.elementor-element-381df7c > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-89941 .elementor-element.elementor-element-7b37dd7c{--z-index:15;}.elementor-89941 .elementor-element.elementor-element-6a1cf434{--width:40%;}.elementor-89941 .elementor-element.elementor-element-296f96f8 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-89941 .elementor-element.elementor-element-171a8dd0{--width:20%;}.elementor-89941 .elementor-element.elementor-element-ee32690{--width:40%;}}/* Start custom CSS for html, class: .elementor-element-381df7c */.menu-icon {
  z-index: 10000;
  pointer-events: auto;
  position: fixed;
  top: 15px;
  right: 15px;
  width: 40px;
  height: 30px;
  cursor: pointer;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3221598c *//* ボタンのベースデザイン */
.custom-hover-button {
  position: relative;
  display: inline-block;
  background: transparent;
  color: #fff;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 600;
  padding: 10px 30px;
  cursor: pointer;
  perspective: 30rem;
  border-radius: 10px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
  text-decoration: none;
  overflow: hidden;
  z-index: 0;

  /* ★ ここで下にずらす */
  margin-top: 6px;
}

/* 擬似要素で背景アニメーション */
.custom-hover-button::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 10px;
  background: linear-gradient(
    320deg,
    rgba(0, 140, 255, 0.678),
    rgba(128, 0, 128, 0.308)
  );
  z-index: -1;
  transition: background 3s;
}

/* ホバー時のアニメーション + フォントカラー */
.custom-hover-button:hover {
  color: #080269;  /* ← フォントカラー変更 */
}

.custom-hover-button:hover::before {
  animation: rotateYAnim 1s;
  transition: all 0.5s;
}

/* 回転アニメーション */
@keyframes rotateYAnim {
  0% {
    transform: rotateY(180deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7b37dd7c *//* 固定ヘッダーのデザイン（最初は非表示） */
.fixed-header {
    position: fixed;
    top: 10px;                 /* 上に余白 */
    left: 0;
    right: 0;                  /* ← 両方指定して中央寄せを有効にする */
    width: 95.5%;
    margin: 0 auto;            /* 中央配置 */
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s ease-in-out;

    background: rgba(255, 255, 255, 0.4);
    backdrop-filter: blur(7px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-radius: 9999px;
}


/* スクロールで表示されるとき */
.fixed-header.is-show {
    opacity: 1;
    visibility: visible;
    animation: fadeSlideSmooth 0.8s ease-in-out forwards;
}

/* フェード＋微スライドアニメーション */
@keyframes fadeSlideSmooth {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* スマホでは非表示 */
@media screen and (max-width: 1024px) {
    .fixed-header {
        display: none;
    }
}/* End custom CSS */