.elementor-53 .elementor-element.elementor-element-88c2e00{--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;--gap:00px 00px;--row-gap:00px;--column-gap:00px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:100;}.elementor-53 .elementor-element.elementor-element-c1c0d2e{--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;--justify-content:space-between;--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:100;}.elementor-53 .elementor-element.elementor-element-fcf6ca0{--display:flex;--min-height:134px;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--background-transition:0.3s;--overlay-opacity:1;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#3C554C;--border-color:#3C554C;--border-radius:0px 0px 73px 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-53 .elementor-element.elementor-element-fcf6ca0:not(.elementor-motion-effects-element-type-background), .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://tenoha-noshiro-fes.jp/wp-content/uploads/2026/04/logo.svg");background-position:20px 20px;background-repeat:no-repeat;background-size:70% auto;}.elementor-53 .elementor-element.elementor-element-fcf6ca0::before, .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .elementor-background-video-container::before, .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .e-con-inner > .elementor-background-video-container::before, .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .elementor-background-slideshow::before, .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .e-con-inner > .elementor-background-slideshow::before, .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-53 .elementor-element.elementor-element-f7310aa{--display:flex;--min-height:80px;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:3%;--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(max-width:1024px){.elementor-53 .elementor-element.elementor-element-fcf6ca0{--min-height:100px;--border-radius:0px 0px 050px 0px;}.elementor-53 .elementor-element.elementor-element-fcf6ca0:not(.elementor-motion-effects-element-type-background), .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:12px 20px;}.elementor-53 .elementor-element.elementor-element-f7310aa{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}}@media(min-width:768px){.elementor-53 .elementor-element.elementor-element-c1c0d2e{--width:100%;}.elementor-53 .elementor-element.elementor-element-fcf6ca0{--width:144px;}.elementor-53 .elementor-element.elementor-element-f7310aa{--width:80px;}}@media(max-width:1024px) and (min-width:768px){.elementor-53 .elementor-element.elementor-element-fcf6ca0{--width:100px;}}@media(max-width:767px){.elementor-53 .elementor-element.elementor-element-fcf6ca0{--width:76px;--min-height:71px;border-width:0px 1px 1px 0px;--border-top-width:0px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:0px;--border-radius:0px 0px 030px 0px;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-53 .elementor-element.elementor-element-fcf6ca0:not(.elementor-motion-effects-element-type-background), .elementor-53 .elementor-element.elementor-element-fcf6ca0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:8px 12px;}.elementor-53 .elementor-element.elementor-element-f7310aa{--width:50px;}}/* Start custom CSS for html, class: .elementor-element-377b128 *//* =========================================
   ハンバーガーボタン（共通）
========================================= */
.tenoha-hamburger-wrap {
  position: relative;
  z-index: 9999;
  
}

.tenoha-hamburger {
  border-radius: 50%;
  border: 2px solid #3C554C;
  background: #ECF5F200 !important;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  position: relative;
}

.tenoha-hamburger span {
  position: absolute;
  border-radius: 50px;
  background: #3C554C;
  transition: 0.35s ease-in-out;
}
.tenoha-hamburger:hover{
    background-color: #BDE6E300 !important;
}
.tenoha-hamburger:visited{
    background-color: #BDE6E300 !important;
}
.tenoha-hamburger:active{
    background-color: #BDE6E300 !important;
}

/* =========================================
   メニュー（画面中央フェードイン）
========================================= */
.tenoha-menu {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%); /* ← 中央配置 */
  width: 100vw;
  height: 100vh;
  background: #ECF5F2;
  padding: 120px 40px;
  z-index: 9998;

  opacity: 0;
  pointer-events: none;
  transition: opacity 0.45s ease-in-out;
}

.tenoha-menu.open {
  opacity: 1;
  pointer-events: auto;
}

/* 点を完全に消す */
.tenoha-menu ul,
.tenoha-menu li {
  list-style: none !important;
}

.tenoha-menu li::marker {
  content: "" !important;
}

.tenoha-menu ul {
  padding: 0;
  margin: 10% 0 0;
}

.tenoha-menu li {
  margin-bottom: 28px;
}

.tenoha-menu a {
  display: block;
  color: #3C554C;
  text-decoration: none;
  text-align: center;
  font-size: 24px;
  transition: color 0.25s ease;
}


