.ref-wrap{--ref-navy: #2c4a6e;--ref-navy-light: #3d6491;--ref-gold: #7eafc0;--ref-gold-light: #b8d4e0;--ref-cream: #f4f8fa;--ref-border: #d8e8f0;--ref-text: #2c2c2c;--ref-text-light: #555;font-family:Noto Sans JP,sans-serif;color:var(--ref-text);line-height:1.9}.ref-wrap *{box-sizing:border-box}.ref-hero{background-image:url(/hero/for_medical_stuff.webp);background-size:cover;background-position:center;background-color:var(--ref-navy);color:#fff;padding:72px 40px;text-align:center;position:relative;overflow:hidden}@media(max-width:768px){.ref-hero{background-image:url(/hero/for_medical_stuff.webp)}}.ref-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 55% 85% at 50% 50%,#0a1c328a,#0a1c3238 60%,#0a1c3205);pointer-events:none}.ref-hero-en{font-family:Cormorant Garamond,serif;font-size:.85rem;letter-spacing:.3em;opacity:.95;margin-bottom:12px;position:relative;text-shadow:0 1px 8px rgba(0,0,0,.7),0 0 20px rgba(0,0,0,.4)}.ref-hero h1{font-family:"Noto Serif JP",serif;font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:700;letter-spacing:.1em;margin-bottom:16px;position:relative;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.8),0 1px 5px rgba(0,0,0,.65)}.ref-hero-line{width:60px;height:2px;background:var(--ref-gold);margin:20px auto;position:relative}.ref-hero-lead{font-size:.95rem;opacity:.95;position:relative;line-height:2;max-width:560px;margin:0 auto;text-shadow:0 1px 10px rgba(0,0,0,.75),0 0 16px rgba(0,0,0,.4)}.ref-hero-badge{display:inline-block;border:1px solid var(--ref-gold);color:var(--ref-gold);padding:6px 24px;font-size:.82rem;letter-spacing:.1em;margin-top:20px;position:relative;font-family:Cormorant Garamond,serif}.ref-section{padding:64px 32px;border-bottom:1px solid var(--ref-border);max-width:860px;margin:0 auto}.ref-section:last-of-type{border-bottom:none}.ref-section-en{font-family:Cormorant Garamond,serif;font-size:.78rem;letter-spacing:.25em;color:var(--ref-gold);margin-bottom:6px;display:block}.ref-section-title{font-family:"Noto Serif JP",serif;font-size:1.25rem;font-weight:700;color:var(--ref-navy);border-left:4px solid var(--ref-gold);padding-left:14px;margin-bottom:28px;line-height:1.5}.ref-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.ref-box{background:var(--ref-cream);border:1px solid var(--ref-border);padding:28px 24px;border-top:3px solid var(--ref-navy)}.ref-box h3{font-family:"Noto Serif JP",serif;font-size:1rem;font-weight:700;color:var(--ref-navy);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--ref-border)}.ref-box ul{list-style:none;padding:0}.ref-box ul li{font-size:.9rem;color:var(--ref-text-light);padding:7px 0 7px 18px;border-bottom:1px dotted var(--ref-border);position:relative;line-height:1.6}.ref-box ul li:last-child{border-bottom:none}.ref-box ul li:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:6px;height:6px;background:var(--ref-gold);border-radius:50%}.ref-box-note{font-size:.82rem;color:var(--ref-text-light);margin-top:14px;padding-top:12px;border-top:1px dotted var(--ref-border);line-height:1.8}.ref-card{background:#fff;border:1px solid var(--ref-border);border-top:3px solid var(--ref-gold);padding:24px 20px;transition:box-shadow .2s}.ref-card:hover{box-shadow:0 4px 20px #2c4a6e1a}.ref-card h3{font-family:"Noto Serif JP",serif;font-size:.95rem;font-weight:700;color:var(--ref-navy);margin-bottom:12px}.ref-card p{font-size:.87rem;color:var(--ref-text-light);line-height:1.85}.ref-card--wide{grid-column:1 / -1;border-top-color:var(--ref-navy)}.ref-card-label{font-family:Cormorant Garamond,serif;font-size:.78rem;letter-spacing:.2em;color:var(--ref-gold);margin-bottom:6px}.ref-nipt-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:14px}.ref-nipt-item{background:var(--ref-cream);padding:14px 16px;font-size:.83rem;color:var(--ref-text-light);line-height:1.8;border-left:3px solid var(--ref-gold)}.ref-text{font-size:.93rem;color:var(--ref-text-light);line-height:2;margin-bottom:24px}.ref-lead-box{background:var(--ref-cream);border-left:3px solid var(--ref-gold);padding:16px 20px;font-size:.9rem;color:var(--ref-text-light);line-height:2;margin-bottom:24px}.ref-zoomable{width:100%;height:auto;display:block;border:1px solid var(--ref-border);cursor:zoom-in}.ref-zoom-hint{font-size:.78rem;color:#aaa;text-align:right;margin-top:4px}.ref-lightbox{display:none;position:fixed;inset:0;background:#000000e0;z-index:9999;align-items:center;justify-content:center;cursor:zoom-out;padding:16px}.ref-lightbox.is-open{display:flex}.ref-lightbox img{max-width:95vw;max-height:90vh;width:auto;height:auto;display:block;box-shadow:0 8px 40px #0009}.ref-pub-box{background:var(--ref-cream);border:1px solid var(--ref-border);border-left:3px solid var(--ref-navy);padding:20px 24px;font-size:.85rem;color:var(--ref-text-light);line-height:1.85;margin-bottom:28px;display:flex;flex-direction:column;gap:6px}.ref-pub-label{font-family:Cormorant Garamond,serif;font-size:.75rem;letter-spacing:.15em;color:var(--ref-gold)}.ref-pub-title{font-weight:700;color:var(--ref-text);font-size:.9rem;line-height:1.6}.ref-pub-box a{color:var(--ref-navy);text-decoration:underline}.ref-video-wrap{margin:24px 0}.ref-video-wrap video{width:100%;border-radius:4px;border:1px solid var(--ref-border);display:block;background:#000}.ref-video-caption{font-size:.8rem;color:var(--ref-text-light);text-align:center;margin-top:8px}.ref-image-group{margin-bottom:24px}.ref-image-group-label{font-family:"Noto Serif JP",serif;font-size:.82rem;font-weight:700;color:var(--ref-navy);margin-bottom:10px;padding-left:10px;border-left:3px solid var(--ref-gold)}.ref-image-group-label--abnormal{border-left-color:#8a9db5;color:var(--ref-text-light)}.ref-image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ref-image-grid--2{grid-template-columns:repeat(2,1fr);max-width:560px}.ref-image-grid--4{grid-template-columns:repeat(4,1fr)}.ref-figure{margin:0}.ref-figure img{width:100%;height:160px;object-fit:cover;display:block;border:1px solid var(--ref-border);background:var(--ref-cream)}.ref-figure figcaption{font-family:Cormorant Garamond,serif;font-size:.78rem;color:var(--ref-text-light);text-align:center;padding:6px 0;letter-spacing:.05em}.ref-note{font-size:.82rem;color:#888;background:#fafafa;border:1px solid #e8e8e8;padding:12px 16px;line-height:1.8;margin-top:16px}.ref-consult-list{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.ref-consult-list li{background:var(--ref-cream);border:1px solid var(--ref-border);padding:14px 16px 14px 40px;font-size:.88rem;color:var(--ref-text);position:relative;line-height:1.6}.ref-consult-list li:before{content:"✓";position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--ref-gold);font-weight:700}.ref-intro-box{background:#fff;border:1px solid var(--ref-border);border-left:4px solid var(--ref-navy);padding:24px;font-size:.9rem;color:var(--ref-text-light);line-height:2}.ref-contact-box{background:linear-gradient(135deg,var(--ref-navy) 0%,var(--ref-navy-light) 100%);color:#fff;padding:72px 40px;text-align:center;position:relative;overflow:hidden}.ref-contact-box:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(126,175,192,.12) 0%,transparent 60%);pointer-events:none}.ref-contact-inner{position:relative;max-width:640px;margin:0 auto}.ref-contact-title{font-family:"Noto Serif JP",serif;font-size:1.8rem;font-weight:400;letter-spacing:.1em;margin-bottom:12px}.ref-contact-line{width:40px;height:1px;background:var(--ref-gold);margin:16px auto}.ref-contact-sub{font-size:.9rem;opacity:.85;line-height:2;margin-bottom:20px}.ref-contact-tel{display:inline-block;font-family:Cormorant Garamond,serif;font-size:2rem;font-weight:600;letter-spacing:.08em;color:#fff;text-decoration:none;margin-bottom:24px}.ref-contact-tel:hover{opacity:.85}.ref-contact-address{font-style:normal;font-size:.82rem;opacity:.72;line-height:2}@media(max-width:768px){.ref-hero{padding:48px 20px}.ref-section{padding:48px 18px}.ref-grid-2,.ref-nipt-grid{grid-template-columns:1fr}.ref-image-grid{grid-template-columns:repeat(2,1fr)}.ref-consult-list{grid-template-columns:1fr}.ref-contact-box{padding:48px 20px}.ref-contact-tel{font-size:1.6rem}}
