@font-face{font-family:Oswald;font-style:normal;font-weight:300;font-display:swap;src:url(../media/efadc3f7fcf6ac94-s.2dw4wc11szodo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:300;font-display:swap;src:url(../media/8e410338cab7e12e-s.2888ryxa0751p.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:300;font-display:swap;src:url(../media/7e93c0a52799e849-s.081af6y49e67w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:300;font-display:swap;src:url(../media/037b6aa687f94b32-s.0evsli58wo2lo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:300;font-display:swap;src:url(../media/9a800f173b8d9e8f-s.p.3nglv5iys3s0a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(../media/efadc3f7fcf6ac94-s.2dw4wc11szodo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(../media/8e410338cab7e12e-s.2888ryxa0751p.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(../media/7e93c0a52799e849-s.081af6y49e67w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(../media/037b6aa687f94b32-s.0evsli58wo2lo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9a800f173b8d9e8f-s.p.3nglv5iys3s0a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/efadc3f7fcf6ac94-s.2dw4wc11szodo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/8e410338cab7e12e-s.2888ryxa0751p.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/7e93c0a52799e849-s.081af6y49e67w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/037b6aa687f94b32-s.0evsli58wo2lo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9a800f173b8d9e8f-s.p.3nglv5iys3s0a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/efadc3f7fcf6ac94-s.2dw4wc11szodo.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/8e410338cab7e12e-s.2888ryxa0751p.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/7e93c0a52799e849-s.081af6y49e67w.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/037b6aa687f94b32-s.0evsli58wo2lo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9a800f173b8d9e8f-s.p.3nglv5iys3s0a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald Fallback;src:local(Arial);ascent-override:146.51%;descent-override:35.49%;line-gap-override:0.0%;size-adjust:81.43%}.oswald_b2670496-module__UXk-Ca__className{font-family:Oswald,Oswald Fallback;font-style:normal}.oswald_b2670496-module__UXk-Ca__variable{--font-en:"Oswald", "Oswald Fallback"}
:root{--ink:#161616;--near:#0c0c0c;--dark:#111;--gray:#5e5e5e;--gray2:#6f6f6f;--line:#e4e3e0;--line2:#d3d2ce;--bg:#fff;--bg2:#f5f4f1;--sans:"Noto Sans JP",system-ui,sans-serif;--en:"Oswald",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;letter-spacing:.03em;font-size:15.5px;font-weight:400;line-height:1.95}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.wrap{max-width:1200px;margin:0 auto;padding:0 32px}.js .reveal{opacity:0;transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1);transform:translateY(30px)}.js .reveal.on{opacity:1;transform:none}.svc,.gitem,.eq{content-visibility:auto;contain-intrinsic-size:0 280px}.en-lbl{font-family:var(--en);letter-spacing:.32em;color:var(--gray2);text-transform:uppercase;align-items:center;gap:12px;margin-bottom:20px;font-size:.72rem;font-weight:400;display:inline-flex}.en-lbl i{color:var(--ink);letter-spacing:.1em;font-size:.86rem;font-style:normal;font-weight:500}.sec-title{font-family:var(--sans);letter-spacing:.06em;color:var(--ink);font-size:2.15rem;font-weight:900;line-height:1.45}.rule{background:var(--ink);width:44px;height:1px;margin:22px auto;display:block}.sec-head{text-align:center;margin-bottom:64px}.sec-head p{color:var(--gray);max-width:620px;margin:0 auto;font-size:.94rem;font-weight:300}.mini-en{font-family:var(--en);letter-spacing:.2em;text-transform:uppercase;color:var(--gray2);font-size:.68rem}section{padding:132px 0}header{z-index:50;padding:22px 0;transition:all .45s;position:fixed;top:0;left:0;right:0}header.scrolled{box-shadow:0 1px 0 var(--line);-webkit-backdrop-filter:saturate(1.1)blur(6px);backdrop-filter:saturate(1.1)blur(6px);background:#fffffff0;padding:14px 0}.hd{justify-content:space-between;align-items:center;display:flex}.logo{color:#fff;align-items:center;gap:13px;transition:all .45s;display:flex}header.scrolled .logo{color:var(--ink)}.logo .mark{letter-spacing:0;border:1px solid;place-items:center;width:42px;height:42px;font-size:1.15rem;font-weight:700;display:grid}.logo b{letter-spacing:.1em;font-family:Shippori Mincho,serif;font-size:1.28rem;font-weight:700}.logo small{font-family:var(--en);letter-spacing:.3em;color:currentColor;opacity:.65;font-size:.58rem;font-weight:400;display:block}nav ul{align-items:center;gap:30px;list-style:none;display:flex}nav a{color:#f2f2f2;letter-spacing:.08em;padding:4px 0;font-size:.82rem;font-weight:400;transition:all .3s;position:relative}header.scrolled nav a{color:var(--ink)}nav a:after{content:"";background:currentColor;width:0;height:1px;transition:all .35s;position:absolute;bottom:-2px;left:0}nav a:hover:after{width:100%}.tel-btn{font-family:var(--en);letter-spacing:.06em;border:1px solid;flex-direction:column;justify-content:center;align-items:center;min-height:44px;padding:8px 18px;font-size:.9rem;font-weight:400;line-height:1.2;display:inline-flex}.tel-btn small{letter-spacing:.18em;opacity:.75;font-size:.54rem;font-family:var(--sans);order:-1;margin-bottom:2px}.burger{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;padding:9px;display:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:3px;outline:2px solid}.burger span{background:currentColor;width:26px;height:1px;transition:all .3s}header .burger{color:#fff}header.scrolled .burger{color:var(--ink)}.hero{color:#fff;align-items:flex-end;height:100vh;min-height:660px;display:flex;position:relative;overflow:hidden}.hero-bg{background:url(/assets/bg/bg_hero.jpg) 50%/cover no-repeat;animation:22s ease-out forwards zoom;position:absolute;inset:0;transform:scale(1.06)}@keyframes zoom{to{transform:scale(1)}}.hero:before{content:"";z-index:1;background:linear-gradient(#0808084d 0%,#08080800 40%,#0808088c 100%);position:absolute;inset:0}.hero .wrap{z-index:2;width:100%;padding-bottom:9vh;position:relative}.hero .en-lbl{color:#e6e6e6}.hero .en-lbl i{color:#fff}.hero h1{font-family:var(--sans);letter-spacing:.05em;text-shadow:0 2px 26px #00000059;margin-bottom:22px;font-size:clamp(2rem,4.7vw,3.5rem);font-weight:700;line-height:1.5}.hero h1 .ac{padding-bottom:2px;position:relative;box-shadow:inset 0 -2px #ffffffd9}.hero p.lead{color:#e4e4e4;text-shadow:0 1px 12px #0006;max-width:520px;font-size:1rem;font-weight:300}.hero-meta{border-top:1px solid #ffffff47;flex-wrap:wrap;gap:0;max-width:560px;margin-top:40px;display:flex}.hero-meta div{margin-right:26px;padding:16px 26px 0 0}.hero-meta div+div{border-left:1px solid #ffffff38;padding-left:26px}.hero-meta span{font-family:var(--en);letter-spacing:.04em;font-size:1.35rem;font-weight:500;display:block}.hero-meta small{color:#c3c3c3;letter-spacing:.12em;font-size:.68rem;font-weight:300}.scroll-cue{z-index:3;color:#d9d9d9;font-family:var(--en);letter-spacing:.3em;writing-mode:vertical-rl;font-size:.62rem;position:absolute;bottom:24px;right:32px}.scroll-cue:after{content:"";background:linear-gradient(#fff,#0000);width:1px;height:46px;margin:10px auto 0;display:block}.about{background:var(--bg)}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:78px;display:grid}.about .en-lbl{margin-bottom:24px}.about h2{font-family:var(--sans);color:var(--ink);letter-spacing:.05em;margin-bottom:30px;font-size:1.9rem;font-weight:700;line-height:1.75}.about p{color:var(--gray);margin-bottom:20px;font-size:.95rem;font-weight:300}.about-imgs{position:relative}.about-imgs img{filter:grayscale(.08);width:100%}.about-imgs .main{aspect-ratio:4/5;object-fit:cover}.about-imgs .sub{aspect-ratio:1;object-fit:cover;border:8px solid #fff;width:52%;position:absolute;bottom:-46px;left:-46px}.about-badge{background:var(--near);color:#fff;font-family:var(--en);text-align:center;z-index:2;padding:14px 18px;line-height:1;position:absolute;top:26px;right:26px}.about-badge b{font-size:1.7rem;font-weight:500;display:block}.about-badge small{letter-spacing:.24em;font-size:.54rem}.services{background:var(--bg2)}.svc-grid{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.svc{background:#fff;transition:all .5s;overflow:hidden}.svc:hover{background:#fafafa}.svc-img{aspect-ratio:3/2;position:relative;overflow:hidden}.svc-img img{object-fit:cover;filter:grayscale(.1);width:100%;height:100%;transition:all .7s cubic-bezier(.2,.7,.2,1)}.svc:hover .svc-img img{filter:grayscale(0);transform:scale(1.06)}.svc-no{background:var(--near);color:#fff;font-family:var(--en);letter-spacing:.06em;padding:5px 14px;font-size:.9rem;font-weight:400;position:absolute;bottom:0;left:0}.svc-body{padding:30px 30px 36px}.svc-body .mini-en{margin-bottom:8px;display:block}.svc h3{font-family:var(--sans);color:var(--ink);letter-spacing:.04em;margin-bottom:14px;font-size:1.24rem;font-weight:700}.svc-desc{color:var(--gray);font-size:.88rem;font-weight:300;line-height:1.95}.gallery{background:var(--near);color:#fff}.gallery .sec-title{color:#fff}.gallery .en-lbl{color:#7f7f7f}.gallery .en-lbl i{color:#fff}.gallery .rule{background:#fff}.gallery .sec-head p{color:#a5a5a5}.gal-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.gitem{aspect-ratio:1;background:#161616;position:relative;overflow:hidden}.gitem img{object-fit:cover;filter:grayscale(.25);width:100%;height:100%;transition:all .7s cubic-bezier(.2,.7,.2,1)}.gitem:hover img{filter:grayscale(0);transform:scale(1.08)}.gitem figcaption{opacity:0;background:linear-gradient(#0000 45%,#000000d1);flex-direction:column;justify-content:flex-end;padding:18px;transition:all .45s;display:flex;position:absolute;inset:0}.gitem:hover figcaption{opacity:1}.gtag{font-family:var(--en);letter-spacing:.16em;color:#bdbdbd;text-transform:uppercase;margin-bottom:5px;font-size:.6rem}.gcap{letter-spacing:.04em;font-size:.86rem;font-weight:400}.equip{background:var(--bg)}.eq-grid{grid-template-columns:repeat(3,1fr);gap:32px;margin-bottom:52px;display:grid}.eq{border:1px solid var(--line);background:#fff}.eq-img{aspect-ratio:3/2;overflow:hidden}.eq-img img{object-fit:cover;filter:grayscale(.12);width:100%;height:100%;transition:all .7s}.eq:hover .eq-img img{filter:grayscale(0);transform:scale(1.05)}.eq h3{font-family:var(--sans);color:var(--ink);letter-spacing:.04em;padding:24px 24px 0;font-size:1.15rem;font-weight:700}.eq-model{font-family:var(--en);letter-spacing:.06em;color:var(--gray);padding:4px 24px;font-size:.76rem}.eq-desc{color:var(--gray);padding:10px 24px 26px;font-size:.85rem;font-weight:300}.eq-list{border-top:1px solid var(--ink);padding:38px 0 0}.eq-list h4{font-family:var(--en);letter-spacing:.16em;color:var(--ink);text-transform:uppercase;margin-bottom:24px;font-size:.86rem}.eq-list ul{grid-template-columns:repeat(3,1fr);gap:0 40px;list-style:none;display:grid}.eq-list li{border-bottom:1px solid var(--line);color:var(--ink);padding:15px 0 15px 24px;font-size:.92rem;font-weight:400;position:relative}.eq-list li:before{content:"";background:var(--ink);width:7px;height:1px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.flow{background:var(--bg2)}.flow-list{max-width:860px;margin:0 auto;list-style:none}.flow-list li{border-bottom:1px solid var(--line2);align-items:flex-start;gap:32px;padding:28px 0;display:flex}.flow-list li:last-child{border-bottom:0}.fnum{font-family:var(--en);color:var(--ink);letter-spacing:.08em;border-top:2px solid var(--ink);min-width:52px;padding-top:4px;font-size:1.05rem;font-weight:500}.flow-list h4{font-family:var(--sans);color:var(--ink);letter-spacing:.04em;margin-bottom:4px;font-size:1.12rem;font-weight:700}.flow-list p{color:var(--gray);font-size:.9rem;font-weight:300}.recruit{color:#fff;text-align:center;background:url(/assets/bg/bg_recruit.jpg) 50%/cover no-repeat;padding:140px 0;position:relative}.recruit:before{content:"";background:#08080857;position:absolute;inset:0}.recruit .wrap{position:relative}.recruit .en-lbl{color:#cfcfcf;justify-content:center}.recruit .en-lbl i{color:#fff}.recruit h2{font-family:var(--sans);letter-spacing:.06em;margin-bottom:20px;font-size:1.9rem;font-weight:700}.recruit p{color:#dcdcdc;max-width:560px;margin:0 auto 36px;font-size:.95rem;font-weight:300}.btn{color:#fff;letter-spacing:.12em;background:0 0;border:1px solid #fff;padding:16px 46px;font-size:.9rem;font-weight:400;transition:all .4s;display:inline-block}.btn:hover{color:var(--ink);background:#fff}.company{background:var(--bg)}.co-grid{grid-template-columns:1fr 1fr;align-items:start;gap:64px;display:grid}.co-table{border-collapse:collapse;width:100%}.co-table tr{border-bottom:1px solid var(--line)}.co-table tr:first-child{border-top:1px solid var(--ink)}.co-table th,.co-table td{text-align:left;vertical-align:top;padding:19px 6px;font-size:.92rem}.co-table th{width:32%;color:var(--ink);letter-spacing:.08em;font-weight:700}.co-table td{color:var(--gray);font-weight:300}.co-img img{filter:grayscale(.1);width:100%}.co-map{filter:grayscale();border:0;width:100%;height:230px;margin-top:14px}.contact{background:var(--near);color:#fff;text-align:center}.contact .sec-title{color:#fff}.contact .rule{background:#fff}.contact .en-lbl{color:#7f7f7f;justify-content:center}.contact .en-lbl i{color:#fff}.contact-lead{color:#a8a8a8;margin-bottom:30px;font-size:.94rem;font-weight:300}.contact-tel{font-family:var(--en);letter-spacing:.05em;color:#fff;margin:6px 0;font-size:2.7rem;font-weight:400;transition:all .3s;display:inline-block}.contact-tel:hover{opacity:.75}.contact-tel span{color:#b0b0b0;letter-spacing:.1em;vertical-align:middle;margin-right:10px;font-size:1rem}.contact-hours{color:#b0b0b0;letter-spacing:.1em;margin-bottom:40px;font-size:.82rem;display:block}.cform label i{font-style:normal;font-family:var(--sans);letter-spacing:.08em;color:#111;vertical-align:middle;background:#e6e6e6;border-radius:1px;margin-left:8px;padding:1px 7px;font-size:.6rem}.form-note{color:#9a9a9a;text-align:center;letter-spacing:.06em;margin-top:4px;font-size:.74rem;font-weight:300}.cform{text-align:left;gap:20px;max-width:640px;margin:44px auto 0;display:grid}.cform label{color:#c7c7c7;letter-spacing:.08em;margin-bottom:7px;font-size:.78rem;font-weight:300;display:block}.cform input,.cform textarea{color:#fff;background:0 0;border:1px solid #ffffff6b;width:100%;padding:14px 15px;font-family:inherit;font-size:.92rem}.cform input:focus,.cform textarea:focus{border-color:#fff;outline:0}.cform textarea{resize:vertical;min-height:120px}.cform .row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.cform button{color:var(--ink);letter-spacing:.16em;cursor:pointer;background:#fff;border:0;margin-top:8px;padding:16px;font-family:inherit;font-size:.94rem;transition:all .3s}.cform button:hover{background:#d9d9d9}footer{color:#8a8a8a;background:#080808;padding:62px 0 28px;font-size:.85rem;font-weight:300}.ft-top{border-bottom:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;gap:40px;margin-bottom:24px;padding-bottom:32px;display:flex}.ft-logo b{color:#fff;letter-spacing:.14em;font-size:1.2rem;font-weight:700}.ft-logo small{font-family:var(--en);letter-spacing:.3em;color:#666;margin-bottom:14px;font-size:.58rem;display:block}.ft-nap{margin-top:10px}.ft-nap a{color:#c9c9c9}.ft-nap a:hover{color:#fff}.ft-nav{flex-wrap:wrap;gap:24px;display:flex}.ft-nav a{color:#a7a7a7;letter-spacing:.06em}.ft-nav a:hover{color:#fff}.copy{text-align:center;color:#5a5a5a;font-family:var(--en);letter-spacing:.14em;font-size:.68rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}main:focus{outline:none}main:focus-visible{outline:2px solid var(--accent,#b5602a);outline-offset:4px}.cform button:disabled{opacity:.7;cursor:wait}.skip{z-index:200;color:#111;background:#fff;border:2px solid #111;padding:11px 20px;font-size:.9rem;transition:top .2s;position:fixed;top:-70px;left:12px}.skip:focus,.skip:focus-visible{top:12px}nav a[aria-current=true]:after{width:100%}nav a[aria-current=true]{font-weight:700}.field-error{color:#ff9d8c;letter-spacing:.04em;min-height:1em;margin-top:6px;font-size:.76rem;font-weight:400;display:block}.cform input[aria-invalid=true],.cform textarea[aria-invalid=true]{border-color:#ff8a74}.form-status{color:#fff;text-align:center;min-height:1.4em;margin-top:14px;font-size:.94rem;font-weight:400}.form-status.err{color:#ff9d8c}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.js .reveal{opacity:1!important;transform:none!important}.hero-bg{animation:none!important;transform:none!important}}@media (max-width:960px){nav ul{background:var(--near);flex-direction:column;justify-content:center;gap:30px;width:76%;max-width:330px;height:100vh;padding:40px;transition:all .45s;position:fixed;top:0;right:-100%}nav ul.open{right:0}nav ul a{padding:12px 4px;font-size:.95rem;color:#fff!important}.burger{z-index:60;display:flex}.gitem figcaption{opacity:1;background:linear-gradient(#0000 55%,#000000d9)}.svc-grid,.eq-grid,.eq-list ul{grid-template-columns:1fr 1fr}.about-grid,.co-grid{grid-template-columns:1fr;gap:70px}.about-imgs{max-width:460px}.about-imgs .sub{bottom:-40px;left:0}.gal-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){section{padding:78px 0}.wrap{padding:0 22px}.svc-grid,.eq-grid,.eq-list ul,.cform .row{grid-template-columns:1fr}.sec-title,.about h2,.recruit h2{font-size:1.55rem}.contact-tel{font-size:1.9rem}.about-imgs .sub{border-width:0;width:100%;margin-top:14px;position:static}.about-badge{top:14px;right:14px}.recruit{background-attachment:scroll}.hero-meta div{margin-right:16px;padding-right:16px}}:root{--ink:#2b241f;--near:#241d18;--dark:#241d18;--gray:#675c53;--gray2:#786d63;--line:#e7ded2;--line2:#d8ccbb;--bg:#f7f3ec;--bg2:#efe7db;--accent:#b5602a;--head:"Noto Serif JP",serif}.sec-title,.hero h1,.about h2,.recruit h2,.svc h3,.eq h3,.flow-list h4{font-family:var(--head);font-weight:600}.sec-title{font-weight:700}.rule{background:var(--accent)}.hero h1 .ac{color:var(--accent);box-shadow:none}.svc-no,.about-badge{background:var(--accent)}.fnum{border-top-color:var(--accent);color:var(--accent)}.cform label i{background:var(--accent);color:#fff}.about-imgs img,.svc-img img,.gitem img,.eq-img img,.co-img img{filter:sepia(.22)saturate(.92)contrast(1.02)}.svc:hover .svc-img img,.gitem:hover img,.eq:hover .eq-img img{filter:sepia(.08)saturate()}footer{background:#1c1611}.recruit:before{background:#140f0ab8}.hero:before{background:linear-gradient(#140f0a80 0%,#140f0a1f 40%,#140f0acc 100%)}.gallery .gtag{color:#e0a878}.svc-grid{background:0 0;border:0;gap:20px}.svc{border:1px solid var(--line);border-radius:4px;box-shadow:0 8px 24px #3c28140f}.eq{border-radius:4px;overflow:hidden}.gitem{border-radius:4px}.tel-btn{background:var(--accent);border-color:var(--accent);color:#fff}header.scrolled .tel-btn{color:#fff}.logo .emblem{flex:0 0 46px;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.logo .emblem svg{width:46px;height:46px;display:block}header.scrolled .logo .emblem{transition:color .45s}body{--sans:var(--font-sans), "Noto Sans JP", system-ui, sans-serif;--en:var(--font-en), "Oswald", sans-serif;--head:var(--font-serif), "Noto Serif JP", serif}.logo b{font-family:var(--font-brand), "Shippori Mincho", serif}.faq{background:var(--bg2)}.faq-list{gap:12px;max-width:820px;margin:0 auto;display:grid}.faq-item{border:1px solid var(--line);background:var(--bg);content-visibility:auto;contain-intrinsic-size:0 72px;border-radius:4px}.faq-item summary{cursor:pointer;letter-spacing:.04em;padding:18px 48px 18px 22px;font-size:.95rem;font-weight:700;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font-family:var(--en);color:var(--accent,#b5602a);font-size:1.2rem;font-weight:400;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.faq-item[open] summary:after{content:"–"}.faq-item p{color:var(--gray);padding:0 22px 20px;font-size:.92rem;font-weight:300;line-height:1.9}.co-map-link{color:var(--accent,#b5602a);letter-spacing:.06em;margin-top:8px;font-size:.86rem;display:inline-block}.co-map-link:hover{text-decoration:underline}.legal{min-height:70vh;padding:120px 0 80px}.legal-inner{max-width:760px}.legal-lead{color:var(--gray);margin:28px 0 36px;font-weight:300}.legal-section{margin-bottom:32px}.legal-section h2{letter-spacing:.06em;margin-bottom:12px;font-size:1.05rem}.legal-section p,.legal-section li{color:var(--gray);font-size:.94rem;font-weight:300;line-height:1.9}.legal-section ul{margin-top:8px;padding-left:1.2em}.legal-section li{margin-bottom:4px}.legal-updated{margin-top:16px;font-size:.85rem}.legal-back{margin-top:40px}.legal-back a{color:var(--accent,#b5602a);letter-spacing:.06em}.legal-back a:hover{text-decoration:underline}.not-found{align-items:center;min-height:70vh;padding:120px 0 80px;display:flex}.not-found-inner{max-width:640px}.not-found-actions{flex-wrap:wrap;gap:14px;margin-top:28px;display:flex}.not-found-link{background:var(--accent,#b5602a);color:#fff;letter-spacing:.1em;justify-content:center;align-items:center;min-height:44px;padding:10px 20px;font-size:.86rem;display:inline-flex}.not-found-link.secondary{color:var(--ink);border:1px solid var(--ink);background:0 0}.not-found-link:hover{filter:brightness(1.05)}.cookie-banner{z-index:120;color:#f3ebe2;-webkit-backdrop-filter:saturate(1.05)blur(8px);backdrop-filter:saturate(1.05)blur(8px);background:#1c1611f5;border-top:1px solid #ffffff1f;padding:18px 0;position:fixed;bottom:0;left:0;right:0}.cookie-banner-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;display:flex}.cookie-banner-copy{flex:280px;max-width:720px}.cookie-banner-title{letter-spacing:.08em;color:#fff;margin-bottom:6px;font-size:.92rem;font-weight:700}.cookie-banner-copy p:last-child{color:#d8cfc3;letter-spacing:.04em;font-size:.8rem;font-weight:300;line-height:1.7}.cookie-banner-link{color:#fff;text-underline-offset:2px;text-decoration:underline}.cookie-banner-link:hover{opacity:.85}.cookie-banner-actions{flex-wrap:wrap;gap:10px;display:flex}.cookie-btn{cursor:pointer;letter-spacing:.1em;border:1px solid #0000;min-height:44px;padding:10px 18px;font-family:inherit;font-size:.82rem;transition:all .25s}.cookie-btn-secondary{color:#f3ebe2;background:0 0;border-color:#ffffff59}.cookie-btn-secondary:hover{background:#ffffff0f;border-color:#fff}.cookie-btn-primary{background:var(--accent,#b5602a);color:#fff;border-color:var(--accent,#b5602a)}.cookie-btn-primary:hover{filter:brightness(1.06)}@media (max-width:600px){.cookie-banner-actions{width:100%}.cookie-btn{flex:auto}}
