*,:before,:after{box-sizing:border-box}body{margin:0;padding:0;font-family:Noto Sans JP,-apple-system,sans-serif}input,select,textarea,button{font-family:inherit}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}.estlist-table td,.estlist-table th{border-right:1px solid #e5e7eb}.estlist-table td:last-child,.estlist-table th:last-child{border-right:none}.login-input::placeholder{color:#ffffff73}.login-btn:hover:not(:disabled){background-color:#0d9488!important}.pdf-viewer{background:#525659;min-height:100vh;padding:20px 0}.pdf-toolbar{z-index:100;color:#fff;background:#323639;justify-content:center;align-items:center;gap:10px;padding:10px 20px;display:flex;position:sticky;top:0}.pdf-toolbar button{color:#fff;cursor:pointer;background:#4a4e51;border:1px solid #5a5e61;border-radius:4px;align-items:center;gap:4px;padding:6px 16px;font-size:13px;display:inline-flex}.pdf-toolbar button:hover{background:#5a5e61}.pdf-page{color:#000;box-sizing:border-box;background:#fff;flex-direction:column;width:297mm;min-height:210mm;margin:20px auto;padding:10mm 12mm;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,sans-serif;font-size:10pt;line-height:1.5;display:flex;position:relative;box-shadow:0 4px 12px #0000004d}.cover-page{--accent:#b91c1c;--ink:#0f0f0f;--ink-2:#333;--ink-3:#6b6b6b;--ink-4:#a3a3a3;--line:#e0e0dc;--line-2:#c8c8c2;--bg:#f0f0ec;color:var(--ink);letter-spacing:.02em;padding:9mm 16mm;font-family:Noto Sans CJK JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,sans-serif;font-size:9pt;line-height:1.5}.cover-page .cover-header{border-bottom:.5mm solid var(--ink);justify-content:space-between;align-items:flex-end;padding-bottom:3mm;display:flex}.cover-page .cover-header h1{letter-spacing:.4em;white-space:nowrap;margin:0;font-size:20pt;font-weight:700;line-height:1}.cover-page .meta{text-align:right;flex-direction:column;gap:1mm;display:flex}.cover-page .meta-row{justify-content:flex-end;align-items:baseline;gap:4mm;display:flex}.cover-page .meta-key{letter-spacing:.25em;color:var(--ink-4);text-align:left;width:12mm;font-family:Helvetica Neue,monospace;font-size:6.5pt}.cover-page .meta-val{letter-spacing:.05em;text-align:left;width:28mm;font-family:Helvetica Neue,monospace;font-size:9pt;font-weight:500}.cover-page .cover-top{grid-template-columns:1.5fr 1fr;gap:12mm;margin-top:5mm;display:grid}.cover-page .client{letter-spacing:.04em;border-bottom:.2mm solid var(--ink);padding:0 8mm 1mm 0;font-size:16pt;font-weight:600;display:inline-block}.cover-page .client .suffix{margin-left:1mm;font-size:11pt;font-weight:500}.cover-page .lead{color:var(--ink-3);letter-spacing:.05em;margin:1mm 0 4mm;font-size:8pt}.cover-page .amount-bar{background:var(--bg);border-left:1.5mm solid var(--accent);box-sizing:border-box;align-items:baseline;gap:6mm;width:130mm;margin-bottom:4mm;padding:3.5mm 5mm;display:flex}.cover-page .amount-label{letter-spacing:.2em;white-space:nowrap;font-size:11pt;font-weight:600}.cover-page .amount-value{letter-spacing:.02em;font-family:Helvetica Neue,Arial,sans-serif;font-size:22pt;font-weight:400;line-height:1}.cover-page .amount-value .yen{margin-left:2mm;font-size:13pt;font-weight:400}.cover-page .amount-tax{color:var(--ink-3);letter-spacing:.05em;white-space:nowrap;font-size:7.5pt}.cover-page .amount-tax .num{color:var(--ink);font-weight:600}.cover-page .info-list{grid-template-columns:26mm 1fr;width:130mm;margin:0;font-size:8.5pt;display:grid}.cover-page .info-list dt{color:var(--ink-3);letter-spacing:.2em;border-bottom:.15mm solid var(--line);align-self:center;padding:1mm 0;font-size:7pt}.cover-page .info-list dd{border-bottom:.15mm solid var(--line);color:var(--ink-2);letter-spacing:.03em;margin:0;padding:1mm 0;font-weight:500}.cover-page .cover-right{flex-direction:column;align-self:start;gap:0;display:flex}.cover-page .ideal-logo{align-self:flex-end;width:95mm;height:auto;margin-top:-25mm}.cover-page .company{grid-template-columns:18mm 1fr 14mm;align-items:center;gap:4mm;margin-top:-23mm;margin-left:8mm;display:grid}.cover-page .company-logo{width:18mm;height:auto}.cover-page .company-info{color:var(--ink-2);font-size:7.5pt;line-height:1.5}.cover-page .company-info .name{color:var(--ink);letter-spacing:.04em;margin-bottom:.5mm;font-size:10pt;font-weight:700}.cover-page .company-info .row{align-items:baseline;gap:1.5mm;display:flex}.cover-page .company-info .row .key{color:var(--ink-4);letter-spacing:.2em;font-family:Helvetica Neue,monospace;font-size:6.5pt}.cover-page .company-seal{width:15mm;height:auto}.cover-page .signoff{border:.3mm solid var(--ink);align-self:flex-end;margin-top:4mm;display:flex}.cover-page .signoff-cell{box-sizing:border-box;border-right:.3mm solid var(--ink);text-align:center;background:#fff;width:14mm;height:18mm;position:relative}.cover-page .signoff-cell:last-child{border-right:none}.cover-page .signoff-cell .label{letter-spacing:.3em;background:var(--ink);color:#fff;padding:1mm 0 .8mm;font-size:7pt;font-weight:500}.cover-page .signoff-cell .seal-img{width:9mm;height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-10%)}.cover-page .table-wrap{flex-direction:column;margin-top:2mm;display:flex}.cover-page .summary{border-collapse:collapse;border-top:.5mm solid var(--ink);width:100%;font-size:9pt}.cover-page .summary thead th{text-align:center;color:var(--ink-3);letter-spacing:.25em;border-bottom:.15mm solid var(--ink);padding:1.2mm 2mm;font-size:7.5pt;font-weight:500}.cover-page .summary tbody td{border-bottom:.1mm solid var(--line);white-space:nowrap;height:3mm;padding:.3mm 3mm}.cover-page .summary tbody tr:nth-child(odd) td{background:#fcfcfa}.cover-page .summary td.no{text-align:center;color:var(--ink-4);font-family:Helvetica Neue,monospace;font-size:8pt}.cover-page .summary td.num{text-align:right;font-variant-numeric:tabular-nums;font-family:Helvetica Neue,Arial,sans-serif;font-weight:500}.cover-page .summary td.center{text-align:center;color:var(--ink-3)}.cover-page .summary tr.total-row td{color:#fff;letter-spacing:.1em;border-bottom:none;height:6.5mm;font-size:9pt;font-weight:500;background:var(--ink)!important}.cover-page .summary tr.total-row td.num{letter-spacing:.05em;font-size:12pt;font-weight:600}.cover-page .footer{text-align:center;color:var(--ink-4);letter-spacing:.3em;margin-top:auto;padding-top:2mm;font-family:Helvetica Neue,monospace;font-size:6.5pt}.pdf-cover-top{border-bottom:3px solid #000;justify-content:space-between;align-items:flex-end;margin-bottom:4mm;padding-bottom:2mm;display:flex}.pdf-title{letter-spacing:.6em;flex:1;margin-right:8mm;font-size:26pt;font-weight:500;line-height:1.2}.pdf-meta{text-align:right;white-space:nowrap;padding-bottom:1mm;font-size:10pt;line-height:1.7}.pdf-conditions{border-collapse:collapse;border-top:1px solid #000;width:100%;margin-bottom:2mm}.pdf-conditions td{vertical-align:middle;border-bottom:1px dotted #666;padding:1.5mm 3mm;font-size:10pt}.pdf-conditions td:first-child{width:28mm;font-weight:500}.pdf-detail-table{border-collapse:collapse;border:1px solid #000;width:100%;margin-top:2mm}.pdf-detail-table th{text-align:center;letter-spacing:.3em;background:#fff;border:1px solid #000;padding:1.8mm 1mm;font-size:10pt;font-weight:500}.pdf-detail-table td{vertical-align:middle;border:1px solid #000;height:6.2mm;padding:1mm 2mm;font-size:10pt}.pdf-detail-table .col-no{text-align:center;width:10mm}.pdf-detail-table .col-item{width:82mm}.pdf-detail-table .col-spec{width:66mm}.pdf-detail-table .col-qty{text-align:center;width:14mm}.pdf-detail-table .col-unit{text-align:center;width:12mm}.pdf-detail-table .col-price{text-align:right;width:22mm}.pdf-detail-table .col-amount{text-align:right;width:26mm}.pdf-detail-table .col-note{width:40mm;font-size:9pt}.pdf-detail-table .row-total td,.pdf-detail-table .row-subtotal td{background:#fff;font-weight:500}.pdf-detail-page-header{letter-spacing:.1em;margin-bottom:2mm;font-size:10pt;font-weight:400}.pdf-section-title{letter-spacing:.05em;margin:1mm 0;font-size:10.5pt;font-weight:500}.pdf-terms-list{border:1px solid #000;margin-top:4mm;padding:3mm;list-style:none}.pdf-terms-list li{text-indent:-5mm;margin-bottom:.5mm;padding-left:5mm;font-size:9.5pt;line-height:1.7}.pdf-terms-list li:before{content:"■";color:#000;margin-right:2mm}.pdf-page-number{text-align:center;color:#000;margin-top:auto;padding-top:3mm;font-size:9pt}@media print{@page{size:A4 landscape;margin:0}body{background:#fff!important;margin:0!important;padding:0!important}.pdf-viewer{background:#fff!important;padding:0!important}.pdf-toolbar{display:none!important}.pdf-page{page-break-after:always;page-break-inside:avoid;width:297mm;height:210mm;min-height:210mm;box-shadow:none!important;margin:0!important}.pdf-page:last-child{page-break-after:auto}.sidebar,.main-header,.toolbar,nav,header{display:none!important}}
