
:root{--paper:#f4f1e8;--ink:#272822;--yellow:#e4f06b;--gray:#73756b;--line:#d6d7ca;--white:#fffef8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;line-height:1.7}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #5a7062;outline-offset:5px}button:disabled{cursor:default}button,a{touch-action:manipulation}.wrap{width:min(1240px,calc(100% - 88px));margin:auto}.preview{font-size:10px;text-align:center;letter-spacing:.06em;background:var(--ink);color:#e6e8dc;padding:6px 10px}.header{padding:26px 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.logo{display:flex;gap:10px;align-items:center;font-size:17px;font-weight:800;letter-spacing:.05em}.logo svg{width:37px;height:37px}.logo small{display:block;font-size:8px;font-weight:500;letter-spacing:.14em}.nav{display:flex;gap:30px;align-items:center;font-size:11px}.nav .pill{border:1px solid var(--ink);border-radius:30px;padding:10px 18px}.hero{padding:44px 0 60px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:62px;align-items:center}.eyebrow{font-size:10px;letter-spacing:.14em;display:flex;align-items:center;gap:10px}.dot{width:7px;height:7px;border-radius:50%;background:var(--ink);display:inline-block}.hero h1{font-size:clamp(46px,4.7vw,68px);letter-spacing:-.045em;line-height:1.48;margin:27px 0 23px;font-weight:900;white-space:nowrap}.hero h1 .mark{position:relative;display:inline-block;z-index:0}.hero h1 .mark:before{content:"";position:absolute;bottom:13px;left:0;right:-8px;height:19px;background:var(--yellow);z-index:-1;transform:rotate(-2deg)}.intro{font-size:14px;line-height:2.1;letter-spacing:.035em}.note{font-size:11px;color:var(--gray)}.air-friend{display:flex;align-items:center;gap:17px;margin-top:35px}.friend{width:100px;height:100px;position:relative;flex-shrink:0}.friend svg{width:100%;height:100%;overflow:visible}.friend-blades{transform-origin:50px 50px;animation:spin 28s linear infinite}.friend-label{font-size:11px;border:1px solid #b7baac;border-radius:50% 50% 50% 0;padding:15px 23px;transform:rotate(-4deg);background:#faf9f2}.tiny{font-family:monospace;letter-spacing:.12em;font-size:9px;color:var(--gray)}@keyframes spin{to{transform:rotate(360deg)}}.console{border:1.5px solid var(--ink);background:var(--white);border-radius:19px;box-shadow:8px 8px 0 #daddcc;overflow:hidden;position:relative}.console-bar{padding:15px 23px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink);font-family:monospace;font-size:10px;letter-spacing:.12em;background:var(--yellow)}.console-dots{display:flex;gap:4px}.console-dots i{height:5px;width:5px;border:1px solid var(--ink);border-radius:50%}.console-content{padding:28px}.question{font-size:23px;letter-spacing:.02em;font-weight:800;margin:0 0 5px}.subquestion{font-size:11px;color:var(--gray);margin:0 0 20px}.options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.option{display:flex;justify-content:space-between;text-align:left;align-items:center;gap:8px;padding:15px 13px;border:1px solid #cbcec1;border-radius:9px;background:white;font-size:12px;line-height:1.6;min-height:70px;transition:background .15s,transform .15s}.option .symbol{font-size:22px;font-weight:400}.option[aria-pressed=true]{background:var(--yellow);border-color:var(--ink);box-shadow:2px 2px 0 var(--ink)}.option:hover{transform:translateY(-2px)}.reply{border-left:2px solid #b4b7a7;padding:0 0 0 12px;font-size:11px;color:#65695c;margin:22px 0;min-height:42px;display:flex;align-items:center}.reply strong{color:var(--ink)}.contact-label{display:flex;justify-content:space-between;align-items:center;font-size:11px;margin-bottom:11px}.contact-label span{font-size:9px;color:var(--gray)}.line-button{width:100%;display:flex;justify-content:space-between;align-items:center;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:9px;padding:16px 19px;text-align:left;font-size:14px;font-weight:700;transition:background .2s}.line-button:hover{background:#424637}.line-button small{display:block;color:#d4d7c7;font-size:9px;font-weight:400;margin-top:2px}.line-button .arrow{font-size:25px;font-weight:400;color:var(--yellow)}.other-contacts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.other-contacts button{border:1px solid #caccbf;border-radius:8px;background:transparent;font-size:12px;padding:12px}.other-contacts button:hover{background:#eff0e7}.mini-privacy{font-size:9px;color:var(--gray);line-height:1.8;margin:13px 0 0}.hero-tail{display:flex;justify-content:space-between;align-items:center;margin-top:45px;font-size:10px;color:var(--gray)}.hero-tail a{font-size:11px;color:var(--ink)}.ticker{overflow:hidden;background:var(--yellow);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:18px 0}.ticker-inner{display:flex;gap:36px;justify-content:center;align-items:center;white-space:nowrap;font-size:13px;letter-spacing:.09em}.ticker b{font-weight:400;font-size:20px}.ticker small{font-family:monospace;font-size:10px;letter-spacing:.16em}.more{padding:80px 0}.more-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.kicker{font-size:10px;letter-spacing:.15em;margin:0 0 18px;color:var(--gray);font-family:monospace}.more h2{font-size:31px;line-height:1.65;margin:0 0 20px;letter-spacing:.02em}.more p{font-size:12px;color:#73756b;line-height:2}.more-list details{border-bottom:1px solid #bbbfb0}.more-list details:first-child{border-top:1px solid #bbbfb0}summary{padding:23px 30px 23px 0;font-size:14px;cursor:pointer;position:relative;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:5px;font-size:20px;top:17px}details[open] summary:after{content:'−'}summary span{font:10px monospace;color:var(--gray);margin-right:20px}.more-list details p{margin:0;padding:0 0 23px}.service-tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:24px}.service-tags span{font-size:10px;border:1px solid #c7cabd;border-radius:3px;padding:4px 9px}.closing{border:1px solid var(--ink);padding:29px 36px;border-radius:13px;display:flex;align-items:center;justify-content:space-between;margin-top:58px;gap:25px}.closing p{margin:0;color:var(--ink);font-weight:700;font-size:17px}.closing a{background:var(--ink);color:white;border-radius:30px;padding:12px 22px;font-size:12px;white-space:nowrap}.footer{border-top:1px solid var(--line);padding:27px 0 35px}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:var(--gray)}.footer button{border:0;background:transparent;padding:5px 0;font-size:10px;text-decoration:underline}.footer .draft{margin:10px 0 0;color:var(--gray);font-size:9px}.mobile-bar{display:none}dialog{padding:0;max-width:510px;width:calc(100% - 30px);max-height:calc(100dvh - 40px);border:1.5px solid var(--ink);border-radius:16px;box-shadow:8px 8px 0 #0002;color:var(--ink);background:var(--white)}dialog::backdrop{background:#27282299;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;background:var(--yellow);border-bottom:1px solid var(--ink);padding:12px 20px;font:10px monospace;letter-spacing:.15em}.close{border:0;background:transparent;font-size:23px;line-height:1.2;padding:4px 7px;min-width:32px;min-height:32px}.dialog-body{padding:24px}.dialog-body h2{font-size:24px;line-height:1.6;margin:0 0 10px}.dialog-body p{font-size:12px;line-height:1.95;color:#6f7266}.fact{border:1px solid var(--line);border-radius:8px;padding:14px 16px;margin:17px 0}.fact strong{display:block;font-size:12px}.fact p{font-size:11px;margin:6px 0 0}.template{white-space:pre-line;font-size:12px;background:#f0f1e7;padding:15px;border-radius:6px;line-height:1.8;margin:18px 0 12px}.copy{border:1px solid var(--ink);background:transparent;border-radius:6px;font-size:11px;padding:10px 15px}.action{display:block;width:100%;text-align:center;border:0;background:var(--ink);color:white;padding:15px 18px;border-radius:8px;font-size:13px;margin-top:20px}.action:disabled{background:#e5e6dc;color:#666c5d}.setup{font-size:10px!important;margin:10px 0 0!important}.toast{position:fixed;bottom:95px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:11px 18px;border-radius:7px;z-index:100;font-size:11px;max-width:90vw;width:max-content}.toast:empty{display:none}@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.hero-grid{gap:35px}.hero h1{font-size:48px}.console-content{padding:22px}.question{font-size:21px}.option{font-size:11px}.more-grid{gap:45px}.nav{gap:18px}}@media(max-width:760px){.wrap{width:calc(100% - 36px)}.preview{font-size:9px;padding:5px 8px}.header{padding:19px 0}.logo{font-size:14px}.logo svg{width:31px;height:31px}.logo small{font-size:7px}.nav>a:not(.pill){display:none}.nav .pill{font-size:10px;padding:8px 12px}.hero{padding:28px 0 32px}.hero-grid{grid-template-columns:1fr;gap:30px}.eyebrow{font-size:9px}.hero h1{font-size:clamp(39px,9.4vw,57px);margin:20px 0 15px;line-height:1.5}.intro{font-size:12px;line-height:1.95}.hero h1 .mark:before{height:14px;bottom:9px}.air-friend{position:absolute;right:20px;top:230px;transform:rotate(7deg);pointer-events:none;opacity:.9}.friend{width:67px;height:67px}.friend-label{display:none}.tiny{display:none}.console{box-shadow:5px 5px 0 #daddcc;border-radius:13px}.console-bar{padding:12px 20px;font-size:9px}.console-content{padding:22px}.question{font-size:22px}.option{font-size:12px;min-height:62px;padding:12px}.reply{margin:19px 0;min-height:38px}.line-button{padding:14px 17px}.hero-tail{margin-top:26px;font-size:9px}.ticker{padding:13px 0}.ticker-inner{justify-content:flex-start;gap:23px;padding:0 18px;font-size:11px}.ticker small{display:none}.ticker b{font-size:16px}.more{padding:51px 0}.more-grid{grid-template-columns:1fr;gap:23px}.more h2{font-size:27px;margin-bottom:12px}.kicker{font-size:9px;margin-bottom:12px}.more p{font-size:11px}.closing{padding:22px;display:block;margin-top:32px}.closing p{font-size:16px;margin-bottom:18px}.closing a{display:inline-block;font-size:11px}.footer{padding-bottom:105px}.footer-row{flex-wrap:wrap;gap:12px;font-size:9px}.mobile-bar{display:flex;justify-content:space-between;align-items:center;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#f4f1e8f5;backdrop-filter:blur(10px);border-top:1px solid #c6cabb;padding:10px 18px calc(10px + env(safe-area-inset-bottom));gap:10px}.mobile-bar>span{font-size:10px;line-height:1.6}.mobile-bar button{border:0;background:var(--ink);border-radius:30px;color:white;padding:12px 18px;font-size:12px}.dialog-body{padding:21px}.dialog-body h2{font-size:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.friend-blades{animation:none}.option{transition:none}}

.care-points{margin-top:24px}.care-points>div{position:relative;padding:10px 0 10px 30px}.care-points>div>span{position:absolute;left:0;top:12px;font:10px monospace;color:var(--gray)}.care-points strong{font-size:12px;font-weight:700}.care-points p{font-size:10px;margin:3px 0 0;line-height:1.8}.more-grid{align-items:start}@media(max-width:760px){.care-points{margin-top:20px}.care-points>div{padding-top:7px;padding-bottom:7px}.care-points>div>span{top:10px}.air-friend{top:221px}.intro{font-size:11px}}

/* Shared navigation and inner pages */
.header-left{display:flex;align-items:center;gap:17px;min-width:0}.menu-toggle{width:44px;height:44px;flex-shrink:0;border:1px solid var(--ink);border-radius:50%;display:grid;place-content:center;gap:5px;background:transparent}.menu-toggle span{display:block;width:17px;height:1.5px;background:var(--ink);transition:transform .2s}.menu-toggle:hover{background:var(--yellow)}html:has(dialog[open]){overflow:hidden}.menu-drawer{margin:0 auto 0 0;inset:0 auto 0 0;width:min(460px,calc(100vw - 22px));max-width:none;height:100dvh;max-height:100dvh;border:0;border-right:1px solid var(--ink);border-radius:0 20px 20px 0;background:var(--paper);box-shadow:15px 0 80px #0002;padding:0;animation:none}.menu-drawer[open]{display:flex;flex-direction:column}.menu-top{padding:24px 27px 17px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.menu-top h2{font:11px monospace;letter-spacing:.16em;margin:0}.menu-scroll{overflow-y:auto;padding:27px;flex:1}.menu-intro{font-size:22px;line-height:1.7;margin:0 0 23px}.drawer-nav{display:flex;flex-direction:column}.drawer-nav a{display:grid;grid-template-columns:27px 1fr 15px;gap:9px;align-items:center;padding:17px 0;border-top:1px solid var(--line);font-size:16px}.drawer-nav a:last-child{border-bottom:1px solid var(--line)}.drawer-nav a[aria-current=page]{color:#52712d}.drawer-nav a[aria-current=page] b:after{content:' / 現在のページ';font-size:9px;font-weight:400}.drawer-nav a b{font-weight:600}.drawer-nav a>span{font:10px monospace;color:var(--gray)}.drawer-nav a small{display:block;font-size:9px;color:var(--gray);font-weight:400;margin-top:3px}.drawer-nav a:hover b{text-decoration:underline;text-underline-offset:4px}.menu-bottom{padding:20px 27px 28px;border-top:1px solid var(--line)}.menu-bottom>a{display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white;border-radius:8px;padding:16px 18px;font-size:13px}.menu-bottom p{font-size:10px;color:var(--gray);margin:12px 0 0}.footer-links{display:flex;gap:17px;flex-wrap:wrap;margin:0 0 22px;font-size:11px}.footer-links a:hover{text-decoration:underline}.breadcrumbs{font-size:10px;color:var(--gray);display:flex;gap:12px;margin:24px 0 0}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.page-hero{padding:47px 0 42px;border-bottom:1px solid var(--line);display:flex;align-items:end;justify-content:space-between;gap:35px}.page-hero h1{font-size:46px;line-height:1.5;letter-spacing:-.035em;margin:10px 0 0}.page-hero .page-lead{max-width:420px;font-size:13px;line-height:2;color:#6e7166;margin:0 0 8px}.page-index{font:11px monospace;letter-spacing:.15em;display:flex;align-items:center;gap:12px}.page-index:before{content:'';width:26px;height:9px;background:var(--yellow);border:1px solid var(--ink)}.page-content{padding:46px 0 70px}.page-content h2{font-size:25px;line-height:1.6;font-weight:700;letter-spacing:.02em;margin:0 0 18px}.page-content h3{font-size:18px;margin:0 0 13px}.body-copy{font-size:13px;line-height:2;color:#666c60}.page-cta{display:flex;align-items:center;justify-content:space-between;background:var(--yellow);border:1px solid var(--ink);border-radius:12px;padding:30px 33px;gap:20px;margin-top:45px}.page-cta p{font-size:20px;font-weight:700;line-height:1.6;margin:0}.page-cta small{display:block;font-weight:400;font-size:11px;margin-top:7px}.page-cta a{background:var(--ink);color:white;padding:14px 20px;border-radius:30px;font-size:12px;white-space:nowrap}.content-label{display:inline-block;font-size:10px;border:1px solid var(--ink);border-radius:30px;padding:4px 13px;margin-bottom:17px}.empty-works{border:1px dashed #a5ad98;border-radius:13px;background:#eeefe3;padding:50px;display:grid;grid-template-columns:120px 1fr;gap:42px;align-items:center}.empty-works svg{width:120px;height:120px}.empty-works h2{font-size:27px}.empty-works p{font-size:12px;color:#717566;line-height:2;margin:0}.works-scope{margin-top:36px}.scope-chips{display:flex;gap:10px;flex-wrap:wrap}.scope-chips span{font-size:11px;padding:7px 14px;border:1px solid var(--line);border-radius:30px}.split-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;margin-bottom:45px}.company-table{margin:0}.company-table>div{display:grid;grid-template-columns:100px 1fr;gap:22px;padding:18px 0;border-bottom:1px solid var(--line);font-size:12px}.company-table>div:first-child{border-top:1px solid var(--line)}.company-table dt{color:var(--gray)}.company-table dd{margin:0;line-height:1.9}.pending{color:#8a8e80}.page-notice{font-size:10px;color:var(--gray);line-height:1.9;margin-top:20px}.service-block{display:grid;grid-template-columns:150px 1fr;gap:42px;padding:37px 0;border-top:1px solid var(--line)}.service-number{font:12px monospace;color:#737866}.service-number b{display:block;font-size:58px;line-height:1.4;font-weight:400;color:var(--ink)}.service-block p{font-size:13px;line-height:2;color:#666c60;max-width:740px}.service-block ul{font-size:12px;display:grid;grid-template-columns:1fr 1fr;gap:9px 22px;padding-left:18px;margin:23px 0}.simple-box{background:#e9edde;border-radius:10px;padding:25px 30px;margin-top:30px}.simple-box p{font-size:12px;line-height:2;margin:0;color:#656d5e}.flow-list{counter-reset:flow}.flow-step{display:grid;grid-template-columns:90px 1fr 180px;gap:30px;padding:30px 0;border-bottom:1px solid var(--line);align-items:start}.flow-step:first-child{border-top:1px solid var(--line)}.flow-step .step-no{font:11px monospace;color:var(--gray)}.step-no b{display:block;font-size:38px;line-height:1.5;color:var(--ink);font-weight:400}.flow-step p{font-size:12px;line-height:2;color:#666c60;margin:0}.flow-aside{padding:13px 16px;background:#e9edde;border-radius:7px;font-size:11px;line-height:1.9}.page-faq{max-width:900px}.page-faq details{border-bottom:1px solid var(--line)}.page-faq details:first-of-type{border-top:1px solid var(--line)}.page-faq summary{font-size:15px;padding-top:22px;padding-bottom:22px}.page-faq details p{font-size:12px;color:#666c60;line-height:2;margin:0;padding:0 25px 24px 0}.mobile-bar a{border:0;background:var(--ink);border-radius:30px;color:white;padding:12px 18px;font-size:12px}.page-footer-wrap{margin-top:0}@keyframes drawer-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}@media(max-width:760px){.header-left{gap:11px}.menu-toggle{height:40px;width:40px}.logo{font-size:13px;gap:7px}.logo svg{width:27px;height:27px}.logo small{font-size:6px}.page-hero{padding:29px 0 28px;display:block}.page-hero h1{font-size:35px}.page-hero .page-lead{font-size:12px;margin:18px 0 0}.page-index{font-size:10px}.breadcrumbs{font-size:9px;margin-top:15px}.page-content{padding:29px 0 45px}.page-content h2{font-size:23px}.page-cta{display:block;padding:25px;margin-top:30px}.page-cta p{font-size:19px}.page-cta a{display:inline-block;margin-top:20px}.empty-works{padding:30px 24px;grid-template-columns:1fr;gap:22px}.empty-works svg{height:90px;width:90px}.empty-works h2{font-size:24px}.split-section{grid-template-columns:1fr;gap:25px;margin-bottom:30px}.company-table>div{grid-template-columns:75px 1fr;gap:12px;font-size:11px;padding:16px 0}.service-block{grid-template-columns:1fr;gap:18px;padding:25px 0}.service-number b{display:inline;font-size:25px;margin-left:12px}.service-block p{font-size:12px}.service-block ul{grid-template-columns:1fr;font-size:11px}.flow-step{grid-template-columns:44px 1fr;gap:15px;padding:25px 0}.flow-step .flow-aside{grid-column:2}.flow-step h3{font-size:17px}.step-no b{font-size:30px}.flow-step p{font-size:11px}.page-faq summary{font-size:13px;padding-right:27px}.menu-top{padding:20px 22px 15px}.menu-scroll{padding:22px}.menu-intro{font-size:21px;margin-bottom:18px}.drawer-nav a{padding:14px 0;font-size:15px}.menu-bottom{padding:18px 22px 22px}.footer-links{font-size:10px;gap:12px 18px}.simple-box{padding:22px}.hero .air-friend{right:22px}}
@media(max-width:520px){.header>.nav{display:none}.header-left{width:100%}.header-left .logo{font-size:14px}.header-left .logo small{font-size:7px}.hero .air-friend{top:221px}}
@media(prefers-reduced-motion:reduce){.menu-drawer{animation:none}.menu-toggle span{transition:none}}

/* The air-flow brand mark also opens the site menu. */
.menu-toggle{border:0;border-radius:12px;padding:0;display:grid;place-items:center;gap:0}.menu-toggle svg{display:block;width:40px;height:40px;flex-shrink:0}@media(max-width:760px){.menu-toggle svg{width:36px;height:36px}}


/* Quiet surprises: the fan and a floating menu. */
.friend{border:0;background:none;padding:0;cursor:pointer;pointer-events:auto;border-radius:25px;touch-action:manipulation;transition:transform .18s}.friend:hover{transform:rotate(-4deg)}.friend:active{transform:scale(.95)}.friend[aria-pressed=true]{filter:drop-shadow(0 3px 8px #c3cf5850)}.friend-words{align-self:center}.friend-words .friend-label{display:block}
.menu-drawer{margin:14px auto 14px 14px;width:min(460px,calc(100vw - 28px));height:calc(100dvh - 28px);max-height:calc(100dvh - 28px);border:1px solid #777e68;border-radius:22px;box-shadow:0 18px 70px #111b2238,0 2px 9px #111b221a;transform-origin:18% 55%;animation:none;will-change:auto}.menu-drawer[open]{animation:menu-float-in .76s cubic-bezier(.16,1,.3,1) both}.menu-drawer[open]::backdrop{animation:menu-background-in .5s ease-out both}.menu-drawer[open] .drawer-nav a{animation:menu-item-in .56s cubic-bezier(.16,1,.3,1) both}.menu-drawer[open] .drawer-nav a:nth-child(1){animation-delay:.09s}.menu-drawer[open] .drawer-nav a:nth-child(2){animation-delay:.12s}.menu-drawer[open] .drawer-nav a:nth-child(3){animation-delay:.15s}.menu-drawer[open] .drawer-nav a:nth-child(4){animation-delay:.18s}.menu-drawer[open] .drawer-nav a:nth-child(5){animation-delay:.21s}.menu-drawer[open] .drawer-nav a:nth-child(6){animation-delay:.24s}.menu-drawer[open].is-closing{animation:menu-float-out .32s cubic-bezier(.4,0,.8,.5) both;pointer-events:none}.menu-drawer[open].is-closing::backdrop{animation:menu-background-out .32s ease-in both}.menu-drawer[open].is-closing .drawer-nav a{animation:none}
@keyframes menu-float-in{0%{opacity:0;transform:translate3d(-72px,28px,0) rotate(-2.5deg) scale(.95);filter:blur(5px)}45%{opacity:1;transform:translate3d(7px,-7px,0) rotate(.65deg) scale(1.004);filter:blur(0)}72%{transform:translate3d(-2px,2px,0) rotate(-.18deg) scale(1)}100%{opacity:1;transform:translate3d(0,0,0) rotate(0) scale(1);filter:blur(0)}}
@keyframes menu-float-out{0%{opacity:1;transform:translate3d(0,0,0) rotate(0) scale(1);filter:blur(0)}100%{opacity:0;transform:translate3d(-45px,-12px,0) rotate(-1.8deg) scale(.97);filter:blur(3px)}}
@keyframes menu-item-in{from{opacity:0;transform:translate3d(-14px,7px,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes menu-background-in{from{background:#27282200;backdrop-filter:blur(0)}to{background:#27282299;backdrop-filter:blur(4px)}}
@keyframes menu-background-out{from{background:#27282299;backdrop-filter:blur(4px)}to{background:#27282200;backdrop-filter:blur(0)}}.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}
@media(max-width:760px){.hero .air-friend{position:static;transform:none;opacity:1;margin-top:22px;gap:15px;pointer-events:auto}.friend{width:67px;height:67px;border-radius:18px}.friend-words .friend-label{display:block;font-size:10px;padding:10px 15px;max-width:250px}.menu-drawer{margin:10px auto 10px 10px;width:calc(100vw - 20px);max-width:460px;height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);border-radius:18px}}
@media(prefers-reduced-motion:reduce){.friend{transition:none}.friend:hover,.friend:active{transform:none}.menu-drawer[open],.menu-drawer[open]::backdrop,.menu-drawer[open] .drawer-nav a,.menu-drawer[open].is-closing,.menu-drawer[open].is-closing::backdrop{animation:none}}

.ticker-inner .ticker-divider{display:inline-block;width:1px;height:16px;flex:0 0 1px;background:currentColor;opacity:.4}

/* Keep every service readable on narrow screens. */
@media(min-width:761px) and (max-width:1100px){.ticker small{display:none}.ticker-inner{gap:24px}}
@media(max-width:760px){.ticker{padding:7px 0;overflow:visible}.ticker-inner{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;justify-content:normal;width:calc(100% - 36px);margin:0 auto;padding:0;white-space:normal;font-size:12px;letter-spacing:.04em}.ticker-inner .ticker-divider{display:none}.ticker-item{min-width:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px 6px;overflow-wrap:anywhere;line-height:1.7}.ticker-item:nth-child(2),.ticker-item:nth-child(6){border-right:1px solid #27282245}.ticker-item:nth-child(6),.ticker-item:nth-child(8){border-top:1px solid #27282245}.hero-tail{flex-wrap:wrap;gap:12px 20px}}
@media(max-width:760px){.hero-grid{grid-template-columns:minmax(0,1fr)}.hero-grid>*{min-width:0}.friend-words{min-width:0}.option{min-width:0}}
@media(max-width:360px){.hero h1{font-size:32px}.console-content{padding:18px}.question{font-size:20px}}

.contact-hours{font-size:10px;line-height:1.8;margin:0 0 14px;color:var(--gray)}.detail-link{display:inline-block;border-bottom:1px solid var(--ink);padding:7px 0;font-size:12px}.detail-list{padding-left:18px;font-size:12px;line-height:2.1;margin:0}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.check-grid>div{display:flex;gap:16px;align-items:baseline;padding:18px 0;border-top:1px solid var(--line)}.check-grid span{font:10px monospace;color:var(--gray)}.check-grid p{font-size:12px;margin:0;line-height:1.9}.related-links{display:flex;gap:18px 28px;flex-wrap:wrap;margin-top:30px;font-size:11px}.related-links a{text-decoration:underline;text-underline-offset:4px}.area-cities{display:grid;grid-template-columns:1fr 1fr;gap:24px}.area-cities article{padding:30px;border:1px solid var(--ink);border-radius:12px}.area-cities article>span{font:10px monospace;letter-spacing:.14em;color:var(--gray)}.area-cities h2{margin-top:14px}.area-cities p{font-size:12px;line-height:2;color:var(--gray)}.ticker-item:hover{text-decoration:underline;text-underline-offset:4px}.drawer-nav a{flex-shrink:0}@media(max-width:760px){.check-grid,.area-cities{grid-template-columns:1fr}.area-cities article{padding:25px}.company-table>div{grid-template-columns:82px minmax(0,1fr)}.logo small{letter-spacing:.05em}.related-links{gap:16px}.service-block h2{font-size:23px}}

.callback-form label { display: block; margin: 12px 0; }
.callback-form input, .callback-form textarea { display: block; width: 100%; box-sizing: border-box; font: inherit; padding: 9px; border: 1px solid currentColor; border-radius: 8px; }

.works-admin { max-width: 760px; padding-block: 32px 64px; }
.works-admin button, .works-admin select { font: inherit; padding: 9px 12px; }
.works-admin li { margin-block: 10px; }
.works-admin [type="checkbox"] { display: inline; width: auto; }
.works-admin [hidden] { display: none; }
.works-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 250px), 1fr)); gap: 18px; }
.works-grid img { display: block; width: 100%; height: auto; border-radius: 12px; }
.work-copy { white-space: pre-line; overflow-wrap: anywhere; }

.works-page .page-hero { padding: 22px 0 18px; gap: 18px; }
.works-page .page-hero h1, .work-intro h1 { font-size: clamp(22px, 4vw, 30px); line-height: 1.35; overflow-wrap: anywhere; }
.works-page .page-hero .page-lead { margin: 8px 0 0; line-height: 1.65; }
.works-page .page-content { padding-top: 18px; }
.works-page .page-content h2 { font-size: 18px; margin-bottom: 10px; }
.work-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 290px), 1fr)); gap: 12px; }
.work-card { border: 1px solid var(--line); border-radius: 13px; overflow: hidden; }
.work-card-link { display: flex; align-items: flex-start; gap: 12px; padding: 12px; height: 100%; text-decoration: none; color: inherit; }
.work-card-link:hover h2, .work-card-link:focus-visible h2 { text-decoration: underline; }
.work-card-thumb { display: block; flex: 0 0 auto; width: clamp(72px, 21vw, 104px); aspect-ratio: 1; object-fit: cover; border-radius: 8px; }
.work-card-body { min-width: 0; }
.work-meta { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 8px; font-size: 11px; line-height: 1.45; color: #56594f; }
.work-kind { background: #e4f06b; color: #272822; border-radius: 4px; padding: 3px 6px; font-weight: 700; }
.works-page .work-card h2 { margin: 6px 0 4px; font-size: clamp(15px, 3.9vw, 18px); line-height: 1.5; letter-spacing: 0; overflow-wrap: anywhere; }
.work-card-more { font-size: 11px; color: #56594f; }
.work-detail { max-width: 740px; padding: 20px 0 44px; }
.work-intro h1 { margin: 10px 0 8px; }
.work-summary { margin: 0; font-size: 15px; line-height: 1.75; }
.work-gallery, .work-note { margin-top: 18px; }
.work-gallery h2, .work-note h2 { margin: 0 0 6px; font-size: 13px; line-height: 1.45; }
.work-gallery small { margin-left: 5px; font-weight: 400; color: #56594f; }
.work-photos { display: grid; grid-template-columns: repeat(3,minmax(0,130px)); gap: 7px; }
.work-photos a { display: block; position: relative; }
.work-photos img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 7px; }
.work-photos span { position: absolute; right: 4px; bottom: 4px; color: #fff; background: #272822; border-radius: 4px; padding: 1px 4px; font-size: 11px; }
.work-note { padding: 10px 12px; border-left: 2px solid var(--line); }
.work-note p { margin: 0; font-size: 13px; line-height: 1.7; }

.callback-form select { display: block; width: 100%; padding: 9px; font: inherit; color: inherit; background: #fff; border: 1px solid currentColor; border-radius: 8px; }
.callback-form details { margin: 12px 0; }
.callback-form summary { cursor: pointer; }
