:root{--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}h1,h2,h3,p,dl,dd{margin:0}button{font:inherit;cursor:pointer;color:inherit}a{color:var(--accent);text-underline-offset:5px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
.price-guide{width:100%;max-width:1160px;margin:auto;padding:30px 36px 24px}.price-brand{font-size:14px;letter-spacing:.14em;color:var(--accent);margin-bottom:20px}.price-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:26px}.price-header h1{font-family:var(--serif);font-size:34px;font-weight:500;letter-spacing:.03em;line-height:1.5}.price-intro{margin-top:8px;color:var(--muted)}.tax-label{font-size:14px;white-space:nowrap;border-bottom:1px solid var(--accent);padding-bottom:4px;color:var(--accent)}
.price-lead{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.implant-main-price{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:32px 34px;background:var(--soft)}.implant-main-price h2{font-size:20px;font-weight:500;line-height:1.65}.implant-main-price p{font-size:15px;color:var(--muted);margin-top:7px}.price-value{font-family:var(--serif);font-size:56px;font-weight:500;color:var(--accent);line-height:1.2;white-space:nowrap;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.02em}.price-value small{font-size:21px;font-family:var(--sans);letter-spacing:0;margin-left:6px}.price-value em{font-size:30px;font-style:normal;margin-left:4px}.price-context{text-align:right;display:block;font-size:14px;color:var(--muted);margin-top:5px}.included{padding:22px 34px 25px}.included>p{font-size:15px;color:var(--accent);margin-bottom:12px}.included-list{display:grid;grid-template-columns:1fr 1fr;gap:20px}.included-list>div{padding-left:15px;border-left:2px solid var(--edge)}.included-list dt{font-size:17px;font-weight:500}.included-list dd{color:var(--muted);font-size:14px;margin-top:3px}
.price-section{margin-top:32px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:15px}.section-heading h2{font-size:22px;font-family:var(--serif);font-weight:500;line-height:1.6}.section-heading>p{font-size:14px;color:var(--muted)}.fee-list{border-top:1px solid var(--line)}.fee-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 22px;padding:18px 2px;border-bottom:1px solid var(--line);align-items:center}.fee-row dt{font-size:16px;line-height:1.7}.fee-row dt small{display:block;color:var(--muted);font-size:14px;margin-top:3px;line-height:1.7}.fee-row dd{font-weight:500;white-space:nowrap;font-size:19px;font-variant-numeric:tabular-nums}.fee-row dd small{font-size:14px;font-weight:400;display:block;text-align:right;color:var(--muted)}.fee-note{font-size:14px;line-height:1.9;color:var(--muted);margin-top:13px}.cost-note{border-left:3px solid var(--coral);padding:10px 17px;margin-top:22px;background:var(--tint);font-size:15px;line-height:1.9}.cost-note strong{font-weight:500}
.price-details{margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.price-details summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:66px;padding:14px 2px;cursor:pointer;list-style:none;font-size:18px}.price-details summary::-webkit-details-marker{display:none}.price-details summary:after{content:'＋';font-size:22px;color:var(--accent)}.price-details[open] summary:after{content:'−'}.details-content{padding:0 2px 22px}.guarantee-pair{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:8px;margin-bottom:14px;background:var(--surface)}.guarantee-pair>div{padding:18px 20px}.guarantee-pair>div+div{border-left:1px solid var(--line)}.guarantee-pair span{display:block;font-size:15px;color:var(--muted)}.guarantee-pair strong{font-family:var(--serif);font-size:34px;font-weight:500;color:var(--accent)}.details-content>p{font-size:15px;color:var(--muted);line-height:1.9}.payment-line{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin-top:24px;font-size:15px}.payment-line a{white-space:nowrap}.price-footer{border-top:1px solid var(--line);margin-top:26px;padding-top:16px;color:var(--muted);font-size:13px;line-height:1.8;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.jaw-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.jaw-toolbar>p{font-size:15px;color:var(--muted)}.jaw-switch{display:flex;padding:4px;gap:4px;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.jaw-switch button{border:0;border-radius:6px;background:transparent;min-height:44px;padding:8px 24px;font-size:16px;line-height:1.5}.jaw-switch button[aria-pressed=true]{background:var(--accent);color:white}.jaw-switch button small{font-size:12px;display:block;opacity:.88}
.plan-prices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.plan-price-card{padding:25px 24px;min-width:0}.plan-price-card+article{border-left:1px solid var(--line)}.plan-price-card h2{font-family:var(--serif);font-size:27px;font-weight:500;line-height:1.5}.package-name{font-size:13px;color:var(--muted);line-height:1.7;min-height:23px;margin-top:3px}.plan-scope{font-size:15px;color:var(--muted);margin:15px 0 4px;line-height:1.7;min-height:51px}.plan-scope span{display:block;color:var(--accent)}.card-price{margin:16px 0 20px;min-height:68px;display:flex;align-items:center}.plan-price-card .price-value{font-size:47px}.plan-price-card:last-child .price-value{font-size:38px}.plan-price-card .price-value small{font-size:19px;margin-left:4px}.unlisted{font-size:17px;line-height:1.6;color:var(--muted)}.price-plan-foot{border-top:1px solid var(--line);padding-top:15px;font-size:14px;line-height:1.7;color:var(--muted)}.price-plan-foot strong{display:block;font-size:16px;font-weight:500;color:var(--ink)}.plan-price-card:first-child{background:var(--tint)}.jaw-caption{font-size:14px;color:var(--muted);margin-top:13px;line-height:1.8}
.additions-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.7}.additions-table th,.additions-table td{padding:15px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.additions-table thead th{font-weight:500;background:var(--surface);color:var(--accent)}.additions-table thead th:first-child{width:20%}.additions-table td strong{font-size:18px;font-weight:500;display:block}.additions-table td small{display:block;font-size:13px;color:var(--muted)}.details-subhead{font-size:17px;font-weight:500;margin:25px 0 9px}.guarantee-note{margin-top:18px}.price-guide noscript{font-size:14px;color:var(--muted)}
@media(max-width:900px){.price-guide{padding:26px 24px 20px}.plan-price-card{padding:22px 17px}.plan-price-card h2{font-size:24px}.plan-price-card .price-value{font-size:40px}.plan-price-card:last-child .price-value{font-size:32px}.plan-price-card .price-value small{font-size:17px}.price-value{font-size:50px}.implant-main-price{padding:26px}.included{padding:20px 26px}}
@media(max-width:640px){body{font-size:16px}.price-guide{padding:22px 18px 20px}.price-brand{font-size:14px;margin-bottom:14px}.price-header{display:block;margin-bottom:22px}.price-header h1{font-size:28px}.price-intro{font-size:15px;line-height:1.8}.tax-label{display:inline-block;font-size:13px;margin-top:10px}.implant-main-price{display:block;padding:25px 22px}.implant-main-price h2{font-size:19px}.implant-main-price>div:last-child{margin-top:23px}.price-value{font-size:55px}.price-context{text-align:left}.included{padding:21px 22px}.included-list{grid-template-columns:1fr;gap:16px}.price-section{margin-top:27px}.section-heading{display:block;margin-bottom:12px}.section-heading h2{font-size:21px}.section-heading>p{margin-top:4px}.fee-row{gap:12px;padding:16px 1px;grid-template-columns:minmax(0,1fr) auto}.fee-row dt{font-size:16px}.fee-row dt small{font-size:13px}.fee-row dd{font-size:17px}.fee-row dd small{font-size:13px}.fee-note{font-size:14px}.cost-note{padding:10px 13px;font-size:14px}.price-details summary{font-size:17px;min-height:62px}.guarantee-pair>div{padding:16px 13px}.guarantee-pair span{font-size:14px}.payment-line{display:block}.payment-line a{display:inline-block;margin-top:6px}.price-footer{font-size:12px;gap:6px}.jaw-toolbar{display:block}.jaw-toolbar>p{margin-bottom:9px;font-size:14px}.jaw-switch{width:100%;display:grid;grid-template-columns:1fr 1fr}.jaw-switch button{padding:7px 10px}.plan-prices{display:block}.plan-price-card{padding:21px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center}.plan-price-card+article{border-left:0;border-top:1px solid var(--line)}.plan-price-card h2{font-size:24px}.package-name{font-size:12px;min-height:0}.plan-scope{font-size:14px;margin:9px 0 0;min-height:0}.card-price{grid-column:2;grid-row:1/3;margin:0;min-height:0}.plan-price-card .price-value{font-size:40px}.plan-price-card:last-child .price-value{font-size:30px}.plan-price-card .price-value small{font-size:16px}.price-plan-foot{grid-column:1/-1;padding-top:12px;margin-top:15px;font-size:13px}.price-plan-foot strong{display:inline;font-size:15px;margin-left:6px}.unlisted{font-size:14px;max-width:96px;text-align:right}.additions-table{font-size:14px}.additions-table th,.additions-table td{padding:12px 7px}.additions-table thead th:first-child{width:25%}.additions-table td strong{font-size:16px}.additions-table td small{font-size:12px}.additions-table thead th:nth-child(3){width:37%}.details-content{padding-bottom:17px}.details-content>p{font-size:14px}}
@media(max-width:360px){.price-guide{padding:20px 14px}.price-header h1{font-size:25px}.plan-price-card{padding:19px 14px;column-gap:8px}.plan-price-card h2{font-size:21px}.plan-price-card .price-value{font-size:35px}.plan-price-card:last-child .price-value{font-size:26px}.plan-price-card .price-value small{font-size:14px}.plan-scope{font-size:13px}.fee-row{grid-template-columns:1fr}.fee-row dd{justify-self:end}.fee-row dt small{font-size:14px}.price-value{font-size:49px}}

.loan-section{margin-top:32px}.loan-intro{font-size:15px;color:var(--muted);margin-bottom:18px}.loan-calculator{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:25px}.loan-fields{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:18px}.loan-fields label{display:block;font-size:14px;color:var(--muted)}.loan-fields .loan-plan-field{grid-column:1/-1}.loan-fields input,.loan-fields select{width:100%;min-width:0;min-height:48px;border:1px solid var(--edge);border-radius:6px;background:var(--panel);color:var(--ink);font:inherit;font-size:17px;padding:10px 12px;margin-top:7px}.loan-fields input:focus-visible,.loan-fields select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.loan-input-unit{display:block;position:relative}.loan-input-unit input{padding-right:40px}.loan-input-unit>span{position:absolute;right:14px;top:18px;pointer-events:none;font-size:16px}.loan-field-note{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.8}.loan-result{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;border-top:1px solid var(--line);padding-top:22px;margin-top:22px}.loan-monthly>p{font-size:16px}.loan-monthly>p>span{font-size:13px;color:var(--muted);display:block}.loan-monthly>div{display:flex;align-items:baseline;gap:6px;margin-top:8px;color:var(--accent);white-space:nowrap}.loan-monthly strong{font:500 46px/1.3 var(--serif);font-variant-numeric:tabular-nums}.loan-monthly .loan-approx{font-size:15px}.loan-monthly>small{font-size:13px;color:var(--muted);display:block;margin-top:7px}.loan-breakdown>div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:11px 0;border-bottom:1px solid var(--line);font-size:14px}.loan-breakdown dd{font-size:18px;white-space:nowrap;font-variant-numeric:tabular-nums}.loan-breakdown .loan-total{border-bottom:0}.loan-total dt{color:var(--accent)}.loan-total dd{font-size:21px;color:var(--accent)}.loan-error{font-size:14px;color:#815337;margin-top:16px}.loan-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:16px;font-size:14px}
@media(max-width:760px){.loan-fields{grid-template-columns:1fr 1fr;gap:13px}.loan-amount-field{grid-column:1/-1}.loan-result{grid-template-columns:1fr;gap:18px}.loan-calculator{padding:21px}.loan-monthly strong{font-size:45px}.loan-breakdown>div{font-size:15px}.loan-links{gap:10px 18px}}
@media(max-width:360px){.loan-calculator{padding:17px 14px}.loan-fields{gap:12px}.loan-fields label{font-size:13px}.loan-fields input,.loan-fields select{padding-left:9px;font-size:16px}.loan-monthly strong{font-size:42px}.loan-breakdown>div{font-size:13px;gap:8px}.loan-breakdown dd{font-size:16px}.loan-total dd{font-size:18px}}
.pricing-comparison{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.8}.pricing-comparison th,.pricing-comparison td{padding:16px 12px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle}.pricing-comparison thead th{background:var(--surface);font-family:var(--serif);font-weight:500;font-size:21px}.pricing-comparison thead>tr>td{width:20%}.pricing-comparison tbody th{text-align:left;font-weight:500;padding-left:0}.pricing-comparison small{display:block;font-size:13px;color:var(--muted);font-weight:400}.pricing-comparison b{font-family:var(--serif);font-size:24px;font-weight:500}.comparison-details{margin-top:22px}
@media(max-width:640px){.pricing-comparison{font-size:13px}.pricing-comparison th,.pricing-comparison td{padding:13px 5px}.pricing-comparison thead th{font-size:15px}.pricing-comparison thead>tr>td{width:22%}.pricing-comparison small{font-size:12px}.pricing-comparison b{font-size:21px}.pricing-comparison tbody th{font-size:12px}}
@media(max-width:360px){.pricing-comparison thead th{font-size:13px}.pricing-comparison small{font-size:11px}.pricing-comparison b{font-size:18px}}

h1,h2,h3{color:var(--heading)}.price-lead,.plan-prices,.guarantee-pair{background:var(--panel)}.loan-calculator{background:var(--surface)}

.implant-main-price h2{color:var(--accent)}

.loan-guide .loan-section{margin-top:0}
.loan-guide .jaw-caption{margin-bottom:18px}

/* Invisalign pricing shares the comparison viewer palette. */
.invisalign-pricing-page,:is(.invisalign-loan-page,.implant-loan-page){--canvas:#fff;--paper:#fff;--coral:#eb9a8a;background:#fff}
.invisalign-pricing-page .plan-price-card{background:#fff}
.invisalign-pricing-page .jaw-switch button,:is(.invisalign-loan-page,.implant-loan-page) .jaw-switch button{color:var(--accent)}
.invisalign-pricing-page .jaw-switch button[aria-pressed=true],:is(.invisalign-loan-page,.implant-loan-page) .jaw-switch button[aria-pressed=true]{background:var(--coral);color:#fff}
.invisalign-pricing-page .price-details-heading{display:flex;align-items:center;min-height:66px;margin:0;padding:14px 2px;color:var(--ink);font:400 18px/1.6 var(--sans)}
@media(max-width:640px){.invisalign-pricing-page .price-details-heading{min-height:62px;font-size:17px}}

.invisalign-pricing-page .card-price .price-tax{display:block;font:400 13px/1.6 var(--sans);color:var(--muted);margin-top:4px}

.invisalign-pricing-page .price-section + .price-details{border-top:0}

/* Keep each plan's allowance, period and additional fee together. */
.invisalign-pricing-page .addition-section{border-bottom:0}
.addition-section .details-content{padding-bottom:0}
.addition-plans{border-top:1px solid var(--line)}
.addition-plan{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}
.addition-plan h3{font:500 19px/1.6 var(--serif);color:var(--accent)}
.addition-plan dl{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.addition-plan dt{font-size:14px;color:var(--muted);margin-bottom:8px}
.addition-plan dd{line-height:1.65}
.addition-plan dd strong{font-size:18px;font-weight:500;display:block}
.addition-plan .price-tax{display:block;font-size:12px;color:var(--muted)}
.addition-condition{display:block;font-size:14px;color:var(--muted);margin-top:8px}
.addition-contract{font-size:16px}
.other-addition-fees{margin-top:28px;border-top:0}
.other-addition-fees .fee-row:first-child{border-top:0}
.other-addition-fees .fee-row dd{font-size:18px}
@media(max-width:640px){
 .addition-plan{grid-template-columns:1fr;gap:14px;padding:22px 0}
 .addition-plan h3{font-size:18px}
 .addition-plan dl{gap:20px}
 .addition-plan dd strong{font-size:17px}
 .addition-condition{font-size:13px}
 .addition-contract{font-size:16px}
 .other-addition-fees .fee-row{grid-template-columns:1fr;gap:8px;padding:20px 0}
 .other-addition-fees .fee-row dd{justify-self:end;font-size:17px}
}

:is(.invisalign-loan-page,.implant-loan-page) .loan-monthly{text-align:center}
:is(.invisalign-loan-page,.implant-loan-page) .loan-monthly>div{justify-content:center}

:is(.invisalign-loan-page,.implant-loan-page) .price-header h1{font-size:28px;line-height:1.6}
@media(max-width:640px){:is(.invisalign-loan-page,.implant-loan-page) .price-header h1{font-size:21px}}
@media(max-width:360px){:is(.invisalign-loan-page,.implant-loan-page) .price-header h1{font-size:19px}}

:is(.invisalign-loan-page,.implant-loan-page) .price-header{justify-content:center;text-align:center}

:is(.invisalign-loan-page,.implant-loan-page) .loan-fields input,:is(.invisalign-loan-page,.implant-loan-page) .loan-fields select{height:48px;min-height:48px;line-height:1.5}

/* Implant fees follow the same restrained white pricing layout. */
.implant-pricing-page{--paper:#fff;--canvas:#fff;background:#fff}
.implant-pricing-page .price-header{justify-content:center;text-align:center}
.implant-pricing-page .price-header h1{font-size:28px}
.implant-pricing-page .implant-main-price{background:#fff;padding:26px}
.implant-pricing-page .implant-main-price h2{font-size:20px}
.implant-pricing-page .price-value{font-size:44px}
.implant-pricing-page .price-value small,.implant-pricing-page .price-value em{font-size:20px}
.implant-pricing-page .price-tax{display:block;color:var(--muted);font:400 13px/1.6 var(--sans);margin-top:5px;text-align:right}
.implant-pricing-page .section-heading h2{font-size:21px}
.implant-pricing-page .fee-row dd{font-size:18px}
.implant-pricing-page .guarantee-terms{margin:0 0 14px}
@media(max-width:640px){
 .implant-pricing-page .price-header h1{font-size:24px}
 .implant-pricing-page .implant-main-price{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:22px 20px}
 .implant-pricing-page .implant-main-price>div:last-child{margin-top:0}
 .implant-pricing-page .implant-main-price h2{font-size:17px}
 .implant-pricing-page .price-value{font-size:38px}
 .implant-pricing-page .price-value small,.implant-pricing-page .price-value em{font-size:17px}
 .implant-pricing-page .section-heading h2{font-size:19px}
 .implant-pricing-page .fee-row{grid-template-columns:1fr;gap:8px}
 .implant-pricing-page .fee-row dd{justify-self:end;font-size:17px}
}

/* Pair each included treatment with a dimensional illustration. */
.implant-pricing-page .included-visuals{gap:20px}
.implant-pricing-page .included-visuals>div{display:grid;grid-template-columns:104px minmax(0,1fr);grid-template-rows:1fr 1fr;column-gap:12px;padding:8px 0;border:0;align-items:center}
.implant-pricing-page .included-illustration{grid-column:1;grid-row:1/3;display:block;width:104px;height:112px;background:var(--soft);border-radius:12px}
.implant-pricing-page .included-visuals dt{grid-column:2;align-self:end;font-size:16px;line-height:1.6}
.implant-pricing-page .included-visuals dd{grid-column:2;align-self:start;font-size:13px;line-height:1.7;margin-top:5px}
@media(max-width:800px){.implant-pricing-page .included-visuals{grid-template-columns:1fr;gap:14px}}
@media(max-width:380px){.implant-pricing-page .included-visuals>div{grid-template-columns:82px minmax(0,1fr);column-gap:10px}.implant-pricing-page .included-illustration{width:82px;height:100px}.implant-pricing-page .included-visuals dt{font-size:15px}}

.implant-price-example-note{margin:0;padding:0 26px 4px;font-size:13px;line-height:1.8;color:var(--muted)}
.implant-loan-page .loan-example-note{margin-top:8px;font-size:13px;line-height:1.8;color:var(--muted)}
@media(max-width:640px){.implant-price-example-note{padding-right:20px;padding-left:20px}}

.implant-pricing-page .implant-main-price h2 small{display:block;margin-top:3px;font:400 13px/1.6 var(--sans);color:var(--muted)}
