 @charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */
.root_daum_roughmap {width:100% !important; height:clamp(250px, calc( 400 / var(--inner) * 100vw ), 400px) !important;}
.root_daum_roughmap .wrap_map {height:clamp(250px, calc( 400 / var(--inner) * 100vw ), 400px) !important;}
.roughmap_lebel_text {line-height:0 !important; font-size:0 !important;}
.roughmap_lebel_text:after {display: none; content:"위노베이트"; font-size:12px; line-height:15px;}
.roughmap_maker_label .roughmap_lebel_text,
.roughmap_maker_label:after {display: none !important;}

.bullet-item .bullet-list {position:relative; padding-left:15px; margin-top:10px; line-height:1.3;}
.bullet-item .bullet-list:first-child {margin-top:0;}
.bullet-item .bullet-list::before {position:absolute; content:''; left:0; top:9px; width:3px; height: 3px; background:var(--color-primary); border-radius: 50%;}
.bullet-item .bullet-list.none {padding-left: 0;}
.bullet-item .bullet-list.none::before {display: none;}
.bulletitem2 { padding-left: 0.6em; text-indent: -0.6em;}

/*  css 파일 추가 처리(선택사항)  */
.fr-box .swiper-wrapper {display:block;}

.blocker {z-index: 100;}
.modal {max-width:980px; width: 100%;}

