.site-footer{background-color:var(--footer-bg);color:var(--background)}.site-footer__top{flex-direction:column;gap:32px;padding-block:48px;display:flex}@media screen and (width>=1024px){.site-footer__top{flex-direction:row;justify-content:space-between;align-items:flex-start}}.site-footer__company{flex-direction:column;order:2;gap:12px;display:flex}@media screen and (width>=1024px){.site-footer__company{order:0}}.site-footer__top nav{order:1}@media screen and (width>=1024px){.site-footer__top nav{order:0}}.site-footer__logo-link{align-items:center;display:inline-flex}.site-footer__logo{width:auto;height:28px}.site-footer__name,.site-footer__address,.site-footer__fax{color:color-mix(in srgb, var(--background) 70%, transparent);font-size:14px}.site-footer__tel{color:var(--background);font-size:14px;font-weight:600;text-decoration:none}.site-footer__tel:hover{text-decoration:underline}.site-footer__hours{color:color-mix(in srgb, var(--background) 60%, transparent);font-size:12px}.site-footer__nav-title{letter-spacing:.05em;text-transform:uppercase;color:color-mix(in srgb, var(--background) 50%, transparent);margin-bottom:12px;font-size:12px;font-weight:600}.site-footer__nav-list{flex-direction:column;gap:8px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.site-footer__nav-link{color:color-mix(in srgb, var(--background) 80%, transparent);text-decoration:none}.site-footer__nav-link:hover{color:var(--background);text-decoration:underline}.site-footer__bottom{border-top:1px solid color-mix(in srgb, var(--background) 10%, transparent);padding-block:24px}.site-footer__bottom-inner{flex-direction:column;align-items:flex-start;gap:12px;display:flex}@media screen and (width>=640px){.site-footer__bottom-inner{flex-direction:row;justify-content:space-between;align-items:center}}.site-footer__copy{color:color-mix(in srgb, var(--background) 60%, transparent);order:2;font-size:12px}@media screen and (width>=640px){.site-footer__copy{order:0}}.site-footer__bottom-links{flex-direction:column;order:1;align-items:flex-start;gap:8px;display:flex}@media screen and (width>=640px){.site-footer__bottom-links{flex-flow:wrap;order:0;justify-content:center;align-items:center;gap:8px 20px}}.site-footer__privacy-link{white-space:nowrap;color:color-mix(in srgb, var(--background) 80%, transparent);font-size:12px;font-weight:600;text-decoration:none}.site-footer__privacy-link:hover{color:var(--background)}.site-footer__corporate-link{white-space:nowrap;color:color-mix(in srgb, var(--background) 80%, transparent);align-items:center;gap:6px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.site-footer__corporate-link:hover{color:var(--background)}.hero{align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:-10;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__overlay{pointer-events:none;z-index:-10;background:linear-gradient(115deg,#14100ad1 0%,#14100a8c 35%,#14100a26 60%,#14100a00 78%);position:absolute;inset:0}.hero__content-wrap{padding-block:128px;position:absolute;bottom:0;left:40px;right:0}@media screen and (width<735px){.hero__content-wrap{left:0}}@media screen and (width>=1024px){.hero__content-wrap{left:20px}}.hero__content{max-width:800px}.hero__title{white-space:pre-line;color:#fff;text-shadow:0 2px 16px #00000073;margin:0;font-size:30px;font-weight:700;line-height:1.3}@media screen and (width>=640px){.hero__title{font-size:36px}}@media screen and (width>=1024px){.hero__title{font-size:48px}}.hero__description{white-space:pre-line;color:#ffffffe6;text-shadow:0 1px 8px #0006;margin-top:20px;font-size:16px;line-height:1.625}.hero__cta-wrap{margin-top:32px}.hero__cta{flex-direction:column;gap:4px;width:100%;max-width:300px;height:80px}.hero__cta-eyebrow{font-size:13px;font-weight:600}.hero__cta-tel{align-items:center;gap:6px;font-size:20px;font-weight:700;display:flex}@media screen and (width>=640px){.hero__cta-tel{font-size:24px}}.intro{padding-block:96px;scroll-margin-top:80px}.intro__head{text-align:center;max-width:672px;margin-inline:auto}.intro__title{margin:0;font-size:24px;font-weight:700}@media screen and (width>=640px){.intro__title{font-size:30px}}@media screen and (width>=1024px){.intro__title{font-size:36px}}.intro__lead{margin-inline:auto;text-align:center;max-width:672px;margin-top:48px;margin-bottom:0;line-height:1.625}.intro__emphasis{color:var(--brand-bright);font-size:24px;font-weight:700}@media screen and (width>=640px){.intro__emphasis{font-size:30px}}@media screen and (width>=1024px){.intro__emphasis{font-size:36px}}.intro__grid{gap:24px;margin-top:64px;display:grid}@media screen and (width>=640px){.intro__grid{grid-template-columns:repeat(2,1fr)}}@media screen and (width>=1024px){.intro__grid{grid-template-columns:repeat(4,1fr)}}.intro__card{border:1px solid var(--border);background-color:var(--card);text-align:center;border-radius:12px;flex-direction:column;padding:24px;display:flex}.intro__icon{background-color:color-mix(in srgb, var(--destructive) 10%, transparent);width:48px;height:48px;color:var(--destructive);border-radius:8px;justify-content:center;align-items:center;margin-inline:auto;display:flex}.intro__card-title{margin-top:16px;margin-bottom:0;font-size:18px;font-weight:600}.intro__card-desc{color:var(--muted-foreground);margin-top:8px;margin-bottom:0;line-height:1.625}.services{background-color:color-mix(in srgb, var(--accent) 40%, transparent);padding-block:80px;scroll-margin-top:80px}.services__head{text-align:center;max-width:672px;margin-inline:auto}.services__title{margin:0;font-size:24px;font-weight:700}@media screen and (width>=640px){.services__title{font-size:30px}}@media screen and (width>=1024px){.services__title{font-size:36px}}.services__lead{color:var(--muted-foreground);margin-top:16px;margin-bottom:0;line-height:1.625}.services__lead-line{display:block}.services__steps{flex-direction:column;gap:32px;margin-top:64px;display:flex}.services__step{border:1px solid var(--border);background-color:var(--card);border-radius:16px;padding:32px}@media screen and (width>=640px){.services__step{padding:40px}}@media screen and (width<=767px){.services__step{padding:0}}.services__step-grid{gap:32px;display:grid;@media screen and (width<=767px){gap:20px}}@media screen and (width<=767px){.services__step-image{order:-1}}@media screen and (width>=768px){.services__step-grid{grid-template-columns:repeat(2,1fr);align-items:center}}.services__step-text,.services__step-image{min-width:0}@media screen and (width<=767px){.services__step-text{padding:0 20px 25px}}.services__step-label{background-color:var(--primary);letter-spacing:.02em;min-width:144px;height:56px;color:var(--primary-foreground);border-radius:8px;justify-content:center;align-items:center;padding-inline:24px;font-size:24px;font-weight:700;display:inline-flex;@media screen and (width<=767px){height:40px;font-size:20px}}.services__step-title{color:var(--primary);margin-top:24px;margin-bottom:0;font-size:18px;font-weight:700}.services__step-desc{color:var(--muted-foreground);margin-top:8px;margin-bottom:0;line-height:1.625;@media screen and (width<=767px){font-size:16px}}.services__step-img{aspect-ratio:16/9;object-fit:cover;border-radius:12px;width:100%;display:block;@media screen and (width<=767px){border-radius:12px 12px 0 0}}.cases{background-color:var(--background);padding-block:96px;scroll-margin-top:80px}.cases__head{align-items:center;gap:16px;margin-bottom:16px;display:flex}.cases__bar{height:40px}@media screen and (width>=640px){.cases__bar{height:48px}}.cases__eyebrow{letter-spacing:.03em;text-transform:uppercase;color:var(--primary);font-size:14px;font-weight:600;display:block}.cases__title{margin:0;font-size:24px;font-weight:700}@media screen and (width>=640px){.cases__title{font-size:30px}}@media screen and (width>=1024px){.cases__title{font-size:36px}}.cases__lead{color:var(--muted-foreground);margin-bottom:48px;font-size:18px;font-weight:500}.cases__list{flex-direction:column;gap:56px;display:flex}.cases__item{border:1px solid var(--border);background-color:var(--card);border-radius:16px;scroll-margin-top:96px;overflow:hidden;box-shadow:0 1px 2px #0000000d}.cases__item-header{background-color:var(--secondary);flex-direction:column;align-items:flex-start;gap:3px;padding:20px 24px;display:flex}@media screen and (width>=640px){.cases__item-header{flex-direction:row;align-items:baseline;gap:16px;padding-inline:40px}}.cases__item-label{letter-spacing:.02em;color:var(--primary);font-size:18px;font-weight:700}@media screen and (width>=640px){.cases__item-label{font-size:20px}}@media screen and (width>=1024px){.cases__item-label{font-size:24px}}.cases__item-title{margin:0;font-size:20px;font-weight:700}@media screen and (width>=640px){.cases__item-title{font-size:24px}}@media screen and (width>=1024px){.cases__item-title{font-size:30px}}.cases__item-body{position:relative}.cases__row{flex-direction:column;align-items:flex-start;gap:24px;padding:24px;display:flex}@media screen and (width>=640px){.cases__row{flex-direction:row;align-items:center;padding:40px}}.cases__row--before{background-color:#fef2f2}.cases__row--after{background-color:#f0fdf4}.cases__row-text{flex-direction:column;flex:1;align-items:flex-start;gap:12px;min-width:0;display:flex}.cases__badge{align-items:center;gap:4px;width:fit-content;font-size:18px;font-weight:700;display:inline-flex}.cases__badge--before{color:#dc2626;background-color:#fee2e2;border-color:#fca5a5}.cases__badge--after{color:#16a34a;background-color:#dcfce7;border-color:#86efac}.cases__text{text-align:left;white-space:pre-line;color:var(--muted-foreground);margin:0;line-height:1.625;@media screen and (width<=767px){font-size:16px}}.cases__image{aspect-ratio:4/3;object-fit:cover;border-radius:8px;flex-shrink:0;width:100%;display:block}@media screen and (width>=640px){.cases__image{max-width:320px}}.cases__arrow-wrap{z-index:10;justify-content:center;margin-block:-24px;display:flex;position:relative}.cases__arrow{background-color:var(--primary);width:48px;height:48px;color:var(--primary-foreground);border-radius:9999px;justify-content:center;align-items:center;display:flex;box-shadow:0 4px 6px #00000026}.cases__list-head{text-align:center;margin-top:80px}.cases__list-title{margin:0;font-size:24px;font-weight:700}@media screen and (width>=640px){.cases__list-title{font-size:30px}}@media screen and (width>=1024px){.cases__list-title{font-size:36px}}.cases__list-lead{margin-inline:auto;max-width:672px;color:var(--muted-foreground);margin-top:16px;line-height:1.625}.cases__grid{gap:24px;margin-top:40px;display:grid}@media screen and (width>=640px){.cases__grid{grid-template-columns:repeat(2,1fr)}}@media screen and (width>=1024px){.cases__grid{grid-template-columns:repeat(4,1fr)}}.cases__service-icon{margin-inline:auto;background-color:color-mix(in srgb, var(--primary) 10%, transparent);width:44px;height:44px;color:var(--primary);border-radius:8px;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.cta{padding-block:96px;scroll-margin-top:80px}.cta__panel{background-color:var(--primary);text-align:center;color:var(--primary-foreground);border-radius:16px;padding:40px 20px}@media screen and (width>=640px){.cta__panel{padding-inline:48px;padding:50px 20px}}.cta__title{margin:0;font-size:30px;font-weight:800}@media screen and (width>=640px){.cta__title{font-size:36px}}@media screen and (width>=1024px){.cta__title{font-size:48px}}.cta__desc{margin-inline:auto;color:color-mix(in srgb, var(--primary-foreground) 90%, transparent);margin-top:16px;font-size:16px;line-height:1.625}@media screen and (width>=640px){.cta__desc{font-size:18px}}.cta__cta-wrap{justify-content:center;margin-top:32px;display:flex}.cta__cta{background-color:var(--secondary);color:var(--primary);border-radius:20px;flex-direction:column;align-items:center;gap:6px;padding:20px;text-decoration:none;display:inline-flex;box-shadow:0 4px 12px #00000026}.cta__cta-tel{align-items:center;gap:10px;font-size:22px;font-weight:800;display:inline-flex;& svg{width:26px}}@media screen and (width>=640px){.cta__cta{padding:20px 40px}.cta__cta-tel{font-size:40px;& svg{width:40px}}}@media screen and (width>=1024px){.cta__cta-tel{font-size:50px}}.cta__cta-note{color:color-mix(in srgb, var(--primary) 75%, transparent);font-size:14px;font-weight:700;@media screen and (width>=640px){font-size:18px}}
