@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
@media(max-width:360px){body .section h2{font-size:26px}body .sales-diagram span{left:160px;padding:10px}body .service h3{font-size:24px}}
:root{--ink:#15273e;--blue:#2859e8;--paper:#f8f9f5;--lime:#e3f28c;--line:#d8dfd9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}.skip{position:fixed;top:-90px;padding:16px;background:white;z-index:100}.skip:focus{top:0}.header{height:106px;display:flex;align-items:center;gap:36px;padding:0 4.5%;border-bottom:1px solid var(--line)}.brand{display:block;width:211px;flex-shrink:0}.brand img{width:100%}.nav{margin-left:auto;display:flex;gap:32px;font-size:13px;font-weight:600}.nav a{padding:12px 0}.nav a:hover{color:var(--blue)}.header-contact{background:var(--ink);color:white;padding:15px 23px;border-radius:30px;font-size:13px;display:flex;gap:22px;align-items:center}.header-contact span{font-size:20px}.menu{display:none}.hero{padding:65px 4.5% 0;position:relative;display:grid;grid-template-columns:1fr 1.05fr;column-gap:2%;max-width:1700px;margin:auto}.eyebrow{font-size:13px;font-weight:600;letter-spacing:.12em;display:flex;gap:12px;align-items:center;margin:0 0 25px}.status-dot{width:9px;height:9px;background:var(--blue);border-radius:50%}.hero h1{font-size:clamp(54px,5.9vw,91px);font-weight:900;letter-spacing:-.075em;line-height:1.32;margin:0 0 26px;position:relative;z-index:1}.highlight{color:var(--blue);position:relative;white-space:nowrap}.highlight:after{content:'';position:absolute;height:9px;left:2px;right:-4px;bottom:1px;background:var(--lime);z-index:-1;transform:rotate(-2deg)}.hero-description{font-size:14px;line-height:2.05;font-weight:500;margin:0 0 26px;letter-spacing:.02em}.mobile-break{display:none}.primary{display:inline-flex;align-items:center;gap:32px;background:var(--blue);color:white;font-size:14px;font-weight:700;padding:9px 9px 9px 24px;border-radius:50px;transition:background .2s,transform .2s}.primary span{display:grid;place-items:center;width:42px;height:42px;background:white;color:var(--blue);border-radius:50%;font-size:25px}.primary:hover{background:var(--ink);transform:translateY(-3px)}.hero-art{position:relative;align-self:center;min-width:0;aspect-ratio:1;margin-top:15px}.workspace-art{width:110%;max-width:none;position:absolute;left:-5%;top:-1%;animation:scene-breathe 9s ease-in-out infinite;filter:drop-shadow(0 28px 20px #15273e08)}.orbit{position:absolute;inset:6%;border:1px solid #dce4d9;border-radius:50%;background:radial-gradient(circle,#eef2dd99,transparent 70%)}.orbit:after{content:'';position:absolute;inset:10%;border:1px dashed #d4dbd0;border-radius:50%}.art-caption{position:absolute;top:-27px;left:9%;right:9%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.13em;font-weight:600;color:#647265}.scene-label{position:absolute;z-index:2;display:flex;gap:12px;align-items:center;background:#fff;padding:13px 19px;border:1px solid #e4e8dd;border-radius:12px;box-shadow:0 9px 0 #14273e07;transition:transform .25s,border-color .25s;animation:tag-drift 6s ease-in-out infinite}.scene-label span{font-size:10px;line-height:1.8}.scene-label b{display:block;font-size:17px;font-weight:800}.scene-label i{font-style:normal;font-size:34px;color:var(--blue)}.label-sales{left:-2%;top:21%;transform:rotate(-5deg)}.label-digital{right:0;bottom:16%;animation-delay:-3s}.scene-label:hover{border-color:var(--blue);animation-play-state:paused;transform:translateY(-6px)}.spark{position:absolute;color:var(--blue);font-size:66px;line-height:1;animation:turn 30s linear infinite;z-index:2}.spark-one{right:8%;top:5%}.spark-two{left:8%;bottom:9%;color:#8a9c38;font-size:40px;animation-direction:reverse}.art-footer{position:absolute;bottom:-18px;width:100%;display:flex;justify-content:space-between;align-items:center;padding:0 8%;font-size:10px;letter-spacing:.05em}.motion{border:0;background:transparent;color:var(--ink);font-size:10px;cursor:pointer;padding:9px}.hero-bottom{grid-column:1/-1;border-top:1px solid var(--line);margin-top:61px;padding:24px 0;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.13em}.hero-bottom a{font-size:12px;font-weight:600;letter-spacing:.03em}.hero-bottom a span{display:inline-block;margin-left:28px;font-size:19px}.section{padding:105px 7%;max-width:1700px;margin:auto}.business{background:white;border-top:1px solid var(--line)}.section-title{display:grid;grid-template-columns:1.1fr 1fr;gap:0 40px;align-items:end}.section-title .eyebrow{grid-column:1/-1}.section h2{font-size:clamp(32px,3.5vw,52px);line-height:1.5;letter-spacing:-.055em;margin:0;font-weight:800}.section-title h2 span{color:var(--blue)}.section-title>p:last-child{font-size:14px;line-height:2.2;margin-bottom:5px}.services{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:50px}.service{padding:32px 36px 0;border-radius:5px;background:#edf2fa;position:relative;overflow:hidden}.service.digital{background:#f0f3df}.service-top{display:flex;justify-content:space-between;align-items:center;font-size:11px;letter-spacing:.1em}.round-arrow{display:grid;place-items:center;border:1px solid currentColor;width:42px;height:42px;border-radius:50%;font-size:23px;transition:transform .25s,background .25s}.service:hover .round-arrow,.project:hover .round-arrow{transform:rotate(45deg);background:white}.service h3{font-size:31px;line-height:1.6;letter-spacing:-.035em;margin:6px 0 15px}.service p{font-size:13px;line-height:2;margin:0}.service-bottom{display:flex;justify-content:space-between;padding:22px 0;margin-top:28px;border-top:1px solid #15273e30;font-size:13px;font-weight:600}.service-diagram{height:125px;position:relative;margin-top:10px}.sales-diagram i{position:absolute;width:67px;height:67px;top:24px;left:10px;border-radius:50%;border:17px solid var(--blue)}.sales-diagram i:nth-child(2){left:58px;border-color:#a8bdf9}.sales-diagram i:nth-child(3){left:106px;border-color:var(--ink)}.sales-diagram span{position:absolute;left:205px;top:15px;font-size:11px;letter-spacing:.1em;padding:13px 19px;background:white;border-radius:20px 20px 20px 0;transform:rotate(-8deg)}.digital-diagram{display:flex;align-items:center;padding-left:12px;gap:0}.digital-diagram i{font-size:22px;font-style:normal;display:grid;place-items:center;width:80px;height:74px;border-radius:14px;background:var(--ink);color:white;transform:rotate(-9deg)}.digital-diagram i:nth-child(2){background:var(--blue);transform:translateY(-10px) rotate(8deg)}.digital-diagram i:nth-child(3){background:var(--lime);color:var(--ink);transform:rotate(-6deg)}.projects{background:var(--paper)}.projects-heading{display:flex;justify-content:space-between;align-items:end}.projects-heading>p{font-size:14px;line-height:2.1}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:45px}.project-photo{aspect-ratio:1.5;overflow:hidden;position:relative;border-radius:4px;background:#dce5d5}.project-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.project:hover img{transform:scale(1.04)}.project-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#0007)}.photo-media img{object-position:center 56%}.project-photo>span{position:absolute;bottom:25px;left:26px;color:white;font-size:25px;font-weight:700;line-height:1.6;z-index:1}.project-text{display:flex;align-items:center;justify-content:space-between;margin-top:22px}.project-text small{font-size:11px}.project h3{font-size:29px;margin:6px 0}.project>p{font-size:13px;line-height:2;margin:8px 0}.contact{background:var(--lime);border-radius:40px 40px 0 0;position:relative}.contact>a{display:grid;grid-template-columns:1fr auto;align-items:center;gap:15px}.contact h2{font-size:clamp(32px,4.3vw,65px)}.contact-arrow{font-size:70px;display:grid;place-items:center;background:var(--ink);color:white;width:130px;height:130px;border-radius:50%;transition:transform .3s}.contact a:hover .contact-arrow{transform:rotate(45deg)}.contact-label{font-size:15px;font-weight:700;margin-top:25px}.contact>p:last-child{font-size:13px;line-height:1.8}footer{display:flex;gap:30px;align-items:center;padding:40px 4.5%;font-size:11px}footer .brand{margin-right:auto;width:180px}footer small{font-size:10px}.paused *{animation-play-state:paused!important}@keyframes scene-breathe{50%{transform:translateY(-9px) rotate(.7deg)}}@keyframes tag-drift{50%{translate:0 -10px}}@keyframes turn{to{rotate:360deg}}@media(min-width:1700px){.hero h1{font-size:91px}}@media(max-width:1050px){.header{gap:20px}.nav{gap:16px;font-size:11px}.brand{width:180px}.hero{padding-top:50px}.hero h1{font-size:6.2vw}.hero-description{font-size:12px}.scene-label{padding:10px 13px}.scene-label b{font-size:14px}.scene-label i{font-size:26px}.section{padding:75px 5%}.service{padding:25px 25px 0}.service h3{font-size:27px}footer{flex-wrap:wrap}.art-footer{padding:0;font-size:9px}}@media(max-width:700px){html{scroll-padding-top:75px}.header{height:76px;padding:0 6%;gap:12px}.brand{width:164px}.nav,.header-contact{display:none}.menu{display:block;margin-left:auto}.menu summary{list-style:none;width:42px;height:42px;border-radius:50%;background:var(--lime);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;cursor:pointer}.menu summary::-webkit-details-marker{display:none}.menu summary span{width:17px;height:1px;background:var(--ink)}.menu nav{position:absolute;top:76px;left:0;right:0;z-index:10;padding:20px 6% 30px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 18px 20px #15273e10;display:grid}.menu nav a{padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.hero{display:flex;flex-direction:column;padding:31px 6% 0}.eyebrow{font-size:11px;margin-bottom:19px;letter-spacing:.07em}.hero h1{font-size:clamp(45px,12.2vw,76px);line-height:1.32;letter-spacing:-.07em;margin-bottom:22px}.hero-description{font-size:13px;line-height:1.95;margin-bottom:22px}.mobile-break{display:block}.primary{font-size:13px;padding-left:20px;gap:23px}.primary span{width:38px;height:38px}.hero-art{width:100%;margin-top:45px;aspect-ratio:1.06}.art-caption{top:-6px;left:2%;right:2%;font-size:8px}.workspace-art{top:1%;width:108%;left:-4%}.orbit{inset:6% 4%}.scene-label{border-radius:9px;padding:8px 11px;gap:8px}.scene-label span{font-size:8px}.scene-label b{font-size:12px}.scene-label i{font-size:23px}.label-sales{top:25%;left:0}.label-digital{right:-1%;bottom:12%}.spark-one{font-size:42px;right:5%;top:8%}.spark-two{font-size:29px;bottom:8%}.art-footer{bottom:-22px;font-size:9px}.motion{font-size:9px}.hero-bottom{width:100%;margin-top:45px;padding:21px 0;font-size:8px}.hero-bottom>span:last-child{display:none}.hero-bottom a{font-size:10px}.hero-bottom a span{margin-left:10px}.section{padding:58px 6%}.section-title{display:block}.section h2{font-size:31px;line-height:1.55}.section-title>p:last-child{font-size:13px;margin-top:20px;line-height:2}.services{grid-template-columns:1fr;gap:18px;margin-top:30px}.service{padding:24px 25px 0}.service h3{font-size:27px}.service p{font-size:13px}.service p br{display:none}.service-diagram{height:112px}.projects-heading{display:block}.projects-heading>p{font-size:13px;margin-top:20px}.project-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.project-photo{aspect-ratio:1.3}.project-photo>span{font-size:23px}.project>p{font-size:14px}.contact{border-radius:25px 25px 0 0}.contact>a{gap:0;grid-template-columns:1fr 52px}.contact h2{font-size:clamp(24px,6.8vw,42px)}.contact-arrow{width:52px;height:52px;font-size:30px}.contact-label{font-size:13px;grid-column:1/-1}.contact>p:last-child{font-size:12px}footer{padding:32px 6%;gap:22px;font-size:10px}footer .brand{width:160px;flex-basis:100%}footer .brand img{width:160px}footer small{flex-basis:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