/* =========================================
   PC（769px以上）
========================================= */
@media (min-width: 769px) {
  .tenoha-hamburger {
    width: 80px;
    height: 80px;
  }

  .tenoha-hamburger span {
    width: 32px;
    height: 2px;
  }

  /* 中央揃え */
  .tenoha-hamburger span:nth-child(1) { top: 28px; }
  .tenoha-hamburger span:nth-child(2) { top: 40px; }
  .tenoha-hamburger span:nth-child(3) { top: 52px; }

  /* バツ状態 */
  .tenoha-hamburger.active span:nth-child(1) {
    top: 39px;
    transform: rotate(45deg);
  }
  .tenoha-hamburger.active span:nth-child(2) {
    opacity: 0;
  }
  .tenoha-hamburger.active span:nth-child(3) {
    top: 39px;
    transform: rotate(-45deg);
  }

  .tenoha-menu {
    padding: 120px 40px;
  }

  .tenoha-menu a {
    font-size: 2.4rem;
  }
}

/* =========================================
   Tablet（768px以下）
========================================= */
@media (max-width: 768px) {
  .tenoha-hamburger {
    width: 60px;
    height: 60px;
  }

  .tenoha-hamburger span {
    width: 26px;
    height: 3px;
  }

  .tenoha-hamburger span:nth-child(1) { top: 18px; }
  .tenoha-hamburger span:nth-child(2) { top: 28px; }
  .tenoha-hamburger span:nth-child(3) { top: 38px; }

  .tenoha-hamburger.active span:nth-child(1) {
    top: 28px;
    transform: rotate(45deg);
  }
  .tenoha-hamburger.active span:nth-child(2) {
    opacity: 0;
  }
  .tenoha-hamburger.active span:nth-child(3) {
    top: 28px;
    transform: rotate(-45deg);
  }

  .tenoha-menu {
    padding: 100px 32px;
  }

  .tenoha-menu a {
    font-size: 2rem;
  }
  
  .tenoha-menu ul {
      margin: 18% 0 0;
  }
}

/* =========================================
   スマホ版（430px以下）
   ハンバーガーメニュー最適化
========================================= */
@media (max-width: 430px) {

  /* ハンバーガーボタン */
  .tenoha-hamburger {
    width: 40px;
    height: 40px;
    border: 1px solid #3C554C;
  }

  .tenoha-hamburger span {
    width: 20px;   /* バー長さ */
    height: 1px;   /* バー太さ */
    background: #3C554C;
    border-radius: 50px;
    transition: 0.35s ease-in-out;
  }

  /* バーの位置（間隔6px） */
  .tenoha-hamburger span:nth-child(1) { top: 13px; } /* ← 指定通り */
  .tenoha-hamburger span:nth-child(2) { top: 19px; }
  .tenoha-hamburger span:nth-child(3) { top: 25px; }

  /* バツ状態（中央20pxに揃える） */
  .tenoha-hamburger.active span:nth-child(1) {
    top: 18px;
    transform: rotate(45deg);
  }
  .tenoha-hamburger.active span:nth-child(2) {
    opacity: 0;
  }
  .tenoha-hamburger.active span:nth-child(3) {
    top: 18px;
    transform: rotate(-45deg);
  }

  /* メニュー（画面中央表示） */
  .tenoha-menu {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100vw;
    height: 100vh;
    background: #ECF5F2;
    padding: 80px 24px;

    opacity: 0;
    pointer-events: none;
    transition: opacity 0.45s ease-in-out;
  }

  .tenoha-menu.open {
    opacity: 1;
    pointer-events: auto;
  }

  /* 点を完全に消す */
  .tenoha-menu ul,
  .tenoha-menu li {
    list-style: none !important;
  }

  .tenoha-menu li::marker {
    content: "" !important;
  }

  /* テキスト中央揃え */
  .tenoha-menu ul {
    padding: 0;
    margin: 18% 0 0;
  }

  .tenoha-menu li {
    margin-bottom: 24px;
  }

  .tenoha-menu a {
    display: block;
    color: #3C554C;
    font-size: 18px;
    text-decoration: none;
    text-align: center;
    transition: color 0.25s ease;
  }
}/* End custom CSS */