/* 徐研究室トップページ専用: common.css / top.css 読込後に適用 */
.main_top { --lab-navy:#173c50; --lab-teal:#168b91; --lab-pale:#f2f8f8; color:#273943; }
.main_top .slide_banner.image-split { padding:48px 24px 56px; background:linear-gradient(115deg,#f1f9f9,#fff 72%); isolation:isolate; }
.main_top .slide_banner.image-split::before { content:none; display:none; }
.main_top .banner_flex { max-width:1100px; margin:auto; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:clamp(24px,4vw,56px); }
.main_top .banner_text { grid-column:1; grid-row:1; min-width:0; }
.main_top .banner_img { grid-column:2; grid-row:1; width:100%; min-width:0; }
.main_top .img_slider { position:relative; width:100%; aspect-ratio:5/4; overflow:hidden; background:#e9f1f3; border-radius:14px; box-shadow:0 12px 28px rgba(23,60,80,.12); }
.main_top .img_slider .slide_item { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; opacity:0; transition:opacity .6s; }
.main_top .img_slider .slide_item.active { opacity:1; }
.main_top .banner_text h2 { margin:0 0 20px; padding:0; font-family:'Noto Sans JP',sans-serif; font-size:clamp(23px,2.4vw,34px); line-height:1.55; text-align:left; font-weight:700; color:var(--lab-navy); }
.main_top .banner_text .inline-block { display:inline; }
.main_top .banner_text p, .main_top .banner_text .lead-text { font-size:15px; line-height:1.95; letter-spacing:.015em; margin:0 0 14px; text-align:left; }
.main_top .top_contents--item { padding:48px 24px 52px; background:#fff; }
.main_top .top_contents--item:nth-child(odd) { background:var(--lab-pale); }
.main_top .top_contents--item > section { max-width:1050px; margin:0 auto; padding:0; }
.main_top .top_contents--item h2 { margin:0 0 24px; padding:0; font-family:'Roboto','Noto Sans JP',sans-serif; color:var(--lab-teal); font-size:27px; line-height:1.45; font-weight:700; text-align:center; }
.main_top .top_contents--item h3 { margin:0 0 20px; padding:0; font-size:17px; line-height:1.6; text-align:center; color:var(--lab-navy); }
.main_top .column_two { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:36px; margin:0; }
.main_top .column_two--img, .main_top .column_two--text { width:auto; max-width:none; margin:0; padding:0; min-width:0; }
.main_top .column_two--img img { display:block; width:100%; height:auto; border-radius:10px; }
.main_top .column_two--text p { font-size:15px; line-height:1.85; margin:0 0 10px; }
.main_top .gallery-link a { color:var(--lab-teal); font-weight:700; text-decoration:underline; text-underline-offset:3px; }
.main_top .past-photos { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 0; padding:0; }
.main_top .past-photos a { display:block; padding:6px 10px; border-radius:6px; background:#eaf4f4; color:var(--lab-navy); font-size:12px; }
.main_top .research_list { max-width:980px; margin:0 auto 20px; }
.main_top .research_list img { display:block; width:100%; height:auto; object-fit:contain; }
.main_top .btn { max-width:360px; margin:22px auto 0; }
.main_top .btn a { padding:12px 18px; border:1px solid var(--lab-teal); border-radius:7px; background:#fff; color:var(--lab-teal); font-size:14px; font-weight:700; line-height:1.5; }
.main_top .btn a:hover { background:var(--lab-teal); color:#fff; }
.main_top .news_list { max-width:900px; margin:auto; }
.main_top .news_list_ul { list-style:none; padding:0; margin:0; }
.main_top .news_list_ul li { padding:14px 0; border-bottom:1px solid #d9e3e6; line-height:1.75; font-size:15px; }
.main_top .news_list_ul li:first-child { border-top:1px solid #d9e3e6; }
.main_top .news_list_ul li .text { display:flex; align-items:baseline; gap:20px; padding:0; }
.main_top .news_list_ul li .date, .main_top .news_list_ul li .news_date { flex:0 0 145px; width:145px; white-space:nowrap; font-size:14px; color:#596a74; }
.main_top .news_list_ul li .title, .main_top .news_list_ul li .news_title { flex:1; min-width:0; width:auto; max-height:none; overflow:visible; display:block; font-size:15px; line-height:1.75; }
.main_top .news_list_ul li a { color:var(--lab-navy); }
.main_top .news_list_ul li a:hover { color:var(--lab-teal); text-decoration:underline; }
.main_top .funds_list { max-width:920px; margin:0 auto; padding:0; list-style:none; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 16px; }
.main_top .funds_list li { padding:13px 16px; border:1px solid #dce8e9; background:#fff; border-radius:8px; font-size:14px; line-height:1.6; text-align:center; }
.main_top .funds_list a { color:var(--lab-navy); text-decoration:none; }
.main_top .funds_list a:hover { color:var(--lab-teal); text-decoration:underline; }
@media(max-width:767px) {
 .main_top .slide_banner.image-split { padding:26px 18px 36px; }
 .main_top .banner_flex { grid-template-columns:1fr; gap:22px; }
 .main_top .banner_img { grid-column:1; grid-row:1; }
 .main_top .banner_text { grid-column:1; grid-row:2; }
 .main_top .img_slider { aspect-ratio:5/3; }
 .main_top .banner_text h2 { font-size:23px; line-height:1.55; margin-bottom:14px; }
 .main_top .banner_text p, .main_top .banner_text .lead-text { font-size:14px; line-height:1.85; }
 .main_top .top_contents--item { padding:36px 18px 40px; }
 .main_top .top_contents--item h2 { font-size:23px; line-height:1.5; margin-bottom:18px; }
 .main_top .column_two { grid-template-columns:1fr; gap:18px; }
 .main_top .column_two--text { text-align:left; }
 .main_top .news_list_ul li .text { display:block; }
 .main_top .news_list_ul li .date, .main_top .news_list_ul li .news_date { display:block; width:auto; margin-bottom:5px; }
 .main_top .funds_list { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .main_top *, .main_top *::before, .main_top *::after { transition:none!important; animation:none!important; } }


/* Xu Laboratory 2026 home refresh — add AFTER css/common.css and css/top.css */
.main_top .lab-hero{position:relative;min-height:420px;display:flex;align-items:center;isolation:isolate;background:#092638 url("../media/images/common/xu_lab_hero_visual.jpg") center 52%/cover no-repeat;color:#fff;}
.main_top .lab-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,26,43,.94) 0%,rgba(4,30,47,.85) 42%,rgba(5,37,54,.12) 100%);z-index:-1;}
.main_top .lab-hero__inner{width:min(1100px,100%);margin:auto;padding:64px 30px;position:relative;z-index:1;}
.main_top .lab-eyebrow{color:#a4e7e4;font-size:12px;letter-spacing:.2em;font-weight:700;margin:0 0 20px;}
.main_top .lab-hero h1{font-family:'Noto Sans JP',sans-serif;font-size:clamp(36px,5vw,64px);line-height:1.25;letter-spacing:.02em;margin:0 0 15px;color:#fff;}
.main_top .lab-hero__tagline{font-size:clamp(17px,2.1vw,24px);font-weight:700;line-height:1.6;max-width:650px;margin:0 0 16px;}
.main_top .lab-hero__description{font-size:15px;line-height:1.9;max-width:580px;color:#e4f4f5;margin:0 0 24px;}
.main_top .lab-hero__cta{display:inline-block;padding:12px 24px;border:1px solid #a7e5e4;border-radius:99px;color:#fff;font-weight:700;font-size:14px;background:rgba(9,99,112,.42);}
.main_top .lab-hero__cta:hover{background:#fff;color:#134b60;}
.main_top .lab-feature-section{background:#fff!important;}
.main_top .lab-featured-section{background:#edf7f8!important;}
.main_top .lab-feature-inner{max-width:1100px!important;}
.main_top .lab-section-kicker{color:#168b91;text-align:center;font-size:12px;font-weight:700;letter-spacing:.18em;margin:0 0 8px;}
.main_top .lab-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.main_top .lab-pillar{position:relative;padding:27px 23px 24px;border:1px solid #d9e8ea;border-radius:14px;background:linear-gradient(150deg,#f7fcfc,#fff);box-shadow:0 8px 22px rgba(12,68,87,.05);}
.main_top .lab-pillar__num{font-size:29px;font-weight:700;color:#168b91;letter-spacing:.04em;}
.main_top .lab-pillar__symbol{float:right;font-size:38px;line-height:1;color:#4bbdc2;}
.main_top .lab-pillar h3{margin:12px 0 3px;text-align:left;color:#153d50;font-size:19px;line-height:1.45;}
.main_top .lab-pillar__en{color:#168b91;font-size:12px!important;margin:0 0 12px!important;font-weight:700;}
.main_top .lab-pillar p{font-size:14px;line-height:1.85;margin:12px 0 0;color:#435964;}
.main_top .lab-featured{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px;align-items:center;background:#fff;border-radius:16px;padding:22px;box-shadow:0 8px 26px rgba(12,68,87,.07);}
.main_top .lab-featured__visual img{display:block;width:100%;height:260px;object-fit:cover;border-radius:11px;}
.main_top .lab-featured__label{font-size:12px;letter-spacing:.15em;color:#168b91;font-weight:700;margin:0 0 8px;}
.main_top .lab-featured__copy h3{font-size:clamp(19px,2vw,24px);line-height:1.5;color:#173c50;margin:0 0 12px;}
.main_top .lab-featured__copy>p:not(.lab-featured__label){font-size:15px;line-height:1.85;color:#435964;margin:0 0 18px;}
.main_top .lab-inline-link{font-weight:700;color:#087b85;border-bottom:1px solid #087b85;padding-bottom:3px;}
.main_top .lab-news-notice{max-width:780px;margin:0 auto;font-size:15px;line-height:1.9;text-align:center;}
@media(max-width:767px){.main_top .lab-hero{min-height:390px;background-position:58% center;}.main_top .lab-hero:before{background:linear-gradient(90deg,rgba(4,26,43,.91),rgba(4,30,47,.58));}.main_top .lab-hero__inner{padding:46px 22px;}.main_top .lab-pillars{grid-template-columns:1fr;gap:12px;}.main_top .lab-pillar{padding:20px;}.main_top .lab-featured{grid-template-columns:1fr;padding:15px;gap:20px;}.main_top .lab-featured__visual img{height:200px;}}
