/* LPスキル準拠：医療系Eの信頼感を、フラット2Dイラストに合わせた親しみある色で補完 */
:root{--base:#f7f9fc;--surface:#fff;--ink:#24314f;--soft:#66728c;--main:#3f67a8;--main-dark:#263f73;--pale:#e2eaf5;--cream:#fff8e9;--accent:#e6533f;--accent-dark:#b93a2b;--accent-pale:#f8d5cf;--line:#d5deeb;--radius:18px;--shadow:0 12px 36px rgba(38,63,115,.12);--head:"Zen Maru Gothic",sans-serif;--body:"Noto Sans JP",sans-serif;--s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;--s6:96px;--s7:160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--base);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.85;overflow-x:hidden}h1,h2,h3,.lead,summary{font-family:var(--head);word-break:auto-phrase;text-wrap:balance}p,li{text-wrap:pretty}button,a{font:inherit}button{cursor:pointer}.line{display:block}.nowrap{white-space:nowrap}.skip-link{position:fixed;z-index:100;top:8px;left:8px;transform:translateY(-150%);background:var(--main-dark);color:#fff;padding:8px 16px}.skip-link:focus{transform:none}*:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.site-header{position:fixed;z-index:40;inset:0 0 auto;height:78px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,72px);background:rgba(247,251,250,.88);backdrop-filter:blur(12px);border-bottom:1px solid rgba(59,119,129,.12);transition:.35s}.site-header.is-scrolled{height:66px;box-shadow:0 6px 24px rgba(34,85,93,.08)}.brand{display:flex;align-items:center;gap:10px;color:var(--main-dark);text-decoration:none;font-size:11px;line-height:1.35}.brand strong{font-family:var(--head);font-size:16px}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--main);color:#fff;font-size:24px}.header-note{padding:5px 12px;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--main-dark);font-size:11px;font-weight:700}.screen{display:none}.screen.is-active{display:block;animation:screenIn .55s ease both}.quiz-screen.is-active,.result-screen.is-active{display:flex}@keyframes screenIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero{position:relative;min-height:100svh;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.88fr);align-items:center;gap:clamp(40px,7vw,110px);padding:120px max(24px,7vw) 74px;background:linear-gradient(112deg,var(--cream) 0 54%,var(--pale) 54% 100%);overflow:hidden}.hero:before{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(255,255,255,.4);left:-220px;top:-230px}.hero-copy{position:relative;z-index:2;max-width:650px}.target-label{display:inline-block;margin:0 0 var(--s2);padding:6px 14px;background:var(--main-dark);color:#fff;letter-spacing:.06em;font-size:12px}.en-label{margin:0 0 var(--s2);font-family:Georgia,serif;font-size:11px;letter-spacing:.24em;color:var(--main);font-weight:700}.hero h1{margin:0;font-size:clamp(42px,5.4vw,76px);line-height:1.25;letter-spacing:.02em}.hero h1 .line:last-child{color:var(--main)}.hero-lead{max-width:34em;margin:var(--s3) 0;color:var(--soft);font-size:clamp(16px,1.5vw,19px)}.hero-lead b{color:var(--accent);font-size:1.18em}.benefit-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--s3)}.benefit-chips span{padding:7px 13px;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--main-dark);font-size:12px;font-weight:700}.primary-button{position:relative;min-height:60px;padding:0 30px;border:0;border-radius:99px;background:var(--accent);color:#fff;font-weight:900;box-shadow:0 10px 0 #c94e2c,0 18px 30px rgba(238,107,66,.2);transition:.22s;overflow:hidden}.primary-button:hover{transform:translateY(-3px);box-shadow:0 13px 0 #c94e2c,0 20px 32px rgba(238,107,66,.22)}.primary-button span{margin-left:24px}.shine:after{content:"";position:absolute;inset:-30% auto -30% -25%;width:14%;background:rgba(255,255,255,.5);transform:rotate(18deg);animation:shine 4.2s 1s infinite}@keyframes shine{70%,100%{left:125%}}.cta-note{margin:15px 0 0;color:var(--soft);font-size:11px}.hero-media{position:relative;z-index:2;width:min(520px,100%);justify-self:center}.hero-image-wrap{position:relative;height:min(72vh,700px);min-height:540px;border-radius:48% 48% 24px 24px;overflow:hidden;background:#84a8b7;box-shadow:0 24px 64px rgba(34,85,93,.2)}.hero-image-wrap img{width:100%;height:100%;object-fit:cover;object-position:center 22%;animation:slowZoom 18s ease-out both}@keyframes slowZoom{from{transform:scale(1.01)}to{transform:scale(1.08)}}.glass-note{position:absolute;padding:12px 15px;border:1px solid rgba(255,255,255,.65);border-radius:15px;background:rgba(255,255,255,.78);backdrop-filter:blur(10px);color:var(--main-dark);font-size:11px;line-height:1.35}.glass-note b,.glass-note span{display:block}.glass-note b{font-family:var(--head);font-size:18px}.note-a{left:18px;top:25%}.note-b{right:18px;bottom:18%}.offer-badge{--d:142px;position:absolute;right:-38px;top:-22px;width:var(--d);height:var(--d);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:calc(var(--d)*.14);border-radius:50%;background:var(--accent);color:#fff;text-align:center;outline:1px dashed rgba(255,255,255,.65);outline-offset:-8px;box-shadow:0 14px 30px rgba(0,0,0,.14);animation:badgeFloat 5s ease-in-out infinite}.offer-badge small{font-size:10px;line-height:1.2}.offer-badge .num{display:flex;align-items:baseline;font-family:Georgia,serif;font-size:43px;line-height:1}.offer-badge .num i{font-family:var(--body);font-style:normal;font-size:18px;margin-left:3px}@keyframes badgeFloat{50%{transform:translateY(-8px) rotate(2deg)}}.scroll-cue{position:absolute;left:50%;bottom:16px;translate:-50%;display:flex;align-items:center;gap:10px;color:var(--main);font-family:Georgia,serif;font-size:9px;letter-spacing:.2em;text-decoration:none}.scroll-cue span{display:block;width:46px;height:1px;background:var(--main);transform-origin:left;animation:grow 2s infinite}@keyframes grow{50%{transform:scaleX(.35)}}
.section{padding:var(--s6) max(24px,6vw)}.section-inner{max-width:1080px;margin:auto}.narrow{max-width:760px;margin:auto}.section h2{margin:0 0 var(--s3);font-size:clamp(30px,4.2vw,52px);line-height:1.45}.section-lead{max-width:38em;margin:0 auto var(--s4);color:var(--soft);text-align:center}.empathy{background:#fff}.empathy .en-label,.empathy h2{text-align:center}.check-list{display:grid;gap:12px;margin:var(--s4) 0}.check-list p{position:relative;margin:0;padding:17px 20px 17px 56px;border-bottom:1px solid var(--line);font-weight:500}.check-list p:before{content:"✓";position:absolute;left:16px;top:14px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--pale);color:var(--main);font-weight:900}.empathy-close{text-align:center;color:var(--soft);font-size:18px}.empathy-close strong{color:var(--main-dark);background:linear-gradient(transparent 65%,#fbd4c7 65%)}.solution{background:var(--base)}.section-heading{max-width:760px}.section-heading>p:last-child{max-width:38em;color:var(--soft)}.three-values{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:var(--s5)}.three-values article{padding:34px 28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}.circle-icon{display:grid;place-items:center;width:80px;height:80px;border-radius:50%;background:var(--pale);color:var(--main-dark);font-family:Georgia,serif;font-size:22px}.three-values h3{font-size:20px}.three-values p{margin-bottom:0;color:var(--soft);font-size:14px}.center-cta{text-align:center;margin-top:var(--s5)}.center-cta p{color:var(--soft);font-size:11px}.types{background:var(--main-dark);color:#fff}.types>.section-inner>.en-label{color:#a9d4d1}.types h2{text-align:center}.type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:var(--s4)}.type-grid article{padding:28px 18px;border:1px solid rgba(255,255,255,.2);border-radius:var(--radius);background:rgba(255,255,255,.07);transition:.3s}.type-grid article:hover{transform:translateY(-6px);background:rgba(255,255,255,.12)}.type-grid b{font-family:Georgia,serif;color:#a9d4d1;font-size:12px}.type-grid h3{font-size:17px;line-height:1.55}.type-grid p{color:#c8ddda;font-size:12px}.services{background:var(--cream)}.services .en-label,.services h2{text-align:center}.banner-grid{display:grid;grid-template-columns:repeat(3,300px);justify-content:center;gap:32px}.banner-slot{position:relative;width:300px;aspect-ratio:300/250;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #8baaad;border-radius:10px;background:repeating-linear-gradient(135deg,#fff,#fff 12px,#f1f7f6 12px,#f1f7f6 24px);color:var(--main-dark);text-decoration:none;overflow:hidden;transition:.25s}.banner-slot:hover{transform:translateY(-4px);border-style:solid;box-shadow:var(--shadow)}.banner-slot:before{content:"AD";position:absolute;top:10px;right:10px;padding:1px 6px;border:1px solid var(--line);background:#fff;color:var(--soft);font-size:9px}.banner-slot b{font-family:var(--head);font-size:20px}.banner-slot small{color:var(--soft)}.banner-size{font-family:Georgia,serif;color:var(--main);font-size:11px;letter-spacing:.15em}.ad-note{text-align:center;color:var(--soft);font-size:11px;margin-top:var(--s4)}.flow{background:#fff}.flow .en-label,.flow h2{text-align:center}.flow ol{padding:0;margin:var(--s4) 0;display:grid;gap:18px}.flow li{list-style:none;display:flex;align-items:center;gap:24px;padding:22px;border-bottom:1px solid var(--line)}.flow li>b{display:grid;place-items:center;flex:0 0 66px;height:66px;border-radius:50%;background:var(--pale);color:var(--main);font-family:Georgia,serif;font-size:20px}.flow h3,.flow p{margin:0}.flow p{color:var(--soft);font-size:14px}.faq{background:var(--base)}.faq .en-label,.faq h2{text-align:center}.faq details{border-bottom:1px solid var(--line);background:#fff}.faq summary{position:relative;padding:22px 54px 22px 22px;cursor:pointer;font-size:17px;list-style:none}.faq summary:after{content:"＋";position:absolute;right:22px;color:var(--main);font-size:24px}.faq details[open] summary:after{content:"−"}.faq details p{margin:0;padding:0 22px 22px;color:var(--soft);font-size:14px}.final-cta{position:relative;min-height:620px;display:grid;grid-template-columns:1fr 1fr;align-items:center;background:var(--main-dark);overflow:hidden}.final-cta>img{width:100%;height:620px;object-fit:cover;object-position:center 20%;opacity:.86}.final-cta>div{padding:var(--s5);color:#fff}.final-cta .en-label{color:#a9d4d1}.final-cta h2{font-family:var(--head);font-size:clamp(30px,3.6vw,50px);line-height:1.5}.final-cta small{display:block;margin-top:14px;color:#c8ddda}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .75s ease,transform .75s ease}.reveal.is-visible{opacity:1;transform:none}.quiz-screen{min-height:100vh;padding:115px 22px 70px;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--pale),var(--cream))}.quiz-shell{width:min(760px,100%)}.progress-meta{display:flex;justify-content:space-between;color:var(--main-dark);font-size:13px;font-weight:700}.progress-track{height:8px;margin:8px 0 28px;border-radius:99px;background:#d4e6e4;overflow:hidden}.progress-track span{display:block;width:11%;height:100%;background:var(--main);transition:width .4s}.question-card{padding:clamp(28px,5vw,54px);background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.question-card.is-changing{animation:qIn .4s both}@keyframes qIn{from{opacity:.25;transform:translateX(20px)}to{opacity:1;transform:none}}.question-number,.result-kicker{margin:0;color:var(--main);font-family:Georgia,serif;font-size:11px;font-weight:700;letter-spacing:.18em}.question-card h2{font-size:clamp(23px,3.3vw,34px);line-height:1.55;margin:10px 0 4px}.question-hint{margin:0 0 25px;color:var(--soft);font-size:12px}.answer-list{display:grid;gap:12px}.answer-button{position:relative;min-height:62px;width:100%;padding:14px 52px 14px 20px;border:1.5px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:500;text-align:left;transition:.2s}.answer-button:after{content:"→";position:absolute;right:18px;color:var(--main)}.answer-button:hover,.answer-button.is-selected{border-color:var(--main);background:var(--pale);transform:translateX(4px)}.answer-button.is-selected:before{content:"✓";display:inline-grid;place-items:center;width:23px;height:23px;margin-right:9px;border-radius:50%;background:var(--main);color:#fff}.back-button,.restart-button{display:block;min-height:44px;margin:22px auto 0;border:0;background:transparent;color:var(--main-dark);text-decoration:underline;text-underline-offset:5px}.back-button[hidden]{display:none}.result-screen{min-height:100vh;padding:120px 22px 80px;background:linear-gradient(155deg,var(--cream),var(--pale));justify-content:center}.result-shell{width:min(920px,100%);text-align:center}.result-label{margin:0;color:var(--soft)}.result-heading{display:flex;align-items:center;justify-content:center;gap:20px;margin:15px 0;text-align:left}.result-icon{display:grid;place-items:center;flex:0 0 76px;height:76px;border-radius:24px;background:var(--pale);font-size:38px}.result-heading h1{margin:0;color:var(--main-dark);font-size:clamp(29px,4vw,48px);line-height:1.3}.result-heading p{margin:4px 0;color:var(--main);font-weight:700}.result-description{max-width:700px;margin:25px auto 35px;color:var(--soft)}.service-card{max-width:640px;margin:0 auto;padding:28px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);text-align:left;box-shadow:var(--shadow)}.service-card.featured{border:2px solid var(--main);margin-bottom:28px}.service-badge{display:inline-block;padding:4px 11px;border-radius:99px;background:var(--pale);color:var(--main);font-size:11px;font-weight:700}.service-card h2{margin:10px 0 4px;font-size:clamp(22px,3vw,30px)}.service-card p{color:var(--soft)}.service-banner{width:300px;max-width:100%;aspect-ratio:300/250;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:20px auto;border:2px dashed #8baaad;border-radius:10px;background:repeating-linear-gradient(135deg,#fff,#fff 12px,#f1f7f6 12px,#f1f7f6 24px);text-align:center}.service-banner b{font-size:18px}.service-banner span{font-family:Georgia,serif;font-size:10px;letter-spacing:.14em}.service-cta{display:flex;align-items:center;justify-content:center;min-height:54px;border-radius:99px;background:var(--accent);color:#fff;text-decoration:none;font-weight:900}.service-note{font-size:11px}.result-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:28px 0}.result-detail-grid article{text-align:left;padding:28px;background:rgba(255,255,255,.8);border:1px solid var(--line);border-radius:var(--radius)}.detail-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--pale);color:var(--main)}.result-detail-grid h2{font-size:18px}.result-detail-grid p,.result-detail-grid li{color:var(--soft);font-size:14px}.next-step{padding:34px;margin:26px 0;background:var(--main-dark);color:#fff;border-radius:var(--radius);text-align:left}.next-step>p{margin:0;color:#a9d4d1;font-size:10px;letter-spacing:.2em}.next-step ol{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:0;counter-reset:steps}.next-step li{list-style:none;counter-increment:steps;font-size:13px;color:#e1efed}.next-step li:before{content:counter(steps);display:grid;place-items:center;width:30px;height:30px;margin-bottom:8px;border:1px solid #a9d4d1;border-radius:50%}.compare-section{margin-top:50px}.compare-section>p{font-size:12px;color:var(--main);font-weight:700}.result-disclaimer{color:var(--soft);font-size:11px}.sticky-cta{display:none;position:fixed;z-index:50;left:10px;right:10px;bottom:10px;transform:translateY(130%);transition:.35s}.sticky-cta.is-visible{transform:none}.sticky-cta button{width:100%;min-height:56px;border:0;border-radius:99px;background:var(--accent);color:#fff;font-weight:900;box-shadow:0 8px 26px rgba(32,58,62,.28)}.sticky-cta span{margin-left:18px}footer{text-align:center;padding:48px 20px;background:#183f45;color:#fff}footer p{font-family:var(--head);font-weight:700;margin:0}footer small{color:#b9d0cd}footer nav{margin-top:18px}footer a{margin:0 9px;color:#b9d0cd;font-size:11px}
@media(max-width:980px){.hero{grid-template-columns:1fr 1fr;padding-left:5vw;padding-right:5vw}.type-grid{grid-template-columns:repeat(3,1fr)}.banner-grid{grid-template-columns:repeat(2,300px)}.offer-badge{right:-10px}.final-cta>div{padding:40px}}
@media(max-width:760px){body{padding-bottom:72px}.site-header{height:68px}.hero{min-height:auto;grid-template-columns:1fr;padding:104px 20px 90px;background:linear-gradient(160deg,var(--cream) 0 58%,var(--pale) 58%)}.hero-copy{text-align:center}.target-label{font-size:10px}.hero h1{font-size:42px}.hero-lead{margin-left:auto;margin-right:auto}.benefit-chips{justify-content:center}.hero-media{width:min(430px,95%)}.hero-image-wrap{height:520px;min-height:0}.offer-badge{--d:124px;right:-8px;top:-20px}.scroll-cue{display:none}.section{padding:72px 20px}.three-values{grid-template-columns:1fr}.type-grid{grid-template-columns:1fr 1fr}.banner-grid{grid-template-columns:300px}.final-cta{grid-template-columns:1fr}.final-cta>img{height:430px}.final-cta>div{text-align:center}.result-detail-grid{grid-template-columns:1fr}.next-step ol{grid-template-columns:1fr}.sticky-cta{display:block}.service-card{padding:22px}}
@media(max-width:420px){.header-note{font-size:9px;padding:4px 8px}.brand strong{font-size:14px}.brand-mark{width:34px;height:34px}.hero h1{font-size:37px}.hero-image-wrap{height:470px}.glass-note{padding:9px 11px}.offer-badge{--d:112px}.type-grid{grid-template-columns:1fr}.primary-button{width:100%;padding:0 18px}.result-heading{align-items:flex-start}.result-icon{flex:0 0 56px;height:56px;font-size:28px}.banner-slot{max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.shine:after,.hero-image-wrap img,.offer-badge,.scroll-cue span{animation:none!important}.reveal{opacity:1;transform:none;transition:none}.screen.is-active,.question-card.is-changing{animation:none}.primary-button,.banner-slot,.type-grid article{transition:none}}

/* 2026-07-17更新版LPスキル：ヒーローは比率維持・トリミングなし・角丸なし */
.hero{grid-template-columns:minmax(0,46fr) minmax(420px,54fr);gap:clamp(24px,3vw,52px);padding:110px 0 60px max(24px,6vw);background:linear-gradient(112deg,var(--cream) 0 46%,var(--pale) 46% 100%)}
.hero-media{width:100%;justify-self:stretch}
.hero-image-wrap{height:min(78vh,740px);min-height:560px;border-radius:0;box-shadow:none;background:linear-gradient(180deg,#9bb9c5 0%,#83a7b6 100%)}
.hero-image-wrap img{object-fit:contain;object-position:center center;animation:heroEnter .8s ease both}
.hero .offer-badge{right:18px;top:18px}
@keyframes heroEnter{from{transform:translateY(16px)}to{transform:none}}
@media(max-width:980px){.hero{grid-template-columns:minmax(0,46fr) minmax(380px,54fr);padding-right:0}.hero-image-wrap{height:min(72vh,680px)}}
@media(max-width:760px){.hero{grid-template-columns:1fr;padding:104px 0 84px;background:linear-gradient(180deg,var(--cream) 0 48%,var(--pale) 48%)}.hero-copy{padding:0 20px}.hero-media{width:100%}.hero-image-wrap{width:100%;height:auto;min-height:0;background:#84a8b7}.hero-image-wrap img{display:block;width:100%;height:auto;object-fit:contain}.hero .offer-badge{right:12px;top:12px}.note-a{left:18px}.note-b{right:18px}}
@media(prefers-reduced-motion:reduce){.hero-image-wrap img{animation:none!important}}

/* 2026-07-17 モバイルFV合成構図・生成アセット適用 */
.hero-copy>*{animation:fvRise .65s cubic-bezier(.22,1,.36,1) both}.hero-copy>.target-label{animation-delay:.05s}.hero-copy>.en-label{animation-delay:.12s}.hero-copy>h1{animation-delay:.2s}.hero-copy>.hero-lead{animation-delay:.3s}.hero-copy>.benefit-chips{animation-delay:.4s}.hero-copy>.primary-button{animation-delay:.5s}.hero-copy>.cta-note{animation-delay:.58s}@keyframes fvRise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.circle-icon{display:block;width:88px;height:88px;border-radius:0;overflow:visible;background:transparent}.circle-icon img{display:block;width:100%;height:100%;object-fit:contain}.types-visual{margin:0 auto 42px;max-width:980px;border-radius:24px;overflow:hidden;background:#eef2f8}.types-visual img{display:block;width:100%;height:auto}.final-cta{min-height:560px;display:grid;grid-template-columns:1fr;place-items:center;text-align:center;background:radial-gradient(circle at 20% 20%,rgba(226,234,245,.18),transparent 30%),radial-gradient(circle at 80% 80%,rgba(238,107,66,.12),transparent 28%),var(--main-dark)}.final-cta>div{width:min(760px,100%)}
@media(max-width:760px){.hero{position:relative;display:block;min-height:920px;padding:96px 0 34px;background:linear-gradient(180deg,var(--cream),var(--pale));isolation:isolate}.hero:after{content:"";position:absolute;z-index:1;inset:68px 0 auto;height:500px;background:linear-gradient(90deg,rgba(226,236,244,.9) 0%,rgba(226,236,244,.72) 42%,rgba(226,236,244,.08) 67%,transparent 82%);pointer-events:none}.hero-media{position:absolute;z-index:0;inset:68px 0 auto;width:100%}.hero-image-wrap{width:100%;height:auto;background:linear-gradient(180deg,var(--cream),var(--pale))}.hero-image-wrap img{width:100%;height:auto;object-fit:contain}.hero-copy{position:relative;z-index:3;display:flex;flex-direction:column;min-height:780px;padding:0 20px;text-align:left}.target-label{align-self:flex-start}.hero h1{max-width:5.8em;font-size:clamp(35px,10.4vw,43px);line-height:1.3;text-shadow:0 2px 14px rgba(226,236,244,.95)}.hero-lead{max-width:48%;margin-left:0;margin-right:0;color:var(--ink);font-size:14px;text-shadow:0 1px 8px rgba(226,236,244,.95)}.benefit-chips{margin-top:auto;justify-content:center;padding:12px;border-radius:18px;background:rgba(255,255,255,.82);backdrop-filter:blur(10px);box-shadow:0 8px 22px rgba(34,85,93,.1)}.hero .primary-button{align-self:stretch}.hero .cta-note{text-align:center}.hero .offer-badge{z-index:4;right:10px;top:12px}.types-visual{margin-left:-20px;margin-right:-20px;border-radius:0}.final-cta{min-height:520px}.final-cta>div{padding:64px 20px}}
@media(prefers-reduced-motion:reduce){.hero-copy>*{animation:none!important}}

@media(min-width:761px){.hero-image-wrap img{object-fit:cover;object-position:68% center}}

/* 公開準備：広告表記・法定情報ページ導線 */
.ad-disclosure{max-width:760px;margin:24px auto 34px;padding:16px 20px;border:1px solid #e8c6b8;border-radius:14px;background:#fff8f2;text-align:left}.ad-disclosure b{display:inline-block;margin-bottom:4px;color:#a84225;font-size:13px}.ad-disclosure p{margin:0;color:#5f6565;font-size:12px;line-height:1.8}footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px}footer a{margin:0}.copyright{display:block;margin-top:20px;font-size:10px}

/* サービス紹介カード（提携準備中の表示） */
.banner-card{display:flex;flex-direction:column;align-items:center;gap:12px;width:300px;max-width:100%}
.banner-slot.is-pending{cursor:default}
.banner-slot.is-pending:hover{transform:none;border-style:dashed;box-shadow:none}
.pending-badge{padding:2px 10px;border-radius:99px;background:var(--cream);color:#a06a2c;font-size:11px;font-weight:700}
.banner-card .service-note{margin:0;color:var(--soft);font-size:12.5px;line-height:1.8;text-align:center}
.service-text-link{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding:10px 18px;border:1px solid var(--main);border-radius:99px;color:var(--main-dark);text-decoration:none;font-size:13px;font-weight:700}
.service-text-link:hover{background:var(--main);color:#fff}

/* コラムセクション */
.column-list{list-style:none;margin:34px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.column-list a{display:grid;grid-template-columns:42% 1fr;height:100%;border:1px solid var(--line);border-radius:18px;background:#fff;color:var(--main-dark);text-decoration:none;overflow:hidden;box-shadow:var(--shadow);transition:transform .25s ease,border-color .25s ease}
.column-list a:hover{transform:translateY(-4px);border-color:var(--main)}
.column-list img{width:100%;height:100%;min-height:180px;object-fit:cover}
.column-list span{display:flex;flex-direction:column;justify-content:center;padding:20px}
.column-list small{color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.08em}
.column-list b{margin-top:7px;font-family:var(--head);font-size:17px;line-height:1.55}
.column-list em{margin-top:7px;color:var(--soft);font-size:12px;font-style:normal;line-height:1.7}
.column-more{margin-top:18px;text-align:center}
.column-more a{color:var(--main-dark);font-weight:700}
@media(max-width:760px){.column-list{grid-template-columns:1fr}.column-list a{grid-template-columns:38% 1fr}.column-list img{min-height:150px}.column-list span{padding:16px}.column-list b{font-size:15px}}

/* 2026-07-21：角版を廃止し、薬局空間と一体化した全面ヒーローへ */
.hero{position:relative;display:flex;min-height:100svh;align-items:center;padding:118px max(24px,6vw) 88px;isolation:isolate;background-color:var(--pale);background-image:linear-gradient(90deg,rgba(226,236,244,.98) 0%,rgba(226,236,244,.94) 30%,rgba(226,236,244,.62) 46%,rgba(226,236,244,.08) 62%,transparent 76%),url("assets/hero-pharmacy-fullbleed-v1.jpg");background-repeat:no-repeat;background-size:cover;background-position:center center}.hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.08),transparent 50%,rgba(32,58,62,.04));pointer-events:none}.hero:after{display:none}.hero-copy{width:min(650px,52vw);max-width:650px}.hero-media{position:absolute;z-index:-2;inset:0;width:100%;height:100%;pointer-events:none}.hero-image-wrap{display:none}.hero>.offer-badge{position:absolute;z-index:4;right:clamp(18px,4vw,64px);top:clamp(96px,10vw,132px)}

.pharmacy-world{background:linear-gradient(180deg,#f7f9fc,#edf2f8)}.pharmacy-world .en-label,.pharmacy-world h2{text-align:center}.pharmacy-world .section-lead{max-width:720px;margin:16px auto 42px}.scene-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.scene-card{position:relative;margin:0;overflow:hidden;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.scene-card img{display:block;width:100%;height:auto;aspect-ratio:1600/893;object-fit:cover;transition:transform .7s cubic-bezier(.22,1,.36,1)}.scene-card figcaption{position:relative;padding:28px 30px 30px;color:var(--ink);text-align:left}.scene-number{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:26px;margin-bottom:10px;border-radius:99px;background:var(--pale);color:var(--main);font-family:Georgia,serif;font-size:11px;font-weight:700;letter-spacing:.12em}.scene-card h3{margin:0 0 10px;color:var(--main-dark);font-size:clamp(21px,2.2vw,27px)}.scene-card p{margin:0;color:var(--soft);font-size:14px}.scene-card ul{display:grid;gap:7px;margin:18px 0 0;padding:16px 0 0;border-top:1px solid var(--line)}.scene-card li{position:relative;list-style:none;padding-left:22px;color:var(--ink);font-size:13px}.scene-card li:before{content:"✓";position:absolute;left:0;color:var(--main);font-weight:900}.scene-card:hover img{transform:scale(1.035)}

/* Blue-led UI palette: orange remains the single action accent. */
.types>.section-inner>.en-label,.type-grid b,.final-cta .en-label,.next-step>p{color:#b8c9e8}.type-grid p,.final-cta small,.next-step li{color:#d6e0f0}.next-step li:before{border-color:#b8c9e8}.progress-track{background:#dbe3ef}.sticky-cta button{box-shadow:0 8px 26px rgba(36,49,79,.28)}footer{background:#1f315c}footer small,footer a{color:#cbd5e8}

@media(max-width:980px){.hero-copy{width:min(620px,58vw)}}
@media(max-width:760px){.hero{display:flex;min-height:920px;padding:96px 20px 34px;align-items:stretch;background-image:linear-gradient(90deg,rgba(226,236,244,.96) 0%,rgba(226,236,244,.83) 38%,rgba(226,236,244,.16) 66%,transparent 82%),linear-gradient(180deg,transparent 0 58%,rgba(226,236,244,.94) 76%,var(--pale) 100%),url("assets/hero-pharmacy-fullbleed-v1.jpg");background-size:auto 100%;background-position:72% center}.hero-copy{width:100%;max-width:none;min-height:790px;padding:0;display:flex;flex-direction:column}.hero>.offer-badge{right:10px;top:84px}.hero-media{inset:0}.scene-grid{grid-template-columns:1fr;gap:18px}.scene-card figcaption{padding:23px 22px 25px}.scene-card h3{font-size:22px}.pharmacy-world .section-lead{text-align:left}}
@media(prefers-reduced-motion:reduce){.scene-card img{transition:none}.scene-card:hover img{transform:none}}

/* 2026-07-27：2Dヒーローの人物と重ならないよう、見出しと人物の間の余白へ配置 */
@media(min-width:981px){.hero>.offer-badge{right:24%}}
@media(min-width:761px) and (max-width:980px){.hero>.offer-badge{right:22%}}
@media(max-width:760px){.hero{background-image:linear-gradient(90deg,rgba(226,236,244,.96) 0%,rgba(226,236,244,.82) 42%,rgba(226,236,244,.08) 74%,transparent 88%),linear-gradient(180deg,transparent 0 58%,rgba(226,236,244,.94) 78%,var(--pale) 100%),url("assets/hero-composite-v3.jpg");background-size:cover;background-position:38% center}.hero>.offer-badge{right:18px;top:520px}}

/* 2026-07-28: hero-hair accent, safe badge placement, and Japanese line-wrap polish. */
p,li{word-break:auto-phrase;line-break:strict;text-wrap:pretty}
.three-values p,.type-grid p,.scene-card p,.scene-card li,.service-note,.column-list p,.flow p,.faq p{text-wrap:balance}
.primary-button{box-shadow:0 10px 0 var(--accent-dark),0 18px 30px rgba(230,83,63,.2)}
.primary-button:hover{box-shadow:0 13px 0 var(--accent-dark),0 20px 32px rgba(230,83,63,.22)}
.empathy-close strong{background:linear-gradient(transparent 65%,var(--accent-pale) 65%)}
@media(min-width:981px){.hero>.offer-badge{right:clamp(22px,3vw,48px);top:152px}}
@media(min-width:761px) and (max-width:980px){.hero>.offer-badge{right:18px;top:150px;--d:126px}}
@media(max-width:760px){.hero>.offer-badge{right:16px;top:570px;--d:108px}}
