@charset "utf-8";
/*
Theme Name: Beautiful Homes of Japan
Template: issue_tcd106
Version: 2.6.0
*/

:root { --ink:#173b2b; --paper:#f5f3ed; --cream:#ebe6dc; --gold:#b38a45; --white:#fff; --muted:#68746d; }
html { scroll-behavior:smooth; overflow-x:hidden!important; overflow-y:auto!important; height:auto!important; min-height:100%; overscroll-behavior-y:auto; }
body.bhj-site { margin:0; min-height:100%; height:auto!important; background:var(--paper); color:var(--ink); font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif; font-size:16px; line-height:1.9; overflow-x:hidden!important; overflow-y:visible!important; overscroll-behavior-y:auto!important; touch-action:auto!important; }
.bhj-site *, .bhj-site *::before, .bhj-site *::after { box-sizing:border-box; }
.bhj-site a { color:inherit!important; text-decoration:none; }
.bhj-site section { scroll-margin-top:78px; }
.bhj-site a:focus-visible,.bhj-site button:focus-visible,.bhj-site input:focus-visible,.bhj-site select:focus-visible,.bhj-site textarea:focus-visible { outline:3px solid #d8b86e; outline-offset:3px; }
.bhj-site img { max-width:100%; }
.bhj-skip { position:fixed; z-index:9999; top:-80px; left:16px; padding:10px 18px; background:#fff; color:var(--ink); }
.bhj-skip:focus { top:16px; }
.bhj-header { position:fixed; z-index:1000; inset:0 0 auto; height:94px; display:flex; align-items:center; gap:46px; padding:0 4.2vw; color:#fff; border-bottom:1px solid rgba(255,255,255,.24); transition:.35s ease; }
.bhj-header.is-scrolled { height:74px; background:rgba(18,49,36,.96); backdrop-filter:blur(12px); }
.bhj-brand,.bhj-footer-brand { display:flex; align-items:center; gap:13px; line-height:1; margin-right:auto; }
.bhj-brand b,.bhj-footer-brand b { display:block; font-size:17px; font-weight:500; letter-spacing:.07em; }
.bhj-brand small,.bhj-footer-brand small { display:block; margin-top:7px; font-size:10px; letter-spacing:.35em; text-transform:uppercase; }
.bhj-mark { width:42px; height:42px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.75); font-size:20px; }
.bhj-nav { display:flex; align-items:center; gap:34px; font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif; font-size:12px; letter-spacing:.06em; }
.bhj-nav a { position:relative; padding:8px 0; }
.bhj-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:0; height:1px; background:#fff; transition:.25s; }
.bhj-nav a:hover::after { right:0; }
.bhj-header-cta { padding:11px 23px; border:1px solid rgba(255,255,255,.65); font-family:sans-serif; font-size:12px; letter-spacing:.1em; transition:.25s; }
.bhj-language { display:flex; align-items:center; gap:7px; font:10px Arial,sans-serif; letter-spacing:.12em; color:rgba(255,255,255,.55); white-space:nowrap; }
.bhj-language a { padding:7px 2px; color:rgba(255,255,255,.55)!important; }
.bhj-language a.is-active,.bhj-language a:hover { color:#fff!important; }
.bhj-language span { opacity:.35; }
.bhj-header-cta:hover { background:#fff; color:var(--ink); }
.bhj-menu { display:none; border:0; background:none; width:44px; height:44px; padding:12px 8px; }
.bhj-menu span { display:block; height:1px; background:#fff; margin:7px 0; }
.bhj-hero { position:relative; min-height:780px; height:100svh; color:#fff; display:flex; align-items:center; overflow:hidden; background:#172f25; }
.bhj-hero-image { position:absolute; inset:0; background:url('assets/tatami.jpg') center 54%/cover no-repeat; transform:scale(1.015); animation:bhj-zoom 16s ease-out both; }
@keyframes bhj-zoom { to { transform:scale(1.075); } }
.bhj-hero-shade { position:absolute; inset:0; background:linear-gradient(90deg,rgba(10,28,20,.79) 0%,rgba(10,28,20,.5) 46%,rgba(10,28,20,.22) 100%),linear-gradient(0deg,rgba(10,25,18,.35),transparent 45%); }
.bhj-hero-content { position:relative; z-index:1; width:min(1220px,88vw); margin:48px auto 0; }
.bhj-eyebrow,.bhj-label { margin:0 0 25px; font-family:Arial,sans-serif; font-size:11px; letter-spacing:.25em; font-weight:600; }
.bhj-eyebrow::before { content:""; display:inline-block; width:34px; height:1px; margin:0 13px 4px 0; background:var(--gold); }
.bhj-hero h1 { margin:0; font-size:clamp(44px,5vw,76px); font-weight:400; line-height:1.42; letter-spacing:.05em; text-shadow:0 2px 24px rgba(0,0,0,.18); }
.bhj-hero h1 em { color:#dfc58f; font-style:normal; }
.bhj-hero-content>p:not(.bhj-eyebrow) { margin:26px 0 0; font-size:16px; letter-spacing:.12em; line-height:2; }
.bhj-hero-actions { display:flex; align-items:center; gap:34px; margin-top:35px; }
.bhj-button { display:inline-flex; justify-content:center; align-items:center; min-height:54px; padding:12px 28px; font-family:"Yu Gothic",sans-serif; font-size:12px; letter-spacing:.12em; transition:.25s; border:1px solid transparent; cursor:pointer; }
.bhj-site a.bhj-button-light { color:var(--ink)!important; background:#fff; font-weight:600; }
.bhj-button-light:hover { background:var(--gold); color:#fff!important; }
.bhj-text-link { font:12px/1.4 "Yu Gothic",sans-serif; letter-spacing:.1em; }
.bhj-text-link span { margin-left:8px; color:#ddc28e; }
.bhj-scroll { position:absolute; right:3.4vw; bottom:0; display:flex; flex-direction:column; align-items:center; gap:12px; font:9px Arial,sans-serif; letter-spacing:.2em; }
.bhj-scroll span { display:block; width:1px; height:78px; background:linear-gradient(#fff,#fff 50%,rgba(255,255,255,.15) 50%); background-size:100% 200%; animation:bhj-scroll 2.2s infinite; }
@keyframes bhj-scroll { to { background-position:0 -200%; } }
.bhj-intro { width:min(1160px,88vw); margin:auto; padding:145px 0; display:grid; grid-template-columns:65px 1fr 1fr; gap:54px; }
.bhj-section-no { font:11px Arial,sans-serif; color:var(--gold); letter-spacing:.15em; padding-top:7px; }
.bhj-intro h2,.bhj-values h2,.bhj-partners h2,.bhj-contact h2 { margin:0; font-size:clamp(34px,4vw,58px); font-weight:400; line-height:1.55; letter-spacing:.04em; }
.bhj-intro-copy { padding-top:43px; }
.bhj-intro-copy p { color:#4f5f56; }
.bhj-intro-copy .bhj-lead { margin-top:0; color:var(--ink); font-size:19px; line-height:2; }
.bhj-arrow-link { display:flex; justify-content:space-between; align-items:center; width:100%; margin-top:33px; padding:13px 0; border-bottom:1px solid #9fa99f; font-family:"Yu Gothic",sans-serif; font-size:12px; }
.bhj-arrow-link span { color:var(--gold); font-size:22px; }
.bhj-featured,.bhj-journal { padding:125px max(6vw,30px); background:#ebe7dd; }
.bhj-section-head { width:min(1240px,100%); margin:0 auto 65px; display:flex; justify-content:space-between; align-items:end; gap:60px; }
.bhj-section-head h2 { margin:0; font-size:clamp(32px,3.5vw,52px); font-weight:400; letter-spacing:.04em; }
.bhj-section-head>p { width:440px; margin:0; color:#5d685f; }
.bhj-story-grid { width:min(1240px,100%); margin:auto; display:grid; grid-template-columns:1.15fr .85fr; align-items:start; gap:38px; }
.bhj-story:nth-child(2) { margin-top:120px; }
.bhj-story-image { position:relative; height:460px; background-position:center; background-size:cover; overflow:hidden; }
.bhj-story:nth-child(2) .bhj-story-image { height:360px; }
.bhj-story-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(9,28,19,.25),transparent 50%); transition:.45s; }
.bhj-story:hover .bhj-story-image::after { background:rgba(20,54,39,.08); }
.bhj-story-image span { position:absolute; z-index:1; top:20px; left:20px; display:grid; place-items:center; width:40px; height:40px; border:1px solid rgba(255,255,255,.75); color:#fff; font:11px Arial,sans-serif; }
.bhj-image-modern { background-image:url('assets/modern.jpg'); }
.bhj-image-courtyard { background-image:url('assets/courtyard.jpg'); }
.bhj-story-meta { padding:25px 3px; }
.bhj-story-meta>p:first-child,.bhj-journal article>p { margin:0; color:var(--gold); font:10px Arial,sans-serif; letter-spacing:.18em; }
.bhj-story-meta h3 { margin:8px 0 4px; font-size:27px; font-weight:400; letter-spacing:.08em; }
.bhj-story-meta>p:not(:first-child) { margin:0 0 13px; color:#657168; }
.bhj-story-meta a { font:10px Arial,sans-serif; letter-spacing:.15em; }
.bhj-story-meta a span { color:var(--gold); margin-left:8px; }
.bhj-center { text-align:center; margin-top:70px; }
.bhj-site a.bhj-button-outline { border-color:var(--ink); color:var(--ink)!important; font-weight:600; }
.bhj-button-outline:hover { background:var(--ink); color:#fff; }
.bhj-values { background:var(--ink); color:#fff; padding:135px max(6vw,30px); display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; }
.bhj-values-intro { max-width:470px; }
.bhj-values-intro>p:last-child { margin-top:35px; color:#c4cec7; }
.bhj-value-list { margin:0; padding:0; list-style:none; border-top:1px solid rgba(255,255,255,.3); }
.bhj-value-list li { display:grid; grid-template-columns:50px 210px 1fr; gap:20px; align-items:center; min-height:132px; border-bottom:1px solid rgba(255,255,255,.2); }
.bhj-value-list>li>span { font:10px Arial,sans-serif; color:var(--gold); }
.bhj-value-list b { display:block; font-size:25px; font-weight:400; font-style:italic; }
.bhj-value-list small { color:#b9c7bd; }
.bhj-value-list p { color:#d1d9d3; line-height:1.7; }
.bhj-partners { position:relative; min-height:760px; display:flex; align-items:center; justify-content:flex-end; padding:100px max(8vw,30px); overflow:hidden; }
.bhj-partners-image { position:absolute; inset:0; background:url('assets/courtyard.jpg') center/cover no-repeat; }
.bhj-partners-image::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(11,27,20,.12),rgba(11,27,20,.65)); }
.bhj-partners-card { position:relative; width:min(560px,100%); background:rgba(247,245,239,.96); padding:58px 62px; box-shadow:0 18px 80px rgba(0,0,0,.18); }
.bhj-partners-card p:not(.bhj-label) { color:#59675e; }
.bhj-partners-card ul { margin:23px 0 30px; padding:19px 0; list-style:none; border-top:1px solid #cdd1c9; border-bottom:1px solid #cdd1c9; }
.bhj-partners-card li { position:relative; padding:5px 0 5px 20px; }
.bhj-partners-card li::before { content:"◆"; position:absolute; left:0; color:var(--gold); font-size:8px; }
.bhj-site a.bhj-button-dark { background:var(--ink); color:#fff!important; font-weight:600; }
.bhj-button-dark:hover { background:var(--gold); }
.bhj-journal { background:var(--paper); }
.bhj-journal-grid { width:min(1240px,100%); margin:auto; display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.bhj-journal-art { display:grid; place-items:center; aspect-ratio:1.45/1; margin-bottom:22px; color:#fff; font-size:84px; font-weight:400; background:#6c756c; overflow:hidden; position:relative; }
.bhj-journal-art::before { content:""; position:absolute; inset:12%; border:1px solid rgba(255,255,255,.32); transform:rotate(4deg); }
.bhj-art-1 { background:linear-gradient(135deg,#766c5b,#31473c); }
.bhj-art-2 { background:radial-gradient(circle at 60% 30%,#e5cca0,#8b7d5d 35%,#263c33 70%); }
.bhj-art-3 { background:linear-gradient(45deg,#1b382c 50%,#aa8956 50%); }
.bhj-journal-photo { background-position:center; background-size:cover; color:transparent; }
.bhj-journal-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(11,35,24,.2),transparent 55%); }
.bhj-journal h3 { margin:7px 0; font-size:20px; font-weight:400; }
.bhj-journal time { font:10px Arial,sans-serif; color:#8a928c; letter-spacing:.1em; }
.bhj-contact { padding:135px max(8vw,30px); background:#e7e1d5; display:grid; grid-template-columns:.75fr 1.25fr; gap:100px; }
.bhj-contact-copy>p:last-child { max-width:420px; color:#59675e; margin-top:30px; }
.bhj-form-wrap { background:#f8f6f1; padding:48px; }
.bhj-form label { display:block; font-family:"Yu Gothic",sans-serif; font-size:12px; color:#33483d; }
.bhj-form label em { color:#a16d43; font-style:normal; font-size:9px; margin-left:5px; }
.bhj-form-row { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.bhj-form input[type=text],.bhj-form input[type=email],.bhj-form select,.bhj-form textarea { width:100%; border:0; border-bottom:1px solid #aeb4ac; border-radius:0; background:transparent; padding:10px 3px; margin-bottom:18px; color:var(--ink); font:15px "Yu Gothic",sans-serif; outline:none; }
.bhj-form textarea { border:1px solid #bfc3bc; margin-top:8px; padding:12px; resize:vertical; }
.bhj-form input:focus,.bhj-form select:focus,.bhj-form textarea:focus { border-color:var(--gold); }
.bhj-check { display:flex!important; align-items:center; gap:8px; margin:3px 0 20px; }
.bhj-site button.bhj-button-gold { background:#9d7435; color:#fff!important; min-width:180px; font-weight:700; border-color:#9d7435; }
.bhj-button-gold:hover { background:var(--ink); }
.bhj-button-gold span { margin-left:40px; }
.bhj-notice { padding:12px 16px; margin:0 0 24px; font-family:"Yu Gothic",sans-serif; font-size:13px; }
.bhj-notice-success { background:#e1ecdf; }
.bhj-notice-error { background:#f4dfd8; color:#7e312a; }
.bhj-inquiry-target { margin:0 0 24px; padding:12px 16px; background:#eee8da; border-left:3px solid var(--gold); font-family:"Yu Gothic",sans-serif; font-size:13px; }
.bhj-footer { padding:65px max(5vw,30px) 28px; background:#102b20; color:#fff; }
.bhj-footer-top { display:grid; grid-template-columns:1fr 1fr auto; align-items:center; padding-bottom:55px; }
.bhj-footer-top>p { color:#aebdb3; font-size:13px; }
.bhj-footer-top>a { font:9px Arial,sans-serif; letter-spacing:.15em; }
.bhj-footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:30px; padding-top:25px; border-top:1px solid rgba(255,255,255,.18); }
.bhj-footer-bottom nav { display:flex; gap:25px; font-family:"Yu Gothic",sans-serif; font-size:11px; }
.bhj-footer-bottom small { color:#82968a; font:9px Arial,sans-serif; letter-spacing:.08em; }
.bhj-header-solid { background:#102b20; }
.bhj-archive-main { min-height:70vh; padding-top:94px; }
.bhj-page-hero { padding:115px max(8vw,30px) 90px; text-align:center; background:#e9e4d9; }
.bhj-page-hero h1 { margin:0; font-size:clamp(42px,5vw,72px); line-height:1.35; font-weight:400; letter-spacing:.06em; }
.bhj-page-hero>p:last-child { max-width:660px; margin:28px auto 0; color:#5b675f; }
.bhj-filter-row { width:min(1240px,88vw); margin:55px auto 45px; padding-bottom:20px; display:flex; justify-content:space-between; gap:30px; border-bottom:1px solid #c8cbc3; font:11px Arial,sans-serif; letter-spacing:.14em; }
.bhj-filter-row>span { color:var(--gold); }
.bhj-filter-row nav { display:flex; flex-wrap:wrap; gap:12px 25px; }
.bhj-filter-row nav a { color:#6c756f!important; }
.bhj-filter-row nav a:hover,.bhj-filter-row nav a.is-current { color:var(--ink)!important; }
.bhj-residence-grid { width:min(1240px,88vw); margin:0 auto 110px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:75px 38px; }
.bhj-residence-card-image { display:block; aspect-ratio:1.45/1; overflow:hidden; background:#d7d2c7; }
.bhj-residence-card-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .65s cubic-bezier(.22,1,.36,1); }
.bhj-residence-card:hover img { transform:scale(1.035); }
.bhj-no-image { width:100%; height:100%; display:grid; place-items:center; color:#fff; background:linear-gradient(135deg,#66756d,#263d31); font-size:70px; }
.bhj-residence-card>div { padding:23px 2px; }
.bhj-residence-card>div>p:first-child { margin:0; color:var(--gold); font:10px Arial,sans-serif; letter-spacing:.15em; }
.bhj-residence-card h2 { margin:8px 0; font-size:27px; font-weight:400; }
.bhj-residence-card>div>p:not(:first-child) { color:#627067; margin:0 0 15px; }
.bhj-card-link { font:10px Arial,sans-serif; letter-spacing:.15em; }
.bhj-card-link span { color:var(--gold); margin-left:7px; }
.bhj-pagination { width:min(1240px,88vw); margin:-40px auto 100px; text-align:center; }
.bhj-pagination .nav-links { display:flex; justify-content:center; align-items:center; gap:8px; }
.bhj-pagination .page-numbers { min-width:42px; height:42px; display:grid; place-items:center; border:1px solid #bdc3bc; font:11px Arial,sans-serif; }
.bhj-pagination .current,.bhj-pagination a:hover { color:#fff!important; background:var(--ink); border-color:var(--ink); }
.bhj-empty { padding:100px 30px 150px; text-align:center; }
.bhj-empty h2 { font-size:32px; font-weight:400; }
.bhj-single-hero { position:relative; min-height:760px; height:92svh; display:flex; align-items:flex-end; padding:0 max(8vw,30px) 85px; color:#fff; background-position:center; background-size:cover; }
.bhj-single-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(9,25,18,.74),rgba(9,25,18,.08) 65%); }
.bhj-single-hero-empty { background:linear-gradient(135deg,#52675b,#122c20); }
.bhj-single-hero>div { position:relative; z-index:1; }
.bhj-single-hero p { margin:0 0 15px; color:#e1c993; font:11px Arial,sans-serif; letter-spacing:.2em; }
.bhj-single-hero h1 { margin:0; max-width:960px; font-size:clamp(42px,5.7vw,82px); font-weight:400; line-height:1.35; letter-spacing:.08em; }
.bhj-single-hero .bhj-scroll { z-index:1; }
.bhj-single-hero .bhj-scroll i { width:1px; height:78px; background:#fff; display:block; }
.bhj-single-body { width:min(940px,84vw); margin:auto; padding:120px 0; }
.bhj-single-intro { display:grid; grid-template-columns:180px 1fr; gap:55px; padding-bottom:70px; border-bottom:1px solid #cbd0c9; }
.bhj-single-intro>p:last-child { margin:0; font-size:23px; line-height:2; }
.bhj-entry-content { padding:70px 0; font-size:17px; line-height:2.2; }
.bhj-entry-content h2 { margin:2em 0 .8em; font-size:36px; font-weight:400; }
.bhj-entry-content h3 { margin:2em 0 .8em; font-size:25px; font-weight:400; }
.bhj-entry-content p { margin:0 0 1.8em; }
.bhj-entry-content img { width:auto; max-width:100%; height:auto; display:block; margin:50px auto; }
.bhj-entry-content figure { margin:55px 0; }
.bhj-entry-content figure img { margin:0; }
.bhj-entry-content img[src*="tekigaiso-brochure"],.bhj-entry-content img[src*="tekigaiso-history"],.bhj-entry-content img[src*="tekigaiso-floor-guide"],.bhj-entry-content img[src*="tekigaiso-visitor-info"] { width:auto; max-width:min(100%,720px); max-height:960px; margin-right:auto; margin-left:auto; }
.bhj-entry-content figcaption { color:#788279; font-size:12px; text-align:center; }
.bhj-article-photo--wide img { width:100%; max-width:none; }
.bhj-photo-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 24px; margin:55px 0; }
.bhj-photo-grid figure { min-width:0; margin:0; }
.bhj-photo-grid img { width:100%; height:auto; margin:0; }
.bhj-photo-grid figcaption { padding-top:10px; line-height:1.8; }
.bhj-photo-grid--documents { align-items:start; padding:26px; background:#ebe8df; }
.bhj-photo-grid--documents img { max-height:720px; object-fit:contain; }
.bhj-article-byline { padding-bottom:18px; border-bottom:1px solid #cbd0c9; color:#737f77; font:12px/1.8 "Yu Gothic",sans-serif; letter-spacing:.05em; }
.bhj-article-summary { margin:38px 0 52px; padding:30px 34px; background:#ebe8df; border-left:3px solid var(--gold); }
.bhj-article-summary strong,.bhj-photo-plan strong { display:block; margin-bottom:10px; font-family:"Yu Gothic",sans-serif; letter-spacing:.08em; }
.bhj-article-summary ul { margin:0; padding-left:1.4em; }
.bhj-article-summary li { margin:.35em 0; }
.bhj-interview { margin:30px 0 55px; }
.bhj-interview p { margin-bottom:1.25em; }
.bhj-interview p:nth-child(odd) { margin-top:2em; color:#52635a; }
.bhj-entry-content blockquote { margin:55px 0; padding:30px 40px; border-left:3px solid var(--gold); background:#f0ede5; }
.bhj-entry-content blockquote p { margin:0 0 12px; font-size:23px; line-height:1.8; }
.bhj-entry-content blockquote cite { color:#788279; font:12px/1.6 "Yu Gothic",sans-serif; font-style:normal; }
.bhj-entry-content ol { margin:25px 0 45px; padding-left:1.6em; }
.bhj-entry-content ol li { margin:.8em 0; padding-left:.35em; }
.bhj-photo-plan { margin:60px 0 32px; padding:26px 30px; border:1px solid #bfc6bf; background:#fff; }
.bhj-photo-plan p { margin:0; color:#647168; font-size:14px; }
.bhj-sample-disclosure { margin-top:36px!important; color:#7a857e; font-size:12px; line-height:1.8!important; }
html[lang^="en"] .bhj-article-byline,html[lang^="en"] .bhj-entry-content blockquote cite { font-family:Arial,sans-serif; }
.bhj-specs { margin:20px 0 0; padding:0; border-top:1px solid #abb4ac; }
.bhj-specs>div { display:grid; grid-template-columns:180px 1fr; padding:19px 0; border-bottom:1px solid #cbd0c9; }
.bhj-specs dt { color:var(--gold); font:10px Arial,sans-serif; letter-spacing:.15em; }
.bhj-specs dd { margin:0; }
.bhj-story-nav { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:30px; padding:42px max(6vw,30px); border-top:1px solid #c9cec8; }
.bhj-story-nav>a { display:flex; flex-direction:column; }
.bhj-story-nav>a:nth-child(2) { font:10px Arial,sans-serif; letter-spacing:.18em; }
.bhj-story-nav>a:last-child { text-align:right; align-items:flex-end; }
.bhj-story-nav small { color:var(--gold); font:9px Arial,sans-serif; letter-spacing:.15em; }
.bhj-story-nav span { margin-top:4px; }
.bhj-single-contact { padding:110px 30px; text-align:center; color:#fff; background:var(--ink); }
.bhj-single-contact h2 { margin:0 0 35px; font-size:clamp(32px,4vw,50px); font-weight:400; line-height:1.55; }
.bhj-story-placeholder { display:block; background:linear-gradient(135deg,#7a847d,#203b2e); }
.bhj-journal-archive-grid { width:min(1240px,88vw); margin:0 auto 110px; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:70px 30px; }
.bhj-journal-card .bhj-journal-art { margin-bottom:22px; }
.bhj-journal-card>p:first-of-type { margin:0; color:var(--gold); font:10px Arial,sans-serif; letter-spacing:.18em; }
.bhj-journal-card h2 { margin:8px 0; font-size:23px; font-weight:400; line-height:1.65; }
.bhj-journal-card>p:nth-of-type(2) { margin:0 0 13px; color:#647168; }
.bhj-journal-card time { color:#8a928c; font:10px Arial,sans-serif; letter-spacing:.1em; }
.bhj-journal-single { padding-top:94px; }
.bhj-journal-single-head { width:min(900px,84vw); margin:auto; padding:105px 0 65px; text-align:center; }
.bhj-journal-single-head>p { margin:0 0 20px; color:var(--gold); font:11px Arial,sans-serif; letter-spacing:.2em; }
.bhj-journal-single-head h1 { margin:0 0 20px; font-size:clamp(38px,5vw,66px); font-weight:400; line-height:1.5; }
.bhj-journal-single-head time { color:#849087; font:10px Arial,sans-serif; letter-spacing:.12em; }
.bhj-journal-single-visual { position:relative; width:min(1120px,88vw); aspect-ratio:1.9/1; margin:auto; display:grid; place-items:center; color:#fff; font-size:clamp(80px,12vw,160px); }
.bhj-journal-body { padding-top:90px; }
.bhj-journal-lead { margin:0 0 65px; padding-bottom:65px; border-bottom:1px solid #cbd0c9; font-size:23px; line-height:2; }
.bhj-reveal { opacity:1; transform:none; }
html[lang^="en"] body.bhj-site { font-family:Georgia,"Times New Roman",serif; }
html[lang^="en"] .bhj-hero h1 { line-height:1.2; letter-spacing:.015em; }
html[lang^="en"] .bhj-single-hero h1 { max-width:1080px; font-size:clamp(36px,4.6vw,64px); line-height:1.18; letter-spacing:.01em; }
html[lang^="en"] .bhj-journal-single-head h1 { font-size:clamp(34px,4.2vw,58px); line-height:1.25; }
html[lang^="en"] .bhj-hero-content>p:not(.bhj-eyebrow),html[lang^="en"] .bhj-intro-copy .bhj-lead { letter-spacing:.02em; }
.bhj-js .bhj-reveal { opacity:0; transform:translateY(28px); transition:opacity .8s ease,transform .8s ease; }
.bhj-js .bhj-reveal.is-visible { opacity:1; transform:none; }

@media (max-width:980px) {
  .bhj-header { height:74px; padding:0 22px; }
  .bhj-header.is-scrolled { backdrop-filter:none; }
  body.bhj-menu-open::before { content:""; position:fixed; z-index:998; inset:74px 0 0; min-height:calc(100vh - 74px); min-height:calc(100dvh - 74px); background:#102b20; opacity:1; }
  .bhj-nav { position:fixed; z-index:1001; inset:74px 0 0; width:100%; min-height:calc(100vh - 74px); min-height:calc(100dvh - 74px); display:flex; flex-direction:column; justify-content:center; gap:30px; padding:38px 24px; overflow-y:auto; background-color:#102b20!important; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-15px); transition:opacity .3s ease,transform .3s ease,visibility .3s ease; font-size:16px; }
  .bhj-menu-open .bhj-nav { opacity:1; visibility:visible; pointer-events:auto; transform:none; background-color:#102b20!important; }
  .bhj-menu-open .bhj-header { background:#102b20; }
  .bhj-header-cta { display:none; }
	.bhj-language { margin-left:auto; }
  .bhj-menu { position:relative; z-index:1002; display:block; }
  .bhj-menu-open { height:100dvh; overflow:hidden!important; }
  .bhj-menu-open .bhj-menu span:first-child { transform:translateY(4px) rotate(45deg); }
  .bhj-menu-open .bhj-menu span:last-child { transform:translateY(-4px) rotate(-45deg); }
  .bhj-intro { grid-template-columns:40px 1fr; gap:30px; padding:100px 0; }
  .bhj-intro-copy { grid-column:2; padding-top:0; }
  .bhj-values { grid-template-columns:1fr; gap:60px; }
  .bhj-contact { grid-template-columns:1fr; gap:50px; }
  .bhj-footer-top { grid-template-columns:1fr auto; }
  .bhj-footer-top>p { grid-column:1/-1; }
}
@media (max-width:700px) {
  .bhj-brand b { font-size:13px; }.bhj-brand small { font-size:8px; }.bhj-mark { width:36px;height:36px; }
	.bhj-language { margin-right:8px; }
  .bhj-hero { min-height:690px; }.bhj-hero-content { width:86vw; }.bhj-hero h1 { font-size:39px; }.bhj-hero-content>p:not(.bhj-eyebrow) { font-size:13px;letter-spacing:.07em; }.bhj-hero-actions { align-items:flex-start;flex-direction:column;gap:20px; }
  .bhj-intro { grid-template-columns:1fr; }.bhj-section-no { display:none; }.bhj-intro-copy { grid-column:1; }
  .bhj-featured,.bhj-journal,.bhj-values,.bhj-contact { padding:90px 22px; }
  .bhj-section-head { align-items:flex-start;flex-direction:column;gap:22px;margin-bottom:40px; }.bhj-section-head>p { width:auto; }
  .bhj-story-grid { grid-template-columns:1fr; }.bhj-story:nth-child(2) { margin-top:20px; }.bhj-story-image,.bhj-story:nth-child(2) .bhj-story-image { height:330px; }
  .bhj-value-list li { grid-template-columns:34px 1fr; padding:24px 0; }.bhj-value-list li>p { grid-column:2;margin:0; }
  .bhj-partners { min-height:780px;padding:60px 18px;align-items:flex-end; }.bhj-partners-card { padding:38px 28px; }
  .bhj-journal-grid { grid-template-columns:1fr;gap:50px; }
  .bhj-form-wrap { padding:28px 20px; }.bhj-form-row { grid-template-columns:1fr;gap:0; }
  .bhj-footer-top { display:block; }.bhj-footer-top>a { display:block;margin-top:25px; }.bhj-footer-bottom { align-items:flex-start;flex-direction:column; }.bhj-footer-bottom nav { flex-wrap:wrap;gap:10px 20px; }
  .bhj-archive-main { padding-top:74px; }.bhj-page-hero { padding:80px 22px 65px; }.bhj-filter-row { align-items:flex-start; flex-direction:column; }.bhj-residence-grid { grid-template-columns:1fr; gap:50px; margin-bottom:85px; }
  .bhj-journal-archive-grid { grid-template-columns:1fr; gap:50px; margin-bottom:85px; }.bhj-journal-single { padding-top:74px; }.bhj-journal-single-head { padding:75px 0 45px; }.bhj-journal-single-visual { width:100%; aspect-ratio:1.2/1; }.bhj-journal-body { padding-top:70px; }.bhj-journal-lead { font-size:19px; }
  .bhj-single-hero { min-height:650px; height:84svh; padding:0 22px 55px; }.bhj-single-body { width:88vw; padding:85px 0; }.bhj-single-intro { grid-template-columns:1fr; gap:15px; }.bhj-single-intro>p:last-child { font-size:19px; }.bhj-entry-content { padding:50px 0; font-size:16px; }.bhj-specs>div { grid-template-columns:110px 1fr; }.bhj-story-nav { grid-template-columns:1fr 1fr; }.bhj-story-nav>a:nth-child(2) { grid-row:2; grid-column:1/-1; align-items:center; }.bhj-story-nav>a:last-child { grid-column:2; grid-row:1; }
  .bhj-article-summary,.bhj-photo-plan { padding:24px 20px; }.bhj-entry-content blockquote { margin:42px 0; padding:24px 22px; }.bhj-entry-content blockquote p { font-size:19px; }.bhj-entry-content figure { margin:42px 0; }.bhj-photo-grid { grid-template-columns:1fr; gap:34px; margin:42px 0; }.bhj-photo-grid figure { margin:0; }.bhj-photo-grid--documents { padding:18px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }.bhj-hero-image { animation:none; }.bhj-js .bhj-reveal { opacity:1;transform:none;transition:none; } }

/* Readability: keep supporting text legible on desktop and mobile. */
.bhj-brand small,.bhj-footer-brand small { font-size:12px; letter-spacing:.25em; }
.bhj-nav,.bhj-header-cta { font-size:14px; }
.bhj-language { font-size:12px; }
.bhj-eyebrow,.bhj-label { font-size:13px; letter-spacing:.2em; }
.bhj-button,.bhj-text-link,.bhj-arrow-link { font-size:14px; }
.bhj-scroll { font-size:11px; }
.bhj-section-no { font-size:13px; }
.bhj-story-image span,.bhj-value-list>li>span { font-size:12px; }
.bhj-story-meta>p:first-child,.bhj-journal article>p,
.bhj-residence-card>div>p:first-child,.bhj-journal-card>p:first-of-type { font-size:12px; line-height:1.6; }
.bhj-story-meta a,.bhj-card-link { font-size:12px; line-height:1.6; }
.bhj-value-list small { font-size:14px; line-height:1.6; }
.bhj-journal time,.bhj-journal-card time,.bhj-journal-single-head time { font-size:12px; line-height:1.6; }
.bhj-form label { font-size:14px; }
.bhj-form label em { font-size:11px; }
.bhj-footer-top>a { font-size:12px; }
.bhj-footer-bottom nav { font-size:13px; }
.bhj-footer-bottom small { font-size:11px; line-height:1.6; }
.bhj-filter-row { font-size:13px; line-height:1.7; }
.bhj-pagination .page-numbers { font-size:13px; }
.bhj-single-hero p,.bhj-journal-single-head>p { font-size:13px; line-height:1.6; }
.bhj-entry-content figcaption,.bhj-article-byline,
.bhj-entry-content blockquote cite,.bhj-sample-disclosure { font-size:14px; }
.bhj-specs dt { font-size:12px; }
.bhj-story-nav>a:nth-child(2),.bhj-story-nav small { font-size:12px; line-height:1.6; }

@media (max-width:700px) {
  .bhj-brand b { font-size:14px; }
  .bhj-brand small { font-size:11px; }
  .bhj-hero-content>p:not(.bhj-eyebrow) { font-size:15px; line-height:1.9; }
  .bhj-eyebrow,.bhj-label { font-size:12px; }
  .bhj-language { font-size:12px; }
  .bhj-footer-top>p { font-size:14px; }
  .bhj-footer-bottom small { font-size:12px; }
  .bhj-entry-content img[src*="tekigaiso-"] { max-height:none; }
}
