/* Pretendard v1.3.9, SIL OFL 1.1. Copyright and license: /assets/Pretendard-LICENSE.txt */
@font-face{font-family:Pretendard;src:url('/assets/PretendardVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--ink:#174e35;--muted:#526c5d;--line:#dce8df;--accent:#d9efcd}
body{font-family:Pretendard,Arial,sans-serif;font-size:16px;line-height:1.65;letter-spacing:-.015em;overflow-wrap:break-word}
header{height:100px;padding-inline:max(5%,calc((100% - 1320px)/2));gap:32px;background:#fff}
.company-logo{width:184px;max-height:74px}.footer-top .company-logo{width:180px}
header nav{gap:24px;font-size:16px}.nav-heading{gap:4px}.nav-heading>a{padding:12px 0;white-space:nowrap}.submenu-toggle{min-width:28px;min-height:44px}.submenu a{font-size:15px;padding:12px 20px}.submenu{min-width:200px}.nav-group:last-child .submenu{left:auto;right:0}
.section,.about,.contact,footer,.page-banner{padding-inline:max(5%,calc((100% - 1320px)/2))}
.section{padding-block:88px}.hero-top{padding:65px max(5%,calc((100% - 1320px)/2)) 46px;gap:48px;align-items:center}
h1{font-size:clamp(40px,4.1vw,64px);font-weight:600;letter-spacing:-.045em;line-height:1.28}.hero-side{max-width:330px}.hero-side p{font-size:17px;line-height:1.85}.text-link{font-size:15px;font-weight:600;min-height:44px;align-items:center}
.eyebrow{font-size:12px;letter-spacing:.13em;color:#416c50}.hero-image{height:clamp(360px,35vw,520px);max-width:1440px;margin:0 auto;border-radius:16px}.hero-image img{filter:brightness(.98) saturate(1.02)}.hero-image:after{background:linear-gradient(0deg,#073924d9,transparent 65%)}.image-label{left:5%;bottom:34px}.image-label small{font-size:12px}.image-label p{font-size:28px;font-weight:600}.image-label .visual-note{font-size:13px;color:#f1faef}.image-count{right:5%;bottom:38px}.intro-strip{font-size:14px;padding-block:22px}.intro-strip span:last-child{font-size:12px}
.section-head{gap:48px}.section-head h2,.about h2,body:not([data-page="home"]) .section-head h2{font-size:36px;font-weight:650;letter-spacing:-.035em;line-height:1.4}.section-head p{font-size:16px;max-width:440px;line-height:1.85}.summary-card{padding-block:30px}.summary-card h3{font-size:24px;font-weight:650}.summary-card p,.business p,.value p,.contact p,.footer-note,.principle p,.business-detail p,.inquiry-guide p,.overview-intro p,.timeline p,.certificate-grid p,.news-card p{font-size:16px;line-height:1.85;color:var(--muted)}
.summary-card small,.business small{font-size:12px;color:#52735b}.projects{background:#f2f8ef}.tabs{gap:10px;margin-bottom:32px}.tabs button{min-height:44px;font-size:15px;padding:10px 23px;background:white}.tabs button.active{color:white;background:#21673f}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.project-card{min-width:0;background:white;border:1px solid #dce8df;border-radius:14px;overflow:hidden;transition:box-shadow .2s}.project-card:hover{box-shadow:0 8px 26px #174e3512}.project-visual{height:auto;aspect-ratio:16/10;border-radius:0}.project-info{padding:22px 24px;margin:0;gap:18px;align-items:flex-start}.project-info h3{font-size:21px;font-weight:650;line-height:1.5;margin-bottom:8px}.project-info p{font-size:14px;line-height:1.7}.project-visual span{font-size:12px;letter-spacing:0;padding:7px 11px}.project-grid .project-card:nth-child(n+3){margin-top:0}.project-photo-pending{min-height:100%;font-size:15px;background:linear-gradient(135deg,#eef5e9,#e2eddd)}.caption{font-size:14px;line-height:1.85}.more-projects{font-size:16px;min-height:48px}
.about-intro,.editorial-body{font-size:17px;line-height:1.95}.editorial-lead{font-size:20px;line-height:1.8}.editorial-content>h2{font-weight:650}.contact h2{font-weight:650;font-size:34px}.contact-page-link,.contact button{font-size:16px;min-height:52px;white-space:nowrap}.footer-note{font-size:14px;max-width:600px}.footer-bottom{font-size:12px;color:#526c5d;align-items:center}.footer-bottom a{display:inline-block;padding-block:12px}
.page-banner{padding-top:30px;padding-bottom:50px}.page-breadcrumb{font-size:13px;margin-bottom:30px;color:#536f5b}.page-banner h1{font-size:48px;font-weight:650}.page-banner>p{font-size:17px;line-height:1.8;max-width:760px}.banner-decoration{font-size:120px;opacity:.55}.sub-navigation a{font-size:15px;padding:18px 22px;color:#526c5d}.profile-table>div,.company-facts dl>div{font-size:16px;line-height:1.8}.profile-table dt,.company-facts dt{color:#526c5d}.news-meta,.post-meta{font-size:13px;color:#526c5d}.news-card .text-link,.resource-link,.industrial-links a{font-size:15px}.content-empty p,.contact-explain,.company-address{font-size:16px}.detail-list div{font-size:16px;line-height:1.8;overflow-wrap:anywhere}.detail-list span{min-width:80px;flex-shrink:0}.dialog-copy,.notice,.contact-result{font-size:16px;line-height:1.85}dialog{border-radius:16px;max-height:85vh;overflow-y:auto}.dialog-title{font-size:28px;font-weight:650;line-height:1.45;padding-right:16px}.close{min-width:44px;min-height:44px}.contact-options button{font-size:14px;min-height:48px}
@media(max-width:1100px){header{gap:20px}header nav{gap:14px;font-size:15px}.company-logo{width:170px}}
@media(max-width:1000px){header nav{top:100px;font-size:16px;max-height:calc(100dvh - 100px)}.nav-heading>a{font-size:17px}.submenu a{font-size:15px}.menu{min-width:48px;min-height:48px}.hero-top{gap:28px}.hero-side{max-width:290px}.hero-side p{font-size:16px}.business-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.business:nth-child(odd){border-left:0}.section-head{gap:30px}.section-head p{max-width:350px}}
@media(max-width:650px){header{height:80px;padding-inline:6%;gap:20px}.company-logo{width:150px;max-height:60px}header nav{top:80px;max-height:calc(100dvh - 80px)}.hero-top{padding:38px 6% 32px;display:block}.hero-top h1{font-size:clamp(32px,8.2vw,42px);letter-spacing:-.045em;margin-top:18px}.hero-side{display:block;max-width:none;margin-top:24px}.hero-side p{font-size:16px;max-width:none}.hero-side .text-link{font-size:15px;margin-top:14px;gap:28px}.hero-image{height:350px;margin:0 4%;border-radius:12px}.hero-image img{object-position:center}.image-label{left:6%;right:6%;bottom:24px}.image-label p{font-size:23px;line-height:1.4}.image-label .visual-note{font-size:12px;line-height:1.6;max-width:260px}.image-count{display:none}.intro-strip{font-size:12px;gap:16px;line-height:1.8}.intro-strip span:last-child{font-size:10px}.section,.about,.contact{padding:56px 6%}.section-head h2,.about h2,body:not([data-page="home"]) .section-head h2{font-size:29px}.section-head p{font-size:16px;max-width:none;margin-top:18px}.eyebrow{font-size:11px}.summary-card,.summary-card+.summary-card{padding:24px 0}.summary-card p,.business p,.value p{font-size:15px}.summary-card h3{font-size:23px}.project-grid{grid-template-columns:1fr;gap:22px}.project-info{padding:20px}.project-info h3{font-size:20px}.project-visual{height:auto}.tabs{gap:8px}.tabs button{font-size:14px;padding:9px 17px}.caption{font-size:13px}.page-banner{padding:24px 6% 36px}.page-banner h1{font-size:36px}.page-banner>p{font-size:16px;max-width:none}.page-breadcrumb{font-size:12px;margin-bottom:24px}.sub-navigation a{font-size:14px;padding:16px}.editorial-body{font-size:16px;line-height:1.9}.editorial-lead{font-size:18px}.editorial-content>h2{font-size:27px}.profile-table>div{font-size:15px;grid-template-columns:85px minmax(0,1fr)}.company-facts dl>div{font-size:15px}.timeline p,.certificate-grid p,.news-card p,.business-detail p,.inquiry-guide p{font-size:16px}.footer-note{font-size:13px;margin-top:24px;text-align:left}.footer-bottom{font-size:11px;gap:10px}.footer-top .company-logo{width:160px}.contact h2{font-size:28px}.contact p{font-size:16px}.detail-list div{font-size:15px;gap:16px}.dialog-title{font-size:24px}.dialog-copy,.notice{font-size:15px}.contact-page{padding-top:24px}.page-cta,.support-contact{padding-top:0}}
