@charset "utf-8";

.sub-tab {margin-bottom:var(--space-80);}
.sub-tab ul {display:flex; gap:var(--space-10);}
.sub-tab ul li {flex:1;}
.sub-tab ul li a {font-weight:600; border-radius:8px; background:#f4f4f4; display:flex; align-items:center; justify-content:center; text-align:center; padding:0 12px; height:clamp(40px, calc(56 / var(--inner) * 100vw), 56px); font-size:var(--font-size-18);}
.sub-tab ul li.active a {background:#121212; color:#fff;}

.doc-cnt {padding:var(--space-150) 0;}

.doc-tit {margin-bottom:var(--space-90); font-family:var(--font-classico); font-size:var(--font-size-48); font-weight:700; line-height:1.4em;}

.blue-bg {background:#D9F4F5;}

.giving-group {display:flex; gap:var(--space-80); margin-bottom:var(--space-100);}
.giving-group:last-child {margin-bottom:0;}
.giving-group .image {width:43%;}
.giving-group .content {flex:1;}
.giving-group .content h2 {margin-bottom:var(--space-20); margin-top:-0.3em; font-family:var(--font-classico); font-size:var(--font-size-32); font-weight:700; line-height:1.3em;}
.giving-group .content .text {margin-bottom:var(--space-35); font-size:var(--font-size-20); font-weight:400; line-height:1.45em; color:#121212;}
.giving-group .content .info {display:flex; flex-direction:column; gap:var(--space-25);}
.giving-group .content .info h3 {font-size:var(--font-size-20); font-weight:600; line-height:1.45em; color:var(--color-primary);}
.giving-group .content .desc dl {margin-bottom:var(--space-25); display:flex; flex-direction:column; gap:var(--space-5);}
.giving-group .content .desc dl:last-child {margin-bottom:0;}
.giving-group .content .desc dt {font-size:var(--font-size-20); font-weight:400; line-height:1.45em;}
.giving-group .content .desc dd {font-weight:400; line-height:1.57em;}

.impact-counter {padding:var(--space-120) 0;}
.impact-counter .items {display:flex; justify-content:space-between; gap:var(--space-40);}
.impact-counter .items .item {flex:1; text-align:center;}
.impact-counter .items .counter {display:block; margin-bottom:var(--space-15); font-family:var(--font-classico); font-size:var(--font-size-72);}
.impact-counter .items .txt {font-size:var(--font-size-24); font-weight:400;}

.voice .doc-tit {margin-bottom:var(--space-40);}
.voice .text {margin-bottom:var(--space-60);}
.voice .text dl dt {margin-bottom:var(--space-20); font-size:var(--font-size-24); font-weight:700;}
.voice .text dl dd {font-size:var(--font-size-20); font-weight:400; line-height:1.45em;}
.voice .slider .slick-track {display:flex;}
.voice .slider .slick-track:before,
.voice .slider .slick-track:after {display:none;}
.voice .slider .slick-slide {height:100%; width:100%;}
.voice .slider .items .txt {display:flex; flex-direction:column; justify-content:space-between; text-align:center; font-size:var(--font-size-20); font-weight:400; letter-spacing:-.02em; line-height:1.45em}
.voice .slider .items .txt:before,
.voice .slider .items .txt:after {display:block; content:''; width:clamp(32px, calc(54 / var(--inner) * 100vw), 54px); aspect-ratio:93/69; background-size:contain; background-repeat:no-repeat; background-position:center center;}
.voice .slider .items .txt:before {background-image:url('/images/sub/quote1.png');}
.voice .slider .items .txt:after {margin-left:auto; background-image:url('/images/sub/quote2.png');}
.voice .slider .items .txt .inner {margin:0 clamp(35px, calc(90 / var(--inner) * 100vw), 90px);}
.voice .slider .controls {margin-top:var(--space-30); display:flex; align-items:center; justify-content:center; gap:var(--space-8);}
.voice .slider .controls .pager {border-radius:40px; gap:0 var(--space-5); display:flex; align-items:center; padding:0 15px; height:40px; border:1px solid #eee; font-size:var(--font-size-17); font-weight:700;}
.voice .slider .controls .pager .current {color:var(--color-primary);}
.voice .slider .slick-arrow {border:0; font-size:0; width:40px; height:40px; background-color:transparent; display:block;}
.voice .slider .slick-prev {background-image:url('/images/sub/voice-prev.png');}
.voice .slider .slick-next {background-image:url('/images/sub/voice-next.png');}

.global .img {position:relative;}
.global .img img {width:100%; height:100%;}
.global .dot {color:#fff; display:flex; align-items:center; justify-content:center; flex-direction:column; white-space:nowrap; font-size:var(--font-size-12); font-weight:400; position:absolute; border-radius:100%; background:rgba(2, 181, 186, .5); transform:translate(-50%, -50%); transition:width .3s, height .3s;}
.global .dot span {align-items:center; justify-content:center; flex-direction:column; display:none;}
.global .dot strong {font-size:var(--font-size-16); font-weight:700; text-decoration:underline;}
.global .dot1 {left:22%; top:39%; width:60px; height:60px;}
.global .dot2 {left:35.3%; top:68.5%; width:20px; height:20px;}
.global .dot3 {left:46%; top:31%; width:40px; height:40px;}
.global .dot4 {left:50.5%; top:33%; width:20px; height:20px;}
.global .dot5 {left:58.5%; top:59%; width:20px; height:20px;}
.global .dot6 {left:53.5%; top:32%; width:20px; height:20px;}
.global .dot7 {left:79.5%; top:50%; width:50px; height:50px;}
.global .dot8 {left:83.5%; top:42%; width:105px; height:105px;}
.global .dot9 {left:52%; top:26%; width:20px; height:20px;}
.global .dot10 {left:51.5%; top:40%; width:20px; height:20px;}
.global .dot11 {left:79.5%; top:63.7%; width:20px; height:20px;}
.global .dot12 {left:46.4%; top:40.5%; width:20px; height:20px;}
.global .dot:hover {z-index:10;}
.global .dot:hover span {display:flex;}
.global .dot1:hover {width:160px; height:160px;}
.global .dot2:hover {width:80px; height:80px;}
.global .dot3:hover {width:140px; height:140px;}
.global .dot4:hover {width:80px; height:80px;}
.global .dot5:hover {width:80px; height:80px;}
.global .dot6:hover {width:80px; height:80px;}
.global .dot7:hover {width:140px; height:140px;}
.global .dot8:hover {width:180px; height:180px;}
.global .dot9:hover {width:80px; height:80px;}
.global .dot10:hover {width:80px; height:80px;}
.global .dot11:hover {width:80px; height:80px;}
.global .dot12:hover {width:80px; height:80px;}
.global .mo-text {display:none;}

.approach-text {margin-bottom:var(--space-80);}
.approach-text p {font-weight:400; line-height:1.45em; font-size:var(--font-size-20);}

.approach-process .items {position:realtive; display:flex; justify-content:space-between;}
.approach-process .arrow {margin:0 var(--space-10); width:24px; background:url('/images/sub/process-arrow.png') no-repeat center center;}
.approach-process .item {flex:1 1 auto; min-width:0; width:1%; padding:var(--space-90) var(--space-20); background:#fff; border:1px solid #ddd; border-radius:400px; box-shadow:0 10px 20px rgba(0,0,0,0.1); display:flex; flex-direction:column; align-items:center; text-align:center;}
.approach-process .item .icon {margin-bottom:var(--space-15);}
.approach-process .item h3 {margin-bottom:var(--space-30); font-family:var(--font-classico); font-size:var(--font-size-20); font-weight:700;}
.approach-process .item p {font-size:var(--font-size-14); font-weight:400; line-height:1.7em; color:#121212;}

.eligibility-text {margin-bottom:var(--space-100);}
.eligibility-text h2 {margin-bottom:var(--space-40); font-family:var(--font-classico); font-size:var(--font-size-40); font-weight:700; color:#121212;}
.eligibility-text p {font-size:var(--font-size-20); font-weight:400; line-height:1.45em;}

.micro-text {margin-bottom:var(--space-60);}
.micro-text h2 {margin-bottom:var(--space-15); font-size:var(--font-size-20); font-weight:400; letter-spacing:-.03em; line-height:1.4em;}
.micro-text p {font-size:var(--font-size-20); font-weight:400; line-height:1.45em;}

.micro-content {display:flex; gap:var(--space-80);}
.micro-content .info {flex:1; display:flex; flex-direction:column; gap:var(--space-60);}
.micro-content .info .tit {padding-left:30px; position:relative; margin-bottom:var(--space-20); font-size:var(--font-size-20); font-weight:600;}
.micro-content .info .tit:before {left:0; top:.2em; position:absolute; content:''; width:20px; height:20px; background:url('/images/sub/micro-tit.png') no-repeat 50% 50% / contain;}
.micro-content .info .cnt .txt {font-size:var(--font-size-16); font-weight:400; line-height:1.71em;}
.micro-content .info .cnt .list ul {display:flex; flex-direction:column; gap:var(--space-10);}
.micro-content .info .cnt .list ul li {font-size:var(--font-size-16); font-weight:400; line-height:1.75em; color:#121212;}
.micro-content .info .cnt .btns {margin-top:var(--space-20); display:flex; gap:var(--space-10);}
.micro-content .info .cnt .btns .btn {height:clamp(40px, calc(50 / var(--inner) * 100vw), 50px); background:#505050; display:flex; align-items:center; gap:var(--space-10); padding:0 var(--space-30); border-radius:8px; font-weight:600; color:#fff;}
.micro-content .info .item .cnt .btns .btn:hover {background:var(--color-primary);}
.micro-content .step {width:49%;}
.micro-content .step .items {height: 100%; display:flex; flex-direction:column;}
.micro-content .step .items .item {display:flex; flex-direction:column; position:relative; flex:1;}
.micro-content .step .arrow {margin:var(--space-5) auto; width:24px; height:18px; background:url('/images/sub/micro-arrow.png') no-repeat 50% 50% / contain; bottom:-9px;}
.micro-content .step .items .item .box {flex:1 1 auto; min-height:0; height:1%; display:flex; flex-direction:column; justify-content:center; padding:var(--space-20) var(--space-40); background:#fff; border:1px solid #121212; border-radius:8px;}
.micro-content .step .items .item .box .inner {display:flex; align-items:center; gap:var(--space-20);}
.micro-content .step ol li .box .txt {font-size:var(--font-size-18); font-weight:400; line-height:1.5em;}
.micro-content .step ol li .box .txt span {font-weight:600;}
.micro-content .step .caution {margin-top:var(--space-10); display:flex; align-items:flex-start; font-size:var(--font-size-13); font-weight:400; letter-spacing:-.03em; line-height:1.4em; color:#505050;}
.micro-content .step .caution img {vertical-align:middle; margin-right:var(--space-8); margin-top:.1em;}

.mission-msg {margin-bottom:var(--space-50);}
.mission-msg .group .txt:before,
.mission-msg .group .txt:after {display:block; content:''; width:clamp(40px, calc(65 / var(--inner) * 100vw), 65px); height:clamp(36px, calc(56 / var(--inner) * 100vw), 56px); background-size:contain; background-repeat:no-repeat; background-position:center center;}
.mission-msg .group .txt:before {margin-bottom:var(--space-10); background-image:url('/images/sub/msg-quote1.png');}
.mission-msg .group .txt:after {margin-top:var(--space-10); margin-left:auto; background-image:url('/images/sub/msg-quote2.png');}
.mission-msg .group .inner {margin:0 clamp(45px, calc(75 / var(--inner) * 100vw), 75px);}
.mission-msg .group {margin-bottom:var(--space-60);}
.mission-msg .group:last-child {margin-bottom:0;}
.mission-msg .group .txt {font-size:var(--font-size-20); font-weight:400; line-height:1.45em; letter-spacing:-.02em;}
.mission-msg .group .name {margin-top:var(--space-10); text-align:right;}

.our-roots h2 {margin-bottom:var(--space-40); font-family:var(--font-classico); font-size:var(--font-size-48); font-weight:700; letter-spacing:-.03em; line-height:1.4em;}
.our-roots p {font-size:var(--font-size-20); letter-spacing:-.02em; font-weight:400; line-height:1.45em; color:#121212;}

.our-banner {margin:var(--space-100) 0; height:clamp(200px, calc(350 / var(--inner) * 100vw), 350px); background:url('/images/sub/our-banner.jpg') no-repeat center center/cover;}

.interests {margin-top:var(--space-60);}
.interests .items {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-20);}
.interests .item {padding:var(--space-25) var(--space-20); border:1px solid #121212; border-radius:12px; display:flex; gap:var(--space-15);}
.interests .item .num {font-size:var(--font-size-32); font-weight:600; letter-spacing:-.03em; line-height:1em;}
.interests .item .text {flex:1;}
.interests .item .text dl dt {margin-bottom:var(--space-5); font-weight:700; line-height:1.45em;}
.interests .item .text dl dd {font-weight:400; line-height:1.5em;}

.meet {display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-40);}
.meet .item .img {margin-bottom:var(--space-30); aspect-ratio:373/280; border-radius:24px; overflow:hidden;}
.meet .item .img img {width:100%; height:100%; object-fit:cover;}
.meet .item .name {font-family:var(--font-classico); margin-bottom:var(--space-25); font-size:var(--font-size-24); font-weight:700;}
.meet .item .name img {vertical-align:middle;}
.meet .item .position {margin-bottom:var(--space-15); font-size:var(--font-size-20); font-weight:400; color:#878787;}
.meet .item .txt {font-size:var(--font-size-20); font-weight:400; line-height:1.45em;}

.contact-intro {margin-bottom:var(--space-40); font-size:var(--font-size-20); font-weight:400; letter-spacing:-.02em; line-height:1.45em;}

.join-title {margin-bottom:var(--space-35); font-family:var(--font-classico); font-size:var(--font-size-32); font-weight:700; letter-spacing:-.03em; line-height:1.4em;}

.grantee .menu {padding:var(--space-20) var(--space-10); background:var(--color-primary); border-radius:8px; text-align:center; color:#fff;}
.grantee .menu ul {display:flex;}
.grantee .menu ul li {padding:0 10px; font-weight:700; color:#fff; display:flex; align-items:center; justify-content:center; gap:0 var(--space-10); line-height:1.3em;}
.grantee .menu ul li:nth-child(1) {width:26%; justify-content: flex-start}
.grantee .menu ul li:nth-child(2) {flex:1 1 auto; min-width:0; width:1%; justify-content: flex-start}
.grantee .menu ul li:nth-child(3) {width:13%;}
.grantee .menu ul li:nth-child(4) {width:10%;}
.grantee .menu ul li:nth-child(5) {width:12%;}
.grantee .menu .btn {display:flex; gap:var(--space-5); flex-direction:column; align-items:center;}
.grantee .menu .btn button {width:10px; height:10px; padding:0; border:0; background:transparent; display:flex; align-items:center; justify-content:center; overflow:hidden; flex-shrink:0;}
.grantee .menu .btn button svg {width:100%; height:100%; display:block; object-fit:contain;}

.grantee .list ul li { font-size:var(--font-size-16); color:#121212; font-weight:400; line-height:1.4em;} 
.grantee .list .text {padding:5px 5px; min-height:60px; text-align:center; display:flex; align-items:center;}
.grantee .list .text div {padding:0 10px;}
.grantee .list .text div:nth-child(1) {width:26%;}
.grantee .list .text div:nth-child(2) {flex:1 1 auto; min-width:0; width:1%;}
.grantee .list .text div:nth-child(3) {width:13%;}
.grantee .list .text div:nth-child(4) {width:10%;}
.grantee .list .text div:nth-child(5) {width:12%;}
.grantee .list .text {display:flex;}
.grantee .list .text .tit {text-align:left;  /* max-height:1.4em; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:nowrap; */}
.grantee .list .text .left {text-align:left;}
.grantee .list .content {border-top:1px solid #ddd; padding:var(--space-40) 15px; display:none;}
.grantee .list .content .inner {display:flex; gap:0 var(--space-90);}
.grantee .list .content .txt {font-size:var(--font-size-15); color:#121212; _max-width:513px;}
.grantee .list .content .link a {word-break:break-all; padding-left:20px; position:relative; font-size:var(--font-size-14); color:#121212; font-weight:700; display:inline-block;}
.grantee .list .content .link a:before {content:''; position:absolute; left:0; top:.3em; width:14px; height:14px; background:url('/images/sub/link-icon.png') no-repeat center center/contain;}
.grantee .list ul li.active {border:1px solid #121212; border-radius:8px; background:#F9F9F9;}