.bg-gray {background:#fafafa;}
.overhidden {overflow: hidden;}
.subsec-pd {padding: clamp(50px, calc( 150 / var(--inner) * 100vw ), 150px) 0;}
.subsec-pd2 {padding: clamp(50px, calc( 120 / var(--inner) * 100vw ), 120px) 0;}

.radiobx {display: flex; flex-wrap: wrap;}
.radiobx .item {display: flex;align-items: center; min-height: clamp(38px, calc( 44 / var(--inner) * 100vw ), 44px);}
.radiobx .item:not(:last-child) {margin-right: clamp(15px, calc( 40 / var(--inner) * 100vw ), 40px);}

/* academic */
.academic {display:flex; flex-direction:column; gap:var(--padding-120);}
.academic-group {display:flex; flex-direction:column; gap:var(--padding-80);}
.academic-intro {display:flex; flex-direction:column; gap:var(--padding-40);}
.academic-head {display:flex; flex-direction:column; gap:var(--padding-16);}
.academic-tit {font-size:var(--font-size-36); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.28;}
.academic-desc {font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.03em; line-height:1.7;}
.academic-visual {display:flex; flex-direction:column; gap:5px;}
.academic-img {height:clamp(220px, calc(490 / var(--inner) * 100vw), 490px); border-radius:32px; overflow:hidden;}
.academic-img img {width:100%; height:100%; object-fit:cover;}
.academic-stats {display:flex; align-items:stretch; flex-wrap: wrap;}
.academic-stat {flex:1 1 33.33%; min-width:0; display:flex; flex-direction:column; gap:var(--padding-40); padding:var(--padding-50); background:var(--color-white); border-right:1px solid #ddd;}
.academic-stat:last-child {border-right:0;}
.academic-stat .stat-icon {width:40px; height:40px; flex-shrink:0;}
.academic-stat .stat-icon img {width:100%; height:100%; object-fit:contain;}
.academic-stat .stat-txt {display:flex; flex-direction:column; gap:var(--padding-16);}
.academic-stat .stat-num {display:flex; align-items:flex-end; gap:4px;}
.academic-stat .stat-num .num {font-size:var(--font-size-80); font-weight:600; color:var(--color-primary); letter-spacing:-0.02em; line-height:1;}
.academic-stat .stat-num .unit {padding-bottom:6px; font-size:var(--font-size-22); color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.45;}
.academic-stat .stat-label {font-size:var(--font-size-18); color:var(--color-body); letter-spacing:-0.02em; line-height:1.67;}
.academic-member {display:flex; flex-direction:column; gap:var(--padding-40);}
.academic-associate {display:flex; flex-direction:column; gap:var(--padding-40);}
.academic-sec-tit {font-size:var(--font-size-36); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.17;}
.academic-card-list {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--padding-40);}
.academic-card-list.type-associate {grid-template-columns:repeat(3, minmax(0, 1fr));}
.academic-card {padding:var(--padding-40); border:1px solid #ddd; border-radius:16px; background:var(--color-white);}
.academic-card-list.type-associate .academic-card {background:#fafbfa;}
.academic-card .card-body {display:flex; flex-direction:column; gap:var(--padding-35);}
.academic-card .card-top {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--padding-40);}
.academic-card .card-head {display:flex; flex-direction:column; align-items:flex-start; gap:9px; flex:1 1 auto; min-width:0;}
.academic-card .card-badge {display:inline-flex; align-items:center; justify-content:center; width:62px; height:30px; padding:0 var(--padding-22); border-radius:24px; background:var(--color-primary); font-size:var(--font-size-14); font-weight:600; color:var(--color-white); letter-spacing:-0.02em; line-height:1;}
.academic-card .card-name {font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.03em; line-height:1.54;}
.academic-card .card-logo {flex-shrink:0; width:clamp(50px, calc( 80 / var(--inner) * 100vw ), 80px); height:auto; aspect-ratio: 1/1;}
.academic-card .card-logo img {width:100%; height:100%; object-fit:contain;}
.academic-card .card-line {height:1px; background:#ddd;}
.academic-card .card-type {display:flex; align-items:center; gap:8px; font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.03em; line-height:1.7;}
.academic-card .card-type .dot {flex-shrink:0; width:6px; height:6px; border-radius:50%; background:var(--color-primary);}



/* greetings */
.greetings {display:flex; flex-direction:column; overflow: hidden;}
.greetings-intro {display:flex; align-items:flex-start; gap:var(--padding-60);margin-bottom:var(--padding-120); position: relative;}
.greetings-visual {flex-shrink:0; width:clamp(300px, calc(600 / var(--inner) * 100vw), 600px);}
.greetings-img {border-radius:32px; overflow:hidden;}
.greetings-img img {width:100%; height:100%; object-fit:cover;}
.greetings-body { flex:1 1 auto; min-width:0; padding-top:var(--padding-80);}
.greetings-text {display:flex; flex-direction:column; gap:var(--padding-40); max-width:750px;}
.greetings-lead {display:flex; flex-direction:column; gap:0; font-size:var(--font-size-32); color:var(--color-body); letter-spacing:-0.02em; line-height:1.44;}
.greetings-lead .lead-sub {font-weight:500;}
.greetings-lead .lead-main {font-weight:700;}
.greetings-desc {display:flex; flex-direction:column; gap:var(--padding-24);}
.greetings-desc p {font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.greetings-watermark {position:absolute; left:51%; bottom:0;font-size:clamp(60px, calc(134 / var(--inner) * 100vw), 134px); font-weight:800; color:var(--color-light); letter-spacing:-0.02em; line-height:1em; white-space:nowrap; pointer-events:none; user-select:none; z-index: -1;}
.greetings-profile {background:#f7f9f8;}
.greetings-profile-inner {max-width:1400px; margin:0 auto; padding:var(--padding-120) var(--container-space);}
.greetings-profile-tit {font-size:var(--font-size-36); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.28;}
.greetings-info {display:flex; gap:var(--padding-40); margin-top:var(--padding-60);}
.greetings-info-card {flex:1 1 50%; min-width:0; border:1px solid #ddd; border-radius:16px; overflow:hidden; background:var(--color-white);}
.greetings-info-card .info-head {padding:var(--padding-20) var(--padding-30); background:var(--color-primary);}
.greetings-info-card .info-tit {font-size:var(--font-size-20); font-weight:600; color:var(--color-white); letter-spacing:-0.02em; line-height:1.7;}
.greetings-info-card .info-body {padding:var(--padding-30);}
.greetings-info-card .info-list {display:flex; flex-direction:column; gap:var(--padding-12);}
.greetings-info-card .info-list li {position:relative; padding-left:13px; font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.greetings-info-card .info-list li::before {position:absolute; content:''; left:0; top:0.85em; width:5px; height:5px; margin-top:-2.5px; border-radius:50%; background:var(--color-primary);}

/* vision */
.vision {display:flex; flex-direction:column; gap:var(--padding-120); }
.vision-block {display:flex; flex-direction:column; gap:var(--padding-60);}
.vision-head {display:flex; flex-direction:column; align-items:center; gap:var(--padding-16); text-align:center;}
.vision-sec-tit {font-size:var(--font-size-36); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.28;}
.vision-desc {display:flex; flex-direction:column; }
.vision-desc p {font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.vision-diagram img {width:100%; height:auto; vertical-align:top;}
.vision-value {display:flex; flex-direction:column; gap:var(--padding-60);}
.vision-value-desc {font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.vision-card-list {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--padding-40);}
.vision-card {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--padding-80); padding:var(--padding-40); border-radius:16px; background:var(--color-white); box-shadow:6px 6px 15px rgba(0,0,0,0.1);}
.vision-card .card-body {display:flex; flex-direction:column; gap:var(--padding-32); flex:1 1 auto; min-width:0;}
.vision-card .card-num-wrap {align-self:flex-start;}
.vision-card .card-num {display:inline-flex; align-items:center; justify-content:center; min-width:50px; height:24px; padding:1px var(--padding-16); border-radius:24px; background:var(--color-black); font-size:var(--font-size-14); font-weight:600; color:var(--color-white); letter-spacing:-0.02em; line-height:1.57;}
.vision-card .card-text {display:flex; flex-direction:column; gap:var(--padding-24);}
.vision-card .card-tit {font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.54;}
.vision-card .card-text p {font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.vision-card .card-icon {flex-shrink:0; width:clamp(30px, calc( 48 / var(--inner) * 100vw ), 48px); height:auto; aspect-ratio: 1/1;}
.vision-card .card-icon img {width:100%; height:100%; object-fit:contain;}

/* history */
.history {display:flex; flex-direction:column; gap:var(--padding-120); overflow: hidden;}
.history-group {display:flex; flex-direction:column; gap:var(--padding-120);}
.history-visual {display:flex; flex-direction:column; align-items:center;}
.history-img {width:100%; height:clamp(220px, calc(440 / var(--inner) * 100vw), 440px); margin-bottom:calc(var(--padding-160) * -1); border-radius:16px; overflow:hidden;}
.history-img img {width:100%; height:100%; object-fit:cover;}
.history-summary {position:relative; z-index:1; width:95%; max-width:1160px; padding:var(--padding-80) var(--padding-40); border-radius:16px; background:var(--color-white); text-align:center;}
.history-summary-tit {font-size:var(--font-size-28); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.5;}
.history-summary p {margin-top:var(--padding-16); font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.history-business {display:flex; flex-direction:column; gap:var(--padding-60);}
.history-sec-tit {font-size:var(--font-size-36); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.17;}
.history-biz-list {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--padding-40);}
.history-biz-card {display:flex; flex-direction:column; gap:var(--padding-32); padding:var(--padding-40); border:1px solid #ddd; border-radius:16px; background:var(--color-white);}
.history-biz-card .biz-icon {width:clamp(50px, calc(80 / var(--inner) * 100vw), 80px); height:auto; aspect-ratio: 1/1; flex-shrink:0;}
.history-biz-card .biz-icon img {width:100%; height:100%; object-fit:contain;}
.history-biz-card .biz-text {display:flex; flex-direction:column; gap:var(--padding-16);}
.history-biz-card .biz-tit {font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.54;}
.history-biz-card .biz-text p {font-size:var(--font-size-20); color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.history-timeline {display:flex; flex-direction:column; gap:var(--padding-60);}
.history-timeline-tit {font-size:var(--font-size-36); font-weight:400; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.39;}
.history-timeline-tit .text-bold {font-weight:600;}
.history-timeline-wrap {display:flex; align-items:flex-start; gap:var(--padding-80);}
.history-timeline-img {flex-shrink:0; width:clamp(280px, calc(560 / var(--inner) * 100vw), 560px); border-radius:24px; overflow:hidden;}
.history-timeline-img img {width:100%; height:clamp(200px, calc(400 / var(--inner) * 100vw), 400px); object-fit:cover;}
.history-timeline-list {flex:1 1 auto; min-width:0; display:flex; flex-direction:column;}
.history-timeline-list .timeline-group {display:flex; flex-direction:column; border-top: 2px solid #00341C;}
.history-timeline-list .timeline-item {display:flex; align-items:flex-start; gap:clamp(30px, calc(100 / var(--inner) * 100vw), 100px); padding:var(--padding-40); border-bottom: 1px solid #ddd;}
.history-timeline-list .timeline-year {flex:0 0 clamp(100px, calc(180 / var(--inner) * 100vw), 180px); font-size:var(--font-size-32); font-weight:600; color:var(--color-primary); letter-spacing:-0.02em; line-height:1.44;}
.history-timeline-list .timeline-text {flex:1 1 auto; min-width:0; display:flex; flex-direction:column; gap:var(--padding-16);}
.history-timeline-list .timeline-tit {font-size:var(--font-size-22); font-weight:600; color:var(--color-body); letter-spacing:-0.02em; line-height:1.45;}
.history-timeline-list .timeline-desc {font-size:var(--font-size-18); color:var(--color-body); letter-spacing:-0.02em; line-height:1.44;}
.history-timeline-list .timeline-note {padding-top:var(--padding-40); font-size:var(--font-size-18); color:var(--color-body); letter-spacing:-0.02em; line-height:1.44;}
.history-timeline-list .timeline-note a {color:var(--color-body); text-decoration:underline; text-underline-offset:2px;}

/* organization */
.organization-chart {text-align:center;}
.organization-chart img {width:100%; max-width:1132px; height:auto; vertical-align:top;}

/* location */
.location {display:flex; flex-direction:column; gap:var(--padding-120); }
.location-item {display:flex; flex-direction:column; gap:var(--padding-16);}
.location-head {display:flex; align-items:center; gap:12px;}
.location-head img {width:24px; height:24px; flex-shrink:0;}
.location-head h3 {font-size:var(--font-size-30); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.47;}
.location-body {padding:var(--padding-32) 0; border-top:2px solid var(--color-primary); border-bottom:1px solid #ddd;}
.location-inner {display:flex; align-items:flex-start; gap:var(--padding-80);}
.location-info {display:flex; flex-direction:column; gap:var(--padding-16); width:clamp(300px, calc(435 / var(--inner) * 100vw), 435px); flex-shrink:0; margin:0;}
.location-info .info-row {display:flex; align-items:flex-start; gap:var(--padding-32); font-size:var(--font-size-18); letter-spacing:-0.02em; line-height:1.78;}
.location-info .info-row dt {width:80px; flex-shrink:0; font-weight:600; color:var(--color-secondary);}
.location-info .info-row dd {flex:1; min-width:0; margin:0; font-weight:400; color:var(--color-body);}
.location .mapwrap {flex:1; border-radius:16px; overflow:hidden;}

/* ci-intro */
.ci-intro {display:flex; flex-direction:column; gap:var(--padding-40);}
.ci-intro-visual {position:relative; height:clamp(200px, calc( 400 / var(--inner) * 100vw ), 400px); border:1px solid #ddd; overflow:hidden;}
.ci-intro-bg {position:absolute; inset:0;}
.ci-intro-bg img {width:100%; height:100%; object-fit:cover;}
.ci-intro-logo {position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); width:clamp(140px, calc( 262 / var(--inner) * 100vw ), 262px);}
.ci-intro-logo img {width:100%; height:auto; vertical-align:top;}
.ci-intro-list {display:flex; flex-direction:column; gap:var(--padding-24);}
.ci-intro-item {display:flex; align-items:center; gap:var(--padding-60); padding:var(--padding-50) var(--padding-100); border-radius:16px; background:#fbfbfb;}
.ci-intro-item .item-head {display:flex; align-items:center; gap:var(--padding-16); flex-shrink:0;}
.ci-intro-item .item-head img {width:17px; height:10px; flex-shrink:0;}
.ci-intro-item .item-head h3 {width:120px; font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.54;}
.ci-intro-item .item-desc {flex:1; min-width:0; font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.ci-intro-item .item-desc p + p {margin-top:0.5em;}

/* ci-meaning */
.ci-meaning-list {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--padding-40); list-style:none; margin:0; padding:0;}
.ci-meaning-card {display:flex; flex-direction:column; border:1px solid #ddd; border-radius:16px; overflow:hidden; background:var(--color-white);}
.ci-meaning-card .card-body {display:flex; flex-direction:column; gap:var(--padding-40); padding:var(--padding-60) var(--padding-40);}
.ci-meaning-card .card-head {display:flex; flex-direction:column; gap:var(--padding-16);}
.ci-meaning-card .card-num {font-size:var(--font-size-20); font-weight:600; color:#cacaca; letter-spacing:-0.02em; line-height:1.5;}
.ci-meaning-card .card-head h3 {font-size:var(--font-size-30); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.13;}
.ci-meaning-card .card-desc {font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.ci-meaning-card .card-visual {height:clamp(200px, calc( 360 / var(--inner) * 100vw ), 360px); margin-top:auto;}
.ci-meaning-card .card-visual img {width:100%; height:100%; object-fit:cover; vertical-align:top;}

/* overview */
.overview-intro {padding:var(--padding-100) 0; background:#f7f7f7; text-align:center;}
.overview-intro-lead {font-size:var(--font-size-28); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.5;}
.overview-intro-desc {margin-top:var(--padding-16); font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.overview-sec-tit {margin-bottom:var(--padding-60); font-size:var(--font-size-36); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.17; text-align:center;}
.overview-biz-list {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); column-gap:var(--padding-80); row-gap:var(--padding-60); list-style:none; margin:0; padding:0;}
.overview-biz-list .biz-item {padding-bottom:var(--padding-32); border-bottom:1px solid #ddd;}
.overview-biz-list .biz-row {display:flex; align-items:center; gap:var(--padding-32);}
.overview-biz-list .biz-icon {flex-shrink:0; display:flex; align-items:center; justify-content:center; width:104px; height:104px; border-radius:16px; background:#f2f2f2;}
.overview-biz-list .biz-icon img {width:48px; height:48px; object-fit:contain;}
.overview-biz-list .biz-text h4 {font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.54;}
.overview-biz-list .biz-text p {margin-top:8px; font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.5;}
.overview-skill-list {display:flex; flex-direction:column; list-style:none; margin:0; padding:0;}
.overview-skill-list .skill-item {display:flex; align-items:center; gap:var(--padding-120); padding:var(--padding-30) 0; border-bottom:1px solid #ddd;}
.overview-skill-list .skill-head {display:flex; align-items:center; gap:var(--padding-40); flex-shrink:0;}
.overview-skill-list .skill-num {width:32px; font-size:var(--font-size-20); font-weight:700; color:var(--color-primary); letter-spacing:-0.02em; line-height:1.7;}
.overview-skill-list .skill-head h4 {width:160px; font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.54;}
.overview-skill-list .skill-desc {flex:1; min-width:0; font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.overview-expert {background:#f7f9f8;}
.overview-expert-list {display:flex; flex-direction:column; gap:var(--padding-40);}
.overview-expert-list .expert-row {display:flex; align-items:center; gap:var(--padding-80);}
.overview-expert-list .expert-row.type-reverse {flex-direction:row-reverse;}
.overview-expert-list .expert-visual {flex:1; min-width:0; height:clamp(240px, calc( 410 / var(--inner) * 100vw ), 410px); overflow:hidden;}
.overview-expert-list .expert-visual.type-br {border-radius:0 0 110px 0;}
.overview-expert-list .expert-visual.type-bl {border-radius:0 0 0 110px;}
.overview-expert-list .expert-visual img {width:100%; height:100%; object-fit:cover; vertical-align:top;}
.overview-expert-list .expert-body {flex:1; min-width:0; display:flex; flex-direction:column; gap:var(--padding-40);}
.overview-expert-list .expert-head {display:flex; flex-direction:column; gap:var(--padding-16);}
.overview-expert-list .expert-marker {position:relative; width:28px; height:28px; border-radius:50%; background:rgba(0,52,28,0.16);}
.overview-expert-list .expert-marker::before {position:absolute; content:''; left:50%; top:50%; transform:translate(-50%, -50%); width:16px; height:16px; border-radius:50%; background:rgba(0,52,28,0.24);}
.overview-expert-list .expert-marker::after {position:absolute; content:''; left:50%; top:50%; transform:translate(-50%, -50%); width:8px; height:8px; border-radius:50%; background:var(--color-primary);}
.overview-expert-list .expert-head h4 {font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.54;}
.overview-expert-list .expert-list {display:flex; flex-direction:column; gap:12px; list-style:none; margin:0; padding:0;}
.overview-expert-list .expert-list li {position:relative; padding-left:12px; font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.overview-expert-list .expert-list li::before {position:absolute; content:''; left:0; top:0.85em; width:4px; height:4px; margin-top:-2px; border-radius:50%; background:#878787;}
.overview-project-list {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--padding-40); list-style:none; margin:0; padding:0;}
.overview-project-list .project-card {display:flex; flex-direction:column; border:1px solid #ddd; border-radius:16px; overflow:hidden; background:var(--color-white);}
.overview-project-list .card-visual {height:clamp(180px, calc( 270 / var(--inner) * 100vw ), 270px); overflow:hidden;}
.overview-project-list .card-visual img {width:100%; height:100%; object-fit:cover; vertical-align:top;}
.overview-project-list .card-body {display:flex; flex-direction:column; gap:var(--padding-24); padding:var(--padding-30);}
.overview-project-list .card-badge {display:inline-flex; align-items:center; justify-content:center; padding:8px 24px; border-radius:500px; background:rgba(0,52,28,0.12); font-size:var(--font-size-16); font-weight:600; color:var(--color-primary); letter-spacing:-0.02em; line-height:1.63;}
.overview-project-list .card-desc {font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.overview-research-list {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--padding-40);}
.overview-research-list .research-box {position:relative; min-height:clamp(320px, calc( 410 / var(--inner) * 100vw ), 410px); border:1px solid #ddd; border-radius:16px; overflow:hidden;}
.overview-research-list .box-bg {position:absolute;  right: clamp(15px, calc( 60 / var(--inner) * 100vw ), 60px); bottom: clamp(15px, calc( 60 / var(--inner) * 100vw ), 60px); text-align: right;}
.overview-research-list .box-body {position:relative; z-index:1; display:flex; flex-direction:column; gap:var(--padding-32); padding:var(--padding-60);}
.overview-research-list .box-body h4 {font-size:var(--font-size-26); font-weight:600; color:var(--color-secondary); letter-spacing:-0.02em; line-height:1.54;}
.overview-research-list .box-list {display:flex; flex-direction:column; gap:12px; list-style:none; margin:0; padding:0;}
.overview-research-list .box-list li {position:relative; padding-left:24px; font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.overview-research-list .box-list li::before {position:absolute; content:''; left:0; top:0.45em; width:16px; height:16px; background:url('/images/sub/overview-check.svg') 50% 50% no-repeat; background-size:contain;}

/* activityyear */
.activityyear-list {display:flex; flex-direction:column; gap:var(--padding-80); list-style:none; margin:0; padding:0;}
.activityyear-item {display:flex; align-items:flex-start; justify-content:space-between; gap:var(--padding-40); flex-wrap: wrap; padding-bottom:var(--padding-80); border-bottom:1px solid #ddd;}
.activityyear-item:last-child {padding-bottom:0; border-bottom:0;}
.activityyear-item .item-head {display:flex; align-items:flex-start; gap:var(--padding-12); flex-shrink:0; width:clamp(150px, calc( 300 / var(--inner) * 100vw ), 300px);}
.activityyear-item .item-head::after {content:''; width:clamp(12px, calc( 30 / var(--inner) * 100vw ), 30px); height:auto; aspect-ratio: 1/1; flex-shrink:0; background:url('/images/sub/activityyear-line.png') 50% 50% no-repeat; background-size:contain;}
.activityyear-item .year-wrap {display:flex; align-items:center; gap:8px; padding:var(--padding-24) 0 0; font-size:var(--font-size-40); font-weight:700; letter-spacing:-0.02em; line-height:1;}
.activityyear-item .year-start {color:var(--color-secondary);}
.activityyear-item .item-body {display:flex; align-items:center; gap:var(--padding-40); flex:1; min-width:0;}
.activityyear-item .item-visual {flex-shrink:0; width:clamp(280px, calc( 442 / var(--inner) * 100vw ), 442px); }
.activityyear-item .item-visual .item-img {position:relative; padding-bottom:62.5%; overflow:hidden; border-radius:16px;}
.activityyear-item .item-visual .item-img img {position:absolute; top:50%; left:0; transform:translateY(-50%); width:100%; height:auto; max-width:100%; min-height:100%; object-fit:cover;}
.activityyear-item .item-list {display:flex; flex-direction:column; gap:12px; flex:1; min-width:0; list-style:none; margin:0; padding:0;}
.activityyear-item .item-list li {position:relative; padding-left:12px; font-size:var(--font-size-20); font-weight:400; color:var(--color-body); letter-spacing:-0.02em; line-height:1.7;}
.activityyear-item .item-list li::before {position:absolute; content:''; left:0; top:0.85em; width:4px; height:4px; margin-top:-2px; border-radius:50%; background:#878787;}



