/* 1.1.0-based refinement. Release 1.4.0. */
:root{--navy:#103047;--deep:#0b273d;--gold:#a38a52;--gold-light:#d7c28b;--ink:#243746;--muted:#67757c;--pale:#f5f4ef;--line:#dce1de}
body{font-size:15px;letter-spacing:.025em;line-height:2;-webkit-font-smoothing:antialiased}
h1,h2,h3{letter-spacing:.025em;line-height:1.6}
h2{font-weight:500}
h3{font-weight:500}
.container{width:min(1200px,91%)}
.header-inner{min-height:84px;max-width:1450px;width:93%}
.dark-chrome .header-inner{min-height:80px}
.site-header{border-bottom-color:#e7e9e4;background:#fffffff7}
.dark-chrome .site-header{background:#0c2a40}
.brand{border-left-width:2px;padding-left:15px}
.brand>span{font-size:28px;letter-spacing:.055em;line-height:1.2}
.brand>small{font-size:9px;letter-spacing:.045em;margin-top:7px}
.main-nav{font-size:12px;font-weight:500;gap:30px}
.main-nav .nav-contact{padding:13px 23px;font-size:11px;font-weight:500;letter-spacing:.035em}
.dark-chrome .main-nav .nav-contact{background:#c7b17a;border-color:#c7b17a;color:#102b3e}
.subnav{border-top:2px solid var(--gold);box-shadow:0 10px 30px #102d4012}
.button{min-height:51px;padding:13px 25px;font-weight:500;letter-spacing:.04em;font-size:13px;gap:25px;border-radius:0}
.button:hover{transform:translateY(-3px)}
.button .icon{width:22px;height:22px;stroke-width:1.3}
.gold{background:#c9b480;border-color:#c9b480;color:#173044}
.gold:hover{background:#ddcb99;border-color:#ddcb99}
.navy{background:#12334a}
.navy:hover{background:#254c63}
.outline{border-color:#ffffff9c}
.outline:hover{background:#ffffff10}
.light{border-color:#c8cfca}
.eyebrow{font-size:11px;font-weight:500;letter-spacing:.23em}
.section{padding-block:52px}
.section-heading{margin-bottom:34px}
.section-heading h2{font-weight:500;font-size:clamp(27px,2.9vw,38px);line-height:1.5}
.section-heading:has(.eyebrow):before,.section-heading:has(.eyebrow):after{width:25%;height:1px;background:#b4a06c;opacity:.7}
.line-heading h2{font-weight:500;font-size:clamp(25px,2.6vw,34px)}
.line-heading:before,.line-heading:after{background:#c6b47d;opacity:.65}
.intro h2{font-weight:500}
.intro p{font-size:14px;line-height:2.1;color:#5c6e79}
.home-hero{height:clamp(395px,36vw,545px);min-height:0;border-bottom:2px solid #a48c58;background:#0c2a40}
.hero-media{inset:0 0 0 40%;background:#477e9b}
.hero-media>.reference-photo{position:absolute;inset:0;width:100%;height:100%}
.hero-content{width:55%;padding:35px 8.5% 35px 5.8%;background:linear-gradient(110deg,#0c2a40 74%,#0c2a40f5);clip-path:polygon(0 0,100% 0,78% 100%,0 100%);display:flex;flex-direction:column;justify-content:center}
.hero-content .eyebrow{font-size:10px;letter-spacing:.2em;color:#d2bb80;margin:0 0 19px}
.hero-content .eyebrow:after{content:"";display:inline-block;vertical-align:middle;height:1px;width:35px;background:#c2a965;margin-left:18px}
.hero-content h1{font-size:clamp(34px,4.6vw,66px);font-weight:500;letter-spacing:.03em;line-height:1.55;margin:0 0 23px;color:white}
.hero-content h1:after{display:none}
.hero-content p{font-size:14px;line-height:2.1;letter-spacing:.025em;color:#e1e8eb;margin-bottom:27px}
.hero-content .button-row{gap:12px;flex-direction:row;max-width:540px}
.hero-content .button{font-size:12px;padding:12px 18px;min-height:48px;gap:16px}
.hero-content .button .icon{width:20px;height:20px}
.news-strip{margin-block:0;min-height:78px;padding:16px 22px;background:#fafaf7;border-bottom:1px solid #e3e5de;gap:28px}
.news-strip>strong{font-size:23px;border-right-color:#c5b27c;padding-right:30px;font-weight:400;letter-spacing:.065em}
.news-strip>a:nth-child(2){font-size:12px;color:#344b59;line-height:1.8}
.news-strip>a:last-child{font-size:10px;color:#8d794b}
.bof-page-home .section{padding-block:60px}
.business-grid{gap:30px}
.business-card{border-color:#dce2df;background:#fff;box-shadow:none}
.business-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px #102d400b}
.business-card>.reference-photo{height:255px}
.business-card>div{padding:25px 27px 27px}
.business-card .number{font-size:37px;color:#a28a51;font-weight:400}
.business-card h3{font-weight:500;font-size:27px;line-height:1.5;margin-bottom:10px}
.business-card p{font-size:13px;color:#6c7a82;line-height:1.9}
.bof-page-home .business-card .text-link{top:calc(255px + 30px);right:25px;width:32px;height:32px;background:#af975f}
.bof-page-home .business-card .text-link:after{line-height:32px;font-size:20px}
.bof-page-home .business-card>div{padding-right:65px}
.bof-page-home .business-card p{font-size:12px}
.split{gap:48px}
.split h2{font-size:clamp(26px,2.7vw,36px);font-weight:500;line-height:1.65}
.split>div>p{font-size:14px;line-height:2.1;color:#5e6d76}
.bof-page-home .pale.section{padding-block:36px;background:#f4f3ed}
.bof-page-home .pale .reference-photo{height:310px}
.bof-page-home .pale h2{font-size:clamp(27px,2.9vw,38px);margin-bottom:21px}
.bof-page-home .pale p{font-size:14px;line-height:2;margin-bottom:23px}
.steps li{background:#f5f4ef;border-color:#e1e2d8}
.steps h3{font-weight:500;line-height:1.6}
.steps p{font-size:12px;line-height:1.9;color:#61717a}
.steps .icon{stroke-width:1.2;color:#aa9157}
.steps .step-no{font-weight:400;color:#aa9157}
.flow-home{gap:35px}
.flow-home li{padding:22px;gap:18px;background:#f6f5f0;border:1px solid #ebeae3}
.flow-home h3{font-size:19px;padding-left:37px;font-weight:500}
.flow-home li>.step-no{left:83px;top:17px;font-size:25px}
.flow-home li>.icon{width:43px;height:43px}
.flow-home p{font-size:12px;line-height:1.9}
.flow-home li:after{right:-24px;font-size:25px}
.contact-band{background:#0d2d43;padding-block:43px}
.contact-band h2{font-weight:500;font-size:clamp(25px,2.6vw,35px);line-height:1.7;margin-bottom:25px}
.contact-band .eyebrow{font-size:10px;color:#d3ba7a}
.contact-band .button-row{gap:16px}
.contact-band .button{min-width:285px;font-size:13px}
.site-footer{padding-top:24px;background:#fdfdfb;border-top-color:#e0e4df}
.footer-main{gap:27px}
.footer-main .brand>span{font-size:23px}
.footer-main p{font-size:11px;line-height:1.8}
.footer-main nav{font-size:11px;gap:22px}
.footer-bottom{padding:12px 0;font-size:9px;margin-top:16px;color:#8a9498}
.dark-chrome .site-footer{background:#0b293e}
.dark-chrome .footer-bottom{border-color:#8c7b4b;color:#b2c0c8}
.to-top{border-color:#b8a372;color:#9b8350;background:#fffffff5}
.approved-hero{border-bottom:1px solid #dedfd7}
.breadcrumb{font-size:10px;padding-block:15px;color:#869198}
.breadcrumb a{text-decoration:none;border-bottom:1px solid #c2cbc9}
.icon-card{padding:28px 20px;background:#fff;border-color:#baaa79;border-radius:2px}
.icon-card h3{font-size:22px;font-weight:500;line-height:1.6}
.icon-card>.icon{stroke-width:1.2;color:#a78f54}
.proposal-note{font-size:11px;color:#858d8d;line-height:1.9}
table{font-size:14px;border-color:#d8deda}
th,td{border-color:#d8deda;line-height:1.9}
th{font-weight:500;background:#f2f2ec}
.faq details{padding-block:19px;border-color:#dde1db}
.faq summary{font-size:14px;font-weight:500;line-height:1.8}
.faq details p{font-size:13px;line-height:2;color:#62717a}
.notice{font-size:13px;line-height:2;background:#f6f5ef;border-left-width:2px}
.news-tabs>*{font-size:14px;font-weight:500}
.news-row{font-size:14px;padding-block:27px;border-color:#dce1dc}
.news-row:hover{background:#f7f7f2}
.news-contact-cards h3{font-weight:500;font-size:24px}
.article{line-height:2.1}
.article>.article-title,.article>.policy-title{font-weight:500}
.article h2{font-weight:500}
.article p,.article li{font-size:14px;line-height:2.2}
.form-progress li{font-size:12px;letter-spacing:.04em;padding:12px 5px}
.type-options>label{padding:15px;font-size:13px}
.type-options>label:has(input:checked){background:#f2f1e9;border-color:#ae985c}
.form-row{padding-block:17px}
.form-row>label{font-weight:500;font-size:13px}
input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),select,textarea{border-color:#c7cfca;padding:11px 14px;font-size:14px;background:#fdfefb}
.required,.optional{font-size:9px;font-weight:400}
.conditional{background:#f4f3ee;padding:25px}
.conditional h3{font-size:21px;font-weight:500}
.consent{font-size:12px}
.related-nav a{font-size:12px;border-color:#bbaa78;padding:10px 16px}
.editorial-list h3{font-weight:500}
.bof-page-transactions #sell h2,.bof-page-transactions #buy h2{font-weight:500}
.bof-page-utilization .line-heading h2{font-weight:500}
.bof-page-utilization .icon-card h3{font-weight:500}
.bof-page-company .intro p{font-size:14px;line-height:2.1}
@media(max-width:1100px){.hero-content{width:58%;padding-right:11%;padding-left:5.5%}.hero-content h1{font-size:46px}.hero-content .button{font-size:11px;padding:11px 15px;gap:13px}.main-nav{gap:23px;font-size:11px}.brand>span{font-size:25px}.brand>small{font-size:8px}.business-card>.reference-photo{height:225px}.bof-page-home .business-card .text-link{top:255px}.flow-home li{padding:19px;gap:14px}.flow-home h3{font-size:17px;padding-left:32px}.flow-home li>.step-no{left:73px;top:14px;font-size:23px}.flow-home li>.icon{width:38px;height:38px}.flow-home p{font-size:11px}.split{gap:35px}.bof-page-home .pale .reference-photo{height:275px}}
@media(max-width:960px){.header-inner,.dark-chrome .header-inner{min-height:78px}.main-nav>a,.nav-group>a{font-size:14px}.subnav a{font-size:12px}.dark-chrome .main-nav{background:#0c2a40}.hero-content{width:70%;padding-right:17%}.hero-content h1{font-size:44px}.hero-content .button-row{flex-direction:row}.hero-content p{font-size:13px}.home-hero{height:440px}.business-card h3{font-size:25px}.flow-home{gap:23px}.flow-home li{padding:17px 14px;gap:9px}.flow-home h3{font-size:15px;padding-left:29px}.flow-home li>.step-no{left:57px;top:12px;font-size:21px}.flow-home li>.icon{width:32px!important;height:32px}.flow-home p{font-size:10px}.footer-main .brand>span{font-size:21px}.footer-main nav,.footer-main p{font-size:10px}.footer-main nav{gap:15px}.footer-main{gap:20px}.section{padding-block:45px}.bof-page-home .section{padding-block:50px}}
@media(max-width:680px){body{font-size:14px}.container{width:89%}.header-inner,.dark-chrome .header-inner{min-height:74px;width:90%}.brand>span{font-size:23px}.brand>small{font-size:8px}.brand{padding-left:11px}.home-hero{height:auto;min-height:650px;align-items:flex-end;border-bottom-width:2px}.hero-media{inset:0 0 auto;height:330px}.hero-content{width:100%;clip-path:none;padding:38px 5.5% 34px;background:linear-gradient(180deg,#0c2a40dc,#0c2a40 18%)}.hero-content .eyebrow{font-size:9px;letter-spacing:.16em;margin-bottom:18px}.hero-content .eyebrow:after{width:22px;margin-left:12px}.hero-content h1{font-size:clamp(31px,9.5vw,39px);line-height:1.6;margin:0 0 21px;letter-spacing:.015em}.hero-content p{font-size:12px;line-height:2.1;margin-bottom:24px}.hero-content .button-row{gap:10px}.hero-content .button{font-size:10px;padding:11px 9px;min-height:45px;gap:7px;flex:1;min-width:0}.hero-content .button .icon{width:18px;height:18px}.news-strip{padding:16px 15px;gap:10px;background:#fafaf7;min-height:76px}.news-strip>strong{font-size:20px;padding-right:15px}.news-strip>a:nth-child(2){font-size:10px;min-width:175px}.news-strip>a:last-child{font-size:9px}.section,.bof-page-home .section{padding-block:42px}.section-heading{margin-bottom:28px}.section-heading h2{font-size:27px}.section-heading:has(.eyebrow):before,.section-heading:has(.eyebrow):after{width:17%}.eyebrow{font-size:9px;letter-spacing:.2em}.business-grid{gap:25px}.business-card>.reference-photo{height:220px}.business-card>div{padding:22px 23px 25px}.bof-page-home .business-card>div{padding-right:60px}.business-card h3{font-size:24px}.business-card .number{font-size:32px;margin-right:15px}.business-card p,.bof-page-home .business-card p{font-size:11px;line-height:1.8}.bof-page-home .business-card .text-link{top:248px;right:21px;width:28px;height:28px}.bof-page-home .business-card .text-link:after{line-height:28px;font-size:18px}.split{gap:27px}.split h2,.bof-page-home .pale h2{font-size:28px}.split>div>p,.bof-page-home .pale p{font-size:13px;line-height:2}.bof-page-home .pale.section{padding-block:28px}.bof-page-home .pale .reference-photo{height:245px}.button{font-size:12px;padding:12px 22px;min-height:48px}.line-heading h2{font-size:24px}.steps h3{font-size:16px}.steps p{font-size:11px}.flow-home{gap:14px}.flow-home li{padding:21px;gap:18px}.flow-home li>.step-no{display:none}.flow-home li>.icon{width:42px!important;height:42px}.flow-home h3{font-size:21px;padding:0}.flow-home p{font-size:12px;line-height:1.9}.contact-band{padding-block:36px}.contact-band h2{font-size:24px;line-height:1.7;margin-bottom:24px}.contact-band .button{min-width:0;width:100%;font-size:12px}.footer-main{display:block}.footer-main .brand>span{font-size:23px}.footer-main p{font-size:11px;line-height:1.9;margin-top:20px}.footer-main nav{font-size:11px;margin-top:17px;gap:20px}.footer-bottom{font-size:8px;padding:12px 0;margin-top:18px}.breadcrumb{font-size:9px;gap:7px;padding-block:13px}.intro h2{font-size:25px}.intro p{font-size:12px;line-height:2}.icon-card{padding:27px 20px}.icon-card h3{font-size:22px}.proposal-note{font-size:10px}th,td{font-size:12px;padding:13px 12px}.faq summary{font-size:13px}.faq details p{font-size:12px}.notice{font-size:11px;padding:19px}.news-tabs>*{font-size:12px}.news-row{font-size:13px;padding-block:22px}.news-contact-cards h3{font-size:21px}.article p,.article li{font-size:13px;line-height:2.2}.article>.policy-title{font-size:26px}.form-progress li{font-size:11px;padding:10px 3px}.type-options>label{padding:13px 15px;font-size:13px}.form-row{padding-block:17px}.conditional{padding:21px}.conditional h3{font-size:21px}.related-nav a{font-size:10px;padding:9px 8px}.consent{font-size:11px}.to-top{width:33px;height:33px;right:10px;bottom:12px}}
@media(prefers-reduced-motion:reduce){.button,.business-card{transition:none}.button:hover,.business-card:hover{transform:none}}
/* Research-led corporate presentation, 1.5.0 */
.hero-content h1{font-size:clamp(34px,4.1vw,59px)}
.hero-content p{max-width:470px;font-size:12px;line-height:2.2}
.group-signature{display:flex;align-items:center;gap:30px;padding-block:20px;border-bottom:1px solid var(--line)}
.signature-label{font-size:10px;letter-spacing:.15em;color:var(--gold);border-right:1px solid #cdbd92;padding-right:28px;white-space:nowrap}
.group-signature p{margin:0;font-family:var(--serif);font-size:17px;letter-spacing:.07em}
.group-signature a{font-size:11px;margin-left:auto;white-space:nowrap}.group-signature a span{margin-left:15px;color:var(--gold)}
.research-focus{background:#0d2d43;color:#fff}.focus-heading{display:flex;justify-content:space-between;gap:55px;align-items:flex-start;margin-bottom:40px}.focus-heading h2{font-size:clamp(28px,3vw,40px);font-weight:500;margin-top:13px;line-height:1.7}.focus-heading>p{font-size:13px;line-height:2.3;margin-top:35px;max-width:430px;color:#c8d5dc}.focus-heading .eyebrow{color:#c8ad70}.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.focus-grid article{border-top:1px solid #a48b56;padding:25px 0 5px}.focus-grid article>span{font-size:10px;letter-spacing:.16em;color:#d1b77f}.focus-grid h3{font-size:23px;margin:17px 0 14px;color:white}.focus-grid p{font-size:13px;line-height:2;color:#c8d5dc;max-width:315px}.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}.scope-grid article{padding:32px;border-right:1px solid var(--line);background:#fafaf7}.scope-grid article:last-child{border:0}.scope-grid h3{font-size:23px;margin:12px 0 18px}.scope-grid p{font-size:14px;line-height:2}.scope-grid small{font-size:11px;color:var(--muted)}
.group-story{background:#f2f1eb}.group-story .focus-heading>p{color:#596c76}.group-story .focus-heading .eyebrow{color:#9a8048}.group-parent{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:35px;background:white;border-left:3px solid #ac9459}.group-parent h3{font-size:25px;margin:10px 0}.group-parent p{font-size:12px;color:#6b777c;margin:0}.group-parent a{font-size:12px;white-space:nowrap;border-bottom:1px solid #ad965f;padding-bottom:5px}.group-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding-top:18px}.group-fields span{text-align:center;background:#e9e7de;padding:17px 10px;font-size:12px;letter-spacing:.04em}.group-fields .selected{background:#17394d;color:white;border-bottom:3px solid #b19a63}.group-note{font-size:10px;color:#788184;line-height:2;margin-top:16px}.office-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.office-grid article{padding:30px;border:1px solid var(--line);border-top:2px solid #ab935a}.office-kind{font-size:10px;letter-spacing:.15em;color:#9c8450}.office-grid h3{font-size:27px;margin:15px 0 20px}.office-grid p{font-size:12px;line-height:2.1;min-height:77px}.office-grid a{font-family:Georgia,serif;font-size:23px;letter-spacing:.025em}.office-grid small{display:block;margin-top:18px;font-size:10px;color:#6c787c;line-height:1.9}.office-grid .parent-office{background:#f6f5f0;border-top-color:#19394c}.group-story{scroll-margin-top:100px}
@media(max-width:960px){.hero-content h1{font-size:40px}.group-signature{gap:18px}.group-signature p{font-size:14px}.focus-heading{gap:25px}.scope-grid article,.office-grid article{padding:23px}.office-grid p{min-height:90px}.group-parent h3{font-size:22px}}
@media(max-width:680px){.hero-content h1{font-size:clamp(29px,8.4vw,36px)}.hero-content p{font-size:11px}.group-signature{flex-wrap:wrap;gap:8px 14px;padding-block:18px}.signature-label{border:0;padding:0;font-size:9px;width:100%}.group-signature p{font-size:13px}.group-signature a{font-size:9px}.group-signature a span{margin-left:5px}.focus-heading{display:block;margin-bottom:25px}.focus-heading h2{font-size:27px}.focus-heading>p{font-size:12px;margin-top:23px}.focus-grid,.scope-grid,.office-grid{grid-template-columns:1fr;gap:18px}.focus-grid article{padding-top:20px}.focus-grid h3{font-size:23px;margin:10px 0}.focus-grid p{font-size:12px;max-width:none}.scope-grid{gap:0}.scope-grid article{padding:25px;border-right:0;border-bottom:1px solid var(--line)}.scope-grid h3{font-size:23px;margin-bottom:12px}.scope-grid p{font-size:13px}.group-parent{display:block;padding:24px}.group-parent h3{font-size:21px;line-height:1.8}.group-parent a{display:inline-block;margin-top:20px}.group-fields{grid-template-columns:1fr 1fr;gap:8px}.group-fields span{font-size:11px;padding:13px 6px}.group-note{font-size:10px}.office-grid article{padding:25px}.office-grid h3{margin-bottom:15px;font-size:25px}.office-grid p{min-height:0}.office-grid a{font-size:22px}.office-grid small{margin-top:15px}}
/* Unified navy navigation, live text banners and complete footer, 1.6.0 */
.site-header,.dark-chrome .site-header{background:#0d2d43;color:#fff;border-bottom:1px solid #ffffff16;backdrop-filter:none}
.site-header .brand,.site-footer .brand{color:white}.header-inner,.dark-chrome .header-inner{min-height:92px;width:94%;max-width:1720px;gap:30px}
.brand>.brand-jp{font-family:var(--serif);font-size:clamp(16px,1.4vw,24px);letter-spacing:.025em;line-height:1.6;white-space:nowrap}.brand .company-prefix{font-size:.65em;margin-right:5px}.brand>.brand-en{font-family:Georgia,serif;font-size:11px;letter-spacing:.19em;margin-top:5px;color:#d4c393}
.main-nav{gap:26px}.main-nav .nav-contact,.dark-chrome .main-nav .nav-contact,.bof-page-finance .main-nav .nav-contact,.bof-page-realestate .main-nav .nav-contact{background:#c7b17a;color:#112e42;border:1px solid #c7b17a;padding:13px 20px;font-size:11px}.main-nav a[aria-current=page]{border-bottom-color:#c7b17a}.nav-group{display:flex;align-items:center;gap:6px;position:relative}.submenu-toggle{color:#d0bd8e;border:0;background:none;cursor:pointer;font-size:19px;padding:10px 2px}.subnav,.dark-chrome .subnav{background:#14374f;color:white;min-width:225px;padding:10px 22px;top:100%;border-top:2px solid #c7b17a;z-index:35}.nav-group:has(.submenu-toggle[aria-expanded=true]) .subnav{display:block}.subnav a{font-size:12px}.menu-toggle>span:not(.sr-only){background:#fff}
.editable-hero{height:clamp(255px,23vw,390px);position:relative;aspect-ratio:auto;background:#102e43;overflow:hidden;display:flex;align-items:center}.banner-photo{position:absolute;inset:0}.banner-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%}.editable-hero:after{content:"";display:block;position:absolute;inset:0;background:linear-gradient(90deg,#09273eeb 0%,#0c2e47bc 30%,#0c2e4722 70%,transparent);z-index:0}.editable-hero .banner-copy{position:relative;z-index:1;display:block;height:auto;padding:0;border-left:2px solid #c7b17a;padding-left:25px}.banner-copy .eyebrow{color:#d6bf82;font-size:12px;letter-spacing:.2em;margin:0 0 14px}.banner-copy h1,.banner-copy .banner-title{font-family:var(--serif);font-weight:500;color:#fff;font-size:clamp(30px,3.1vw,48px);line-height:1.6;margin:0;text-shadow:0 2px 18px #0c263430;letter-spacing:.05em}
.site-footer,.dark-chrome .site-footer{background:#0c293e;color:#d1dce3;padding:58px 0 0;border-top:1px solid #b69b5b}.footer-directory{display:grid;grid-template-columns:1.55fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:38px}.footer-identity .brand>.brand-jp{font-size:17px;white-space:normal}.footer-identity .brand>.brand-en{font-size:10px}.footer-identity p{font-size:11px;line-height:2;margin:20px 0 8px;color:#b4c3cd}.footer-identity .footer-tagline{font-size:12px;color:#e5eaf0;margin:22px 0}.footer-phone{font-family:Georgia,serif;font-size:21px;letter-spacing:.06em;color:#e8edf0}.footer-column h2{font-family:var(--serif);font-size:16px;color:#d1bb86;margin:0 0 22px;font-weight:500}.footer-column a{display:block;font-size:11px;line-height:1.8;margin-bottom:14px;color:#d2dee5}.footer-column a:hover{color:#e4ca86}.footer-column .footer-child{font-size:10px;color:#b4c3cd;padding-left:12px;border-left:1px solid #547080}.footer-consult a{border-bottom:1px solid #ffffff24;padding-bottom:12px;display:flex;justify-content:space-between;gap:10px}.footer-consult a span{color:#cdb77e}.footer-bottom,.dark-chrome .footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #ffffff27;padding:20px 0;margin-top:0;color:#93a9b7;font-size:9px}.to-top{background:#c7b17a;color:#102d43;border:1px solid #c7b17a;width:48px;height:48px;box-shadow:0 3px 13px #0b273326}.to-top:hover{background:#dfcb97;color:#102d43}
@media(max-width:1150px){.main-nav{gap:15px}.header-inner,.dark-chrome .header-inner{gap:20px}.brand>.brand-jp{font-size:17px}.main-nav .nav-contact{padding:12px;font-size:10px}.footer-directory{gap:25px;grid-template-columns:1.3fr 1fr 1fr}.footer-consult{grid-column:2/4;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.footer-consult h2{grid-column:1/-1}}
@media(max-width:960px){.header-inner,.dark-chrome .header-inner{min-height:82px}.main-nav,.dark-chrome .main-nav{background:#0d2d43;color:#fff}.main-nav .nav-group{display:grid;grid-template-columns:1fr 44px;gap:0;width:100%}.main-nav .subnav{display:none;grid-column:1/-1;position:static;min-width:0;width:auto;border-top:1px solid #ffffff25;background:#14374f;padding:5px 20px}.nav-group:hover .subnav,.nav-group:focus-within .subnav{display:none}.nav-group:has(.submenu-toggle[aria-expanded=true]) .subnav{display:block}.main-nav>a{width:100%}.main-nav .nav-contact{width:auto}.submenu-toggle{height:44px;font-size:23px;border:1px solid #ffffff25}.brand>.brand-jp{font-size:20px}}
@media(max-width:680px){.header-inner,.dark-chrome .header-inner{min-height:78px;width:92%;gap:10px}.brand{padding-left:10px}.brand>.brand-jp{font-size:clamp(13px,4.1vw,17px);letter-spacing:0}.brand .company-prefix{display:block;font-size:9px;line-height:1.2}.brand>.brand-en{font-size:8px;letter-spacing:.13em;margin-top:4px}.menu-toggle{flex-shrink:0}.editable-hero{height:235px;min-height:0}.banner-photo img{object-position:62% center}.editable-hero:after{background:linear-gradient(90deg,#0a273eeb,#0a273e70 75%,#0a273e30)}.editable-hero .banner-copy{padding-left:17px;width:88%;margin:auto}.banner-copy .eyebrow{font-size:9px;margin-bottom:12px;letter-spacing:.13em}.banner-copy h1,.banner-copy .banner-title{font-size:clamp(23px,6.8vw,30px);letter-spacing:0;line-height:1.65}.site-footer,.dark-chrome .site-footer{padding-top:38px}.footer-directory{grid-template-columns:1fr 1fr;gap:32px 20px;padding-bottom:28px}.footer-identity{grid-column:1/-1}.footer-identity .brand>.brand-jp{font-size:18px}.footer-identity .brand .company-prefix{display:inline;font-size:11px}.footer-identity .brand>.brand-en{font-size:10px}.footer-identity .footer-tagline{font-size:12px;margin:18px 0}.footer-identity p{font-size:11px;margin-top:12px}.footer-column h2{font-size:16px;margin-bottom:18px}.footer-column a{font-size:11px;margin-bottom:13px}.footer-column .footer-child{font-size:10px}.footer-consult{grid-column:1/-1;gap:0 18px}.footer-bottom,.dark-chrome .footer-bottom{display:block;font-size:8px;padding:16px 0 22px}.footer-bottom small{display:block;line-height:1.9}.to-top{width:43px;height:43px;right:12px;bottom:14px}}
/* Selected combination: A navigation + B page-top, 1.7.0 */
.submenu-toggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:40px;padding:0;border:0;background:transparent;color:#fff;flex-shrink:0;cursor:pointer}
.menu-chevron{width:13px;height:9px;display:block;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;transition:transform .22s ease,color .22s ease}
.submenu-toggle[aria-expanded=true] .menu-chevron{transform:rotate(180deg)}
.submenu-toggle:hover,.submenu-toggle:focus-visible{color:#d8c28e}
.submenu-toggle:focus-visible,.to-top:focus-visible{outline:2px solid #e2cd96;outline-offset:5px}
.subnav,.dark-chrome .subnav{background:#0f3045;border:1px solid #ffffff14;border-top:0;box-shadow:0 12px 24px #061c2921;padding:5px 24px;width:230px;min-width:230px}
.subnav a{padding:20px 0;margin:0;border:0;font-size:13px;letter-spacing:.05em;transition:color .2s ease}
.subnav a+a{border-top:1px solid #c7b17a66}.subnav a:hover,.subnav a[aria-current=page]{color:#e4cc93;background:transparent}
.to-top{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:#c7b17a;border:0;color:#103047;box-shadow:0 3px 14px #09273d12;right:24px;bottom:24px;transition:background .2s ease,transform .2s ease}
.top-arrow{display:block;width:21px;height:29px;stroke:currentColor;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round}
.to-top:hover{background:#d7c28b;transform:translateY(-3px)}
@media(max-width:960px){.main-nav .submenu-toggle{width:44px;height:44px;border:0;background:transparent}.menu-chevron{width:15px;height:10px}.main-nav .subnav{background:#0f3045;border:0;padding:0 20px;margin:0;width:auto;min-width:0}.main-nav .subnav a{padding:17px 0;font-size:12px}.main-nav .subnav a+a{border-top:1px solid #c7b17a55}}
@media(max-width:680px){.to-top{width:50px;height:50px;right:15px;bottom:18px}.top-arrow{width:19px;height:26px}}
@media(prefers-reduced-motion:reduce){.menu-chevron,.to-top,.subnav a{transition:none}.to-top:hover{transform:none}}
/* Privacy reference layout + full mobile pass, 1.8.0 */
.bof-page-privacy .editable-hero{height:clamp(195px,18vw,285px)}
.bof-page-privacy .editable-hero:after{background:linear-gradient(90deg,#f2f5f7f7 0%,#eef3f5e0 38%,#edf2f340 75%,transparent)}
.bof-page-privacy .banner-copy .eyebrow{font-family:Georgia,serif;font-size:clamp(26px,3.5vw,46px);letter-spacing:.055em;color:#0d2d43;margin-bottom:0}
.bof-page-privacy .banner-copy h1{font-size:clamp(18px,1.9vw,25px);color:#0d2d43;letter-spacing:.08em;text-shadow:none}
.bof-page-privacy .article{padding-top:35px}.bof-page-privacy .article>.notice{background:#f1ecdc;color:#806b36;text-align:center;border:0;padding:13px 20px;margin-bottom:35px}
.bof-page-privacy .policy-title{font-size:clamp(28px,3.2vw,40px);margin:0 0 22px;font-weight:500}.bof-page-privacy .policy-title:after{content:"";display:block;width:60px;height:2px;background:#c7b17a;margin-top:16px}
.bof-page-privacy .policy-lead{margin-bottom:24px}.bof-page-privacy .article section{padding:22px 0;border-bottom:1px solid #b8a26a}.bof-page-privacy .article section h2{margin:0 0 4px;font-size:27px;font-weight:500}.bof-page-privacy .article section p{margin-block:0}.bof-page-privacy .article .number{font-family:Georgia,serif;color:#b39a5d;border-right:1px solid #b39a5d;min-width:69px;display:inline-block}.bof-page-privacy .article>.button{display:flex;max-width:450px;margin:26px auto 30px}.bof-page-privacy .policy-date{border-top:1px solid #b8a26a;padding-top:18px;text-align:right;font-size:12px;margin-top:25px}.bof-page-privacy .policy-date strong{font-weight:500}.policy-custom .wp-block-heading{margin-top:30px}
@media(max-width:960px){.main-nav{overscroll-behavior:contain;max-height:calc(100dvh - 100px)}.admin-bar .main-nav{max-height:calc(100dvh - 130px)}}
@media(max-width:680px){
html{scroll-padding-top:88px}body{font-size:14px;line-height:1.95;letter-spacing:.015em}*,*:before,*:after{box-sizing:border-box}
main .container{width:calc(100% - 40px)}.header-inner{width:calc(100% - 30px)}
main h1,main h2,main h3{text-wrap:pretty;word-break:normal;overflow-wrap:break-word;letter-spacing:.025em}
.section,.bof-page-home .section{padding-block:36px}.section-heading{margin-bottom:24px}.section-heading h2,.split h2,.bof-page-home .pale h2{font-size:26px;line-height:1.65}.line-heading h2{font-size:23px;line-height:1.65}.line-heading{gap:12px}.line-heading:before,.line-heading:after{min-width:12px}
.breadcrumb{flex-wrap:wrap;row-gap:4px;font-size:10px;line-height:1.9;padding-block:12px}
.editable-hero{height:220px}.banner-copy h1,.banner-copy .banner-title{font-size:27px;line-height:1.65}.banner-copy .eyebrow{font-size:9px;line-height:1.7;overflow-wrap:anywhere}.editable-hero .banner-copy{width:calc(100% - 40px);padding-left:16px}
.home-hero{min-height:645px}.hero-content h1{font-size:clamp(28px,8.4vw,35px);line-height:1.6}.hero-content{padding-inline:20px}.hero-content p{font-size:12px;line-height:1.95}.hero-content .button{font-size:11px;line-height:1.6;min-height:48px;padding:10px}.hero-content .button-row{width:100%;max-width:none}
.news-strip{margin-inline:auto;width:calc(100% - 40px);padding:15px 10px;gap:10px}.news-strip>a:nth-child(2){min-width:0;flex:1;font-size:11px}.news-strip>a:last-child{margin:0 0 0 auto;font-size:10px}.news-strip>strong{font-size:18px;padding-right:10px}
.group-signature{width:calc(100% - 40px)}.group-signature p{font-size:12px}.group-signature a{font-size:10px}.business-card h3{font-size:23px}.business-card p,.bof-page-home .business-card p{font-size:12px;line-height:1.95}.business-card>div{padding:22px 20px}.business-card>.reference-photo{height:200px}.bof-page-home .business-card .text-link{top:227px}.business-card .number{font-size:29px;margin-right:12px}.split>div>p,.intro p,.bof-page-company .intro p{font-size:13px;line-height:2}.intro h2{font-size:25px;line-height:1.7}.intro p br,.policy-lead br{display:none}
.anchor-nav{gap:12px;flex-wrap:nowrap}.anchor-nav a{width:50%;font-size:12px;min-width:0}.icon-card h3{font-size:21px}.icon-card p{font-size:12px}.three-grid{gap:16px}.steps h3{font-size:16px;line-height:1.6}.steps p{font-size:12px;line-height:1.85}.flow-home h3{font-size:20px}.flow-home p{font-size:12px}
.table-wrap{width:100%;overflow:auto;overscroll-behavior-x:contain}table{width:100%;table-layout:fixed}th,td{font-size:12px;padding:12px 10px;line-height:1.85;overflow-wrap:anywhere}th{width:34%}
.news-row{grid-template-columns:auto 1fr auto;gap:9px 12px}.news-row time{font-size:11px}.news-row>span:nth-child(3){grid-column:1/3;font-size:14px;line-height:1.8}.news-row>span:last-child{grid-column:3;grid-row:1/3}.news-tabs{display:flex;flex-wrap:wrap;gap:8px}.news-tabs>*{font-size:12px;padding:9px 12px}.article{padding-block:30px 38px}.article>h1,.article>.article-title{font-size:26px;line-height:1.7}.article h2{font-size:22px;line-height:1.7}.article p,.article li{font-size:13px;line-height:2}.article img,.entry-content img{max-width:100%;height:auto}.entry-content a,.policy-custom a{overflow-wrap:anywhere}.article .related-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px}.article .related-nav>a{grid-column:1/-1;grid-row:1;text-align:center}
.contact-band h2{font-size:23px}.contact-band .button{min-width:0;line-height:1.8;min-height:50px}.form-progress li{font-size:11px;padding:10px 2px}.form-row>label{font-size:13px}.conditional{padding:20px 16px}.conditional h3{font-size:21px}.form-row input:not([type=radio]):not([type=checkbox]),.form-row textarea,.form-row select{font-size:16px;min-width:0;max-width:100%}.form-actions .button{font-size:13px;min-height:50px}.type-options{gap:10px}.consent{font-size:12px;line-height:1.9}.notice{font-size:12px;line-height:1.9}.proposal-note{font-size:11px}
.office-grid p{font-size:13px}.office-grid small,.group-note{font-size:11px}.footer-directory{width:calc(100% - 40px);gap:28px 18px}.footer-identity .brand>.brand-jp{font-size:17px;white-space:normal}.footer-column a{font-size:12px;line-height:1.9}.footer-column .footer-child{font-size:11px}.footer-consult{gap:0 18px}.footer-consult a{font-size:11px}.footer-bottom{width:calc(100% - 40px);padding-right:48px}.to-top{width:48px;height:48px;right:12px;bottom:15px}
.bof-page-privacy .editable-hero{height:190px}.bof-page-privacy .banner-copy .eyebrow{font-size:clamp(23px,6.6vw,30px);line-height:1.4;letter-spacing:.025em}.bof-page-privacy .banner-copy h1{font-size:17px;line-height:1.6;margin-top:8px}.bof-page-privacy .article{padding-top:25px}.bof-page-privacy .article>.notice{font-size:11px;text-align:left;margin-bottom:27px;padding:13px 15px}.bof-page-privacy .policy-title{font-size:26px;line-height:1.7}.bof-page-privacy .article section{padding:20px 0}.bof-page-privacy .article section h2{display:grid;grid-template-columns:48px 1fr;align-items:start;gap:15px;font-size:21px;line-height:1.65;margin-bottom:8px}.bof-page-privacy .article .number{font-size:28px;min-width:0;width:48px;padding:0;margin:0;line-height:1.3}.bof-page-privacy .article section p{margin-left:63px;font-size:12px;line-height:1.95}.bof-page-privacy .article>.button{width:100%;max-width:none;font-size:12px;padding:13px 17px;gap:12px;line-height:1.9}.bof-page-privacy .policy-date{font-size:11px}.bof-page-privacy .bottom-photo>.reference-photo{height:125px}
}
@media(max-width:360px){main .container,.footer-directory,.footer-bottom{width:calc(100% - 32px)}.brand>.brand-jp{font-size:13px}.hero-content{padding-inline:16px}.hero-content .button{font-size:10px;padding:10px 6px;gap:5px}.hero-content h1{font-size:28px}.footer-directory{column-gap:14px}.footer-column a{font-size:11px}.footer-consult{display:block}.footer-consult h2{margin-bottom:15px}.bof-page-privacy .article section h2{font-size:20px}.banner-copy h1{font-size:25px}.news-strip>strong{font-size:17px}.news-strip>a:nth-child(2){font-size:10px}}
@media(max-width:680px){.plain-hero h1{display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:21px}.plain-hero h1>span{font-size:40px}.plain-hero h1>i{display:none}.news-contact-cards>a{grid-template-columns:1fr;min-width:0}.news-contact-cards .reference-photo{height:170px}.news-contact-cards a>div{padding:22px 20px}.news-contact-cards h3{white-space:normal;font-size:23px}.news-contact-cards p{font-size:13px;line-height:1.9}}
/* User-selected navy circular page-top with gold rim and TOP label. */
.to-top{width:64px;height:64px;border:1.5px solid #c7b17a;border-radius:50%;background:#0d2d43;color:#d6bd80;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;box-shadow:0 4px 15px #0c293e17}
.to-top .top-arrow{width:16px;height:24px;stroke-width:1.2}.to-top .top-label{display:block;font-family:Arial,sans-serif;font-size:8px;font-weight:600;letter-spacing:.15em;line-height:1;color:#f1ead9;margin-left:.15em}
.to-top:hover{background:#173d54;color:#ead5a2;border-color:#e0c891}
@media(max-width:680px){.to-top{width:54px;height:54px;right:12px;bottom:16px;gap:4px}.to-top .top-arrow{width:14px;height:21px}.to-top .top-label{font-size:7px}}
