/* 部分変更用。ここに追記すると元の保存CSSを保ったまま上書きできます。 */

/* H05: mobile dropdown keeps the original appearance and opens below the toggle. */
@media(width < 1025px){
  body .elementor.elementor .elementor-widget-nav-menu.elementor-element nav.elementor-nav-menu--dropdown.h05-mobile-menu{
    display:block!important;
    top:100%;
    margin-top:0!important;
    height:0;
    max-height:none;
    overflow-x:hidden;
    overflow-y:auto;
    overscroll-behavior:contain;
    visibility:hidden;
    pointer-events:none;
    transform:none;
    transform-origin:top;
    transition:height .42s cubic-bezier(.22,.61,.36,1),visibility 0s linear .42s;
  }
  body .elementor.elementor .elementor-widget-nav-menu.elementor-element nav.elementor-nav-menu--dropdown.h05-mobile-menu.is-open{
    height:var(--h05-menu-height,0px);
    visibility:visible;
    pointer-events:auto;
    transition:height .42s cubic-bezier(.22,.61,.36,1),visibility 0s;
  }
  .elementor-widget-nav-menu .elementor-menu-toggle{position:relative;touch-action:manipulation}
}
a[href="#top"]{touch-action:manipulation}
/* H05: centered lesson introduction, keeping original artwork and type. */
.elementor-16 .elementor-element.elementor-element-3ea3b28 > .elementor-container{margin-left:auto;margin-right:auto}
.elementor-16 .elementor-element.elementor-element-3ea3b28 .elementor-widget-icon-list > .elementor-widget-container{margin-left:0;margin-right:0;padding-left:12px;padding-right:12px}
.elementor-16 .elementor-element.elementor-element-3ea3b28 .elementor-icon-list-item{justify-content:center;text-align:center}
.elementor-16 .elementor-element.elementor-element-3ea3b28 .elementor-icon-list-icon{flex-shrink:0}
.elementor-16 .elementor-element.elementor-element-caa46a2 .elementor-heading-title,
.elementor-16 .elementor-element.elementor-element-caa46a2 .elementor-text-editor{text-align:center}

/* H05: show the original TOP artwork only after the visitor scrolls. */
.elementor-widget-image:has(a[href="#top"]){opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease,visibility 0s linear .25s}
.elementor-widget-image.h05-top-visible:has(a[href="#top"]){opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:opacity .25s ease,transform .25s ease,visibility 0s}
@media(prefers-reduced-motion:reduce){.elementor-widget-image:has(a[href="#top"]){transition:none;transform:none}}
