@charset "UTF-8";body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue"," 游ゴシック体",YuGothic,"游ゴシック","Yu Gothic",Hiragino Sans,"ヒラギノ角ゴシック",Hiragino Kaku Gothic ProN,"ヒラギノ角ゴ ProN W3",Verdana,sans-serif;color:#494949}.main-content{margin:0;padding:0}@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Outfit:wght@400;500;700&display=swap");header#fs-header{position:fixed;top:0;left:0;right:0;z-index:1000;height:60px;transition:all 0.4s cubic-bezier(0.16,1,0.3,1)}@media (min-width:992px){header#fs-header{height:80px}}header#fs-header::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,0.85);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,0.3);opacity:0.95;z-index:-1;transition:opacity 0.3s ease}header#fs-header.scrolled{height:60px;box-shadow:0 4px 20px rgba(0,0,0,0.05)}@media (min-width:992px){header#fs-header.scrolled{height:70px}}header#fs-header .header-inner{max-width:1400px;margin:0 auto;padding:0 20px;height:100%;display:flex;justify-content:space-between;align-items:center}@media (min-width:992px){header#fs-header .header-inner{padding:0 40px}}header#fs-header .logo{margin:0;padding:0;height:40px;display:flex;align-items:center;z-index:1002}@media (min-width:992px){header#fs-header .logo{height:50px}}header#fs-header .logo a{display:block;height:100%}header#fs-header .logo img{height:100%;width:auto;object-fit:contain;mix-blend-mode:multiply}header#fs-header .pc-nav{display:none}@media (min-width:992px){header#fs-header .pc-nav{display:block;position:absolute;left:50%;transform:translateX(-50%)}}header#fs-header .pc-nav .menu-list{display:flex;gap:40px;list-style:none;margin:0;padding:0;align-items:center}header#fs-header .pc-nav .menu-list li a.nav-link{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:#333333;position:relative;padding:4px 0 6px;transition:color 0.3s ease}header#fs-header .pc-nav .menu-list li a.nav-link .en{font-family:"Outfit",sans-serif;font-weight:500;font-size:14px;line-height:1;letter-spacing:0.08em;text-transform:uppercase}header#fs-header .pc-nav .menu-list li a.nav-link .ja{font-family:"Noto Sans JP",sans-serif;font-size:10px;line-height:1;letter-spacing:0.08em;color:#666666;transition:color 0.3s ease,opacity 0.3s ease}header#fs-header .pc-nav .menu-list li a.nav-link::after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:#ff4b4b;transition:width 0.3s cubic-bezier(0.25,0.8,0.25,1)}header#fs-header .pc-nav .menu-list li a.nav-link:hover{color:#000000}header#fs-header .pc-nav .menu-list li a.nav-link:hover .ja{color:#000000;opacity:0.8}header#fs-header .pc-nav .menu-list li a.nav-link:hover::after{width:100%}header#fs-header .header-actions{display:flex;align-items:center;gap:20px}header#fs-header .btn-reserve{display:none}@media (min-width:992px){header#fs-header .btn-reserve{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#ff4b4b;color:#ffffff;text-decoration:none;padding:8px 24px;border-radius:30px;transition:all 0.3s cubic-bezier(0.16,1,0.3,1);box-shadow:0 4px 15px rgba(255,75,75,0.25);height:48px;min-width:140px}header#fs-header .btn-reserve .en{font-family:"Outfit",sans-serif;font-weight:700;font-size:14px;line-height:1;letter-spacing:0.05em;margin-bottom:2px}header#fs-header .btn-reserve .ja{font-family:"Noto Sans JP",sans-serif;font-size:10px;line-height:1;opacity:0.9}header#fs-header .btn-reserve:hover{background-color:rgb(255,49.5,49.5);transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,75,75,0.35)}}header#fs-header #menu-button{display:flex;flex-direction:column;justify-content:space-between;width:32px;height:20px;background:transparent;border:none;cursor:pointer;padding:0;z-index:1001}header#fs-header #menu-button .bar{width:100%;height:2px;background-color:#333333;transition:all 0.3s cubic-bezier(0.16,1,0.3,1);transform-origin:center;border-radius:2px}header#fs-header #menu-button .bar.top{width:100%}header#fs-header #menu-button .bar.middle{width:70%;margin-left:auto}header#fs-header #menu-button .bar.bottom{width:100%}header#fs-header #menu-button:hover .bar.middle{width:100%}header#fs-header #menu-button.active .bar.top{transform:translateY(9px) rotate(45deg);background-color:#000000}header#fs-header #menu-button.active .bar.middle{opacity:0;transform:translateX(10px)}header#fs-header #menu-button.active .bar.bottom{transform:translateY(-9px) rotate(-45deg);background-color:#000000}#mobile-menu{position:fixed;top:0;left:0;width:100%;height:100vh;background:rgba(255,255,255,0.98);z-index:999;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:all 0.5s cubic-bezier(0.16,1,0.3,1)}#mobile-menu.active{opacity:1;visibility:visible}#mobile-menu.active .mobile-nav ul li{opacity:1;transform:translateY(0)}#mobile-menu.active .mobile-cta{opacity:1;transform:translateY(0);transition-delay:0.4s}#mobile-menu .mobile-menu-inner{width:100%;max-width:400px;padding:40px;display:flex;flex-direction:column;gap:50px}#mobile-menu .mobile-nav ul{list-style:none;margin:0;padding:0;text-align:center}#mobile-menu .mobile-nav ul li{margin:0;padding:15px 0;border-bottom:1px solid rgba(0,0,0,0.05);opacity:0;transform:translateY(20px);transition:all 0.5s cubic-bezier(0.16,1,0.3,1)}#mobile-menu .mobile-nav ul li:nth-child(1){transition-delay:0.15s}#mobile-menu .mobile-nav ul li:nth-child(2){transition-delay:0.2s}#mobile-menu .mobile-nav ul li:nth-child(3){transition-delay:0.25s}#mobile-menu .mobile-nav ul li:nth-child(4){transition-delay:0.3s}#mobile-menu .mobile-nav ul li:nth-child(5){transition-delay:0.35s}#mobile-menu .mobile-nav ul li:nth-child(6){transition-delay:0.4s}#mobile-menu .mobile-nav ul li a{text-decoration:none;display:flex;flex-direction:column;align-items:center;gap:5px;transition:opacity 0.3s}#mobile-menu .mobile-nav ul li a .en{font-family:"Outfit",sans-serif;font-weight:700;font-size:28px;color:#333333;line-height:1.2;letter-spacing:0.02em}#mobile-menu .mobile-nav ul li a .ja{font-family:"Noto Sans JP",sans-serif;font-weight:500;font-size:12px;color:#666666;letter-spacing:0.1em}#mobile-menu .mobile-nav ul li a:hover{opacity:0.6}#mobile-menu .mobile-cta{text-align:center;opacity:0;transform:translateY(20px);transition:all 0.5s ease}#mobile-menu .mobile-cta .btn-reserve-mobile{display:block;width:100%;padding:18px 0;background-color:#ff4b4b;color:#ffffff;text-decoration:none;font-family:"Noto Sans JP",sans-serif;font-weight:700;font-size:16px;border-radius:50px;box-shadow:0 10px 25px rgba(255,75,75,0.3);transition:transform 0.2s}#mobile-menu .mobile-cta .btn-reserve-mobile:active{transform:scale(0.98)}body.menu-open{overflow:hidden}.modern-footer{background:linear-gradient(180deg,#e0f7fa 0%,#ffffff 100%);color:#333;font-family:"Noto Sans JP",sans-serif;border-top:1px solid #b3e5fc}.footer-content{max-width:1000px;margin:0 auto;padding:60px 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.footer-column h3{font-family:'Outfit',sans-serif;font-size:1.1rem;font-weight:700;margin-bottom:24px;color:#ec7171;letter-spacing:0.05em}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:16px}.footer-links a{text-decoration:none;color:#546e7a;font-size:0.95rem;transition:color 0.2s ease;display:inline-flex;align-items:center;gap:8px}.footer-links a:hover{color:#ec7171}.footer-links a i{font-size:0.8em;color:#90caf9;transition:transform 0.2s ease,color 0.2s ease}.footer-links a:hover i{transform:translateX(4px);color:#ec7171}.brand-column{text-align:left}.brand-name{font-size:1.2rem;font-weight:700;margin-bottom:12px;display:block;text-decoration:none;color:#1d6bf2}.brand-address{font-size:0.9rem;color:#546e7a;margin-bottom:24px;line-height:1.6}.social-links{display:flex;gap:16px}.social-icon{width:40px;height:40px;background-color:#e1f5fe;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#ec7171;transition:all 0.2s ease;text-decoration:none}.social-icon:hover{background-color:#ec7171;color:#fff;transform:translateY(-3px);box-shadow:0 4px 10px rgba(236,113,113,0.3)}.copyright-bar{border-top:1px solid #b3e5fc;padding:24px;text-align:center;font-size:0.85rem;color:#fff;background-color:#1d6bf2}.copyright-bar a{color:#fff;text-decoration:underline;font-weight:500}@media (max-width:768px){.footer-content{grid-template-columns:1fr;gap:40px;padding:40px 20px}.footer-column{text-align:center}.footer-links a{justify-content:center}.brand-column{text-align:center;order:-1}.social-links{justify-content:center}}