:root{--background:#fff;--foreground:#000}*{box-sizing:border-box;padding:0;margin:0}body,html{min-height:100%;background:var(--background);color:var(--foreground);font-family:Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}body,html,main{width:100%}.title{font-size:21px;font-weight:400}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .5s ease-in-out forwards}html{-webkit-text-size-adjust:100%}.material-symbols-outlined,.material-symbols-rounded{font-weight:400;font-style:normal;font-size:32px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;width:1em;height:1em;overflow:hidden;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-smoothing:antialiased}.material-symbols-rounded{font-family:Material Symbols Rounded}.material-symbols-outlined{font-family:Material Symbols Outlined}.material-symbols-outlined.is-filled,.material-symbols-rounded.is-filled{font-variation-settings:"FILL" 1}img{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}body{margin:0;padding:0;display:flex;display:-ms-flexbox;flex-flow:column;min-height:100dvh;box-sizing:border-box;font-family:-apple-system,BlinkMacSystemFont,Hiragino Kaku Gothic ProN,Yu Gothic,メイリオ,sans-serif;font-size:.75rem;letter-spacing:.05rem}body.is-fixed{overflow:hidden}a{text-decoration:none;display:inline-block;font-size:.875rem;color:#999}.l-header{box-sizing:border-box;width:100%;height:56px;display:flex;justify-content:space-between;align-items:center;position:fixed;top:0;left:0;z-index:10;background-color:hsla(0,0%,100%,.75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.l-main{margin:0 auto;z-index:1;flex:1 1;padding-top:56px!important;padding-bottom:21px!important}.l-main,.l-main-content{width:100%;box-sizing:border-box;display:flex;flex-direction:column}.l-main-content{flex:1 1}.l-main>div{flex-direction:column;flex:1 1}.l-footer,.l-main>div{display:flex;width:100%}.l-footer{box-sizing:border-box;z-index:10;flex-flow:column}.l-content-width{width:1025px}.l-padding{padding:21px}.header a{font-size:0}.header a.logo img{position:relative;top:-1px}.header-nav{z-index:4;box-sizing:border-box;height:56px;display:flex;justify-content:flex-end;align-items:center;position:fixed;top:0;right:0;z-index:11;padding:21px 28px;pointer-events:none}.header-nav ul{pointer-events:auto}.mob-menu{top:30px;height:20px;position:absolute;right:20px;width:30px;z-index:99}.mob-menu__line{background:#000;display:block;height:2px;position:absolute;transition:transform .3s;width:100%}.mob-menu__line--center{top:9px}.mob-menu__line--bottom{bottom:0}.mob-menu{position:fixed;z-index:9999;top:0;right:0;cursor:pointer;width:56px;height:56px}.mob-menu span{transition:all .4s;height:3px;border-radius:2px;background-color:#666;width:45%;display:inline-block;transition:all .2s;position:absolute;left:21px;height:2px;line-height:0px;margin:0;padding:0;font-size:0;background-color:#000}.mob-menu span:first-of-type{top:22px}.mob-menu span:first-of-type,.mob-menu span:nth-of-type(2){width:14px;border-top:1px solid #000;border-bottom:1px solid #000;border-radius:4px}.mob-menu span:nth-of-type(2){top:33px}.js-toggle-menu .menu-icon.is-open span:first-of-type,.mob-menu.panelactive span:first-of-type{top:22px;left:19px;transform:translateY(6px) rotate(-45deg);width:20px}.js-toggle-menu .menu-icon.is-open span:nth-of-type(2),.mob-menu.panelactive span:nth-of-type(2){top:34px;left:19px;will-change:transform;transform:translateY(-6px) rotate(45deg);width:20px}.main-content{padding-bottom:28px}.copyright{margin-top:auto}.menu-main{display:flex;margin-top:0}.menu-main li{list-style-type:none}.menu-main a:not(:first-child){margin-left:14px}.list-sns{font-size:0;display:flex;margin-bottom:4px}.sns-icon{width:28px;height:28px;display:flex;justify-content:left;align-items:center}.sns-instagram{padding:1px;line-height:21px}.sns-instagram img{width:17px;height:17px}.sns-threads{line-height:26px;padding:1px 0 0}.sns-threads img{width:24px;height:24px;margin:0;padding:0}.sns-x{padding:1px;line-height:26px}.sns-x img{width:17px;height:17px;margin:0;padding:0}.title{letter-spacing:-.01em;font-size:16px;font-weight:700;color:#666}.content{font-size:.875rem;line-height:1.92;margin-top:14px;letter-spacing:.024rem}.content p{margin-bottom:21px}.rooms-container{width:100%}.rooms-header{justify-content:start;gap:12px;margin-bottom:0}.rooms-header,.sort-toggle{display:flex;align-items:center}.sort-toggle{color:#999;text-decoration:none;transition:color .3s;margin-top:2px}.sort-toggle:hover{color:#333}.sort-toggle .material-symbols-rounded{font-size:20px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:transform .4s cubic-bezier(.4,0,.2,1);transform-origin:center center}.sort-toggle.is-desc .material-symbols-rounded{transform:rotate(180deg)}.l-list{display:grid;grid-template-columns:repeat(auto-fill,320px);justify-content:center;grid-gap:40px;gap:40px;list-style:none;padding:0;margin:42px 0}.l-list__item{margin:0;padding:0}@keyframes cardFadeIn{0%{opacity:0}to{opacity:1}}.room-card-wrapper{opacity:0;animation:cardFadeIn .8s ease forwards}.room-card{display:block;transition:opacity .3s ease}.room-card:hover{opacity:.8}.room-card__thumbnail{aspect-ratio:1/1;margin-bottom:0}.room-card__image{object-position:center}.room-card__body{padding:0}.room-card__no{font-size:14px;margin:0 0 10px;letter-spacing:.05em;color:#000}.room-card__meta{flex-direction:row;gap:0}.room-card__owner,.room-card__photographer{align-items:baseline;gap:4px}.room-card__label{font-size:10px;font-weight:400}.room-card__value{font-size:11px;color:#333}.no-data{color:#666;font-style:italic;margin-top:28px}.gallery-section{margin:40px auto;width:100%;max-width:1200px}.gallery-main{position:relative;min-height:400px;background-color:#fafafa;margin-bottom:20px}.gallery-image-container,.gallery-main{display:flex;align-items:center;justify-content:center}.gallery-image-container{width:100%}.gallery-image{max-width:100%;max-height:80vh;object-fit:contain;box-shadow:0 10px 30px rgba(0,0,0,.1)}.gallery-button{position:absolute;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.8);border:none;width:50px;height:50px;border-radius:50%;cursor:pointer;font-size:24px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:2;color:#333}.gallery-button:hover{background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.15)}.gallery-button--prev{left:20px}.gallery-button--next{right:20px}.gallery-info{text-align:center;margin-bottom:30px}.gallery-caption{font-size:14px;color:#333;margin-bottom:5px}.gallery-counter{font-size:12px;color:#999}.gallery-thumbnails{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.gallery-thumbnail-item{width:60px;height:60px;cursor:pointer;opacity:.6;transition:opacity .3s;border:2px solid transparent}.gallery-thumbnail-item.is-active,.gallery-thumbnail-item:hover{opacity:1}.gallery-thumbnail-item.is-active{border-color:#333}.gallery-thumbnail-item img{width:100%;height:100%;object-fit:cover}.room-detail-container{padding:20px}.room-detail__description{margin:20px 0;line-height:1.8;color:#444}.room-photo-page{width:100%;display:flex;flex-direction:column;flex:1 1;justify-content:center;max-width:1200px;margin:0 auto}.room-photo-page__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.room-photo-page__header .back-link{font-size:11px;color:#999;text-decoration:none;letter-spacing:.1em}.room-photo-page__header .back-link:hover{color:#333}.room-photo-page__main{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1 1;width:100%;min-height:auto}.room-photo-nav{display:none}.room-photo-page__image-container{display:flex;justify-content:center;align-items:center;min-height:512px}.room-photo-page__image-container .main-photo{width:100%;height:100%;object-fit:contain;min-height:0}.footer-title-row{display:flex;align-items:center;width:100%;position:relative;box-sizing:border-box;padding:0 21px}.footer-title-row h1.title{padding:0;line-height:1.2;margin:7px 0 13px;letter-spacing:.04rem}.footer-nav-button{color:#999;transition:all .2s ease;display:flex;align-items:center;justify-content:center;text-decoration:none;width:44px;height:44px;border-radius:50%}.footer-nav-button:hover{color:#000;background-color:rgba(0,0,0,.05)}.footer-nav-button:active{transform:scale(.9)}.footer-nav-button span{font-size:28px}.footer-nav-button:hover .material-symbols-rounded{font-variation-settings:"FILL" 1}.room-photo-page__footer{text-align:center}.room-photo-page__footer .photo-counter{font-size:14px;color:#999;margin-bottom:11px}.room-photo-page__footer{font-size:12px;color:#666}.room-photo-page__footer h1{font-size:21px}.room-info{display:flex;justify-content:center;gap:4px;font-size:12px;color:#999}.autoplay-progress-bar{width:78px;height:1px;background:#eee;margin:12px auto 6px;overflow:hidden;position:relative}.autoplay-progress-fill{position:absolute;top:0;left:0;height:100%;background:#000;width:0}.autoplay-progress-fill.is-active{animation:progressFill 3s linear forwards}@keyframes progressFill{0%{width:0}to{width:100%}}.room-photo-page__image-container .photo-caption{margin-top:20px;color:#333;font-size:15px}.room-card{display:flex;align-items:flex-end;width:320px;min-height:80px;text-decoration:none;color:inherit;background-color:#fff;box-sizing:border-box;transition:background-color .2s}.room-card__thumbnail{flex-shrink:0;width:80px;height:80px;overflow:hidden}.room-card__image{width:100%;height:100%;object-fit:cover;display:block}.room-card__body{padding:0 14px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;height:80px}.room-card__no{margin:0 0 4px;font-weight:700;font-size:.9rem;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-card__meta{margin:0;font-size:.7rem;line-height:1.2;display:flex;flex-direction:column}.room-card__owner,.room-card__photographer{display:flex;flex-direction:row;margin-bottom:2px}.room-card__label{color:#999;font-size:.65rem;margin:0}.room-card__value{margin:0;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media screen and (min-width:1025px){.mob-menu{display:none}.menu-main li:not(:first-child){margin-left:14px}}@media screen and (max-width:1024px){.l-main{padding-top:56px!important;padding-bottom:42px!important}.menu-main li:not(:first-child){margin-top:7px;margin-left:0}.menu-main a{font-size:1.2rem;color:#000;font-weight:400;line-height:2.1rem}.header-nav-main{display:none}#g-nav{position:fixed;z-index:1;opacity:0;top:0;left:0;width:100%;height:100vh;height:100dvh;background:#999;background-color:hsla(0,0%,100%,.75);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all .3s;pointer-events:none}#g-nav.is-open,#g-nav.panelactive{opacity:1;z-index:999;pointer-events:auto}#g-nav ul{display:none;position:absolute;z-index:999;padding:0;top:40%;left:50%;transform:translate(-50%,-50%)}#g-nav.is-open ul,#g-nav.panelactive ul{display:block}.entry-content img{width:100%}.room-photo-page__image-container{max-height:620px}.rooms-container{margin:21px}}.footer-title-row{justify-content:space-between}@media screen and (min-width:1025px){.l-list{gap:60px 40px}.p-about .content,.p-about .title{width:600px}.about-container{width:600px;margin:0 auto}.rooms-container{margin:21px}.blog-container,.blog-detail-container{width:600px!important;margin:0 auto}}.about-container,.home-container{margin:21px}.autoplay-controls{color:#999}.footer-nav-button--prev{margin-right:28px}.footer-nav-button--next{margin-left:28px}.home-notice{font-size:.875rem;color:#999;font-weight:400}@media screen and (max-width:721px){.l-list{justify-content:start}}.blog-container,.blog-detail-container{margin:21px}.blog-list{list-style:none;padding:0;margin:42px 0}.blog-list__item{margin-bottom:32px}.blog-card{display:block}.blog-card__date{display:block;font-size:.75rem;color:#999;margin-bottom:4px}.blog-card__title{font-size:1rem;font-weight:700;color:#666;line-height:1.5}.blog-post__header{margin-bottom:42px}.blog-post__date{display:block;font-size:.875rem;color:#999;margin-bottom:8px}.blog-post__title{font-size:1.25rem;font-weight:700;color:#666;line-height:1.4}.blog-post__content img{max-width:100%;height:auto;margin:14px 0}.blog-post__content figure{margin:21px 0}.blog-post__content figcaption{font-size:.75rem;color:#999;text-align:center;margin-top:4px}.blog-post__footer{border-top:1px solid #eee;padding-top:28px;margin-top:56px}.back-link{font-size:.75rem!important;color:#999!important}