@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&display=swap";:root{--ink:#121212;--paper:#fff;--blue:#1c6e96;--blue-bright:#4fc3e0;--blue-tint:#e3f5fa;--muted:#5c6265;--line:#00000024;--serif:var(--sans);--sans:"Noto Sans JP", -apple-system, BlinkMacSystemFont, "Helvetica Neue", sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);font-family:var(--sans);margin:0}a{color:inherit;text-decoration:none}.site-header{background:var(--paper);z-index:5;justify-content:space-between;align-items:center;width:100%;height:92px;padding:0 5.5vw;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;display:flex}.brand-mark{background:var(--blue);color:var(--paper);letter-spacing:.08em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:14px;font-weight:700;display:flex;overflow:hidden}.brand-mark img{object-fit:cover;width:100%;height:100%}.brand-copy{letter-spacing:.02em;text-transform:uppercase;font-size:14px;line-height:1.25;display:grid}.brand-copy small{color:var(--muted);letter-spacing:.09em;margin-top:4px;font-size:13px}.header-right{align-items:center;gap:34px;display:flex}.main-nav{gap:38px;display:flex}.nav-item{position:relative}.nav-dropdown{background:var(--paper);border:1px solid var(--line);z-index:6;flex-direction:column;min-width:190px;padding:8px 0;display:none;position:absolute;top:100%;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #0000001a}.nav-item:hover .nav-dropdown,.nav-item:focus-within .nav-dropdown{display:flex}.nav-dropdown a{color:var(--ink);white-space:nowrap;padding:11px 18px;font-size:13px;font-weight:600}.nav-dropdown a:hover{background:var(--blue-tint);color:var(--blue)}.lang-toggle{letter-spacing:.1em;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.lang-toggle a{color:var(--blue)}.lang-toggle strong{color:var(--ink)}.lang-toggle span{color:var(--line)}.nav-link{letter-spacing:.14em;text-transform:uppercase;font-size:14px;position:relative}.nav-link:after{background:var(--blue);content:"";transform-origin:0;width:100%;height:2px;transition:transform .25s;position:absolute;bottom:-8px;left:0;transform:scaleX(0)}.nav-link:hover:after{transform:scaleX(1)}.nav-dot{color:var(--blue);margin-left:5px;font-size:14px}.hero{background:var(--blue-bright);color:var(--paper);min-height:730px;padding:108px 10vw 80px;position:relative;overflow:hidden}.hero-image{opacity:.9;background:linear-gradient(90deg,#4fc3e0eb 20%,#4fc3e02e),url(https://images.unsplash.com/photo-1494412574643-ff11b0a5c1c3?auto=format&fit=crop&w=1800&q=85) 50%/cover;position:absolute;inset:0 0 0 37%}.hero:after{background:var(--ink);content:"";width:29%;height:11px;position:absolute;top:0;left:0}.hero-content{z-index:1;animation:.8s ease-out both rise-in;position:relative}.hero-content em{color:var(--ink)}.eyebrow{letter-spacing:.2em;text-transform:uppercase;margin:0 0 22px;font-size:14px;font-weight:700}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.045em;margin-bottom:32px;font-size:clamp(48px,7vw,98px);font-weight:500;line-height:.99}em{color:var(--blue);font-family:var(--serif);font-weight:400}.hero-intro{color:#eafaff;margin-bottom:42px;font-size:20px;line-height:1.9}.button{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:26px;padding:17px 20px;font-size:14px;font-weight:700;transition:background .2s,color .2s;display:inline-flex}.button span{font-size:18px;line-height:10px}.button-light{color:var(--paper);border:1px solid #fff9}.button-light:hover{background:var(--paper);color:var(--blue)}.hero-scroll{letter-spacing:.2em;transform-origin:100%;align-items:center;gap:15px;font-size:9px;display:flex;position:absolute;bottom:42px;right:5.5vw;transform:rotate(90deg)}.hero-scroll span{background:var(--ink);width:60px;height:1px}.intro-band{grid-template-columns:1fr 3fr;gap:5vw;padding:105px 10vw 110px;animation:.8s ease-out .12s both rise-in;display:grid}.section-label,.section-number{color:var(--blue);letter-spacing:.16em;font-size:14px;font-weight:700}.intro-copy{grid-template-columns:1fr 1fr;gap:42px;display:grid}.lead{font-family:var(--serif);font-size:27px;line-height:1.4}.lead span{color:var(--blue)}.about-summary{color:var(--muted);margin:24px 0 0;font-size:17px;line-height:2}.about-text{color:var(--muted);max-width:420px;margin:0;font-size:17px;line-height:2}.topic-chips{flex-wrap:wrap;gap:8px 10px;max-width:420px;margin-top:18px;display:flex}.topic-chips span{border:1px solid var(--line);color:var(--blue);border-radius:999px;padding:7px 14px;font-size:13px;font-weight:600}.about-audience{border-top:1px solid var(--line);grid-column:2;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:90px;padding-top:48px;display:grid}.about-audience>div{border-top:2px solid var(--blue);padding-top:20px}.audience-kicker{color:var(--blue);letter-spacing:.16em;margin-bottom:12px;font-size:13px;font-weight:700;display:block}.about-audience h3{margin:0 0 12px;font-size:19px;font-weight:600}.about-audience p{color:var(--muted);margin:0;font-size:16px;line-height:1.85}.section-heading{text-align:center;margin-bottom:57px;display:block}.section-heading h2{letter-spacing:-.08em;margin:0;font-size:clamp(54px,7vw,95px);font-weight:500;line-height:.8}.section-heading .eyebrow{margin-bottom:18px}.section-number{display:none}.news-section{background:var(--blue-tint);border-top:1px solid var(--line);padding:110px 10vw}.news-latest{max-width:800px;margin:0 auto}.news-item{border-bottom:1px solid var(--line);text-align:left;grid-template-columns:96px 1fr;gap:20px;padding:16px 0;display:grid}.news-item time{color:var(--blue);font-size:14px;font-weight:600}.news-item p{color:var(--muted);margin:0;font-size:15px;line-height:1.8}.news-item p a{color:var(--blue);white-space:nowrap;font-weight:600}.news-more{border-bottom:1px solid;margin-top:26px;padding-bottom:6px;font-size:14px;display:inline-block}.content-section,.course-section{border-top:1px solid var(--line);padding:110px 10vw}.labo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.feature-tile,.research-list a{aspect-ratio:1;box-sizing:border-box;border:1px solid #00000038;flex-direction:column;padding:28px;transition:transform .25s,background .25s;display:flex;position:relative}.feature-tile:hover{transform:translateY(-7px)}.tile-profile{color:var(--paper);background:linear-gradient(#12121261,#121212db),url(/images/profile.jpg) 50%/cover}.tile-team{color:#fff;background:linear-gradient(#1c6e9661,#1c6e96db),url(/images/team.jpg) 50%/cover}.tile-access{color:#fff;background:linear-gradient(#12121259,#121212db),url(https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1000&q=85) 50%/cover}.tile-kicker,.course-index{letter-spacing:.17em;font-size:14px}.feature-tile h3{font-family:var(--serif);margin:auto 0 12px;font-size:31px;font-weight:400}.feature-tile p{opacity:.75;max-width:250px;margin:0;font-size:16px;line-height:1.7}.tile-arrow{color:var(--blue);font-size:25px;position:absolute;top:25px;right:28px}.detail-section{grid-template-columns:1fr 1fr;align-items:stretch;min-height:560px;display:grid}.detail-section:nth-of-type(2n){background:var(--blue-tint)}.detail-image{min-height:420px}.profile-detail-image{background:url(/images/profile.jpg) 50%/cover}.team-detail-image{background:url(/images/team.jpg) 50%/cover}.access-detail-image{background:url(https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=1400&q=85) 50%/cover}.detail-content{align-self:center;padding:70px 10vw}.detail-content h2{letter-spacing:-.06em;margin:0 0 28px;font-size:clamp(44px,5vw,70px);font-weight:500;line-height:1}.detail-lead{max-width:450px;margin-bottom:32px;font-size:19px;line-height:1.9}.profile-list{border-top:1px solid var(--line);max-width:500px;margin:0}.profile-list div{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;gap:18px;padding:15px 0;display:grid}.profile-list dt{color:var(--muted);font-size:13px}.profile-list dd{margin:0;font-size:14px;line-height:1.7}.member-list{border-top:1px solid var(--line);max-width:470px}.member-list div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 0;display:flex}.member-list strong{font-size:14px;font-weight:500}.member-list span{color:var(--muted);letter-spacing:.08em;font-size:12px}.access-address{color:var(--muted);margin-bottom:27px;font-size:14px;line-height:2}.text-link{border-bottom:1px solid var(--ink);gap:20px;padding-bottom:8px;font-size:14px;display:inline-flex}.text-link span{color:var(--blue);font-size:17px}.research-section{background:var(--paper);border-top:1px solid var(--line);color:var(--ink);padding:110px 10vw}.light-heading .section-number,.light-heading .eyebrow{color:var(--blue)}.light-heading .heading-note{color:var(--ink)}.research-layout{display:block}.research-statement{letter-spacing:-.06em;text-align:center;max-width:720px;margin:0 auto 60px;font-size:clamp(34px,4.2vw,60px);line-height:1.12}.research-statement em{color:var(--blue)}.research-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.research-list a{color:#fff;flex-direction:column;gap:0;display:flex;position:relative}.research-list a:first-child{background:linear-gradient(#12121261,#121212db),url(/images/lecture.jpg) 50%/cover}.research-list a:nth-child(2){background:linear-gradient(#1c6e9659,#1c6e96db),url(https://image.yodobashi.com//product/100/000/009/004/285/030/100000009004285030_10204_001.jpg) 50%/cover}.research-list a:hover{filter:brightness(1.08);transform:translateY(-7px)}.research-list span,.research-list small{color:#fff;letter-spacing:.17em;opacity:.85;font-size:14px}.research-list strong{color:#fff;margin-top:auto;font-size:31px;font-weight:400}.research-list small{margin-top:12px}.research-list b{color:var(--blue-bright);font-size:25px;font-weight:400;position:absolute;top:25px;right:28px}.course-card{border:1px solid var(--line);background:linear-gradient(#12121266,#121212e0),url(/images/lecture.jpg) 50%/cover;justify-content:space-between;align-items:center;width:100%;min-height:260px;padding:44px 50px;display:flex}.course-card h3{font-family:var(--serif);margin:18px 0 12px;font-size:31px;font-weight:400}.course-card p:last-child{color:#fff;opacity:.8;margin-bottom:0;font-size:16px;line-height:1.7}.button-dark{background:var(--ink);color:var(--paper)}.button-dark:hover{background:var(--blue)}.course-card .button-dark{background:var(--paper);color:var(--ink)}.course-card .button-dark:hover{background:var(--blue);color:#fff}.contact-band{background:var(--ink);color:var(--paper);padding:100px 10vw}.contact-band h2{letter-spacing:-.07em;margin:0 0 38px;font-size:clamp(45px,6vw,82px);font-weight:500;line-height:1.02}.contact-band em{color:var(--blue-bright)}footer{padding:60px 5.5vw 27px}.footer-sitemap{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-bottom:34px;padding-top:44px;display:grid}.footer-heading{color:var(--ink);letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px;font-size:13px;font-weight:700;display:block}.footer-sitemap a{color:var(--ink);opacity:.75;margin-bottom:10px;font-size:14px;transition:opacity .2s;display:block}.footer-sitemap a:hover{opacity:1;text-decoration:underline}.footer-bottom{letter-spacing:.09em;justify-content:space-between;font-size:14px;display:flex}.menu-toggle,.mobile-break{display:none}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=760px){.site-header{height:75px;padding:0 6vw}.main-nav{background:var(--paper);flex-direction:column;gap:25px;width:100%;padding:30px 6vw 35px;display:none;position:absolute;top:75px;left:0}.nav-dropdown{box-shadow:none;background:0 0;border:0;min-width:0;margin-top:14px;padding:0;display:flex;position:static;left:auto;transform:none}.nav-dropdown a{color:var(--muted);padding:8px 0 8px 14px;font-weight:500}.main-nav.is-open{display:flex}.menu-toggle{background:0 0;border:0;flex-direction:column;gap:6px;padding:10px 0 10px 10px;display:flex}.menu-toggle span{background:var(--ink);width:28px;height:1px;display:block}.hero{min-height:720px;padding:95px 8vw 70px}.hero-image{inset:39% 0 0}.hero:after{width:45%}.hero-scroll{display:none}.mobile-break,.intro-band,.intro-copy,.research-layout{display:block}.intro-band{padding:75px 8vw}.about-audience{grid-template-columns:1fr;gap:30px;margin-top:56px;padding-top:32px}.about-summary{margin-top:28px}.content-section,.course-section,.research-section,.news-section{padding:80px 8vw}.section-heading{margin-bottom:42px}.labo-grid{display:block}.feature-tile{min-height:285px;margin-bottom:14px}.detail-section{flex-direction:column;min-height:0;display:flex}.detail-section:nth-of-type(2n) .detail-image{order:2}.detail-image{min-height:300px}.detail-content{padding:70px 8vw}.detail-content h2{font-size:56px}.profile-list div{grid-template-columns:80px 1fr}.member-list span{font-size:9px}.research-statement{margin-bottom:55px}.research-list{grid-template-columns:1fr}.research-list small{display:none}.course-card{flex-direction:column;align-items:flex-start;padding:32px 28px}.course-card .button{margin-top:27px}.news-item{display:block}.news-item time{margin-bottom:4px;display:block}.contact-band{padding:78px 8vw}footer{padding:50px 8vw 22px}.footer-sitemap{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;padding-top:34px}.footer-bottom{line-height:2;display:block}}
