:root{--teal:#117999;--text:#404855;--drawer-bg:#f7f7f7;--font-ja:"Noto Sans JP", YuGothic, "Yu Gothic", sans-serif;--font-en:"Quicksand", var(--font-ja)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--text);font-family:var(--font-ja);letter-spacing:1.6px;-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-size:16px;line-height:1.5}img{max-width:100%;height:auto;display:block}ul,ol{margin:0;padding:0;list-style:none}a{color:inherit}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.reveal{opacity:0;transition:opacity 1s,transform 1s;transform:translateY(40px)}.reveal.is-shown{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transition:none;transform:none}}.menu-toggle{z-index:30;cursor:pointer;background:#fff;border:0;place-content:center;gap:5px;width:64px;height:56px;display:grid;position:fixed;top:16px;right:0}.menu-toggle span{background:var(--teal);border-radius:1px;width:26px;height:4px;display:block}.drawer-backdrop{z-index:40;background:#0009;position:fixed;inset:0}.drawer{z-index:50;background:var(--drawer-bg);visibility:hidden;width:300px;max-width:85vw;padding-top:100px;transition:transform .4s;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.drawer.is-open{visibility:visible;transform:none}.drawer-close{color:var(--text);cursor:pointer;background:0 0;border:0;font-size:36px;font-weight:700;line-height:1;position:absolute;top:8px;right:20px}.drawer a{border-bottom:1px solid var(--teal);color:var(--teal);padding:15px 14px;font-size:15px;font-weight:700;line-height:1.5;text-decoration:none;display:block}.drawer a:hover,.drawer a:focus-visible{background:#fff}.heading{color:var(--teal);font-family:var(--font-en);letter-spacing:1px;text-align:center;margin:0;font-size:50px;font-weight:700;line-height:60px}.heading--light{color:#fff}.band{background:var(--teal);color:#fff;position:relative;overflow:hidden}.deco{color:#ffffff6e;font-family:var(--font-en);white-space:nowrap;pointer-events:none;margin:0;font-size:124.8px;font-weight:300;line-height:1;position:absolute;bottom:-14px;right:4px}.value .deco{color:#ffffff36}.deco--left{color:#11799921;bottom:8px;left:2px;right:auto}.hero img{width:100%}.talent{padding:80px 20px}.talent-list{grid-template-columns:repeat(auto-fit,205px);justify-content:center;gap:80px;margin-top:200px;display:grid}.talent-card{text-align:center}.talent-card h3{letter-spacing:2.3px;min-height:62px;margin:14px 0 0;font-size:28.8px;font-weight:700;line-height:1.4}.talent-card small{letter-spacing:1.6px;font-size:13px;font-weight:400;line-height:1.6;display:block}.sns{justify-content:center;gap:10px;margin-top:14px;display:flex}.sns img{width:60px;transition:transform .2s}.sns a:hover img{transform:translateY(-2px)}.service{padding:110px 20px 190px}.service-list{gap:78px;max-width:1140px;margin:27px auto 0;display:grid}.service-item{grid-template-columns:130px 1fr;align-items:center;display:grid}.service-icon{z-index:1;grid-area:1/1;width:130px}.service-title{color:var(--teal);font-family:var(--font-en);text-align:center;background:#fff;grid-area:1/1/auto/-1;margin:8px 50px 0;padding:10px;font-size:32px;font-weight:600;line-height:32px}.service-item p{grid-column:1/-1;margin:5px 90px 0 110px}.about{padding:120px 20px 203px}.about-body{max-width:940px;margin:87px auto 0}.about-body p{margin:0 0 48px}.about-body p:nth-child(2){margin-bottom:24px}.about-body p:last-child{margin-bottom:0}.value{padding:100px 20px 48px}.value-sub{text-align:center;margin:27px 0 0;font-size:17px;font-weight:700;line-height:24px}.value-list{grid-template-columns:repeat(3,1fr);max-width:1260px;margin:79px auto 0;display:grid}.value-item{padding:40px 61px 39px 60px;position:relative}.value-item+.value-item{border-left:1px solid #ffffff4d}.value-num{width:70px;position:absolute;top:-40px;left:10px}.value-item h3{text-align:center;margin:0 0 28px;font-size:22.4px;font-weight:600;line-height:1}.value-item p{margin:0 0 14.4px}.value-image{margin:37px auto 0}.value-item:nth-child(2) .value-image{margin-top:6px}.value-item:nth-child(3) .value-image{margin-top:66px}.faq{padding:100px 20px 160px}.faq-list{max-width:940px;margin:60px auto 0}.faq-item{border-bottom:1px solid #ffffff4d;padding:24px 0}.faq-item dt{font-size:18px;font-weight:700}.faq-item dt:before{content:"Q. ";font-family:var(--font-en)}.faq-item dd{margin:10px 0 0}.company{padding:173px 20px 120px;position:relative;overflow:hidden}.company-table{max-width:800px;margin:90px 0 0 max(0px,50% - 440px)}.company-row{border-bottom:1px solid #eee;grid-template-columns:235px 1fr;padding:19px 0 18px;line-height:35px;display:grid}.company-row:first-child{padding:39px 0 38px;line-height:16px}.company-row dt,.company-row dd{margin:0;padding-left:60px}.company-row dd>span{display:block}.company-row:has(.officers) dd{padding-top:35px}.officers li{grid-template-columns:235px 1fr;margin-left:-235px;display:grid}.contact{text-align:center;margin-top:160px}.contact-button{background:var(--teal);color:#fff;border-radius:999px;padding:14px 40px;font-size:20px;font-weight:500;line-height:20px;text-decoration:none;transition:opacity .2s;display:inline-block;box-shadow:4px 4px 4px #0003}.contact-button:hover{opacity:.8}.footer{background:var(--teal);color:#fff;font-family:"Rubik", var(--font-ja);text-align:center;padding:18px;font-size:16px;line-height:1.6}.to-top{z-index:20;opacity:0;pointer-events:none;background:#87cfe6;border-radius:50%;width:50px;height:50px;transition:opacity .3s;position:fixed;bottom:15px;right:15px;box-shadow:0 2px 6px #0003}.to-top:before{content:"";border-top:2px solid #fff;border-left:2px solid #fff;width:12px;height:12px;position:absolute;top:21px;left:19px;transform:rotate(45deg)}.to-top.is-visible{opacity:1;pointer-events:auto}@media (width<=1024px){.talent-list{grid-template-columns:repeat(2,minmax(0,205px));gap:50px 40px}.value-list{grid-template-columns:1fr}.value-item+.value-item{border-left:0}}@media (width<=767px){body{letter-spacing:1.2px;font-size:14px;line-height:1.4}.heading{font-size:32px;line-height:43px}.deco{font-size:53.2px;bottom:-6px;right:12px}.deco--left{font-size:56px;bottom:-6px;right:auto}.talent{padding:40px 8px 70px}.talent-list{gap:16px;margin-top:48px}.talent-card h3{letter-spacing:1.6px;min-height:46px;margin-top:6px;font-size:20px}.talent-card small{font-size:12px;line-height:18px}.sns{margin-top:7px}.sns img{width:30px}.service{padding:48px 8px 130px 6px}.service-list{gap:42px;margin-top:18px}.service-item{grid-template-columns:70px 1fr}.service-icon{width:70px}.service-title{margin:11px 0 0 22px;padding:9.5px 10px;font-size:21px;line-height:21px}.service-item p{margin:29px 2px 0 14px}.about{padding:60px 20px 118px}.about-body{margin-top:48px}.about-body p,.about-body p:nth-child(2){margin-bottom:19.6px}.value{padding:40px 0 103px}.value-sub{margin-top:8px;font-size:14px}.value-list{margin-top:53px}.value-item{padding:14px 14px 104px}.value-item:first-child{padding-top:24px}.value-item:last-child{padding-bottom:0}.value-num{width:60px;left:8px}.value-item h3{font-size:19.6px;line-height:1.3}.value-item p{margin-bottom:14px}.value-image,.value-item:nth-child(n) .value-image{width:230px;margin-top:40px}.value-item:first-child .value-image{margin-top:13px}.company{padding:71px 20px 110px}.company-table{text-align:center;margin:103px auto 0;font-size:11px}.company-row{grid-template-columns:93px 1fr;padding:12px 0;line-height:15.4px}.company-row:first-child{padding:13px 0}.company-row dt,.company-row dd,.officers li>span{padding:0 12px}.company-row:has(.officers) dd{padding-top:15.4px}.officers li{grid-template-columns:93px 1fr;margin-left:-105px}.faq{padding:40px 14px 100px}.faq-list{margin-top:32px}.faq-item dt{font-size:15px}.contact{margin-top:106px}.footer{font-size:14px}}
