
/* Editorial type system: related Noto families across Japanese, Chinese and English. */
html{--text:'Noto Sans JP','Yu Gothic',sans-serif;--display:'Noto Serif JP','Yu Mincho',serif;--sans:var(--text);--serif:var(--display)}html[lang^=zh]{--text:'Noto Sans SC','Microsoft YaHei',sans-serif;--display:'Noto Serif SC','Songti SC',serif}html[lang=en]{--text:'Noto Sans',Arial,sans-serif;--display:'Noto Serif',Georgia,serif}
body.editorial{font-family:var(--text);font-size:15px;line-height:1.9;font-weight:400;font-kerning:normal;font-variant-numeric:lining-nums tabular-nums;text-rendering:optimizeLegibility}html[lang] body.editorial h1,html[lang] body.editorial h2,html[lang] body.editorial .lead{font-family:var(--display)!important;font-weight:400;font-synthesis:none}body.editorial h3,body.editorial p,body.editorial a,body.editorial label,body.editorial input,body.editorial select,body.editorial textarea,body.editorial button,body.editorial summary{font-family:var(--text);font-synthesis:none}body.editorial .section{padding:88px 8%}body.editorial .section p{font-size:14px;line-height:2.05;letter-spacing:.015em}body.editorial h2{font-size:clamp(28px,3vw,38px);line-height:1.75;letter-spacing:.025em}body.editorial h3{font-size:21px;font-weight:500;line-height:1.6;letter-spacing:.015em}body.editorial .image-hero-copy{padding-left:8%;padding-right:8%}body.editorial .image-hero h1{font-size:clamp(40px,4.7vw,66px);line-height:1.6;letter-spacing:.035em;margin:24px 0 20px}body.editorial .image-hero-description{font-family:var(--text);font-size:14px;line-height:2;letter-spacing:.025em;max-width:600px;text-shadow:0 1px 10px #0008}body.editorial .eyebrow{font-family:var(--text);font-size:10px;font-weight:500;line-height:1.7;letter-spacing:.14em}body.editorial .brand,body.editorial .brand .brand-name{font-family:'Noto Sans',Arial,sans-serif;font-weight:600;letter-spacing:.1em}body.editorial .brand-company{font-family:var(--text);font-weight:400;letter-spacing:.08em;font-size:8px}body.editorial nav,body.editorial .hero-button,body.editorial .hero-cta,body.editorial .text-link{font-family:var(--text);font-size:13px;letter-spacing:.025em}body.editorial .hero-cta{max-width:360px}body.editorial .hero-button{min-width:220px}body.editorial .service-heading{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:8%}body.editorial .business-card h3{font-family:var(--text);font-size:24px;font-weight:500;line-height:1.55;letter-spacing:.015em}body.editorial .business-card p{line-height:2}body.editorial .vision-text{max-width:560px;padding-top:12px}body.editorial .vision-text .lead{font-size:22px;line-height:1.9;letter-spacing:.025em;margin-bottom:25px}body.editorial .section-title{gap:40px}body.editorial .section-title>div{max-width:60%}body.editorial .topic-grid h2{font-size:26px}body.editorial .topic-grid p{line-height:2.05}body.editorial .phone{font-family:var(--text);font-weight:400;letter-spacing:.045em}body.editorial .company dl>div{grid-template-columns:150px minmax(0,1fr)}body.editorial .company dl{font-family:var(--text);font-size:13px;line-height:2}body.editorial .company dt,body.editorial .company dd{font-size:13px;letter-spacing:.01em}body.editorial footer p,body.editorial .image-disclosure{font-size:11px;line-height:1.9}body.editorial .card-image figcaption,body.editorial .detail-image figcaption,body.editorial .hero-source-note{font-family:var(--text);font-size:10px;font-weight:400;line-height:1.9;letter-spacing:.01em}body.editorial .image-scroll{font-family:var(--text);letter-spacing:.12em;line-height:1.7}body.editorial .editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;margin-top:35px}body.editorial .editorial-grid article{border-top:1px solid var(--line);padding-top:25px}body.editorial .editorial-grid article>span{font-family:var(--text);font-size:11px;color:var(--gold)}body.editorial .faq summary{font-family:var(--text);font-weight:500;font-size:15px;letter-spacing:.01em}body.editorial .form-grid input,body.editorial .form-grid select,body.editorial .form-grid textarea{font-family:var(--text);font-size:16px;line-height:1.7}body.editorial .consent{font-size:13px;line-height:1.9}body.editorial .language-picker select{font-family:var(--text);font-size:12px;letter-spacing:0}html[lang=en] body.editorial .image-hero h1{font-family:var(--display)!important;font-size:clamp(42px,4.8vw,68px);line-height:1.22;letter-spacing:-.025em;max-width:1050px}html[lang=en] body.editorial h2{line-height:1.4;letter-spacing:-.015em}html[lang=en] body.editorial .section p,html[lang=en] body.editorial .image-hero-description{line-height:1.85;letter-spacing:0}html[lang=en] body.editorial .lead{line-height:1.65;letter-spacing:0}html[lang=en] body.editorial h3,html[lang=en] body.editorial .business-card h3{letter-spacing:-.015em}html[lang=en] body.editorial .editorial-grid h3{font-size:20px}html[lang=en] body.editorial nav,html[lang=en] body.editorial .text-link{letter-spacing:0}html[lang^=zh] body.editorial h1,html[lang^=zh] body.editorial h2{letter-spacing:.035em}html[lang^=zh] body.editorial .section p{letter-spacing:.025em}
@media(max-width:1100px){body.editorial .section-title{display:block}body.editorial .section-title>div{max-width:none}body.editorial .company{grid-template-columns:1fr;gap:30px}body.editorial .section-title>p{max-width:600px}body.editorial .business-card h3{font-size:22px}}
@media(max-width:800px){body.editorial .section{padding:58px 7%}body.editorial .section p{font-size:14px;line-height:2}body.editorial .image-hero-copy{padding:110px 7% 100px}body.editorial .image-hero h1,body.editorial .home-image-hero h1{font-size:clamp(30px,8.2vw,40px);line-height:1.65;letter-spacing:.025em}body.editorial .image-hero-description{font-size:13px;line-height:1.95;letter-spacing:.015em;max-width:450px}body.editorial .image-hero .eyebrow{font-size:9px;letter-spacing:.12em}body.editorial .hero-button,body.editorial .hero-cta,body.editorial .text-link{font-size:12px}body.editorial h2{font-size:27px;line-height:1.75}body.editorial .service-heading,body.editorial .editorial-grid{grid-template-columns:1fr;gap:25px}body.editorial .vision-text .lead{font-size:20px;line-height:1.9}body.editorial .business-card h3{font-size:23px}body.editorial .company dl>div{grid-template-columns:90px minmax(0,1fr);gap:15px}body.editorial .company dt,body.editorial .company dd{font-size:12px}body.editorial .brand-company,html[lang=en] body.editorial .brand-company{font-size:6px;letter-spacing:.05em}body.editorial .language-picker select{font-size:11px}body.editorial .faq summary{font-size:14px}body.editorial .contact h2{font-size:32px}body.editorial .topic-grid h2{font-size:25px}html[lang=en] body.editorial .image-hero h1{font-size:clamp(34px,9vw,43px);line-height:1.22;letter-spacing:-.025em}html[lang=en] body.editorial h2{line-height:1.4}html[lang=en] body.editorial .section p{line-height:1.9}}

body.editorial .relationship-section{background:#173b39!important;color:#f4efe3}body.editorial .relationship-section .eyebrow{color:#d7c49d}body.editorial .relationship-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:8%;align-items:start}body.editorial .relationship-intro h2{margin-top:12px}body.editorial .relationship-intro p{color:#e1e6db}body.editorial .relationship-section .editorial-grid article{border-color:#5b7770}body.editorial .relationship-section .editorial-grid article>span{color:#d7c49d}body.editorial .relationship-section .editorial-grid p{color:#d3ded3}body.editorial .continuing-note{border-top:1px solid var(--line)}body.editorial .continuing-note>p:not(.eyebrow){max-width:760px}body.editorial .continuing-note .text-link{max-width:380px}
@media(max-width:800px){body.editorial .relationship-intro{grid-template-columns:1fr;gap:10px}}

/* Service clarity, arrival guidance and compact-screen usability. */
body.editorial .process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;padding:0;margin:38px 0 0}body.editorial .process-grid li{border-top:1px solid var(--line);padding-top:22px;min-width:0}body.editorial .step-number{font-size:12px;color:var(--gold)}body.editorial .process-grid h3{font-size:19px;margin:18px 0 12px}body.editorial .process-grid p{font-size:13px}body.editorial .service-process>.text-link{max-width:380px}body.editorial .preparation-checklist{padding-top:50px;padding-bottom:50px;background:#eeeFE9}body.editorial .preparation-checklist h2{font-size:26px}body.editorial .visit-guide{align-items:start;gap:36px}body.editorial .arrival-card{grid-column:1/-1;border:1px solid var(--line);padding:30px;display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:20px;align-items:start}body.editorial .arrival-card h3{margin:0;font-size:20px}body.editorial .arrival-card p{margin:0}body.editorial .arrival-card .text-link{grid-column:2/-1;margin:0;padding:12px 0;max-width:450px}body.editorial .company dd{overflow-wrap:anywhere}body.editorial a,body.editorial button,body.editorial input,body.editorial select,body.editorial textarea{-webkit-tap-highlight-color:#bda57933}body.editorial button,body.editorial select{cursor:pointer}body.editorial .service-process,body.editorial #inquiry,body.editorial #access{scroll-margin-top:24px}
@media(max-width:800px){body.editorial .process-grid{grid-template-columns:1fr 1fr;gap:28px 22px}body.editorial .process-grid h3{font-size:19px}body.editorial .arrival-card{display:block;padding:24px}body.editorial .arrival-card p{margin:18px 0}body.editorial .arrival-card .text-link{margin-top:12px}body.editorial .image-hero{height:auto;min-height:650px;max-height:none;display:flex;align-items:center}body.editorial .image-hero-copy{position:relative;width:100%;padding-top:124px;padding-bottom:110px}body.editorial .home-image-hero{min-height:740px}body.editorial .hero-actions{max-width:none}body.editorial .hero-button{min-height:48px}body.editorial .hero-cta{min-height:48px}body.editorial #menu{min-width:44px;min-height:44px}body.editorial .language-picker select{min-height:44px;width:88px;padding:8px 4px}body.editorial.dusk-design>header{gap:8px}body.editorial nav.open{max-height:calc(100svh - 160px);overflow:auto}body.editorial nav.open a{display:block;padding:12px 0;min-height:44px}body.editorial nav.open .nav-contact{padding:16px}body.editorial .form-grid{gap:24px}body.editorial .form-grid input,body.editorial .form-grid select{min-height:48px}body.editorial .form-grid textarea{min-height:170px}body.editorial .consent{display:flex;align-items:flex-start;gap:12px}body.editorial .consent input{width:20px;height:20px;min-height:20px;flex-shrink:0}body.editorial .submit-inquiry{min-height:52px}body.editorial .company dl>div{grid-template-columns:1fr;gap:6px}body.editorial .company dd{font-size:13px}body.editorial .image-scroll{bottom:28px}body.editorial .preparation-checklist{padding-top:36px;padding-bottom:36px}html[lang=en] body.editorial .image-hero h1{font-size:clamp(30px,8.5vw,40px);overflow-wrap:normal}body.editorial .mobile-contact a{min-height:58px;padding:17px 8px}}
@media(max-width:360px){body.editorial .process-grid{grid-template-columns:1fr}body.editorial .brand{gap:5px}body.editorial.dusk-design>header .brand{font-size:18px}body.editorial .language-picker{margin-left:4px}body.editorial #menu{margin-left:4px}}

body.editorial .hero-sales{background-position:62% center}body.editorial .hero-rental{background-position:60% center}@media(max-width:800px){body.editorial .hero-sales{background-position:65% center}body.editorial .hero-rental{background-position:62% center}}
@media(max-width:800px){html[lang=ja] body.editorial .hero-about h1{font-size:clamp(24px,7.1vw,29px);letter-spacing:.01em}}

body.editorial .hero-management{background-position:62% center}@media(max-width:800px){body.editorial .hero-management{background-position:65% center}}

body.editorial .president-message{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:9%;background:#f0eee6;border-top:1px solid var(--line)}body.editorial .message-heading h2{font-size:clamp(27px,2.8vw,36px);line-height:1.7}body.editorial .message-body{max-width:700px}body.editorial .message-body>p{margin:0 0 25px}body.editorial .message-body .message-signature{border-top:1px solid var(--line);margin:36px 0 0;padding-top:24px;line-height:2.2;font-weight:500}html[lang=en] body.editorial .message-heading h2{line-height:1.35}@media(max-width:800px){body.editorial .president-message{grid-template-columns:1fr;gap:24px}body.editorial .message-heading h2{font-size:27px}body.editorial .message-body>p{margin-bottom:22px}}

/* iOS-safe: fixed backdrop is a direct child of body, with content covering it. */
@media(max-width:800px){
 body.editorial.mobile-fixed-home{isolation:isolate}
 body.editorial.mobile-fixed-home .home-viewport-background{position:fixed;top:0;left:0;width:100%;background-size:cover;background-position:58% center;background-repeat:no-repeat;background-color:#132532;z-index:0;pointer-events:none}
 body.editorial.mobile-fixed-home main{position:relative;z-index:1}
 body.editorial.mobile-fixed-home .home-image-hero{background:none!important;isolation:auto;clip-path:none;overflow:visible}
 body.editorial.mobile-fixed-home .trust-strip,body.editorial.mobile-fixed-home .vision{background:var(--paper);position:relative}
 body.editorial.mobile-fixed-home footer{position:relative;z-index:1;background:var(--paper)}
}
@media(min-width:801px){.home-viewport-background{display:none}}

body.editorial .compact-related-card h3{margin-bottom:24px}body.editorial .compact-related-card .card-bottom{margin-top:0}
