*{margin:0;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}html{font-size:clamp(8px,.5208333333vw,10px)}body{font-family:"Noto Sans JP",sans-serif;background:linear-gradient(135deg, #1B1B1B 0%, #1a1a2e 50%, #16213e 100%);background-attachment:fixed;color:#fff;overflow-x:hidden;min-height:100vh;line-height:1.6}img{max-width:100%;height:auto;display:block}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}@-webkit-keyframes pulse{0%,100%{-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:0 0 0 0 rgba(108,99,255,.7);box-shadow:0 0 0 0 rgba(108,99,255,.7)}50%{-webkit-transform:scale(1.05);transform:scale(1.05);-webkit-box-shadow:0 0 20px 5px rgba(108,99,255,0);box-shadow:0 0 20px 5px rgba(108,99,255,0)}}@keyframes pulse{0%,100%{-webkit-transform:scale(1);transform:scale(1);-webkit-box-shadow:0 0 0 0 rgba(108,99,255,.7);box-shadow:0 0 0 0 rgba(108,99,255,.7)}50%{-webkit-transform:scale(1.05);transform:scale(1.05);-webkit-box-shadow:0 0 20px 5px rgba(108,99,255,0);box-shadow:0 0 20px 5px rgba(108,99,255,0)}}@-webkit-keyframes fadeInUp{from{opacity:0;-webkit-transform:translateY(3rem);transform:translateY(3rem)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp{from{opacity:0;-webkit-transform:translateY(3rem);transform:translateY(3rem)}to{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@-webkit-keyframes slideInRight{from{opacity:0;-webkit-transform:translateX(5rem);transform:translateX(5rem)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight{from{opacity:0;-webkit-transform:translateX(5rem);transform:translateX(5rem)}to{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@-webkit-keyframes countUp{from{opacity:0;-webkit-transform:scale(0.5);transform:scale(0.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes countUp{from{opacity:0;-webkit-transform:scale(0.5);transform:scale(0.5)}to{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spin{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.header{position:fixed;top:0;left:0;right:0;padding:1rem;z-index:100;background:rgba(10,10,15,.8);backdrop-filter:blur(1rem);border-bottom:1px solid hsla(0,0%,100%,.1)}.header-content{max-width:120rem;margin:0 auto;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:2rem}.logo{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:1.2rem;font-size:1.8rem;font-weight:700}.ai-avatar{width:4rem;height:4rem;border-radius:50%;background:linear-gradient(135deg, #6C63FF, #3ec6e0);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;font-size:2rem;-webkit-animation:pulse 2s infinite;animation:pulse 2s infinite}.estimate-display{display:-webkit-box;display:-ms-flexbox;display:flex;gap:2rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background:hsla(0,0%,100%,.1);backdrop-filter:blur(1rem);padding:1.2rem 2.4rem;border-radius:9999px;border:1px solid hsla(0,0%,100%,.2);font-weight:600;white-space:nowrap}.estimate-amount{font-size:2.4rem;background:linear-gradient(135deg, #6C63FF, #3ec6e0);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.progress-container{position:fixed;top:65px;left:0;right:0;height:1px;background:hsla(0,0%,100%,.1);z-index:99}.progress-bar{height:100%;background:-webkit-gradient(linear, left top, right top, from(#6C63FF), to(#3ec6e0));background:linear-gradient(90deg, #6C63FF, #3ec6e0);-webkit-transition:width .5s cubic-bezier(0.4, 0, 0.2, 1);transition:width .5s cubic-bezier(0.4, 0, 0.2, 1);-webkit-box-shadow:0 0 2rem rgba(108,99,255,.5);box-shadow:0 0 2rem rgba(108,99,255,.5)}.container{max-width:80rem;margin:0 auto;padding:14rem 2rem 6rem;position:relative;z-index:1}@media(max-width: 768px){.header-content,.result-actions,.navigation{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}}.welcome-screen{text-align:center;-webkit-animation:fadeInUp .8s ease-out;animation:fadeInUp .8s ease-out}.welcome-title{font-size:4.8rem;font-weight:900;margin-bottom:2rem;line-height:1.3;background:linear-gradient(135deg, #ffffff, #6C63FF, #3ec6e0);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text}.welcome-subtitle{font-size:2rem;color:hsla(0,0%,100%,.7);margin-bottom:4rem;font-weight:300}.welcome-features{display:grid;grid-template-columns:repeat(auto-fit, minmax(20rem, 1fr));gap:2rem;margin-bottom:5rem}.feature-card{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);backdrop-filter:blur(1rem);border-radius:2rem;padding:3rem 2rem;-webkit-transition:all .3s ease;transition:all .3s ease;cursor:pointer}.feature-card:hover{background:hsla(0,0%,100%,.1);border-color:rgba(108,99,255,.5);-webkit-transform:translateY(-0.5rem);transform:translateY(-0.5rem)}.feature-icon{font-size:4rem;margin-bottom:1.5rem}.feature-text{font-size:1.4rem;color:hsla(0,0%,100%,.8);font-weight:500}.question-card{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);backdrop-filter:blur(2rem);border-radius:3rem;padding:5rem;-webkit-box-shadow:0 20px 60px rgba(0,0,0,.3);box-shadow:0 20px 60px rgba(0,0,0,.3);-webkit-animation:slideInRight .5s ease-out;animation:slideInRight .5s ease-out;display:none}.question-card.active{display:block}.step-wrap{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:nowrap;flex-wrap:nowrap;gap:40px;min-height:140px}@media(max-width: 768px){.step-wrap{gap:20px}}.step-wrap-img{max-width:80px}@media(max-width: 768px){.step-wrap-img{max-width:60px}}.step-label{font-size:1.4rem;color:#3ec6e0;font-weight:600;margin-bottom:2rem;text-transform:uppercase;letter-spacing:.2rem}.question-title{font-size:3.2rem;font-weight:700;margin-bottom:1.5rem;line-height:1.4}@media(max-width: 768px){.question-title{font-style:2.6rem}}.ai-comment{color:hsla(0,0%,100%,.6);font-size:1.6rem;margin-bottom:4rem;font-weight:300;font-style:italic;padding-left:2rem;border-left:.3rem solid rgba(108,99,255,.5)}.navigation{display:-webkit-box;display:-ms-flexbox;display:flex;gap:1.5rem;margin-top:4rem}.options-grid{display:grid;gap:1.5rem;margin-bottom:3rem}.option-card{background:hsla(0,0%,100%,.03);border:.2rem solid hsla(0,0%,100%,.1);border-radius:2rem;padding:2.5rem;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:2rem;position:relative;overflow:hidden}.option-card::before{content:"";position:absolute;inset:0 auto 0 -100%;width:100%;height:100%;background:-webkit-gradient(linear, left top, right top, from(transparent), color-stop(rgba(108, 99, 255, 0.1)), to(transparent));background:linear-gradient(90deg, transparent, rgba(108, 99, 255, 0.1), transparent);-webkit-transition:left .5s ease;transition:left .5s ease}.option-card:hover{background:hsla(0,0%,100%,.08);border-color:rgba(108,99,255,.5);-webkit-transform:translateX(1rem);transform:translateX(1rem)}.option-card:hover::before{left:100%}.option-card.selected{background:rgba(108,99,255,.2);border-color:#6c63ff;-webkit-box-shadow:0 0 3rem rgba(108,99,255,.4);box-shadow:0 0 3rem rgba(108,99,255,.4)}.option-icon{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:4rem;width:4rem;padding:.4rem;background-color:#fff;border-radius:50%}.option-icon img{width:2.4rem}.option-content{-webkit-box-flex:1;-ms-flex:1;flex:1}.option-title{font-size:1.8rem;font-weight:600;margin-bottom:.5rem}.option-desc{font-size:1.3rem;color:hsla(0,0%,100%,.6)}.option-checkbox{background:hsla(0,0%,100%,.03);border:.2rem solid hsla(0,0%,100%,.1);border-radius:2rem;padding:2rem;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:1.5rem;position:relative}.option-checkbox:hover{background:hsla(0,0%,100%,.08);border-color:rgba(108,99,255,.5)}.option-checkbox.selected{background:rgba(108,99,255,.2);border-color:#6c63ff}.option-checkbox.selected .checkbox-icon{background:linear-gradient(135deg, #6C63FF, #3ec6e0);border-color:#6c63ff}.option-checkbox.selected .checkbox-icon::after{opacity:1;-webkit-transform:scale(1);transform:scale(1)}.checkbox-icon{width:2.4rem;height:2.4rem;border:.2rem solid hsla(0,0%,100%,.3);border-radius:.6rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-ms-flex-negative:0;flex-shrink:0;-webkit-transition:all .3s ease;transition:all .3s ease}.checkbox-icon::after{content:"✓";color:#fff;font-weight:700;opacity:0;-webkit-transform:scale(0);transform:scale(0);-webkit-transition:all .3s ease;transition:all .3s ease}.start-button{background:linear-gradient(135deg, #6C63FF, #3ec6e0);color:#fff;border:none;padding:2rem 6rem;font-size:2rem;font-weight:700;border-radius:9999px;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;-webkit-box-shadow:0 10px 40px rgba(108,99,255,.4);box-shadow:0 10px 40px rgba(108,99,255,.4)}.start-button:hover{-webkit-transform:translateY(-0.3rem);transform:translateY(-0.3rem);-webkit-box-shadow:0 15px 50px rgba(108,99,255,.6);box-shadow:0 15px 50px rgba(108,99,255,.6)}.btn{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:1.8rem 4rem;border:none;border-radius:9999px;font-size:1.6rem;font-weight:600;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;font-family:"Noto Sans JP",sans-serif}.btn-back{background:hsla(0,0%,100%,.1);color:#fff;border:1px solid hsla(0,0%,100%,.2)}.btn-back:hover{background:hsla(0,0%,100%,.15)}.btn-next{background:linear-gradient(135deg, #6C63FF, #3ec6e0);color:#fff;-webkit-box-shadow:0 .5rem 2rem rgba(108,99,255,.4);box-shadow:0 .5rem 2rem rgba(108,99,255,.4)}.btn-next:hover{-webkit-transform:translateY(-0.2rem);transform:translateY(-0.2rem);-webkit-box-shadow:0 .8rem 3rem rgba(108,99,255,.6);box-shadow:0 .8rem 3rem rgba(108,99,255,.6)}.btn-next:disabled{opacity:.5;cursor:not-allowed}.result-screen{display:none;-webkit-animation:fadeInUp .8s ease-out;animation:fadeInUp .8s ease-out}.result-screen.active{display:block}.result-card{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);backdrop-filter:blur(2rem);border-radius:3rem;padding:6rem;text-align:center;-webkit-box-shadow:0 20px 60px rgba(0,0,0,.3);box-shadow:0 20px 60px rgba(0,0,0,.3)}.result-title{font-size:3.2rem;font-weight:700;margin-bottom:4rem}.result-amount{font-size:7.2rem;font-weight:900;background:linear-gradient(135deg, #6C63FF, #3ec6e0);-webkit-background-clip:text;-webkit-text-fill-color:rgba(0,0,0,0);background-clip:text;margin-bottom:2rem;-webkit-animation:countUp 1s ease-out;animation:countUp 1s ease-out}.result-range{font-size:2rem;color:hsla(0,0%,100%,.6);margin-bottom:5rem}.result-breakdown{background:hsla(0,0%,100%,.03);border-radius:2rem;padding:3rem;margin-bottom:4rem;text-align:left}.breakdown-title{font-size:2rem;font-weight:600;margin-bottom:2rem;text-align:center}.breakdown-item{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;gap:2rem;padding:1.2rem 0;border-bottom:1px solid hsla(0,0%,100%,.1)}.breakdown-item:last-child{border-bottom:none}.breakdown-label{color:hsla(0,0%,100%,.7)}.breakdown-label img{position:relative;top:.4rem;display:inline-block;width:1.5rem;height:1.5rem;margin-right:.5rem}.breakdown-value{font-weight:600;color:#3ec6e0}.result-actions{display:-webkit-box;display:-ms-flexbox;display:flex;gap:1.5rem;margin-top:3rem}.btn-cta{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:2rem 4rem;border:none;border-radius:9999px;font-size:1.8rem;font-weight:700;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;font-family:"Noto Sans JP",sans-serif;background:linear-gradient(135deg, #6C63FF, #3ec6e0);color:#fff;-webkit-box-shadow:0 10px 40px rgba(108,99,255,.4);box-shadow:0 10px 40px rgba(108,99,255,.4)}.btn-cta:hover{-webkit-transform:translateY(-0.3rem);transform:translateY(-0.3rem);-webkit-box-shadow:0 15px 50px rgba(108,99,255,.6);box-shadow:0 15px 50px rgba(108,99,255,.6)}.btn-reset{-webkit-box-flex:1;-ms-flex:1;flex:1;padding:2rem 4rem;border:.2rem solid hsla(0,0%,100%,.3);border-radius:9999px;font-size:1.8rem;font-weight:600;cursor:pointer;-webkit-transition:all .3s ease;transition:all .3s ease;font-family:"Noto Sans JP",sans-serif;background:rgba(0,0,0,0);color:#fff}.btn-reset:hover{background:hsla(0,0%,100%,.1);border-color:hsla(0,0%,100%,.5)}.loading{display:inline-block;width:2rem;height:2rem;border:.3rem solid hsla(0,0%,100%,.3);border-radius:50%;border-top-color:#fff;-webkit-animation:spin 1s linear infinite;animation:spin 1s linear infinite}