/*
Theme Name: Hengju Places
Theme URI: https://wordpress.org/
Author: Hengju
Description: An independent Japanese and English corporate theme for Hengju Real Estate, with native editable pages, news and company settings.
Version: 1.0.3
Requires at least: 6.5
Tested up to: 7.1.3
Requires PHP: 8.1
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hengju
*/

:root{--hj-green:#284c40;--hj-deep:#214236;--hj-ink:#30453a;--hj-muted:#747d74;--hj-clay:#a96f53;--hj-cream:#f5f1e8;--hj-paper:#fffefa;--hj-pale:#eaf0e8;--hj-line:#dce1d7;--hj-serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif CJK JP",Georgia,serif;--hj-sans:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--hj-width:1280px;--hj-header:96px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0;color:var(--hj-ink);background:var(--hj-paper);font-family:var(--hj-sans);font-size:15px;line-height:1.9;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
body.admin-bar{--hj-admin-offset:32px}
::selection{background:#d8e4d4;color:var(--hj-green)}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%;height:auto}
figure{margin:0}
h1,h2,h3,h4,p{margin-top:0}
h1,h2,h3,h4{font-weight:500}
p{margin-bottom:1.4em}
[hidden]{display:none!important}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--hj-clay);outline-offset:5px}
a,button{-webkit-tap-highlight-color:transparent}
.hj-container{width:min(var(--hj-width),calc(100% - 128px));margin-inline:auto}
.hj-section{padding-block:112px}
.hj-icon{width:24px;height:24px;object-fit:contain;flex:none}
.hj-icon-light{filter:brightness(0) invert(1)}
.hj-kicker{font-size:10px;line-height:1.6;letter-spacing:.14em;font-weight:500;margin-bottom:20px}
.hj-kicker-clay{color:var(--hj-clay)}
.hj-skip-link{position:absolute;left:16px;top:10px;padding:10px 22px;background:var(--hj-green);color:#fff;z-index:1000;transform:translateY(-150%)}
.hj-skip-link:focus{transform:translateY(0)}
.hj-header{height:var(--hj-header);background:var(--hj-paper);position:relative;z-index:50;border-bottom:1px solid rgba(40,76,64,.08)}
.hj-header-inner{max-width:1680px;height:100%;margin-inline:auto;padding-inline:52px;display:flex;gap:44px;align-items:center}
.hj-brand{display:flex;flex-direction:column;gap:5px;color:var(--hj-green);flex-shrink:0;line-height:1.2}
.hj-brand-text{display:flex;flex-direction:column;gap:5px;line-height:1.2;min-width:0}
.hj-brand.hj-brand-with-symbol{flex-direction:row;align-items:center;gap:12px}
.hj-brand-symbol{display:block;width:50px;height:50px;object-fit:contain;flex:none}
.hj-brand-text>strong{font-family:Georgia,"Times New Roman",serif;font-size:32px;letter-spacing:.095em;font-weight:400}
.hj-brand-text>span{font-size:9px;letter-spacing:.11em;line-height:1.6}
.hj-desktop-nav{margin-left:auto;display:flex;align-items:center;gap:33px}
.hj-desktop-nav>a{font-size:12px;white-space:nowrap;padding-block:8px;border-bottom:1px solid transparent;transition:border-color .2s,color .2s}
.hj-desktop-nav>a:hover,.hj-desktop-nav>a[aria-current="page"]{border-bottom-color:var(--hj-clay);color:var(--hj-clay)}
.hj-header-actions{display:flex;align-items:center;gap:26px}
.hj-language-switch{display:flex;gap:9px;align-items:center;font-size:10px;letter-spacing:.06em;white-space:nowrap;flex-shrink:0}
.hj-language-switch>a{padding:10px 0;color:#8b948a}
.hj-language-switch>a[aria-current="true"]{color:var(--hj-green);font-weight:600}
.hj-language-switch>span{color:#c7cfc4}
.hj-header-contact{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:11px 18px;background:var(--hj-pale);font-size:12px;line-height:1.9;white-space:nowrap;transition:background .2s}
.hj-header-contact:hover{background:#dce8d8}
.hj-header-contact .hj-icon{width:20px;height:20px}
.hj-menu-toggle{display:none;width:43px;height:43px;align-items:center;justify-content:center;padding:9px;background:transparent;border:0}
.hj-menu-close{display:none}
.hj-menu-toggle[aria-expanded="true"] .hj-menu-open{display:none}
.hj-menu-toggle[aria-expanded="true"] .hj-menu-close{display:block}
.hj-mobile-menu{position:absolute;top:100%;left:0;width:100%;background:var(--hj-cream);padding:18px 30px 32px;border-bottom:1px solid var(--hj-line);box-shadow:0 12px 20px rgba(40,76,64,.08);max-height:calc(100dvh - var(--hj-header) - var(--hj-admin-offset,0px));overflow:auto}
.hj-mobile-menu>a{padding:16px 0;border-bottom:1px solid var(--hj-line);display:flex;align-items:center;justify-content:space-between;font-size:15px}
.hj-mobile-menu>p{font-size:9px;letter-spacing:.1em;color:var(--hj-muted);margin:25px 0 0}
.hj-hero{display:grid;grid-template-columns:45% 55%;background:var(--hj-cream);min-height:665px}
.hj-hero-copy{padding:68px clamp(36px,5.3vw,86px) 63px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.hj-hero-copy>.hj-kicker{font-size:9px;letter-spacing:.12em;color:var(--hj-clay);margin-bottom:24px}
.hj-hero-copy>.hj-kicker>span{margin-inline:14px;color:#b8b9ab}
.hj-hero-intro{font-size:12px;letter-spacing:.07em;margin:0 0 17px}
.hj-hero h1{font-family:var(--hj-serif);font-size:clamp(44px,4.4vw,66px);line-height:1.7;letter-spacing:.025em;color:var(--hj-green);margin:0 0 27px;font-weight:500}
.hj-hero-description{font-size:13px;line-height:2.2;letter-spacing:.02em;max-width:435px;color:#667166;margin-bottom:33px}
.hj-hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:21px 28px}
.hj-button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 24px;min-width:235px;font-size:12px;line-height:1.7;border:1px solid transparent;transition:background .2s,color .2s}
.hj-button .hj-icon{width:21px;height:21px;transition:transform .2s}
.hj-button:hover .hj-icon{transform:translateX(4px)}
.hj-button-green{background:var(--hj-green);color:#fff}
.hj-button-green:hover{background:#3d6252}
.hj-button-cream{background:var(--hj-cream);color:var(--hj-green)}
.hj-button-cream:hover{background:#e6e6d8}
.hj-simple-link{display:inline-flex;align-items:center;gap:12px;font-size:11px;line-height:1.8;white-space:nowrap}
.hj-simple-link>.hj-icon{width:16px;height:16px}
.hj-hero-photo{position:relative;min-height:665px;overflow:hidden}
.hj-hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:52% center;position:absolute;inset:0}
.hj-hero-photo>figcaption{position:absolute;bottom:0;left:0;right:0;background:rgba(255,254,250,.93);padding:14px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.04em;line-height:1.9}
.hj-hero-photo>figcaption>span{font-size:8px;letter-spacing:.1em;color:var(--hj-muted)}
.hj-location-band{background:#fdfdf8;border-bottom:1px solid var(--hj-line)}
.hj-location-band>.hj-container{display:flex;align-items:center;gap:20px;min-height:70px;padding-block:15px}
.hj-location-band .hj-icon{width:18px;height:18px}
.hj-location-band .hj-kicker{font-size:9px;margin:0;white-space:nowrap;color:var(--hj-clay);letter-spacing:.1em}
.hj-location-band p:not(.hj-kicker){font-size:11px;letter-spacing:.025em;line-height:1.9;margin:0;color:var(--hj-muted)}
.hj-location-band a{margin-left:auto;padding:5px}
.hj-intro{background:var(--hj-paper)}
.hj-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:115px;align-items:center}
.hj-intro h2,.hj-section-heading h2{font-family:var(--hj-serif);font-size:44px;line-height:1.8;letter-spacing:.035em;color:var(--hj-green);margin:0}
.hj-intro-copy{padding-top:27px}
.hj-intro-copy>p{font-size:14px;line-height:2.3;letter-spacing:.025em;margin-bottom:28px}
.hj-text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:12px;line-height:1.8;width:max-content;max-width:100%;padding:8px 0;border-bottom:1px solid var(--hj-green)}
.hj-text-link>.hj-icon{width:21px;height:21px;transition:transform .2s}
.hj-text-link:hover>.hj-icon{transform:translateX(4px)}
.hj-business{background:#f1eee5}
.hj-section-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:115px;align-items:end;margin-bottom:60px}
.hj-section-heading>p{font-size:13px;line-height:2.2;margin:0 0 12px;max-width:440px;color:#72796d}
.hj-business-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:50px 64px;align-items:start}
.hj-business-card:nth-child(2){margin-top:102px}
.hj-business-card:nth-child(3){padding-top:12px;padding-right:60px}
.hj-business-card:nth-child(4){margin-top:66px}
.hj-card-image{display:block;position:relative;overflow:hidden;background:#e1e6da}
.hj-card-image>img{width:100%;height:auto;aspect-ratio:16/11;object-fit:cover;transition:transform .5s ease}
.hj-business-card:nth-child(2) .hj-card-image>img{aspect-ratio:4/3}
.hj-business-card:nth-child(3) .hj-card-image>img{aspect-ratio:4/3}
.hj-business-card:nth-child(4) .hj-card-image>img{aspect-ratio:4/5}
.hj-card-image:hover>img{transform:scale(1.025)}
.hj-card-image-link{position:absolute;right:0;bottom:0;width:48px;height:48px;background:var(--hj-paper);display:flex;align-items:center;justify-content:center}
.hj-card-image-link>.hj-icon{width:22px;height:22px}
.hj-card-heading{display:flex;align-items:center;gap:21px;margin-top:26px}
.hj-card-number{font-size:11px;line-height:1;align-self:flex-start;padding-top:6px;color:var(--hj-clay);font-variant-numeric:tabular-nums}
.hj-card-heading .hj-kicker{font-size:8px;letter-spacing:.11em;color:var(--hj-muted);margin-bottom:7px}
.hj-card-heading h3{font-family:var(--hj-serif);font-size:25px;line-height:1.7;letter-spacing:.02em;margin:0;color:var(--hj-green)}
.hj-card-heading>.hj-icon{margin-left:auto;width:26px;height:26px;opacity:.78}
.hj-card-description{font-size:12px;line-height:2.2;color:#72796d;margin:15px 0 0 34px;max-width:530px}
.hj-business-end{margin-top:40px;display:flex;justify-content:flex-start}
.hj-process{background:var(--hj-pale)}
.hj-process-heading{text-align:center;margin-bottom:47px}
.hj-process-heading h2{font-family:var(--hj-serif);font-size:37px;line-height:1.8;margin-bottom:17px;letter-spacing:.035em;color:var(--hj-green)}
.hj-process-heading>p:last-child{font-size:13px;color:var(--hj-muted);margin:0}
.hj-process-list{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}
.hj-process-list>li{border-top:1px solid #bfcbb9;padding-top:23px}
.hj-process-number{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.hj-process-number>span{font-family:Georgia,serif;font-size:26px;color:var(--hj-clay);font-variant-numeric:tabular-nums}
.hj-process-number>.hj-icon{width:22px;height:22px}
.hj-process-list h3{font-family:var(--hj-serif);font-size:24px;line-height:1.7;letter-spacing:.025em;margin:0 0 15px;color:var(--hj-green)}
.hj-process-list p{font-size:12px;line-height:2.1;color:#727e70;margin:0;max-width:310px}
.hj-company-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:85px;align-items:center}
.hj-company-grid>figure>img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.hj-company-grid>figure>figcaption{font-size:9px;color:var(--hj-muted);padding-top:10px;line-height:1.8}
.hj-company-copy h2{font-family:var(--hj-serif);font-size:34px;line-height:1.8;letter-spacing:.025em;color:var(--hj-green);margin:0 0 22px}
.hj-company-copy>p:not(.hj-kicker){font-size:13px;line-height:2.2;color:#737c71;margin-bottom:28px}
.hj-company-snapshot{margin:0 0 29px;border-top:1px solid var(--hj-line)}
.hj-company-snapshot>div{display:grid;grid-template-columns:115px 1fr;gap:22px;padding:13px 0;border-bottom:1px solid var(--hj-line);font-size:12px;line-height:1.9}
.hj-company-snapshot dt{color:var(--hj-muted);font-size:11px}
.hj-company-snapshot dd{margin:0}
.hj-news{background:#f7f7f1;border-top:1px solid var(--hj-line)}
.hj-news-heading{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:39px}
.hj-news-heading .hj-kicker{margin-bottom:14px}
.hj-news-heading h2{font-family:var(--hj-serif);font-size:42px;line-height:1.5;color:var(--hj-green);margin:0}
.hj-news-list{border-top:1px solid #d2dacc}
.hj-news-row{display:grid;grid-template-columns:100px 110px 1fr 25px;gap:29px;align-items:center;padding:29px 0;border-bottom:1px solid #d2dacc;transition:color .2s}
.hj-news-row:hover{color:var(--hj-clay)}
.hj-news-row time{font-size:11px;letter-spacing:.05em;font-variant-numeric:tabular-nums;color:var(--hj-muted)}
.hj-news-category{font-size:10px;line-height:1.6;color:var(--hj-muted)}
.hj-news-row h2,.hj-news-row h3{margin:0;font-size:14px;line-height:1.9;letter-spacing:.015em;font-weight:400}
.hj-news-row>.hj-icon{width:23px;height:23px}
.hj-empty-news{font-size:13px;color:var(--hj-muted);margin:0;padding:36px 0;border-bottom:1px solid #d2dacc}
.hj-footer{background:var(--hj-green);color:var(--hj-cream)}
.hj-footer-conversation{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding:88px 0 76px}
.hj-footer-conversation .hj-kicker{color:#c8d6bf;font-size:9px;margin-bottom:20px}
.hj-footer-conversation h2{font-family:var(--hj-serif);font-size:54px;line-height:1.65;letter-spacing:.04em;margin:0;font-weight:400}
.hj-footer-contact{padding-top:12px}
.hj-footer-contact>p{font-size:13px;line-height:2.2;max-width:445px;margin-bottom:22px;color:#d4ddcc}
.hj-footer-email{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:21px;line-height:1.9;border-bottom:1px solid #6b8371;padding:8px 0 12px;overflow-wrap:anywhere}
.hj-footer-email>.hj-icon{width:21px;height:21px}
.hj-footer-phone{display:flex;align-items:center;gap:12px;font-size:18px;letter-spacing:.035em;margin:16px 0 24px;width:max-content;max-width:100%}
.hj-footer-phone>.hj-icon{width:16px;height:16px}
.hj-footer-info{display:grid;grid-template-columns:1.05fr .65fr 1fr;gap:60px;padding:45px 0;border-top:1px solid #607c67}
.hj-footer-brand>a{font-family:Georgia,"Times New Roman",serif;font-size:37px;line-height:1.3;letter-spacing:.095em;font-weight:400;display:inline-block;margin-bottom:12px}
.hj-footer-brand>.hj-footer-wordmark{display:inline-flex;align-items:center;gap:13px}
.hj-footer-wordmark .hj-brand-symbol-footer{width:45px;height:45px;filter:brightness(0) invert(1);opacity:.94}
.hj-footer-brand>p{font-size:11px;margin:0 0 9px;letter-spacing:.06em;color:#e8eddf}
.hj-footer-brand>span{font-size:10px;letter-spacing:.025em;color:#c1d0b7}
.hj-footer-nav{display:flex;flex-direction:column;gap:13px;padding-top:7px;align-items:flex-start}
.hj-footer-nav>a{font-size:11px;line-height:1.7}
.hj-footer-address{padding-top:7px}
.hj-footer-address>.hj-kicker{font-size:8px;letter-spacing:.1em;margin-bottom:15px;color:#c8d6bf}
.hj-footer-address>p:not(.hj-kicker){font-size:11px;line-height:2.1;margin-bottom:15px;max-width:330px;color:#c1d0b7}
.hj-footer-address>a{display:inline-flex;align-items:center;gap:20px;font-size:10px}
.hj-footer-address>a .hj-icon{width:15px;height:15px}
.hj-footer-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:30px;padding:20px 0 24px;border-top:1px solid #607c67;color:#abc0a4;font-size:9px;line-height:1.8;letter-spacing:.02em}
.hj-footer-bottom>p{margin:0}
.hj-footer-bottom>a{margin-left:auto;font-size:10px;color:#c1d0b7}
.hj-footer-bottom>span{font-size:8px}
.hj-page-heading{padding:28px 0 62px;background:var(--hj-cream);border-bottom:1px solid var(--hj-line)}
.hj-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:9px;letter-spacing:.04em;margin-bottom:44px;color:var(--hj-muted)}
.hj-breadcrumb>a{color:var(--hj-green)}
.hj-breadcrumb>span:first-of-type{color:#b7c2b2}
.hj-page-heading>.hj-container>.hj-kicker{margin-bottom:17px}
.hj-page-heading h1{font-family:var(--hj-serif);font-size:48px;line-height:1.7;letter-spacing:.025em;margin:0;color:var(--hj-green)}
.hj-page-article{padding-block:70px 95px}
.hj-entry-content{font-size:15px;line-height:2.2;overflow-wrap:break-word}
.hj-entry-content>p:first-child{font-size:17px;line-height:2.3;max-width:960px;margin-bottom:38px}
.hj-entry-content>p{max-width:980px}
.hj-entry-content>h2{font-family:var(--hj-serif);font-size:29px;line-height:1.7;color:var(--hj-green);margin-top:45px;margin-bottom:22px}
.hj-entry-content>h3{font-size:20px;line-height:1.7;margin-top:34px;margin-bottom:15px;color:var(--hj-green)}
.hj-entry-content a:not(.hj-text-link):not(.hj-contact-value){text-decoration:underline;text-underline-offset:4px}
.hj-entry-content ul,.hj-entry-content ol{padding-left:1.5em;max-width:980px;margin-block:20px 30px}
.hj-entry-content li{margin-bottom:8px}
.hj-entry-content figure{margin:30px 0}
.hj-entry-content img{height:auto}
.hj-entry-content figcaption{font-size:11px;color:var(--hj-muted)}
.hj-entry-content blockquote{border-left:2px solid var(--hj-clay);padding:15px 25px;background:var(--hj-cream);margin-inline:0}
.hj-entry-content table{width:100%;border-collapse:collapse}
.hj-entry-content th,.hj-entry-content td{padding:15px 20px;border:1px solid var(--hj-line);text-align:left}
.hj-entry-content .alignwide,.hj-entry-content .alignfull{max-width:100%;width:100%}
.hj-entry-content hr{border:0;border-top:1px solid var(--hj-line);margin:40px 0}
.hj-edit-link{display:inline-block;margin-top:30px;text-decoration:underline;font-size:11px;color:var(--hj-muted)}
.hj-service-details{margin-top:50px}
.hj-service-detail{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;padding-block:43px;border-top:1px solid var(--hj-line);scroll-margin-top:30px}
.hj-service-detail:last-child{border-bottom:1px solid var(--hj-line)}
.hj-service-detail>figure{margin:0}
.hj-service-detail>figure>img{width:100%;aspect-ratio:4/3;object-fit:cover;height:auto}
.hj-detail-copy>.hj-kicker{font-size:9px;color:var(--hj-clay);margin:0 0 20px}
.hj-detail-copy>.hj-icon{width:30px;height:30px;margin-bottom:18px}
.hj-detail-copy h2{font-family:var(--hj-serif);font-size:28px;line-height:1.8;color:var(--hj-green);margin:0 0 18px}
.hj-detail-copy>p:not(.hj-kicker){font-size:14px;line-height:2.2;color:var(--hj-muted);margin-bottom:24px}
.hj-company-profile{margin-top:50px}
.hj-company-profile>h2{font-family:var(--hj-serif);font-size:30px;color:var(--hj-green);line-height:1.8;margin-bottom:23px}
.hj-facts-table{border-top:1px solid var(--hj-green);margin:0}
.hj-facts-table>div{display:grid;grid-template-columns:240px 1fr;gap:30px;padding:20px 16px;border-bottom:1px solid var(--hj-line);line-height:2;font-size:14px}
.hj-facts-table dt{font-size:12px;color:var(--hj-muted)}
.hj-facts-table dd{margin:0;overflow-wrap:anywhere}
.hj-location-card{display:flex;gap:30px;margin-top:45px;padding:35px 38px;background:var(--hj-pale);align-items:flex-start}
.hj-location-card>.hj-icon{width:30px;height:30px;margin-top:8px}
.hj-location-card .hj-kicker{font-size:9px;color:var(--hj-clay);margin-bottom:10px}
.hj-location-card h2{font-family:var(--hj-serif);font-size:27px;line-height:1.8;margin-bottom:10px;color:var(--hj-green)}
.hj-location-card p:not(.hj-kicker){font-size:13px;line-height:2;margin-bottom:16px}
.hj-contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin-top:45px}
.hj-contact-methods>section{padding:36px 34px;background:var(--hj-cream);display:flex;flex-direction:column;align-items:flex-start}
.hj-contact-methods .hj-kicker{display:flex;gap:15px;align-items:center;color:var(--hj-clay);font-size:9px;margin-bottom:22px}
.hj-contact-methods .hj-kicker>.hj-icon{width:23px;height:23px}
.hj-contact-methods h2{font-family:var(--hj-serif);font-size:26px;line-height:1.8;color:var(--hj-green);margin-bottom:16px}
.hj-contact-methods p:not(.hj-kicker){font-size:13px;line-height:2.1;color:var(--hj-muted)}
.hj-contact-value{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;font-size:18px;line-height:1.8;border-bottom:1px solid var(--hj-green);padding:10px 0 12px;margin-top:auto;overflow-wrap:anywhere}
.hj-contact-phone{font-size:29px;letter-spacing:.035em}
.hj-contact-value>.hj-icon{width:21px;height:21px}
.hj-contact-methods small{font-size:10px;color:var(--hj-muted);margin-top:13px;line-height:1.8}
.hj-privacy-note{display:flex;gap:13px;font-size:12px;margin:28px 0 0;padding:15px 0;line-height:2}
.hj-privacy-note>.hj-icon{width:18px;height:18px;margin-top:4px}
.hj-news-archive{padding-block:60px 90px;min-height:320px}
.navigation.pagination{margin-top:40px}
.nav-links{display:flex;justify-content:center;gap:10px;font-size:12px;line-height:1.7}
.page-numbers{min-width:36px;min-height:36px;border:1px solid var(--hj-line);display:inline-flex;justify-content:center;align-items:center;padding:7px 12px}
.page-numbers.current{background:var(--hj-green);color:white;border-color:var(--hj-green)}
.page-numbers.dots{border:0}
.hj-empty-state{padding-block:40px}
.hj-empty-state h2{font-family:var(--hj-serif);font-size:29px;line-height:1.7;color:var(--hj-green)}
.hj-empty-state p{font-size:14px;color:var(--hj-muted)}
.hj-post-heading h1{font-size:40px;max-width:960px;line-height:1.7}
.hj-post-heading time{display:block;margin-bottom:18px;font-size:12px;letter-spacing:.05em;color:var(--hj-muted)}
.hj-single-article{max-width:920px;padding-block:60px 85px}
.hj-featured-image{margin-bottom:40px}
.hj-featured-image>img{width:100%;height:auto}
.hj-post-back{border-top:1px solid var(--hj-line);padding-top:25px;margin-top:45px}
.hj-error-page{padding-block:75px 100px}
.hj-error-number{font-family:Georgia,serif;font-size:150px;line-height:1.15;letter-spacing:-.05em;margin:0 0 23px;color:var(--hj-green)}
.hj-error-page h1{font-family:var(--hj-serif);font-size:29px;line-height:1.8;color:var(--hj-green);margin-bottom:15px}
.hj-error-page>p:not(.hj-kicker):not(.hj-error-number){font-size:14px;color:var(--hj-muted);margin-bottom:30px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;background:var(--hj-paper);color:var(--hj-green);padding:15px 22px;left:5px;top:5px;z-index:100000}
.hj-language-en .hj-brand-text>span{font-size:8px;letter-spacing:.035em}
.hj-language-en .hj-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,3.9vw,59px);line-height:1.3;letter-spacing:-.035em}
.hj-language-en .hj-hero-intro{letter-spacing:0;line-height:1.8}
.hj-language-en .hj-hero-description{line-height:1.9;font-size:14px}
.hj-language-en .hj-intro h2,.hj-language-en .hj-section-heading h2{font-family:Georgia,"Times New Roman",serif;line-height:1.5;letter-spacing:-.025em;font-size:41px}
.hj-language-en .hj-intro-copy>p{line-height:1.95}
.hj-language-en .hj-card-heading h3{font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.45;letter-spacing:-.015em}
.hj-language-en .hj-card-description{line-height:1.9}
.hj-language-en .hj-process-heading h2,.hj-language-en .hj-process-list h3,.hj-language-en .hj-company-copy h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.01em;line-height:1.5}
.hj-language-en .hj-footer-conversation h2{font-family:Georgia,"Times New Roman",serif;line-height:1.4;letter-spacing:-.015em}
.hj-language-en .hj-entry-content{line-height:1.95}
.hj-language-en .hj-detail-copy h2{font-family:Georgia,"Times New Roman",serif;line-height:1.5;letter-spacing:-.01em}
.hj-language-en .hj-facts-table dt{line-height:1.7}

@media(min-width:1700px){.hj-hero-copy{padding-left:max(86px,calc((100vw - 1500px)/2))}.hj-hero{min-height:750px}.hj-hero-photo{min-height:750px}}
@media(max-width:1280px){.hj-header-inner{padding-inline:35px;gap:30px}.hj-desktop-nav{gap:23px}.hj-header-actions{gap:20px}.hj-container{width:calc(100% - 96px)}.hj-intro-grid,.hj-section-heading{gap:75px}.hj-hero-copy{padding-inline:45px}.hj-hero h1{font-size:54px}.hj-business-grid{gap:45px}.hj-card-heading h3{font-size:23px}.hj-card-heading{gap:16px}.hj-card-description{margin-left:29px}.hj-company-grid{gap:60px}.hj-company-copy h2{font-size:30px}.hj-footer-conversation{gap:75px}.hj-footer-email{font-size:19px}.hj-footer-info{gap:40px}.hj-contact-value{font-size:16px}.hj-contact-phone{font-size:27px}.hj-service-detail{gap:45px}}
@media(max-width:1024px){:root{--hj-header:84px}.hj-header-inner{padding-inline:30px;justify-content:space-between}.hj-desktop-nav,.hj-header-contact{display:none}.hj-menu-toggle{display:flex}.hj-hero{grid-template-columns:47% 53%;min-height:590px}.hj-hero-copy{padding:45px 36px}.hj-hero-photo{min-height:590px}.hj-hero h1{font-size:44px}.hj-hero-description{font-size:12px}.hj-hero-actions{gap:21px}.hj-hero-copy>.hj-kicker{font-size:8px}.hj-button{min-width:218px;padding:16px 21px;font-size:11px}.hj-hero-intro{font-size:11px}.hj-language-en .hj-hero h1{font-size:40px}.hj-language-en .hj-hero-description{font-size:12px}.hj-section{padding-block:84px}.hj-intro-grid,.hj-section-heading{gap:55px}.hj-intro h2,.hj-section-heading h2{font-size:36px}.hj-language-en .hj-intro h2,.hj-language-en .hj-section-heading h2{font-size:35px}.hj-intro-copy>p{font-size:13px}.hj-business-grid{gap:45px 35px}.hj-business-card:nth-child(2){margin-top:80px}.hj-business-card:nth-child(3){padding-right:30px}.hj-business-card:nth-child(4){margin-top:45px}.hj-card-heading h3{font-size:21px}.hj-language-en .hj-card-heading h3{font-size:22px}.hj-card-heading>.hj-icon{width:23px;height:23px}.hj-card-heading .hj-kicker{font-size:7px}.hj-card-description{font-size:11px}.hj-company-grid{gap:42px;grid-template-columns:.9fr 1.1fr}.hj-company-copy h2{font-size:28px}.hj-company-copy>p:not(.hj-kicker){font-size:12px}.hj-company-snapshot>div{grid-template-columns:105px 1fr;gap:15px;font-size:11px}.hj-process-list{gap:30px}.hj-process-list h3{font-size:22px}.hj-news-row{grid-template-columns:85px 85px 1fr 22px;gap:20px}.hj-footer-conversation{gap:50px}.hj-footer-conversation h2{font-size:46px}.hj-footer-contact>p{font-size:12px}.hj-footer-email{font-size:17px}.hj-footer-info{gap:30px}.hj-footer-brand>a{font-size:33px}.hj-service-detail{gap:35px}.hj-detail-copy h2{font-size:24px}.hj-contact-methods{gap:26px}.hj-contact-methods>section{padding:30px 25px}.hj-contact-methods h2{font-size:23px}.hj-contact-value{font-size:14px}.hj-contact-phone{font-size:25px}}
@media(max-width:782px){body.admin-bar{--hj-admin-offset:46px}.hj-container{width:calc(100% - 48px)}.hj-hero{grid-template-columns:1fr;min-height:0}.hj-hero-copy{padding:45px 30px 43px}.hj-hero-copy>.hj-kicker{font-size:9px;margin-bottom:22px}.hj-hero-intro{font-size:12px;margin-bottom:17px}.hj-hero h1{font-size:49px;line-height:1.65;letter-spacing:.025em;margin-bottom:24px}.hj-hero-description{font-size:13px;max-width:555px;line-height:2.1;margin-bottom:27px}.hj-hero-actions{gap:22px 26px}.hj-hero-photo{min-height:0;height:440px}.hj-hero-photo>img{object-position:center 52%}.hj-hero-photo>figcaption{padding:11px 25px;font-size:9px}.hj-location-band>.hj-container{gap:14px;flex-wrap:wrap;padding-block:16px;min-height:0}.hj-location-band .hj-kicker{font-size:8px}.hj-location-band p:not(.hj-kicker){font-size:10px;width:calc(100% - 36px);order:3}.hj-location-band a{margin-left:auto}.hj-section{padding-block:65px}.hj-intro-grid{grid-template-columns:1fr;gap:28px}.hj-intro-copy{padding-top:0;max-width:640px}.hj-intro h2,.hj-section-heading h2{font-size:35px;line-height:1.8}.hj-intro-copy>p{font-size:13px;line-height:2.2}.hj-kicker{font-size:9px;margin-bottom:18px}.hj-section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:38px}.hj-section-heading>p{font-size:12px;max-width:600px;margin:0}.hj-business-grid{gap:38px 26px;grid-template-columns:1fr 1fr}.hj-business-card:nth-child(2){margin-top:72px}.hj-business-card:nth-child(3){padding:0}.hj-business-card:nth-child(4){margin-top:50px}.hj-card-heading{gap:11px;margin-top:19px}.hj-card-heading h3{font-size:20px}.hj-card-heading>.hj-icon{display:none}.hj-card-heading .hj-kicker{font-size:6px;letter-spacing:.06em;line-height:1.7;margin-bottom:7px}.hj-card-number{font-size:9px;padding-top:4px}.hj-card-description{font-size:11px;line-height:2;margin-top:11px;margin-left:26px}.hj-card-image-link{width:37px;height:37px}.hj-card-image-link>.hj-icon{width:18px;height:18px}.hj-business-end{margin-top:30px}.hj-process-heading{margin-bottom:34px;text-align:left}.hj-process-heading h2{font-size:31px;margin-bottom:13px}.hj-process-heading>p:last-child{font-size:12px}.hj-process-list{grid-template-columns:1fr;gap:25px}.hj-process-list>li{padding-top:20px;display:grid;grid-template-columns:45px 1fr;gap:9px 22px}.hj-process-number{margin:0;grid-row:1/span 2;align-self:start}.hj-process-number>span{font-size:25px}.hj-process-number>.hj-icon{display:none}.hj-process-list h3{font-size:23px;margin:0}.hj-process-list p{font-size:12px;max-width:560px;grid-column:2}.hj-company-grid{grid-template-columns:1fr;gap:31px}.hj-company-grid>figure>img{aspect-ratio:16/10;max-height:430px}.hj-company-copy h2{font-size:31px}.hj-company-copy>p:not(.hj-kicker){font-size:13px;max-width:610px}.hj-company-snapshot>div{font-size:12px;padding:13px 0;grid-template-columns:135px 1fr;gap:25px}.hj-company-snapshot dt{font-size:11px}.hj-news-heading{gap:25px;margin-bottom:29px}.hj-news-heading h2{font-size:35px}.hj-text-link{font-size:11px;gap:24px}.hj-news-row{grid-template-columns:90px 1fr 22px;gap:10px 24px;padding:24px 0}.hj-news-row>.hj-news-category{grid-column:2;grid-row:1;font-size:9px}.hj-news-row h2,.hj-news-row h3{grid-column:1/span 2;grid-row:2;font-size:13px}.hj-news-row>.hj-icon{grid-column:3;grid-row:1/span 2}.hj-news-row time{font-size:10px}.hj-empty-news{font-size:12px;padding-block:30px}.hj-footer-conversation{grid-template-columns:1fr;gap:28px;padding:60px 0 44px}.hj-footer-conversation h2{font-size:43px}.hj-footer-conversation .hj-kicker{font-size:8px}.hj-footer-contact{padding-top:0}.hj-footer-contact>p{font-size:12px;max-width:590px}.hj-footer-email{font-size:22px;max-width:590px}.hj-footer-phone{font-size:19px}.hj-footer-info{grid-template-columns:1fr 1fr;gap:32px;padding-block:35px}.hj-footer-brand>a{font-size:34px}.hj-footer-brand>p{font-size:10px}.hj-footer-brand>span{font-size:9px}.hj-footer-nav{align-self:center;justify-self:end;min-width:130px;font-size:11px}.hj-footer-address{grid-column:1/span 2;padding:0}.hj-footer-address>p:not(.hj-kicker){max-width:100%;font-size:10px;margin-bottom:12px}.hj-footer-address>.hj-kicker{font-size:7px;margin-bottom:10px}.hj-footer-bottom{gap:16px 24px;font-size:8px}.hj-footer-bottom>p{width:100%}.hj-footer-bottom>a{margin-left:0;font-size:9px}.hj-footer-bottom>span{font-size:7px}.hj-page-heading{padding:24px 0 42px}.hj-breadcrumb{font-size:8px;gap:10px;margin-bottom:33px}.hj-page-heading h1{font-size:36px;line-height:1.7}.hj-page-article{padding-block:45px 65px}.hj-entry-content{font-size:14px;line-height:2.1}.hj-entry-content>p:first-child{font-size:15px;line-height:2.2;margin-bottom:30px}.hj-entry-content>h2{font-size:25px;margin-top:33px}.hj-entry-content>h3{font-size:18px}.hj-service-details{margin-top:35px}.hj-service-detail{grid-template-columns:1fr;gap:26px;padding-block:31px}.hj-service-detail>figure>img{aspect-ratio:16/10;max-height:380px}.hj-detail-copy h2{font-size:25px}.hj-detail-copy>.hj-kicker{font-size:8px;margin-bottom:18px}.hj-detail-copy>.hj-icon{width:28px;height:28px;margin-bottom:15px}.hj-detail-copy>p:not(.hj-kicker){font-size:13px;margin-bottom:21px}.hj-company-profile{margin-top:36px}.hj-company-profile>h2{font-size:26px;margin-bottom:20px}.hj-facts-table>div{grid-template-columns:145px 1fr;gap:25px;padding:18px 6px;font-size:13px}.hj-facts-table dt{font-size:11px}.hj-location-card{padding:28px 25px;margin-top:32px;gap:20px}.hj-location-card>.hj-icon{width:24px;height:24px}.hj-location-card h2{font-size:24px}.hj-location-card p:not(.hj-kicker){font-size:12px}.hj-location-card .hj-text-link{font-size:10px;gap:18px}.hj-contact-methods{grid-template-columns:1fr;gap:25px;margin-top:32px}.hj-contact-methods>section{padding:30px 27px}.hj-contact-methods h2{font-size:25px}.hj-contact-value{font-size:20px}.hj-contact-phone{font-size:30px}.hj-privacy-note{font-size:11px;gap:10px;margin-top:23px}.hj-news-archive{padding-block:42px 65px}.hj-single-article{padding-block:43px 65px}.hj-post-heading h1{font-size:28px}.hj-error-page{padding-block:60px 75px}.hj-error-number{font-size:120px}.hj-error-page h1{font-size:25px}.hj-language-en .hj-hero h1{font-size:52px;line-height:1.35;max-width:600px}.hj-language-en .hj-hero-description{font-size:13px;line-height:1.95}.hj-language-en .hj-intro h2,.hj-language-en .hj-section-heading h2{font-size:35px;line-height:1.5}.hj-language-en .hj-card-heading h3{font-size:22px}.hj-language-en .hj-process-heading h2{font-size:32px}.hj-language-en .hj-company-copy h2{font-size:31px}.hj-language-en .hj-footer-conversation h2{font-size:43px}}
@media(max-width:520px){:root{--hj-header:77px}.hj-header-inner{padding-inline:22px;gap:15px}.hj-brand-text>strong{font-size:28px}.hj-brand-text>span{font-size:8px;letter-spacing:.075em}.hj-header-actions{gap:15px}.hj-language-switch{font-size:9px;gap:8px}.hj-menu-toggle{width:35px;height:39px;padding:6px}.hj-language-en .hj-brand-text>span{font-size:7px;max-width:150px}.hj-container{width:calc(100% - 40px)}.hj-hero-copy{padding:37px 24px 35px}.hj-hero h1{font-size:43px;line-height:1.7;margin-bottom:20px}.hj-hero-copy>.hj-kicker{font-size:8px;margin-bottom:23px}.hj-hero-intro{font-size:11px;letter-spacing:.03em;margin-bottom:13px}.hj-hero-description{font-size:12px;line-height:2.1;margin-bottom:25px}.hj-hero-actions{gap:20px}.hj-button{min-width:220px;padding:16px 22px;font-size:11px}.hj-simple-link{font-size:10px;gap:10px}.hj-hero-photo{height:315px}.hj-hero-photo>figcaption{padding:10px 20px;font-size:8px}.hj-location-band>.hj-container{gap:12px;padding-block:14px}.hj-location-band p:not(.hj-kicker){font-size:9px;line-height:2}.hj-section{padding-block:53px}.hj-intro h2,.hj-section-heading h2{font-size:31px}.hj-intro-copy>p{font-size:12px;line-height:2.2}.hj-kicker{font-size:8px;margin-bottom:17px}.hj-business-grid{grid-template-columns:1fr;gap:34px}.hj-business-card:nth-child(2),.hj-business-card:nth-child(4){margin:0}.hj-card-image>img,.hj-business-card:nth-child(2) .hj-card-image>img,.hj-business-card:nth-child(3) .hj-card-image>img,.hj-business-card:nth-child(4) .hj-card-image>img{aspect-ratio:16/11}.hj-card-heading{gap:15px;margin-top:19px}.hj-card-heading h3{font-size:23px}.hj-card-heading .hj-kicker{font-size:7px;letter-spacing:.1em}.hj-card-heading>.hj-icon{display:block;width:24px;height:24px}.hj-card-number{font-size:10px;padding-top:4px}.hj-card-description{font-size:11px;margin-left:30px;max-width:450px}.hj-section-heading>p{font-size:11px;line-height:2.2}.hj-process-heading h2{font-size:28px}.hj-process-list>li{gap:8px 16px;grid-template-columns:40px 1fr}.hj-process-list h3{font-size:21px}.hj-process-list p{font-size:11px}.hj-company-copy h2{font-size:28px}.hj-company-copy>p:not(.hj-kicker){font-size:12px}.hj-company-snapshot>div{grid-template-columns:100px 1fr;gap:18px;font-size:11px}.hj-company-snapshot dt{font-size:10px}.hj-news-heading{gap:20px;align-items:flex-end}.hj-news-heading h2{font-size:31px}.hj-news-heading .hj-text-link{font-size:10px;gap:15px;padding-block:5px}.hj-news-row{padding-block:21px;gap:9px 15px;grid-template-columns:85px 1fr 21px}.hj-news-row h2,.hj-news-row h3{font-size:12px}.hj-footer-conversation{padding-top:51px;gap:25px}.hj-footer-conversation h2{font-size:38px}.hj-footer-email{font-size:17px;gap:15px;padding-bottom:12px}.hj-footer-phone{font-size:19px}.hj-footer-info{grid-template-columns:1fr;gap:25px;padding-block:30px}.hj-footer-brand>a{font-size:34px}.hj-footer-nav{justify-self:stretch;display:grid;grid-template-columns:1fr 1fr;gap:13px 20px;min-width:0;font-size:10px;align-items:start}.hj-footer-address{grid-column:auto}.hj-footer-bottom{font-size:7px;gap:14px 20px}.hj-footer-bottom>a{font-size:8px}.hj-page-heading h1{font-size:32px}.hj-entry-content>p:first-child{font-size:14px}.hj-facts-table>div{grid-template-columns:110px 1fr;gap:16px;padding:16px 0;font-size:12px}.hj-facts-table dt{font-size:10px;line-height:1.8}.hj-location-card{padding:25px 20px;gap:15px}.hj-location-card h2{font-size:23px}.hj-location-card .hj-text-link{font-size:9px}.hj-contact-methods>section{padding:28px 24px}.hj-contact-methods h2{font-size:23px}.hj-contact-methods p:not(.hj-kicker){font-size:12px}.hj-contact-value{font-size:16px;gap:13px}.hj-contact-phone{font-size:28px}.hj-contact-methods small{font-size:9px}.hj-entry-content th,.hj-entry-content td{padding:12px 13px}.hj-post-heading h1{font-size:26px}.hj-error-number{font-size:110px}.hj-error-page h1{font-size:23px}.hj-language-en .hj-hero h1{font-size:40px;line-height:1.35;letter-spacing:-.03em}.hj-language-en .hj-hero-description{font-size:12px}.hj-language-en .hj-intro h2,.hj-language-en .hj-section-heading h2{font-size:31px}.hj-language-en .hj-card-heading h3{font-size:25px}.hj-language-en .hj-process-heading h2{font-size:28px}.hj-language-en .hj-company-copy h2{font-size:29px}.hj-language-en .hj-footer-conversation h2{font-size:38px}}
@media(max-width:360px){.hj-header-inner{padding-inline:18px}.hj-brand-text>strong{font-size:26px}.hj-brand-text>span{font-size:7px}.hj-header-actions{gap:10px}.hj-language-en .hj-brand-text>span{display:none}.hj-hero-copy{padding-inline:20px}.hj-hero h1{font-size:37px}.hj-hero-actions{gap:18px}.hj-hero-photo{height:280px}.hj-language-en .hj-hero h1{font-size:35px}.hj-language-en .hj-card-heading h3{font-size:23px}.hj-footer-email{font-size:14px}.hj-card-heading>.hj-icon{width:21px;height:21px}.hj-contact-value{font-size:14px}.hj-contact-phone{font-size:25px}.hj-facts-table>div{grid-template-columns:100px 1fr;gap:14px}}
@media(max-width:520px){.hj-brand-symbol{width:40px;height:40px}.hj-brand.hj-brand-with-symbol{gap:10px}.hj-brand-with-symbol .hj-brand-text{max-width:150px}.hj-footer-wordmark .hj-brand-symbol-footer{width:40px;height:40px}}
@media(max-width:360px){.hj-brand-symbol{width:34px;height:34px}.hj-brand.hj-brand-with-symbol{gap:8px}.hj-brand-with-symbol .hj-brand-text{max-width:125px}.hj-footer-wordmark .hj-brand-symbol-footer{width:36px;height:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
@media print{.hj-header,.hj-footer,.hj-edit-link,.hj-hero-photo,.hj-location-band{display:none}.hj-container{width:100%}.hj-section,.hj-page-article,.hj-single-article{padding-block:25px}.hj-hero{display:block;min-height:0;background:#fff}.hj-hero-copy{padding:25px 0}.hj-hero h1{font-size:38px}.hj-page-heading{padding:20px 0;background:#fff}.hj-business,.hj-process,.hj-news{background:#fff}.hj-business-grid{gap:30px}.hj-business-card:nth-child(2),.hj-business-card:nth-child(4){margin:0}.hj-business-card:nth-child(3){padding:0}.hj-button{background:#fff;color:#000;border-color:#000}.hj-icon-light{filter:none}a{color:#000}}

/* Keep each Japanese hero phrase on one line on narrow phones. */
@media(max-width:360px){.hj-language-ja .hj-hero h1{font-size:34px;letter-spacing:.01em}}
