/* Shared Japanese / English layout. Loaded after the theme styles. */
.hangyi-languages{display:flex;align-items:center;justify-content:flex-end;gap:4px;padding:4px;background:#eef3f7;border:1px solid #dce4ec;border-radius:8px;font-family:Arial,sans-serif;line-height:1;flex-shrink:0;white-space:nowrap}
.hangyi-languages a{display:block;padding:9px 11px;border-radius:5px;color:#40546a!important;background:transparent;font-size:13px;font-weight:600;line-height:1.3;text-decoration:none!important;transition:background .15s}
.hangyi-languages a[aria-current="true"]{background:#174b7a;color:#fff!important;box-shadow:0 1px 4px #102f471a}
.hangyi-languages a:hover{background:#dce7f1}
.hangyi-languages a[aria-current="true"]:hover{background:#123e66}
.hangyi-languages a:focus-visible{outline:3px solid #d89b00;outline-offset:3px}
/* Match the actual logo image background (sRGB 248,249,241). */
:root{--hangyi-header-bg:#f8f9f1;--hangyi-logo-width:260px}
#header,.header-fix{background:var(--hangyi-header-bg)!important;border-bottom:1px solid #e5e8df}
#header>.container,.header-fix>.container{width:min(1280px,calc(100% - 64px));max-width:none;padding:0}
#header .headerInfo,.header-fix .headerInfo{display:grid!important;grid-template-columns:var(--hangyi-logo-width) minmax(0,1fr) auto;align-items:center!important;gap:24px;min-height:96px;max-width:none;padding:14px 0!important;flex-direction:row!important;box-sizing:border-box}
#header .headerInfo>.siteInfo,.header-fix .headerInfo>.siteInfo{grid-column:1;grid-row:1;min-width:0;margin:0!important}
#header .siteInfo__logo,.header-fix .siteInfo__logo{margin:0!important;padding:0!important;line-height:0;width:var(--hangyi-logo-width);max-width:100%;aspect-ratio:1567/354}
#header .siteInfo__logo a,.header-fix .siteInfo__logo a{display:block;padding:0!important;line-height:0;width:100%;height:100%}
#header .siteInfo__logo img,.header-fix .siteInfo__logo img{display:block;width:100%!important;max-width:100%!important;height:100%!important;aspect-ratio:1567/354;max-height:none!important;object-fit:contain;object-position:left;transform:none!important}
#header .headerInfo>.gnav,.header-fix .headerInfo>.gnav{grid-column:2;grid-row:1;min-width:0;margin:0!important;align-self:center}
#header .gNavList,.header-fix .gNavList{justify-content:flex-end;align-items:center;flex-wrap:nowrap;gap:clamp(14px,1.7vw,26px)}
#header .gNavList>.menu-item,.header-fix .gNavList>.menu-item{flex:0 1 auto;margin:0!important;padding:0!important}
#header .gNavList>.menu-item>a,.header-fix .gNavList>.menu-item>a{padding:12px 0!important;font-size:15px;line-height:1.5;color:#243b50}
#header .menu-item-title,.header-fix .menu-item-title{white-space:normal;word-break:normal}
#header .headerInfo>.hangyi-languages,.header-fix .headerInfo>.hangyi-languages{grid-column:3;grid-row:1;margin:0}
.gnav-fix .drawer__open,.header-fix .drawer__open{background:var(--hangyi-header-bg)}
.home main.main .articleBody>.xbt-block-section:first-child{min-height:clamp(440px,38vw,580px)!important;--section-padding-top:72px!important;--section-padding-bottom:72px!important;background:#0d2b43;display:flex;align-items:center;overflow:hidden}
.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__image{left:38%;right:0;width:62%;height:100%}
.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__image img{width:100%;height:100%;object-fit:cover;object-position:right center;transform:scale(1.1);transform-origin:right center}
.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__overlay{background:linear-gradient(90deg,#0d2b43 0%,#0d2b43 35%,#0d2b43dc 47%,#0d2b4350 70%,#0d2b4310 100%)!important;opacity:1!important;backdrop-filter:none}
.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__inner{position:relative;z-index:2;width:min(1280px,calc(100% - 64px))!important;max-width:none!important;margin:0 auto;padding:0!important}
.home main.main .articleBody>.xbt-block-section:first-child h2{max-width:660px;margin:0 0 24px!important;color:#fff;text-align:left!important;font-size:clamp(32px,3.1vw,48px)!important;font-weight:700;line-height:1.32;letter-spacing:-.02em;text-wrap:balance;white-space:normal}
.home main.main .articleBody>.xbt-block-section:first-child p{max-width:510px;margin:0!important;color:#e1edf4;font-size:clamp(16px,1.3vw,19px)!important;line-height:1.8;text-align:left!important;white-space:normal}
.home main.main .articleBody>.xbt-block-section:not(:first-child){--section-padding-top:72px!important;--section-padding-bottom:72px!important}
.home main.main .articleBody>.xbt-block-section:not(:first-child)>.xbt-block-section__inner{max-width:1200px}
.home main.main .articleBody>.xbt-block-section:not(:first-child) h2{font-size:clamp(26px,2.4vw,34px)!important;line-height:1.4;letter-spacing:-.015em;margin-bottom:36px}
.home main.main .articleBody>.xbt-block-section:nth-child(2) .wp-block-columns{gap:32px;margin-top:40px}
.home main.main .articleBody>.xbt-block-section:nth-child(2) .wp-block-column{padding:28px 24px;background:#fff;border:1px solid #e5ebe7;border-radius:12px;box-shadow:0 8px 28px #123c2a06}
.home main.main .articleBody>.xbt-block-section:nth-child(2) .wp-block-column>p.has-text-align-center{font-size:20px!important;line-height:1.45;min-height:2.9em;margin:18px 0}
.home main.main .articleBody>.xbt-block-section:not(:first-child) p.wp-block-paragraph{font-size:16px!important;line-height:1.85;word-break:normal;overflow-wrap:break-word}
.home main.main .xbiz-home-business .wp-block-columns{align-items:center;gap:40px}
.home main.main .xbiz-home-business h3{font-size:clamp(23px,2.1vw,30px)!important;line-height:1.35}
.home main.main .xbiz-home-business figure img{border-radius:12px}
.articleBody .xbt-page-article-media{min-width:0}
html[lang="en"] .articleBody,html[lang="en"] .articleListContainer{word-break:normal;overflow-wrap:break-word}
html[lang="en"] .articleBody h1,html[lang="en"] .articleBody h2,html[lang="en"] .articleBody h3,html[lang="en"] .contentsHeader__caption{line-height:1.35;word-break:normal}
html[lang="en"] .articleBody table{font-size:15px;line-height:1.8}
html[lang="en"] .articleBody td,html[lang="en"] .articleBody th{white-space:normal;vertical-align:top}
.wpcf7{max-width:760px;margin-left:auto;margin-right:auto}
.wpcf7 label{display:block;font-size:15px;line-height:1.7}
.wpcf7 input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),.wpcf7 textarea{width:100%;max-width:100%;box-sizing:border-box;margin-top:8px;padding:12px 14px;border:1px solid #cbd7df;border-radius:6px;background:#fff;font-size:16px;line-height:1.6}
.wpcf7 input[type="submit"]{padding:12px 32px;border:0;border-radius:6px;background:#174b7a;color:#fff;font-size:16px}
@media(min-width:992px) and (max-width:1199px){:root{--hangyi-logo-width:200px}#header>.container,.header-fix>.container{width:calc(100% - 40px)}#header .headerInfo,.header-fix .headerInfo{grid-template-columns:var(--hangyi-logo-width) minmax(0,1fr) auto;gap:18px}#header .gNavList,.header-fix .gNavList{gap:14px}#header .gNavList>.menu-item>a,.header-fix .gNavList>.menu-item>a{font-size:14px}.hangyi-languages a{padding:8px}}
@media(max-width:991px){:root{--hangyi-logo-width:210px}#header>.container,.header-fix>.container{width:calc(100% - 40px)}#header .headerInfo,.header-fix .headerInfo{grid-template-columns:minmax(0,1fr) auto;min-height:78px;gap:16px;padding:12px 60px 12px 0!important}#header .headerInfo>.gnav,.header-fix .headerInfo>.gnav{display:none}#header .headerInfo>.hangyi-languages,.header-fix .headerInfo>.hangyi-languages{grid-column:2}.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__inner{width:calc(100% - 48px)!important}.home main.main .articleBody>.xbt-block-section:first-child h2{max-width:530px;font-size:38px!important}.home main.main .articleBody>.xbt-block-section:first-child p{max-width:410px}.home main.main .articleBody>.xbt-block-section:nth-child(2) .wp-block-columns{gap:16px}.home main.main .articleBody>.xbt-block-section:nth-child(2) .wp-block-column{padding:24px 18px}.home main.main .xbiz-home-business .wp-block-columns{gap:24px}}
@media(max-width:767px){:root{--hangyi-logo-width:170px}#header>.container,.header-fix>.container{width:calc(100% - 28px)}#header .headerInfo,.header-fix .headerInfo{gap:10px;min-height:70px}.hangyi-languages{gap:2px;padding:3px}.hangyi-languages a{padding:8px 7px;font-size:11px}.home main.main .articleBody>.xbt-block-section:first-child{min-height:510px!important;--section-padding-top:48px!important;--section-padding-bottom:48px!important;align-items:flex-start}.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__inner{width:calc(100% - 40px)!important}.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__image{left:0;top:auto;bottom:0;width:100%;height:64%}.home main.main .articleBody>.xbt-block-section:first-child>.xbt-block-section__overlay{background:linear-gradient(180deg,#0d2b43 0%,#0d2b43 31%,#0d2b43ba 49%,#0d2b4320 82%)!important}.home main.main .articleBody>.xbt-block-section:first-child h2{max-width:100%;font-size:30px!important;line-height:1.3;margin-bottom:16px!important}.home main.main .articleBody>.xbt-block-section:first-child p{max-width:100%;font-size:16px!important;line-height:1.7}.home main.main .articleBody>.xbt-block-section:not(:first-child){--section-padding-top:48px!important;--section-padding-bottom:48px!important}.home main.main .articleBody>.xbt-block-section:nth-child(2) .wp-block-column>p.has-text-align-center{min-height:0}.home main.main .xbiz-home-business .wp-block-group{padding:12px 0!important}.home main.main .xbiz-home-business .wp-block-columns{gap:18px}.home main.main .articleBody>.xbt-block-section:nth-child(4) .wp-block-group{padding:0!important}.home main.main .articleBody>.xbt-block-section:not(:first-child) h2{margin-bottom:26px}.articleBody table td,.articleBody table th{padding:12px!important}.articleBody table th{min-width:95px}}
@media(prefers-reduced-motion:reduce){.hangyi-languages a{transition:none}}
/* Keep longer English table labels intact and clarify the interior-page masthead. */
html[lang="en"] .articleBody table th{min-width:110px;word-break:normal;overflow-wrap:normal;hyphens:none;font-size:14px}
body:not(.home) #mainVisual.title-layout-contents-top{height:240px;overflow:hidden;background:#0d2b43}
body:not(.home) #mainVisual.title-layout-contents-top .item{height:100%}
body:not(.home) #mainVisual.title-layout-contents-top .item__image img{height:100%;object-fit:cover;object-position:right center;transform:scale(1.1);transform-origin:right center}
body:not(.home) #mainVisual.title-layout-contents-top .item__overlay{background:linear-gradient(90deg,#0d2b43f5,#0d2b43c4 40%,#0d2b4330);opacity:1}
body:not(.home) #mainVisual.title-layout-contents-top .item__info{width:min(1280px,calc(100% - 64px));padding:32px 0;min-height:0!important}
body:not(.home) #mainVisual.title-layout-contents-top .item__info--caption{font-size:clamp(28px,3vw,40px);line-height:1.3;max-width:750px}
@media(max-width:767px){body:not(.home) #mainVisual.title-layout-contents-top{height:180px}body:not(.home) #mainVisual.title-layout-contents-top .item__info{width:calc(100% - 40px)}html[lang="en"] .articleBody table th{width:35%;min-width:110px}}
body:not(.home) #mainVisual.title-layout-contents-top .item__info{opacity:1!important;transition:none}
.articleBody .xbt-block-description-list.dl-horizontal>.xbt-block-description-list-child{display:grid!important;grid-template-columns:minmax(140px,26%) minmax(0,1fr);min-height:0}
.articleBody .xbt-block-description-list-dt,.articleBody .xbt-block-description-list-dd{width:auto!important;min-width:0;min-height:0!important;box-sizing:border-box;padding:22px 20px!important;word-break:normal;overflow-wrap:break-word;line-height:1.8}
.articleBody .xbt-block-description-list-dt span{word-break:normal;overflow-wrap:normal;hyphens:none}
@media(max-width:767px){.articleBody .xbt-block-description-list.dl-horizontal>.xbt-block-description-list-child{grid-template-columns:1fr}.articleBody .xbt-block-description-list-dt{padding:20px 0 4px!important;border-bottom:0!important}.articleBody .xbt-block-description-list-dd{padding:0 0 20px!important}.articleBody .xbt-block-description-list-dt:after{display:none}}
body:not(.home) #mainVisual.title-layout-contents-top .item__info{position:absolute!important;inset:0;height:100%;margin:0 auto;box-sizing:border-box;display:flex;justify-content:center;z-index:2}

/* Footer widgets are independent of the home-page hero. */
.widget-area .footerTop{margin-top:0!important;margin-bottom:0!important}
.widget-area .footerTop .xbt-block-section{min-height:0!important;--section-min-height:0px!important;--section-padding-top:10px!important;--section-padding-bottom:10px!important;background:var(--footbg-color,#f5f5f5);display:block}
.widget-area .footerTop .xbt-block-section__inner{padding-top:0!important;padding-bottom:0!important}
.widget-area .footerTop p{margin:0!important;font-size:16px;line-height:1.6}
.footer .container-siteNavList{padding-top:4px;padding-bottom:4px}
.footer .container-copyright{padding-top:8px;padding-bottom:12px}
/* Keep the fixed header opaque during the scroll-header handoff. */
.header-fix{animation:none!important;transition:none!important}

#header .siteInfo__logo a:empty,.header-fix .siteInfo__logo a:empty{display:none!important}

/* Compact footer: remove the theme's additional inner navigation/copyright padding. */
.footer .siteNavList--footer{padding-top:0;padding-bottom:0}
.footer .siteNavList--footer .siteNavList{display:flex;flex-wrap:wrap;gap:4px 28px;margin:0}
.footer .siteNavList--footer .siteNavList>.menu-item>a{padding-top:6px!important;padding-bottom:6px!important;font-size:14px;line-height:1.5}
.footer .container-copyright .copyright{margin:0;padding:0;background:transparent;font-size:13px;line-height:1.5}
