@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600&display=swap";:root{color:#263b4c;font-synthesis:none;text-rendering:optimizelegibility;scroll-behavior:smooth;background:#edf5fa;font-family:DM Sans,Noto Sans JP,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}a{color:inherit;text-decoration:none}.site-shell{background:#edf5fa;max-width:1600px;margin:0 auto;overflow:hidden}.header{background:#edf5fae6;justify-content:space-between;align-items:center;height:88px;padding:0 8%;display:flex}.logo{letter-spacing:-2px;font-size:28px;font-weight:700}.logo span,h2 span{color:#75a9c8}nav{letter-spacing:1px;gap:38px;font-size:12px;display:flex}nav a,.footer a{transition:opacity .2s}nav a:hover,.footer a:hover{opacity:.55}.hero{background:radial-gradient(at 77% 45%,#b7d8ebb3,#0000 36%),linear-gradient(120deg,#e9f3f9 0%,#dcecf5 60%,#eaf3f8 100%);align-items:center;min-height:660px;padding:120px 12% 100px;display:flex;position:relative;overflow:hidden}.hero-content{z-index:2;position:relative}.eyebrow{letter-spacing:2.5px;color:#7295aa;font-size:10px;font-weight:600}.hero h1{letter-spacing:-5px;margin:28px 0;font-size:clamp(54px,7vw,94px);font-weight:500;line-height:1.04}.hero h1 span{color:#729fba;font-weight:400}.hero-description{color:#688092;font-size:13px;line-height:2}.text-link{letter-spacing:1.7px;border-bottom:1px solid #8caabd;align-items:center;gap:25px;margin-top:28px;padding-bottom:9px;font-size:10px;display:inline-flex}.text-link span{font-size:15px}.social-block{margin-top:42px}.social-label{color:#8199a9;letter-spacing:2px;margin:0 0 15px;font-size:9px;font-weight:600}.social-links{flex-wrap:wrap;align-items:center;gap:20px;display:flex}.social-link{color:#718c9e;align-items:center;gap:7px;transition:color .2s,opacity .2s;display:inline-flex}.social-link:hover{color:#385f78;opacity:.75}.social-link>span:first-child{width:20px;height:20px;display:flex}.social-link svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.social-link[aria-label=X] svg{stroke-width:1.8px}.social-link[aria-label=X] svg rect{stroke-width:1.5px}.social-link[aria-label=X] svg path{stroke-width:2px}.social-name{letter-spacing:.3px;font-size:10px}.footer-social{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.footer-social .social-label{margin:0;font-size:8px}.footer-social .social-links{gap:15px}.footer-social .social-link>span:first-child{width:17px;height:17px}.footer-social .social-name{font-size:9px}.hero-decoration{pointer-events:none;position:absolute}.decoration-one{border:1px solid #5e91b040;border-radius:50%;width:410px;height:410px;top:16%;right:12%;box-shadow:0 0 0 45px #ffffff14,0 0 0 90px #ffffff14}.decoration-two{border:1px solid #ffffffa6;border-radius:48% 52% 40% 60%;width:280px;height:380px;top:23%;right:19%;transform:rotate(35deg)}.decoration-three{filter:blur(2px);background:linear-gradient(140deg,#ffffffa6,#79aecc26);border-radius:50%;width:150px;height:150px;top:40%;right:24%}.hero-side-note{color:#819eaf;letter-spacing:1.5px;writing-mode:vertical-rl;flex-direction:column;gap:8px;font-size:9px;display:flex;position:absolute;bottom:55px;right:5%}.hero-index{color:#819eaf;letter-spacing:2px;font-size:10px;position:absolute;bottom:55px;left:5%}.section{padding:115px 12%}.section-heading{justify-content:space-between;align-items:end;margin-bottom:48px;display:flex}.section-heading h2,.about h2{letter-spacing:-2px;margin:10px 0 0;font-size:52px;font-weight:500}.section-note{color:#8199a9;white-space:pre-line;font-size:11px;line-height:1.8}.editable-linebreak{white-space:pre-line}.works-grid{grid-template-columns:repeat(3,1fr);gap:26px;display:grid}.work-card{min-width:0}.preview-button{display:none}.cover{aspect-ratio:1;justify-content:center;align-items:center;width:100%;max-width:240px;margin:0 auto;transition:transform .45s,filter .45s;display:flex;position:relative;overflow:hidden}.cover-image{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.cover-title,.cover-number,.cover-mark{z-index:1}.empty-message{color:#8199a9;padding:30px 0;font-size:12px}.work-link:hover .cover{filter:saturate(1.12);transform:translateY(-7px)}.cover-one{background:radial-gradient(at 70% 30%,#f3f8fb 0%,#0000 35%),linear-gradient(135deg,#8cb8d0,#d4e5ed 55%,#7b9fb8)}.cover-two{background:radial-gradient(circle at 30% 30%,#e8f0f5,#0000 30%),linear-gradient(145deg,#a6c3d3,#dce8ec,#91aebf)}.cover-three{background:radial-gradient(at 65% 65%,#e9f1f5,#0000 32%),linear-gradient(135deg,#b4cbd7,#829eaf)}.cover-grain{background:repeating-linear-gradient(0deg,#0000,#0000 3px,#ffffff09 4px);position:absolute;inset:0}.cover-number{letter-spacing:2px;color:#fffc;font-size:10px;position:absolute;top:17px;left:18px}.cover-title{color:#f7fbfd;text-align:center;text-shadow:0 2px 18px #31546a33;flex-direction:column;gap:25px;display:flex;position:relative}.cover-title span{letter-spacing:3px;font-size:10px}.cover-title strong{letter-spacing:-1px;font-size:clamp(22px,3vw,38px);font-weight:400;line-height:1.1}.cover-coming{color:#ffffffd9;letter-spacing:3px;font-size:12px}.cover-mark{color:#ffffffbf;font-size:22px;position:absolute;bottom:12px;right:18px}.work-info{justify-content:space-between;align-items:center;margin-top:18px;display:flex}.work-type{color:#809aab;letter-spacing:1.5px;margin:0 0 7px;font-size:9px}.work-info h3{margin:0;font-size:17px;font-weight:500}.work-arrow{color:#769bb1}.work-description{color:#849ba9;margin-top:9px;font-size:10px}.about{background:#e3eef4;grid-template-columns:1fr 1fr;gap:70px;display:grid}.about-text{padding-top:25px}.about-lead{color:#496579;margin-top:0;font-size:21px;line-height:1.8}.about-text>p:not(.about-lead){color:#78909f;max-width:390px;font-size:12px;line-height:2.2}.news-item{border-top:1px solid #cfdee7;grid-template-columns:120px 1fr 20px;align-items:center;gap:20px;padding:24px 0;font-size:12px;display:grid}.news-item time{color:#819aaa}.news-item p{margin:0}.news-item span{color:#789bb0}.contact{text-align:center;background:radial-gradient(at 50% 100%,#c9dfeb,#0000 55%),#e8f2f7}.contact h2{letter-spacing:-3px;margin:25px 0;font-size:clamp(42px,6vw,70px);font-weight:400;line-height:1.15}.contact h2 span{color:#76a4be}.contact>p:not(.eyebrow){color:#78909f;font-size:11px}.contact-email{color:#496579;letter-spacing:1px;text-underline-offset:5px;margin-top:25px;font-size:14px;text-decoration:underline;transition:opacity .2s;display:block}.contact-email:hover{opacity:.6}.contact-link{letter-spacing:2px;border:1px solid #8caabd;align-items:center;gap:30px;margin-top:25px;padding:15px 30px;font-size:10px;display:inline-flex}.footer{color:#7b94a3;justify-content:space-between;align-items:center;min-height:110px;padding:25px 8%;font-size:10px;display:flex}.footer .logo{color:#263b4c}.footer p{letter-spacing:.5px}@media (width<=700px){.header{height:72px;padding:0 6%}.logo{font-size:25px}nav{gap:15px;font-size:10px}.hero{min-height:620px;padding:100px 8%}.hero h1{letter-spacing:-3px;font-size:clamp(52px,12vw,76px)}.decoration-one{width:270px;height:270px;top:12%;right:-100px}.decoration-two{width:190px;height:280px;top:20%;right:-25px}.decoration-three{top:36%;right:30px}.section{padding:80px 7%}.section-heading h2,.about h2{font-size:43px}.works-grid{grid-template-columns:repeat(2,1fr);gap:30px 16px}.about{grid-template-columns:1fr;gap:25px}.about-text{padding-top:0}.about-lead{font-size:18px}.news-item{grid-template-columns:75px 1fr 15px;gap:10px;font-size:11px}.footer{flex-wrap:wrap;gap:15px;padding:25px 6%}.footer-social{order:3;width:100%}.footer p{order:4;width:100%}.work-card{position:relative}.preview-button{z-index:2;color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;width:auto;height:auto;padding:0;display:flex;position:absolute;top:120px;left:50%;transform:translate(-50%)}.preview-button-content{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#263b4c7a;border:1px solid #ffffffbf;border-radius:30px;align-items:center;gap:9px;padding:11px 15px;transition:background .2s,border-color .2s;display:inline-flex;box-shadow:0 3px 15px #263b4c1f}.preview-icon{font-size:12px;line-height:1}.preview-label{letter-spacing:1.5px;font-size:9px;font-weight:600}.preview-button.is-playing .preview-button-content{background:#263b4cc7;border-color:#fffffff2}.work-card.is-playing .cover-image{filter:brightness(.78)}}@media (width<=390px){nav{gap:10px;font-size:9px}.works-grid{grid-template-columns:1fr}.preview-button{top:120px}}
