:root{--blue-950:#123d69;--blue-800:#175d9e;--blue-600:#2388d5;--blue-400:#62b9ec;--blue-200:#c7eaff;--blue-100:#eaf7ff;--orange:#f47b3c;--yellow:#ffd45b;--ink:#18334c;--muted:#526d82;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Yu Gothic,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;line-height:1.75}a{color:inherit}.notice-bar{color:#fff;background:var(--blue-800);justify-content:center;gap:2.5rem;padding:.5rem 5vw;font-size:.82rem;font-weight:700;display:flex}.site-header{background:#fffffff5;border-bottom:1px solid #d9edf8;min-height:92px;padding:.75rem 5vw}.header-inner{justify-content:space-between;align-items:center;gap:2rem;width:100%;max-width:1180px;margin:0 auto;display:flex}.brand{flex:0 270px;text-decoration:none;display:block}.brand-logo{width:270px;max-width:100%;height:auto;display:block}nav{align-items:center;gap:1.6rem;font-size:.9rem;font-weight:700;display:flex}nav a{text-decoration:none}.nav-contact{color:#fff;background:var(--orange);border-radius:999px;padding:.65rem 1rem}.hero{background:radial-gradient(circle at 84% 20%,#ffffffe6 0 7%,#0000 7.4%),radial-gradient(circle at 76% 13%,#ffffffa6 0 3%,#0000 3.4%),linear-gradient(135deg,#f8fdff 0%,#e4f6ff 52%,#c5ebff 100%);grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr);align-items:center;min-height:640px;padding:4.5rem 7vw 4rem;display:grid;position:relative;overflow:hidden}.hero:after{content:"";background:#fff;border-radius:50% 50% 0 0;height:125px;position:absolute;bottom:-70px;left:-8%;right:-8%}.hero-copy{z-index:2;max-width:680px;position:relative}.eyebrow{color:var(--blue-800);letter-spacing:.08em;margin:0 0 1rem;font-weight:800}h1{color:var(--blue-950);letter-spacing:-.04em;margin:0;font-size:clamp(2.65rem,5vw,5rem);line-height:1.16}h1 em{color:var(--blue-600);background:linear-gradient(transparent 72%,var(--yellow) 72%);font-style:normal}.hero-text{max-width:620px;color:var(--muted);margin:1.5rem 0 1.8rem;font-size:1.05rem}.hero-actions{flex-wrap:wrap;gap:.8rem;display:flex}.button{border-radius:999px;justify-content:center;align-items:center;min-height:50px;padding:.75rem 1.25rem;font-weight:800;text-decoration:none;display:inline-flex}.button-primary{color:#fff;background:var(--orange);box-shadow:0 10px 24px #e8622a3d}.button-secondary{color:var(--blue-800);border:2px solid var(--blue-400);background:#fff}.hero-note{color:var(--muted);font-size:.85rem}.hero-art{z-index:1;align-self:stretch;min-height:480px;position:relative}.hero-art:before{content:"";aspect-ratio:1;background:#ffffffa8;border-radius:46% 54% 54% 46%/58% 42%;width:min(34vw,430px);position:absolute;bottom:8%;right:2%;transform:rotate(8deg)}.hero-art img{z-index:2;object-fit:contain;filter:drop-shadow(0 18px 18px #1d5c8a29);width:min(36vw,470px);max-height:520px;position:absolute;bottom:1%;right:0}.bubble{z-index:3;color:var(--blue-800);border:2px solid var(--blue-400);background:#fff;border-radius:999px;padding:.55rem .9rem;font-weight:800;position:absolute;box-shadow:0 8px 18px #145a8c1a}.bubble-one{top:15%;left:0;transform:rotate(-4deg)}.bubble-two{top:27%;right:-2%;transform:rotate(5deg)}.sun{color:#f7b93b;font-size:3rem;position:absolute;top:8%;right:16%}.preview-spacer{z-index:2;text-align:center;color:var(--blue-800);padding:1.5rem 6vw 3.5rem;font-weight:800;position:relative}@media (max-width:860px){.notice-bar{justify-content:space-between;gap:1rem}nav a:not(.nav-contact){display:none}.hero{text-align:center;grid-template-columns:1fr;padding-top:3.2rem}.hero-copy{margin-inline:auto}.hero-actions{justify-content:center}.hero-art{min-height:390px}.hero-art img{width:min(72vw,430px);right:50%;transform:translate(50%)}.hero-art:before{width:min(70vw,400px);right:50%;transform:translate(50%)rotate(8deg)}.bubble-one{left:8%}.bubble-two{right:7%}}@media (max-width:560px){.notice-bar{flex-wrap:wrap;gap:.2rem 1rem}.notice-bar span:last-child{text-align:center;width:100%}.site-header{min-height:78px;padding:.6rem 1rem}.header-inner{justify-content:flex-start}.brand{flex:0 245px}.site-header nav{display:none}.hero{min-height:auto;padding:2.5rem 1.2rem 3rem}h1{font-size:clamp(2.35rem,12vw,3.5rem)}.hero-actions .button{width:100%}.hero-art{min-height:340px}.bubble{font-size:.78rem}.bubble-one{left:0}.bubble-two{right:0}}.section-pad{padding:5.5rem 7vw}.section-heading{text-align:center;max-width:760px;margin:0 auto 2.5rem}.section-heading>span,.mini-label{color:var(--blue-600);letter-spacing:.14em;margin-bottom:.55rem;font-size:.8rem;font-weight:800;display:inline-block}.section-heading h2,.about h2,.area h2,.insurance-strip h2{color:var(--blue-950);margin:.15rem 0 .75rem;font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.35}.section-heading p{color:var(--muted);margin:0}.worries{padding-top:3rem}.worry-cloud{flex-wrap:wrap;justify-content:center;gap:.75rem;max-width:940px;margin:auto;display:flex}.worry-cloud span{color:var(--blue-800);background:var(--blue-100);border:1px solid var(--blue-200);border-radius:999px;padding:.8rem 1.15rem;font-weight:700}.worry-cloud span:nth-child(2n){background:#fff8d9;border-color:#f4dc85;transform:rotate(1.5deg)}.worry-cloud span:nth-child(3n){background:#eff9e9;border-color:#cde7bd;transform:rotate(-1.5deg)}.services{background:#f7fcff}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;max-width:1150px;margin:auto;display:grid}.service-card{background:#fff;border:1px solid #dceef8;border-radius:24px;min-height:270px;padding:1.55rem;position:relative;overflow:hidden;box-shadow:0 12px 30px #145d9112}.service-card:after{content:"";background:var(--blue-100);border-radius:50%;width:90px;height:90px;position:absolute;bottom:-35px;right:-30px}.service-icon{background:var(--blue-100);border-radius:20px;place-items:center;width:58px;height:58px;margin-bottom:1rem;font-size:1.9rem;display:grid;transform:rotate(-3deg)}.service-card:nth-child(2n) .service-icon{background:#fff4d3;transform:rotate(3deg)}.service-card:nth-child(3n) .service-icon{background:#ebf7e6}.service-card h3{color:var(--blue-950);margin:0 0 .65rem;font-size:1.18rem}.service-card p{color:var(--muted);margin:0;font-size:.92rem}.service-card small{color:var(--blue-800);margin-top:.8rem;font-weight:700;display:block}.pet-card{grid-column:span 3;grid-template-columns:1fr 120px;align-items:center;min-height:210px;display:grid}.pet-card img{z-index:2;object-fit:contain;filter:drop-shadow(0 10px 9px #2762821f);justify-self:end;width:150px;max-height:180px;position:relative}.insurance-strip{border:2px solid var(--blue-200);background:linear-gradient(120deg,#e1f5ff,#f9fdff);border-radius:30px;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:1.7rem;margin:0 7vw;padding:2rem 2.3rem;display:grid}.insurance-strip h2{font-size:clamp(1.5rem,2.8vw,2.25rem)}.insurance-strip p{color:var(--muted);margin:.4rem 0}.insurance-illustration{background:#fff;border-radius:38% 62% 52% 48%;place-items:center;width:110px;height:110px;font-size:3.8rem;display:grid;transform:rotate(-4deg)}.prices{background:linear-gradient(#fff,#eef9ff)}.base-price-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:820px;margin:0 auto 1.4rem;display:grid}.base-price{text-align:center;color:#fff;background:var(--blue-800);border-radius:24px;padding:1.5rem}.base-price span{font-weight:700;display:block}.base-price strong{font-size:2.7rem;line-height:1.3;display:block}.base-price strong small{font-size:1rem}.base-price p{opacity:.85;margin:0;font-size:.8rem}.price-list{background:#fff;border:1px solid #dceef8;border-radius:20px;max-width:820px;margin:auto;overflow:hidden}.price-row{border-bottom:1px dashed #d7e9f3;grid-template-columns:1fr auto 110px;align-items:center;gap:1rem;padding:1rem 1.3rem;display:grid}.price-row:last-child{border:0}.price-row strong{color:var(--blue-800);font-size:1.12rem}.price-row small{color:var(--muted);text-align:right}.price-caution{max-width:820px;color:var(--muted);margin:1.2rem auto 0;font-size:.83rem}.about{grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);align-items:center;gap:4rem;max-width:1180px;margin:auto;display:grid}.about-art{min-height:460px;position:relative;overflow:visible}.about-art:before{content:"";z-index:0;background:linear-gradient(150deg,#e5f7ff,#c8ebff);border-radius:48% 52% 45% 55%/55% 40% 60% 45%;position:absolute;inset:0}.about-art img{z-index:1;object-fit:contain;filter:drop-shadow(0 15px 15px #134f7c1f);width:94%;max-height:450px;position:absolute;bottom:-2%;right:-6%}.about-bubble{z-index:3;text-align:center;white-space:nowrap;min-width:10.5rem;color:var(--blue-800);border:2px solid var(--blue-400);background:#fff;border-radius:20px;padding:.8rem 1.15rem;font-weight:800;line-height:1.45;position:absolute;top:8%;left:3%;transform:rotate(-3deg);box-shadow:0 9px 22px #134f7c1f}.about-copy p{color:var(--muted)}.license-list{flex-wrap:wrap;gap:.55rem;margin-top:1.4rem;display:flex}.license-list span{color:var(--blue-800);background:var(--blue-100);border-radius:999px;padding:.5rem .75rem;font-size:.78rem;font-weight:700}.flow{background:#f8fcff}.flow-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;max-width:1100px;margin:auto;padding:0;list-style:none;display:grid}.flow-list li{text-align:center;background:#fff;border:1px solid #dceef8;border-radius:22px;padding:1.5rem 1rem;position:relative}.flow-list li:not(:last-child):after{content:"→";z-index:2;color:var(--blue-400);font-size:1.4rem;font-weight:800;position:absolute;top:43%;right:-1.05rem}.flow-list b{color:#fff;background:var(--blue-600);border-radius:50%;place-items:center;width:42px;height:42px;margin:0 auto .8rem;font-size:1.1rem;display:grid}.flow-list span,.flow-list strong{display:block}.flow-list span{color:var(--muted);font-size:.83rem}.flow-list strong{color:var(--blue-950);margin-bottom:.2rem;font-size:1rem}.area{grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);align-items:center;gap:4rem;max-width:1150px;margin:auto;display:grid}.area-map{background:linear-gradient(150deg,#e4f6ff,#c3eaff);border-radius:42% 58% 46% 54%/55% 42% 58% 45%;min-height:390px;position:relative}.area-map span{text-align:center;width:130px;height:130px;color:var(--blue-800);background:#fff;border:5px solid #ffffffa6;border-radius:50%;place-items:center;font-weight:800;display:grid;position:absolute;box-shadow:0 12px 25px #1f68991c}.area-map span:first-child{top:18%;left:13%}.area-map span:nth-child(2){background:#fff7d9;top:39%;right:12%}.area-map span:nth-child(3){background:#eff9e9;width:150px;height:150px;bottom:7%;left:17%}.area-map small{font-size:.68rem}.area-copy p{color:var(--muted)}.info-box{background:var(--blue-100);border-radius:18px;gap:.2rem;margin-top:1.4rem;padding:1.2rem;display:grid}.info-box strong{color:var(--blue-950)}.info-box span{color:var(--muted);font-size:.85rem}.contact{background:linear-gradient(145deg,#e8f8ff,#c8ebff)}.contact-layout{max-width:720px;margin:auto}.contact-form{background:#fff;border-radius:24px;gap:1rem;padding:1.5rem;display:grid;position:relative;box-shadow:0 12px 30px #195b8b14}.contact-form label{color:var(--blue-950);gap:.35rem;font-size:.86rem;font-weight:700;display:grid}.contact-form label>span{color:#fff;background:var(--orange);border-radius:4px;width:max-content;padding:0 .35rem;font-size:.65rem;display:inline}.contact-form input,.contact-form textarea{width:100%;color:var(--ink);font:inherit;background:#fbfdff;border:1px solid #cfe3ee;border-radius:10px;padding:.8rem}.contact-form textarea{resize:vertical;min-height:130px}.contact-form .privacy-check{font-weight:400;display:block}.privacy-check input{width:auto}.contact-form button{color:#fff;background:var(--orange);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:.9rem;font-weight:800}.contact-form>small{text-align:center;color:var(--muted)}.contact-trap{width:1px!important;height:1px!important;position:absolute!important;left:-10000px!important;overflow:hidden!important}.footer{color:#d8eaff;background:var(--blue-950);grid-template-columns:1.4fr 1fr;gap:2rem;padding:3rem 7vw 6rem;display:grid}.footer strong{color:#fff}.footer p{max-width:680px;font-size:.78rem}.footer-links{flex-direction:column;align-items:flex-start;gap:.35rem;display:flex}.footer-links a{font-size:.85rem}.corporate-link{margin-bottom:.35rem;font-weight:700;text-decoration:none}.footer>small{opacity:.7;grid-column:1/-1}.mobile-cta{display:none}.legal-page{max-width:900px;margin:auto;padding:4rem 6vw 7rem}.legal-page h1{font-size:clamp(2rem,4vw,3.2rem)}.legal-page h2{color:var(--blue-950);margin-top:2.2rem}.legal-page p,.legal-page li{color:var(--muted)}.legal-back{color:var(--blue-800);margin-bottom:2rem;font-weight:800;display:inline-block}@media (max-width:900px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pet-card{grid-column:span 2}.insurance-strip{grid-template-columns:90px 1fr}.insurance-strip>.button{grid-column:2}.insurance-illustration{width:90px;height:90px}.about,.area{grid-template-columns:1fr;gap:2rem}.about-art,.area-map{width:100%;max-width:560px;margin:auto}.contact-layout{grid-template-columns:1fr}.flow-list{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-list li:nth-child(2):after{display:none}.footer{grid-template-columns:1fr}}@media (max-width:600px){body{padding-bottom:64px}.section-pad{padding:4rem 1.2rem}.service-grid{grid-template-columns:1fr}.pet-card{grid-column:auto;grid-template-columns:1fr 105px}.insurance-strip{text-align:center;grid-template-columns:1fr;margin:0 1.2rem;padding:1.4rem}.insurance-strip>.button{grid-column:auto}.insurance-illustration{margin:auto}.base-price-grid{grid-template-columns:1fr}.price-row{grid-template-columns:1fr auto}.price-row small{text-align:left;grid-column:1/-1}.flow-list{grid-template-columns:1fr}.flow-list li:after{display:none!important}.area-map{min-height:340px}.area-map span{width:110px;height:110px}.area-map span:nth-child(3){width:130px;height:130px}.about-art{min-height:390px}.about-bubble{min-width:11.5rem;top:2%;left:50%;transform:translate(-50%)rotate(-2deg)}.footer{padding-inline:1.3rem}.mobile-cta{z-index:20;background:#fff;border-top:1px solid #cfe3ee;grid-template-columns:1fr;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-cta a{text-align:center;color:#fff;background:var(--blue-600);padding:.85rem;font-weight:800;text-decoration:none}}
