:root{--ink:#1d2733;--navy:#17365d;--muted:#66717d;--line:#dce2e8;--paper:#fff;--soft:#f6f8fa;--max:1080px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif;line-height:1.85;font-size:16px}a{color:var(--navy);text-decoration:none}a:hover{text-decoration:underline}.wrap{width:min(var(--max),calc(100% - 48px));margin:auto}.site-header{border-bottom:1px solid var(--line);background:#fff}.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{font-family:Georgia,"Times New Roman",serif;font-size:22px;letter-spacing:.04em;color:var(--ink)}.brand small{display:block;font-family:inherit;font-size:11px;letter-spacing:.18em;color:var(--muted);text-transform:uppercase}.nav{display:flex;gap:24px;flex-wrap:wrap}.nav a{font-family:Arial,sans-serif;font-size:12px;letter-spacing:.08em;color:#354252}.hero{padding:68px 0 58px;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:190px 1fr;gap:54px;align-items:start}.portrait{width:151px;height:171px;object-fit:cover;border:1px solid #cbd3da}.eyebrow{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--navy);font-weight:700;margin:0 0 8px}.hero h1{font-family:Georgia,"Yu Mincho",serif;font-size:42px;font-weight:500;line-height:1.25;margin:0 0 8px}.roman{font-size:18px;color:var(--muted);letter-spacing:.04em}.position{margin:22px 0 0;font-size:16px}.lead{max-width:720px;margin:20px 0 0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:18px;line-height:2}.keywords{margin-top:24px;color:var(--muted);font-family:Arial,"Yu Gothic",sans-serif;font-size:13px}.section{padding:62px 0;border-bottom:1px solid var(--line)}.section-head{display:grid;grid-template-columns:210px 1fr;gap:30px;margin-bottom:34px}.section h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:24px;font-weight:500;letter-spacing:.04em}.section-head p{margin:0;color:var(--muted);max-width:700px}.research-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line)}.research-item{padding:25px 28px 26px 0;border-bottom:1px solid var(--line)}.research-item:nth-child(odd){border-right:1px solid var(--line)}.research-item:nth-child(even){padding-left:28px}.num{font-family:Georgia,serif;color:#8a96a2;font-size:13px}.research-item h3{font-size:17px;margin:5px 0 7px}.research-item p{margin:0;color:var(--muted);font-size:14px}.project-row{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:18px 0;border-top:1px solid var(--line)}.project-row:last-child{border-bottom:1px solid var(--line)}.project-row strong{font-family:Georgia,serif;font-weight:500;color:var(--navy)}.project-row p{margin:0}.links{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.link-card{display:block;border:1px solid var(--line);padding:22px;min-height:118px}.link-card:hover{background:var(--soft);text-decoration:none}.link-card b{display:block;font-family:Georgia,"Yu Mincho",serif;font-size:16px;font-weight:500;margin-bottom:5px}.link-card span{font-size:12px;color:var(--muted)}.more{margin-top:28px;text-align:right;font-size:13px}.footer{padding:36px 0 48px;color:var(--muted);font-size:12px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.note{font-size:12px;color:var(--muted)}
@media(max-width:760px){.wrap{width:min(100% - 30px,var(--max))}.header-inner{align-items:flex-start;padding:20px 0;flex-direction:column}.nav{gap:14px 18px}.hero{padding:42px 0}.hero-grid{grid-template-columns:1fr;gap:28px}.portrait{width:151px}.hero h1{font-size:34px}.section{padding:46px 0}.section-head{grid-template-columns:1fr;gap:10px}.research-grid{grid-template-columns:1fr}.research-item:nth-child(odd){border-right:0}.research-item:nth-child(even){padding-left:0}.project-row{grid-template-columns:1fr;gap:5px}.links{grid-template-columns:1fr}.footer-grid{flex-direction:column}}

.page-title{padding:52px 0 34px;border-bottom:1px solid var(--line)}.page-title h1{font-family:Georgia,"Yu Mincho",serif;font-size:36px;font-weight:500;margin:0 0 8px}.page-title p{margin:0;color:var(--muted)}.content{padding:52px 0 70px}.content h2{font-family:Georgia,"Yu Mincho",serif;font-weight:500;font-size:24px;margin:48px 0 18px}.content h2:first-child{margin-top:0}.content h3{font-size:17px;margin:28px 0 8px}.content p{max-width:820px}.profile-grid{display:grid;grid-template-columns:180px 1fr;gap:42px}.data-table{width:100%;border-collapse:collapse;margin:18px 0 32px}.data-table th,.data-table td{text-align:left;vertical-align:top;padding:12px 14px;border-top:1px solid var(--line)}.data-table th{width:180px;color:var(--navy);font-weight:500}.tagline{font-family:"Yu Mincho",serif;font-size:20px;line-height:1.9}.year-grid{display:grid;grid-template-columns:120px 1fr;border-top:1px solid var(--line)}.year-grid>div{padding:14px 0;border-bottom:1px solid var(--line)}.year{font-family:Georgia,serif;color:var(--navy)}.small{font-size:13px;color:var(--muted)}.notice{padding:18px 20px;background:var(--soft);border-left:3px solid var(--navy);margin:24px 0}.active{font-weight:700;color:var(--navy)!important}@media(max-width:760px){.profile-grid{grid-template-columns:1fr}.data-table th{width:120px}.year-grid{grid-template-columns:90px 1fr}}

/* Graduation thesis archive */
.archive-wrap{padding-top:2rem;padding-bottom:4rem}.archive-year{padding:1.6rem 0 2rem;border-bottom:1px solid #d9dee5}.archive-year h2{margin:0;color:#18324a;font-size:1.35rem}.archive-year h2 span{font-size:.9rem;font-weight:400;color:#687786;margin-left:.7rem}.archive-meta{margin:.3rem 0 1rem;color:#687786;font-size:.9rem}.thesis-list{margin:0;padding-left:1.4rem}.thesis-list li{padding:.55rem 0}.thesis-title{line-height:1.65}.thesis-author{margin-top:.15rem;color:#596876;font-size:.92rem}.note{font-size:.88rem;color:#657381;border-left:3px solid #aeb9c4;padding-left:.8rem}

/* Teaching archive */
.teaching-year{padding:1.25rem 0 1.5rem;border-top:1px solid var(--line)}.teaching-year:last-of-type{border-bottom:1px solid var(--line)}.teaching-year-head{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.teaching-year-head h3{font-family:Georgia,"Yu Mincho",serif;font-size:20px;font-weight:500;margin:0;color:var(--navy)}.teaching-year-head>span{font-size:12px;color:var(--muted)}.course-list{display:flex;flex-wrap:wrap;gap:7px 18px;margin:.8rem 0 0;padding:0;list-style:none}.course-list li{font-size:14px;position:relative;padding-left:12px}.course-list li:before{content:"–";position:absolute;left:0;color:#9aa5af}.current-badge{display:inline-block;margin-left:8px;padding:2px 6px;border:1px solid var(--line);font:10px Arial,sans-serif;letter-spacing:.08em;color:var(--muted);vertical-align:middle}.table-scroll{overflow-x:auto}.projects-table{min-width:900px}.projects-table th:nth-child(1){width:70px}.projects-table th:nth-child(2){width:70px}.projects-table th:nth-child(3){width:80px}.projects-table th:nth-child(5){width:230px}.projects-table td{font-size:14px}@media(max-width:760px){.teaching-year-head{align-items:flex-start;flex-direction:column;gap:2px}.course-list{display:block}.course-list li{margin:.35rem 0}}

/* Final publication polish */
.official-links{display:grid;gap:8px;margin-top:18px}.official-links a{width:fit-content}.nav a{padding:5px 0}.link-card{transition:background .15s ease,border-color .15s ease}.hero .portrait,.profile-grid .portrait{display:block}.footer a{color:inherit}@media(max-width:920px){.nav{gap:12px 16px}.nav a{font-size:11px}.header-inner{gap:18px}}

.last-updated{display:inline-block;margin-top:.45rem;font-size:.82rem;opacity:.72;}

/* Clearly identifiable article / evidence links */
.evidence-link,.official-links a,.project-row a[target="_blank"],.content a[target="_blank"]{color:#0645ad;text-decoration:none}
.evidence-link:hover,.official-links a:hover,.project-row a[target="_blank"]:hover,.content a[target="_blank"]:hover{color:#043b91;text-decoration:underline}
.evidence-row{margin:.45rem 0 1.2rem}

.archive-links{margin:1rem 0 1.5rem;border-top:1px solid #d9dee5}.archive-link-row{display:grid;grid-template-columns:72px 1fr;gap:18px;padding:12px 0;border-bottom:1px solid #e5e9ee}.archive-link-row strong{color:#4d5968}.archive-link-row a{color:#075bb5;text-decoration:none}.archive-link-row a:hover{text-decoration:underline}@media(max-width:760px){.archive-link-row{grid-template-columns:56px 1fr;gap:10px}}
/* Publications & professional activities */
.achievement-nav{display:flex;flex-wrap:wrap;gap:.55rem 1rem;margin:0 0 2rem;padding:1rem 0;border-top:1px solid #d9dee5;border-bottom:1px solid #d9dee5}
.achievement-nav a{color:#075bb5;text-decoration:none;font-size:.92rem}.achievement-nav a:hover{text-decoration:underline}
.achievement-block{margin:0 0 2.2rem;scroll-margin-top:90px}.achievement-block h3{margin:0 0 .8rem;padding-bottom:.45rem;border-bottom:1px solid #d9dee5;font-size:1.15rem}
.achievement-en{margin-left:.5rem;color:#7a8491;font-size:.78rem;font-weight:500;letter-spacing:.03em}.achievement-list{margin:.2rem 0 0;padding-left:1.25rem}.achievement-list li{margin:.48rem 0;line-height:1.75}
.achievement-note{margin-top:2.5rem;padding-top:1rem;border-top:1px solid #d9dee5;color:#5d6672;font-size:.92rem}
.history-overview{margin:1.1rem 0 2rem;padding:1rem 0;border-top:1px solid #d9dee5;border-bottom:1px solid #d9dee5}.history-overview p{margin:.55rem 0;line-height:1.75}.history-overview strong{display:inline-block;min-width:92px;color:#24364b}
@media(max-width:760px){.achievement-en{display:block;margin:.15rem 0 0}.achievement-list{padding-left:1.1rem}}

/* HOME navigation: clear clickable hover state */
.nav a{padding:8px 10px;border-radius:2px;transition:background-color .15s ease,color .15s ease;text-decoration:none}
.nav a:hover,.nav a:focus-visible{background:#075bb5;color:#fff;text-decoration:none}
