:root{--navy:#123453;--blue:#225b87;--pale:#eff5f9;--ink:#183249;--muted:#50677a;--line:#cfdae3;--green:#236249;--amber:#80521b}*{box-sizing:border-box}html{font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;color:var(--ink);background:#f5f7f9}body{margin:0;font-size:16px;line-height:1.6}a{color:var(--blue);text-underline-offset:4px}button,summary,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c77c13;outline-offset:4px}button,.button{min-height:44px;border:1px solid var(--blue);border-radius:6px;background:white;color:var(--navy);padding:10px 20px}button:hover,.button:hover{background:var(--pale)}.skip-link{position:absolute;left:10px;top:-60px;z-index:20;background:white;padding:10px}.skip-link:focus{top:8px}.site-header{background:var(--navy);color:white}.header-inner{max-width:1080px;margin:auto;padding:21px 28px;display:flex;align-items:center;justify-content:space-between}.brand{font-weight:750;line-height:1.05;font-size:26px;letter-spacing:2px;text-decoration:none;color:white}.brand span{font-size:10px;letter-spacing:2.5px}.language{color:white;font-size:14px}main{max-width:760px;margin:32px auto;padding:0 24px;min-height:45vh}h1,h2,p{margin-top:0}h1{font-size:30px;line-height:1.35;letter-spacing:.02em}h2{font-size:20px;line-height:1.4}.now-status{background:var(--navy);color:white;border-radius:10px 10px 0 0;padding:25px 30px}.now-status h1{font-size:32px;margin:6px 0}.now-status p{margin:0;font-size:14px;opacity:.9}.eyebrow{font-size:12px;letter-spacing:.08em}.direction-board{background:white;border:1px solid var(--line);border-top:0;border-radius:0 0 10px 10px;overflow:hidden}.rate-date{padding:12px 30px;background:var(--pale);font-size:14px;color:var(--muted)}.direction{padding:22px 30px}.direction h2{font-weight:500;font-size:17px;margin-bottom:6px;color:var(--muted)}.direction p{font-size:14px;margin-bottom:0}.direction.sale{border-bottom:1px solid var(--line)}.direction.buy{background:#f8fbfd}.big-rate{font-size:52px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-1px;line-height:1.35}.big-rate small{font-size:17px;font-weight:500;letter-spacing:0;margin-left:7px}.direction.compact{border-bottom:1px solid var(--line);padding:16px 30px}.direction.compact p{margin:0;font-size:15px}.direction.compact h2{margin-bottom:4px;font-size:14px}.rate-tag{display:inline-block;font-size:12px;letter-spacing:0;vertical-align:middle;color:var(--blue);border:1px solid var(--line);background:var(--pale);padding:3px 8px;margin-left:12px;border-radius:4px}.place{font-weight:650}.quiet{font-size:14px;color:var(--muted)}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.status-card{background:white;border:1px solid var(--line);border-radius:8px;padding:22px}.status-card h2{font-size:16px;font-weight:550;margin-bottom:10px}.status-card p:last-child{margin-bottom:0}.state{font-size:18px;font-weight:650;line-height:1.5}.good{color:var(--green)}.warning{color:var(--amber)}.primary-nav{max-width:760px;margin:30px auto;display:grid;grid-template-columns:1fr 1fr;padding:0 24px;gap:10px}.primary-nav a{display:block;padding:16px 18px;background:white;border:1px solid var(--line);border-radius:6px;text-decoration:none;font-size:15px}.site-footer{padding:20px 24px 105px;text-align:center;font-size:13px;color:var(--muted)}.site-footer p{margin-bottom:4px}.contact-dock{position:fixed;bottom:0;left:0;right:0;background:var(--navy);display:grid;grid-template-columns:1fr 1fr;z-index:10;padding-bottom:env(safe-area-inset-bottom)}.contact-dock a{text-align:center;text-decoration:none;color:white;padding:15px}.contact-dock a+a{border-left:1px solid #536c83}.local-label{position:fixed;right:8px;top:3px;z-index:15;font-size:9px;color:#b9ccdc}.page-heading{margin-bottom:26px}.page-heading h1{margin-bottom:12px}.page-heading p{font-size:15px;color:var(--muted);max-width:620px}.rate-table-wrap{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.rate-table{border-collapse:collapse;width:100%;font-size:15px}.rate-table th,.rate-table td{padding:16px 14px;border-bottom:1px solid var(--line)}.rate-table thead{background:var(--navy);color:white;font-size:13px}.rate-table thead th{text-align:right}.rate-table thead th:first-child{text-align:left}.rate-table tbody th{font-weight:500;text-align:left}.rate-table td{text-align:right;font-size:19px;font-variant-numeric:tabular-nums;white-space:nowrap}.rate-table tr:last-child th,.rate-table tr:last-child td{border-bottom:0}.expand-button{display:block;width:100%;margin:16px 0 24px;background:white}.related-links{display:flex;flex-direction:column;gap:12px;font-size:15px}.small-link{font-size:13px}.notice{padding:15px;border-left:3px solid var(--amber);background:#f9f2e6;color:var(--amber)}figure{margin:0 0 28px}figcaption{font-size:13px;margin-top:8px;color:var(--muted)}.location-photo,.photo-pending{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px;display:block}.photo-pending{background:#e4ebf1;display:grid;place-items:center;padding:30px;color:var(--muted);font-size:16px;text-align:center}.pack-list{background:white;border:1px solid var(--line);border-radius:8px;overflow:hidden}.pack-row{padding:18px 22px;border-bottom:1px solid var(--line)}.pack-row:last-child{border:0}summary{cursor:pointer;min-height:44px;list-style:none}summary::-webkit-details-marker{display:none}.pack-row summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.pack-row summary::after{content:'＋';font-size:20px}.pack-row[open] summary::after{content:'−'}.pack-row strong{display:block;font-weight:550}.pack-amount{font-size:13px;color:var(--muted);display:block}.pack-price{font-size:24px;font-weight:650;margin-left:auto;font-variant-numeric:tabular-nums;white-space:nowrap}.pack-row .applied-rate{font-size:14px;margin:10px 0}.pack-row ul{margin:12px 0;padding:0;list-style:none;border-top:1px solid var(--line)}.pack-row li{padding:8px 0;font-size:15px;border-bottom:1px solid #e6edf2}.pack-list+.quiet{margin-top:16px}.address{background:white;border:1px solid var(--line);border-radius:8px;padding:24px}.button{display:inline-block;text-decoration:none}.visit-list{background:white;border:1px solid var(--line);border-radius:8px;padding:0 24px}.visit-list section{padding:22px 0;border-bottom:1px solid var(--line)}.visit-list section:last-child{border:0}.visit-list h2{font-size:18px;margin-bottom:10px}.visit-list p,.visit-list a{font-size:15px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.calendar-toolbar a{padding:12px;text-decoration:none}.calendar-toolbar h2{margin:0}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.weekday{color:var(--navy);font-weight:650;text-align:center;font-size:14px;padding:10px 0}.calendar-day{min-height:76px;background:white;border:1px solid var(--line);padding:8px;display:flex;flex-direction:column;align-items:center;font-variant-numeric:tabular-nums}.calendar-day strong{font-size:11px;line-height:1.4;background:var(--navy);color:white;padding:1px 4px;border-radius:3px}.calendar-day small{font-size:11px;color:#844638}.calendar-day.closed-day{background:#f8f0ed}.calendar-day.today{outline:2px solid var(--blue);outline-offset:-2px}.calendar-day.outside{color:#8193a1;background:#f0f3f6}.hours{margin-top:25px;font-size:15px}.hours p{margin-bottom:8px}.banknote-currency,.other-banknotes{margin-bottom:12px;background:white;border:1px solid var(--line);border-radius:6px;padding:15px 20px}.banknote-currency>summary,.other-banknotes>summary{font-size:18px;font-weight:600;display:flex;align-items:center;justify-content:space-between}.banknote-currency>summary::after,.other-banknotes>summary::after{content:'＋'}.banknote-currency[open]>summary::after,.other-banknotes[open]>summary::after{content:'−'}.banknote-currency figure{margin:20px 0}.banknote-currency img{width:100%;height:auto;max-height:280px;object-fit:contain;display:block}.condition-notes{padding:24px;margin-top:28px;background:var(--pale);border:1px solid var(--line);border-radius:6px}.condition-notes p{font-size:14px;margin-bottom:0}.board-page{background:#e6edf3}.board-page main{max-width:900px;margin:30px auto;padding:0 25px}.print-board{background:white}.board-heading{background:var(--navy);color:white;padding:24px 30px;display:grid;grid-template-columns:1fr auto;column-gap:15px}.board-heading>p{font-size:13px;margin:0}.board-heading h1{grid-column:1;font-size:28px;margin:8px 0 4px}.board-date{grid-column:2;grid-row:1/4;align-self:center;text-align:right;font-size:32px;font-weight:600;line-height:1.3;white-space:nowrap}.board-date span{font-size:12px}.board-table{border-collapse:collapse;width:100%;table-layout:fixed;font-variant-numeric:tabular-nums}.board-table thead th{font-size:16px;line-height:1.35;font-weight:600;padding:15px 12px;border-bottom:2px solid var(--navy)}.board-table thead th:first-child{text-align:left;width:45%}.board-table small{font-size:11px;color:var(--muted);font-weight:400}.board-table tbody th,.board-table tbody td{padding:10px 14px;border-bottom:1px solid var(--line)}.board-table tbody th{font-weight:500;font-size:17px;text-align:left;display:flex;gap:16px;align-items:baseline}.currency-code{font-size:12px;color:var(--muted);width:32px;display:inline-block;font-weight:650}.board-table td{text-align:right;font-size:23px;font-weight:550;font-variant-numeric:tabular-nums;white-space:nowrap}.board-table .usd-row td{font-size:39px;font-weight:700;padding-top:15px;padding-bottom:20px}.board-table .usd-row th{font-size:24px;padding-top:20px;padding-bottom:20px}.board-actions{display:flex;gap:20px;align-items:center;justify-content:center;margin:22px}.board-error{margin:0;padding:15px 24px;color:var(--amber);background:#faf4e8}.board-page .local-label{color:var(--muted)}
@media(min-width:900px){.contact-dock{position:static;max-width:480px;margin:0 auto 30px;border-radius:6px}.site-footer{padding-bottom:20px}.site-header .header-inner{padding:25px 35px}.site-header .brand{font-size:28px}main{margin-top:40px}.local-label{font-size:10px}}
@media(max-width:540px){body{font-size:15px}.header-inner{padding:19px 20px}.brand{font-size:24px}main{padding:0 18px;margin:22px auto}.now-status{padding:21px 23px}.now-status h1{font-size:28px}.direction,.rate-date{padding-left:23px;padding-right:23px}.direction.compact{padding:14px 23px}.big-rate{font-size:47px}.rate-tag{font-size:11px;margin-left:9px}.status-grid{gap:10px}.status-card{padding:17px 14px}.status-card h2{font-size:14px}.state{font-size:16px}.primary-nav{padding:0 18px;gap:8px}.primary-nav a{padding:14px 12px;font-size:14px}h1{font-size:27px}.rate-table th,.rate-table td{padding:15px 10px}.rate-table tbody th{font-size:13px;max-width:135px}.rate-table td{font-size:18px}.rate-table thead th{font-size:12px}.pack-row{padding:15px}.pack-row strong{font-size:14px}.pack-price{font-size:22px}.pack-amount{font-size:12px}.calendar-day{min-height:62px;padding:6px 2px}.weekday{font-size:12px}.calendar-grid{gap:3px}.calendar-day strong{font-size:10px}.board-page main{padding:0 8px;margin:10px auto}.board-heading{padding:20px 15px;display:block}.board-heading h1{font-size:24px}.board-date{text-align:left;margin-top:10px}.board-table thead th{font-size:13px;padding:12px 6px}.board-table thead th:first-child{width:43%}.board-table tbody th{font-size:12px;gap:6px;padding:12px 7px}.board-table tbody td{font-size:18px;padding:12px 5px}.currency-code{font-size:10px;width:27px}.board-table .usd-row th{font-size:18px}.board-table .usd-row td{font-size:27px}.board-table small{font-size:9px}}
@page{size:A4 portrait;margin:11mm 12mm}
@media print{html,body{background:white!important;color:#123453!important}body{font-size:11pt}.site-header,.site-footer,.primary-nav,.contact-dock,.skip-link,.board-actions,.local-label{display:none!important}.board-page main{width:186mm;max-width:none;padding:0;margin:0;min-height:0}.print-board{width:186mm;break-inside:avoid}.board-heading{background:white!important;color:#123453!important;border-bottom:2px solid #123453;padding:0 0 5mm;display:grid;grid-template-columns:1fr auto}.board-heading h1{font-size:21pt;margin:2mm 0 1mm}.board-heading>p{font-size:9pt}.board-date{font-size:10pt;grid-row:1/4;grid-column:2;text-align:right}.board-date span{font-size:8pt}.board-table thead th{font-size:11pt;padding:3mm 2mm}.board-table thead th:first-child{width:44%}.board-table small{font-size:8pt}.board-table tbody th{font-size:11pt;gap:3mm;padding:2.4mm 2mm}.board-table tbody td{font-size:14pt;padding:2.4mm 2mm}.currency-code{font-size:8pt;width:9mm}.board-table .usd-row th{font-size:15pt;padding:4mm 2mm 5mm}.board-table .usd-row td{font-size:25pt;padding:3mm 2mm 5mm}.board-error{background:white!important;color:#123453!important;font-size:10pt;padding:2mm 0}.board-table tr{break-inside:avoid}}

.rate-table thead{background:white;color:var(--navy)}.rate-table tbody tr:nth-child(even){background:#f7fafc}.pack-row .applied-rate{display:block;line-height:1.4;font-size:12px;color:var(--muted)}.board-table .currency-code{font-size:18px;font-weight:700;width:42px}.board-table .usd-row .currency-code{font-size:26px}@media(max-width:540px){.board-table .currency-code{font-size:14px;width:32px}.board-table .usd-row .currency-code{font-size:20px}.pack-row summary{flex-wrap:wrap}.pack-price{margin-left:0}.pack-row summary>span:first-child{flex:1 1 150px}.pack-row summary::after{flex:0 0 18px}}@media print{.board-table .currency-code{font-size:12pt;width:10mm;color:#123453}.board-table .usd-row .currency-code{font-size:17pt}}

.board-table tbody th{display:table-cell;vertical-align:middle}.board-table tbody th .currency-code{margin-right:12px}.board-table td{vertical-align:middle}@media(max-width:540px){.board-table tbody th .currency-code{margin-right:4px}}@media print{.board-table tbody th,.board-table tbody td{line-height:1.3;padding:1.8mm 2mm}.board-table tbody th .currency-code{margin-right:3mm}.board-table .usd-row th,.board-table .usd-row td{padding:3mm 2mm 4mm}.board-heading{padding-bottom:4mm}}

/* Shared top USD numerals: preserve the English computed style; both locales use this class.
   Existing English responsive sizes stay 52px desktop and 47px at <=540px. */
.usd-rate-number{
 font-family:system-ui,-apple-system,"Segoe UI","Noto Sans JP",sans-serif;
 font-size:52px;font-weight:700;letter-spacing:-1px;line-height:1.35;
 font-stretch:100%;font-variant-numeric:tabular-nums;font-style:normal;
 font-kerning:auto;font-feature-settings:normal;font-variation-settings:normal;
 font-variant-ligatures:normal;font-optical-sizing:auto;
 font-synthesis:weight style small-caps;font-size-adjust:none;
 font-variant-caps:normal;font-variant-east-asian:normal;
 font-variant-position:normal;font-variant-alternates:normal;font-language-override:normal;
 text-transform:none;text-rendering:auto;text-shadow:none;transform:none;
 color:rgb(24,50,73);-webkit-text-stroke-width:0;-webkit-text-stroke-color:currentColor;
}
@media(max-width:540px){.usd-rate-number{font-size:47px}}

/* A4 board: preserve shared numeric rules. */
@media print{
 .board-heading{
  border-top:5pt solid #123453;
  border-bottom:1.5pt solid #123453;
  padding:4mm 0 3mm;
  column-gap:6mm;
 }
 .board-date{font-size:23pt;font-weight:600;line-height:1.3;white-space:nowrap}
 .board-date span{font-size:10pt;font-weight:500}
 /* Shared bilingual date hierarchy: readable English on screen and in print. */
 .board-date span[data-print-date]{font-size:0}
 .board-date span[data-print-date]::after{content:attr(data-print-date);font-size:20pt}
 .board-table thead th:not(:first-child){text-align:right;padding-right:3mm}
 .board-table tbody td{text-align:right;padding-right:3mm}
 .board-table .usd-row td{padding-right:3mm}

}

/* A-110: USD starts pale blue on both screen and A4; values/order unchanged. */
 .board-table tbody tr:nth-child(odd)>th,
 .board-table tbody tr:nth-child(odd)>td{background:#f3f7fb}
 .board-table tbody tr:nth-child(even)>th,
 .board-table tbody tr:nth-child(even)>td{background:#fff}
 .board-table tbody th,.board-table tbody td{
  -webkit-print-color-adjust:exact;
  print-color-adjust:exact;
 }
@media screen{.board-table thead th:not(:first-child){text-align:right;padding-right:14px}}

/* PC print-page preview matches the readable printed English date; mobile screen is unchanged. */
@media screen and (min-width:900px){.board-date span{font-size:27px}}

/* A127 adopted print guide, board only. */
@media print{
.pwa-print-guide{border-top:.25mm solid #aeb9c5;margin-top:.7mm;padding-top:.7mm;display:grid;grid-template-columns:minmax(0,1fr) 42mm;column-gap:7mm;break-inside:avoid;color:#26394a}
.pwa-print-guide h2{font-size:11pt;font-weight:700;line-height:1.25;margin:0 0 1mm}
.pwa-print-guide p{font-size:8.5pt;line-height:1.35;margin:0 0 1mm}
.pwa-print-guide .pwa-install{font-size:7.5pt;line-height:1.35;margin:0 0 1mm}
.pwa-print-guide .pwa-supplement{font-size:8.5pt;margin-bottom:1.3mm}
.pwa-print-guide .pwa-qr{width:38mm;height:38mm;display:block;margin:0 auto;image-rendering:pixelated}
.pwa-print-guide .pwa-qr-wrap{align-self:start;margin:0;text-align:center}
.pwa-print-guide .pwa-short-url{display:block;font-size:7pt;line-height:1.25;margin-top:.7mm;color:#26394a;white-space:nowrap}

}

@media screen{.board-page .pwa-print-guide{display:none}}
/* Actual browser print engine: fit the adopted 38mm QR on one A4 page,
   preserving every header/table/date metric and the guide font sizes. */
@media print{.board-page .pwa-print-guide{margin-top:.25mm;padding-top:.25mm}.board-page .pwa-print-guide .pwa-short-url{margin-top:.35mm}}
