@import "https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600&family=Noto+Sans+JP:wght@300;400;500;700&display=swap";
:root{--color-bg:#f7f7f7;--color-bg-white:#fff;--color-text:#222;--color-text-sub:#555;--color-border:#ddd;--color-accent:#2f6690;--color-accent-dark:#234c6b;--color-accent-soft:#eaf1f6;--color-white:#fff;--font-serif:"Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;--font-sans:"Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;--container-w:1480px;--container-w2:1080px;--container-w2-2:1160px;--space-section-t:160px;--space-section-b:180px;--space-section-t-mobile:60px;--space-section-b-mobile:80px;--ease-reveal:cubic-bezier(.21, .86, .78, 1.04);--transition-fast:.3s ease-in-out}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-serif);color:var(--color-text);background:var(--color-bg);letter-spacing:.06em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.8;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}ul{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p{margin:0}button{cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}input,textarea,select{font-family:var(--font-sans);font-size:15px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.m_w{max-width:var(--container-w);margin:0 auto;padding-left:40px;padding-right:40px}.m_w2{max-width:var(--container-w2);margin:0 auto;padding-left:40px;padding-right:40px}.m_w2-2{max-width:var(--container-w2-2);margin:0 auto;padding-left:40px;padding-right:40px}.flex{display:flex}.bg-white{background-color:var(--color-white)}.m_head,.m_head_left{letter-spacing:.08em;color:#000;font-size:clamp(28px,2.7vw,42px);font-weight:500;line-height:1.55}.m_head{text-align:center}.m_head_left{text-align:left}.m_head span,.m_head_left span{letter-spacing:.28em;color:var(--color-accent);text-transform:uppercase;margin-bottom:1.4em;font-size:12px;font-weight:400;display:block}.m_b{align-items:center;display:inline-flex}.m_b a{align-items:center;display:flex}.m_b .t{color:var(--color-accent);white-space:nowrap;margin-right:20px;font-size:14px;line-height:1}.m_b .r{border:1px solid var(--color-border);border-radius:50%;flex-shrink:0;width:60px;height:60px;position:relative;overflow:hidden}.m_b svg{position:absolute;top:0;left:0}.m_b .p1{fill:none;stroke:var(--color-accent);stroke-width:3px;stroke-dashoffset:189px;stroke-dasharray:189;transition:stroke-dashoffset .5s ease-in}.m_b .p2{fill:none;stroke:var(--color-border)}.m_b a:hover .p1{stroke-dashoffset:0}.m_b .arrow{background:url(/images/icon-arrow-right.svg) 50%/16px no-repeat;width:20px;height:20px;transition:transform .3s ease-in-out;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.m_b .arrow.h{transform:translate(-280%,-50%)}.m_b a:hover .arrow{transform:translate(280%,-50%)}.m_b a:hover .arrow.h{transition-delay:.35s;transform:translate(-50%,-50%)}.btn-primary{font-family:var(--font-sans);letter-spacing:.12em;background:var(--color-accent);color:#fff;border:1px solid var(--color-accent);transition:background var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;gap:14px;padding:20px 40px;font-size:14px;display:inline-flex}.btn-primary:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark)}.btn-outline{font-family:var(--font-sans);letter-spacing:.12em;color:var(--color-accent);border:1px solid var(--color-accent);transition:background var(--transition-fast), color var(--transition-fast);background:#fff;justify-content:center;align-items:center;gap:14px;padding:19px 39px;font-size:14px;display:inline-flex}.btn-outline:hover{background:var(--color-accent);color:#fff}.js-fv{opacity:0;transition:opacity .6s linear}.js-fv.is-on{opacity:1}.js-fv.td1{transition-delay:.1s}.js-fv.td2{transition-delay:.2s}.m_tup_in{transition:transform .6s var(--ease-reveal);transform:translateY(50px)}.js_sc.is-on .m_tup_in{transform:translateY(0)}.pra_img{position:relative;overflow:hidden}.pra_img_in{clip-path:polygon(0 0,0 0,0 100%,0 100%);width:100%;height:100%;transition:clip-path .6s linear,transform .6s linear;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(1.2)}.pra_img_in img{object-fit:cover;width:100%;height:100%}.js_sc.is-on .pra_img_in{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:translate(-50%,-50%)scale(1.01)}.loading-wrapper{z-index:999999;background:#fff;width:100%;height:100vh;transition:opacity .6s linear,clip-path .6s linear;position:fixed;inset:0;overflow:hidden}.loading-wrapper.is-end{opacity:0;clip-path:polygon(140% 0,100% 0,100% 100%,100% 100%);pointer-events:none}.loading-cont{text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading-cont img{width:220px;height:auto;transition:opacity .4s linear;animation:.8s linear loadingUp}.loading-cont.is-act img{opacity:0}.loading-bar{width:100%;height:3px;position:absolute;top:0;left:0;overflow:hidden}.loading-bar-in{background:var(--color-accent);width:0%;height:100%;transition:width .3s linear;position:absolute;top:0;left:0}@keyframes loadingUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.site-header{z-index:100;width:100%;height:84px;transition:box-shadow var(--transition-fast);background:#fff;align-items:stretch;display:flex;position:absolute;top:0;left:0}.site-header.is-fixed{animation:.4s ease-out headerSlideDown;position:fixed;box-shadow:0 2px 12px #00000014}@keyframes headerSlideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.site-header .logo{align-items:center;padding:0 24px;display:flex}.site-header .logo img{width:auto;height:36px;display:block}.site-header .g_navi{height:100%;margin-left:auto}.site-header .g_navi nav{height:100%}.site-header .g_navi nav>ul{align-items:stretch;height:100%;display:flex}.site-header .g_navi nav>ul>li{display:flex}.site-header .g_navi nav>ul>li>a{line-height:1;font-family:var(--font-sans);letter-spacing:.08em;transition:color var(--transition-fast), background var(--transition-fast);align-items:center;padding:0 22px;font-size:13px;display:flex}.site-header .g_navi nav>ul>li>a:hover{color:var(--color-accent)}.site-header .g_navi nav>ul>li.contact>a{background-color:var(--color-accent);color:#fff}.site-header .g_navi nav>ul>li.contact>a:hover{background-color:var(--color-accent-dark)}.menu-btn{z-index:101;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:none;position:fixed;top:20px;right:20px;box-shadow:0 2px 10px #0000001f}.menu-btn svg{width:20px;height:14px}.menu-btn .bar{fill:none;stroke:var(--color-text);stroke-width:1.6px;transition:transform .3s ease-in-out,opacity .3s ease-in-out}.menu-btn.is-open .bar1{transform:translateY(6px)rotate(45deg)}.menu-btn.is-open .bar2{opacity:0}.menu-btn.is-open .bar3{transform:translateY(-6px)rotate(-45deg)}.mobile-nav{z-index:9999;opacity:0;pointer-events:none;background:#fff;flex-direction:column;width:100%;height:100vh;padding:40px 24px 24px;transition:opacity .3s linear;display:flex;position:fixed;inset:0}.mobile-nav.is-open{opacity:1;pointer-events:auto}.mobile-nav .logo{width:160px}.mobile-nav .logo img{width:100%;height:auto}.mobile-nav nav{font-family:var(--font-sans);margin-top:40px;margin-bottom:auto;font-size:15px}.mobile-nav nav li+li{margin-top:22px}.mobile-nav nav li a{display:block}.mobile-nav .cta{justify-content:space-between;align-items:center;gap:12px;margin-top:20px;display:flex}.mobile-nav .cta a{width:100%;font-family:var(--font-sans);text-align:center;color:#fff;padding:22px 0 10px;font-size:12px;display:block}.mobile-nav .cta a.form{background:var(--color-accent)}.mobile-nav .cta a.tel{background:var(--color-accent-dark)}.home_fv{height:100vh;min-height:640px;position:relative;overflow:hidden}.hero-slide{opacity:0;transition:opacity 1s linear;position:absolute;inset:0}.hero-slide.is-active{opacity:1;z-index:2}.hero-slide-img{object-fit:cover;width:100%;height:100%;animation:9s linear forwards heroKenBurns;transform:scale(1)}@keyframes heroKenBurns{0%{transform:scale(1)}to{transform:scale(1.12)}}.home_fv:after{content:"";z-index:3;background:linear-gradient(#0a10161a 0%,#0a101626 55%,#0a10168c 100%);position:absolute;inset:0}.home_fv .copy{z-index:5;color:#fff;text-shadow:0 3px 6px #00000073;position:absolute;bottom:158px;left:6%;right:6%}.home_fv .copy .eyebrow{font-family:var(--font-sans);letter-spacing:.34em;color:#ffffffbf;margin-bottom:32px;font-size:11px;display:block}.home_fv .copy h1{letter-spacing:.04em;max-width:17em;font-size:clamp(38px,6.6vw,104px);font-weight:500;line-height:1.32}.home_fv .copy p{font-family:var(--font-sans);letter-spacing:.16em;color:#ffffffbf;margin-top:32px;font-size:13px}.scroll_down{z-index:5;transform-origin:100% 100%;align-items:center;font-size:11px;display:flex;position:absolute;bottom:60px;right:6%;transform:rotate(90deg)}.scroll_down .font{font-family:var(--font-sans);letter-spacing:.14em;color:#fff;margin-right:15px}.scroll_down .line{background-color:#fff6;width:90px;height:1px;position:relative;overflow:hidden}.scroll_down .line:before{content:"";background-color:#fff;width:100%;height:1px;animation:2s cubic-bezier(.67,.05,.32,1) infinite scrollerLine;position:absolute;top:0;left:0}@keyframes scrollerLine{0%{transform:translate(-100%)}15%{transform:translate(-105%)}to{transform:translate(100%)}}.hero-tags{z-index:5;border-top:1px solid #ffffff38;flex-wrap:nowrap;display:flex;position:absolute;bottom:0;left:0;right:0;overflow-x:auto}.hero-tags span{font-family:var(--font-sans);letter-spacing:.1em;color:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);white-space:nowrap;background:#08101866;border-right:1px solid #ffffff24;flex:none;padding:20px 28px;font-size:12px}#home>section{padding-top:var(--space-section-t);padding-bottom:var(--space-section-b)}.capability{background:#fff}.capability .grid{grid-template-columns:1.5fr 1fr;align-items:end;gap:100px;display:grid}.capability .headline .eyebrow{font-family:var(--font-sans);letter-spacing:.28em;color:var(--color-accent);margin-bottom:26px;font-size:11px;display:block}.capability .headline h2{letter-spacing:.02em;font-size:clamp(30px,3.8vw,54px);font-weight:500;line-height:1.6}.capability .headline p{max-width:32em;color:var(--color-text-sub);margin-top:36px;font-size:14px;line-height:2.2}.capability .stats .m_tup_in{flex-direction:column;display:flex}.capability .stat{border-top:1px solid var(--color-border);justify-content:space-between;align-items:baseline;gap:20px;padding:30px 0;display:flex}.capability .stat:last-child{border-bottom:1px solid var(--color-border)}.capability .stat .num{font-family:var(--font-sans);color:var(--color-accent);white-space:nowrap;font-size:clamp(46px,5.4vw,76px);line-height:1}.capability .stat .num small{letter-spacing:.04em;margin-left:3px;font-size:13px}.capability .stat .label{letter-spacing:.06em;color:var(--color-text-sub);text-align:right;font-size:12px;line-height:1.7}.works-showcase{background:var(--color-bg)}.showcase-grid{grid-template-rows:repeat(3,minmax(150px,15vw));grid-template-columns:repeat(6,1fr);gap:14px;margin-top:64px;display:grid}.showcase-item{background:#d9d9d9;display:block;position:relative;overflow:hidden}.showcase-item--a{grid-area:1/1/3/5}.showcase-item--b{grid-area:1/5/3/7}.showcase-item--c{grid-area:3/1/4/4}.showcase-item--d{grid-area:3/4/4/7}.showcase-item .bg{background-position:50%;background-size:cover;transition:transform 6s linear;position:absolute;inset:0;transform:scale(1)}.showcase-item:hover .bg{transform:scale(1.12)}.showcase-item .text{color:#fff;background:linear-gradient(#0000 0%,#00000080 40%,#000000d9 100%);padding:7vw 6% 6%;position:absolute;bottom:0;left:0;right:0}.showcase-item .text .tag{font-family:var(--font-sans);letter-spacing:.14em;color:#ffffffd9;text-shadow:0 1px 5px #00000080;margin-bottom:10px;font-size:10px;display:block}.showcase-item .text h3{letter-spacing:.02em;text-shadow:0 1px 6px #00000080;font-size:clamp(17px,1.6vw,22px);font-weight:500;line-height:1.4}.showcase-item--a .text h3{font-size:clamp(20px,2vw,28px)}.works-showcase .m_work_btn{border:none;width:auto;margin-top:56px;position:relative}.capability-list{background:#fff;margin-top:60px}.capability-list li{border-bottom:1px solid var(--color-border)}.capability-list li:first-child{border-top:1px solid var(--color-border)}.capability-list li .m_tup_in{align-items:center;gap:44px;padding:38px 0;display:flex}.capability-list .idx{font-family:var(--font-sans);color:var(--color-accent);letter-spacing:.08em;flex:none;font-size:12px}.capability-list .content{flex:auto;min-width:0}.capability-list .content h3{letter-spacing:.01em;font-size:clamp(20px,1.8vw,25px);font-weight:500}.capability-list .content p{color:var(--color-text-sub);margin-top:12px;font-size:13px;line-height:1.9}.capability-list .thumb{flex:0 0 160px;height:108px;position:relative;overflow:hidden}.capability-list .thumb img{object-fit:cover;width:100%;height:100%;transition:transform .6s;transform:scale(1)}.capability-list li:hover .thumb img{transform:scale(1.1)}.equipment-feature{background:var(--color-accent-dark);color:#fff;padding:0!important}.equipment-feature .content{padding-top:var(--space-section-t);padding-bottom:var(--space-section-b)}.equipment-feature .m_head span{color:#ffffffb8}.equipment-feature .lead{color:#fffc;max-width:30em;margin-top:26px;font-size:14px;line-height:2.1}.equipment-feature .stat_row{border-top:1px solid #ffffff38;border-left:1px solid #ffffff38;flex-wrap:wrap;margin-top:72px;display:flex}.equipment-feature .stat{border-bottom:1px solid #ffffff38;border-right:1px solid #ffffff38;flex:200px;padding:32px 28px}.equipment-feature .stat .num{font-family:var(--font-sans);color:#fff;font-size:clamp(42px,4.6vw,64px);line-height:1}.equipment-feature .stat .num small{margin-left:3px;font-size:15px}.equipment-feature .stat .label{font-family:var(--font-sans);letter-spacing:.1em;color:#ffffffa6;margin-top:14px;font-size:11px}.cleanroom-feature .frame{border:1px solid var(--color-border);max-width:760px;padding:88px 8%}.cleanroom-feature .m_head_left span{color:var(--color-accent)}.cleanroom-feature p{max-width:34em;color:var(--color-text-sub);margin-top:26px;font-size:14px;line-height:2.2}.trust{text-align:center;background:#fff}.trust .eyebrow{font-family:var(--font-sans);letter-spacing:.32em;color:var(--color-accent);font-size:11px;display:block}.trust .principle{letter-spacing:.08em;max-width:30em;margin:30px auto 0;font-size:clamp(30px,3.6vw,48px);font-weight:500;line-height:1.7}.trust .principle-lead{max-width:40em;color:var(--color-text-sub);margin:30px auto 0;font-size:14px;line-height:2.3}.trust .years{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:32px;margin-top:96px;display:flex}.trust .years .num{font-family:var(--font-sans);color:var(--color-accent);font-size:clamp(80px,11vw,168px);line-height:1}.trust .years .desc{text-align:left;max-width:260px;color:var(--color-text-sub);font-size:13px;line-height:1.9}.trust .years .desc b{color:var(--color-text);margin-bottom:8px;font-size:16px;font-weight:500;display:block}.trust .m_b{justify-content:center;margin-top:64px;display:flex}.cta-v2{background:var(--color-accent-dark);color:#fff}.cta-v2 .grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:60px;display:grid}.cta-v2 .eyebrow{font-family:var(--font-sans);letter-spacing:.3em;color:#ffffffa6;margin-bottom:24px;font-size:11px;display:block}.cta-v2 h2{letter-spacing:.02em;font-size:clamp(30px,3.4vw,46px);font-weight:500;line-height:1.6}.cta-v2 .sub{color:#ffffffbf;max-width:30em;margin-top:30px;font-size:14px;line-height:2.2}.cta-v2 .actions .m_tup_in{flex-direction:column;gap:16px;display:flex}.cta-v2 .actions a{color:#fff;transition:background var(--transition-fast), border-color var(--transition-fast);background:#ffffff0f;border:1px solid #ffffff47;justify-content:space-between;align-items:center;padding:28px 32px;display:flex}.cta-v2 .actions a:hover{color:var(--color-accent-dark);background:#fff;border-color:#fff}.cta-v2 .actions a .label{font-family:var(--font-sans);letter-spacing:.02em;font-size:18px;font-weight:500}.cta-v2 .actions a .sub_label{letter-spacing:.02em;opacity:.65;margin-top:8px;font-size:11px;display:block}.cta-v2 .actions a .arrow-ico{font-family:var(--font-sans);transition:transform var(--transition-fast);font-size:18px}.cta-v2 .actions a:hover .arrow-ico{transform:translate(6px)}.site-footer{color:#fff;background:var(--color-accent-dark);padding-top:100px;padding-bottom:40px;position:relative}.site-footer .cta_area{justify-content:space-between;gap:24px;margin-bottom:90px}.site-footer .cta_area>div{text-align:center;width:49%}.site-footer .cta_area .m_head{color:#fff;font-size:20px}.site-footer .cta_area p{font-family:var(--font-sans);color:#ffffffbf;margin:32px 0 36px;font-size:13px}.site-footer .cta_area a.block{color:var(--color-text);height:120px;font-family:var(--font-sans);background-color:#fff;justify-content:center;align-items:center;gap:12px;font-size:15px;display:flex}.site-footer .logo_links{flex-wrap:wrap;gap:40px;margin-bottom:70px}.site-footer .logo_links .brand img{background:#fff;height:34px;padding:6px 10px}.site-footer .logo_links .brand span{font-family:var(--font-sans);color:#ffffffb3;margin-top:10px;font-size:13px;display:block}.site-footer .logo_links .right{font-family:var(--font-sans);margin-left:auto;font-size:14px}.site-footer .logo_links .right ul{flex-wrap:wrap;gap:12px 32px;display:flex}.site-footer .bottom_area{border-top:1px solid #ffffff2e;padding-top:24px}.site-footer .bottom_area p{font-family:var(--font-sans);color:#fff9;font-size:12px}.footer_links{gap:2%;margin:60px 0}.footer_link_card{justify-content:center;align-items:center;width:32%;height:220px;display:flex;position:relative;overflow:hidden}.footer_link_card img{object-fit:cover;width:100%;height:100%;transition:transform 5s linear;position:absolute;inset:0;transform:scale(1)}.footer_link_card:hover img{transform:scale(1.2)}.footer_link_card:before{content:"";background:#0f19239e;position:absolute;inset:0}.footer_link_card .m_head{z-index:2;color:#fff;text-shadow:0 1px 6px #0006;font-size:18px;position:relative}.bp_fv{position:relative}.bp_fv .pra_img{width:100%;height:46vh;min-height:320px;max-height:460px}.bp_fv .pra_img .bg{background-position:50%;background-size:cover;width:100%;height:100%;display:block}.bp_fv .m_head{color:#fff;text-align:center;width:100%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.bp_fv .m_head span{color:#ffffffd9}.bp_1c,.bp_2c{padding-top:90px;padding-bottom:110px}.bp_1c .m_head,.bp_2c .m_head{margin-bottom:56px}.bp_2c_in{background-color:#fff;flex-direction:row-reverse;gap:0;display:flex}.bp_2c_in.flex_return{flex-direction:row}.bp_2c_in>*{width:50%}.bp_2c_in .left{padding:70px 6%}.bp_2c_in .left .m_head3{margin-bottom:24px;font-size:22px;line-height:1.8}.bp_2c_in .left p{color:var(--color-text-sub);font-size:15px;line-height:2.4}.bp_2c_in .left p+p{margin-top:1.4em}.bp_2c_in .pra_img{height:100%;min-height:360px}.bp_2c_in+.bp_2c_in{margin-top:60px}.com_profile dl{flex-wrap:wrap;align-items:flex-start;display:flex}.com_profile dt{border-bottom:1px solid var(--color-accent);width:22%;font-family:var(--font-sans);color:var(--color-accent);padding:28px 0;font-size:14px}.com_profile dd{border-bottom:1px solid var(--color-border);width:78%;padding:28px 0 28px 5%;font-size:15px}.com_profile dt:last-of-type,.com_profile dd:last-of-type{border-bottom:none}.history_list{margin-top:8px}.history_list li{border-bottom:1px solid var(--color-border);gap:32px;padding:24px 0;font-size:15px;display:flex}.history_list li .year{color:var(--color-accent);font-family:var(--font-sans);flex:0 0 100px;font-size:14px}.history_list li:last-child{border-bottom:none}.flow_ol{counter-reset:num}.flow_ol li{border-bottom:1px solid var(--color-border);padding:40px 0 40px 200px;position:relative}.flow_ol li:last-child{border-bottom:none}.flow_ol li:before{counter-increment:num;content:"0" counter(num);font-family:var(--font-sans);color:var(--color-accent);border:1px solid var(--color-border);border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;font-size:26px;display:flex;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.flow_ol li h3{margin-bottom:.8em;font-size:18px}.flow_ol li p{color:var(--color-text-sub);font-size:14px;line-height:2.1}.equip_table_wrap{background:#fff;overflow-x:auto}.equip_table{border-collapse:collapse;width:100%;min-width:720px;font-size:14px}.equip_table caption{caption-side:top;text-align:left;font-family:var(--font-sans);color:var(--color-accent);padding:20px 24px;font-size:13px}.equip_table th,.equip_table td{border-bottom:1px solid var(--color-border);text-align:left;padding:16px 20px}.equip_table thead th{font-family:var(--font-sans);letter-spacing:.06em;color:var(--color-text-sub);background:var(--color-accent-soft);font-size:12px}.faq_cont dt,.faq_cont dd>div{align-items:center;min-height:88px;padding-left:120px;font-size:15px;display:flex;position:relative}.faq_cont dt{margin-bottom:20px;font-weight:500}.faq_cont dd{border-bottom:1px solid var(--color-border);margin-bottom:40px;padding-bottom:4px}.faq_cont dd:last-child{border-bottom:none;margin-bottom:0}.faq_cont dd>div{color:var(--color-text-sub);font-size:14px}.faq_cont dt:before,.faq_cont dd>div:before{content:"Q";width:88px;height:88px;color:var(--color-accent);border:1px solid var(--color-border);font-family:var(--font-sans);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:0;transform:translateY(-50%)}.faq_cont dd>div:before{content:"A";background:var(--color-accent);color:#fff;border:none}.works_filter{background:#fff;margin-bottom:40px}.works_filter ul{flex-wrap:wrap;gap:28px;padding:24px 32px;display:flex}.works_filter li button{font-family:var(--font-sans);letter-spacing:.04em;color:var(--color-text-sub);transition:color var(--transition-fast);padding:10px 0;font-size:13px;position:relative}.works_filter li.is-on button{color:var(--color-accent)}.works_filter li.is-on button:after{content:"";background:var(--color-accent);width:100%;height:2px;position:absolute;bottom:0;left:0}.bp_work_grid{flex-wrap:wrap;gap:4%;display:flex}.bp_work_grid .w{width:48%;margin-bottom:5%}.bp_work_grid .w .pra_img{height:22vw;min-height:200px;max-height:320px}.bp_work_grid .w h3{margin-top:24px;font-size:15px}.bp_work_grid .w .cat{font-family:var(--font-sans);color:var(--color-accent);border:1px solid var(--color-accent);margin-top:12px;padding:5px 12px;font-size:11px;display:inline-block}.access_block+.access_block{border-top:1px solid var(--color-border);margin-top:70px;padding-top:70px}.access_block .map_frame{border:1px solid var(--color-border);width:100%;height:380px}.access_block .map_frame iframe{border:0;width:100%;height:100%;display:block}.access_block .info{margin-top:28px;font-size:15px;line-height:2.2}.access_block .info .addr_label{font-family:var(--font-sans);color:var(--color-accent);letter-spacing:.1em;font-size:12px}.tel_block{border:1px solid var(--color-border);background:#fff;align-items:center;gap:20px;padding:32px 36px;display:flex}.tel_block .num{font-family:var(--font-sans);color:var(--color-accent);font-size:28px}.tel_block .note{color:var(--color-text-sub);font-size:13px}.form_cont .f_item{margin-bottom:32px}.form_cont .f_item label{font-family:var(--font-sans);margin-bottom:10px;font-size:14px;display:block}.form_cont .f_item label .req{color:#c0392b;margin-left:6px;font-size:12px}.form_cont .f_item textarea,.form_cont .f_item select,.form_cont .f_item input{border:1px solid var(--color-border);background-color:#fff;border-radius:4px;width:100%;padding:16px 18px;font-size:15px}.form_cont .f_item textarea{resize:vertical;height:180px}.form_cont .f_item_btn{width:100%;max-width:400px;margin:48px auto 0}.form_cont .f_item_btn button{color:#fff;background:var(--color-accent);width:100%;height:68px;font-family:var(--font-sans);letter-spacing:.1em;transition:background var(--transition-fast);font-size:15px}.form_cont .f_item_btn button:hover{background:var(--color-accent-dark)}.form_note{color:var(--color-text-sub);margin-top:40px;font-size:13px;line-height:1.9}.breadcrumb{font-family:var(--font-sans);color:var(--color-text-sub);padding:20px 0;font-size:12px}.breadcrumb a{color:var(--color-accent)}.pc{display:block}.sp{display:none}@media screen and (max-width:1080px){.site-header .g_navi{display:none}.menu-btn{display:flex}}@media screen and (max-width:1024px){.capability .grid{grid-template-columns:1fr;gap:56px}.capability .stats .m_tup_in{flex-flow:wrap;gap:32px}.capability .stat{border-top:none;border-bottom:1px solid var(--color-border);flex:200px;padding:0 0 16px}.capability .stat:last-child{border-bottom:1px solid var(--color-border)}.showcase-grid{grid-template-rows:repeat(3,minmax(200px,26vw));grid-template-columns:repeat(2,1fr)}.showcase-item--a{grid-area:1/1/2/3}.showcase-item--b{grid-area:2/1/4/2}.showcase-item--c{grid-area:2/2/3/3}.showcase-item--d{grid-area:3/2/4/3}.capability-list .thumb{flex-basis:120px;height:84px}.cta-v2 .grid{grid-template-columns:1fr;gap:48px}.cta-v2 .actions .m_tup_in{max-width:480px}}@media screen and (max-width:768px){.pc{display:none!important}.sp{display:block!important}.m_w,.m_w2,.m_w2-2{padding-left:20px;padding-right:20px}.m_head,.m_head_left{font-size:26px;line-height:1.5}.site-header{height:64px}.site-header .logo{padding:0 16px}.site-header .logo img{height:26px}.home_fv .copy h1{letter-spacing:.01em;font-size:30px;line-height:1.5}.home_fv .copy .eyebrow{letter-spacing:.2em;margin-bottom:18px;font-size:10px}.home_fv .copy p{margin-top:18px;font-size:11px}.home_fv .copy{bottom:40px}.scroll_down{display:none}#home>section{padding-top:var(--space-section-t-mobile);padding-bottom:var(--space-section-b-mobile)}.capability .grid{display:block}.capability .stats{margin-top:56px}.capability .stat .num{font-size:40px}.showcase-grid{grid-template-rows:none;grid-template-columns:1fr;gap:12px}.showcase-item--a,.showcase-item--b,.showcase-item--c,.showcase-item--d{grid-area:auto;height:62vw;min-height:220px}.capability-list li .m_tup_in{gap:20px;padding:28px 0}.capability-list .content h3{font-size:20px}.equipment-feature .stat_row{margin-top:48px}.equipment-feature .stat{flex:45%;padding:24px 20px}.equipment-feature .stat .num{font-size:38px}.cleanroom-feature .frame{padding:56px 8%}.trust .years{flex-direction:column;gap:16px;margin-top:60px}.trust .years .desc{text-align:center;max-width:none}.cta-v2 .grid{display:block}.cta-v2 .actions{margin-top:44px}.footer_links{display:block}.footer_link_card{width:100%;height:160px}.footer_link_card+.footer_link_card{margin-top:12px}.site-footer .cta_area{display:block}.site-footer .cta_area>div{width:100%}.site-footer .cta_area>div+div{margin-top:20px}.site-footer .logo_links{display:block}.site-footer .logo_links .right{margin-top:32px;margin-left:0}.bp_fv .pra_img{height:280px}.bp_1c,.bp_2c{padding-top:50px;padding-bottom:60px}.bp_2c_in{display:block}.bp_2c_in>*{width:100%}.bp_2c_in .left{padding:32px 20px}.bp_2c_in .pra_img{height:60vw;min-height:220px}.com_profile dt{border-bottom:none;width:100%;padding-bottom:6px;font-size:12px}.com_profile dd{width:100%;padding-top:0;padding-left:0}.history_list li{gap:16px}.flow_ol li{padding-top:100px;padding-left:0}.flow_ol li:before{width:70px;height:70px;font-size:18px;top:0;left:0;transform:none}.faq_cont dt,.faq_cont dd>div{min-height:48px;padding-left:60px;font-size:14px}.faq_cont dt:before,.faq_cont dd>div:before{width:48px;height:48px;font-size:13px}.bp_work_grid .w{width:100%}.bp_work_grid .w .pra_img{height:60vw}.access_block .map_frame{height:240px}.tel_block{flex-direction:column;align-items:flex-start;gap:8px;padding:24px}.tel_block .num{font-size:24px}}
