:root{--primary-color: #D4AF37;--secondary-color: #003366;--text-color: #333;--text-light: #f5f5f5;--glass-bg: rgba(255, 255, 255, .9);--glass-bg-dark: rgba(0, 0, 0, .6);--glass-border: 1px solid rgba(255, 255, 255, .3);--shadow: 0 8px 32px 0 rgba(31, 38, 135, .37);--font-main: "Noto Sans JP", sans-serif;--font-heading: "Outfit", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:var(--font-main);color:var(--text-color);line-height:1.6;overflow-x:hidden}.background-container{position:fixed;top:0;left:0;width:100%;height:100lvh;z-index:-1}.background-image{width:100%;height:100%;object-fit:cover}.overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0000004d,#000000b3)}.container{max-width:1200px;margin:0 auto;padding:0 20px}.section{padding:80px 0}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700}.section-title{font-size:2.5rem;text-align:center;position:relative;display:block;margin:0 auto 50px;width:fit-content}.section-title:after{content:"";display:block;width:60px;height:4px;background:var(--primary-color);margin:10px auto 0;border-radius:2px}.white-text{color:var(--text-light)}.glass-header{position:fixed;top:0;width:100%;padding:10px 0;background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:var(--glass-border);z-index:100;transition:all .3s ease}.glass-header .container{display:flex;justify-content:space-between;align-items:center;position:relative}.glass-header h1{color:#fff;font-family:Playfair Display,serif;font-size:1.8rem;letter-spacing:.05em;font-weight:600;text-shadow:0 2px 4px rgba(0,0,0,.5);margin:0}.logo-container{display:flex;align-items:center;gap:15px}.site-logo{height:30px;width:auto;filter:drop-shadow(0 2px 4px rgba(0,0,0,.5))}.glass-header nav a{color:#fff;text-decoration:none;font-weight:500;transition:color .3s;text-shadow:0 1px 2px rgba(0,0,0,.5)}.glass-header nav a:hover{color:var(--primary-color)}.btn-contact{background:var(--primary-color);padding:10px 20px;border-radius:30px;color:#fff!important;text-shadow:none!important}.hero{height:100lvh;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}.hero h2{font-family:Zen Old Mincho,serif;font-size:4.5rem;margin-bottom:30px;text-shadow:0 4px 8px rgba(0,0,0,.6);line-height:1.3;letter-spacing:.05em;font-weight:600}.hero p{font-family:Playfair Display,serif;font-size:1.8rem;font-weight:400;text-shadow:0 2px 4px rgba(0,0,0,.6);letter-spacing:.05em;font-style:italic}.glass-card{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:20px;box-shadow:var(--shadow);border:var(--glass-border);margin:40px 0;padding:60px 0}.glass-card-sm{background:#ffffff26;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-radius:12px;padding:20px;border:var(--glass-border);color:#fff;transition:transform .3s ease}.glass-card-sm:hover{transform:translateY(-5px);background:#ffffff40}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.about-info dl{display:grid;grid-template-columns:120px 1fr;gap:15px}.about-info dt{font-weight:700;color:var(--secondary-color);border-bottom:1px solid #ddd;padding-bottom:5px}.about-info dd{border-bottom:1px solid #ddd;padding-bottom:5px}.about-image img{width:100%;border-radius:10px;box-shadow:0 10px 20px #0003}.business-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.business-item{position:relative;overflow:hidden}.business-item .number{font-size:3rem;font-weight:700;color:#fff3;position:absolute;top:-10px;right:10px}.business-item h4{margin-top:20px;font-size:1.1rem;z-index:1;position:relative}.sl-content{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}.sl-text h4{font-size:1.8rem;color:var(--secondary-color);margin-bottom:20px}.sl-text p{margin-bottom:15px}.sl-images img{width:100%;border-radius:10px;box-shadow:0 10px 20px #0003}.sl-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.sl-map img{width:100%;height:auto;border-radius:10px}.sl-details{background:#00000080}.sl-details ul{list-style:none;margin-bottom:20px}.sl-details li{margin-bottom:10px;border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:5px}.glass-footer{background:var(--secondary-color);color:#fff;padding:60px 0 20px;margin-top:50px}.text-center{text-align:center}.glass-footer h3{margin-bottom:20px}.btn-main{display:inline-block;background:var(--primary-color);color:#fff;padding:15px 40px;border-radius:50px;text-decoration:none;font-size:1.5rem;font-weight:700;margin:30px 0;transition:transform .3s,box-shadow .3s}.btn-main:hover{transform:scale(1.05);box-shadow:0 0 20px #d4af3799}.copyright{font-size:.9rem;opacity:.7}.contact-info-container{display:flex;flex-direction:column;align-items:center;gap:15px;margin:30px 0}.contact-info-container .btn-main{margin:0;width:fit-content;min-width:280px;display:flex;justify-content:center;align-items:center}.contact-info-container>div{display:flex;flex-direction:column;gap:15px;align-items:center}.animate-up{opacity:0;transform:translateY(30px);animation:fadeInUp 1s forwards}.delay-1{animation-delay:.3s}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.header-controls{display:flex;align-items:center;gap:20px}.lang-switch-nav{display:flex;gap:8px;align-items:center}.lang-switch-header{display:none;gap:8px;align-items:center;margin-bottom:10px}.header-right{display:flex;flex-direction:column;align-items:flex-end}@media(min-width:769px){html{scroll-padding-top:100px}.lang-switch-nav{display:none}.lang-switch-header{display:flex;margin-bottom:20px}.lang-switch-header .lang-btn{font-size:.65rem;padding:2px 6px;border-radius:4px}.glass-header nav a{margin-left:30px}.site-logo{height:50px}.mobile-only{display:none}}.lang-btn{background:#fff3;border:1px solid rgba(255,255,255,.4);color:#fff;padding:5px 10px;border-radius:5px;cursor:pointer;font-size:.9rem;transition:all .3s;display:flex;align-items:center;gap:5px;text-decoration:none}.lang-btn:hover,.lang-btn.active{background:var(--primary-color);border-color:var(--primary-color)}.hamburger{display:none;flex-direction:column;justify-content:space-around;width:30px;height:25px;background:transparent;border:none;cursor:pointer;z-index:101}.hamburger span{width:30px;height:3px;background:#fff;border-radius:10px;transition:all .3s linear}.sl-images,.sl-map{width:100%;overflow:hidden}.swiper{width:100%;height:auto}.sl-business-swiper,.sl-about-swiper{width:100%;height:400px;border-radius:10px;margin-bottom:10px}.sl-business-swiper .swiper-slide img,.sl-about-swiper .swiper-slide img{width:100%;height:100%;object-fit:cover;border-radius:10px;cursor:pointer}.sl-business-thumbs,.sl-about-thumbs{box-sizing:border-box;padding:10px 0}.sl-business-thumbs .swiper-slide,.sl-about-thumbs .swiper-slide{height:auto;width:55px;aspect-ratio:1 / 1!important;opacity:.4;cursor:pointer;transition:opacity .3s}.sl-business-thumbs .swiper-slide-thumb-active,.sl-about-thumbs .swiper-slide-thumb-active{opacity:1}.sl-business-thumbs .swiper-slide img,.sl-about-thumbs .swiper-slide img{width:100%;height:100%;object-fit:cover;border-radius:5px;display:block}.sl-gallery-swiper{width:100%;padding:20px 0;margin-top:50px}.sl-gallery-swiper .swiper-wrapper{transition-timing-function:linear}.sl-gallery-swiper .swiper-slide{width:250px;height:180px;border-radius:10px;overflow:hidden}.sl-gallery-swiper .swiper-slide img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.sl-gallery-swiper .swiper-slide img:hover{transform:scale(1.05)}.sl-gallery-swiper-reverse{width:100%;padding:20px 0}.sl-gallery-swiper-reverse .swiper-wrapper{transition-timing-function:linear}.sl-gallery-swiper-reverse .swiper-slide{width:250px;height:180px;border-radius:10px;overflow:hidden}.sl-gallery-swiper-reverse .swiper-slide img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.sl-gallery-swiper-reverse .swiper-slide img:hover{transform:scale(1.05)}.sl-gallery-swiper-third{width:100%;padding:20px 0}.sl-gallery-swiper-third .swiper-wrapper{transition-timing-function:linear}.sl-gallery-swiper-third .swiper-slide{width:250px;height:180px;border-radius:10px;overflow:hidden}.sl-gallery-swiper-third .swiper-slide img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.sl-gallery-swiper-third .swiper-slide img:hover{transform:scale(1.05)}.lightbox{display:none;position:fixed;z-index:1000;padding-top:60px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000000e6}#lightbox-caption{margin:auto;display:block;width:80%;max-width:700px;text-align:center;color:#ccc;position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#000000b3;color:#fff;padding:15px 20px;border-radius:8px;font-size:1rem;height:auto;pointer-events:none}.lightbox-content{margin:auto;display:block;width:80%;max-width:900px;max-height:80lvh;object-fit:contain;animation-name:zoom;animation-duration:.6s}@keyframes zoom{0%{transform:scale(0)}to{transform:scale(1)}}.lightbox-close{position:absolute;top:15px;right:35px;color:#f1f1f1;font-size:40px;font-weight:700;transition:.3s;cursor:pointer}.lightbox-close:hover,.lightbox-close:focus{color:#bbb;text-decoration:none;cursor:pointer}@media(max-width:768px){.hero h2{font-size:2.5rem}.glass-header h1{font-size:1.1rem}.hamburger{display:flex}.nav-menu{position:fixed;top:0;right:-100%;width:70%;height:100lvh;background:#003366f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-direction:column;justify-content:center;align-items:center;transition:right .3s ease;z-index:100;display:flex}.nav-menu.active{right:0}.nav-menu a{margin:15px 0;font-size:1.2rem}.lang-switch-nav{margin-left:0;order:-1;margin-bottom:20px;margin-top:0;display:flex;justify-content:center;gap:10px;flex-wrap:nowrap}.lang-btn{padding:4px 8px;margin:0!important;font-size:.8rem;white-space:nowrap}.about-grid,.sl-content,.sl-info-grid{grid-template-columns:1fr}.section{padding:40px 0}.about-image,.sl-images{order:-1}.section-title{font-size:2rem;left:auto;transform:none;display:block;margin:0 auto 50px;width:fit-content}.sl-business-swiper,.sl-about-swiper{height:250px}.business-grid{grid-template-columns:repeat(2,1fr);gap:10px}.glass-card-sm{padding:15px}.business-item h4{font-size:.9rem;margin-top:10px}.business-item .number{font-size:2rem;top:-5px;right:5px}.sl-text h4{font-size:1.3rem}}:root{--swiper-theme-color: #007aff}:host{position:relative;display:block;margin-left:auto;margin-right:auto;z-index:1}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);box-sizing:content-box}.swiper-android .swiper-slide,.swiper-ios .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-horizontal{touch-action:pan-y}.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{transform:translateZ(0);backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d{perspective:1200px}.swiper-3d .swiper-slide,.swiper-3d .swiper-cube-shadow{transform-style:preserve-3d}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-css-mode.swiper-horizontal>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-css-mode.swiper-vertical>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-css-mode.swiper-free-mode>.swiper-wrapper{scroll-snap-type:none}.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:none}.swiper-css-mode.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-css-mode.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-horizontal>.swiper-wrapper:before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-css-mode.swiper-centered.swiper-vertical>.swiper-wrapper:before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-slide-shadow-bottom{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:#00000026}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(to right,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,#00000080,#0000)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(to bottom,#00000080,#0000)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;transform-origin:50%;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color: #fff}.swiper-lazy-preloader-black{--swiper-preloader-color: #000}@keyframes swiper-preloader-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
