@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap');
:root{--wine:#641e2a;--ink:#302e2b;--muted:#736f68;--paper:#f8f7f2;--sand:#eee9de;--line:#d8d4cb;--font:'Noto Sans JP',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/2 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}a:hover{color:var(--wine)}img{max-width:100%;display:block}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-weight:500;line-height:1.65;letter-spacing:.045em}h2{font-size:clamp(26px,2.6vw,40px)}p{line-height:2.05}.skip{position:absolute;left:20px;top:-100px;background:white;padding:12px;z-index:30}.skip:focus{top:10px}.header{padding:28px 5%;min-height:115px;display:flex;justify-content:space-between;align-items:center;gap:35px}.brand{flex-shrink:0}.wordmark-image{width:300px;height:auto;mix-blend-mode:multiply}.nav{display:flex;gap:29px;align-items:center;font-size:14px;font-weight:500}.nav a{position:relative;padding:5px 0;white-space:nowrap}.nav a[aria-current=page]:after{content:'';position:absolute;height:2px;left:0;right:0;bottom:-6px;background:var(--wine)}.menu-toggle{display:none;background:none;border:0;color:var(--wine);padding:10px 0;font-size:13px;gap:12px;align-items:center}.menu-toggle i{display:block;width:22px;height:10px;border-top:1px solid;border-bottom:1px solid}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.14em;color:var(--wine);margin-bottom:28px}.section{padding:105px 7.6%}.textlink{display:inline-flex;align-items:center;justify-content:space-between;gap:64px;min-width:180px;font-size:14px;font-weight:500;border-bottom:1px solid;padding:14px 0 12px;color:var(--wine)}.textlink>span:last-child{font-size:21px;line-height:1;transition:transform .2s}.textlink:hover>span:last-child{transform:translate(3px,-3px)}.breadcrumb{font-size:12px;color:var(--muted);letter-spacing:.02em;margin-bottom:45px}.breadcrumb span{padding:0 12px;color:#a39d92}
.home-hero{display:grid;grid-template-columns:43% 57%;position:relative;padding:18px 4.5% 74px 7.6%;gap:0}.hero-copy{padding:60px 25px 0 0;align-self:center;position:relative;z-index:1}.hero-copy h1{font-size:clamp(35px,4.3vw,64px);font-weight:500;line-height:1.6;letter-spacing:.035em;color:var(--wine);white-space:nowrap}.hero-copy .eyebrow{margin-bottom:28px}.keep{white-space:nowrap}.hero-intro{font-size:16px;margin:30px 0 15px;line-height:2.15}.hero-landscape{height:660px;position:relative;margin-left:18px;align-self:center}.hero-landscape img{height:100%;width:100%;object-fit:cover;object-position:60% 50%}.hero-landscape figcaption{position:absolute;right:24px;bottom:22px;color:white;writing-mode:vertical-rl;text-shadow:0 1px 5px #000;letter-spacing:.15em;font-size:13px}.hero-side{position:absolute;bottom:24px;left:7.6%;color:var(--muted);font-size:12px;letter-spacing:.19em}.intro-section{display:grid;grid-template-columns:56% 44%;padding:78px 7.6% 112px 0;align-items:center}.intro-photo{padding-right:8%}.intro-photo img{width:100%;aspect-ratio:1.39;object-fit:cover;object-position:50%}.image-caption{font-size:12px;color:var(--muted);padding:12px 0 0 13.5%;letter-spacing:.035em}.intro-story{padding:24px 0 15px 12%}.intro-story h2{margin-bottom:28px}.intro-story p:not(.eyebrow){font-size:16px;margin-bottom:20px}.intro-story .textlink{margin-top:5px}.services-section{border-top:1px solid var(--line);padding-top:87px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:55px}.section-heading .eyebrow{margin-bottom:16px}.section-heading>p{font-size:16px;color:var(--muted);padding-bottom:10px}.service-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:52px 30px}.service-card{grid-column:span 2}.service-card:nth-child(-n+2){grid-column:span 3}.service-card:nth-child(2){padding-top:55px}.service-card-photo{position:relative;overflow:hidden;aspect-ratio:1.48;background:var(--sand)}.service-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.service-card:hover img{transform:scale(1.025)}.service-number{position:absolute;bottom:0;left:0;background:var(--paper);padding:8px 18px 0 0;font-size:14px;color:var(--wine)}.service-scene{font-size:14px;color:var(--muted);margin:20px 0 7px}.service-card h3{font-size:21px;display:flex;justify-content:space-between;align-items:baseline;gap:16px}.service-card h3 span{font-size:24px;color:var(--wine);flex-shrink:0}.service-real-estate h3{font-size:19px}.local-story{padding:87px 13% 100px;background:var(--wine);color:#f5efdf;display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:center}.local-story .eyebrow{color:#d6bfb6}.local-story h2{font-size:clamp(33px,3.4vw,49px);line-height:1.85}.local-copy{padding-top:40px}.local-copy p{font-size:16px;line-height:2.15;margin:0 0 24px}.local-copy .textlink{color:#f5efdf}.case-section .section-heading{margin-bottom:35px}.empty-case{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0;display:flex;justify-content:space-between;gap:24px}.empty-case p{font-size:16px}.empty-case span{font-size:14px;color:var(--muted)}
.footer{background:var(--sand);padding:62px 7.6% 24px}.footer-statement{display:flex;justify-content:space-between;align-items:flex-end;padding-bottom:52px;border-bottom:1px solid #cdc6b7;color:var(--wine)}.footer-statement p{font-size:31px;font-weight:500;letter-spacing:.06em;line-height:1.7}.footer-statement>span{font-size:12px;letter-spacing:.17em}.footer-main{display:flex;align-items:center;justify-content:space-between;padding:42px 0;gap:30px}.footer-links{display:flex;gap:28px;font-size:14px}.footer-bottom{display:flex;justify-content:space-between;font-size:12px;gap:20px;color:#686257}.footer-bottom small{font-size:12px}.photo-credits{font-size:12px;color:#686257;margin-top:22px}.photo-credits summary{cursor:pointer;display:inline-block;border-bottom:1px solid #b5afa4}.photo-credits ul{padding-left:18px}.photo-credits a{text-decoration:underline;text-underline-offset:3px}.page-title{padding:36px 7.6% 65px}.page-title h1{color:var(--wine);font-size:clamp(30px,4.3vw,55px)}.page-title .eyebrow{margin-bottom:18px}.page-title .lead{margin-top:22px;font-size:19px}.services-overview{padding-top:10px}.service-feature{display:grid;grid-template-columns:55% 1fr;gap:7%;align-items:center;margin-bottom:105px}.service-feature:nth-child(even){grid-template-columns:1fr 55%}.service-feature:nth-child(even) .feature-image{order:2}.service-feature:last-child{margin-bottom:0}.feature-image img{width:100%;aspect-ratio:1.23;object-fit:cover}.feature-copy .eyebrow{font-size:12px;letter-spacing:.06em;margin-bottom:20px}.feature-copy h2{font-size:27px;color:var(--wine)}.feature-lead{font-size:22px;line-height:1.75;margin:25px 0 20px}.feature-copy>p:not(.eyebrow,.feature-lead){font-size:16px}.feature-copy .textlink{margin-top:20px}
.service-title{padding:36px 4.5% 0 7.6%}.service-hero-grid{display:grid;grid-template-columns:41% 59%;align-items:center}.service-hero-copy{padding:35px 32px 45px 0}.service-hero-copy h1{font-size:clamp(24px,2.2vw,34px);color:var(--wine)}.service-hero-copy .eyebrow{margin-bottom:24px;font-size:12px;letter-spacing:.11em}.service-catch{font-size:clamp(26px,3vw,43px);line-height:1.8;font-weight:500;letter-spacing:.03em;margin-top:40px}.audience{font-size:14px;color:var(--muted);margin-top:28px}.service-hero-grid figure{position:relative}.service-hero-grid figure>img{width:100%;height:520px;object-fit:cover}.service-hero-grid figcaption{font-size:12px;color:var(--muted);position:absolute;bottom:-27px;right:0}.service-intro{display:grid;grid-template-columns:34% 1fr;gap:6%;padding-top:95px;padding-bottom:68px;align-items:start}.service-intro .eyebrow{padding-top:12px}.service-intro h2{font-size:27px;margin-bottom:24px}.service-intro>div p{max-width:680px;line-height:2}.service-body{background:var(--sand);display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:74px;padding-bottom:78px}.service-body h2{font-size:29px}.service-situations ul{padding:0;list-style:none;margin:26px 0 0}.service-situations li{padding:14px 0 14px 22px;position:relative;border-bottom:1px solid #d8d0c2;font-size:16px}.service-situations li:before{content:'';position:absolute;left:0;top:29px;width:5px;height:5px;background:var(--wine)}.service-support ol{list-style:none;margin:24px 0;padding:0}.service-support li{display:flex;align-items:baseline;gap:20px;padding:15px 0;border-bottom:1px solid #d8d0c2}.service-support li>span{font-size:12px;color:var(--wine)}.service-support li p{font-size:16px}.notice{font-size:14px;line-height:1.95;color:var(--muted)}.process-section{padding-top:75px;padding-bottom:75px}.process-section .section-heading{margin-bottom:35px}.process-section h2{font-size:30px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px;padding:0;list-style:none;counter-reset:step}.steps li{border-top:1px solid var(--wine);padding-top:19px;counter-increment:step}.steps li:before{content:'0' counter(step);font-size:12px;color:var(--wine)}.steps h3{font-size:19px;margin:14px 0 10px}.steps p{font-size:16px;color:var(--muted)}.source-link{font-size:12px;color:var(--muted);margin-top:45px}.source-link a{text-decoration:underline;text-underline-offset:4px}.service-bottom{border-top:1px solid var(--line);padding-top:25px;margin-top:35px;display:flex;justify-content:space-between;gap:30px}
.about-banner{margin:0 7.6%;height:550px}.about-banner img{width:100%;height:100%;object-fit:cover;object-position:center 42%}.about-intro{display:grid;grid-template-columns:1fr 1.6fr;gap:8%;padding-bottom:80px}.about-intro .eyebrow{padding-top:14px}.about-intro h2{margin-bottom:30px}.about-intro p:not(.eyebrow){margin-bottom:20px}.office-section{border-top:1px solid var(--line);padding-top:75px;display:grid;grid-template-columns:1fr 1.6fr;gap:8%}.office-table{margin:0 0 30px}.office-table>div{display:grid;grid-template-columns:150px 1fr;border-bottom:1px solid var(--line);padding:23px 0;gap:20px}.office-table dt{font-size:14px;color:var(--muted)}.office-table dd{margin:0;font-size:16px}.message-head{padding:36px 10% 0 7.6%}.message-hero{display:grid;grid-template-columns:1.18fr 1fr;gap:5%;align-items:center}.message-hero figure{height:650px;overflow:hidden;background:#d5dcdb}.message-hero img{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.message-hero-copy h1{font-size:clamp(32px,3.7vw,52px);line-height:1.8;color:var(--wine)}.message-hero-copy>p:not(.eyebrow){margin-top:35px;font-size:14px;color:var(--muted)}.message-story{display:grid;grid-template-columns:1fr 1.5fr;gap:12%;padding-right:13%;padding-top:100px}.message-story aside h2{font-size:27px}.message-text p{margin-bottom:28px;line-height:2.25}.message-text h2{font-size:30px;margin:45px 0 28px;color:var(--wine)}.message-closing{margin:0 13% 100px 27%}.message-closing img{aspect-ratio:1.7;object-fit:cover;width:100%}.message-closing figcaption{font-size:12px;color:var(--muted);margin-top:15px}.case-feature{padding-top:0;display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center}.case-feature img{width:100%;aspect-ratio:1.15;object-fit:cover}.case-empty h2{font-size:28px;margin-bottom:24px}.case-empty p:not(.eyebrow){font-size:16px}.case-empty .textlink{margin-top:25px}.narrow{max-width:1060px;margin:auto;padding-top:25px}.content>p{margin-bottom:32px}.policy-block{padding:30px 0;border-top:1px solid var(--line)}.policy-block h2{font-size:22px;margin-bottom:16px}.policy-block p{font-size:16px}.content img{max-width:100%;height:auto}.case-posts{border-top:1px solid var(--line)}.case-post{display:block;padding:26px 0;border-bottom:1px solid var(--line)}.case-post time{font-size:12px;color:var(--muted)}.case-post h2,.case-post h3{font-size:22px;margin:6px 0}.case-post p{font-size:14px;color:var(--muted)}.pagination{margin-top:35px}.page-numbers{padding:8px 15px}.page-numbers.current{background:var(--wine);color:white}
@media(min-width:1600px){.home-hero{padding-left:max(7.6%,calc((100% - 1400px)/2));padding-right:max(4.5%,calc((100% - 1500px)/2))}.section{padding-left:max(7.6%,calc((100% - 1400px)/2));padding-right:max(7.6%,calc((100% - 1400px)/2))}.hero-landscape{height:750px}.hero-copy h1{font-size:67px}}
@media(max-width:1100px){.header{padding:24px 4%;gap:20px}.wordmark-image{width:250px}.nav{gap:20px;font-size:14px}.hero-landscape{height:570px}.hero-copy{padding-top:20px}.hero-copy h1{font-size:4.2vw}.intro-story{padding-left:6%}.service-card h3{font-size:18px}.service-real-estate h3{font-size:17px}.service-grid{gap:40px 24px}.service-hero-grid{grid-template-columns:44% 56%}.service-hero-grid figure>img{height:430px}.service-catch{font-size:29px}.service-hero-copy h1{font-size:24px}.feature-copy h2{font-size:24px}.message-hero figure{height:550px}.message-hero-copy h1{font-size:38px}.footer-links{gap:18px;font-size:14px}.empty-case{display:block}.empty-case span{display:block;margin-top:8px}}
@media(max-width:760px){.header{padding:21px 6%;min-height:90px;flex-wrap:wrap;gap:0}.wordmark-image{width:235px}.menu-toggle{display:flex}.nav{display:none;flex-direction:column;align-items:stretch;width:100%;padding-top:22px;gap:0;font-size:15px}.nav.is-open{display:flex}.nav a{padding:12px 0;border-top:1px solid var(--line)}.nav a[aria-current=page]:after{display:none}.home-hero{grid-template-columns:1fr;padding:16px 0 50px;gap:32px}.hero-copy{padding:12px 7.5% 0}.hero-copy h1{font-size:clamp(34px,8vw,53px);line-height:1.6}.hero-copy .eyebrow{font-size:12px;margin-bottom:21px}.hero-intro{margin-top:22px}.hero-copy .textlink{margin-top:0}.hero-landscape{height:auto;margin:0 0 0 7.5%;aspect-ratio:1.2}.hero-landscape img{object-position:60% 50%}.hero-landscape figcaption{right:16px;bottom:18px;font-size:12px}.hero-side{bottom:10px;font-size:12px}.intro-section{grid-template-columns:1fr;padding:50px 0 62px}.intro-photo{padding:0 7.5% 0 0}.intro-photo img{aspect-ratio:1.35}.image-caption{padding-left:8%;font-size:12px}.intro-story{padding:45px 7.5% 0}.intro-story h2{font-size:31px}.eyebrow{margin-bottom:22px;font-size:12px}.section{padding:60px 7.5%}.section-heading{display:block;margin-bottom:34px}.section-heading h2{font-size:31px}.section-heading>p{margin-top:24px}.section-heading .textlink{margin-top:20px}.service-grid{grid-template-columns:1fr;gap:39px}.service-card,.service-card:nth-child(-n+2){grid-column:auto}.service-card:nth-child(2){padding-top:0}.service-card-photo{aspect-ratio:1.55}.service-scene{font-size:14px;margin-top:16px}.service-card h3,.service-real-estate h3{font-size:22px}.service-card:nth-child(even){margin-left:24px}.service-card:nth-child(odd){margin-right:24px}.local-story{grid-template-columns:1fr;padding:58px 7.5%;gap:25px}.local-story h2{font-size:36px;line-height:1.75}.local-copy{padding-top:10px;padding-left:13%}.empty-case{padding:23px 0}.empty-case span{font-size:14px}.footer{padding:40px 7.5% 25px}.footer-statement{display:block;padding-bottom:30px}.footer-statement p{font-size:27px}.footer-statement>span{display:block;margin-top:20px;font-size:12px}.footer-main{display:block;padding:32px 0}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px;font-size:14px}.footer-bottom{display:block}.footer-bottom small{display:block;margin-top:16px;font-size:12px}.photo-credits{font-size:12px}.page-title{padding:23px 7.5% 42px}.breadcrumb{font-size:12px;margin-bottom:33px;line-height:1.8}.breadcrumb span{padding:0 7px}.page-title h1{font-size:34px}.page-title .lead{font-size:16px;margin-top:18px}.services-overview{padding-top:0}.service-feature,.service-feature:nth-child(even){grid-template-columns:1fr;gap:25px;margin-bottom:65px}.service-feature:nth-child(even) .feature-image{order:0}.feature-image img{aspect-ratio:1.4}.feature-copy h2{font-size:25px}.feature-lead{font-size:24px;margin-top:20px}.service-title{padding:23px 0 0}.service-title>.breadcrumb{padding:0 7.5%}.service-hero-grid{grid-template-columns:1fr}.service-hero-copy{padding:0 7.5% 33px}.service-hero-copy .eyebrow{margin-bottom:15px;font-size:12px}.service-hero-copy h1{font-size:24px}.service-catch{font-size:32px;margin-top:24px;line-height:1.7}.audience{font-size:14px;margin-top:22px}.service-hero-grid figure{margin-left:7.5%}.service-hero-grid figure>img{height:auto;aspect-ratio:1.4}.service-hero-grid figcaption{right:7.5%;bottom:-25px;font-size:12px}.service-intro{grid-template-columns:1fr;gap:0;padding-top:70px;padding-bottom:44px}.service-intro h2{font-size:24px}.service-intro .eyebrow{padding-top:0}.service-body{grid-template-columns:1fr;gap:42px}.service-body h2{font-size:27px}.service-body .eyebrow{margin-bottom:16px}.steps{grid-template-columns:1fr;gap:24px}.steps h3{font-size:20px;display:inline-block;margin:0 0 8px 20px}.steps li{padding-top:17px}.process-section h2{font-size:27px}.source-link{font-size:12px;margin-top:28px}.service-bottom{flex-direction:column;gap:12px}.service-bottom .textlink{width:100%}.about-banner{margin:0 0 0 7.5%;height:350px}.about-banner img{object-position:60% 40%}.about-intro,.office-section{grid-template-columns:1fr;gap:24px}.about-intro .eyebrow{padding:0}.office-section{padding-top:45px}.office-table>div{grid-template-columns:1fr;gap:8px;padding:22px 0}.office-table dt{font-size:14px}.message-head{padding:23px 7.5% 0}.message-hero{grid-template-columns:1fr;gap:34px}.message-hero-copy h1{font-size:36px;line-height:1.75}.message-hero-copy>p:not(.eyebrow){font-size:14px;margin-top:22px}.message-hero figure{height:auto;aspect-ratio:.77;margin-left:13%}.message-hero img{object-position:50% 28%}.message-story{grid-template-columns:1fr;gap:37px;padding-top:55px;padding-right:7.5%}.message-story aside h2{font-size:27px}.message-text p{line-height:2.1;margin-bottom:24px}.message-text h2{font-size:26px;margin-top:35px}.message-closing{margin:0 0 55px 7.5%}.message-closing img{aspect-ratio:1.35}.message-closing figcaption{font-size:12px;padding-right:7.5%}.case-feature{grid-template-columns:1fr;gap:35px;padding-top:0}.case-feature img{aspect-ratio:1.4}.case-empty h2{font-size:27px}.narrow{padding-top:0}.policy-block h2{font-size:21px}}
@media(max-width:370px){.wordmark-image{width:202px}.menu-toggle{font-size:12px;gap:8px}.hero-copy h1{font-size:32px}.service-card h3,.service-real-estate h3{font-size:20px}.service-catch{font-size:29px}.service-hero-copy h1{font-size:21px}.message-hero-copy h1{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.message-hero img{object-position:50% 12%}.caption{font-size:13px;color:var(--muted);margin-top:20px}.related{margin-top:45px}.nav .sub-menu{display:flex;gap:20px}
.hero-landscape img{object-position:52% 50%}.hero-landscape .sign-caption{right:26px;top:27px;bottom:auto;display:flex;flex-direction:column;gap:8px;writing-mode:vertical-rl;text-shadow:none;letter-spacing:.13em;font-size:18px;font-weight:500;line-height:1.5}.sign-caption span{display:block;background:var(--wine);padding:12px 8px;align-self:flex-start}.hero-landscape{border-bottom:2px solid var(--wine)}@media(max-width:760px){.hero-landscape img{object-position:50% 50%}.hero-landscape .sign-caption{right:17px;top:18px;font-size:15px;gap:6px}.sign-caption span{padding:10px 6px}}

[hidden]{display:none!important}.nav{gap:22px}.hero-copy h1{font-size:clamp(32px,3.6vw,56px)}.overview-body{margin-top:24px}.consultation-banner{padding:65px 7.6%;background:var(--sand);display:flex;align-items:center;justify-content:space-between;gap:35px}.consultation-banner h2{color:var(--wine);margin-bottom:12px}.contact-section{padding-top:20px;display:grid;grid-template-columns:1fr 1.65fr;gap:10%}.contact-intro h2{font-size:30px;color:var(--wine);margin-bottom:25px}.contact-intro>p:not(.eyebrow){font-size:14px}.contact-flow{list-style:none;padding:0;display:flex;gap:22px;margin:40px 0}.contact-flow li{color:var(--muted);font-size:13px;padding-bottom:8px;border-bottom:1px solid var(--line)}.contact-flow .current{color:var(--wine);border-bottom:2px solid var(--wine)}.preview-notice{background:var(--sand);padding:20px 24px;font-size:13px;margin-bottom:35px}.required-guide{font-size:13px;margin-bottom:25px}.required,.required-guide>span{font-size:11px;color:var(--wine);border:1px solid #b68b90;padding:2px 6px;vertical-align:middle;margin-left:8px}.form-row{padding:22px 0;border:0;border-top:1px solid var(--line);margin:0;min-width:0}.form-row>label,.form-row>legend{display:block;font-size:15px;font-weight:500;margin-bottom:12px}.form-row small{color:var(--muted);font-size:12px;margin-left:10px}.form-row input:not([type=radio]),.form-row textarea{width:100%;background:#fff;border:1px solid var(--line);padding:14px 16px;font:inherit;font-size:16px;border-radius:0;color:var(--ink)}.form-row input:focus,.form-row textarea:focus{outline:2px solid var(--wine);outline-offset:2px}.form-row textarea{resize:vertical}.field-help{font-size:12px;color:var(--muted);margin-top:8px}.consultation-options{padding-top:22px}.consultation-options legend{float:left;width:100%}.radio-grid{clear:both;display:grid;grid-template-columns:1fr 1fr;gap:10px}.radio-grid label{display:flex;align-items:center;gap:10px;border:1px solid var(--line);padding:12px;font-size:13px;background:white;cursor:pointer}.radio-grid label:has(input:checked){border-color:var(--wine);background:#f3e9e8}.radio-grid input,.consent input{accent-color:var(--wine);width:17px;height:17px;flex-shrink:0}.honey-field{position:absolute;left:-10000px}.consent{display:flex;align-items:center;gap:12px;font-size:13px;margin:22px 0 30px}.consent a{text-decoration:underline;text-underline-offset:4px}.form-actions{display:flex;gap:20px}.button-primary,.button-secondary{border:1px solid var(--wine);padding:17px 24px;cursor:pointer;font-size:14px;min-height:60px}.button-primary{background:var(--wine);color:white;display:flex;align-items:center;justify-content:space-between;gap:35px;flex:1}.button-secondary{background:transparent;color:var(--wine)}button:disabled{opacity:.5;cursor:wait}#contact-status{color:var(--wine);font-size:14px;margin-top:20px}.confirmation-list{margin:25px 0 35px}.confirmation-list>div{padding:18px 0;border-top:1px solid var(--line)}.confirmation-list dt{font-size:12px;color:var(--muted);margin-bottom:8px}.confirmation-list dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.contact-complete{padding:30px 0}.contact-complete h2,#contact-confirmation h2{font-size:25px;color:var(--wine);margin-bottom:20px}.contact-complete .textlink{margin-top:30px}@media(min-width:1600px){.hero-copy h1{font-size:56px}}@media(max-width:1100px){.nav{gap:14px;font-size:13px}}@media(max-width:760px){.hero-copy h1{font-size:clamp(30px,7.7vw,50px)}.contact-section{grid-template-columns:1fr;gap:35px}.contact-intro h2{font-size:28px}.contact-flow{margin:25px 0 0}.radio-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.button-primary{width:100%}.consultation-banner{padding:45px 7.5%;display:block}.consultation-banner h2{font-size:28px}.consultation-banner .textlink{margin-top:22px}.nav{font-size:15px}}

/* Philosophy and the practical information that leads to a consultation. */
.philosophy-section{padding-top:90px;padding-bottom:40px;display:grid;grid-template-columns:1fr 1.1fr;gap:50px 8%;border-top:1px solid var(--line)}.philosophy-heading h2{color:var(--wine);font-size:clamp(32px,3.3vw,48px);line-height:1.8}.philosophy-lead{font-size:21px;margin-top:30px}.philosophy-text{padding-top:50px}.philosophy-text p{margin-bottom:24px;line-height:2.2}.philosophy-art{grid-column:1/-1;margin:0 -4%;mix-blend-mode:multiply}.philosophy-art img{width:100%;height:auto}.philosophy-art figcaption{font-size:12px;text-align:right;color:var(--muted);padding-right:4%}.promise-section{padding-top:40px;padding-bottom:85px}.promise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.promise-grid article{border-top:1px solid var(--wine);padding-top:20px}.promise-grid span,.points-grid span{color:var(--wine);font-size:12px}.promise-grid h3{font-size:23px;margin:14px 0 18px}.promise-grid p{font-size:15px}.hero-copy .textlink+.textlink{margin-top:4px}.service-hero-copy .textlink{font-size:14px;margin-top:24px}.page-index{display:flex;flex-wrap:wrap;gap:14px 30px;padding:52px 7.6% 20px;font-size:13px}.page-index a{border-bottom:1px solid var(--line)}section[id]{scroll-margin-top:25px}.service-detail{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.5fr;gap:9%;padding-top:65px;padding-bottom:65px}.detail-heading h2{font-size:31px;color:var(--wine);margin-bottom:26px}.detail-heading>p:last-child{font-size:15px;color:var(--muted)}.topic-rows article{display:grid;grid-template-columns:35px 1fr;gap:20px;border-top:1px solid var(--line);padding:25px 0}.topic-rows article:last-child{border-bottom:1px solid var(--line)}.row-number{color:var(--wine);font-size:12px;padding-top:6px}.topic-rows h3{font-size:22px;margin-bottom:12px}.topic-rows p{font-size:15px}.service-editorial{display:grid;grid-template-columns:1.05fr 1fr;gap:8%;align-items:center;background:var(--sand);padding-top:70px;padding-bottom:70px}.service-editorial figure img{width:100%;aspect-ratio:1.25;object-fit:cover}.service-editorial figure figcaption{font-size:12px;color:var(--muted);margin-top:12px}.service-editorial h2{font-size:32px;margin-bottom:24px}.service-editorial .textlink{margin-top:15px}.support-list{padding-left:20px;margin:0 0 24px}.support-list li{padding:8px 0;font-size:16px}.points-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 8%}.points-grid article{border-top:1px solid var(--line);padding-top:18px}.points-grid h3{font-size:22px;margin:12px 0 15px}.points-grid p{font-size:15px}.consultation-banner.compact{background:var(--wine);color:var(--paper)}.consultation-banner.compact h2,.consultation-banner.compact .eyebrow,.consultation-banner.compact .textlink{color:var(--paper)}.consultation-banner p{font-size:15px}.steps-four{grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.steps-four h3{font-size:18px;letter-spacing:0}.steps-four p{font-size:15px}.process-notice{margin-top:30px}.preparation-section{background:var(--sand);display:grid;grid-template-columns:1fr 1fr;gap:8%}.preparation-section h2{font-size:30px;margin-bottom:22px}.preparation-section p{font-size:15px}.preparation-section ul{list-style:none;margin:0;padding:0}.preparation-section li{border-bottom:1px solid var(--line);padding:16px 0 16px 24px;position:relative;font-size:15px}.preparation-section li:before{content:'✓';position:absolute;left:0;color:var(--wine)}.faq-section details{border-top:1px solid var(--line)}.faq-section details:last-of-type{border-bottom:1px solid var(--line)}.faq-section summary{cursor:pointer;list-style:none;font-size:18px;position:relative;padding:24px 40px 24px 0;display:flex;gap:20px;align-items:baseline}.faq-section summary::-webkit-details-marker{display:none}.faq-section summary:after{content:'＋';position:absolute;right:4px;color:var(--wine)}.faq-section details[open] summary:after{content:'−'}.faq-section summary>span{font-size:14px;color:var(--wine);flex-shrink:0}.faq-section details>div{padding:0 45px 25px 39px;max-width:950px;font-size:15px}.service-liquor .service-card-photo img{object-position:center 68%}
@media(max-width:1100px){.steps-four{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.philosophy-section{gap:35px 6%}.service-editorial h2{font-size:28px}}
@media(max-width:760px){.philosophy-section{grid-template-columns:1fr;gap:15px;padding-top:55px;padding-bottom:25px}.philosophy-heading h2{font-size:33px}.philosophy-lead{font-size:19px;margin-top:22px}.philosophy-text{padding-top:12px}.philosophy-text p{font-size:15px}.philosophy-text br{display:none}.philosophy-art{margin:0 -5%;grid-column:auto}.philosophy-art figcaption{font-size:11px}.promise-section{padding-top:25px}.promise-grid{grid-template-columns:1fr;gap:30px}.promise-grid h3{font-size:23px}.page-index{padding:40px 7.5% 0;gap:12px 20px;font-size:12px}.service-detail{grid-template-columns:1fr;gap:24px}.detail-heading h2{font-size:28px}.topic-rows h3{font-size:21px}.topic-rows article{gap:12px;grid-template-columns:25px 1fr}.service-editorial{grid-template-columns:1fr;gap:35px}.service-editorial h2{font-size:29px}.points-grid{grid-template-columns:1fr;gap:28px}.points-grid h3{font-size:21px}.steps-four{grid-template-columns:1fr;gap:26px}.steps-four h3{font-size:19px}.preparation-section{grid-template-columns:1fr;gap:25px}.preparation-section h2{font-size:28px}.faq-section summary{font-size:16px;gap:12px;padding:20px 32px 20px 0}.faq-section details>div{padding:0 18px 22px 29px}.consultation-banner.compact h2{font-size:27px}}

/* Service navigation: move in softly, remain usable by keyboard and touch. */
.header{position:relative;z-index:20}.nav-services{position:relative}.nav-service-heading{display:flex;align-items:center;gap:3px}.service-menu-toggle{border:0;background:transparent;color:var(--wine);width:24px;height:32px;cursor:pointer;padding:0}.service-menu-toggle span{display:block;transition:transform .2s}.service-submenu{position:absolute;top:100%;left:-25px;width:290px;background:var(--paper);border-top:2px solid var(--wine);box-shadow:0 12px 30px #302e2b16;padding:16px 23px;display:flex;flex-direction:column;gap:0;opacity:0;visibility:hidden;transform:translateY(-9px);transition:opacity .2s ease,transform .24s ease,visibility .24s;pointer-events:none}.service-submenu:before{content:'';position:absolute;top:-20px;left:0;width:100%;height:20px}.service-submenu a{white-space:normal;padding:12px 0;font-size:14px;border-bottom:1px solid var(--line)}.service-submenu a:last-child{border-bottom:0}.service-submenu a:after{display:none!important}.nav-services.is-open>.service-submenu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.nav-services.is-open .service-menu-toggle span{transform:rotate(180deg)}.nav-services.is-dismissed>.service-submenu{opacity:0;visibility:hidden;pointer-events:none}.overview-text,.overview-text:nth-child(even){grid-template-columns:22% 1fr;border-top:1px solid var(--line);padding-top:50px;margin-bottom:60px;align-items:start}.overview-number{font-size:64px;font-weight:500;line-height:1.3;color:var(--wine)}.about-banner{height:auto}.about-banner img{height:auto;aspect-ratio:4/3;object-fit:contain}.service-construction .service-card-photo img{object-position:center}.service-liquor .service-card-photo img{object-position:center}
@media(hover:hover) and (min-width:761px){.nav-services:hover>.service-submenu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}.nav-services:hover .service-menu-toggle span{transform:rotate(180deg)}.nav-services.is-dismissed:hover>.service-submenu{opacity:0;visibility:hidden;pointer-events:none}}
@media(max-width:760px){.nav-service-heading{justify-content:space-between;border-top:1px solid var(--line)}.nav-service-heading>a{border-top:0;flex:1}.service-menu-toggle{width:42px;height:45px}.service-submenu{position:static;width:100%;box-shadow:none;border-top:0;padding:0 0 0 18px;max-height:0;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(-6px);transition:max-height .25s ease,opacity .2s,transform .25s}.service-submenu:before{display:none}.nav-services.is-open>.service-submenu{max-height:350px;opacity:1;visibility:visible;transform:translateY(0)}.nav-services:focus-within:not(.is-open)>.service-submenu{max-height:0;opacity:0;visibility:hidden;pointer-events:none}.service-submenu a{font-size:14px;padding:11px 0}.overview-text,.overview-text:nth-child(even){grid-template-columns:40px 1fr;gap:20px;padding-top:30px;margin-bottom:45px}.overview-number{font-size:30px}.about-banner{margin-right:7.5%}.about-banner img{aspect-ratio:4/3}}

@media(hover:hover) and (min-width:761px){.nav-services:hover:not(.is-open)>.service-submenu{opacity:0;visibility:hidden;pointer-events:none}.nav-services:hover:not(.is-open) .service-menu-toggle span{transform:none}}

.office-exterior{margin-top:32px;max-width:480px}.office-exterior img{width:100%;height:auto}@media(max-width:760px){.office-exterior{margin-top:24px;max-width:none}}

.header,.header .brand{background:var(--paper)}.header .wordmark-image{mix-blend-mode:multiply}

.case-list{display:block;padding-top:0}.case-list .case-post{padding:32px 0}.case-list h2{display:flex;justify-content:space-between;gap:25px;color:var(--wine)}.case-story{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start;padding-top:0}.case-story figure img{width:100%;height:auto}.case-story h2{color:var(--wine);margin-bottom:28px}.case-story .textlink{display:flex;margin-top:24px}.case-return{padding-top:0}.overseas-support{background:var(--paper)}.overseas-copy{margin-top:20px}@media(max-width:760px){.case-story{grid-template-columns:1fr;gap:35px}.case-list h2{font-size:25px}.case-story figure{max-width:520px}.case-story h2{font-size:30px}}

.column-coming{min-height:42vh;padding-top:35px}.coming-soon{font-size:clamp(40px,6vw,76px);color:var(--wine);letter-spacing:.04em;margin-bottom:25px}.column-coming>p:last-child{font-size:16px;color:var(--muted)}

/* Contact step transitions and receipt screen */
#contact-fields,#contact-confirmation,#contact-complete{scroll-margin-top:130px}.contact-section.is-complete{display:block}.is-complete .contact-intro{display:none}.contact-complete{max-width:850px;margin:0 auto;padding:65px 30px;text-align:center;border:1px solid var(--line);background:#f1ede6}.contact-complete h2{font-size:clamp(27px,4vw,42px);line-height:1.65}.complete-mark{display:flex;width:64px;height:64px;margin:0 auto 24px;border:1px solid var(--wine);border-radius:50%;align-items:center;justify-content:center;color:var(--wine);font-size:30px}.contact-complete .eyebrow{margin-bottom:20px}.contact-complete .textlink{display:inline-flex}.contact-complete p{line-height:2}@media(max-width:760px){#contact-fields,#contact-confirmation,#contact-complete{scroll-margin-top:100px}.contact-complete{padding:42px 20px}}

@media(max-width:760px){.contact-complete h2{font-size:clamp(18px,5.5vw,24px)}}

.service-area{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;border-top:1px solid var(--line)}.area-copy h2{color:var(--wine);font-size:clamp(26px,3.4vw,42px);line-height:1.6}.area-method{display:inline-block;border:1px solid var(--wine);padding:6px 18px;color:var(--wine);margin:12px 0 20px}.area-copy .textlink{margin-top:24px}.area-map{margin:0;padding:24px;background:#f1ede6}.area-map img{display:block;width:100%;max-width:330px;height:auto;margin:auto}.area-map figcaption{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;padding-top:12px;flex-wrap:wrap}.area-legend{width:12px;height:12px;background:var(--wine)}.map-note{display:block;width:100%;text-align:center;color:var(--muted);font-size:10px}@media(max-width:760px){.service-area{grid-template-columns:1fr;gap:28px}.area-map{padding:18px}.area-map img{max-width:290px}}

.area-directory h2{margin-bottom:35px}.nara-city-area{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;margin-top:36px}.nara-city-area img{width:100%;height:auto}.nara-city-area h3{color:var(--wine);margin-bottom:20px}@media(max-width:760px){.nara-city-area{grid-template-columns:1fr}}

.illustrated-process>h2{font-size:clamp(29px,4vw,45px);color:var(--wine);line-height:1.6}.flow-intro{max-width:760px;margin:20px 0 38px;line-height:2}.illustrated-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 28px;list-style:none;padding:0;margin:35px 0}.illustrated-flow li{position:relative;padding:26px 22px 24px;border-top:1px solid var(--wine);background:#f1ede6}.flow-step{font-size:11px;letter-spacing:.15em;color:var(--wine)}.flow-icon{display:block;width:72px;height:72px;color:var(--wine);margin:22px 0}.illustrated-flow h3{font-size:21px;color:var(--wine);margin-bottom:12px}.illustrated-flow p{font-size:14px;line-height:1.9}.illustrated-flow li:not(:last-child):after{content:'↓';position:absolute;bottom:-29px;left:50%;color:var(--wine);font-size:18px}.flow-support-message{border-left:3px solid var(--wine);padding:25px 30px;background:#eee8df;margin-bottom:40px}.flow-support-message h3{font-size:clamp(24px,3vw,34px);color:var(--wine);line-height:1.6;margin:16px 0}.flow-support-message p{max-width:760px;line-height:2}.flow-note{font-size:13px;color:var(--muted);line-height:1.9;margin-bottom:24px}.illustrated-process>.textlink{margin-top:20px}@media(min-width:761px){.illustrated-flow li:not(:last-child):after{content:'→';bottom:auto;left:auto;right:-23px;top:50%}.illustrated-flow li:nth-child(3n):after{content:'↓';top:auto;right:50%;bottom:-29px}}@media(max-width:760px){.illustrated-flow{grid-template-columns:1fr;gap:34px}.illustrated-flow li{padding:22px 24px 24px}.flow-icon{width:60px;height:60px;margin:18px 0}.flow-support-message{padding:22px}.illustrated-flow h3{font-size:22px}}

@font-face{font-family:NaraHandwriting;src:url('representative-handwriting.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}.message-hero-copy>p.representative-signature:not(.eyebrow){font-family:NaraHandwriting,serif;font-size:clamp(25px,3vw,36px);font-weight:400;line-height:1.8;color:var(--wine);margin-top:24px;white-space:nowrap}

.illustrated-flow.subsidy-flow li::after{display:none}

/* Business columns */
.column-heading{max-width:1180px;margin:auto;padding:70px 5vw 50px}.column-heading h1{font-size:clamp(38px,5vw,64px);color:var(--wine,#721c29);margin:20px 0}.column-heading>p:last-child{max-width:660px;line-height:2}.column-filters{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.column-filters a,.column-label{display:inline-block;border:1px solid #781e2b;padding:5px 15px;color:#781e2b;font-size:13px;text-decoration:none}.column-filters a[aria-current],.column-filters a:hover{background:#781e2b;color:#fff}.column-list{max-width:1180px;margin:0 auto 90px;padding:0 5vw}.column-card{display:grid;grid-template-columns:320px 1fr;gap:36px;padding:36px 0;border-top:1px solid #d9d4c8;text-decoration:none;color:inherit}.column-card img{width:100%;height:210px;object-fit:cover;background:#eee9dd}.column-card h2{font-size:25px;line-height:1.7;color:#721c29;margin:14px 0}.column-card p{line-height:1.9}.column-meta{font-size:13px;color:#777;margin:16px 0}.column-article-header{max-width:1000px;margin:auto;padding:65px 5vw 35px}.column-article-header h1{font-size:clamp(28px,4vw,43px);line-height:1.6;color:#721c29;margin:25px 0}.column-cover{width:100%;height:auto;margin:20px 0}.column-article-body{max-width:780px;margin:0 auto;padding:0 24px 80px;font-size:16px;line-height:2.15}.column-article-body p{margin:26px 0}.column-article-body h2{font-size:26px;line-height:1.65;color:#721c29;border-top:1px solid #d9d4c8;padding-top:28px;margin:64px 0 25px;scroll-margin-top:130px}.column-article-body h3{font-size:20px;line-height:1.75;margin:35px 0 18px}.column-article-body li{margin:10px 0}.column-article-body a{color:#721c29;text-underline-offset:5px}.column-toc{background:#eee9dd;padding:25px 30px;margin:38px 0}.column-toc>p{font-size:18px;font-weight:bold;margin:0 0 10px}.column-toc a{text-decoration:none}.column-table{overflow-x:auto;margin:25px 0}.column-table table{border-collapse:collapse;min-width:640px;font-size:14px;width:100%}.column-table th,.column-table td{border-bottom:1px solid #d5cdbd;padding:18px;text-align:left}.column-table th{background:#eee9dd}.column-flow{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.column-flow li{border:1px solid #d9d4c8;padding:15px;display:flex;flex-direction:column}.column-flow span{font-size:24px;color:#721c29}.column-flow strong{font-size:15px}.column-contact{background:#eee9dd;padding:30px;margin:50px 0}.column-contact h2{margin:0;border:0;padding:0}.column-contact .button{display:inline-block;margin-top:18px;background:#721c29;color:white;padding:14px 24px;text-decoration:none}.column-back{display:inline-block;margin-top:35px}.column-empty{padding:40px 0;border-top:1px solid #d9d4c8}@media(max-width:700px){.column-heading,.column-article-header{padding-top:40px}.column-card{grid-template-columns:1fr;gap:18px}.column-card img{height:auto}.column-card h2{font-size:23px}.column-article-body h2{font-size:23px}.column-flow{grid-template-columns:repeat(2,1fr)}.column-toc{padding:20px}.column-filters{gap:8px}.column-filters a{font-size:12px;padding:4px 11px}}

/* Editorial byline and office support. */
.column-author{display:flex;align-items:center;gap:22px;padding:24px 0;margin:28px 0 34px;border-top:1px solid #dcd5c7;border-bottom:1px solid #dcd5c7;text-align:left}.column-author>img{width:88px;height:88px;min-width:88px;border-radius:50%;object-fit:cover;object-position:50% 18%;margin:0}.column-author-info{flex:1;min-width:0}.column-author .column-author-label{font-size:12px;color:#726a61;letter-spacing:.1em;margin:0 0 5px}.column-author .column-author-name{font-size:21px;font-weight:600;line-height:1.6;letter-spacing:.02em;margin:0;color:#721c29}.column-author .column-author-office{font-size:13px;line-height:1.8;margin:3px 0 0;color:#5b554f}.column-author-profile{font-size:13px;color:#721c29;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.column-office-support{margin:76px 0 40px;background:#eee9de;border-top:3px solid #721c29;padding:0;text-align:left}.column-consult-section,.column-solutions-section{padding:36px 40px}.column-solutions-section{border-top:1px solid #d9d1c2}.column-office-support .column-component-eyebrow{color:#721c29;font-size:11px;letter-spacing:.16em;margin:0 0 12px;font-weight:600}.column-office-support h2{font-size:25px;line-height:1.6;color:#721c29;margin:0 0 20px;padding:0;border:0;letter-spacing:.02em}.column-office-support p{font-size:15px;line-height:2;margin:12px 0}.column-office-support .column-consult-lead{font-size:22px;font-weight:500;line-height:1.7;letter-spacing:.02em;color:#302d29;margin:0 0 20px}.column-office-support .column-solutions{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:28px 0;padding:0}.column-office-support .column-solutions li{margin:0;padding:0;min-width:0}.column-support-number{font-size:28px;line-height:1;color:#721c29;display:block;padding-bottom:15px;border-bottom:1px solid #cfc6b6}.column-office-support .column-solutions h3{font-size:17px;line-height:1.7;margin:17px 0 10px;letter-spacing:0;color:#302d29}.column-office-support .column-solutions p{font-size:13px;line-height:1.95;margin:0}.column-support-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:30px}.column-office-support .column-consult-button{display:inline-flex;justify-content:center;align-items:center;background:#721c29;color:#fff;padding:16px 26px;border:1px solid #721c29;font-size:15px;text-decoration:none;transition:background .2s,color .2s}.column-office-support .column-consult-button:hover{background:#fffdf7;color:#721c29}.column-support-link{font-size:13px;text-decoration:underline;text-underline-offset:5px;color:#721c29}.column-office-support .column-support-phone{margin-top:23px;font-size:13px}.column-support-phone a{color:#721c29;font-size:22px;text-decoration:none;font-weight:600;display:inline-block;margin-left:10px}.column-office-support .column-support-location{margin-top:20px;padding-top:18px;border-top:1px solid #d9d1c2;font-size:12px;line-height:1.9;color:#655e56}.column-author a:focus-visible,.column-office-support a:focus-visible{outline:2px solid #721c29;outline-offset:5px}@media(max-width:640px){.column-author{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px 15px;padding:20px 0;margin:24px 0}.column-author>img{width:72px;height:72px;min-width:72px}.column-author .column-author-name{font-size:18px}.column-author .column-author-office{font-size:11px}.column-author-profile{grid-column:2;margin-left:0;font-size:12px}.column-office-support{margin-top:50px}.column-consult-section,.column-solutions-section{padding:27px 22px}.column-office-support h2{font-size:22px}.column-office-support .column-consult-lead{font-size:19px}.column-office-support p{font-size:14px}.column-office-support .column-solutions{grid-template-columns:1fr;gap:26px;margin:24px 0}.column-support-number{font-size:24px;padding-bottom:10px}.column-office-support .column-solutions h3{font-size:17px;margin-top:12px}.column-office-support .column-solutions p{font-size:14px}.column-support-actions{display:grid;gap:20px}.column-office-support .column-consult-button{width:100%;box-sizing:border-box;padding:16px 12px}.column-support-phone a{display:block;margin-left:0}.column-office-support .column-support-location{font-size:11px}}@media(prefers-reduced-motion:reduce){.column-office-support .column-consult-button{transition:none}}

/* Top-page first view: brand illustration of Nara Park, Sanjo-dori and temples. */
.home-hero-illustrated{grid-template-columns:1fr;min-height:760px;padding:64px 7.6% 78px;overflow:hidden;isolation:isolate;align-items:start}
.home-hero-illustrated .hero-copy{z-index:2;max-width:620px;padding:54px 0 0}
.home-hero-illustrated .hero-landscape{position:absolute;inset:0;margin:0;height:100%;z-index:-1;border-bottom:2px solid var(--wine);background:var(--paper)}
.home-hero-illustrated .hero-landscape:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,247,242,.95) 0%,rgba(248,247,242,.72) 35%,rgba(248,247,242,.08) 70%);pointer-events:none}
.home-hero-illustrated .hero-landscape img{width:100%;height:100%;object-fit:cover;object-position:center bottom;mix-blend-mode:multiply}
.home-hero-illustrated .hero-side{z-index:2}
@media(min-width:1600px){.home-hero-illustrated{min-height:820px}.home-hero-illustrated .hero-landscape{height:100%}}
@media(max-width:760px){.home-hero-illustrated{min-height:720px;padding:28px 0 54px;display:block}.home-hero-illustrated .hero-copy{padding:28px 7.5% 0;max-width:none}.home-hero-illustrated .hero-landscape{position:absolute;inset:0;height:100%;margin:0;aspect-ratio:auto}.home-hero-illustrated .hero-landscape img{object-position:55% bottom}.home-hero-illustrated .hero-landscape:after{background:linear-gradient(180deg,rgba(248,247,242,.96) 0%,rgba(248,247,242,.82) 48%,rgba(248,247,242,.08) 78%)}.home-hero-illustrated .hero-side{bottom:14px}}

.footer-line-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:38px;margin-top:38px;padding:30px 34px;border:1px solid #d8d4cb;background:#f8f7f2}.footer-line-copy{min-width:0}.footer-line-eyebrow{display:block;margin-bottom:8px;font-size:10px;font-weight:600;letter-spacing:.18em;color:#641e2a}.footer-line-cta h2{margin:0;color:#302e2b;font-size:clamp(23px,2.4vw,34px);line-height:1.55;letter-spacing:.04em}.footer-line-cta p{margin:10px 0 0;color:#302e2b;font-size:13px;line-height:1.85}.footer-line-button{display:flex;min-width:190px;min-height:78px;padding:15px 22px;flex-direction:column;align-items:center;justify-content:center;gap:7px;background:#fff;color:#302e2b;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.footer-line-button img{display:block;width:116px;height:36px;object-fit:contain}.footer-line-button span{font-size:10px;letter-spacing:.08em}.footer-line-button:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.18)}.footer-line-button:focus-visible{outline:3px solid #06c755;outline-offset:4px}@media(max-width:760px){.footer-line-cta{grid-template-columns:1fr;gap:22px;margin-top:28px;padding:25px 22px}.footer-line-cta p br{display:none}.footer-line-button{width:100%;min-height:74px}.footer-line-button:hover{transform:none}}@media(prefers-reduced-motion:reduce){.footer-line-button{transition:none}}

.floating-line-cta{position:fixed;right:18px;top:52%;z-index:900;width:154px;padding:13px 12px 12px;background:#f8f7f2;border:1px solid #d8d4cb;border-top:3px solid #06c755;box-shadow:0 12px 32px rgba(36,28,25,.16);transform:translateY(-50%);text-align:center}.floating-line-label{display:block;margin-bottom:8px;color:#302e2b;font-size:11px;font-weight:600;line-height:1.55;letter-spacing:.02em}.floating-line-cta a{display:block;color:#302e2b;text-decoration:none}.floating-line-cta img{display:block;width:116px;height:36px;margin:0 auto;object-fit:contain}.floating-line-cta a>span{display:none}.floating-line-cta:focus-within{outline:3px solid #06c755;outline-offset:3px}@media(max-width:760px){.floating-line-cta{right:8px;top:34%;bottom:auto;width:58px;padding:5px;border:0;border-radius:4px 0 0 4px;background:#06c755;box-shadow:0 8px 24px rgba(0,0,0,.22);transform:translateY(-50%)}.floating-line-label,.floating-line-cta img{display:none}.floating-line-cta a>span{display:flex;min-width:46px;min-height:62px;flex-direction:column;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:700;line-height:1.25;letter-spacing:.01em}.floating-line-cta a>span:before{content:'LINE';display:inline-flex;margin:0 0 5px;padding:2px 4px;border:1px solid rgba(255,255,255,.75);border-radius:4px;font-size:9px;line-height:1}}@media(prefers-reduced-motion:reduce){.floating-line-cta{scroll-behavior:auto}}
.floating-line-cta{display:none}
@media(max-width:760px){.floating-line-cta{display:block}}

/* Immigration: multilingual guidance and transparent pricing. */
.immigration-languages{border-top:1px solid var(--line);background:#f1ede6}.language-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}.language-list li{min-height:122px;border-top:2px solid var(--wine);background:var(--paper)}.language-list a{display:block;height:100%;padding:25px 18px}.language-list strong,.language-list span{display:block}.language-list strong{color:var(--wine);font-size:17px;line-height:1.55}.language-list span{margin-top:9px;color:var(--muted);font-size:12px;line-height:1.6}.language-list a:hover{background:#e9e2d7}.language-support-note{max-width:880px;margin:42px 0 0;padding:34px 38px;background:var(--paper);border-left:4px solid var(--wine)}.language-support-note h3{color:var(--wine);font-size:24px}.language-support-note p{margin-top:13px}.language-support-note .notice{font-size:13px;color:var(--muted)}.language-support-note .textlink{margin-top:8px}
.immigration-pricing{border-top:1px solid var(--line)}.pricing-lead{max-width:820px;margin:-20px 0 38px;color:var(--muted)}.fee-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.fee-group{min-width:0;padding:28px;background:#f1ede6}.fee-group:last-child{grid-column:1/-1}.fee-group h3{margin-bottom:20px;color:var(--wine);font-size:22px}.fee-table-wrap{overflow-x:auto}.fee-table{width:100%;border-collapse:collapse;font-size:14px}.fee-table th,.fee-table td{padding:15px 12px;border-top:1px solid #d2cabc;text-align:left;vertical-align:top;line-height:1.8}.fee-table th{width:58%;font-weight:500}.fee-table td{color:var(--wine);font-weight:600;white-space:nowrap}.fee-table small{display:inline-block;color:var(--muted);font-size:11px;font-weight:400;white-space:normal}.fee-notes{margin:34px 0 16px;padding-left:1.3em;color:var(--muted);font-size:13px}.fee-notes li{margin:7px 0;line-height:1.8}.immigration-pricing>.textlink{margin-top:12px}
@media(max-width:980px){.language-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.immigration-languages .section-heading,.immigration-pricing .section-heading{display:block}.immigration-languages .section-heading>p,.immigration-pricing .section-heading>p{padding-top:14px}.language-list{grid-template-columns:repeat(2,minmax(0,1fr))}.language-list li{min-height:108px;padding:20px 15px}.language-support-note{margin-top:28px;padding:26px 22px}.language-support-note h3{font-size:21px}.fee-groups{grid-template-columns:1fr;gap:20px}.fee-group,.fee-group:last-child{grid-column:auto;padding:23px 18px}.fee-group h3{font-size:20px}.fee-table{font-size:13px}.fee-table th,.fee-table td{padding:13px 8px}.fee-table th{width:56%}.fee-table td{white-space:normal}.pricing-lead{margin:0 0 28px}}
@media(max-width:760px){.immigration-languages .section-heading,.immigration-pricing .section-heading{display:block}.immigration-languages .section-heading>p,.immigration-pricing .section-heading>p{padding-top:14px}.language-list{grid-template-columns:repeat(2,minmax(0,1fr))}.language-list li{min-height:108px}.language-list a{padding:20px 15px}.language-support-note{margin-top:28px;padding:26px 22px}.language-support-note h3{font-size:21px}.fee-groups{grid-template-columns:1fr;gap:20px}.fee-group,.fee-group:last-child{grid-column:auto;padding:23px 18px}.fee-group h3{font-size:20px}.fee-table{font-size:13px}.fee-table th,.fee-table td{padding:13px 8px}.fee-table th{width:56%}.fee-table td{white-space:normal}.pricing-lead{margin:0 0 28px}}

/* Standalone immigration pages in five languages. */
.immigration-language-page{background:var(--paper)}.language-header{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:24px 5%;border-bottom:1px solid var(--line);background:var(--paper)}.language-header>a img{width:270px;height:auto;mix-blend-mode:multiply}.language-switcher{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.language-switcher a{padding:7px 10px;border:1px solid transparent;font-size:12px;line-height:1.4}.language-switcher a[aria-current=page]{border-color:var(--wine);color:var(--wine)}.language-hero,.language-block{padding:90px 8%;border-bottom:1px solid var(--line)}.language-hero{max-width:1200px;margin:auto}.language-hero h1{max-width:900px;color:var(--wine);font-size:clamp(36px,5.5vw,72px);line-height:1.35}.language-lead{max-width:760px;margin:28px 0 15px;font-size:clamp(19px,2.2vw,28px);line-height:1.7}.language-hero>p:last-of-type{max-width:820px}.language-line-button{display:inline-flex;margin-top:30px;padding:15px 26px;background:#06c755;color:#fff;font-weight:600}.language-line-button:hover{background:#04a945;color:#fff}.language-block>h2{max-width:1000px;color:var(--wine);font-size:clamp(25px,3.2vw,42px)}.language-fees{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:40px}.language-fees article{min-width:0;padding:28px;background:#f1ede6}.language-fees article:last-child{grid-column:1/-1}.language-fees h3{min-height:58px;margin-bottom:16px;color:var(--wine);font-size:18px}.language-note{max-width:900px;margin-top:28px;color:var(--muted);font-size:13px}.language-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;margin:38px 0 0;padding:0}.language-flow li{padding:24px;border-top:2px solid var(--wine);background:#f1ede6}.language-flow span,.language-flow strong{display:block}.language-flow span{color:var(--wine);font-size:12px;letter-spacing:.15em}.language-flow strong{margin-top:12px;font-size:16px;line-height:1.7}.language-footer{display:flex;justify-content:space-between;gap:30px;padding:45px 8%;background:var(--sand);font-size:12px}.language-footer p{line-height:1.8}.language-assurance>p:last-child{max-width:900px;margin-top:18px;font-size:18px;line-height:2;color:var(--ink)}
@media(max-width:760px){.language-header{align-items:flex-start;padding:18px 5%;flex-direction:column}.language-header>a img{width:220px}.language-switcher{justify-content:flex-start}.language-switcher a{padding:6px 7px}.language-hero,.language-block{padding:58px 7%}.language-fees{grid-template-columns:1fr;gap:18px}.language-fees article:last-child{grid-column:auto}.language-fees article{padding:22px 16px}.language-fees h3{min-height:0}.language-flow{grid-template-columns:1fr}.language-footer{flex-direction:column;padding:35px 7%}}

/* Nara Prefecture coverage and consultation conditions. */
.nara-coverage{border-top:1px solid var(--line);background:#f4f0e8}.municipality-list{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;list-style:none;margin:0;padding:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}.municipality-list li{padding:12px 10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper);font-size:13px;text-align:center}.visit-policy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:38px 0 6px}.visit-policy>div{padding:30px;border-top:3px solid var(--wine);background:var(--paper)}.visit-policy .eyebrow{margin-bottom:12px}.visit-policy h3{color:var(--wine);font-size:22px}.visit-policy p:not(.eyebrow){margin-top:12px;font-size:14px;line-height:2}.nara-coverage>.textlink{margin-top:25px}
@media(max-width:980px){.municipality-list{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:760px){.nara-coverage .section-heading{display:block}.nara-coverage .section-heading>p{padding-top:14px}.municipality-list{grid-template-columns:repeat(3,minmax(0,1fr))}.municipality-list li{padding:10px 5px;font-size:11px}.visit-policy{grid-template-columns:1fr;gap:18px;margin-top:28px}.visit-policy>div{padding:24px 20px}.visit-policy h3{font-size:20px}}

/* Separate corporate immigration support from individual multilingual support. */
.immigration-audience{padding-top:70px;padding-bottom:70px;background:#eee9de}.audience-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.audience-cards article{padding:34px;border-top:3px solid var(--wine);background:var(--paper)}.audience-cards article.is-current{box-shadow:inset 0 0 0 1px var(--wine)}.audience-cards .eyebrow{margin-bottom:12px}.audience-cards h3{color:var(--wine);font-size:25px}.audience-cards p:not(.eyebrow){margin-top:15px;font-size:14px}.corporate-actions{display:flex;flex-wrap:wrap;gap:15px 30px;margin-top:16px}.corporate-actions .textlink{margin-top:0}.immigration-statutory-fees{border-top:1px solid var(--line);background:#f4f0e8}.immigration-statutory-fees>p{max-width:900px;margin-bottom:35px}.statutory-fee-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.statutory-fee-grid article{min-width:0;padding:28px;background:var(--paper)}.statutory-fee-grid h3{margin-bottom:16px;color:var(--wine);font-size:22px}.fee-caption{margin-top:10px;color:var(--muted);font-size:11px}
@media(max-width:760px){.audience-cards,.statutory-fee-grid{grid-template-columns:1fr}.audience-cards article,.statutory-fee-grid article{padding:24px 20px}.audience-cards h3{font-size:21px}.corporate-actions{display:grid;gap:8px}.immigration-statutory-fees .section-heading{display:block}}

/* Column conversion and topic-cluster navigation. */
.column-freshness{display:grid;grid-template-columns:max-content 1fr max-content;align-items:center;gap:8px 16px;margin:0 0 28px;padding:16px 18px;background:#721c29;color:#fff}.column-freshness strong{font-size:13px}.column-freshness span{font-size:13px;line-height:1.7}.column-freshness small{font-size:10px;opacity:.8;white-space:nowrap}@media(max-width:640px){.column-freshness{grid-template-columns:1fr;gap:5px}.column-freshness small{white-space:normal}}
.column-priority-cta,.column-related-guides,.column-audience{margin:38px 0;padding:30px;border:1px solid #d5cbbb;background:#f4f0e7;text-align:left}.column-priority-cta{border-top:4px solid #721c29}.column-priority-cta h2,.column-related-guides h2{border:0;margin:0 0 15px;padding:0;font-size:24px;line-height:1.65}.column-priority-cta p,.column-related-guides p,.column-audience p{margin:10px 0;font-size:14px;line-height:1.95}.column-component-eyebrow{color:#721c29;font-size:11px!important;font-weight:700;letter-spacing:.16em;margin:0 0 10px!important}.column-priority-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin-top:22px}.column-priority-actions a{font-size:14px}.column-priority-button{display:inline-flex;background:#721c29;color:#fff!important;padding:14px 22px;text-decoration:none}.column-priority-button:hover{background:#54121d}.column-audience{display:grid;grid-template-columns:max-content 1fr;align-items:center;gap:10px 18px;background:#fff;border-left:4px solid #721c29;margin-top:0}.column-audience>span{display:inline-block;color:#721c29;font-size:12px;font-weight:700;letter-spacing:.05em}.column-audience p{margin:0}.column-audience a{grid-column:2;font-size:13px}.column-related-guides{margin-top:70px;background:#fff;border-top:3px solid #721c29}.column-related-guides ul{list-style:none;margin:26px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.column-related-guides li{margin:0}.column-related-guides li a{display:block;height:100%;box-sizing:border-box;padding:18px;border:1px solid #d8d0c1;text-decoration:none;background:#faf8f3}.column-related-guides li a:hover{border-color:#721c29;background:#f3ede4}.column-related-guides strong,.column-related-guides span{display:block}.column-related-guides strong{font-size:15px;line-height:1.6}.column-related-guides span{color:#5e5851;font-size:12px;line-height:1.7;margin-top:5px}.column-priority-cta a:focus-visible,.column-related-guides a:focus-visible,.column-audience a:focus-visible{outline:2px solid #721c29;outline-offset:4px}@media(max-width:640px){.column-priority-cta,.column-related-guides,.column-audience{padding:23px 20px}.column-priority-cta h2,.column-related-guides h2{font-size:21px}.column-priority-actions{display:grid;gap:15px}.column-priority-button{justify-content:center}.column-audience{display:block}.column-audience p{margin:10px 0}.column-related-guides ul{grid-template-columns:1fr}.column-related-guides li a{padding:16px}}

.language-statutory-fees .fee-table-wrap { margin-top:24px; }
.language-statutory-fees .language-note { margin-top:18px; }
.schedule-list{list-style:none;margin:26px 0 0;padding:0;border-top:1px solid var(--line)}
.schedule-list li{position:relative;padding:17px 16px 17px 30px;border-bottom:1px solid var(--line);line-height:1.8}
.schedule-list li:before{content:'';position:absolute;left:8px;top:29px;width:6px;height:6px;border-radius:50%;background:var(--wine)}
.document-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}.document-groups article{padding:24px;background:var(--sand)}.document-groups h3{color:var(--wine);margin-bottom:14px}.document-groups ul{margin:0;padding-left:1.2em}.document-groups li{margin:8px 0;line-height:1.75}@media(max-width:760px){.document-groups{grid-template-columns:1fr}}
.urgent-support{background:var(--wine);color:#fff;padding:46px}.urgent-support .eyebrow,.urgent-support .language-note{color:#eadbd7}.urgent-support .language-line-button{background:#fff;color:var(--wine);margin-top:24px}.urgent-support .urgent-lead{font-size:17px;line-height:2}.urgent-support h2{color:#fff}@media(max-width:760px){.urgent-support{padding:32px 24px}}
