:root{--ac:#1f2f4d;--line:#e3e4e8;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0;background:#fff;color:#1c1e24;-webkit-font-smoothing:antialiased}body{font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,sans-serif;font-size:14px;line-height:1.85;letter-spacing:.02em}a{color:var(--ac);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:2px solid var(--ac);outline-offset:5px}.container{max-width:820px;margin:0 auto}main.container{padding-top:48px}header,section{margin-bottom:40px}h1,h2,h3{font-family:Shippori Mincho,Hiragino Mincho ProN,Yu Mincho,serif;font-weight:500;margin:0}h1{font-size:40px;line-height:1.5;letter-spacing:.06em}h2{font-size:22px;line-height:1.6;letter-spacing:.08em}h3{font-size:21px;line-height:1.5;letter-spacing:.06em}p{margin:0}.stack{display:flex;flex-direction:column;gap:28px}.accent-line{width:28px;height:1px;background:var(--ac)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:24px}.card{border:1px solid var(--line);padding:28px 28px 24px;display:flex;flex-direction:column;gap:20px;background:#fff;min-width:0;margin:0;scroll-margin-top:24px}.card dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:8px 20px;font-size:14.5px;line-height:1.8}.card dt{color:#5b5f6b;font-size:12.5px;letter-spacing:.1em;padding-top:2px}.card dd{margin:0;min-width:0}.card dd,.voice-text{white-space:pre-wrap;overflow-wrap:anywhere}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 20px;border:1px solid var(--ac);font-size:14px;letter-spacing:.08em;align-self:flex-start;margin-top:auto}.button:hover{background:var(--ac);color:#fff;text-decoration:none}.button[aria-disabled=true]{color:#5b5f6b;border-color:var(--line)}.note{font-size:12.5px;color:#5b5f6b}blockquote{margin:0}footer.container{display:flex;flex-wrap:wrap;gap:8px 24px;justify-content:space-between;font-size:12px;color:#5b5f6b;padding-top:8px;padding-bottom:40px}.skip-link{position:absolute;left:16px;top:-100px;background:#fff;padding:8px;z-index:1}.skip-link:focus{top:8px}@media(max-width:868px){.container{margin-inline:24px}main.container{padding-top:32px}}@media(max-width:380px){.container{margin-inline:16px}.card{padding:24px 20px}section[data-screen-label=活動範囲]>div{grid-template-columns:minmax(0,1fr)!important}}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:24px;border-bottom:1px solid var(--line);margin-bottom:0}.site-name{font-family:Shippori Mincho,Hiragino Mincho ProN,Yu Mincho,serif;font-size:20px;white-space:nowrap}.menu{display:flex;gap:20px}.menu a{display:flex;align-items:center;justify-content:center;min-height:44px;text-underline-offset:8px}.menu a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px}.home-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:48px}.home-menu a{border:1px solid var(--ac);border-radius:14px;min-height:56px;padding:12px 8px}.home-menu a:hover{background:var(--ac);color:#fff}.credentials{color:#3a3d45}.instructor-name{font-family:Shippori Mincho,Yu Mincho,serif;font-size:22px;margin-bottom:8px}.timeline{list-style:none;padding:0 0 0 24px;margin:0 0 0 6px;border-left:1px solid var(--line)}.timeline li{position:relative;padding:0 0 32px 8px;display:grid;gap:8px}.timeline li:last-child{padding-bottom:0}.timeline li:before{content:"";position:absolute;left:-29px;top:9px;width:9px;height:9px;background:var(--ac);border-radius:50%}.timeline h3{font-size:19px}.next-course{border-color:var(--ac);border-top:3px solid var(--ac)}.course-label{color:var(--ac);font-weight:500;letter-spacing:.1em}.contact-section{border-top:1px solid var(--line);padding-top:40px}.contact-details{gap:16px;margin-bottom:48px}.email-link{font-family:Shippori Mincho,Yu Mincho,serif;font-size:clamp(22px,5vw,32px);overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:6px}.note a,.more-link{text-decoration:underline;text-underline-offset:4px}.voices-list{margin-bottom:48px}@media(max-width:640px){.site-header{flex-wrap:wrap;gap:12px;padding-block:16px}.header-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.header-menu a{min-height:56px;border:1px solid var(--line);border-radius:14px;padding:8px}.is-home .header-menu{display:none}.home-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}h1{font-size:32px}.menu{font-size:14px;letter-spacing:0}}.hero{display:flex;flex-direction:column;gap:20px;padding-top:0}.photo{margin:0 0 40px;overflow:hidden;background:#f4f4f2}.photo img{display:block;width:100%;height:auto}.hero-photo{margin-top:8px}.profile-head{display:grid;grid-template-columns:1fr minmax(0,300px);gap:32px 40px;align-items:start}.profile-head .photo{margin-bottom:0}.history{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0}.history li{border-top:1px solid var(--line);padding:14px 0;font-size:15px}.history li:last-child{border-bottom:1px solid var(--line)}.card .official-link{font-size:12.5px;color:#5b5f6b}.card .official-link a{text-decoration:underline;text-underline-offset:4px}@media(max-width:640px){.profile-head{grid-template-columns:minmax(0,1fr)}}
