:root{--paper:#f3f1eb;--ink:#191919;--red:#d80018;--muted:#625f59;--line:#ccc9c0;--display:'Archivo Black',sans-serif;--body:'Zen Kaku Gothic New',sans-serif;--mono:'Space Mono',monospace;--pad:clamp(22px,4.2vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-weight:500;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}p{line-height:1.9}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,video:focus-visible{outline:3px solid var(--red);outline-offset:5px}.contact a:focus-visible,.service-contact a:focus-visible,.contact button:focus-visible{outline-color:#fff;box-shadow:0 0 0 6px var(--red)}::selection{background:var(--red);color:white}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;z-index:200;top:8px;left:8px;padding:16px;background:var(--red);color:white;transform:translateY(-160%)}.skip:focus{transform:none}.red{color:var(--red)}.dark{background:var(--ink);color:var(--paper)}.section{padding:100px var(--pad)}.eyebrow,.section-index{font-family:var(--mono);font-size:11px;line-height:1.5;letter-spacing:.06em}.section-index{margin-bottom:28px}.dot{display:inline-block;width:7px;height:7px;margin-right:9px;border-radius:50%;background:var(--red)}
.header{height:88px;padding:0 var(--pad);display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--line);background:var(--paper);position:sticky;top:0;z-index:50}.brand{width:118px;flex-shrink:0}.brand img{width:118px;height:62px;object-fit:contain}.header-note{font-family:var(--mono);font-size:9px;line-height:1.6;letter-spacing:.02em}.header nav{margin-left:auto;display:flex;align-items:center;gap:26px}.header nav a{font-size:12px;font-weight:700;position:relative;padding:13px 0}.header nav a:hover{color:var(--red)}.header nav .nav-contact{background:var(--ink);color:white;padding:14px 22px;display:flex;gap:30px}.header nav .nav-contact:hover{background:var(--red)}.menu-toggle{display:none}.hero{padding:42px var(--pad) 0}.hero-top{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}.hero h1{font-size:clamp(29px,3.15vw,48px);line-height:1.4;letter-spacing:-.035em;font-weight:900;margin-top:14px}.hero-intro{font-size:13px;max-width:370px;padding-bottom:4px}.text-link{display:inline-flex;align-items:center;gap:40px;border-bottom:1px solid currentColor;padding:12px 0 8px;font-size:13px;font-weight:700;transition:gap .25s}.text-link:hover{gap:50px}.masthead{display:flex;align-items:center;justify-content:space-between;padding:4px 0 0;margin-top:19px;overflow:hidden}.masthead>span:first-child{font-family:var(--display);font-size:clamp(92px,22.05vw,360px);line-height:1.03;letter-spacing:-.083em;margin-left:-.035em}.masthead-cross{color:var(--red);font-family:var(--body);font-weight:900;font-size:clamp(65px,13.4vw,210px);line-height:1;transform:rotate(-8deg);padding-left:2vw;margin-top:14px}.hero-photo{position:relative;height:clamp(340px,35vw,560px);margin-top:-7px;overflow:hidden;background:#28221e}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:center 23%;animation:cover-arrive 1.2s ease-out both}.hero-photo-shade{position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.75))}.hero-photo-caption{position:absolute;bottom:30px;left:32px;right:32px;color:white}.hero-photo-caption .eyebrow{font-size:10px}.hero-photo-caption a{display:flex;align-items:end;justify-content:space-between;font-family:var(--display);font-size:32px;margin-top:8px}.hero-photo-caption a>span:not(.sr-only){font-family:var(--mono);font-size:10px;font-weight:400;padding-bottom:7px}.image-mark{position:absolute;top:24px;right:26px;color:#fff;font-family:var(--mono);font-size:10px;border:1px solid #ffffff80;padding:8px 10px}.hero-foot{display:flex;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:9px;letter-spacing:.05em}.hero::after{content:'';position:absolute;left:0;right:0;height:1px;background:var(--red);pointer-events:none;opacity:.6}@keyframes cover-arrive{from{transform:scale(1.04)}to{transform:scale(1)}}
.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:48px}.section-heading h2{font-size:clamp(30px,3.5vw,52px);font-weight:900;line-height:1.45;letter-spacing:-.045em}.section-description{font-size:13px;color:var(--muted);padding-bottom:6px;max-width:390px}.dark .section-description{color:#bcbab3}.service-primary{display:grid;grid-template-columns:1.05fr 1fr;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:38px 0;gap:7vw;transition:color .25s}.service-primary:hover .service-en{color:var(--red)}.service-primary-title{display:flex;flex-direction:column;justify-content:space-between}.service-en{font-family:var(--display);font-size:clamp(58px,7.9vw,126px);letter-spacing:-.055em;line-height:.94;margin-top:28px;transition:color .25s}.service-no{font-family:var(--mono);font-size:12px;color:var(--red)}.service-primary-copy{display:flex;flex-direction:column;align-items:start}.service-primary h3{font-size:24px;font-weight:900;margin:18px 0}.service-primary-copy p{font-size:14px;line-height:2}.service-tags{font-size:11px;margin:25px 0;color:var(--muted)}.service-link{font-size:13px;display:flex;align-items:center;justify-content:space-between;width:100%;border-bottom:1px solid var(--line);padding:12px 0}.service-link span{font-size:32px}.service-list{margin-top:15px}.service-row{display:grid;grid-template-columns:50px 1.2fr 1fr 40px;gap:20px;align-items:center;min-height:150px;border-bottom:1px solid var(--line);padding:30px 0;transition:background .25s}.service-row:hover h3{color:var(--red)}.service-row h3{font-family:var(--display);font-size:clamp(22px,2.6vw,39px);letter-spacing:-.035em;transition:color .25s}.service-row>div>span{font-size:12px;display:block;margin-top:7px}.service-row p{font-size:13px;color:var(--muted)}.row-arrow{font-size:35px;text-align:right}
.section-heading .display-heading{font-family:var(--display);font-size:clamp(56px,8vw,125px);line-height:.98;letter-spacing:-.05em}.works{padding-bottom:90px}.works-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px 28px}.work-card a{display:block}.work-image{aspect-ratio:1.48;position:relative;overflow:hidden;background:#0b0b0b}.work-image>img{width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.3,1)}.work-card:hover .work-image>img{transform:scale(1.035)}.work-owner{position:absolute;left:18px;top:18px;background:var(--paper);color:var(--ink);padding:7px 10px;font-family:var(--mono);font-size:9px}.work-visit{position:absolute;right:18px;bottom:18px;border-radius:50%;width:46px;height:46px;display:grid;place-items:center;font-size:26px;background:var(--paper);color:var(--ink);transition:background .25s}.work-card:hover .work-visit{background:var(--red);color:white}.work-caption{display:flex;justify-content:space-between;gap:20px;padding-top:20px}.work-caption .eyebrow{font-size:9px;color:#bebbb4}.work-caption h3{font-family:var(--display);font-size:clamp(20px,2.5vw,34px);letter-spacing:-.04em;margin:7px 0}.work-description{font-size:12px;color:#bcbab3}.work-number{font-family:var(--mono);font-size:11px;color:#a29e98;padding-top:3px}
.filter-bar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink);margin-bottom:32px}.filters{display:flex;gap:28px}.filters button{background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;padding:13px 0 16px;font-family:var(--mono);font-size:13px;display:flex;gap:8px;align-items:center}.filters button>span{font-family:var(--body);font-size:10px}.filters button.active{color:var(--red);border-color:var(--red)}.filter-count{font-family:var(--mono);font-size:10px;color:var(--muted)}.media-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 25px}.media-card{min-width:0}.media-card>a{display:block}.media-image{height:230px;position:relative;overflow:hidden;background:var(--ink)}.media-image>img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.media-card:hover .media-image>img{transform:scale(1.04)}.media-caption{padding-top:18px}.media-caption .eyebrow{font-size:9px;color:var(--muted)}.media-caption h3{display:flex;justify-content:space-between;align-items:center;font-size:18px;font-weight:900;margin:6px 0 8px}.media-caption h3>span{font-weight:400;font-size:23px}.media-caption>p:last-of-type{font-size:12px;color:var(--muted)}.media-type{height:100%;padding:22px;display:flex;flex-direction:column;justify-content:space-between}.media-type strong{font-size:clamp(26px,2.55vw,38px);font-weight:900;line-height:1.4;letter-spacing:-.02em}.media-mini,.media-bottom{font-family:var(--mono);font-size:8px;letter-spacing:.03em}.media-bottom{font-family:var(--body);font-size:11px}.keikamotsu{background:#e2ddcc;color:#262923}.keikamotsu strong{border-left:5px solid #bd502c;padding-left:12px}.tatamu{background:#e8e0d7;color:#714b37}.tatamu strong{font-weight:500}.petmap{background:#d8e4df;color:#254d43}.petmap strong{font-size:clamp(25px,2.4vw,35px)}.products{border-top:1px solid var(--line);margin-top:60px;padding-top:35px;display:grid;grid-template-columns:1fr 1.7fr;gap:45px}.products-intro h3{font-size:20px;margin:12px 0 8px}.products-intro>p:last-child{font-size:12px;color:var(--muted)}.product-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.product-list>a{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--ink);padding:13px 0}.product-list strong{display:block;font-size:18px}.product-list small{font-size:10px;color:var(--muted);display:block;margin-top:10px;line-height:1.7}.product-list em{font-family:var(--mono);font-style:normal;font-size:8px;color:var(--red);display:block;margin-top:4px}.product-list>a:hover{color:var(--red)}
.about{display:grid;grid-template-columns:1fr 1fr}.about-visual{position:relative;min-height:650px}.about-visual>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.about-visual>.eyebrow{position:absolute;bottom:27px;left:var(--pad);color:#fff;text-shadow:0 1px 5px #000}.about-copy{padding:75px var(--pad);display:flex;flex-direction:column;align-items:start;justify-content:center}.about-copy h2{font-size:clamp(26px,2.6vw,40px);line-height:1.7;font-weight:900;letter-spacing:-.025em;margin-bottom:28px}.about-copy>p:not(.section-index){font-size:13px;color:#cbc8c0;line-height:2.1;margin-bottom:18px}.about-sign{display:flex;justify-content:space-between;width:100%;gap:16px;border-top:1px solid #55524c;margin-top:14px;padding-top:23px}.about-sign strong{font-size:15px}.about-sign>span{font-size:10px;line-height:1.8;color:#cbc8c0}.about-copy>.text-link{font-family:var(--mono);font-size:10px;margin-top:15px}.contact{background:var(--red);color:#fff;position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 3fr;padding-top:75px;padding-bottom:90px}.contact-body{position:relative;z-index:1}.contact-body .eyebrow{font-size:12px;margin-bottom:18px}.contact h2{font-size:clamp(38px,5.6vw,82px);font-weight:900;line-height:1.35;letter-spacing:-.05em}.contact-body>p:not(.eyebrow){font-size:14px;margin-top:22px}.contact-actions{display:flex;gap:35px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{min-height:54px;padding:17px 24px;display:inline-flex;justify-content:space-between;align-items:center;gap:35px;font-size:13px;font-weight:700;transition:background .2s,color .2s}.light{background:var(--paper);color:var(--ink)}.light:hover{background:var(--ink);color:white}.dark-button{background:var(--ink);color:white}.dark-button:hover{background:var(--red)}.contact-note{display:block;margin-top:20px;font-size:11px}.contact-symbol{position:absolute;font-family:var(--display);right:2vw;bottom:-30px;line-height:1;font-size:360px;opacity:.12}.footer{padding:45px var(--pad) 20px;display:grid;grid-template-columns:1fr 2fr auto;gap:30px;align-items:center}.footer-brand{font-family:var(--display);font-size:44px;letter-spacing:-.07em}.footer-brand>.red{font-family:var(--body);font-size:25px;vertical-align:top;padding-left:5px}.footer p{font-size:11px;line-height:2}.top-link{font-family:var(--mono);font-size:10px}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);display:flex;justify-content:space-between;margin-top:10px;padding-top:20px;font-family:var(--mono);font-size:8px}
/* Service detail pages */
.service-hero{padding-top:38px;padding-bottom:60px}.back-link{display:inline-block;font-size:12px;margin-bottom:50px}.service-hero .section-index{margin-bottom:15px}.detail-en{font-family:var(--display);font-size:clamp(40px,8vw,120px);letter-spacing:-.045em;line-height:1.1;margin-bottom:40px}.detail-title{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.detail-title h1{font-size:clamp(30px,3.5vw,50px);font-weight:900;line-height:1.55;letter-spacing:-.035em}.detail-title>div>p{font-size:15px;line-height:2}.detail-title .button{margin-top:25px}.detail-cover{height:clamp(320px,39vw,600px);position:relative;background:#26211d}.detail-cover img{width:100%;height:100%;object-fit:cover;object-position:center 23%}.cover-caption{position:absolute;left:var(--pad);bottom:25px;font-family:var(--mono);font-size:10px;color:white;text-shadow:0 1px 6px #000}.scope-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.scope-grid article{border-top:1px solid var(--ink);padding-top:25px}.scope-grid h3{font-size:19px;font-weight:900;margin:20px 0 15px}.scope-grid p{font-size:13px;color:var(--muted);line-height:2}.pricing{padding-top:50px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.price-grid article{background:var(--paper);padding:32px 25px}.price-grid h3{font-size:18px;margin:18px 0}.price-grid strong{display:block;font-family:var(--display);font-size:34px;letter-spacing:-.04em}.price-grid strong>span{font-family:var(--body);font-size:22px;margin-left:8px}.price-grid p:last-child{font-size:11px;margin-top:18px;color:var(--muted)}.price-note{font-size:11px;color:var(--muted);margin-top:20px}.process-grid{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.process-grid li{border-top:1px solid var(--ink);padding-top:23px}.process-grid .eyebrow{color:var(--red)}.process-grid h3{font-size:18px;margin:18px 0 12px}.process-grid p{font-size:13px;color:var(--muted)}.service-contact{background:var(--red);color:white}.service-contact h2{font-size:clamp(30px,4vw,60px);margin:22px 0;font-weight:900;letter-spacing:-.03em}.service-contact>p{font-size:13px}.other-services{padding-top:55px;padding-bottom:55px}.other-services>div{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:25px}.other-services a{font-family:var(--display);font-size:23px;letter-spacing:-.02em;border-bottom:1px solid var(--line);padding-bottom:17px}.other-services a:hover{color:var(--red)}.other-services a>span{font-family:var(--body);font-size:11px;display:block;margin-top:10px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 25px;align-items:start}.photo-grid img{width:100%;height:400px;object-fit:cover}.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(5){padding-top:75px}.photo-grid figcaption{font-size:10px;color:#bcbab3;padding-top:12px}.film-showcase video{display:block;width:100%;max-height:680px;background:black;aspect-ratio:16/9}.video-note{font-size:11px;color:#bcbab3;margin-top:15px}.film-showcase .text-link{margin-top:20px}.ai-flow{padding-top:60px;padding-bottom:60px}.ai-flow>.eyebrow{color:#bcbab3}.ai-flow-grid{display:grid;grid-template-columns:1fr 30px 1fr 30px 1fr;gap:25px;align-items:center;margin-top:40px}.ai-flow-grid>div>span{font-family:var(--mono);font-size:10px;color:#bcbab3}.ai-flow-grid strong{display:block;font-size:22px;margin:20px 0 10px}.ai-flow-grid p{font-size:12px;color:#bcbab3}.ai-flow-grid b{color:#ff5c6e;font-size:27px}.ai-flow-note{font-size:10px;color:#bcbab3;margin-top:30px}.ai-note{border-top:1px solid var(--line)}.ai-note h2{font-size:clamp(30px,4vw,56px);font-weight:900;margin:22px 0}.ai-note>p:not(.eyebrow){font-size:14px;line-height:2;margin-top:20px}.not-found{min-height:60vh}.not-found h1{margin:30px 0}
@media(min-width:1600px){body{max-width:1920px;margin:auto}.masthead>span:first-child{font-size:350px}.hero-photo{max-height:590px}}
@media(max-width:1100px){.header-note{display:none}.header nav{gap:21px}.media-grid{gap:35px 20px}.media-image{height:200px}.filters{gap:22px}.filters button>span{display:none}.products{grid-template-columns:1fr;gap:25px}.about-copy{padding:60px 35px}.about-visual{min-height:600px}.contact{grid-template-columns:1fr 3.7fr}.photo-grid img{height:340px}.ai-flow-grid{gap:15px}.ai-flow-grid strong{font-size:19px}}
@media(max-width:760px){html{scroll-padding-top:85px}.section{padding:68px var(--pad)}.header{height:72px;justify-content:space-between}.brand,.brand img{width:105px}.brand img{height:57px}.header-note{display:block;margin-right:auto;font-size:7px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;padding:15px 0 15px 15px;font-family:var(--mono);font-size:10px}.menu-toggle i{width:19px;height:11px;border-top:1px solid;border-bottom:1px solid;position:relative}.menu-toggle[aria-expanded=true] i{border:0}.menu-toggle[aria-expanded=true] i:before,.menu-toggle[aria-expanded=true] i:after{content:'';position:absolute;width:19px;height:1px;background:currentColor;top:5px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] i:after{transform:rotate(-45deg)}.header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:20px var(--pad) 28px;box-shadow:0 15px 25px #0002;border-bottom:1px solid var(--line);margin:0}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.header nav>a{padding:17px 0;border-bottom:1px solid var(--line);font-size:14px}.header nav .nav-contact{margin-top:15px;justify-content:space-between}.hero{padding-top:30px}.hero-top{align-items:start;flex-direction:column;gap:22px}.hero .eyebrow{font-size:9px}.hero h1{font-size:32px;line-height:1.45;margin-top:12px}.hero-intro{font-size:11px;max-width:none;line-height:1.85}.hero-intro br:first-child{display:none}.hero-intro .text-link{font-size:11px;padding-top:10px}.masthead{margin-top:21px;padding-top:0}.masthead>span:first-child{font-size:21.2vw}.masthead-cross{font-size:12vw;margin-top:4px;padding-left:1vw}.hero-photo{height:360px;margin-top:0;margin-left:calc(-1 * var(--pad));margin-right:calc(-1 * var(--pad))}.hero-photo>img{object-position:57% center}.hero-photo-caption{left:var(--pad);right:var(--pad);bottom:22px}.hero-photo-caption a{font-size:26px;display:block}.hero-photo-caption a>span:not(.sr-only){display:block;font-size:8px;margin-top:5px}.image-mark{top:18px;right:var(--pad);font-size:8px}.hero-foot{font-size:7px;gap:12px;letter-spacing:0;padding:14px 0}.hero::after{display:none}.section-index{font-size:10px;margin-bottom:22px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:30px;line-height:1.5}.section-description{margin-top:22px;font-size:12px}.service-primary{grid-template-columns:1fr;gap:28px;padding:28px 0}.service-en{font-size:63px;line-height:1.05;margin-top:15px}.service-en br{display:block}.service-primary-copy{display:block;position:relative}.service-primary-copy .service-no{position:absolute;right:0;top:3px}.service-primary h3{font-size:22px;margin:0 0 16px}.service-primary-copy p{font-size:12px}.service-tags{display:block;font-size:10px;margin:20px 0 5px}.service-link{font-size:12px}.service-row{grid-template-columns:25px 1fr 25px;gap:14px;padding:25px 0;min-height:0}.service-row h3{font-size:25px}.service-row>div>span{font-size:11px;line-height:1.7}.service-row>p{grid-column:2/3;font-size:11px;line-height:1.85}.service-row>.row-arrow{grid-column:3;grid-row:1/3;font-size:29px}.service-row>.service-no{align-self:start;padding-top:8px;font-size:10px}.section-heading .display-heading{font-size:66px;line-height:1}.works-grid{grid-template-columns:1fr;gap:38px}.work-image{aspect-ratio:1.38}.work-owner{font-size:8px;left:13px;top:13px}.work-visit{width:38px;height:38px;right:13px;bottom:13px;font-size:22px}.work-caption h3{font-size:25px}.work-description{font-size:11px;line-height:1.85}.work-caption{padding-top:15px}.filter-bar{align-items:end;margin-bottom:25px}.filters{gap:19px}.filters button{font-size:10px;padding:12px 0 15px;min-height:44px}.filter-count{font-size:8px;white-space:nowrap;padding-bottom:17px}.media-grid{grid-template-columns:1fr 1fr;gap:30px 15px}.media-image{height:162px}.media-type{padding:13px}.media-type strong{font-size:21px}.media-mini{font-size:6px;line-height:1.6}.media-bottom{font-size:8px}.media-caption{padding-top:13px}.media-caption .eyebrow{font-size:7px}.media-caption h3{font-size:14px;line-height:1.5;gap:5px;margin:6px 0}.media-caption h3>span{font-size:18px}.media-caption>p:last-of-type{font-size:10px;line-height:1.8}.petmap strong{font-size:18px}.products{margin-top:40px;padding-top:26px;gap:22px}.products-intro h3{font-size:20px}.product-list{gap:15px;grid-template-columns:1fr}.product-list>a{padding:14px 0}.product-list strong{font-size:16px;display:inline-block}.product-list small{font-size:11px;display:inline;margin-left:18px}.product-list em{display:inline;font-size:7px;margin-left:5px}.about{grid-template-columns:1fr}.about-visual{min-height:380px}.about-copy{padding:55px var(--pad)}.about-copy h2{font-size:29px;line-height:1.6;margin-bottom:24px}.about-copy>p:not(.section-index){font-size:12px}.about-sign{margin-top:15px}.contact{display:block;padding-top:45px;padding-bottom:60px}.contact>.section-index{margin-bottom:38px}.contact-body .eyebrow{font-size:10px}.contact h2{font-size:36px;line-height:1.45}.contact-body>p:not(.eyebrow){font-size:12px}.contact-actions{gap:20px;align-items:start;flex-direction:column;margin-top:25px}.contact .button{width:100%;font-size:13px}.contact .text-link{font-size:12px}.contact-symbol{font-size:260px;bottom:0;right:-30px}.contact-note{font-size:10px}.footer{grid-template-columns:1fr auto;gap:22px;padding-top:30px}.footer-brand{font-size:40px}.footer>div:not(.footer-bottom){grid-column:1/-1;grid-row:2}.footer p{font-size:10px}.footer-bottom{margin-top:0;font-size:7px}.top-link{font-size:8px}.service-hero{padding-top:28px;padding-bottom:40px}.back-link{margin-bottom:35px}.detail-en{font-size:9.2vw;overflow-wrap:normal;margin-bottom:28px;line-height:1.1}.detail-title{grid-template-columns:1fr;gap:25px}.detail-title h1{font-size:30px;line-height:1.6}.detail-title>div>p{font-size:13px}.detail-title .button{font-size:12px;margin-top:20px}.detail-cover{height:360px}.detail-cover img{object-position:57% center}.cover-caption{font-size:8px}.scope-grid{grid-template-columns:1fr;gap:32px}.scope-grid article{padding-top:22px}.scope-grid h3{font-size:19px;margin:15px 0 12px}.scope-grid p{font-size:12px}.pricing{padding-top:10px}.price-grid{grid-template-columns:1fr}.price-grid article{padding:27px}.price-grid strong{font-size:38px}.price-note{font-size:10px}.process-grid{grid-template-columns:1fr 1fr;gap:32px 20px}.process-grid h3{font-size:16px;line-height:1.6}.process-grid p{font-size:12px}.service-contact h2{font-size:29px;line-height:1.6}.service-contact>p{font-size:12px}.service-contact .button{width:100%}.other-services>div{grid-template-columns:1fr;gap:25px}.other-services a{font-size:26px}.other-services a>span{font-size:11px}.photo-grid{grid-template-columns:1fr 1fr;gap:28px 16px}.photo-grid img{height:230px}.photo-grid figure:nth-child(2),.photo-grid figure:nth-child(5){padding-top:0}.photo-grid figure:nth-child(even){padding-top:40px}.photo-grid figcaption{font-size:9px}.film-showcase video{max-height:none}.ai-flow-grid{grid-template-columns:1fr;gap:18px;margin-top:25px}.ai-flow-grid b{transform:rotate(90deg);justify-self:start;margin-left:10px}.ai-flow-grid strong{font-size:23px;margin:12px 0 5px}.ai-flow-note{font-size:10px}.ai-note h2{font-size:30px}.ai-note>p:not(.eyebrow){font-size:12px}.ai-note br{display:none}}
@media(max-width:360px){.hero h1{font-size:29px}.filters{gap:12px}.media-type strong{font-size:18px}.petmap strong{font-size:16px}.service-en{font-size:56px}.contact h2{font-size:33px}.header-note{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* 2026-10-08 D-003: 絵文字化しない矢印（SVG・全ページ共通） */
.arr{width:1em;height:1em;display:inline-block;vertical-align:-.12em;flex:none}
