*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,"Helvetica Neue","Noto Sans JP",Arial,sans-serif;color:#1c1916;background:#f7f6f2;line-height:1.7}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}.container{width:min(1200px,calc(100% - 80px));margin:0 auto}.section{padding:120px 0}.section-label{margin-bottom:20px;font-size:13px;font-weight:600;letter-spacing:.16em}.section-heading{margin-bottom:60px}.section-heading h2{margin-bottom:12px;font-size:clamp(32px,4vw,52px);line-height:1.2;letter-spacing:-.03em}.section-heading p:last-child{color:#666}.button{display:inline-flex;align-items:center;justify-content:center;min-width:240px;min-height:58px;padding:0 32px;border-radius:999px;background:#1c1916;color:#fff;font-size:15px;font-weight:600;transition:.3s}.button:hover{opacity:.7}.header{position:absolute;top:0;left:0;z-index:100;width:100%;color:#fff}.header__inner{position:relative;display:flex;align-items:center;justify-content:space-between;width:min(1400px,calc(100% - 80px));height:90px;margin:0 auto}.logo{font-size:28px;font-weight:600;letter-spacing:.08em}.menu-button{position:relative;display:none;width:44px;height:44px;border:0;background:transparent;cursor:pointer}.menu-button span{position:absolute;left:8px;width:28px;height:1px;background:currentColor;transition:.3s}.menu-button span:nth-child(1){top:13px}.menu-button span:nth-child(2){top:21px}.menu-button span:nth-child(3){top:29px}.nav{display:flex;align-items:center;gap:36px}.nav a{font-size:12px;letter-spacing:.08em}.hero{position:relative;height:100vh;min-height:700px;background:#221f1b}.hero__image{position:relative;width:100%;height:100%;overflow:hidden}.hero__image::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.35),transparent 45%);pointer-events:none}.hero__image>img{width:100%;height:100%;object-fit:cover;transition:opacity .4s}.hero__package{position:absolute;right:7%;bottom:10%;z-index:2;width:300px;padding:28px;background:rgba(0,0,0,.78);color:#fff}.hero__package-label{margin-bottom:8px;font-size:11px;letter-spacing:.12em}.hero__package-name{margin-bottom:16px;font-size:24px;font-weight:500;letter-spacing:.02em}.hero__price{margin-bottom:24px;font-size:24px;font-weight:500}.hero__link{display:block;padding-top:16px;border-top:1px solid rgba(255,255,255,.4);font-size:13px;letter-spacing:.08em}.hero__counter{position:absolute;left:6%;bottom:9%;z-index:2;color:#fff;font-size:13px}.hero__dots{position:absolute;left:50%;bottom:7%;z-index:2;display:flex;gap:8px;transform:translateX(-50%)}.hero__dot{width:45px;height:2px;border:0;background:rgba(255,255,255,.5);cursor:pointer}.hero__dot.is-active{background:#fff}.concept{text-align:center;background:#f7f6f2}.concept__title{margin-bottom:48px;font-size:clamp(40px,5vw,68px);line-height:1.25;letter-spacing:-.04em}.concept__text{max-width:650px;margin:0 auto 50px;font-size:16px}.concept__text p{margin-bottom:8px}.concept__strong{margin-top:20px;font-weight:700}.room-design{background:#fff}.room-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:48px 30px}.room-card{background:#f7f6f2}.room-card__image{position:relative;overflow:hidden}.room-card__image img{aspect-ratio:4/3;object-fit:cover;transition:transform .5s}.room-card:hover .room-card__image img{transform:scale(1.03)}.room-card__number{position:absolute;top:20px;left:20px;display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#1c1916;color:#fff;font-size:12px}.room-card__content{padding:28px}.room-card__category{margin-bottom:4px;font-size:11px;letter-spacing:.15em}.room-card h3{margin-bottom:16px;font-size:25px;font-weight:500}.room-card__description{max-width:500px;margin-bottom:32px;color:#555;font-size:14px}.room-card__bottom{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}.room-card__bottom span{font-size:10px;letter-spacing:.1em}.room-card__bottom strong{font-size:22px;font-weight:500}.room-card__link{display:block;padding-top:16px;border-top:1px solid #ccc;font-size:13px;font-weight:600}.features{background:#eae7df}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:60px}.feature__number{display:block;margin-bottom:20px;font-size:13px;letter-spacing:.1em}.feature h3{margin-bottom:20px;font-size:24px;font-weight:500}.feature p{color:#555;font-size:15px}.how-it-works{background:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.step{position:relative;padding-top:32px;border-top:1px solid #1c1916}.step__number{display:block;margin-bottom:32px;font-size:13px}.step h3{margin-bottom:16px;font-size:20px;font-weight:500}.step p{color:#666;font-size:14px}.your-room{background:#1c1916;color:#fff}.your-room h2{margin-bottom:24px;font-size:clamp(40px,5vw,64px);line-height:1.2}.your-room .section-heading{margin-bottom:48px}.your-room .section-heading p:last-child{max-width:600px;color:#bbb}.your-room .cfg-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:start}.your-room .cfg-group{margin-bottom:28px}.your-room .cfg-group .label{margin-bottom:16px;font-size:12px;font-weight:500;letter-spacing:.08em;color:#999}.your-room .size-row{display:flex;gap:8px;margin-bottom:8px}.your-room .size-btn{display:flex;align-items:center;justify-content:center;width:56px;height:44px;border:1px solid #555;border-radius:999px;background:transparent;color:#fff;font-size:13px;cursor:pointer;transition:.3s}.your-room .size-btn:hover{background:#fff;color:#1c1916}.your-room .size-btn.active{background:#fff;color:#1c1916;border-color:#fff}.your-room .presets{display:flex;flex-wrap:wrap;gap:8px}.your-room .preset-btn{padding:12px 22px;border:1px solid #555;border-radius:999px;background:transparent;color:#fff;font-size:13px;cursor:pointer;transition:.3s}.your-room .preset-btn:hover,.your-room .preset-btn.active{background:#fff;color:#1c1916;border-color:#fff}.your-room .opt-row{display:flex;flex-wrap:wrap;gap:8px}.your-room .opt-btn{padding:8px 16px;border:1px solid #555;border-radius:999px;background:transparent;color:#fff;font-size:12px;text-align:center;cursor:pointer;transition:.3s}.your-room .opt-btn .p{display:block;margin-top:4px;font-size:10px;color:#999}.your-room .opt-btn:hover{background:#fff;color:#1c1916}.your-room .opt-btn.active{background:#fff;color:#1c1916;border-color:#fff}.your-room .opt-btn.active .p{color:#666}.your-room .cfg-preview{padding:16px;border:1px solid #333;border-radius:4px;background:#1e1b17}.your-room .scene{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;border-radius:2px;background:#eee}.your-room .scene svg{display:block;width:100%;height:100%;animation:scene-fade-in .25s ease}@keyframes scene-fade-in{from{opacity:0}to{opacity:1}}.your-room .scene::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 68%,rgba(0,0,0,.07) 100%);pointer-events:none}.your-room .cfg-price{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:16px;border-top:1px solid #333}.your-room .cfg-price .note{font-size:12px;color:#999}.your-room .cfg-price .num{font-size:24px;font-weight:600}.your-room .save-btn{width:100%;min-height:58px;margin-top:16px;border-radius:999px;background:#fff;color:#1c1916;font-size:15px;font-weight:600;cursor:pointer;transition:.3s}.your-room .save-btn:hover{opacity:.7}.your-room .share-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:52px;margin-top:10px;border:1px solid #555;border-radius:999px;background:transparent;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:.3s}.your-room .share-btn:hover{background:#fff;color:#1c1916;border-color:#fff}.button--white{background:#fff;color:#1c1916}.cta{background:#eae7df}.cta h2{margin-bottom:32px;font-size:clamp(40px,5vw,70px);line-height:1.25;letter-spacing:-.04em}.cta p:not(.section-label){margin-bottom:40px;color:#555}.footer{padding:72px 0 30px;background:#1c1916;color:#fff}.footer__inner{display:grid;grid-template-columns:1fr 2fr;gap:60px}.footer__logo{font-size:28px;letter-spacing:.08em}.footer__nav{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.footer__nav a{font-size:12px;letter-spacing:.08em}.footer__copyright{grid-column:1/-1;padding-top:40px;border-top:1px solid #333;color:#888;font-size:11px}
@media(max-width:900px){.container{width:min(100% - 48px,700px)}.header__inner{width:calc(100% - 48px)}.nav{gap:20px}.hero__package{right:5%}.features-grid{grid-template-columns:1fr;gap:44px}.steps{grid-template-columns:repeat(2,1fr);gap:44px 25px}.your-room .cfg-grid{grid-template-columns:1fr}}
@media(max-width:600px){.container{width:calc(100% - 32px)}.section{padding:76px 0}.section-heading{margin-bottom:40px}.section-heading h2{font-size:32px}.header__inner{width:calc(100% - 32px);height:70px}.logo{font-size:22px}.menu-button{display:block}.nav{position:fixed;top:0;right:0;display:flex;flex-direction:column;align-items:flex-start;width:min(80%,320px);height:100vh;padding:112px 35px;background:#1c1916;color:#fff;transform:translateX(100%);transition:transform .4s}.nav.is-open{transform:translateX(0)}.nav a{font-size:14px}.menu-button.is-open{position:fixed;top:13px;right:16px;z-index:110}.menu-button.is-open span:nth-child(1){top:21px;transform:rotate(45deg)}.menu-button.is-open span:nth-child(2){opacity:0}.menu-button.is-open span:nth-child(3){top:21px;transform:rotate(-45deg)}.hero{height:82vh;min-height:580px}.hero__package{right:16px;bottom:70px;width:220px;padding:16px}.hero__package-label{font-size:9px}.hero__package-name{font-size:17px}.hero__price{margin-bottom:16px;font-size:19px}.hero__link{padding-top:8px;font-size:10px}.hero__counter{left:16px;bottom:25px;font-size:11px}.hero__dots{bottom:27px;gap:8px}.hero__dot{width:28px}.concept__title{margin-bottom:36px;font-size:38px}.concept__text{font-size:14px}.button{width:100%;min-height:52px;font-size:13px}.room-grid{grid-template-columns:1fr;gap:32px}.room-card__content{padding:20px}.room-card h3{font-size:22px}.room-card__description{font-size:13px}.room-card__bottom strong{font-size:19px}.features-grid{gap:40px}.feature h3{font-size:21px}.steps{grid-template-columns:1fr;gap:40px}.step{padding-top:20px}.your-room h2{font-size:40px}.your-room .cfg-grid{gap:36px}.your-room .size-btn{width:48px;height:40px;font-size:12px}.your-room .opt-btn{padding:8px 14px;font-size:11px}.your-room .preset-btn{padding:12px 18px;font-size:12px}.cta h2{font-size:38px}.footer{padding:48px 0 25px}.footer__inner{display:block}.footer__logo{margin-bottom:36px}.footer__nav{display:flex;flex-direction:column;gap:16px;margin-bottom:48px}.footer__copyright{padding-top:24px}}
