*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;background-color:#1a1a1a;color:#fffffb;line-height:1.8}.site-wrapper{position:relative;z-index:0;overflow-x:hidden}.site-wrapper:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:url(/assets/main-img.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;z-index:-2}.site-wrapper:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(-45deg,#ee775240,#e73c7e40,#23a6d540,#23d5ab40);background-size:400% 400%;animation:gradientAnimation 15s ease infinite;z-index:-1;display:none}h1,h2{font-family:Times New Roman,Yu Mincho,MS PMincho,serif;color:#fffffb;text-align:center;margin-bottom:1rem}h1{font-size:3rem}h2{font-size:2.5rem}main{position:relative;z-index:1}section{padding:100px 20px;text-align:center;border-bottom:none}#news .news-list{max-width:800px;margin:50px auto 0;text-align:left;background-color:#444c;border-radius:15px;padding:20px 30px}#news .news-item{display:flex;flex-direction:column;padding:15px 0;border-bottom:1px solid #666}#news .news-item:last-child{border-bottom:none}#news .news-date{font-size:.9rem;color:#ccc;margin-bottom:5px}#news .news-title{color:#fffffb;text-decoration:none;font-size:1.1rem;transition:color .3s}#news .news-title:hover{color:#aaa}@media(min-width:768px){#news .news-item{flex-direction:row;align-items:center}#news .news-date{margin-bottom:0;margin-right:30px;min-width:100px}}#about .about-list{display:flex;justify-content:space-around;flex-wrap:wrap;gap:20px;margin-top:50px;text-align:left}#about .about-item{width:30%;min-width:280px;padding:20px;border:none;border-radius:30px;background-color:#444c}#about .about-icon{font-size:2rem;margin-bottom:15px}#about .about-item h3{font-size:1.5rem;margin-bottom:10px;text-align:left}#facility{padding:0;overflow:hidden}#facility h2{padding:100px 20px 50px}.facility-horizontal-scroll{height:100vh;width:100%}.facility-track{display:flex;width:700%;height:100%}#facility .room-container{width:100vw;height:100%;display:flex;align-items:center;gap:40px;padding:0 5vw;flex-shrink:0;text-align:left;margin-top:0}#facility .room-container.layout-reverse{flex-direction:row}#facility .room-image,#facility .room-description{flex:1}#facility .room-image img{width:100%;height:auto;border-radius:30% 70% 70% 30%/30% 30% 70% 70%}#facility .room-description h3{font-size:2rem;margin-bottom:20px;text-align:left}#facility .room-specs{margin-top:20px;border-top:1px solid #444}#facility .room-specs div{display:flex;border-bottom:1px solid #444}#facility .room-specs dt,#facility .room-specs dd{padding:15px}#facility .room-specs dt{flex-basis:30%;font-weight:700;border-right:1px solid #444}#facility .room-specs dd{flex-basis:70%;padding-left:20px}#usage .flow-list{display:flex;justify-content:space-between;list-style:none;padding:0;margin-top:50px;gap:40px}#usage .flow-list li{flex:1;padding:30px;border:none;border-radius:60% 40% 30% 70%/60% 60% 40% 40%;position:relative;text-align:center;background-color:#505050b3}#usage .flow-list li:not(:last-child):after{content:"▶";position:absolute;top:50%;right:-26px;transform:translateY(-50%);font-size:20px;color:#444}#usage .flow-list h4{font-size:1.2rem;font-weight:700;margin-bottom:10px}#usage .flow-list p{font-size:.9rem}#faq .faq-container{max-width:800px;margin:50px auto 0;text-align:left}#faq .faq-item{border-bottom:1px solid #444}#faq .faq-item:first-of-type{border-top:1px solid #444}#faq summary{display:block;padding:20px;cursor:pointer;position:relative}#faq summary::-webkit-details-marker{display:none}#faq summary:after{content:"+";position:absolute;top:50%;right:20px;transform:translateY(-50%);font-size:24px}#faq details[open] summary:after{content:"-"}#faq .faq-answer{padding:0 20px 20px;background-color:#222}#access .access-container{display:flex;align-items:center;gap:40px;margin-top:50px;text-align:left}#access .map-container,#access .address-container{flex:1}#access .map-container{min-height:300px;background-color:#333;border-radius:5px}#access .map-container iframe{width:100%;height:450px;border:0;border-radius:5px}#access .address-container h3{font-size:1.8rem;margin-bottom:20px}#hero{position:relative;display:flex;justify-content:center;align-items:center;height:calc(100vh - 80px);padding-top:80px}#hero h1{position:relative;z-index:1;animation:fadeIn 1.5s ease-out forwards}footer{padding:40px 20px;text-align:center;background-color:#000;color:#fffffb;font-size:.9rem}header{position:fixed;top:0;left:0;width:100%;background:none;padding:0;z-index:1000;transition:background-color .3s}header.header-scrolled{background-color:transparent;box-shadow:none}main{padding-top:80px;position:relative;z-index:1}.header-container{display:flex;justify-content:space-between;align-items:center;width:100%;padding:15px 30px;background:none}.logo{display:block;width:120px;height:40px;background-size:contain;background-repeat:no-repeat;background-position:center;color:#fffffb;text-decoration:none}.nav-menu{display:none;position:fixed;top:0;left:0;width:100%;height:100vh;background-color:#000000b3;flex-direction:column;justify-content:center;align-items:center}.nav-menu.nav-open{display:flex}.close-menu-btn{position:absolute;top:20px;left:30px;background:none;border:none;color:#fffffb;font-size:3rem;cursor:pointer;transition:color .3s,transform .3s;line-height:1;z-index:1002}.close-menu-btn:hover{color:#aaa;transform:scale(1.1)}.nav-menu a{color:#fffffb;text-decoration:none;margin:20px 0;font-size:1.5rem;transition:color .3s}.nav-menu a:hover{color:#aaa}.hamburger-menu{display:block;background:none;border:none;cursor:pointer;padding:0;z-index:1001}.hamburger-menu span{display:block;width:25px;height:3px;background-color:#fffffb;margin:5px 0;transition:all .3s}@media(max-width:768px){.hamburger-menu.nav-open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger-menu.nav-open span:nth-child(2){opacity:0}.hamburger-menu.nav-open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}h1{font-size:2.5rem}h2{font-size:2rem}section{padding:60px 20px}#facility .room-container,#facility .room-container.layout-reverse{flex-direction:column}#usage .flow-list{flex-direction:column;gap:30px}#usage .flow-list li{flex:none;width:100%}#usage .flow-list li:not(:last-child):after{content:"▼";top:auto;bottom:-26px;left:50%;transform:translate(-50%)}#access .access-container{flex-direction:column}#access .address-container h3{text-align:center}.site-wrapper:after{background-image:url(/assets/main-img-mob.jpg)}}@keyframes gradientAnimation{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.underline-animation{position:relative;display:inline-block;text-decoration:none}.underline-animation:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:#fffffb;transition:width .4s ease-out}.underline-animation:hover:after{width:100%}.header-icon-buttons{display:flex;align-items:center;gap:15px;margin-left:auto;margin-right:20px}.icon-button{display:inline-flex;justify-content:center;align-items:center;padding:5px;border-radius:50%;transition:background-color .3s,transform .3s}.icon-button:hover{background-color:#ffffff1a;transform:scale(1.1)}.icon-button svg{fill:#fffffb;transition:fill .3s}@media(max-width:768px){.header-icon-buttons{gap:10px;margin-right:15px}.icon-button svg{width:24px;height:24px}}.usage-buttons{display:flex;flex-direction:column;align-items:center;gap:20px;margin-top:50px}.btn{display:inline-block;padding:15px 30px;border-radius:5px;text-decoration:none;font-weight:700;transition:background-color .3s,transform .3s;min-width:200px;text-align:center}.btn--primary{background-color:#00b90080;color:#fffffb;border:1px solid #00b900}.btn--primary:hover{background-color:#008c0080;transform:translateY(-3px)}.btn--secondary{background-color:transparent;color:#fffffb;border:1px solid #FFFFFB}.btn--secondary:hover{background-color:#ffffff1a;transform:translateY(-3px)}.hero-reserve-button{position:fixed;bottom:30px;left:30px;width:120px;height:120px;border-radius:60% 40% 30% 70%/60% 60% 40% 40%;display:flex;justify-content:center;align-items:center;font-size:1.2rem;z-index:999;box-shadow:0 4px 10px #0000004d}.hero-reserve-button:hover{transform:scale(1.05)}@media(max-width:768px){.hero-reserve-button{width:100px;height:100px;bottom:20px;left:20px;font-size:1.1rem}}.concept-wave-svg{position:absolute;bottom:0;left:0;width:100%;height:auto;z-index:0;display:none}#concept{position:relative;overflow:hidden}#concept h2,#concept p{position:relative;z-index:1}@keyframes relax-animation{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}[data-aos=relax-animation]{opacity:0;transition-property:opacity,transform}[data-aos=relax-animation].aos-animate{animation-name:relax-animation;animation-duration:1.5s;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes poyopoyo{0%{transform:scale(.9);opacity:0}70%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}[data-aos=poyopoyo]{opacity:0;transition-property:opacity}[data-aos=poyopoyo].aos-animate{animation-name:poyopoyo;animation-duration:.7s;animation-timing-function:ease-out;animation-fill-mode:forwards;opacity:1}@keyframes fuwafuwa{0%{transform:translateY(0)}50%{transform:translateY(-8px)}to{transform:translateY(0)}}.animate-fuwafuwa.aos-animate{animation-name:fuwafuwa;animation-duration:2.5s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
