:root{--ink:#243d4c;--blue:#dceef4;--sky:#f1f7f9;--muted:#607681;--gold:#a77b32;--orange:#c65b28;--line:#d5e2e7;--mint:#e8f0e9;--body:'Zen Kaku Gothic New',sans-serif;--display:'Shippori Mincho B1',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:104px}body{margin:0;color:var(--ink);background:#fff;font:400 16px/1.8 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-weight:700;line-height:1.55}h2{font-size:30px;letter-spacing:.025em}h3{font-size:20px}[hidden]{display:none!important}:focus-visible{outline:3px solid #0f84ab;outline-offset:5px}button,a,input{touch-action:manipulation}.wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.section{padding-block:76px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:26px;margin-bottom:30px}.section-head.small{align-items:center;margin:0 0 18px}.section-head.small>span{font-size:11px;color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}.text-link{display:inline-flex;align-items:center;min-height:44px;font-size:13px;border-bottom:1px solid #9bb1bb}.text-link:hover{color:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 23px;min-height:50px;border-radius:5px;font-size:14px;font-weight:700}.primary{background:var(--orange);color:#fff}.primary:hover{background:#a64b1e}.secondary{border:1px solid #b9ccd4;background:white}.fine{font-size:11px;color:var(--muted);line-height:1.9;margin-top:20px}.fine a{text-decoration:underline;text-underline-offset:4px}.icon{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;flex:none}.svg-library{position:absolute;width:0;height:0;overflow:hidden}.skip,.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:focus{z-index:100;position:fixed;top:5px;left:5px;width:auto;height:auto;clip:auto;background:white;padding:12px}.mobile-only,.mobile-contact{display:none}
.header{height:72px;display:flex;align-items:center;gap:24px;padding:12px 3.5%;background:#fffffffa;position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.logo{display:block;flex:none}.logo img{width:228px}.group-label{font-size:9px;line-height:1.7;padding-left:17px;border-left:1px solid var(--line);color:var(--muted)}.group-label strong{font-size:11px;font-weight:500}.nav{margin-left:auto;display:flex;gap:23px;font-size:12px;font-weight:700}.nav a{min-height:44px;display:flex;align-items:center}.header-cta{min-height:44px;padding:10px 20px;font-size:12px}.menu-toggle{display:none}.mobile-nav{position:absolute;left:0;right:0;top:100%;background:white;padding:12px 25px 22px;box-shadow:0 16px 24px #243d4c18}.mobile-nav a{display:block;padding:13px;border-bottom:1px solid var(--line)}.fast-lane{display:flex;justify-content:center;gap:0;background:var(--sky);min-height:54px}.fast-lane>a{display:flex;align-items:center;justify-content:center;gap:12px;min-width:250px;font-size:12px;font-weight:500;padding:8px 28px}.fast-lane>a+a{border-left:1px solid var(--line)}.fast-lane .icon{width:25px;height:25px;stroke-width:2}.fast-lane a:hover{background:var(--blue)}
.motion-story{height:440svh;position:relative;background:#fff}.comic-sticky{position:sticky;top:82px;height:calc(100svh - 82px);max-height:980px;display:flex;flex-direction:column;overflow:hidden;background:#fff}.comic-topline,.comic-bottomline{width:min(1240px,calc(100% - 64px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;flex:none}.comic-topline{height:47px;font-size:11px}.comic-topline>p{letter-spacing:.05em;color:var(--muted)}.comic-topline>div{display:flex;gap:23px;align-items:center}.comic-topline a{font-weight:700;min-height:44px;display:flex;align-items:center}.motion-control,.auto-play{border:0;background:transparent;font-size:11px;min-height:44px;padding:8px 10px}.motion-control{color:var(--muted)}.comic-stage{position:relative;flex:1;min-height:0;width:min(1240px,calc(100% - 64px));margin:auto;isolation:isolate;background:radial-gradient(circle,#8eacb638 .8px,transparent 1px) 96% 92%/9px 9px}.chapter{position:absolute;inset:0;opacity:0;visibility:hidden;pointer-events:none;--scrub:0;--entry:1;transition:opacity .35s,visibility .35s;contain:layout}.chapter.is-active{opacity:1;visibility:visible;pointer-events:auto}.chapter-heading{position:absolute;z-index:8;top:3%;left:2%;max-width:46%}.chapter-heading>p{font-size:13px;margin-bottom:10px}.chapter-heading h2{font-size:clamp(27px,3vw,42px);line-height:1.5}.manga-panel{position:absolute;border:3px solid var(--ink);background:#fff;overflow:hidden;box-shadow:3px 5px 0 #243d4c14;will-change:transform}.comic-picture{position:absolute;inset:0;background-image:url('assets/story-sprite.webp');background-size:200% 400%;background-repeat:no-repeat}.picture-1{background-position:0 0}.picture-2{background-position:100% 0}.picture-3{background-position:0 33.333333%}.picture-5{background-position:0 66.666667%}.picture-6{background-position:100% 66.666667%}.picture-7{background-position:0 100%}.picture-8{background-position:100% 100%}.chapter.is-active .manga-panel{animation:panel-enter .85s cubic-bezier(.17,.7,.3,1) both}.actor{position:absolute;z-index:7;pointer-events:none;transform:translateX(calc((var(--scrub) - .5)*35px)) rotate(calc((var(--scrub) - .5)*3deg));will-change:transform}.actor img{height:100%;width:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(4px 9px 4px #2b40551c)}.chapter.is-active .actor img{animation:actor-breathe 4s ease-in-out infinite}.speech{position:absolute;z-index:10;background:#fff;border:2px solid var(--ink);padding:22px 25px;border-radius:48% 42% 44% 42%;font-size:19px;line-height:1.75;font-weight:700;text-align:center;box-shadow:3px 4px 0 #243d4c12}.speech:after{content:'';position:absolute;width:17px;height:17px;bottom:-8px;left:24%;background:white;border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:skewY(18deg) rotate(28deg)}.chapter.is-active .speech{animation:bubble-enter .6s .35s both}.thought{position:absolute;z-index:9;background:#fffef1;padding:14px 21px;font-size:16px;line-height:1.8;border-left:4px solid #bc9849;transform:rotate(-3deg)}.manga-sound{position:absolute;z-index:12;color:#193f51;font:900 62px/1 var(--body);font-style:italic;letter-spacing:-.08em;-webkit-text-stroke:5px #fff;paint-order:stroke fill;filter:drop-shadow(2px 3px 0 #213f4820)}.opening-title{position:absolute;z-index:9;left:1.5%;top:1%;max-width:65%}.opening-title>p{font-size:12px;margin-bottom:8px;letter-spacing:.05em}.opening-title h1{font-size:clamp(29px,3.5vw,48px);font-weight:900;line-height:1.45;letter-spacing:.015em}.opening-room{left:1%;top:35%;width:59%;height:58%;transform:rotate(-3deg);clip-path:polygon(0 5%,100% 0,92% 100%,0 96%)}.opening-phone{left:66%;top:3%;width:32%;height:79%;transform:rotate(4deg);clip-path:polygon(11% 0,100% 0,100% 100%,0 95%)}.opening-phone .comic-picture{background-size:330% 400%;background-position:92% 0}.actor-woman{left:30%;bottom:-1%;height:88%;width:43%}.opening-speech{top:34%;left:0;max-width:31%}.opening-thought{right:1%;bottom:8%;max-width:30%}.opening-sound{left:58%;top:33%;transform:rotate(10deg)}.scroll-cue{position:absolute;z-index:15;bottom:0;left:1.5%;font-size:10px;display:flex;gap:12px;align-items:center;padding:5px 10px;background:#fffdf3}.scroll-cue i{font-style:normal;font-size:25px;animation:scroll-nudge 1.8s infinite}
.training-team{left:37%;top:16%;width:61%;height:64%;clip-path:polygon(6% 0,100% 0,96% 100%,0 91%)}.training-team .comic-picture{background-size:200% 400%}.training-detail{left:0;bottom:3%;width:38%;height:37%;transform:rotate(-3deg)}.training-detail .comic-picture{background-size:200% 400%}.training-stamp{position:absolute;z-index:11;left:1%;top:37%;background:#eff6f4;border:2px solid #436a64;border-radius:49% 47% 44% 43%;padding:24px 25px;text-align:center;transform:rotate(-4deg);width:34%}.training-stamp>small{display:block;font-size:12px}.training-stamp>strong{display:block;font-weight:500;font-size:20px;line-height:1}.training-stamp strong>span{font:600 94px/1.2 var(--display);margin-inline:8px}.training-stamp>p{font-size:11px;margin-top:8px}.training-speech{right:0;top:0;font-size:15px;padding:18px 24px}.comic-caption{position:absolute;z-index:12;left:43%;bottom:1%;font-size:17px;font-weight:700;line-height:1.8;background:#fff;padding:5px 12px}.work-main{left:35%;top:23%;width:63%;height:68%;clip-path:polygon(11% 0,100% 0,100% 100%,0 94%)}.work-main .comic-picture{background-size:200% 400%}.work-inset{left:0;top:9%;width:26%;height:48%;transform:rotate(-5deg)}.work-inset .comic-picture{background-size:300% 400%;background-position:17% 100%}.worker-rig{left:12%;bottom:0;height:98%;width:43%}.worker-rig img{object-position:left bottom}.water-jet{position:absolute;left:84%;top:-5%;width:64%;height:30%;overflow:visible;filter:drop-shadow(0 0 4px white);opacity:.9}.water-jet path{fill:none;stroke:#8bd6ed;stroke-width:4;stroke-dasharray:18 11;animation:jet .35s linear infinite}.water-jet path:nth-child(2){stroke-width:2;animation-delay:-.1s}.water-jet path:nth-child(3){stroke-width:3;animation-delay:-.2s}.water-jet circle{fill:#b3e8fa;animation:water-spark .5s infinite alternate}.chapter-work .chapter-heading{left:56%;top:0;max-width:44%}.chapter-work .chapter-heading h2{font-size:clamp(26px,2.6vw,37px)}.wash-sound{left:69%;top:44%;transform:rotate(-12deg);animation:sound-vibrate .4s infinite alternate}.work-speech{right:0;bottom:0;font-size:17px;padding:19px 24px}.work-promises{position:absolute;z-index:14;bottom:1%;left:0;display:flex;flex-direction:column;gap:6px}.work-promises>span{display:flex;gap:8px;align-items:center;background:white;border:1px solid #c8d9df;padding:4px 11px;font-size:12px;transform:rotate(-2deg)}.work-promises .icon{width:20px;height:20px;color:#3e7d73}
.trust-people{left:36%;top:3%;width:63%;height:54%;clip-path:polygon(8% 0,100% 0,100% 93%,0 100%);padding:12px;background:#eaf0ed}.real-faces{display:grid;grid-template-columns:repeat(3,1fr);height:calc(100% - 29px);gap:8px}.real-faces img{width:100%;height:100%;object-fit:cover;object-position:center 25%}.trust-people>span{font-size:11px;display:block;text-align:center;padding-top:4px}.trust-casy{position:absolute;z-index:10;top:39%;left:1%;width:31%;padding:18px 22px;border:1px solid #cdd6cf;background:white;transform:rotate(-3deg);box-shadow:4px 5px 0 #dfe9e4}.trust-casy img{width:155px;max-height:95px;object-fit:contain;margin:0 auto 8px}.trust-casy p{font-size:12px;text-align:center;line-height:1.9}.trust-casy strong{font-size:15px}.trust-oem{position:absolute;z-index:8;left:43%;top:61%;background:#fbf3d8;font-size:18px;line-height:1.9;padding:15px 22px;transform:rotate(2deg)}.trust-oem strong{font-weight:900;text-decoration:underline;text-decoration-color:#d8ae51;text-underline-offset:5px}.trust-speech{bottom:0;left:2%;font-size:18px;padding:20px 28px}.chapter-link{position:absolute;right:1%;bottom:0;font-size:13px;min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:5px;z-index:15}.choice-room{left:0;top:0;width:47%;height:82%;transform:rotate(-3deg);clip-path:polygon(0 0,100% 4%,89% 100%,0 96%)}.choice-room .comic-picture{background-size:280% 400%;background-position:96% 100%}.choice-finish{left:21%;bottom:0;width:32%;height:32%;transform:rotate(5deg)}.choice-copy{position:absolute;left:56%;top:9%;right:0;z-index:12;background:#fffef5ed;padding:20px 24px}.choice-copy>p{font-size:12px;color:#6d786e;margin-bottom:12px}.choice-copy h2{font-size:clamp(26px,2.6vw,37px)}.choice-price{margin:23px 0 20px;padding-left:15px;border-left:3px solid #be9b4f}.choice-price small{display:block;font-size:11px}.choice-price strong{font:600 37px var(--display)}.choice-price strong>span{font:400 12px var(--body);margin-left:5px}.choice-copy .text-link{display:block;width:max-content;margin-top:10px;font-size:12px}.choice-speech{left:0;bottom:4%;font-size:17px;max-width:38%;padding:18px 25px}.comic-bottomline{height:70px}.chapter-controls{display:flex;gap:12px;align-items:center}.chapter-controls button{border:0;background:none;min-width:54px;min-height:54px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#889aa2;padding:0 4px}.chapter-controls button>span{border:1px solid #bacbd3;border-radius:50%;width:24px;height:24px;font-size:11px;display:grid;place-items:center}.chapter-controls button>small{font-size:9px}.chapter-controls [aria-current=step]{color:var(--ink);font-weight:700}.chapter-controls [aria-current=step]>span{background:var(--ink);border-color:var(--ink);color:white}.comic-disclaimer{font-size:9px;color:var(--muted)}.auto-play{border:1px solid var(--line);border-radius:4px;padding-inline:15px;white-space:nowrap}.auto-play[aria-pressed=true]{background:var(--ink);color:white}.comic-paused .comic-stage *{animation-play-state:paused!important;transition:none!important}.comic-paused .actor{transform:none}.reduced-motion .motion-story{height:auto}.reduced-motion .comic-sticky{position:relative;top:0;height:auto;max-height:none;overflow:visible}.reduced-motion .comic-stage{flex:none;height:auto}.reduced-motion .chapter{position:relative;height:600px;opacity:1;visibility:visible;pointer-events:auto;margin-bottom:35px}.reduced-motion .comic-bottomline,.reduced-motion .motion-control{display:none}
.rank-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:30px}.rank-item{min-width:0}.rank-heading{display:flex;align-items:center;gap:14px;padding-bottom:15px;min-height:76px}.rank-number{font:600 40px var(--display);color:#82919a;white-space:nowrap}.rank-number small{font:400 12px var(--body);margin-right:3px}.rank-first .rank-number{color:var(--gold)}.rank-heading p{font-size:11px;color:var(--muted);line-height:1.8}.rank-heading strong{font-size:17px;color:var(--ink)}.rank-image{display:block;position:relative;overflow:hidden;border-radius:5px}.rank-image img{width:100%;aspect-ratio:1.8;object-fit:cover;transition:transform .25s}.rank-image:hover img{transform:scale(1.03)}.rank-image>span{position:absolute;bottom:0;left:0;background:#fffe;padding:7px 10px;font-size:10px}.pack-image .pack-photos{display:grid;grid-template-columns:1fr 1fr}.pack-image .pack-photos img{aspect-ratio:.9}.pack-badge{position:absolute;right:10px;top:10px;background:#fffdec;border:1px solid #ae925a;padding:12px;border-radius:50%;font:600 14px/1.7 var(--display);text-align:center}.rank-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:17px}.rank-bottom small{font-size:11px;color:var(--muted)}.price{font:600 31px var(--display)}.price>span{font:400 10px var(--body);margin-left:7px}.arrow-button{width:44px;height:44px;border:1px solid #b3c7ce;border-radius:50%;background:#fff;font-size:21px}.rank-detail{display:inline-flex;align-items:center;min-height:44px;font-size:11px;color:var(--muted)}.service-menu{margin-top:47px;background:var(--sky);padding:28px}.service-menu h3{font-size:19px}.service-illustrations{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.service-tile{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;min-width:0;padding:17px 7px 13px;position:relative;border-radius:6px;transition:background .2s,transform .2s}.service-tile:hover{background:#e2edf3;transform:translateY(-3px)}.service-art{width:87px;height:81px;display:grid;place-items:center;border-radius:45% 54% 48% 50%;background:#edf5fa;margin-bottom:13px;color:#3c6e85}.service-art .icon{width:58px;height:58px;stroke-width:1.8}.service-color-1 .service-art{background:#fbf1d9;color:#98712d}.service-color-2 .service-art{background:#e9f2eb;color:#4f7d66}.service-color-3 .service-art{background:#f7eae3;color:#a26545}.service-tile strong{font-size:14px}.service-tile small{font-size:10px;color:var(--muted);margin-top:5px}.service-tile b{position:absolute;right:9px;top:7px;font-size:11px;font-weight:400;color:#8fa8b1}
.people-section{background:#f3f6f3}.people-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.person-portrait{position:relative;overflow:hidden;border-radius:5px;background:#e6eeeb}.person-portrait>img{width:100%;aspect-ratio:4/4.6;object-fit:cover;object-position:center 25%}.person-video{position:absolute;left:12px;right:12px;bottom:12px;border:0;min-height:44px;background:#fffefa;font-size:12px;border-radius:3px}.person-video>span{font-size:10px;color:var(--orange);margin-right:6px}.person-meta{padding-top:15px}.person-meta>small{font-size:9px;color:var(--gold);letter-spacing:.1em}.person h3{font-size:19px;margin-top:4px}.person-bio{font-size:10px;color:var(--muted);margin-top:5px}.person-message{font-size:13px;line-height:1.8;margin-top:12px}.training-proof{display:grid;grid-template-columns:1fr 1.5fr;gap:50px;border-top:1px solid #cddad2;padding-top:32px;margin-top:38px;align-items:start}.training-proof>div:first-child{position:relative;padding-left:67px}.training-proof>div:first-child>.icon{position:absolute;left:0;top:12px;width:47px;height:47px;color:#507c6b}.training-proof p{font-size:13px}.training-proof>div:first-child strong{font:500 24px var(--display);line-height:1.4}.training-proof strong>span{font-size:61px;margin:0 8px}.training-proof h3{font-size:21px;margin-bottom:6px}.training-proof details{margin-top:17px;font-size:14px}.training-proof summary{font-size:12px;cursor:pointer;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid #b4c8bd;padding:8px 0}.training-proof summary>span{font-size:20px}.training-proof blockquote{padding:16px 0 3px 15px;border-left:2px solid #8ba89a;margin-top:19px;font-size:14px}.training-proof cite{display:block;font-size:11px;font-style:normal;margin-top:7px;color:var(--muted)}.training-proof details>a{display:inline-block;min-height:44px;padding-top:14px;font-size:12px;text-decoration:underline;text-underline-offset:4px}.proof-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:center}.before-after{position:relative;isolation:isolate;overflow:hidden;border-radius:5px;--split:50%}.before-after>img{width:100%;aspect-ratio:1.6;object-fit:cover}.before-layer{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0)}.before-layer img{width:100%;height:100%;object-fit:cover}.comparison-line{position:absolute;left:var(--split);top:0;bottom:0;width:3px;background:white;pointer-events:none;box-shadow:0 0 3px #243d4c55}.comparison-line:after{content:'↔';position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;background:white;border-radius:50%;display:grid;place-items:center;font-size:23px;box-shadow:0 2px 10px #243d4c33}.before-after input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.before-after:focus-within{outline:3px solid #0f84ab;outline-offset:5px}.before-label,.after-label{position:absolute;top:12px;background:white;padding:4px 10px;font-size:11px;pointer-events:none}.before-label{left:12px}.after-label{right:12px}.case-location{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.case-location .icon{width:23px;height:23px}.case-caption h3{font-size:24px;margin-top:12px}.case-caption>p{font-size:14px;margin-top:16px}.case-caption>p.comparison-hint{font-size:11px;color:var(--muted)}.case-caption .text-link{margin-top:15px}
.local-section{background:var(--sky)}.local-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px}.prefecture-links{display:flex;flex-direction:column;gap:9px;margin:27px 0 13px;max-width:370px}.prefecture-links a{display:flex;align-items:center;gap:15px;background:white;border:1px solid #d6e2e7;border-radius:5px;min-height:65px;padding:12px 18px;font-size:12px}.prefecture-links .icon{width:30px;height:30px;color:#6d929e}.prefecture-links span{font-size:18px;font-weight:700;flex:1}.prefecture-links a:last-child span{font-size:15px}.local-search label{display:block;font-size:14px;font-weight:700;margin-bottom:11px}.local-search input{width:100%;min-height:49px;border:1px solid #a7bdc7;background:white;padding:12px 14px;border-radius:4px;font-size:16px}.local-search>p{font-size:11px;color:var(--muted);margin-top:9px}.region-detail{border-bottom:1px solid #b9ccd4;margin-top:14px}.region-detail summary{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:13px;font-weight:500;min-height:48px;cursor:pointer}.region-detail summary span{font-size:20px;font-weight:400}.region-detail[open] summary span{transform:rotate(45deg)}.area-links{display:grid;grid-template-columns:repeat(3,1fr);gap:0 14px;padding-bottom:12px}.area-links a{display:flex;align-items:center;min-height:44px;border-top:1px solid #dce6e9;font-size:11px;padding:8px 0}.area-links a:hover{color:var(--orange)}.journal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:25px}.journal-image{position:relative;overflow:hidden;border-radius:5px}.journal-image img{width:100%;aspect-ratio:1.5;object-fit:cover;transition:transform .25s}.journal-image>span{position:absolute;bottom:4px;right:4px;font-size:8px;background:#fffd;padding:0 4px;color:var(--muted)}.journal-grid a:hover img{transform:scale(1.04)}.journal-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:4px;font-size:10px;color:var(--muted);margin-top:13px}.journal-grid h3{font-size:16px;line-height:1.8;margin-top:8px}.guide-section{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:60px}.guide-section h2{font-size:24px}.booking-flow ol{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0;list-style:none;margin:26px 0 0}.booking-flow li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.booking-flow li+li:before{content:'→';position:absolute;left:-20px;top:17px;color:#9ab2bc}.booking-flow .icon{width:52px;height:52px;color:#5a8292;background:#f2f7f9;padding:5px;border-radius:8px}.booking-flow li>span{font-size:13px;font-weight:700}.booking-flow li>small{font-size:10px;color:var(--muted)}.faq .eyebrow{display:none}.faq h2{margin-bottom:18px}.faq details{border-bottom:1px solid var(--line)}.faq summary{list-style:none;cursor:pointer;min-height:56px;position:relative;padding:15px 26px 15px 0;font-size:13px}.faq summary:after{content:'＋';position:absolute;right:0;top:14px;font-size:18px}.faq details[open] summary:after{content:'−'}.faq details>p{font-size:13px;color:var(--muted);padding:0 0 17px;line-height:1.9}.faq a{text-decoration:underline;text-underline-offset:4px}.contact{background:#e5eff3;text-align:center;padding:55px 0}.contact h2{font-size:29px}.contact-actions{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:25px}.telephone{display:flex;gap:10px;align-items:center;margin-left:12px;font:600 24px var(--display)}.telephone .icon{width:26px;height:26px}.telephone small{display:block;font:400 10px var(--body);margin-top:4px}.footer{padding-block:38px 23px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:30px}.footer .logo img{width:220px}.footer p{font-size:10px;line-height:1.9;margin-top:14px;color:var(--muted)}.footer nav{display:grid;grid-template-columns:repeat(4,auto);gap:0 25px;font-size:11px}.footer nav a{min-height:44px;display:flex;align-items:center}.footer-note{display:flex;justify-content:space-between;align-items:center;gap:25px;border-top:1px solid var(--line);padding-top:18px;width:100%}.footer-note p{margin:0;font-size:9px}.footer-note small{font-size:9px;color:var(--muted);white-space:nowrap}
.service-dialog,.video-dialog{border:0;border-radius:6px;background:white;max-height:90svh;overflow:auto;color:var(--ink);padding:32px;width:min(520px,calc(100% - 30px))}.service-dialog::backdrop,.video-dialog::backdrop{background:#183946ad;backdrop-filter:blur(3px)}.dialog-close,.video-close{position:absolute;right:8px;top:5px;border:0;background:white;width:44px;height:44px;font-size:28px}.service-dialog h2,.video-dialog h2{font-size:24px;margin-bottom:14px}.service-dialog>p:not(.eyebrow){font-size:14px}.service-dialog form{margin-top:20px}.service-dialog label{display:block;margin-top:14px;font-size:13px;font-weight:700}.service-dialog select{display:block;min-height:46px;margin-top:7px;width:100%;padding:9px 11px;font-size:16px;border:1px solid #a7bdc7;border-radius:4px;background:white}.service-dialog .checkbox{display:flex;align-items:center;gap:9px;font-size:12px;min-height:44px;font-weight:400}.checkbox input{width:18px;height:18px;accent-color:var(--orange)}.estimate-total{margin-top:20px;display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:16px;background:var(--sky);border-radius:4px}.estimate-total>span{font-size:11px}.estimate-total output{font:600 27px var(--display)}.service-dialog .button{width:100%;margin-top:20px}.video-dialog{width:min(800px,calc(100% - 30px))}.video-frame{aspect-ratio:16/9;background:#193643}.video-frame iframe{border:0;width:100%;height:100%}.video-dialog .text-link{margin-top:14px}
@keyframes panel-enter{from{opacity:.4;translate:45px 15px}to{opacity:1;translate:0 0}}@keyframes actor-breathe{0%,100%{translate:0 0;rotate:-.5deg}50%{translate:0 -5px;rotate:.5deg}}@keyframes bubble-enter{from{opacity:0;scale:.8;translate:0 10px}to{opacity:1;scale:1;translate:0 0}}@keyframes jet{to{stroke-dashoffset:-29}}@keyframes water-spark{to{opacity:.3;translate:9px -4px}}@keyframes sound-vibrate{to{translate:2px -2px;rotate:1deg}}@keyframes scroll-nudge{50%{translate:0 4px}}
@media(max-width:1150px){.header{gap:17px}.logo img{width:202px}.group-label{display:none}.nav{gap:18px}.comic-stage{width:calc(100% - 55px)}.comic-topline,.comic-bottomline{width:calc(100% - 55px)}.speech{font-size:16px;padding:18px}.opening-title h1{font-size:37px}.opening-thought{font-size:14px}.training-stamp{padding:18px}.training-stamp strong>span{font-size:73px}.training-stamp>p{font-size:10px}.comic-caption{font-size:15px}.trust-speech{font-size:16px}.trust-oem{font-size:16px}.work-speech{font-size:15px}.choice-copy{padding:18px}.choice-copy h2{font-size:30px}.choice-copy .button{font-size:12px;padding:12px 15px}.choice-speech{font-size:15px}.rank-grid{gap:23px}.rank-heading strong{font-size:15px}.people-grid{gap:20px}.service-illustrations{gap:10px}.service-tile strong{font-size:12px}.guide-section{gap:40px}.contact-actions{gap:12px}.telephone{font-size:21px}}
@media(max-width:950px){.wrap{width:calc(100% - 48px)}.header{height:66px}.nav{display:none}.header-cta{margin-left:auto}.menu-toggle{display:flex;width:44px;height:44px;border:1px solid var(--line);border-radius:4px;background:white;flex-direction:column;gap:6px;justify-content:center;align-items:center}.menu-toggle span{height:1px;width:19px;background:var(--ink)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.fast-lane>a{min-width:0;flex:1;padding:8px 12px;gap:8px;font-size:11px}.comic-sticky{top:72px;height:calc(100svh - 72px)}.comic-topline,.comic-bottomline,.comic-stage{width:calc(100% - 40px)}.comic-topline{font-size:10px}.comic-topline>div{gap:10px}.comic-disclaimer{display:none}.opening-title h1{font-size:33px}.opening-title>p{font-size:10px}.speech{font-size:14px;padding:15px}.opening-speech{max-width:33%;top:32%}.opening-thought{font-size:12px}.manga-sound{font-size:48px}.chapter-heading h2{font-size:30px}.chapter-heading>p{font-size:11px}.training-speech{font-size:12px}.training-stamp strong>span{font-size:64px}.training-stamp>small{font-size:10px}.training-stamp>p{font-size:9px}.comic-caption{font-size:13px}.trust-casy{padding:12px}.trust-casy strong{font-size:12px}.trust-casy p{font-size:10px}.trust-oem{font-size:14px;padding:13px}.trust-speech{font-size:14px}.chapter-link{font-size:11px}.choice-copy{left:51%;top:6%;padding:15px}.choice-copy h2{font-size:25px}.choice-price strong{font-size:32px}.choice-copy>p{font-size:10px}.choice-speech{font-size:13px}.work-promises>span{font-size:10px}.work-speech{font-size:13px}.rank-heading{gap:8px}.rank-number{font-size:32px}.rank-heading strong{font-size:13px}.rank-bottom{gap:6px}.price{font-size:26px}.price>span{font-size:9px;margin-left:3px}.rank-bottom small{font-size:10px}.rank-image>span{font-size:8px}.service-menu{padding:22px}.service-art{width:70px;height:69px}.service-art .icon{width:49px;height:49px}.service-tile small{font-size:9px}.people-grid{grid-template-columns:repeat(2,1fr);gap:28px}.person-portrait>img{aspect-ratio:1.2}.person-message{font-size:14px}.person-bio{font-size:11px}.training-proof{gap:30px}.proof-layout{gap:35px}.local-layout{gap:35px}.journal-grid{grid-template-columns:repeat(2,1fr);gap:30px}.guide-section{grid-template-columns:1fr 1fr;gap:35px}.guide-section h2{font-size:21px}.booking-flow ol{gap:10px}.booking-flow li+li:before{left:-13px;font-size:12px}.booking-flow li>span{font-size:11px}.booking-flow li>small{font-size:9px}.contact-actions{flex-wrap:wrap}.telephone{margin-left:0}.footer nav{grid-template-columns:repeat(4,auto);gap:0 18px}}
@media(max-width:650px){html{scroll-padding-top:82px}.wrap{width:calc(100% - 36px)}.section{padding-block:47px}h2{font-size:24px}.section-head{align-items:flex-start;gap:14px;flex-direction:column;margin-bottom:23px}.section-head .text-link{font-size:12px}.header{height:65px;padding:10px 16px;gap:10px}.logo img{width:184px}.header-cta{font-size:10px;min-height:40px;padding:10px 12px}.menu-toggle{width:40px;height:40px;flex:none}.fast-lane{min-height:54px}.fast-lane>a{font-size:9px;padding:8px 7px;gap:5px;flex-wrap:wrap;line-height:1.5}.fast-lane .icon{width:19px;height:19px}.fast-lane>a>span{white-space:nowrap}.motion-story{height:400svh}.comic-sticky{top:65px;height:calc(100svh - 120px);max-height:none;min-height:500px}.comic-topline,.comic-bottomline,.comic-stage{width:calc(100% - 28px)}.comic-topline{height:43px;gap:6px}.comic-topline>p{font-size:9px;letter-spacing:0;max-width:45%}.comic-topline>div{gap:3px}.comic-topline a{font-size:9px}.motion-control{font-size:9px;padding:6px}.comic-stage{min-height:420px}.opening-title{left:0;top:0;max-width:100%}.opening-title>p{font-size:10px;margin-bottom:8px}.opening-title h1{font-size:29px;line-height:1.45}.opening-room{left:0;top:40%;width:59%;height:46%;border-width:2px}.opening-phone{left:55%;top:23%;width:43%;height:62%;border-width:2px}.actor-woman{left:15%;bottom:2%;height:71%;width:73%}.opening-speech{top:29%;left:0;font-size:12px;padding:15px 12px;max-width:50%;z-index:10}.opening-thought{right:0;bottom:5%;font-size:12px;padding:10px 12px;max-width:65%;border-left-width:3px;z-index:12}.opening-sound{font-size:42px;left:72%;top:47%;-webkit-text-stroke-width:4px}.scroll-cue{left:0;bottom:0;font-size:8px;padding:2px 6px;gap:7px}.scroll-cue i{font-size:20px}.chapter-heading{left:0;top:0;max-width:100%}.chapter-heading>p{font-size:10px;margin-bottom:8px}.chapter-heading h2{font-size:28px}.training-team{left:26%;top:29%;width:73%;height:49%;border-width:2px}.training-team .comic-picture{background-size:290% 400%;background-position:20% 33.333333%}.training-detail{left:0;bottom:3%;width:43%;height:30%;border-width:2px}.training-stamp{left:0;top:29%;width:49%;padding:14px 10px}.training-stamp>small{font-size:9px}.training-stamp strong{font-size:15px}.training-stamp strong>span{font-size:61px;margin:0 3px}.training-stamp>p{font-size:9px;line-height:1.6}.training-speech{right:0;top:7%;font-size:11px;line-height:1.6;padding:13px 14px;max-width:47%}.chapter-training .chapter-heading{max-width:62%}.chapter-training .chapter-heading h2{font-size:25px}.comic-caption{left:44%;right:0;bottom:2%;font-size:12px;padding:3px 0 3px 6px}.work-main{left:25%;top:30%;width:74%;height:55%;border-width:2px}.work-inset{left:0;top:27%;width:36%;height:39%;border-width:2px}.chapter-work .chapter-heading{left:0;top:0;max-width:100%}.chapter-work .chapter-heading h2{font-size:27px}.worker-rig{left:4%;bottom:4%;height:79%;width:69%}.water-jet{left:83%;top:2%;width:60%;height:27%}.wash-sound{left:61%;top:44%;font-size:43px;white-space:nowrap}.work-promises{left:0;bottom:0;gap:3px}.work-promises>span{font-size:9px;padding:2px 7px}.work-promises .icon{width:16px;height:16px}.work-speech{right:0;bottom:1%;font-size:11px;padding:13px 12px;max-width:60%}.trust-people{left:21%;top:27%;width:78%;height:39%;padding:7px;border-width:2px}.real-faces{gap:4px;height:calc(100% - 24px)}.trust-people>span{font-size:9px}.trust-casy{top:43%;left:0;width:43%;padding:11px 8px}.trust-casy img{max-height:64px;width:118px;margin-bottom:3px}.trust-casy p{font-size:9px}.trust-casy strong{font-size:10px}.trust-oem{left:36%;top:69%;font-size:12px;padding:10px;max-width:64%;line-height:1.8}.trust-speech{bottom:2%;left:0;font-size:11px;padding:13px 15px;max-width:67%}.chapter-link{font-size:9px;max-width:35%;bottom:0;right:0;line-height:1.6;min-height:44px}.choice-room{left:0;top:0;width:62%;height:50%;border-width:2px}.choice-finish{left:56%;top:6%;bottom:auto;width:43%;height:35%;border-width:2px}.choice-copy{left:9%;right:0;top:43%;padding:15px 17px;background:#fffef2f5}.choice-copy>p{font-size:10px;margin-bottom:7px}.choice-copy h2{font-size:25px}.choice-price{margin:13px 0 12px;padding-left:12px}.choice-price small{font-size:10px}.choice-price strong{font-size:30px}.choice-price strong>span{font-size:10px}.choice-copy .button{min-height:45px;font-size:12px;padding:10px 14px;width:100%}.choice-copy .text-link{font-size:11px;margin-top:6px;min-height:35px}.choice-speech{left:0;bottom:auto;top:28%;font-size:11px;padding:13px 15px;max-width:65%}.comic-bottomline{height:69px;gap:4px}.chapter-controls{gap:2px;flex:1;justify-content:space-between}.chapter-controls button{min-width:41px;min-height:51px;padding:0 2px}.chapter-controls button>small{font-size:8px}.chapter-controls button>span{width:23px;height:23px}.auto-play{padding:5px 8px;font-size:9px;min-height:39px;margin-left:8px}.reduced-motion .chapter{height:590px}.rank-grid{grid-template-columns:1fr;gap:27px}.rank-item{display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;align-items:center}.rank-heading{grid-column:1/-1;min-height:auto;padding-bottom:0;gap:12px}.rank-heading p{font-size:10px}.rank-heading strong{font-size:17px}.rank-number{font-size:35px}.rank-image{grid-row:span 2}.rank-image img{aspect-ratio:1.4}.pack-image .pack-photos img{aspect-ratio:.7}.rank-bottom{padding-top:0;gap:10px}.rank-bottom small{font-size:10px}.price{font-size:27px;white-space:nowrap}.price>span{font-size:9px}.rank-bottom .arrow-button{width:37px;height:37px;flex:none}.rank-detail{font-size:10px;margin:0;min-height:35px}.rank-image>span{font-size:8px;padding:4px}.pack-badge{font-size:10px;padding:7px;right:6px;top:6px}.fine{font-size:10px}.service-menu{margin-top:30px;margin-inline:-18px;padding:24px 18px}.section-head.small{flex-direction:row;align-items:center}.service-menu h3{font-size:16px}.section-head.small>span{font-size:9px}.service-illustrations{grid-template-columns:repeat(3,1fr);gap:9px}.service-tile{padding:13px 4px 12px;border-radius:5px}.service-art{width:68px;height:64px;margin-bottom:9px}.service-art .icon{width:49px;height:49px;stroke-width:1.8}.service-tile strong{font-size:11px}.service-tile small{font-size:8px;margin-top:4px}.service-tile:last-child{grid-column:2}.people-grid{gap:24px 14px}.person-portrait>img{aspect-ratio:4/5}.person-video{left:6px;right:6px;bottom:8px;font-size:10px;min-height:40px}.person-video>span{margin-right:4px}.person-meta{padding-top:11px}.person h3{font-size:17px}.person-bio{font-size:9px;line-height:1.7}.person-message{display:none}.training-proof{grid-template-columns:1fr;gap:20px;padding-top:25px;margin-top:27px}.training-proof>div:first-child{padding-left:60px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.training-proof>div:first-child>.icon{width:40px;height:40px;top:6px}.training-proof>div:first-child>p{font-size:11px;max-width:110px}.training-proof>div:first-child>strong{font-size:20px}.training-proof strong>span{font-size:53px;margin-inline:6px}.training-proof h3{font-size:20px}.training-proof details{margin-top:10px}.training-proof summary{font-size:11px}.training-proof blockquote{font-size:14px}.proof-layout{grid-template-columns:1fr;gap:20px}.before-after>img{aspect-ratio:1.5}.case-caption h3{font-size:20px;margin-top:7px}.case-caption>p{font-size:14px;margin-top:9px}.case-caption .text-link{font-size:12px;margin-top:10px}.local-layout{grid-template-columns:1fr;gap:30px}.prefecture-links{display:grid;grid-template-columns:1fr 1fr;gap:9px;max-width:none;margin-top:23px}.prefecture-links a{min-height:70px;padding:12px;gap:8px;flex-wrap:wrap}.prefecture-links .icon{width:27px;height:27px}.prefecture-links span{font-size:18px}.prefecture-links a:last-child{grid-column:1/-1;min-height:52px}.prefecture-links a:last-child span{font-size:14px}.local-search label{font-size:14px}.region-detail summary{font-size:12px}.area-links{gap:0 11px}.area-links a{font-size:11px}.journal-grid{gap:24px 16px}.journal-meta{font-size:8px;margin-top:10px}.journal-grid h3{font-size:14px;line-height:1.8;margin-top:7px}.journal-image img{aspect-ratio:1.3}.guide-section{grid-template-columns:1fr;gap:37px}.guide-section h2{font-size:22px}.booking-flow ol{margin-top:20px;gap:18px}.booking-flow li>span{font-size:12px}.booking-flow li>small{font-size:9px}.booking-flow li+li:before{left:-19px;font-size:14px}.faq summary{font-size:14px;min-height:57px}.faq details>p{font-size:14px}.contact{padding-block:40px}.contact h2{font-size:25px}.mobile-only{display:block}.contact-actions{gap:11px;margin-top:22px}.contact-actions>.button{font-size:12px;padding:11px 16px;min-height:47px}.telephone{font-size:24px;margin-top:10px;width:100%;justify-content:center}.footer{padding-bottom:85px;gap:25px}.footer nav{width:100%;grid-template-columns:repeat(3,1fr);gap:0 12px;font-size:11px}.footer-note{align-items:flex-start;flex-direction:column;gap:10px}.footer-note p{font-size:9px;line-height:1.9}.mobile-contact{position:fixed;z-index:35;bottom:0;left:0;right:0;display:grid;grid-template-columns:.8fr 1fr 1.2fr;gap:6px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));background:#ffffffef;border-top:1px solid var(--line);backdrop-filter:blur(5px)}.mobile-contact>a{display:flex;justify-content:center;align-items:center;min-height:42px;border:1px solid #cbdbe2;border-radius:4px;background:white;font-size:11px}.mobile-contact>a:last-child{background:var(--orange);color:white;border-color:var(--orange);font-weight:700}.service-dialog,.video-dialog{padding:28px 20px}.service-dialog h2{font-size:22px}}
.work-main .water-jet{left:49%;top:34%;width:44%;height:26%;z-index:2}.comic-picture{width:100%;height:100%;background:none!important}.chapter-opening:not(.is-active){opacity:1;visibility:visible}.js-motion .chapter-opening:not(.is-active){opacity:0;visibility:hidden;pointer-events:none}
.comic-paused .comic-stage *{animation:none!important;transition:none!important}
.actor-woman{transform:translateX(calc((var(--scrub) - .5)*120px)) translateY(calc((var(--scrub) - .5)*-24px)) rotate(calc((var(--scrub) - .5)*4deg))}.chapter.is-active .actor{animation:character-enter 1s cubic-bezier(.16,.8,.3,1) both}.chapter.is-active .opening-room,.chapter.is-active .training-detail,.chapter.is-active .work-inset{animation-name:panel-left}.chapter.is-active .opening-phone,.chapter.is-active .training-team,.chapter.is-active .trust-people{animation-name:panel-right}.chapter.is-active .opening-sound{animation:sound-appear .7s .6s both}.comic-paused .actor{transform:none}
@keyframes panel-left{from{opacity:.25;translate:-170px 28px}to{opacity:1;translate:0 0}}@keyframes panel-right{from{opacity:.25;translate:260px -15px}to{opacity:1;translate:0 0}}@keyframes character-enter{from{opacity:0;translate:-100px 35px}to{opacity:1;translate:0 0}}@keyframes sound-appear{0%{opacity:0;scale:.1;rotate:-15deg}70%{opacity:1;scale:1.2;rotate:5deg}100%{opacity:1;scale:1;rotate:0}}
.reduced-motion .actor{transform:none}
.pack-image{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:1.8}.pack-image img{height:100%;min-height:0;aspect-ratio:auto;object-fit:cover}.arrow-button{display:grid;place-items:center}.reduced-motion.js-motion .chapter{opacity:1;visibility:visible;pointer-events:auto}
@media(max-width:650px){.training-speech{top:19%;max-width:44%}.chapter-training .chapter-heading{max-width:75%}.choice-copy h2{font-size:23px}}
@media(max-width:650px){.actor-woman{transform:translateX(calc((var(--scrub) - .5)*65px)) translateY(calc((var(--scrub) - .5)*-14px)) rotate(calc((var(--scrub) - .5)*4deg))}.comic-paused .actor,.reduced-motion .actor{transform:none}}
@media(max-width:650px){.pack-image{aspect-ratio:1.4}}
@media(max-width:370px){.logo img{width:164px}.header-cta{font-size:9px;padding-inline:9px}.header{gap:8px;padding-inline:12px}.opening-title h1{font-size:26px}.comic-topline>p{font-size:8px}.comic-topline a,.motion-control{font-size:8px}.opening-speech{font-size:11px}.auto-play{font-size:8px;padding-inline:6px}.chapter-controls button{min-width:35px}.chapter-controls button>small{font-size:7px}.rank-heading strong{font-size:16px}.price{font-size:24px}.rank-item{gap:7px 12px}.service-tile strong{font-size:10px}.service-tile small{font-size:7px}.choice-copy h2{font-size:22px}.choice-copy .button{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.actor{transform:none}.service-tile:hover{transform:none}}
