:root{--color-primary: #7ecdf4;--color-primary-dark: #64bdeb;--color-accent: #e45593;--color-accent-soft: rgba(243, 183, 209, .85);--color-text: #1b1b1b;--color-muted: #666;--color-bg: #f8f7f2;--color-line: #ccc;--color-white: #fff;--font-sans: "Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Hiragino Sans", "Yu Gothic", YuGothic, Meiryo, sans-serif;--container: 1000px;--gutter: 16px;--phone-bar-height: 78px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-sans);font-size:15px;line-height:1.9;color:var(--color-text);background:var(--color-bg);padding-bottom:var(--phone-bar-height)}img{max-width:100%;height:auto;display:block}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-weight:400;line-height:1.4;margin:0}p{margin:0 0 1em}figure{margin:0}table{border-collapse:collapse;width:100%}iframe{border:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:-999px;top:0;background:var(--color-white);padding:8px 16px;z-index:100}.skip-link:focus{left:8px;top:8px}.container{max-width:calc(var(--container) + var(--gutter) * 2);margin:0 auto;padding:0 var(--gutter)}.text-center{text-align:center}.site-header{background:var(--color-primary);color:var(--color-white)}.header-inner{display:flex;align-items:center;gap:24px;min-height:120px;padding-top:12px;padding-bottom:12px}.brand{flex:0 0 auto}.brand img{width:303px;max-width:100%}.main-nav{flex:1 1 auto}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:2px 28px;justify-content:center}.nav-list a{color:var(--color-white);font-size:15px;letter-spacing:1px;white-space:nowrap}.nav-list a:hover{text-decoration:none;opacity:.75}.nav-home{display:none}.header-info{flex:0 0 auto;font-size:13px;line-height:1.5}.header-info p{margin:0}.header-tel{margin-top:6px!important;font-size:13px;font-weight:700}.header-tel a{color:var(--color-white);font-size:20px;letter-spacing:1px}.menu-toggle{display:none}.hero{position:relative;background:#d9eefb}.hero-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;gap:0}.hero-track::-webkit-scrollbar{display:none}.hero-slide{flex:0 0 min(100%,1000px);scroll-snap-align:center}.hero-slide img{width:100%;aspect-ratio:1200 / 660;object-fit:cover}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:0;border-radius:4px;background:#fff9;color:var(--color-text);cursor:pointer;padding:10px}.hero-arrow:hover{background:#ffffffe6}.hero-prev{left:max(16px,calc((100% - 1000px)/2 - 44px))}.hero-next{right:max(16px,calc((100% - 1000px)/2 - 44px))}.section{padding:56px 0 64px}.section-title,.prose h2{display:table;margin:0 auto 45px;padding-bottom:14px;border-bottom:4px solid var(--color-primary);color:var(--color-primary);font-size:30px;letter-spacing:3px;text-align:center}.sub-title,.prose h3{color:var(--color-primary);font-size:22px;padding-bottom:8px;margin-bottom:20px;border-bottom:1px solid var(--color-line)}.section-foot{text-align:center;margin:36px 0 0}.btn{display:inline-block;padding:13px 30px 13px 26px;border:1px solid var(--color-accent);color:var(--color-accent);background:var(--color-white);font-size:16px;letter-spacing:1px;line-height:1.4;position:relative;transition:background .2s,color .2s}.btn:after{content:"";position:absolute;right:12px;top:50%;width:6px;height:6px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:translateY(-50%) rotate(45deg)}.btn:hover{text-decoration:none;background:var(--color-accent);color:var(--color-white)}.btn-fill{background:var(--color-accent);color:var(--color-white)}.btn-fill:hover{background:var(--color-white);color:var(--color-accent)}.btn-small{padding:8px 30px 8px 22px}.split{display:grid;gap:32px;align-items:start}.split-5-7{grid-template-columns:5fr 7fr}.split-4-8{grid-template-columns:4fr 8fr}.split-image img{width:100%}.map iframe{width:100%;height:415px}.info-table th,.info-table td{border:1px solid rgba(228,85,147,.7);padding:12px 16px;text-align:left;vertical-align:middle}.info-table th{width:30%;background:#f3b7d1;color:var(--color-white);font-weight:400;text-align:center}.info-table td{background:var(--color-white)}.schedule-table{text-align:center}.schedule-table th,.schedule-table td{border:1px solid rgba(228,85,147,.7);padding:10px 6px;background:var(--color-white);color:var(--color-text);font-weight:400}.schedule-table thead th{background:#e45593bf;color:var(--color-white)}.schedule-table tbody th{width:25%;white-space:nowrap}.schedule-notes{margin:16px 0 0}.home-greeting-body{max-width:1000px;margin:0 auto}.home-greeting-body p{margin-bottom:1.6em}.home-news-inner{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:center}.home-news-inner .section-title{margin:0;border-bottom:0;padding-bottom:0}.news-list{margin:0}.news-item{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--color-primary)}.news-item dt{padding-left:14px}.news-item dd{margin:0}.news-item dd a{color:var(--color-text)}.news-item dd p{margin:0}.home-notice-body{text-align:center;margin:0}.reason-list{list-style:none;margin:0;padding:0;display:grid;gap:18px}.reason-card{display:grid;grid-template-columns:1fr 300px;background:var(--color-white);border-top:2px solid var(--color-primary);box-shadow:0 1px 3px #0000000f}.reason-text{padding:14px 24px 18px}.reason-badge{display:inline-flex;align-items:baseline;gap:8px;background:var(--color-primary);color:var(--color-white);border-radius:6px;padding:2px 16px 2px 12px;margin-bottom:8px;line-height:1.5}.reason-badge-name{font-size:14px}.reason-badge-label{font-size:18px;font-weight:700}.reason-badge-label b{font-size:26px;font-weight:400;margin-left:2px}.reason-text p{margin:0;font-size:24px;line-height:1.6}.reason-image{width:100%;height:100%;min-height:148px;object-fit:cover}.home-clinic{padding-bottom:0}.home-clinic-bg{background:url(/images/clinic/corridor-bg.webp) center / cover no-repeat;padding:50px 0 64px}.home-clinic-panel{background:#7ecdf4d9;color:var(--color-white);padding:48px}.home-clinic-panel a{color:var(--color-white)}.home-clinic-panel .sub-title{color:var(--color-white);border-bottom-color:#fff9;margin-top:32px}.home-clinic-top{display:grid;grid-template-columns:1fr 1fr;gap:24px}.home-clinic-top .map iframe{height:100%;min-height:450px}.info-list{display:grid;grid-template-columns:90px 1fr;gap:0 12px;margin:20px 0 0;border-top:1px solid rgba(255,255,255,.7)}.info-list dt,.info-list dd{margin:0;padding:10px 4px;border-bottom:1px solid rgba(255,255,255,.7)}.info-list dt{font-weight:700}.home-services{padding-bottom:0}.service{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;margin-bottom:72px}.service-image{grid-column:1;grid-row:1}.service-image img{width:100%;aspect-ratio:680 / 330;object-fit:cover}.service-text{grid-column:2;grid-row:1;background:var(--color-accent-soft);color:var(--color-white);padding:48px 36px 36px;margin:40px -0px -40px -100px;position:relative}.service.reverse .service-image{grid-column:2}.service.reverse .service-text{grid-column:1;margin:40px -100px -40px 0}.service-text h3{font-size:20px;padding-bottom:8px;margin-bottom:14px;border-bottom:1px solid var(--color-white)}.service-text p{font-size:14px}.service-more{margin:20px 0 0!important}.service-more .btn-fill:hover{background:var(--color-white)}.home-faq-intro{margin:0}.question-list,.faq-item{list-style:none;margin:32px 0 0;padding:0}.question-list li{border-bottom:1px solid #b3b3b3}.question-list li:first-child{border-top:1px solid #b3b3b3}.question-list a,.faq-question{display:flex;align-items:center;gap:24px;padding:16px 0;color:var(--color-text);font-size:16px}.question-list a:hover{text-decoration:none;color:var(--color-accent)}.q-mark{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--color-accent);color:var(--color-white);font-size:20px;font-weight:700;line-height:40px;text-align:center;position:relative}.q-mark:after{content:"";position:absolute;left:4px;bottom:-5px;border:7px solid transparent;border-top-color:var(--color-accent);border-left-color:var(--color-accent);transform:rotate(-20deg)}.a-mark{background:var(--color-primary)}.a-mark:after{border-top-color:var(--color-primary);border-left-color:var(--color-primary)}.page-title{color:var(--color-primary);font-size:36px;letter-spacing:3px;text-align:center;padding:36px var(--gutter) 24px}.breadcrumb{margin-bottom:32px;font-size:12px}.breadcrumb ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}.breadcrumb li+li:before{content:">";margin:0 14px;color:var(--color-muted)}.breadcrumb a{color:var(--color-text)}.page-body{margin-bottom:48px}.page-body.with-image{display:grid;grid-template-columns:4fr 8fr;gap:32px;align-items:start}.page-image img{width:100%}.page-body.faq{display:block}.page-body.faq .page-image{float:left;width:32%;margin:0 32px 16px 0}.page-body.faq .prose h3,.page-body.faq .prose .faq-item{clear:both}.page-body.faq .prose h3{margin-top:32px}.page-section{margin-bottom:64px}.page-section .section-title{margin-top:16px}.page-section .sub-title{margin-top:40px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:48px 24px}.gallery img{width:100%;aspect-ratio:3 / 2;object-fit:cover}.gallery figcaption{margin-top:10px}.prose>:first-child{margin-top:0}.prose h2{margin-top:56px}.prose h2:first-child{margin-top:0}.prose h3{margin-top:40px}.prose h3:first-child{margin-top:0}.prose h4{font-size:17px;font-weight:700;margin:28px 0 10px}.prose p{margin:0 0 1.4em}.prose ul,.prose ol{padding-left:1.4em;margin:0 0 1.4em}.prose li{margin-bottom:.3em}.prose strong{font-weight:700}.prose img{margin:8px 0;max-width:320px}.prose blockquote{margin:0 0 1.4em;padding:8px 20px;border-left:4px solid var(--color-primary);background:var(--color-white)}.prose table th,.prose table td{border:1px solid rgba(228,85,147,.7);padding:10px 14px;background:var(--color-white)}.prose table th{background:#f3b7d1;color:var(--color-white);font-weight:400}.prose hr{border:0;border-top:1px solid var(--color-line);margin:2em 0}.faq-item{margin:0;border-bottom:1px solid #b3b3b3}.faq-item:first-of-type{border-top:1px solid #b3b3b3}.faq-item h3{margin:0!important;padding:0;border:0;font-size:16px;color:var(--color-text)}.faq-question{width:100%;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.faq-question:hover{color:var(--color-accent)}.faq-answer{display:flex;gap:24px;padding:4px 0 20px}.faq-answer .a-mark{margin-top:4px}.faq-answer[hidden]{display:none}.faq-answer>:not(.q-mark){flex:1 1 auto;min-width:0}.faq-answer p:last-child{margin-bottom:0}.post-date{margin:0 0 8px;color:var(--color-muted)}.page .page-body .post-date{margin-bottom:16px}.post-list{list-style:none;margin:0;padding:0}.post-item{padding:32px 0 40px;border-bottom:1px solid var(--color-line)}.post-item:first-child{padding-top:8px}.post-item h2{display:table;margin:0 auto 24px;padding-bottom:8px;border-bottom:2px solid var(--color-primary);font-size:24px;letter-spacing:2px}.post-item h2 a{color:var(--color-text)}.post-excerpt{margin-bottom:20px}.post-more{margin:0}.pagination{display:flex;justify-content:space-between;margin:40px 0 0}.post-pager{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;margin:48px 0 64px;padding-top:24px;border-top:1px solid var(--color-line);font-size:14px}.post-pager-prev a:before{content:"« "}.post-pager-next{text-align:right}.post-pager-next a:after{content:" »"}.site-footer{background:var(--color-primary);color:var(--color-white);padding:28px 0 32px;text-align:center}.footer-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 0}.footer-nav li{display:flex;align-items:center}.footer-nav li+li:before{content:"|";margin:0 12px;opacity:.8}.footer-nav a{color:var(--color-white);font-size:14px;letter-spacing:1px}.copyright{margin:28px 0 0;font-size:14px}.phone-bar{position:fixed;left:0;right:0;bottom:0;z-index:50;background:#23281eb3;padding:10px var(--gutter)}.phone-bar-button{display:flex;align-items:center;justify-content:center;gap:16px;max-width:980px;margin:0 auto;min-height:58px;border-radius:3px;background:var(--color-primary);color:var(--color-white);text-align:center;position:relative}.phone-bar-button:hover{text-decoration:none;background:var(--color-primary-dark)}.phone-bar-icon{position:absolute;left:16px;top:50%;width:24px;height:24px;transform:translateY(-50%)}.phone-bar-text{display:flex;flex-direction:column;line-height:1.3}.phone-bar-label{font-size:16px;letter-spacing:1px}.phone-bar-number{font-size:24px;font-weight:700;letter-spacing:1px}.page-top{position:fixed;right:24px;bottom:calc(var(--phone-bar-height) + 16px);z-index:49;width:70px;height:70px;border-radius:50%;background:var(--color-primary);color:var(--color-white);padding:20px;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}.page-top.visible{opacity:1;visibility:visible}.page-top:hover{background:var(--color-primary-dark)}@media(max-width:1100px){.nav-list{gap:2px 18px}.brand img{width:240px}}@media(max-width:900px){:root{--phone-bar-height: 70px}body{font-size:14px}.header-inner{flex-wrap:wrap;min-height:0;gap:12px;padding-top:10px;padding-bottom:10px}.brand{flex:1 1 auto}.brand img{width:200px}.header-info{display:none}.menu-toggle{display:block;width:48px;height:48px;border:0;background:none;position:relative;cursor:pointer;padding:0}.menu-toggle span:not(.sr-only){position:absolute;left:10px;width:28px;height:2px;background:var(--color-white);transition:transform .2s,opacity .2s}.menu-toggle span:nth-child(1){top:14px}.menu-toggle span:nth-child(2){top:23px}.menu-toggle span:nth-child(3){top:32px}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(9px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}.main-nav{flex:1 1 100%}.nav-list{display:none;flex-direction:column;gap:0;margin:0 calc(-1 * var(--gutter));border-top:1px solid rgba(255,255,255,.5)}.nav-list.open{display:flex}.nav-list li{border-bottom:1px solid rgba(255,255,255,.5)}.nav-list a{display:block;padding:11px var(--gutter);font-size:15px;white-space:normal}.nav-home{display:block}.hero-slide{flex-basis:100%}.hero-arrow{width:36px;height:36px;padding:7px}.section{padding:40px 0 48px}.section-title,.prose h2{font-size:24px;letter-spacing:2px;margin-bottom:32px}.sub-title,.prose h3{font-size:19px}.page-title{font-size:26px;padding:24px var(--gutter) 16px}.breadcrumb{margin-bottom:24px}.split-5-7,.split-4-8,.page-body.with-image,.home-clinic-top{grid-template-columns:1fr;gap:20px}.page-image,.split-image{max-width:480px}.page-body.faq .page-image{float:none;width:100%;margin:0 0 20px}.map iframe,.home-clinic-top .map iframe{height:320px;min-height:0}.home-news-inner{grid-template-columns:1fr;gap:8px}.home-news-inner .section-title{margin:0 auto 16px;padding-bottom:14px;border-bottom:4px solid var(--color-primary)}.news-item{grid-template-columns:1fr;gap:2px}.news-item dt{padding-left:0;color:var(--color-muted)}.reason-card{grid-template-columns:1fr}.reason-text p{font-size:18px}.reason-image{max-height:200px}.home-clinic-bg{padding:24px 0 40px}.home-clinic-panel{padding:20px}.service{grid-template-columns:1fr;margin-bottom:40px}.service-image,.service.reverse .service-image,.service-text,.service.reverse .service-text{grid-column:1}.service-image{grid-row:1}.service-text,.service.reverse .service-text{grid-row:2;margin:0;padding:24px var(--gutter) 28px}.gallery{grid-template-columns:repeat(2,1fr);gap:24px 16px}.question-list a,.faq-question,.faq-answer{gap:14px}.post-item h2{font-size:20px}.post-pager{grid-template-columns:1fr;text-align:center}.post-pager-next{text-align:center}.footer-nav li+li:before{margin:0 8px}.phone-bar{padding:8px var(--gutter)}.phone-bar-button{min-height:54px;gap:10px}.phone-bar-label{font-size:14px}.phone-bar-number{font-size:20px}.page-top{width:52px;height:52px;padding:14px;right:12px;bottom:calc(var(--phone-bar-height) + 12px)}}@media(max-width:480px){.gallery{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
