@charset "UTF-8";
/* 紫福院さんちのサイトビルダー デザイン「保険代理店・安心の相談窓口」 */
.sf-site.sf-theme-insurance{background:var(--sf-bg);overflow-x:clip;--sf-intro:#f5f8fc}
.sf-site.sf-theme-insurance .sf-tone-plain{background:transparent}
.sf-site.sf-theme-insurance::before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(50vmax 30vmax at 100% 0,#1f5a9a12,transparent 70%)}
.sf-site.sf-theme-insurance>*:not(.sf-skip):not(.sf-header){position:relative;z-index:1}
.sf-site.sf-theme-insurance h1,.sf-site.sf-theme-insurance h2,.sf-site.sf-theme-insurance h3,.sf-site.sf-theme-insurance .sf-brand,.sf-site.sf-theme-insurance .sf-stat strong,.sf-site.sf-theme-insurance .sf-number,.sf-site.sf-theme-insurance .sf-marquee i{font-family:var(--sf-font-head)}
.sf-site.sf-theme-insurance .sf-marquee i{font-style:normal}
.sf-site.sf-theme-insurance h1{font-weight:700;line-height:1.45}
.sf-site.sf-theme-insurance h2{font-size:clamp(28px,3.8vw,52px);line-height:1.3}
.sf-site.sf-theme-insurance .sf-stat strong{color:var(--sf-accent)}
.sf-site.sf-theme-insurance .sf-number{border-color:var(--sf-accent);color:var(--sf-accent)}
.sf-site.sf-theme-insurance .sf-header-floating .sf-header-inner{background:color-mix(in srgb,var(--sf-bg) 84%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.sf-site.sf-theme-insurance .sf-tone-soft{background:color-mix(in srgb,var(--sf-accent) 7%,var(--sf-bg))}
.sf-site.sf-theme-insurance .sf-footer{background:color-mix(in srgb,var(--sf-ink) 94%,var(--sf-accent));color:var(--sf-bg)}
.sf-site.sf-theme-insurance .sf-footer a{color:inherit}
.sf-site.sf-theme-insurance .sf-card,.sf-site.sf-theme-insurance .sf-stat,.sf-site.sf-theme-insurance .sf-faq-item,.sf-site.sf-theme-insurance .sf-grid figure,.sf-site.sf-theme-insurance .sf-tile,.sf-site.sf-theme-insurance .sf-video-card,.sf-site.sf-theme-insurance .sf-member-card{background:#fff;border:1px solid #1f5a9a1f;border-radius:var(--sf-radius);box-shadow:0 14px 34px -22px #0004}
.sf-site.sf-theme-insurance .sf-grid>figure>figcaption{padding:14px 18px 18px}
.sf-site.sf-theme-insurance .sf-card,.sf-site.sf-theme-insurance .sf-stat{padding:clamp(22px,2.4vw,32px)}
.sf-site.sf-theme-insurance .sf-v-list .sf-card{padding:28px clamp(20px,3vw,36px)}
.sf-site.sf-theme-insurance .sf-btn{border-radius:var(--sf-radius);border:0;background:var(--sf-accent);color:#fff!important;box-shadow:0 6px 0 color-mix(in srgb,var(--sf-accent) 65%,#000);transition:transform .15s,box-shadow .15s}.sf-site.sf-theme-insurance .sf-btn:active{transform:translateY(5px);box-shadow:0 1px 0 color-mix(in srgb,var(--sf-accent) 65%,#000)}.sf-site.sf-theme-insurance .sf-btn-outline{background:#fff;color:var(--sf-accent)!important;box-shadow:inset 0 0 0 2px var(--sf-accent),0 6px 0 color-mix(in srgb,var(--sf-accent) 30%,#fff)}

.sf-site.sf-theme-insurance .sf-eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--sf-accent);letter-spacing:.35em}.sf-site.sf-theme-insurance .sf-eyebrow::before{content:"";width:36px;height:1px;background:currentColor}
.sf-site.sf-theme-insurance .sf-art{border-radius:0;aspect-ratio:4/5;width:min(100%,360px)!important;margin-inline:auto;clip-path:polygon(50% 0,96% 14%,92% 60%,50% 100%,8% 60%,4% 14%);background:linear-gradient(135deg,transparent 44%,#fff 44% 52%,transparent 52%) 42% 52%/40% 26% no-repeat,linear-gradient(45deg,transparent 44%,#fff 44% 56%,transparent 56%) 30% 58%/20% 16% no-repeat,linear-gradient(160deg,#4a8ad0,#1f5a9a)}
.sf-site.sf-theme-insurance .sf-art i{display:none}
.sf-site.sf-theme-insurance .sf-hero .sf-visual .sf-art{width:min(100%,540px);margin-inline:auto}
.sf-site.sf-theme-insurance{--band-icon:"✓"}
.sf-site.sf-theme-insurance .sf-art span{display:none}
.sf-site.sf-theme-insurance .sf-banner{padding-block:16px!important;background:var(--band-bg,var(--sf-accent))!important;color:var(--band-ink,#fff)!important}
.sf-site.sf-theme-insurance .sf-banner .sf-wrap{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap}
.sf-site.sf-theme-insurance .sf-banner h2{font-size:clamp(14px,1.6vw,19px)!important;margin:0!important;font-weight:700;letter-spacing:.04em;color:inherit!important;line-height:1.6;text-align:center;background:none!important;text-shadow:none!important;display:block!important;padding:0!important;border:0!important;box-shadow:none!important}
.sf-site.sf-theme-insurance .sf-banner h2::before{content:var(--band-icon,"●");display:inline-grid;place-items:center;width:1.9em;height:1.9em;margin-right:.6em;border-radius:50%;background:var(--band-ink,#fff);color:var(--band-bg,var(--sf-accent));font-size:.9em;vertical-align:.05em}
.sf-site.sf-theme-insurance .sf-banner h2::after{display:none!important}

.sf-site.sf-theme-insurance .sf-features .sf-card .sf-number{display:none}
.sf-site.sf-theme-insurance .sf-features .sf-card h3{display:flex;gap:12px;align-items:flex-start}
.sf-site.sf-theme-insurance .sf-features .sf-card h3::before{content:"✓";flex:none;display:grid;place-items:center;width:1.7em;height:1.7em;border-radius:50%;background:var(--sf-accent);color:#fff;font-size:.8em;font-weight:900;margin-top:.1em}

.sf-site.sf-theme-insurance .sf-steps .sf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;gap:34px!important;counter-reset:fl}
.sf-site.sf-theme-insurance .sf-steps .sf-card{position:relative;text-align:center;padding-top:74px!important;overflow:visible!important}
.sf-site.sf-theme-insurance .sf-steps .sf-card .sf-number{display:none}
.sf-site.sf-theme-insurance .sf-steps .sf-card::before{counter-increment:fl;content:"STEP " counter(fl);position:absolute;top:20px;left:50%;transform:translateX(-50%);padding:6px 14px;border-radius:999px;background:var(--sf-accent);color:#fff;font:700 12px/1 var(--sf-font);letter-spacing:.14em;white-space:nowrap}
.sf-site.sf-theme-insurance .sf-steps .sf-card:not(:last-child)::after{content:"";position:absolute;right:-27px;top:50%;width:0;height:0;margin-top:-11px;border:11px solid transparent;border-left:14px solid var(--sf-accent);z-index:2}
@media(max-width:700px){.sf-site.sf-theme-insurance .sf-steps .sf-card:not(:last-child)::after{right:50%;top:auto;bottom:-29px;margin:0 -11px 0 0;border:11px solid transparent;border-top:14px solid var(--sf-accent)}}

.sf-site.sf-theme-insurance .sf-pricing .sf-grid{align-items:center}
.sf-site.sf-theme-insurance .sf-pricing .sf-card{text-align:center;position:relative;overflow:visible!important}
.sf-site.sf-theme-insurance .sf-pricing .sf-card .sf-meta{display:block;font-family:var(--sf-font-head);font-size:clamp(22px,2.4vw,30px);color:var(--sf-accent);font-weight:700;margin:10px 0 14px;order:2}
.sf-site.sf-theme-insurance .sf-pricing .sf-grid>.sf-card:nth-child(2){transform:scale(1.05);box-shadow:0 0 0 3px var(--sf-accent),0 24px 50px -24px #0006!important;z-index:1}
.sf-site.sf-theme-insurance .sf-pricing .sf-grid>.sf-card:nth-child(2)::before{content:"人気 No.1";position:absolute;top:-14px;left:50%;transform:translateX(-50%);padding:5px 16px;border-radius:999px;background:var(--sf-accent);color:#fff;font:700 12px/1.4 var(--sf-font);letter-spacing:.1em;white-space:nowrap}
@media(max-width:700px){.sf-site.sf-theme-insurance .sf-pricing .sf-grid>.sf-card:nth-child(2){transform:none}}

.sf-site.sf-theme-insurance .sf-testimonials .sf-grid{grid-template-columns:minmax(0,1fr)!important;max-width:820px;gap:26px!important;margin-inline:auto}
.sf-site.sf-theme-insurance .sf-testimonials .sf-card{position:relative;border-radius:26px!important;margin-left:76px;overflow:visible!important}
.sf-site.sf-theme-insurance .sf-testimonials .sf-grid>.sf-card:nth-child(even){margin-left:0;margin-right:76px}
.sf-site.sf-theme-insurance .sf-testimonials .sf-card::before{content:"";position:absolute;left:-76px;top:6px;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 50% 38%,#fff 0 16%,transparent 17%),radial-gradient(ellipse 50% 32% at 50% 96%,#fff 0 70%,transparent 72%),var(--sf-accent2);box-shadow:0 6px 12px -6px #0006}
.sf-site.sf-theme-insurance .sf-testimonials .sf-grid>.sf-card:nth-child(even)::before{left:auto;right:-76px;background:radial-gradient(circle at 50% 38%,#fff 0 16%,transparent 17%),radial-gradient(ellipse 50% 32% at 50% 96%,#fff 0 70%,transparent 72%),var(--sf-accent)}
.sf-site.sf-theme-insurance .sf-testimonials .sf-card::after{content:"";position:absolute;left:-12px;top:24px;border:10px solid transparent;border-right:14px solid var(--chat-bg,#fff);border-left:0}
.sf-site.sf-theme-insurance .sf-testimonials .sf-grid>.sf-card:nth-child(even)::after{left:auto;right:-12px;border-right:0;border-left:14px solid var(--chat-bg,#fff)}
.sf-site.sf-theme-insurance .sf-testimonials .sf-quote{display:none}

.sf-site.sf-theme-insurance .sf-section:not(.sf-hero):not(.sf-banner)>.sf-wrap>h2{padding-left:18px;border-left:8px solid var(--sf-accent)}
.sf-site.sf-theme-insurance .sf-section:not(.sf-hero):not(.sf-banner)>.sf-wrap>h2::after{display:none!important}
.sf-site.sf-theme-insurance .sf-hero:not(.sf-v-center):not(.sf-v-stacked):not(.sf-v-minimal) h1{font-size:clamp(32px,4.4vw,74px);text-wrap:balance}
.sf-site.sf-theme-insurance :is(.sf-hero,.sf-videohero).sf-v-center h1{font-size:clamp(36px,5.2vw,86px);text-wrap:balance}
@media (max-width:700px){.sf-site.sf-theme-insurance h1,.sf-site.sf-theme-insurance .sf-hero h1{font-size:clamp(30px,9vw,48px)!important;letter-spacing:.02em}.sf-site.sf-theme-insurance h2{font-size:clamp(24px,7vw,36px)}}
