@charset "UTF-8";
/* simulator.css */
.window-calculator {max-width:100%;margin:40px auto;padding:20px;background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(0,0,0,0.1);font-family:'Noto Sans JP',sans-serif;color:#333;}
.simulator-title {margin:0.5em 0 30px !important;}
.progress-bar-wrapper {position:sticky;top:0;background:#fff;z-index:10;padding:15px 0;border-bottom:2px solid #5fbcd3;margin:40px 0;}
.progress-bar {display:flex;justify-content:center;flex-wrap:wrap;gap:12px;}
.progress-bar .step {padding:10px 20px;background:#eee;border-radius:30px;font-size:14px;transition:.3s;}
.progress-bar .step.active {background:#5fbcd3;color:#fff;font-weight:700;}
.product-grid,.fukashi-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0;}
.product-btn {min-height: 120px;}
.product-btn,.fukashi-btn {display:flex;flex-direction:column;align-items:center;padding:10px;background:#fff;border:3px solid #5fbcd3;border-radius:12px;font-weight:600;transition:all .3s;cursor:pointer;}
.product-btn img,.fukashi-btn img {height:80px;margin:10px auto 5px auto;}
.product-btn span,.fukashi-btn span {font-size:14px;font-weight: 600;text-align:center;}
.product-btn.selected,.fukashi-btn.selected {border-color:#28a745;background:#f0fff4;}
.product-btn:hover,.fukashi-btn:hover {background:#e6f4ff;transform:translateY(-4px);box-shadow:0 8px 20px rgba(95,188,211,0.2);}
.product-btn:hover img,.fukashi-btn:hover img {mix-blend-mode:multiply;}
.fukashi-btn i {font-size:80px;color:#999;margin:10px auto;height:80px;display:flex;align-items:center;justify-content:center;}
.size-inputs {display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;margin:40px 0 20px 0;}
.size-inputs label {padding-right: 5px;}
.size-inputs input {width:150px;padding:15px;font-size:1.4rem;text-align:center;border:2px solid #ccc;border-radius:12px;}
.size_txt {color:#e67e22;display:block;text-align: center;margin-top:15px;font-weight:600;}
.x-mark {font-size:2.5rem;color:#999;}
.nav-buttons {display:flex;gap:15px;justify-content:center;margin-top:40px;}
.btn-back,.btn-next,.btn-add,.btn-contact{padding:14px 30px;border:none;border-radius:30px;font-weight:600;cursor:pointer;}
.btn-back {background:#999;color:#fff;}
.btn-next,.btn-add,.btn-contact {background:#5fbcd3;color:#fff;}
.btn-add {background:#28a745;font-size:1.2rem;}
.quote-list {background:#f8fbff;padding:30px;border:3px solid #5fbcd3;border-radius:16px;margin-top:60px;}
.quote-list-title {text-align:center;color:#5fbcd3;font-size:1.6rem;margin-bottom:20px;}
.quote-item {background:#fff;padding:18px;border-radius:12px;margin-bottom:15px;border:2px solid #e6f4ff;}
.quote-header {display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;color:#5fbcd3;}
.delete-btn {background:#d32f2f;color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;}
.quantity-slider {width:100%;margin-top:10px;}
.live-preview {background:#e6f4ff;padding:15px;border-radius:12px;text-align:center;font-size:1rem;margin:20px 0;border:2px dashed #5fbcd3;}
.continue-checkbox {text-align:center;margin:30px 0;font-size:1.1rem;}
.continue-checkbox input {transform:scale(1.3);margin-right:8px;}
.grand-total {text-align:center;font-weight: 600;color:#c44;margin:15px 0;}
.no-subsidy {font-size: 1.4rem !important; margin-bottom: 0 !important;}
.quote-actions {display:flex;gap:15px;justify-content:center;flex-wrap:wrap;}
.step-section {margin-bottom:50px;padding-bottom:30px;border-bottom:2px dashed #eee;}
.glass-spec {text-align:center;padding:20px;background:#e6f4ff;border-radius:12px;margin:30px 0;font-size:1.2rem;}
.glass-spec small {display: block;}
.price-detail.discount, .alert {color: #c44; font-weight: 600;}
#construction-fee-total, #actual-burden {margin: 0 auto;}
.notes {margin-top: 20px;}
.notes ul {list-style-type: none; font-size: 80%; padding: 0;}
.notes ul li {margin: 0;}
#price_detail {font-weight: 600; text-align: center; margin: 0 auto 20px auto;}
.size-w, .size-h {
    -moz-appearance: textfield; /* Firefox用 */
    width: 150px;
    padding: 10px;
    font-size: 1.2em;
    text-align: center;
}
.size-w::-webkit-inner-spin-button, 
.size-w::-webkit-outer-spin-button,
.size-h::-webkit-inner-spin-button, 
.size-h::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.size-w, .size-h {
    width: 160px;
    padding: 12px;
    font-size: 1.3em;
    text-align: center;
    border: 2px solid #ccc;
    border-radius: 8px;
}
@media (max-width:768px) {.product-grid,.fukashi-grid {grid-template-columns:repeat(2,1fr);}.size-inputs{gap: 0 10px;}.size-inputs input{width: 120px;padding: 10px; font-size: 1.2rem;}.live-preview{font-size: 1rem; letter-spacing: 1px;}#live-preview strong:last-of-type{display: block; font-size:1.2em !important;} .grand-total{font-size: 1.3rem; letter-spacing: 1px; margin-top: 10px !important;}.product-btn {min-height: 120px !important;}.fukashi-btn img{height: 80px;}.product-btn span, .fukashi-btn span {font-size: 12px;line-height: 1.5em;}.quote-item{letter-spacing: 1px;}.price-detail{padding: 0;}.quote-list{padding: 30px 20px;}.summary-table{background: none; padding: 0; letter-spacing: 1px;}.glass-spec,.summary-table, .grand-total, .summary-table > div {font-size: 1rem;}#subsidy-total span{display: block;}.grand-total{margin: 0;}.actual-burden-highlight {font-size: 1.2rem;}.summary-table br {display: block !important;}}
@media (max-width:480px) {.product-grid,.fukashi-grid {grid-template-columns:1fr 1fr !important;gap:12px;}.size-inputs input{width: auto;max-width: 100px;padding: 10px 5px;}.x-mark{font-size: 1.75rem;}.btn-add{font-size: 1rem;}.btn-back{white-space: nowrap;}.live-preview{font-size: 0.85rem; letter-spacing: 1px;}.grand-total{font-size: 1rem;}.grand-total strong{font-size: 120%;}.summary-table, .grand-total, .summary-table > div{font-size: 0.9rem !important; padding: 0;}.notes ul li{line-height: 1.4em;margin-bottom: 10px;}.notes ul li:last-child{margin: 0;}.delete-btn{height: 30px;}.quantity-control{gap: 5px;}.btn-update-qty{margin-left: 0;}.actual-burden-highlight{padding: 15px !important;}}