:root{--blue:#0869c9;--blue-dark:#064a90;--ink:#122234;--muted:#5e6b78;--sky:#eaf5ff;--yellow:#ffd45c;--white:#fff;--line:#dce6ef;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Noto Sans JP",sans-serif;background:#fff;line-height:1.75}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:82px;padding:0 max(24px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96);position:relative;z-index:10}.brand{display:flex;gap:11px;align-items:center}.brand-mark{width:42px;height:42px;background:var(--blue);color:#fff;border-radius:13px;display:grid;place-items:center;font-weight:900;font-size:21px}.brand b{display:block;font-size:18px;letter-spacing:.03em}.brand small{display:block;color:#6b7b8b;font-size:10px;letter-spacing:.14em}.header-cta{background:var(--ink);color:#fff;border-radius:999px;padding:12px 22px;font-weight:700;font-size:14px}.hero{min-height:720px;position:relative;overflow:hidden;display:flex;align-items:center}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,26,49,.95) 0%,rgba(3,35,67,.83) 36%,rgba(3,29,54,.14) 70%)}.hero-copy{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:auto;color:#fff;padding:72px 0 110px}.eyebrow,.section-kicker{font-size:12px;font-weight:800;letter-spacing:.18em;color:var(--blue);text-transform:uppercase}.eyebrow{color:#acd8ff}.hero h1{font-size:clamp(38px,5vw,70px);line-height:1.35;margin:18px 0 22px;letter-spacing:-.03em}.hero h1 em{font-style:normal;color:var(--yellow)}.lead{font-size:18px;max-width:640px;line-height:1.9}.hero-actions{display:flex;gap:12px;margin:34px 0}.button{padding:15px 24px;border-radius:999px;font-weight:800}.button.primary{background:var(--yellow);color:#14202d}.button.ghost{border:1px solid rgba(255,255,255,.55)}.hero-points{list-style:none;margin:38px 0 0;padding:0;display:flex;gap:0;max-width:720px}.hero-points li{padding:0 28px;border-left:1px solid rgba(255,255,255,.3)}.hero-points li:first-child{padding-left:0;border:0}.hero-points b,.hero-points span{display:block}.hero-points b{font-size:17px}.hero-points span{font-size:12px;color:#bed3e6}.image-note{position:absolute;z-index:2;right:16px;bottom:8px;color:#fff;font-size:11px;text-shadow:0 1px 3px #000}.section{padding:110px max(24px,calc((100% - 1080px)/2))}.section h2,.entry h2{font-size:clamp(32px,4vw,52px);line-height:1.45;letter-spacing:-.03em;margin:12px 0 40px}.intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}.intro-grid p{font-size:17px;margin:0}.intro-large{font-size:26px!important;font-weight:700;line-height:1.7!important}.intro-large strong{color:var(--blue)}.blue-section{background:var(--blue-dark);color:#fff}.section-kicker.light{color:#8bc7ff}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.feature-grid article{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:34px;border-radius:var(--radius)}.feature-grid article>span{color:#74baff;font-weight:800;font-size:13px}.feature-grid h3{font-size:22px;margin:14px 0 8px}.feature-grid p{color:#d5e2ee;margin:0}.day{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;background:var(--sky)}.day-list>div{display:grid;grid-template-columns:110px 1fr;align-items:center;padding:25px 0;border-bottom:1px solid #bdd5e8}.day-list>div>span{font-size:36px;font-weight:900;color:var(--blue);line-height:1.1}.day-list small{font-size:14px}.day-list p{margin:0}.day-list b{display:block;font-size:18px}.section-lead{max-width:720px;color:var(--muted);margin:-20px 0 32px}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line)}.tab{border:0;background:transparent;padding:15px 28px;font-weight:800;color:#6a7885;cursor:pointer;border-bottom:3px solid transparent}.tab.active{color:var(--blue);border-color:var(--blue)}.job-panel{background:#fff;border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);padding:42px;display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;box-shadow:0 16px 50px rgba(20,70,110,.08)}.job-panel[hidden]{display:none}.job-label{color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.15em}.job-panel h3{font-size:27px;line-height:1.55;margin:10px 0}.job-panel dl{margin:0}.job-panel dl div{display:grid;grid-template-columns:90px 1fr;padding:15px 0;border-bottom:1px solid var(--line)}.job-panel dt{font-weight:800;color:var(--blue)}.job-panel dd{margin:0}.qualification{background:var(--sky);border-radius:14px;padding:18px 22px;margin-top:18px;font-size:14px}.flow{background:#f8fafc}.flow ol{list-style:none;counter-reset:flow;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.flow li{counter-increment:flow;background:#fff;border:1px solid var(--line);padding:28px;border-radius:18px;position:relative}.flow li:before{content:"0" counter(flow);display:block;color:var(--blue);font-size:13px;font-weight:900;letter-spacing:.1em;margin-bottom:22px}.flow b,.flow span{display:block}.flow b{font-size:19px;margin-bottom:10px}.flow span{font-size:14px;color:var(--muted)}.faq details{border-bottom:1px solid var(--line);padding:24px 4px}.faq summary{font-size:17px;font-weight:700;cursor:pointer;list-style:none;display:flex;justify-content:space-between}.faq summary:after{content:"＋";color:var(--blue);font-size:24px}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--muted);padding-right:50px}.entry{background:linear-gradient(135deg,#064a90,#0877d7);color:#fff;padding:110px 24px}.entry-inner{width:min(1080px,100%);margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.entry-inner>div>p{color:#d8eaff}.entry form{background:#fff;color:var(--ink);padding:38px;border-radius:var(--radius);display:grid;gap:20px}.entry label,.entry legend{font-weight:700;font-size:14px}.entry label span,.entry legend span{color:#e14949;margin-left:5px}.entry label small{font-weight:500;color:#7a8792}.entry input[type=text],.entry input[type=tel],.entry select,.entry textarea{width:100%;display:block;margin-top:8px;border:1px solid #cfd9e2;border-radius:10px;padding:13px 14px;background:#fff}.entry fieldset{border:0;padding:0;margin:0}.entry fieldset label{display:inline-flex;align-items:center;gap:5px;margin:10px 16px 0 0;font-weight:500}.entry button{border:0;border-radius:999px;background:var(--yellow);color:#17202a;padding:16px;font-weight:900;cursor:pointer}.form-note{font-size:12px;color:#768492;margin:0;text-align:center}.form-message{font-weight:700;color:var(--blue);text-align:center}.entry input:focus,.entry select:focus,.entry textarea:focus,.tab:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #ffd45c;outline-offset:2px}footer{padding:50px max(24px,calc((100% - 1080px)/2));display:grid;grid-template-columns:1fr auto auto;gap:28px;align-items:center;color:#607080;font-size:13px}.footer-brand{color:var(--ink)}.mobile-cta{display:none}.jobs{scroll-margin-top:30px}.entry{scroll-margin-top:20px}@media(max-width:760px){body{padding-bottom:68px}.topbar{height:68px;padding:0 16px}.brand-mark{width:37px;height:37px;border-radius:11px}.brand b{font-size:15px}.header-cta{display:none}.hero{min-height:730px;align-items:flex-end}.hero-photo{object-position:62% center}.hero-shade{background:linear-gradient(0deg,rgba(2,20,38,.97) 3%,rgba(2,29,54,.68) 62%,rgba(2,29,54,.15) 100%)}.hero-copy{width:calc(100% - 36px);padding:200px 0 36px}.hero h1{font-size:38px}.lead{font-size:16px;line-height:1.8}.hero-actions{flex-direction:column;align-items:stretch}.button{text-align:center}.hero-points{display:grid;grid-template-columns:repeat(3,1fr);margin-top:28px}.hero-points li{padding:0 10px}.hero-points li:first-child{padding-left:0}.hero-points b{font-size:13px}.hero-points span{font-size:10px}.section{padding:76px 20px}.section h2,.entry h2{font-size:32px;margin-bottom:30px}.intro-grid,.day,.job-panel,.entry-inner{grid-template-columns:1fr;gap:28px}.intro-large{font-size:22px!important}.feature-grid{grid-template-columns:1fr}.feature-grid article{padding:26px}.day-list>div{grid-template-columns:90px 1fr}.tabs{overflow:auto}.tab{padding:14px 22px;white-space:nowrap}.job-panel{padding:26px}.flow ol{grid-template-columns:1fr}.entry{padding:76px 20px}.entry form{padding:24px 20px}.entry fieldset label{width:45%;margin-right:0}.entry input,.entry select,.entry textarea{font-size:16px}footer{grid-template-columns:1fr;gap:12px}.mobile-cta{display:block;position:fixed;z-index:20;left:12px;right:12px;bottom:10px;background:var(--yellow);color:#17202a;border-radius:999px;text-align:center;padding:13px;font-weight:900;box-shadow:0 8px 26px rgba(0,0,0,.25)}.image-note{bottom:4px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Official Kokura Shinkyuin logo */
.topbar{height:96px;background:rgba(255,255,255,.97)}
.brand{gap:14px}
.brand-logo{display:block;width:auto;height:86px}
.recruit-label{color:#6b5260;font-size:12px;font-weight:800;letter-spacing:.08em;border-left:1px solid #e8cad6;padding-left:14px;white-space:nowrap}
.footer-logo{display:block;width:auto;height:104px}
@media(max-width:760px){.topbar{height:82px;padding:0 12px}.brand{gap:8px}.brand-logo{height:74px}.recruit-label{font-size:10px;padding-left:8px}.footer-logo{height:96px}}

/* Kokura Shinkyuin pink and white brand theme */
:root{--blue:#d95d8d;--blue-dark:#a83e68;--ink:#35242d;--muted:#74636c;--sky:#fff0f6;--yellow:#ffd3e1;--line:#efd6df}
.header-cta{background:#9f3d63}
.hero-photo{object-position:center 38%}
.hero-shade{background:linear-gradient(90deg,rgba(67,24,43,.95) 0%,rgba(112,40,70,.8) 38%,rgba(90,31,57,.12) 72%)}
.eyebrow{color:#ffd7e6}.hero h1 em{color:#ffc3d8}
.button.primary,.entry button,.mobile-cta{background:#ffc7da;color:#422330}
.blue-section{background:linear-gradient(145deg,#98375d,#c95784)}
.section-kicker.light{color:#ffd2e2}.feature-grid article>span{color:#ffd0e0}
.entry{background:linear-gradient(135deg,#96375b,#dc6d98)}.entry-inner>div>p{color:#ffe6ef}
.qualification{border:1px solid #f2ccda}
.role-split{background:#fff7fa}.role-split .section-lead{margin-top:-20px}.role-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.role-card{padding:38px;border-radius:var(--radius)}.practitioner-role{background:#fff;border:1px solid var(--line);box-shadow:0 16px 50px rgba(116,52,78,.08)}.clinic-role{background:linear-gradient(145deg,#96375b,#c95784);color:#fff}.role-label{display:inline-block;margin:0 0 14px;color:var(--blue);font-size:13px;font-weight:900;letter-spacing:.06em}.clinic-role .role-label{color:#ffd2e2}.role-card h3{font-size:26px;line-height:1.55;margin:0 0 26px}.role-card ul{list-style:none;margin:0;padding:0}.role-card li{padding:18px 0;border-top:1px solid var(--line)}.clinic-role li{border-color:rgba(255,255,255,.2)}.role-card b,.role-card span{display:block}.role-card b{font-size:17px;margin-bottom:5px}.role-card span{color:var(--muted);font-size:14px}.clinic-role span{color:#ffe5ee}
.team-promise{margin-top:20px;padding:38px 42px;border-radius:var(--radius);background:#35242d;color:#fff}.team-promise>p:first-child{margin:0 0 12px;color:#ffc7da;font-size:13px;font-weight:900;letter-spacing:.06em}.team-promise h3{font-size:28px;line-height:1.55;margin:0 0 16px}.team-promise>p:last-child{max-width:850px;margin:0;color:#f0dfe7}
@media(max-width:760px){.hero-photo{object-position:58% center}.hero-shade{background:linear-gradient(0deg,rgba(62,21,39,.98) 3%,rgba(109,38,68,.7) 62%,rgba(91,30,56,.1) 100%)}}
@media(max-width:760px){.role-grid{grid-template-columns:1fr}.role-card{padding:26px}.role-card h3{font-size:23px}.team-promise{padding:28px 26px}.team-promise h3{font-size:23px}}

/* Refined white and soft-pink brand balance */
:root{--blue:#bd527a;--blue-dark:#47323b;--ink:#33282d;--muted:#70636a;--sky:#fff7fa;--yellow:#f7d7e3;--line:#eadde2}
body{background:#fff;color:var(--ink)}
.topbar{border-bottom:1px solid rgba(189,82,122,.1);box-shadow:0 8px 30px rgba(66,39,50,.04)}
.header-cta{background:#4a343d}
.hero-shade{background:linear-gradient(90deg,rgba(43,31,37,.94) 0%,rgba(55,38,46,.77) 40%,rgba(51,34,43,.08) 76%)}
.eyebrow{color:#f7dce6}.hero h1 em{color:#f5c7d7}
.button.primary,.entry button,.mobile-cta{background:#f1cada;color:#3d2b33}
.button.primary:hover,.entry button:hover,.mobile-cta:hover{background:#e9b6ca}
.intro-large strong{color:#a84168}
.blue-section{background:#fff8fb;color:var(--ink);border-top:1px solid #f2e8ec;border-bottom:1px solid #f2e8ec}
.blue-section .section-kicker.light{color:#aa456b}
.feature-grid article{background:#fff;border:1px solid #eadde2;box-shadow:0 14px 36px rgba(83,49,63,.06)}
.feature-grid article>span{color:#b54d74}.feature-grid p{color:var(--muted)}
.day{background:#faf7f8}.day-list>div{border-color:#e7dce1}
.entry{background:#4a343d;color:#fff}
.entry .section-kicker.light{color:#f2c8d8}.entry-inner>div>p{color:#eadde2}
.clinic-role{background:#514049;color:#fff}.clinic-role .role-label{color:#f2c8d8}.clinic-role span{color:#eadde2}
.team-promise{background:#33282d}.team-promise>p:first-child{color:#efbfd1}
.qualification{background:#fff7fa}
@media(max-width:760px){.hero-shade{background:linear-gradient(0deg,rgba(43,31,37,.97) 4%,rgba(54,37,46,.68) 63%,rgba(50,34,42,.06) 100%)}}
.entry input[type=email]{width:100%;display:block;margin-top:8px;border:1px solid #cfd9e2;border-radius:10px;padding:13px 14px;background:#fff}.honeypot{position:absolute!important;left:-9999px!important;opacity:0!important}.privacy-consent{display:flex;align-items:flex-start;gap:10px;font-weight:500!important;line-height:1.6}.privacy-consent input{margin-top:5px;flex:0 0 auto}
.team-section{background:#33282d;color:#fff}.team-heading{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:80px;align-items:start}.team-heading .section-kicker{grid-column:1}.team-heading h2{grid-column:1;margin-bottom:0}.team-heading>p{grid-column:2;grid-row:1/3;margin:36px 0 0;color:#eadde2;font-size:17px}.team-numbers{display:grid;grid-template-columns:repeat(3,1fr);margin:56px 0 20px;border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.team-numbers>div{padding:30px;text-align:center;border-right:1px solid rgba(255,255,255,.18)}.team-numbers>div:last-child{border-right:0}.team-numbers strong,.team-numbers span{display:block}.team-numbers strong{font-size:48px;color:#f2c8d8;line-height:1}.team-numbers strong small{font-size:16px;margin-left:4px}.team-numbers span{margin-top:10px;color:#eadde2;font-size:14px}.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pillar-grid article{padding:30px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13)}.pillar-grid article>span{display:inline-block;color:#f2c8d8;font-size:13px;font-weight:900;letter-spacing:.12em}.pillar-grid h3{font-size:20px;margin:12px 0 8px}.pillar-grid p{margin:0;color:#d9cbd1;font-size:14px}@media(max-width:760px){.team-heading{grid-template-columns:1fr}.team-heading .section-kicker,.team-heading h2,.team-heading>p{grid-column:1;grid-row:auto}.team-heading>p{margin:0}.team-numbers{margin-top:36px}.team-numbers>div{padding:22px 8px}.team-numbers strong{font-size:36px}.team-numbers span{font-size:11px}.pillar-grid{grid-template-columns:1fr}.pillar-grid article{padding:25px}}

/* Responsive typography and layout */
.hero h1 span,.hero h1 em{display:block;text-wrap:balance}.section h2,.entry h2,.role-card h3,.team-promise h3,.job-panel h3{text-wrap:balance;overflow-wrap:normal;word-break:auto}.team-heading h2{font-size:clamp(34px,4.1vw,48px);line-height:1.5}
@media(max-width:1050px){.section{padding-left:36px;padding-right:36px}.intro-grid{gap:48px}.team-heading{grid-template-columns:1fr;gap:18px}.team-heading .section-kicker,.team-heading h2,.team-heading>p{grid-column:1;grid-row:auto}.team-heading>p{margin:0;max-width:760px}.pillar-grid{grid-template-columns:repeat(2,1fr)}.pillar-grid article:last-child{grid-column:1/-1}.role-grid{grid-template-columns:1fr}.flow ol{grid-template-columns:repeat(2,1fr)}.job-panel{gap:36px;padding:34px}.entry-inner{gap:48px}}
@media(max-width:850px){.intro-grid,.day,.job-panel,.entry-inner{grid-template-columns:1fr}.intro-grid{gap:28px}.day{gap:32px}.team-heading h2{max-width:620px}.feature-grid{grid-template-columns:1fr}.job-panel{border-radius:0 0 var(--radius) var(--radius)}.entry-inner>div{max-width:620px}.hero-points{max-width:100%}.hero-points li{padding:0 18px}}
@media(max-width:760px){.section{padding-left:20px;padding-right:20px}.hero h1{font-size:clamp(32px,10vw,38px);line-height:1.42}.hero h1 span,.hero h1 em{text-wrap:pretty}.section h2,.entry h2{font-size:clamp(28px,8vw,32px);line-height:1.5}.team-heading h2{font-size:clamp(30px,8.5vw,34px)}.pillar-grid{grid-template-columns:1fr}.pillar-grid article:last-child{grid-column:auto}.flow ol{grid-template-columns:1fr}.job-panel h3,.role-card h3,.team-promise h3{font-size:clamp(22px,6.5vw,26px);line-height:1.55}.hero-points li{padding:0 8px}.hero-points b{line-height:1.45}.team-numbers span{line-height:1.5}}
