/* Wix移行ページの補完。元のページCSSは各URL専用で読み込む。 */
html { scroll-behavior: smooth; }
#MENU_AS_CONTAINER { display:none !important; }
#MENU_AS_CONTAINER.yid-menu-open { display:block !important; position:fixed !important; inset:0 !important; z-index:999999 !important; visibility:visible !important; opacity:1 !important; width:100% !important; height:100vh !important; overflow:auto !important; background:#f7fbfc; transform:none !important; }
#MENU_AS_CONTAINER.yid-menu-open [data-undisplayed=true] { display:block !important; }
.yid-menu-close { position:fixed; top:10px; right:12px; z-index:1000000; border:1px solid #2587a5; color:#006780; background:#fff; padding:10px 14px; font:600 13px sans-serif; cursor:pointer; }
.yid-special-link { position:fixed; bottom:16px; left:16px; right:auto; z-index:999; background:#1c2e44; color:#fff !important; font:500 13px/1.6 sans-serif; text-decoration:none; padding:12px 18px; border-radius:3px; box-shadow:0 3px 15px #0003; }
.yid-main:not(.yid-mobile) .yid-special-link { font-size:14px; }
.yid-mobile .yid-special-link { bottom:calc(64px + env(safe-area-inset-bottom, 0px)); left:10px; right:auto; max-width:calc(100vw - 20px); font-size:10px; padding:8px 12px; }
.yid-form-notice { color:#6d4c00 !important; background:#fff3d3; padding:12px 16px !important; margin:10px 0 20px !important; border:1px solid #ead08a; font:12px/1.8 sans-serif !important; position:relative !important; width:auto !important; height:auto !important; }
form[data-yid-form] { overflow:visible !important; }
form[data-yid-form] input[type=date] { font:inherit; padding:10px; box-sizing:border-box; background:#fff; color:#333; }
.yid-fallback-header { padding:25px 6vw; background:#086e89; color:#fff; font:600 20px sans-serif; }
.yid-fallback-header a { color:inherit; text-decoration:none; }
.yid-fallback-content { max-width:960px; margin:50px auto; padding:0 24px; font:15px/1.9 sans-serif; }
@media(prefers-reduced-motion:reduce) { html {scroll-behavior:auto;} }

/* ホーム6枚スライドの通常HTML表示 */
[data-native-carousel] { position: relative; touch-action: pan-y; }
[data-native-carousel] [data-testid="slidesWrapper"] { position: relative; overflow: hidden; }
[data-native-carousel] [data-carousel-slide][hidden] { display: none !important; }
[data-native-carousel] [data-carousel-slide] .bgImage,
[data-native-carousel] [data-carousel-slide] .yid-wix-image-container,
[data-native-carousel] [data-carousel-slide] img { display: block; width: 100%; height: 100%; }
[data-native-carousel] [data-carousel-slide] img { object-fit: cover; object-position: 50% 50%; }
[data-native-carousel] nav[aria-label="Slides"] a { cursor: pointer; }
[data-native-carousel] nav[aria-label="Slides"] a[aria-current="true"] { opacity: 1; }

/* 装飾背景はマウス・タッチ操作を遮りません。 */
.yid-main [data-testid="colorUnderlay"],
.yid-main [id^="bgLayers_"],
.yid-main [id^="bgMedia_"] { pointer-events: none !important; }
[data-native-carousel] nav[aria-label="Slides"],
[data-native-carousel] [data-testid="prevButton"],
[data-native-carousel] [data-testid="nextButton"] { z-index: 20 !important; pointer-events: auto !important; }
[data-native-carousel] nav[aria-label="Slides"] a { pointer-events: auto !important; }

/* ローカル動画サムネイル。再生時のみYouTubeへ接続します。 */
.yid-video-preview { position:relative; width:100%; height:100%; min-height:180px; background:#111; }
.yid-video-preview button { display:block; width:100%; height:100%; border:0; margin:0; padding:0; background:none; cursor:pointer; position:relative; }
.yid-video-preview button img { display:block; width:100%; height:100%; object-fit:cover; }
.yid-video-play { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:66px; height:48px; border-radius:13px; background:#d92128; color:#fff; font:26px/1 Arial,sans-serif; box-shadow:0 2px 14px #0006; }
.yid-video-link { position:absolute; bottom:9px; right:10px; font:11px/1.5 sans-serif; color:#fff !important; padding:3px 8px; background:#0008; }
