@charset "UTF-8";
:root{color-scheme:light;--ink:#303339;--muted:#666b72;--line:#e5e6e8;--accent:#287ca9;font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",Meiryo,sans-serif;font-size:16px;scroll-padding-top:32px}
*{box-sizing:border-box}body{margin:0;background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:5px}a:focus-visible{outline:2px solid #9263bf;outline-offset:6px}img{display:block;max-width:100%;height:auto}.skip{position:fixed;top:-100px;left:16px;padding:16px;background:white;z-index:5}.skip:focus{top:16px}.header,main,footer{width:min(100% - 96px,1000px);margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;padding:26px 0 20px;border-bottom:1px solid var(--line)}.brand{display:block;width:94px;padding:3px}.header nav{display:flex;gap:32px;font-size:.875rem;line-height:1.8}.hero{padding:88px 0 96px;max-width:820px}h1{font-family:"Hiragino Mincho ProN","Yu Mincho",YuMincho,serif;font-size:clamp(2rem,3vw,2.7rem);font-weight:500;line-height:1.8;letter-spacing:.055em;margin:0 0 36px}.hero-intro p{font-size:1rem;line-height:2.15;margin:0 0 16px;color:#52575e}.hero-intro p:last-child{margin-bottom:0}.section{display:grid;grid-template-columns:190px minmax(0,1fr);gap:42px;padding:52px 0 64px;border-top:1px solid var(--line);scroll-margin-top:32px}h2{font-size:1rem;line-height:1.9;font-weight:600;margin:0}.service-list article{display:grid;grid-template-columns:minmax(190px,.95fr) minmax(0,1.3fr);gap:32px;padding:27px 0;border-bottom:1px solid var(--line)}.service-list article:first-child{padding-top:0}.service-list article:last-child{border-bottom:0;padding-bottom:0}h3{font-size:1rem;font-weight:600;line-height:1.9;margin:0}.service-list p{font-size:1rem;line-height:2;color:#5d6269;margin:0}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:110px minmax(0,1fr);gap:30px;padding:12px 0}.company dl>div:first-child{padding-top:0}.company dl>div:last-child{padding-bottom:0}dt{font-size:.875rem;color:var(--muted);line-height:2.1}dd{font-size:1rem;line-height:2;margin:0}footer{border-top:1px solid var(--line);padding:30px 0 28px}.footer-main{display:flex;align-items:baseline;gap:24px}.footer-name{font-family:Arial,sans-serif;font-size:1.125rem;letter-spacing:.01em}.footer-main>span{font-size:.75rem;color:var(--muted)}.back-top{margin-left:auto;font-size:.875rem;color:var(--muted)}.copyright{font:400 .75rem/1.8 Arial,sans-serif;color:var(--muted);margin:26px 0 0}
@media(max-width:850px){.section{grid-template-columns:135px minmax(0,1fr);gap:32px}.service-list article{grid-template-columns:1fr;gap:10px}.hero{padding:72px 0 80px}}
@media(max-width:560px){.header,main,footer{width:calc(100% - 48px)}.header{padding:19px 0 18px}.brand{width:80px;padding:2px}.header nav{gap:17px;font-size:.875rem}.hero{padding:54px 0 60px}h1{font-size:1.8rem;line-height:1.85;letter-spacing:.015em;margin-bottom:28px}.hero-intro p{line-height:2.05;margin-bottom:17px}.desktop-break{display:none}.section{grid-template-columns:1fr;gap:28px;padding:34px 0 46px}h2{font-size:.875rem;color:var(--muted)}.service-list article{gap:10px;padding:24px 0}h3{font-size:1.0625rem}.service-list p{line-height:2}.company dl>div{grid-template-columns:75px minmax(0,1fr);gap:18px;padding:13px 0}.company dd{font-size:.9375rem;line-height:2}.footer-main{gap:14px;flex-wrap:wrap}.back-top{font-size:.875rem;margin-left:auto}.footer-main>span{display:none}.copyright{margin-top:20px}footer{padding-top:25px}}
@media(max-width:350px){.header nav{gap:12px}h1{font-size:1.6rem}}

.intro-label{font:400 .875rem/1.8 Arial,sans-serif;letter-spacing:.035em;color:#346f92;margin:0 0 26px}.hero{background:#f2f8fc;max-width:none;margin:32px 0 68px;padding:56px 52px 60px}h1{color:#51415f}.hero-intro{max-width:670px}.section-label{font:400 .875rem/1.8 Arial,sans-serif;color:#76588e;margin:0 0 9px;letter-spacing:.04em}.footer-name{color:#76588e}.header nav a:hover{color:#76588e}
@media(max-width:560px){.hero{margin:24px -12px 44px;padding:32px 20px 36px}.intro-label{margin-bottom:20px}.section-label{margin-bottom:5px;font-size:.8125rem}.section-heading{display:flex;align-items:baseline;gap:16px}.section-heading h2{color:var(--ink)}}

.hero h1{margin-bottom:28px}.hero-intro{max-width:29em;margin-left:auto;padding-left:28px;border-left:1px solid #c4d9e6}.hero-intro p{margin:0}
@media(max-width:560px){.hero h1{margin-bottom:26px}.hero-intro{max-width:none;margin-left:16px;padding-left:16px}}

.text-link{text-decoration:underline;text-decoration-color:#b2bdc6;text-underline-offset:5px}.link-note{font-size:.8125rem;color:#76588e;margin-left:22px}.header nav [aria-current="page"]{color:#76588e}.breadcrumb{display:flex;gap:15px;font-size:.8125rem;color:var(--muted);padding:28px 0}.profile-lead{display:grid;grid-template-columns:1fr 200px;gap:48px;align-items:center;padding:38px 40px 54px;background:#f2f8fc;margin:6px 0 58px}.profile-lead .intro-label{margin-bottom:25px}.profile-role{font-size:.875rem;color:var(--muted);margin:0 0 10px}.profile-lead h1{font-size:2.45rem;margin:0 0 5px;letter-spacing:.12em}.name-latin{font:400 .875rem/1.8 Arial,sans-serif;letter-spacing:.05em;color:var(--muted);margin:0}.profile-fields{font-size:.9375rem;line-height:2;margin:25px 0 0}.portrait{width:200px;height:auto;justify-self:end}.mobile-break{display:none}.affiliations,.career-list{list-style:none;padding:0;margin:0}.affiliations li,.career-list li{padding:23px 0;border-bottom:1px solid var(--line)}.affiliations li:first-child,.career-list li:first-child{padding-top:0}.affiliations li:last-child,.career-list li:last-child{border-bottom:0;padding-bottom:0}.affiliations p,.career-list p{font-size:1rem;line-height:2;color:var(--muted);margin:7px 0 0}.profile-bottom{border-top:1px solid var(--line);padding:26px 0 48px}.profile-bottom p{font-size:.8125rem;color:var(--muted);line-height:1.9;margin:0 0 24px}.profile-bottom>a{font-size:.875rem}
@media(max-width:650px){.profile-lead{grid-template-columns:1fr 125px;gap:22px;padding:30px 26px}.portrait{width:125px}.profile-lead h1{font-size:2rem}.profile-fields{font-size:.875rem}.mobile-break{display:initial}}
@media(max-width:480px){.header nav{gap:13px;font-size:.8125rem}.profile-lead{grid-template-columns:1fr;gap:26px;padding:28px 22px;margin:0 -12px 40px}.portrait{width:144px;justify-self:start}.profile-lead h1{font-size:2rem}.profile-fields{margin-top:17px}.profile-lead .intro-label{margin-bottom:22px}.profile-bottom{padding-bottom:36px}.link-note{display:block;margin-left:0;margin-top:4px}.breadcrumb{padding:22px 0}.profile-page .section-heading{flex-wrap:wrap;gap:5px 16px}}

.career-timeline{list-style:none;padding:0;margin:0}.career-timeline li{display:grid;grid-template-columns:65px minmax(0,1fr);gap:24px;padding:0 0 34px;margin:0 0 30px;border-bottom:1px solid var(--line)}.career-timeline li:last-child{border:0;margin-bottom:0;padding-bottom:0}.career-timeline time{font:400 1.0625rem/1.8 Arial,sans-serif;font-variant-numeric:tabular-nums;color:#76588e}.career-timeline p{font-size:1rem;line-height:2;color:var(--muted);margin:10px 0 0}
@media(max-width:560px){.career-timeline li{grid-template-columns:1fr;gap:8px;padding-bottom:26px;margin-bottom:26px}.career-timeline time{font-size:1rem}.career-timeline h3{font-size:1.0625rem}.career-timeline p{margin-top:9px}}

.career-summary p{font-size:1rem;line-height:2;color:var(--muted);margin:0 0 22px}.career-summary p:last-child{margin-bottom:0}

.affiliations-section{padding-block:34px 40px}.affiliations{width:100%;max-width:34rem}.affiliations li{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 20px;padding:12px 0}.affiliations h3{font-size:1rem;line-height:1.8}.affiliations p{margin:0;line-height:1.8;white-space:nowrap}
@media(max-width:560px){.affiliations-section{gap:18px;padding-block:28px 32px}.affiliations li{column-gap:16px;padding-block:10px}}

.profile-links{display:flex;flex-wrap:wrap;gap:10px 28px}

.services{grid-template-columns:120px minmax(0,1fr);gap:28px}.services h2{font-size:.9375rem}.services .section-label{font-size:.8125rem}.service-list article{grid-template-columns:170px minmax(0,1fr);gap:24px}.service-list h3{font-size:.9375rem;line-height:1.9}
@media(max-width:850px){.services{grid-template-columns:105px minmax(0,1fr);gap:24px}.service-list article{grid-template-columns:1fr;gap:10px}}
@media(max-width:560px){.services{grid-template-columns:1fr;gap:24px}.service-list h3{font-size:1rem}}

.service-name-unit{white-space:nowrap}
