:root{--navy:#38385f;--yellow:#ffe338;--ink:#24243e;--muted:#666677;--green:#07853e;--pale:#f7f7fa}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',Meiryo,sans-serif;line-height:1.85;font-size:16px}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #087aaa;outline-offset:5px}a:hover{filter:brightness(.92)}header{min-height:104px;padding:18px 4%;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #e5e5ed;background:white;position:sticky;top:0;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:29px;font-weight:800;white-space:nowrap;line-height:1.4}.brand small{font-size:14px;margin-left:7px}.brand em{display:block;font-size:12px;font-style:normal;letter-spacing:.05em}.seal{font-family:serif;border:2px solid var(--navy);border-radius:50%;width:52px;height:52px;font-size:38px;line-height:46px;text-align:center;color:var(--navy)}nav{display:flex;gap:25px;font-size:14px;font-weight:700}.header-phone{font-size:27px;font-weight:900;letter-spacing:.02em;line-height:1.35}.header-phone small{display:block;font-size:12px;font-weight:500}.hero{max-width:1480px;margin:auto;display:grid;grid-template-columns:1.06fr 1fr;align-items:center;min-height:670px;padding:65px 4% 62px;overflow:hidden}.eyebrow{font-size:14px;font-weight:800;letter-spacing:.13em;margin:0 0 21px}.hero .eyebrow{display:inline-block;border-bottom:3px solid var(--yellow);padding-bottom:7px}h1{font-size:clamp(34px,3.5vw,54px);line-height:1.5;letter-spacing:-.045em;margin:0 0 23px;font-weight:900}h1 span{background:linear-gradient(transparent 72%,var(--yellow) 0)}.hero-sub{font-size:21px;font-weight:700;line-height:1.8;margin:0 0 18px}.intro{color:var(--muted);margin:0 0 22px}.hero-tags{display:flex;gap:10px;margin-bottom:24px}.hero-tags span{font-size:14px;background:var(--pale);padding:4px 13px;border-radius:3px}.actions{display:flex;gap:12px}.button{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:72px;padding:12px 20px;border-radius:5px;line-height:1.6;text-align:center;font-weight:700}.button small{font-size:12px;font-weight:500}.button strong{font-size:19px}.yellow{background:var(--yellow);color:var(--navy)}.line{background:var(--green);color:white}.fine{font-size:12px;margin:9px 0 0}.hero-art{position:relative;padding:32px 10px 20px 35px}.hero-art img{display:block;width:100%;height:auto}.art-note{position:absolute;top:0;left:22%;font-size:16px;font-weight:700;transform:rotate(-5deg);background:var(--yellow);padding:4px 15px}.roundel{position:absolute;right:0;bottom:-15px;width:117px;height:117px;background:var(--yellow);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.65;transform:rotate(9deg);font-size:15px}.roundel b{font-size:24px}.assurances{display:grid;grid-template-columns:repeat(3,1fr);background:var(--navy);color:white;padding:28px max(5%,calc((100vw - 1200px)/2));gap:32px}.assurances p{margin:0;padding-left:50px;position:relative;font-size:14px;border-right:1px solid #626281}.assurances p:last-child{border:0}.assurances strong{position:absolute;left:0;top:6px;color:var(--yellow);font-size:23px}.assurances b{font-size:19px}.section{padding:90px max(5%,calc((100vw - 1180px)/2))}.section-title{margin-bottom:36px}.section-title .eyebrow{color:var(--navy);margin-bottom:13px}h2{font-size:34px;line-height:1.65;letter-spacing:-.02em;margin:0 0 20px}h3{font-size:22px;line-height:1.6;margin:14px 0}p{margin:0 0 15px}.section-title>p:last-child{color:var(--muted)}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.service-grid article{background:var(--pale);padding:34px;border-top:5px solid var(--navy)}.service-grid article:last-child{border-color:var(--yellow)}.number{font-size:13px;font-weight:700;letter-spacing:.1em}.service-grid p{color:var(--muted)}.service-grid a{display:flex;justify-content:space-between;border-top:1px solid #dadae4;padding-top:18px;margin-top:26px;font-weight:700;font-size:14px}.items{background:#fcfbf4}.item-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #dcdad0}.item-list span{padding:22px 8px;border-bottom:1px solid #dcdad0;font-size:17px;font-weight:700}.item-list span:before{content:'＋';color:#9c8530;margin-right:12px}.item-note{font-size:14px;color:var(--muted);margin:25px 0 0}.business{background:var(--navy);color:white;display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}.business .eyebrow{color:var(--yellow)}.business h2 span{color:var(--yellow)}.business p{color:#e3e3eb}.business .button{display:inline-flex;margin-top:15px;min-height:58px;font-size:15px}.business ul{padding:0;list-style:none}.business li{border-bottom:1px solid #66667f;padding:22px 0;font-size:17px}.business li:before{content:'✓';color:var(--yellow);margin-right:15px}.flow ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.flow li{border-top:2px solid var(--navy);padding-top:20px}.flow li>span{font-size:32px;font-weight:800;color:var(--navy)}.flow h3{font-size:19px}.flow li p{font-size:14px;color:var(--muted)}.contact{background:var(--yellow);text-align:center}.contact h2{font-size:37px}.contact-box{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;background:white;padding:34px;margin-top:32px;border-radius:7px}.contact-box p{font-size:14px;margin-bottom:2px}.big-phone{font-size:clamp(28px,3vw,41px);font-weight:900;letter-spacing:.02em}.contact-box .fine{font-size:12px}.contact-box .button{max-width:370px;margin:auto}footer{display:grid;grid-template-columns:1fr 1.5fr;gap:30px;padding:50px 5% 28px;align-items:start}footer p{font-size:14px;margin:0 0 5px}footer>small{grid-column:1/-1;border-top:1px solid #eee;padding-top:24px;font-size:12px;color:var(--muted)}.mobile,.mobile-cta{display:none}.skip{position:fixed;top:-100px;left:15px;background:var(--yellow);padding:12px;z-index:20}.skip:focus{top:8px}@media(min-width:1500px){.hero{padding-left:70px;padding-right:70px}}@media(max-width:1100px){nav{display:none}.hero{padding-top:42px;gap:15px}.actions{flex-direction:column;max-width:330px}.hero-art{padding-left:0}.assurances{gap:15px}.assurances b{font-size:16px}.item-list{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){html{scroll-padding-top:84px}header{min-height:78px;padding:13px 5%;gap:10px}.brand{font-size:22px;gap:7px}.brand small{font-size:11px;margin-left:4px}.brand em{font-size:10px}.seal{width:40px;height:40px;font-size:29px;line-height:35px}.header-phone{font-size:16px}.header-phone small{font-size:9px}.hero{display:flex;flex-direction:column;padding:35px 6% 42px;gap:25px}.hero-copy{width:100%}h1{font-size:clamp(30px,7.8vw,43px);margin-bottom:18px}.hero .eyebrow{font-size:12px;margin-bottom:18px}.hero-sub{font-size:18px}.intro{font-size:14px}.hero-tags span{font-size:12px}.actions{flex-direction:row;max-width:none;gap:8px}.actions .button{padding:12px 9px;flex:1}.button small{font-size:10px}.button strong{font-size:16px}.hero-art{width:100%;padding:32px 0 0;max-width:420px}.roundel{width:95px;height:95px;font-size:13px;right:-5px;bottom:-12px}.roundel b{font-size:21px}.art-note{font-size:14px;left:19%}.assurances{padding:24px 6%;gap:13px;grid-template-columns:1fr}.assurances p{border:0;border-bottom:1px solid #666680;padding:0 0 14px 42px}.assurances p:last-child{padding-bottom:0}.assurances p br{display:none}.assurances b{margin-left:10px}.assurances strong{font-size:18px;top:0}.section{padding:56px 6%}h2{font-size:27px}.section-title>p:last-child{font-size:14px}.section-title{margin-bottom:26px}.service-grid{grid-template-columns:1fr;gap:20px}.service-grid article{padding:25px}.service-grid p{font-size:14px}.item-list{grid-template-columns:1fr 1fr}.item-list span{font-size:14px;padding:18px 0}.item-list span:before{margin-right:5px}.business{grid-template-columns:1fr;gap:20px}.business p{font-size:14px}.business ul{margin:0}.business li{font-size:15px}.flow ol{grid-template-columns:1fr 1fr;gap:25px 20px}.flow h3{font-size:17px}.contact h2{font-size:28px}.contact>p{font-size:12px}.contact-box{grid-template-columns:1fr;gap:25px;padding:24px 16px}.big-phone{font-size:32px}.contact-box .button{min-height:75px}.contact-box .button small{font-size:12px}.contact-box .button strong{font-size:20px}footer{grid-template-columns:1fr;padding:35px 6% 100px;gap:20px}.mobile{display:block}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:15;padding:8px 10px calc(8px + env(safe-area-inset-bottom));gap:8px;background:white;box-shadow:0 -2px 12px #0001}.mobile-cta a{flex:1;text-align:center;font-size:14px;font-weight:700;padding:12px 4px;background:var(--yellow);border-radius:4px}.mobile-cta a:last-child{background:var(--green);color:white}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* A quiet still life that blends into the page. */
.hero-art{padding:0;align-self:center}.hero-art img{width:100%;height:auto;mix-blend-mode:multiply}@media(max-width:700px){.hero-art{padding:0;max-width:440px;margin-top:-15px}}

/* Recompose the original supplied artwork as individual objects. */
.hero-art{width:100%;aspect-ratio:1.12;position:relative;padding:0;overflow:visible;max-width:580px;margin:auto;container-type:inline-size}
.artifact{position:absolute;background-image:url('assets/treasures.png');background-repeat:no-repeat;background-size:1000cqw 877.6cqw}
.kettle{width:27%;height:26%;left:8%;top:12%;background-size:180cqw 158cqw;background-position:-22.7cqw -3.8cqw}
.vase{width:22%;height:29%;left:49%;top:3%;background-size:200cqw 175.5cqw;background-position:-53.4cqw -4.3cqw}
.camera{width:31%;height:24%;left:9%;top:55%;background-size:200cqw 175.5cqw;background-position:-119cqw -47.5cqw}
.bowl{width:22%;height:25%;left:42%;top:39%;background-size:200cqw 175.5cqw;background-position:-125cqw -125.5cqw}
.chest{width:38%;height:39%;left:62%;top:63%;background-size:185cqw 162.3cqw;background-position:-148cqw -124cqw}
@media(max-width:700px){.hero-art{width:100%;max-width:420px;margin:4px auto 26px}}

.kettle{left:5%;top:17%;width:27cqw;height:22.5cqw;background-size:180cqw 157.968cqw;background-position:-22.48cqw -3cqw}
.vase{left:47%;top:7%;width:22cqw;height:24cqw;background-size:180cqw 157.968cqw;background-position:-49.46cqw -3cqw}
.camera{left:8%;top:60%;width:31cqw;height:23cqw;background-size:200cqw 175.52cqw;background-position:-118.23cqw -47.46cqw}
.bowl{left:43%;top:48%;width:24cqw;height:16.65cqw;background-size:200cqw 175.52cqw;background-position:-125.73cqw -126.56cqw}
.chest{left:63%;top:65%;width:36.2cqw;height:33cqw;background-size:185cqw 162.36cqw;background-position:-148.5cqw -124.77cqw}
.kettle{height:25.5cqw;clip-path:polygon(0 0,100% 0,100% 100%,15% 100%,15% 86%,0 86%)}.vase{height:27cqw}.camera{height:21.5cqw}.chest{height:36cqw}

.hero-art{aspect-ratio:1;max-width:610px;background:radial-gradient(ellipse at 52% 51%,#fff4ad 0%,#fff9d4 48%,#fff 71%)}
.kettle{left:5%;top:5%;transform:scale(1.2);transform-origin:top left}
.vase{left:43%;top:0;transform:scale(1.15);transform-origin:top left}
.camera{left:4%;top:45%;transform:scale(1.15);transform-origin:top left}
.bowl{left:42%;top:42%;transform:scale(1.1);transform-origin:top left}
.chest{left:57%;top:65%;transform:scale(1.15);transform-origin:top left}
.stool{left:72%;top:3%;width:22cqw;height:29cqw;background-size:210cqw 184.3cqw;background-position:-57.5cqw -33cqw}
.textile{left:73%;top:33%;width:20cqw;height:31cqw;background-size:180cqw 157.97cqw;background-position:-22.6cqw -30.5cqw}
.plate{left:40%;top:65%;width:18cqw;height:23cqw;background-size:180cqw 157.97cqw;background-position:-111.5cqw -88cqw}
.radio{left:1%;top:77%;width:32cqw;height:21cqw;background-size:190cqw 166.74cqw;background-position:-3cqw -111.3cqw}
@media(max-width:700px){.hero-art{margin:0 auto 24px;max-width:440px}}
.artifact{mix-blend-mode:multiply}.stool{width:25cqw;height:29cqw;background-position:-59.45cqw -35cqw}.textile{left:75%;width:20cqw;height:33cqw;background-position:-27cqw -30.7cqw}.radio{width:39cqw;height:22cqw}.plate{left:40%;top:66%;transform:scale(.9);transform-origin:top left}.chest{left:60%}
.plate{width:24cqw}

/* One connected, welcoming hero instead of two separate columns. */
.hero{position:relative;display:block;max-width:1440px;min-height:820px;padding:65px 4% 180px;overflow:hidden}
.hero-copy{position:relative;text-align:center;z-index:2;max-width:730px;margin:0 auto;pointer-events:none}
.hero-copy a{pointer-events:auto}.hero-copy h1{font-size:clamp(38px,4.2vw,61px);line-height:1.45}.hero-sub{font-size:21px}.hero-copy .actions,.hero-tags{justify-content:center}.hero-copy .actions{flex-direction:row;max-width:none}.hero-copy .intro{font-size:16px}.hero-copy .button{min-width:210px}
.hero-art{position:absolute;inset:0;width:100%;height:100%;max-width:none;aspect-ratio:auto;margin:0;background:none;container-type:inline-size;z-index:1;pointer-events:none}
.artifact{transform:none!important;mix-blend-mode:normal}
.game{left:3%;top:15%;width:10cqw;height:17cqw;background-size:120cqw 105.31cqw;background-position:-17.78cqw -39cqw;transform:rotate(-9deg)!important}
.tools{left:85%;top:20%;width:14cqw;height:23cqw;background-size:90cqw 78.98cqw;background-position:-70.5cqw -36.1cqw}
.camera{left:7%;top:57%;width:18.6cqw;height:12.9cqw;background-size:120cqw 105.31cqw;background-position:-70.94cqw -28.47cqw;transform:rotate(-8deg)!important}
.bowl{left:35%;top:auto;bottom:2%;width:12cqw;height:8.33cqw;background-size:100cqw 87.76cqw;background-position:-62.86cqw -63.28cqw}
.chest{left:77%;top:62%;width:22cqw;height:22cqw;background-size:112cqw 98.29cqw;background-position:-89.9cqw -75.54cqw}
.stool{left:19%;top:auto;bottom:1%;width:12cqw;height:15cqw;background-size:105cqw 92.15cqw;background-position:-29.72cqw -17.5cqw}
.textile{display:none}.plate{left:52%;top:auto;bottom:2%;width:12cqw;height:12cqw;background-size:90cqw 78.98cqw;background-position:-55.75cqw -44cqw}
.radio{left:63%;top:auto;bottom:0;width:17cqw;height:10cqw;background-size:83cqw 72.84cqw;background-position:-1.31cqw -48.62cqw}
.company-section{padding:70px 6%;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:55px;background:#f7f8fa}.company-section img{width:100%;height:auto;border-radius:8px}.company-section h2{font-size:30px}.company-section a{font-weight:700;border-bottom:2px solid var(--yellow)}
@media(max-width:1100px) and (min-width:701px){.hero{min-height:800px;padding-top:48px}.hero-copy{max-width:590px}.game{left:0;top:18%}.tools{left:87%;top:24%}.camera{left:0;top:58%}.chest{left:81%;top:64%}.hero-copy h1{font-size:45px}}
@media(max-width:700px){.hero{padding:35px 5% 170px;min-height:760px}.hero-copy{max-width:none}.hero-copy h1{font-size:clamp(32px,8.3vw,44px)}.hero-sub{font-size:18px}.hero-copy .intro{font-size:13px}.hero-copy .button{min-width:0;flex:1}.hero-copy .actions{gap:8px}.hero-art{inset:0;max-width:none;margin:0}.game{top:auto;bottom:8%;left:4%;transform:scale(1.1) rotate(-8deg)!important;transform-origin:bottom left}.tools{display:none}.camera{top:auto;bottom:0;left:3%;transform:scale(1.2)!important;transform-origin:bottom left}.stool{bottom:3%;left:27%;transform:scale(1.3)!important;transform-origin:bottom left}.bowl{bottom:15%;left:45%;transform:scale(1.3)!important}.plate{bottom:0;left:48%;transform:scale(1.3)!important}.radio{display:none}.chest{top:auto;bottom:0;left:69%;transform:scale(1.3)!important;transform-origin:bottom left}.company-section{grid-template-columns:1fr;gap:28px;padding:45px 6%}.company-section h2{font-size:26px}}

.radio{left:3%;top:16%;bottom:auto;width:22cqw;height:12cqw;background-size:105cqw 92.15cqw;background-position:-1.65cqw -61.51cqw;transform:rotate(-7deg)!important}.tools{width:8cqw;height:20cqw;left:88%;background-size:90cqw 78.98cqw;background-position:-77.4cqw -37.2cqw}
.sensitive-services{background:#f6f7fa}.scope-note{margin:25px 0;padding:22px 25px;border-left:4px solid var(--navy);background:white}.scope-note p{font-size:14px;margin:8px 0 0}.support-details{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px}.support-details p{font-size:14px}.sensitive-services>.button{display:inline-flex;margin-top:12px;min-height:56px}@media(max-width:700px){.support-details{grid-template-columns:1fr;gap:10px}.radio{display:none}.hero{min-height:700px;padding-bottom:140px}.hero-art .bowl{bottom:10%}}

.camera{background-image:url('assets/camera-whole.png');background-size:contain;background-position:center;width:21cqw;height:14cqw}
.chest{background-image:url('assets/chest-whole.png');background-size:contain;background-position:center;width:23cqw;height:18cqw;left:76%;top:65%}
.tools{background-image:url('assets/tools-whole.png');background-size:contain;background-position:center;width:19cqw;height:20cqw;left:80%;top:18%}
.support-details{gap:28px;margin:40px 0 30px}.support-details p{background:white;border-top:5px solid var(--yellow);padding:32px;font-size:17px;line-height:1.9}.support-details strong{display:block;font-size:29px;line-height:1.55;margin-bottom:20px;color:var(--navy)}
@media(max-width:700px){.camera{top:auto;bottom:0;left:2%;width:22cqw;height:15cqw}.chest{top:auto;bottom:0;left:68%;width:23cqw;height:18cqw}.support-details p{padding:25px;font-size:16px}.support-details strong{font-size:26px}}
.camera{top:49%;left:5%;width:20cqw;height:13cqw;transform:none!important}.stool{left:23%;bottom:1%}@media(max-width:700px){.camera{top:auto;bottom:16%;left:3%;width:25cqw;height:16cqw;transform:none!important}.stool{left:31%;bottom:1%;transform:scale(1.1)!important}}

.hero{min-height:0;padding:48px 4% 40px;overflow:visible}.hero-copy{max-width:850px}.hero-copy h1{font-size:clamp(36px,4vw,56px)}.hero-sub{margin-bottom:12px}.hero-copy .intro{margin-bottom:15px}.hero-tags{margin-bottom:18px}.home-visual{max-width:1080px;margin:30px auto 0}.home-visual img{display:block;width:100%;height:auto;border-radius:8px}.home-visual figcaption{text-align:center;font-size:17px;font-weight:700;margin-top:15px}.home-visual small{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:5px}@media(max-width:700px){.hero{min-height:0;padding:30px 5%}.hero-copy h1{font-size:34px}.home-visual{margin-top:25px}.home-visual figcaption{font-size:14px}.home-visual small{font-size:12px}}

/* Break dense service copy into quick, scannable blocks. */
.service-label{display:inline-block;padding:4px 9px;background:var(--yellow);color:var(--navy);font-size:12px;font-weight:800;letter-spacing:.06em;border-radius:3px}.compact-list{list-style:none;padding:0;margin:18px 0 0}.compact-list li{padding:10px 0 10px 26px;border-top:1px solid #dadae4;position:relative;font-size:15px}.compact-list li:before{content:'✓';position:absolute;left:0;color:var(--green);font-weight:900}.support-details span,.support-details small{display:block}.support-details small{margin-top:12px;color:var(--muted);font-size:12px}.scope-note strong{font-size:16px}
@media(max-width:700px){body{line-height:1.72}.section{padding-top:48px;padding-bottom:48px}.section-title{margin-bottom:22px}.section-title .eyebrow{margin-bottom:10px;font-size:12px}.section-title>p:last-child{line-height:1.7}.service-grid article{padding:23px 21px}.service-grid h3{font-size:20px;line-height:1.5;margin:12px 0}.compact-list{margin-top:14px}.compact-list li{font-size:14px;line-height:1.55;padding-top:9px;padding-bottom:9px}.scope-note{margin:20px 0;padding:18px 19px}.scope-note p{line-height:1.65;margin-bottom:0}.support-details{margin:22px 0;gap:14px}.support-details p{padding:22px 20px;margin:0;font-size:14px;line-height:1.7}.support-details strong{font-size:21px;line-height:1.45;margin-bottom:10px}.support-details small{margin-top:8px}.sensitive-services>.button{width:100%}.flow li p{line-height:1.65}.company-section p{font-size:14px;line-height:1.7}}
