
:root{--ink:#253238;--muted:#737c7c;--paper:#f5f3ee;--red:#843d46;--line:#deded6;--green:#06a85b;--chat:#92a9c1}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;font-size:14px}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #2782c5;outline-offset:3px}button{color:inherit}a{color:inherit;text-decoration:none}.site-header{height:90px;display:flex;justify-content:space-between;align-items:center;max-width:1300px;margin:auto;padding:0 48px}.wordmark{font-family:Georgia,serif;font-weight:bold;font-size:27px;letter-spacing:1px}.wordmark span{display:block;font-family:Arial,sans-serif;font-size:8px;letter-spacing:2.5px;margin-top:5px;font-weight:normal}.proposal{border:1px solid #cbcfc9;border-radius:30px;padding:8px 15px;font-size:11px;color:#68716e}.workspace{max-width:1050px;margin:18px auto 25px;display:grid;grid-template-columns:1fr 415px;gap:95px;align-items:center;padding:0 24px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2.5px;color:var(--red);margin:0 0 26px}h1{font-size:42px;font-weight:500;line-height:1.6;letter-spacing:1px;margin:0 0 22px}.intro{font-size:14px;line-height:2.1;color:#697374;margin:0 0 35px}.scenes{display:grid;gap:9px}.scene{display:flex;align-items:center;text-align:left;gap:19px;background:transparent;border:1px solid transparent;border-bottom-color:#dcdfd8;border-radius:8px;padding:18px 16px;transition:background .2s,transform .2s}.scene.active{background:white;border-color:#deded6;box-shadow:0 5px 15px #26373805}.scene:hover{background:#ffffff99;transform:translateX(3px)}.scene-num{font-family:Georgia,serif;font-size:22px;color:#9b9f99}.scene.active .scene-num{color:var(--red)}.scene strong{font-size:14px;font-weight:600}.scene small{display:block;font-size:11px;color:var(--muted);margin-top:7px}.scene>span:last-child{margin-left:auto;color:#979c96}.guide{display:flex;gap:14px;margin:27px 15px;color:#737e7b;font-size:12px;line-height:1.9}.guide p{margin:0}.guide-mark{font-size:24px;color:var(--red)}.story-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;font-size:8px;letter-spacing:1.5px;color:#8a928b}.story-footer button,.site-footer button{background:none;border:0;font-size:11px;letter-spacing:0;color:#6b7670;padding:8px}.phone-area{min-width:0}.phone{width:100%;height:790px;max-height:calc(100dvh - 150px);min-height:590px;background:#fff;border:7px solid #263239;border-radius:46px;overflow:hidden;box-shadow:0 28px 65px #2a3f4120,0 5px 12px #283a3910;position:relative;display:flex;flex-direction:column}.statusbar{height:34px;min-height:34px;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 26px;font-size:11px;font-weight:700;position:relative}.island{position:absolute;width:85px;height:20px;background:#263239;border-radius:0 0 13px 13px;left:calc(50% - 42px);top:0}.demo-strip{font-size:9px;text-align:center;background:#f7f3e9;color:#8b795d;padding:7px 2px;flex-shrink:0}.screen{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.chat-header,.app-header{height:55px;min-height:55px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;background:#f8f9fa;border-bottom:1px solid #00000008}.chat-header strong{font-size:15px;margin-right:auto;margin-left:15px}.chat-header .verified{color:#27857c;font-size:12px}.icon-button{border:0;background:none;display:grid;place-items:center;padding:7px;border-radius:8px}.icon-button svg{width:20px;height:20px}.chat-body{background:var(--chat);flex:1;overflow:auto;padding:17px 14px 22px;scroll-behavior:auto}.date-label{display:table;margin:0 auto 18px;background:#667f9b60;border-radius:20px;padding:5px 13px;color:white;font-size:10px}.message{display:flex;gap:8px;align-items:flex-start}.avatar{width:30px;height:30px;background:white;border-radius:50%;display:grid;place-items:center;color:var(--red);font:700 11px Georgia;flex-shrink:0}.bubble{background:white;padding:13px 14px;border-radius:0 12px 12px 12px;font-size:12px;line-height:1.8;margin-bottom:10px}.message-content{flex:1;min-width:0;max-width:280px}.sender{font-size:10px;color:#334b64;margin-bottom:6px}.message-time{font-size:9px;color:#3d5872;display:block;text-align:right;margin:5px 2px}.message-card{background:#fff;border-radius:13px;overflow:hidden;box-shadow:0 2px 3px #334b6410}.hotel-art{height:111px;background:#e5ddd0;position:relative;overflow:hidden}.hotel-art svg{width:100%;height:100%;display:block}.card-content{padding:16px}.tiny{font-size:9px;letter-spacing:1.3px;color:#9a6a60;margin:0 0 7px}.card-content h2{font-size:16px;margin:0 0 6px;line-height:1.5}.card-content p{font-size:11px;color:#728080;line-height:1.8;margin:0 0 13px}.booking-line{font-size:12px;border-top:1px solid #eee;padding:12px 0;display:flex;justify-content:space-between}.booking-line small{font-size:10px;color:#82908c}.primary,.secondary{border:0;border-radius:7px;width:100%;padding:13px 9px;font-weight:600;font-size:12px;line-height:1.4}.primary{background:var(--green);color:white}.primary:hover{filter:brightness(.95)}.secondary{color:var(--red);background:#f4efeb;margin-top:8px}.rich-menu{display:grid;grid-template-columns:repeat(3,1fr);flex-shrink:0;background:#fff;border-top:1px solid #e5e5e5}.rich-menu button{border:0;border-right:1px solid #e8e6e0;border-bottom:1px solid #e8e6e0;background:white;padding:12px 3px 10px;display:flex;align-items:center;flex-direction:column;gap:7px;font-size:10px}.rich-menu button:hover{background:#f7f3ec}.rich-menu svg{width:23px;height:23px;stroke:var(--red)}.chat-footer{height:39px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border-top:1px solid #eee;background:#fafafa;gap:12px;font-size:11px}.chat-footer button{background:none;border:0;font-size:11px;padding:9px}.home-indicator{height:17px;min-height:17px;background:#fff;position:relative}.home-indicator:after{content:"";height:4px;width:110px;background:#28343a;position:absolute;top:6px;left:calc(50% - 55px);border-radius:9px}.phone-caption{text-align:center;font-size:10px;color:#8c938d;margin:16px 0 0}.site-footer{max-width:1204px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:0 24px 14px;font-size:8px;letter-spacing:1.8px;color:#9a9f97}.app-header{text-align:center;background:white}.app-header>div{font-size:12px;font-weight:600}.app-header small{display:block;color:#939b96;font-size:9px;font-weight:400;margin-top:4px}.app-body{background:#f7f7f3;overflow:auto;flex:1;padding:22px 20px 26px}.app-body h2{font-size:22px;margin:8px 0 10px;line-height:1.5;font-weight:600}.app-body .lead{font-size:12px;color:#78817c;line-height:1.8;margin:0 0 20px}.stepbar{display:flex;gap:5px;margin:0 0 20px}.stepbar span{height:3px;background:#e0e3db;flex:1}.stepbar span.filled{background:var(--red)}.panel{background:white;border:1px solid #e7e7df;border-radius:12px;padding:17px;margin-bottom:16px}.panel h3{font-size:13px;margin:0 0 12px}.detail{display:flex;justify-content:space-between;gap:14px;padding:10px 0;font-size:12px;border-bottom:1px solid #edf0e9;line-height:1.6}.detail:last-child{border:0}.detail>span{color:#7c847e}.detail strong{font-weight:500;text-align:right}.field{display:block;font-size:11px;font-weight:600;margin:0 0 15px}.field input,.field select{display:block;width:100%;border:1px solid #d9dfd4;background:white;border-radius:7px;padding:12px;margin-top:7px;color:var(--ink);font-size:14px}.check{display:flex;gap:9px;align-items:flex-start;font-size:11px;line-height:1.7;margin:18px 0}.check input{accent-color:var(--green);margin:3px 0 0;width:17px;height:17px;flex-shrink:0}.note{font-size:10px;line-height:1.8;color:#899086;margin:13px 0}.success-icon{width:55px;height:55px;border-radius:50%;background:#e4efe5;color:#398158;display:grid;place-items:center;font-size:28px;margin:5px auto 16px}.center{text-align:center}.qr{position:relative;width:173px;height:173px;display:block;margin:22px auto 10px;background:white;padding:8px}.qr svg{width:100%;height:100%}.qr:after{content:'SAMPLE';position:absolute;inset:63px 0 auto;background:white;border-top:2px solid #843d46;border-bottom:2px solid #843d46;color:#843d46;font-weight:bold;letter-spacing:5px;text-align:center;padding:8px;font-size:15px}.pill{display:inline-block;padding:5px 10px;background:#e6eee4;color:#4b7754;font-size:10px;border-radius:20px}.next-scene{margin-top:16px;border:1px solid #d8ddd3;width:100%;border-radius:8px;padding:12px;background:transparent;font-size:11px}.member-card{background:linear-gradient(125deg,#793744,#a36065);color:white;border-radius:13px;padding:22px;margin:18px 0;box-shadow:0 10px 20px #783b4620}.member-card .brand{font:22px Georgia;letter-spacing:1px}.member-card .member-name{font-size:15px;margin:25px 0 9px}.member-card .member-id{font:11px monospace;letter-spacing:2px;opacity:.8}.member-card .card-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:20px;font-size:9px;letter-spacing:1px}.member-card .points{font-size:29px}.member-card .points small{font-size:11px}details{background:white;border:1px solid #e5e7de;border-radius:9px;margin:10px 0;padding:0 15px}summary{padding:17px 0;font-size:12px;font-weight:600;cursor:pointer}details p{font-size:12px;line-height:1.9;color:#6f7972;margin:0 0 17px}.hotel-label{font-size:10px;color:var(--red);margin-bottom:16px}.backlink{display:block;margin:17px auto 0;background:none;border:0;font-size:11px;color:#7b847b;text-decoration:underline}.notice{padding:12px;background:#eeede4;border-radius:8px;font-size:11px;line-height:1.8;margin-bottom:16px}dialog{border:1px solid #d7dbd0;border-radius:18px;padding:32px;max-width:460px;width:calc(100% - 32px);color:var(--ink);box-shadow:0 30px 90px #0003}dialog::backdrop{background:#243c4460;backdrop-filter:blur(4px)}dialog p{font-size:12px;line-height:1.9;color:#6a756b}dialog h2{font-size:20px}.dialog-close{position:absolute;right:14px;top:12px;background:none;border:0;font-size:25px}.dialog-done{margin-top:15px}@media(min-width:800px) and (max-height:850px){.site-header{height:66px}.workspace{margin:6px auto 14px}.phone{max-height:calc(100dvh - 119px)}h1{font-size:35px}.intro{margin-bottom:20px}.scene{padding:14px}.guide{margin:17px 10px}.eyebrow{margin-bottom:18px}.phone-caption{margin-top:9px}.rich-menu button{padding:9px 2px}.hotel-art{height:90px}}
@media(max-width:799px){.site-header{height:65px;padding:0 22px}.wordmark{font-size:22px}.wordmark span{font-size:7px}.proposal{padding:6px 11px;font-size:10px}.workspace{display:flex;flex-direction:column;gap:15px;margin:5px auto 0;padding:0 16px;max-width:500px}.story{width:100%}.story>.eyebrow,.intro,.guide,.story-footer{display:none}h1{font-size:23px;line-height:1.5;margin:10px 0 18px}h1 br{display:none}.scenes{display:flex;gap:5px}.scene{flex:1;padding:11px 5px;justify-content:center;gap:4px;border:1px solid #deded6;border-radius:6px}.scene-num{font-size:12px}.scene strong{font-size:10px}.scene small,.scene>span:last-child{display:none}.scene.active{border-color:#a3656a}.phone-area{width:100%}.phone{height:720px;max-height:none;min-height:0;border-width:4px;border-radius:30px}.statusbar{height:27px;min-height:27px}.island{height:15px}.phone-caption{font-size:9px;margin:10px 0 15px}.site-footer{font-size:7px;padding:0 18px 10px}.app-body{padding:20px 18px}.message-content{max-width:none}.hotel-art{height:105px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

@media(max-width:799px){h1 br{display:block}.scene{padding:11px 4px}.scene strong{font-size:0}.scene strong:after{font-size:11px}.scene[data-scene="before"] strong:after{content:"チェックイン"}.scene[data-scene="during"] strong:after{content:"滞在中"}.scene[data-scene="after"] strong:after{content:"次回予約"}.scene-num{font-size:11px}}

.wordmark{font-family:inherit;font-size:23px;font-weight:600;letter-spacing:.5px}.wordmark span{font-family:inherit;font-size:10px;letter-spacing:1px;margin-top:7px}@media(max-width:799px){.wordmark{font-size:19px}.wordmark span{font-size:8px}}

.scene strong{font-size:14px;line-height:1.65}.scene small{line-height:1.8;margin-top:6px}.benefit{display:block;font-size:11px;line-height:1.8;color:#843d46;margin-top:5px}.scene{gap:15px;padding:17px 14px}.scene>span:nth-child(2){flex:1;min-width:0}.scene>span:last-child{flex-shrink:0}.mobile-summary{display:none}@media(max-width:799px){.scene{padding:11px 4px;gap:4px}.scene strong{font-size:0;line-height:1.3}.scene .benefit{display:none}.mobile-summary{display:block;font-size:12px;line-height:1.9;color:#65726b;background:#fff;border-radius:8px;padding:13px 15px;margin:12px 0 0}.scene>span:nth-child(2){flex:initial}}
