.elementor-14232 .elementor-element.elementor-element-65e4067{--display:flex;--min-height:120vh;}.elementor-14232 .elementor-element.elementor-element-ca2169b{--display:flex;}.elementor-14232 .elementor-element.elementor-element-4d53e52{--spacer-size:50px;}.elementor-14232 .elementor-element.elementor-element-5c32354{--display:flex;}.elementor-14232 .elementor-element.elementor-element-5c32354.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-14232 .elementor-element.elementor-element-d27a823 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:300;text-transform:lowercase;-webkit-text-stroke-color:#000;stroke:#000;color:#492F16;}.elementor-14232 .elementor-element.elementor-element-b16c6f7{--spacer-size:50px;}.elementor-14232 .elementor-element.elementor-element-d0f46ca{--display:flex;}.elementor-14232 .elementor-element.elementor-element-83be1e9{--display:flex;}.elementor-14232 .elementor-element.elementor-element-83be1e9.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-14232 .elementor-element.elementor-element-2532154{--spacer-size:50px;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-14232 .elementor-element.elementor-element-823aef1{font-family:"Roboto", Sans-serif;font-weight:400;color:#492F16;}.elementor-14232 .elementor-element.elementor-element-bae3fbd{--spacer-size:50px;}.elementor-14232 .elementor-element.elementor-element-fbfa8ca{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-14232 .elementor-element.elementor-element-3763657 .elementor-wrapper{--video-aspect-ratio:0.5625;filter:brightness( 100% ) contrast( 100% ) saturate( 100% ) blur( 0px ) hue-rotate( 0deg );}.elementor-14232 .elementor-element.elementor-element-2d7d797{--spacer-size:50px;}.elementor-14232 .elementor-element.elementor-element-0b5d69d{--spacer-size:50px;}body.elementor-page-14232:not(.elementor-motion-effects-element-type-background), body.elementor-page-14232 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FAFAF2;}@media(max-width:1024px){.elementor-14232 .elementor-element.elementor-element-fbfa8ca{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-14232 .elementor-element.elementor-element-65e4067{--width:100%;--min-height:100vh;--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-14232 .elementor-element.elementor-element-4d53e52{--spacer-size:18px;}.elementor-14232 .elementor-element.elementor-element-5c32354{--width:366px;}.elementor-14232 .elementor-element.elementor-element-65f7130 img{width:100%;max-width:100%;}.elementor-14232 .elementor-element.elementor-element-d27a823{width:initial;max-width:initial;text-align:center;}.elementor-14232 .elementor-element.elementor-element-d27a823.elementor-element{--align-self:center;}.elementor-14232 .elementor-element.elementor-element-d27a823 .elementor-heading-title{font-size:11px;line-height:1.4em;letter-spacing:2px;-webkit-text-stroke-width:0px;stroke-width:0px;}.elementor-14232 .elementor-element.elementor-element-b16c6f7{--spacer-size:15px;}.elementor-14232 .elementor-element.elementor-element-d0f46ca{--min-height:186px;}.elementor-14232 .elementor-element.elementor-element-83be1e9{--width:339px;}.elementor-14232 .elementor-element.elementor-element-2532154{--spacer-size:10px;}.elementor-14232 .elementor-element.elementor-element-823aef1{font-size:11px;}.elementor-14232 .elementor-element.elementor-element-bae3fbd{--spacer-size:10px;}.elementor-14232 .elementor-element.elementor-element-fbfa8ca{--content-width:500px;--min-height:0px;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-14232 .elementor-element.elementor-element-2d7d797{--spacer-size:15px;}.elementor-14232 .elementor-element.elementor-element-0b5d69d{--spacer-size:15px;}}/* Start custom CSS for container, class: .elementor-element-65e4067 *//* 1. ページ全体の余白とズレをリセット */
html, body {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
}

/* 2. 動画コンテナ（.top-movie）を画面いっぱいに固定 */
.top-movie {
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    left: 0 !important;
    transform: none !important; /* ズレの原因を解除 */
}

/* 3. 背景動画の枠を強制的にコンテナに合わせる */
.top-movie .elementor-background-video-container {
    width: 100% !important;
    height: 100% !important;
    top: 0 !important;
    left: 0 !important;
    transform: none !important;
}

/* 4. 動画本体を「比率維持」しつつ「隙間ゼロ」で埋める */
.top-movie .elementor-background-video-container video {
    width: 100% !important;
    height: 100% !important;
    /* 縦長の動画を画面いっぱいに広げ、隙間をなくす */
    object-fit: cover !important; 
    object-position: center center !important;
    
    /* 念のため位置を中央に固定 */
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
}/* End custom CSS */
/* Start custom CSS for spacer, class: .elementor-element-0b5d69d */document.addEventListener('DOMContentLoaded', function() {
    const videoElement = document.querySelector('#my-video video');
    if (!videoElement) return;

    const observer = new IntersectionObserver((entries) => {
        entries.forEach(entry => {
            if (entry.isIntersecting) {
                videoElement.play(); // 画面に入ったら再生
            } else {
                videoElement.pause(); // 画面から出たら停止
            }
        });
    }, { threshold: 0.5 }); // 50%以上画面に映ったら発動

    observer.observe(videoElement);
});
</script>/* End custom CSS */