@charset "utf-8";
.root_daum_roughmap,
.root_daum_roughmap .wrap_map {overflow:hidden; height:clamp(250px, calc( 460 / var(--inner) * 100vw ), 460px) !important; width:100% !important;}
.root_daum_roughmap .cont {display:none !important;}

.sub-title.ty2 {padding-bottom:var(--space-80); font-size:var(--font-size-52); font-weight:600; color:var(--color-bk); line-height:1.2em;}

.about-intro {padding:0 0 var(--space-200);}
.about-intro-panel {display:flex; align-items:flex-start; gap:var(--space-80);}
.about-intro-col {flex:1 1 0; min-width:0; display:flex; flex-direction:column; justify-content:space-between; min-height:576px;}
.about-intro-text-wrap {position:relative; flex:1 1 auto; width:100%;}
.about-intro-slide {position:absolute; top:0; left:0; width:100%; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .35s ease, visibility .35s ease;}
.about-intro-slide.is-active {opacity:1; visibility:visible; pointer-events:auto;}
.about-intro-title {color:var(--color-bk); font-size:var(--font-size-52); font-weight:600; line-height:1.3em; letter-spacing:-.02em;}
.about-intro-copy {display:flex; flex-direction:column; gap:var(--space-30); margin-top:var(--space-60);}
.about-intro-lead {color:var(--color-bk); font-size:var(--font-size-28); font-weight:500; line-height:1.5em; letter-spacing:-.02em;}
.about-intro-desc {font-size:var(--font-size-20); font-weight:400; line-height:1.7em; letter-spacing:-.02em;}
.about-intro-nav {display:flex; align-items:flex-start; gap:4px; flex-shrink:0;}
.about-intro-prev,
.about-intro-next {display:flex; align-items:center; justify-content:center; padding:var(--space-16); background:#fff; border:1px solid #eee; border-radius:80px; cursor:pointer;}
.about-intro-nav-ico {display:block; width:var(--space-16); height:var(--space-16);}
.about-intro-nav-ico img {display:block; width:100%; height:100%;}
.about-intro-visual {position:relative; width:48%; aspect-ratio:1 / 1;}
.about-intro-visual-item {position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .35s ease, visibility .35s ease;}
.about-intro-visual-item.is-active {opacity:1; visibility:visible;}
.about-intro-visual-item img {display:block; width:100%; height:100%; object-fit:contain;}

.about-ip {padding:var(--space-160) 0 var(--space-200); background:#f8f8f8;}
.about-ip-wrap {display:flex; flex-direction:column; gap:var(--space-60);}
.about-ip-label {display:flex; align-items:center; gap:10px; padding-bottom:var(--space-20); border-bottom:1px solid var(--color-bk); color:#878787; font-size:var(--font-size-20); font-weight:500; line-height:1.7em; letter-spacing:-.02em;}
.about-ip-dot {flex-shrink:0; width:4px; height:4px; border-radius:80px; background:#f5000a;}
.about-ip-title {color:var(--color-bk); font-size:var(--font-size-52); font-weight:600; line-height:1.3em; letter-spacing:-.02em;}
.about-ip-row {grid-template-columns:repeat(3, 1fr); display:grid; gap:var(--space-30);}
.about-ip-card {display:flex; flex:1 1 0; flex-direction:column; min-width:0; overflow:hidden; background:#fff;}
.about-ip-thumb {position:relative; flex-shrink:0; width:100%; aspect-ratio:1/1; overflow:hidden;}
.about-ip-thumb > img {display:block; width:100%; height:100%; object-fit:cover;}
.about-ip-body {display:flex; flex-direction:column; gap:var(--space-16); padding:var(--space-30);}
.about-ip-head {display:flex; align-items:flex-end; gap:12px;}
.about-ip-name {color:var(--color-bk); font-size:var(--font-size-28); font-weight:500; line-height:1.5em; letter-spacing:-.02em;}
.about-ip-en {color:#878787; font-size:var(--font-size-18); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}
.about-ip-desc {color:#676767; font-size:var(--font-size-20); font-weight:400; line-height:1.7em; letter-spacing:-.02em;}

/* about - client */
.about-client {padding:var(--space-160) 0 0;}
.about-client-wrap {display:flex; flex-direction:column; gap:var(--space-60);}
.about-client-label {display:flex; align-items:center; gap:10px; padding-bottom:var(--space-20); border-bottom:1px solid var(--color-bk); color:#878787; font-size:var(--font-size-20); font-weight:500; line-height:1.7em; letter-spacing:-.02em;}
.about-client-dot {flex-shrink:0; width:4px; height:4px; border-radius:80px; background:#f5000a;}
.about-client-title {color:var(--color-bk); font-size:var(--font-size-52); font-weight:600; line-height:1.3em; letter-spacing:-.02em;}
.about-client-grid {display:flex; flex-direction:column; gap:var(--space-20);}
.about-client-row {grid-template-columns:repeat(5, 1fr); display:grid; gap:var(--space-20);}

/* team */
.team-head {padding-bottom:var(--space-80);}
.team-page-title {color:var(--color-bk); font-size:var(--font-size-52); font-weight:600; line-height:1.3em; letter-spacing:-.02em;}
.team-section {padding-bottom:var(--space-200);}
.team-section:first-child {padding-bottom:var(--space-160);}
.team-section:last-child {padding-bottom:0;}
.team-section-wrap {display:flex; flex-direction:column; gap:var(--space-60);}
.team-section-head {display:flex; align-items:center; justify-content:space-between; padding-bottom:var(--space-20); border-bottom:1px solid var(--color-bk);}
.team-section-label {display:flex; align-items:center; gap:10px; color:var(--color-bk); font-size:var(--font-size-28); font-weight:500; line-height:1.5em; letter-spacing:-.02em;}
.team-section-dot {display:block; flex-shrink:0; width:var(--space-16); height:var(--space-16);}
.team-section-dot img {display:block; width:100%; height:100%;}
.team-section-note {color:#676767; font-size:var(--font-size-20); font-weight:400; line-height:1.7em; letter-spacing:-.02em;}
.team-leader-list {display:flex; gap:var(--space-16);}
.team-leader-card {display:flex; flex-direction:column; gap:var(--space-20);}
.team-leader-info {display:flex; flex-direction:column;}
.team-leader-role {color:#999; font-size:var(--font-size-18); font-weight:500; line-height:1.6em; letter-spacing:-.02em;}
.team-leader-name {color:var(--color-bk); font-size:var(--font-size-24); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}
.team-dept-grid {grid-template-columns:repeat(4, 1fr); display:grid; gap:8px;}
.team-dept-card {display:flex; flex-direction:column; gap:var(--space-16); padding:var(--space-25); background:#f6f6f6; box-sizing:border-box;}
.team-dept-card-grow {flex:1 1 0; min-width:0;}
.team-card-dot {display:block; flex-shrink:0; width:5px; height:5px;}
.team-card-dot img {display:block; width:100%; height:100%;}
.team-dept-info {display:flex; flex-direction:column; gap:4px;}
.team-dept-head {display:flex; flex-direction:column; gap:4px; padding-bottom:var(--space-20); border-bottom:1px dashed #dfdfdf;}
.team-dept-title {color:var(--color-bk); font-size:var(--font-size-24); font-weight:500; line-height:1.6em; letter-spacing:-.02em;}
.team-dept-en {color:#878787; font-size:var(--font-size-18); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}
.team-unit-list {flex-wrap: wrap; display:flex; gap:4px; text-align:center;}
.team-unit {padding:5px 7px; background:#1a1a1a; color:#fff; font-weight:500; line-height:1.5em; letter-spacing:-.03em;}

/* contact - animation */
.contact-anim {display:flex; flex-direction:column; gap:var(--space-60);}
.contact-anim-head {display:flex; align-items:center; justify-content:space-between; padding-bottom:var(--space-20); border-bottom:1px solid var(--color-bk);}
.contact-anim-label {display:flex; align-items:center; gap:10px; color:#878787; font-size:var(--font-size-20); font-weight:500; line-height:1.7em; letter-spacing:-.02em;}
.contact-anim-dot {flex-shrink:0; width:4px; height:4px; border-radius:80px; background:#f5000a;}
.contact-anim-tabs {display:flex; align-items:center; gap:4px; padding:8px; background:#f9f9f9; border-radius:500px;}
.contact-anim-tab {display:flex; align-items:center; justify-content:center; padding:10px 14px; border-radius:500px; font-size:var(--font-size-16); font-weight:500; line-height:1.9em; letter-spacing:-.02em; text-decoration:none;}
.contact-anim-tab.is-active {background:#1c1c1c; color:#fff; font-weight:600;}
.contact-anim-panel {display:flex; gap:var(--space-60); align-items:flex-start;}
.contact-anim-main {display:flex; flex:1 1 0; flex-direction:column; justify-content:space-between; align-self:stretch; min-width:0; gap:var(--space-30);}
.contact-anim-text {display:flex; flex-direction:column; gap:var(--space-60);}
.contact-anim-title {color:var(--color-bk); font-size:var(--font-size-52); font-weight:600; line-height:1.3em; letter-spacing:-.02em;}
.contact-anim-copy {display:flex; flex-direction:column; gap:var(--space-30);}
.contact-anim-lead {color:var(--color-bk); font-size:var(--font-size-28); font-weight:500; line-height:1.5em; letter-spacing:-.02em;}
.contact-anim-desc {font-size:var(--font-size-20); font-weight:400; line-height:1.7em; letter-spacing:-.02em;}
.contact-anim-mail {display:flex; align-items:center; gap:var(--space-30); padding:var(--space-20) var(--space-30); background:linear-gradient(114.164deg, #1c1c1c 62.493%, #571315 100%); text-decoration:none;}
.contact-anim-mail-text {display:flex; flex:1 1 0; flex-direction:column; gap:2px; min-width:0;}
.contact-anim-mail-type {color:#bbb; font-size:var(--font-size-16); font-weight:500; line-height:1.5em; letter-spacing:-.02em;}
.contact-anim-mail-addr {color:#fff; font-size:var(--font-size-28); font-weight:600; line-height:1.5em; letter-spacing:-.02em;}
.contact-anim-mail-arrow {flex-shrink:0; width:clamp(20px, calc( 28 / var(--inner) * 100vw ), 28px); aspect-ratio:1/1; display:flex;}
.contact-anim-guide {display:flex; flex:1 1 0; flex-direction:column; gap:var(--space-50); min-width:0; padding:var(--space-30); background:#f6f6f6;}
.contact-anim-guide-head {display:flex; align-items:center;}
.contact-anim-guide-title {display:flex; align-items:center; gap:6px; color:var(--color-bk); font-size:var(--font-size-28); font-weight:600; line-height:1.5em; letter-spacing:-.02em;}
.contact-anim-guide-list {display:flex; flex-direction:column; gap:var(--space-16); padding:0; list-style:none;}
.contact-anim-guide-item {display:flex; flex-direction:column; gap:6px; padding:var(--space-20) var(--space-25); background:#fff;}
.contact-anim-guide-row {display:flex; align-items:center; gap:12px;}
.contact-anim-guide-num {display:flex; flex-shrink:0; align-items:center; justify-content:center; width:24px; height:24px; border-radius:80px; background:#1a1a1a; color:#fff; font-size:var(--font-size-14); font-weight:600; line-height:1.4em; letter-spacing:-.02em;}
.contact-anim-guide-name {color:var(--color-bk); font-size:var(--font-size-18); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}
.contact-anim-guide-desc {padding-left:var(--space-35); color:#676767; font-size:var(--font-size-18); font-weight:400; line-height:1.8em; letter-spacing:-.02em;}

.work-wrap {padding:0 var(--contain-padding-40);}
.works-anim-drag-track {grid-template-columns:repeat(4, 1fr); display:grid; gap:var(--space-40);}
.main-sec4 .sec4-item,
.works-anim-item {position:relative; display:block; overflow:hidden;}
.works-anim-thumb {display:block; width:100%; height:100%;}
.works-anim-thumb img {display:block; width:100%; height:100%; object-fit:cover;}
.works-anim-hover {position:absolute; inset:0; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; padding:var(--space-30); background:rgba(0,0,0,0.32); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); opacity:0; transition:opacity .35s ease; pointer-events:none;}

.main-sec4 .sec4-item:hover .works-anim-hover,
.works-anim-item:hover .works-anim-hover,
.works-anim-item:focus-visible .works-anim-hover {opacity:1;}
.works-anim-hover-arrow {display:block; align-self:flex-end; flex-shrink:0; width:clamp(15px, calc( 20 / var(--inner) * 100vw ), 20px); aspect-ratio:1/1;}
.works-anim-hover-title {color:#fff; font-size:var(--font-size-32); font-weight:600; line-height:1.4375em; letter-spacing:-.02em;}

.works-anim-intro-inner {display:flex; align-items:center; gap:var(--space-100); width:100%;}
.works-anim-poster {flex-shrink:0; width:480px; aspect-ratio:480/700; overflow:hidden;}
.works-anim-poster img {display:block; width:100%; height:100%; object-fit:cover;}
.works-anim-info {display:flex; flex:1 1 0; flex-direction:column; gap:var(--space-60); align-self:stretch; min-width:0;}
.works-anim-text {display:flex; flex:1 1 auto; flex-direction:column; gap:var(--space-30); min-height:0;}
.works-anim-head {display:flex; flex-direction:column; gap:8px; padding-bottom:var(--space-30); border-bottom:1px solid #eee;}
.works-anim-title {color:var(--color-bk); font-size:var(--font-size-48); font-weight:700; line-height:1.3em; letter-spacing:-.02em;}
.works-anim-sub {color:#888; font-size:var(--font-size-20); font-weight:500; line-height:1.7em; letter-spacing:-.02em;}
.works-anim-desc {color:#676767; font-size:var(--font-size-20); line-height:1.7em; letter-spacing:-.02em;}
.works-anim-scroll {display:flex; align-items:center; justify-content:flex-end; gap:12px; width:100%;}
.works-anim-scroll-text {color:#999; font-size:var(--font-size-15); font-weight:700; line-height:1.1em; letter-spacing:0.04em;}
.works-anim-scroll-ico {display:block; flex-shrink:0; width:var(--space-16); height:var(--space-16);}
.works-anim-scroll-ico img {display:block; width:100%; height:100%;}
.works-anim-media {margin-top:clamp(80px, calc( 180 / var(--inner) * 100vw ), 180px); padding:var(--space-160) 0 var(--space-200); background:linear-gradient(180deg, #1a1a1a 0%, #111 100%);}
.works-anim-media-inner {display:flex; flex-direction:column; gap:var(--space-60); width:100%;}

.works-anim-credits {display:flex; flex-direction:column; gap:var(--space-60); padding-top:var(--space-40); border-top:1px solid rgba(255,255,255,0.1);}
.works-anim-credits-head {display:flex; align-items:center; justify-content:space-between; width:100%;}
.works-anim-credits-title {color:#fff; font-size:var(--font-size-48); font-weight:700; line-height:1.3em; letter-spacing:-.02em;}
.works-anim-view-btn {display:inline-flex; align-items:center; justify-content:center; gap:var(--space-20); padding:var(--space-16) var(--space-30); background:#fff; border:1px solid var(--color-bk); color:var(--color-bk); font-size:var(--font-size-20); font-weight:500; line-height:1.7em; letter-spacing:-.02em; text-decoration:none;}
.works-anim-view-arrow {display:block; flex-shrink:0; width:14px; height:12px;}
.works-anim-view-arrow img {display:block; width:100%; height:100%;}
.works-anim-meta {display:flex; flex-direction:column; gap:var(--space-15); margin:0; padding:0;}
.works-anim-meta-row {display:flex; align-items:center; margin:0;}
.works-anim-meta-label {flex:0 0 clamp(120px, calc( 160 / var(--inner) * 100vw ), 160px); margin:0; color:#999; font-size:var(--font-size-18); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}
.works-anim-meta-val {flex:1; color:#dfdfdf; font-size:var(--font-size-18); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}

.works-webtoon-intro-inner {display:flex; align-items:center; gap:var(--space-100); width:100%;}
.works-webtoon-poster {flex-shrink:0; width:480px; aspect-ratio:480/700; overflow:hidden;}
.works-webtoon-poster img {display:block; width:100%; height:100%; object-fit:cover;}
.works-webtoon-info {display:flex; flex:1 1 0; flex-direction:column; gap:var(--space-60); align-self:stretch; min-width:0; min-height:700px;}
.works-webtoon-text {display:flex; flex:1 1 auto; flex-direction:column; gap:var(--space-30); min-height:0;}
.works-webtoon-head {display:flex; flex-direction:column; gap:var(--space-40); padding-bottom:var(--space-30); border-bottom:1px solid #eee;}
.works-webtoon-title {margin:0; color:var(--color-bk); font-size:var(--font-size-48); font-weight:700; line-height:1.3em; letter-spacing:-.02em;}
.works-webtoon-meta {display:flex; align-items:center; margin:0; padding:var(--space-30) 0 0; border-top:1px solid var(--color-bk);}
.works-webtoon-meta-item {width: 25%; display:flex; flex-direction:column; gap:4px; margin:0;}
.works-webtoon-meta-item:first-child {/* flex:0 0 188px; width:188px;  */ padding-right:15px; border-right:1px solid #eee;}
.works-webtoon-meta-item:not(:first-child) {flex:1 1 0; min-width:0; padding-right:10px; padding-left:var(--space-25); border-right:1px solid #eee;}
.works-webtoon-meta-item:last-child {border-right:0;}
.works-webtoon-meta-label {margin:0; color:#bbb; font-size:var(--font-size-18); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}
.works-webtoon-meta-val {margin:0; color:#676767; font-size:var(--font-size-18); font-weight:500; line-height:1.8em; letter-spacing:-.02em;}
.works-webtoon-desc {margin:0; color:#676767; font-size:var(--font-size-20); font-weight:400; line-height:1.7em; letter-spacing:-.02em;}
.works-webtoon-links {display:flex; gap:8px; align-items:center; width:100%; flex-wrap;wrap;}
.works-webtoon-link {display:inline-flex; align-items:center; justify-content:center; gap:12px; padding:var(--space-16) var(--space-20); background:#fff; border:1px solid var(--color-bk); color:var(--color-bk); font-size:var(--font-size-20); font-weight:500; line-height:1.7em; letter-spacing:-.02em; text-decoration:none; box-sizing:border-box;}
.works-webtoon-link-ico {display:flex; flex-shrink:0; align-items:center; justify-content:center; width:clamp(20px, calc( 24 / var(--inner) * 100vw ), 24px); aspect-ratio:1/1;}
.works-webtoon-link-ico img {display:block; width:100%; height:100%; object-fit:contain;}

.news-view-inner {display:flex; flex-direction:column; gap:var(--space-60);}
.news-view-main {display:flex; flex-direction:column; gap:var(--space-40);}
.news-view-head {display:flex; flex-direction:column; gap:var(--space-25);}
.news-view-title {margin:0; color:#2c2c2c; font-size:var(--font-size-48); font-weight:700; line-height:1.3em; letter-spacing:-.02em;}
.news-view-meta {padding-bottom:var(--space-40); border-bottom:1px solid #2c2c2c;}
.news-view-date {color:#bbb; font-size:var(--font-size-18); font-weight:400; line-height:1.8em; letter-spacing:-.02em;}
.news-view-nav {display:flex; align-items:center; justify-content:space-between; width:100%;}
.news-view-nav-group {display:flex; align-items:center; gap:4px;}
.news-view-btn {display:inline-flex; align-items:center; justify-content:center; gap:var(--space-20); padding:var(--space-16) var(--space-30); text-decoration:none; box-sizing:border-box;}
.news-view-btn-text {font-size:var(--font-size-20); font-weight:500; line-height:1.7em; letter-spacing:-.02em; white-space:nowrap;}
.news-view-btn-list {background:#fff; border:1px solid #2c2c2c; color:#2c2c2c;}
.news-view-btn-prev,
.news-view-btn-next {background:#505050; color:#fff;}
.news-view-arrow {display:block; flex-shrink:0; width:14px; height:12px;}
.news-view-arrow img {display:block; width:100%; height:100%;}

html[lang="cn"] .contact-anim-lead {font-size: var(--font-size-26);}
html[lang="cn"] .contact-anim-desc {font-size: var(--font-size-18);}
html[lang="ja"] #wrapper br {display: none;}