.portfolio{background:#F8FAFC;color:#182337;font-family:'Noto Sans JP','Yu Gothic','Hiragino Sans',Meiryo,system-ui,sans-serif;line-height:1.6}.portfolio,.portfolio *{box-sizing:border-box}.portfolio h1,.portfolio h2,.portfolio h3,.portfolio p{margin:0}.portfolio a{color:inherit;text-decoration:none}.portfolio a:focus-visible{outline:3px solid currentColor;outline-offset:5px}.portfolio ul{list-style:none;padding:0;margin:0}.wrap{width:min(1240px,calc(100% - 96px));margin:0 auto}.header{display:flex;align-items:center;gap:36px;min-height:110px;border-bottom:1px solid #182337}.logo{font-size:48px;font-weight:900;letter-spacing:-4px;line-height:1}.logo span{color:#2563EB;font-size:60px}.location,.eyebrow,.hero-rule,.art-caption,.art-footer,.pill,.meta,.name,.hello,.footer,.poster-small,.poster-bottom,.package-small,.can-bottom,.book-small,.page-number{font-family:'Courier New',monospace;font-size:12px;line-height:1.5}.header nav{margin-left:auto;display:flex;gap:30px;font-size:14px;font-weight:600}.header nav a:hover{color:#2563EB}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;padding:48px 0 36px}.eyebrow{font-weight:700;letter-spacing:.5px}.hero-copy .eyebrow{margin-bottom:24px}.hero h1{color:#2563EB;font-size:clamp(76px,9vw,130px);line-height:.94;letter-spacing:-.075em;font-weight:900}.hero h1 span{color:#182337}.intro-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:30px}.intro-row p{font-size:15px;font-weight:600}.intro-row p span{display:block;margin-top:8px;font-size:14px;font-weight:400;color:#49566A}.circle-link{display:grid;place-items:center;width:62px;height:62px;flex-shrink:0;background:#FBE45C;border:1px solid #182337;border-radius:50%;font-size:32px}.circle-link:hover{background:#FBC5AF}.hero-art{position:relative;background:#FBC5AF;min-height:540px;padding:26px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.art-caption{position:relative;z-index:2;font-weight:700}.flower{position:absolute;left:50%;top:48%;width:82%;aspect-ratio:1;transform:translate(-50%,-50%)}.petal{position:absolute;left:32%;top:0;width:36%;height:100%;background:#2563EB;border-radius:50%}.petal-two{transform:rotate(45deg)}.petal-three{transform:rotate(90deg)}.petal-four{transform:rotate(135deg)}.flower-center{position:absolute;left:27%;top:27%;width:46%;height:46%;background:#FBE45C;border-radius:50%;display:grid;place-items:center;font-family:'Courier New',monospace;font-size:clamp(48px,6vw,80px);font-weight:700;transform:rotate(90deg)}.spark{position:absolute;right:24px;top:22px;font-size:36px;line-height:1}.sticker{position:absolute;right:17px;bottom:82px;background:#F8FAFC;border:1px solid #182337;padding:15px 22px;font-size:21px;line-height:1.1;font-weight:900;letter-spacing:-1px;transform:rotate(-9deg);box-shadow:4px 4px 0 #182337}.art-footer{position:relative;display:flex;justify-content:space-between;align-items:center;font-weight:700;gap:12px}.art-footer span{font-size:30px}.hero-rule{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-top:1px solid #182337;padding:18px 0}.projects{padding:72px 0 38px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px}.section-heading .eyebrow{margin-bottom:14px}.section-heading h2{font-size:clamp(36px,4vw,56px);line-height:1.1;letter-spacing:-2px}.section-heading h2 span{color:#2563EB}.pill{border:1px solid #182337;border-radius:30px;padding:9px 15px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.project-art{position:relative;aspect-ratio:4/5;overflow:hidden;display:flex;align-items:center;justify-content:center}.number{position:absolute;z-index:3;left:12px;top:12px;display:grid;place-items:center;width:32px;height:32px;border:1px solid #182337;background:#F8FAFC;border-radius:50%;font:12px 'Courier New',monospace}.poster-art{background:#FBC5AF}.poster{width:82%;height:86%;background:#2563EB;color:#F8FAFC;padding:8% 5%;box-shadow:7px 8px 0 #18233726;display:flex;flex-direction:column;justify-content:space-between}.poster-small{font-size:10px}.poster strong{font-size:clamp(29px,3.8vw,53px);line-height:1.02;letter-spacing:-3px;font-weight:900}.poster-shapes{display:flex;gap:10%;align-items:center;height:30%}.poster-shapes span{width:43%;aspect-ratio:1;background:#FBE45C;border-radius:50%}.poster-shapes span:last-child{background:#FBC5AF;border-radius:0;transform:rotate(15deg);width:36%}.poster-bottom{border-top:1px solid #F8FAFC;padding-top:10px;font-size:10px}.packaging-art{background:#F1E599}.package-scene{position:relative;width:84%;height:72%;display:flex;align-items:flex-end;justify-content:center}.carton{position:relative;width:58%;height:93%;background:#FBE45C;border:2px solid #182337;border-right:18px solid #F29EAF;padding:15% 5% 8%;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(-5deg);box-shadow:5px 8px 0 #1823371A}.package-small{font-size:9px;line-height:1.3}.carton strong{font-size:clamp(23px,2.7vw,39px);line-height:1.02;font-weight:900;letter-spacing:-1.5px}.carton-mark{background:#2563EB;color:#F8FAFC;border-radius:50%;width:52%;aspect-ratio:1;display:grid;place-items:center;font-size:34px}.can{position:relative;width:39%;height:62%;background:#2563EB;border:2px solid #182337;border-radius:30% 30% 23% 23% / 9% 9% 8% 8%;margin-left:-5%;margin-bottom:-2%;display:flex;flex-direction:column;justify-content:space-around;align-items:center;padding:12% 0 7%;transform:rotate(6deg);box-shadow:5px 6px 0 #1823371A}.can-top{position:absolute;left:0;top:0;width:100%;height:12%;background:#B8CDFB;border-bottom:1px solid #182337;border-radius:50%}.can strong{width:100%;background:#F8FAFC;color:#2563EB;font-size:clamp(18px,2vw,28px);line-height:1.05;font-weight:900;padding:13% 8%;letter-spacing:-1px}.can-bottom{color:#F8FAFC;font-size:8px}.editorial-art{background:#DCD4F4}.book{display:flex;width:88%;height:61%;transform:rotate(-6deg);box-shadow:5px 9px 0 #18233726}.book-left,.book-right{position:relative;width:50%;padding:9% 5% 5%;border:1px solid #182337;display:flex;flex-direction:column;justify-content:space-between}.book-left{background:#F8FAFC}.book-right{background:#FFF9EA}.book-small{font-size:8px;letter-spacing:-.3px}.book-left strong{font-size:clamp(24px,3vw,42px);line-height:.98;letter-spacing:-2px;color:#2563EB;font-weight:900}.text-lines{height:22px;background:repeating-linear-gradient(to bottom,#182337 0,#182337 1px,transparent 1px,transparent 6px);width:95%}.page-number{font-size:9px}.book-right .page-number{text-align:right}.book-graphic{position:relative;height:68%;background:#F29EAF;overflow:hidden}.book-graphic span{position:absolute;width:76%;aspect-ratio:1;left:12%;top:12%;border-radius:50%;background:#FBE45C}.book-graphic i{position:absolute;width:120%;height:45%;background:#2563EB;left:0;bottom:0;transform:rotate(-35deg)}.meta{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:18px 0 9px;font-size:11px}.card h3{font-size:26px;line-height:1.2;letter-spacing:-.8px;font-weight:800}.card>p{margin-top:10px;font-size:14px;color:#49566A;line-height:1.75}.tags,.skills{display:flex;flex-wrap:wrap;gap:8px}.portfolio .tags{margin-top:16px}.tags li{font-size:12px;border:1px solid #A9B3C1;padding:4px 10px;border-radius:30px}.project-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #BAC2CD;margin-top:38px;padding-top:18px;font-size:14px;color:#49566A}.project-foot>span{font-size:34px;color:#2563EB}.about{background:#2563EB;color:#F8FAFC;margin-top:32px;padding-top:58px}.about-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;margin-top:35px;margin-bottom:62px}.about h2{font-size:clamp(34px,4.2vw,57px);line-height:1.16;letter-spacing:-2px;font-weight:800}.about h2 span{color:#FBE45C}.name{display:flex;align-items:center;gap:14px;margin-top:28px!important}.name span{color:#FBE45C;font-size:42px}.hello{display:inline-block;background:#FBE45C;color:#182337;border-radius:30px;padding:7px 13px;font-weight:700;margin-bottom:20px}.about-copy .japanese{font-size:23px;font-weight:700;line-height:1.7;margin-bottom:20px}.about-copy>p:not(.japanese){font-size:15px;line-height:1.85;margin-bottom:15px}.portfolio .skills{margin-top:22px}.skills li{font-size:13px;border:1px solid #C1D2FC;padding:5px 11px;border-radius:30px}.footer{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;border-top:1px solid #A9C3FF;padding:22px 0}.footer-logo{font-family:system-ui,sans-serif;font-size:32px;font-weight:900;letter-spacing:-2px}.footer a:last-child:hover{color:#FBE45C}@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.hero-grid{gap:28px}.hero-art{min-height:490px}.project-grid{gap:18px}.about-grid{gap:35px}.pill{max-width:240px}.poster strong{letter-spacing:-2px}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{min-height:90px;gap:20px;flex-wrap:wrap;padding:18px 0}.logo{font-size:38px}.logo span{font-size:46px}.location{font-size:10px}.header nav{gap:18px}.hero-grid{grid-template-columns:1fr;padding-top:30px;gap:30px}.hero h1{font-size:clamp(78px,20vw,138px)}.hero-art{min-height:0;aspect-ratio:1}.hero-rule{font-size:11px}.flower-center{font-size:clamp(50px,14vw,90px)}.projects{padding-top:48px}.section-heading{align-items:flex-start;flex-direction:column;gap:18px}.section-heading h2{font-size:42px}.pill{max-width:none;font-size:11px}.project-grid{grid-template-columns:1fr;gap:38px}.poster strong{font-size:clamp(42px,12vw,82px)}.poster-small,.poster-bottom{font-size:12px}.carton strong{font-size:clamp(32px,9vw,58px)}.package-small{font-size:11px}.can strong{font-size:clamp(26px,7vw,44px)}.can-bottom{font-size:10px}.carton-mark{font-size:48px}.book-left strong{font-size:clamp(36px,10vw,65px)}.book-small,.page-number{font-size:11px}.text-lines{height:32px;background:repeating-linear-gradient(to bottom,#182337 0,#182337 1px,transparent 1px,transparent 8px)}.meta{font-size:12px}.card>p{font-size:15px}.about{margin-top:15px;padding-top:38px}.about-grid{grid-template-columns:1fr;gap:32px;margin-top:25px;margin-bottom:42px}.about h2{font-size:clamp(34px,8.7vw,58px)}.name{font-size:11px}.footer{font-size:11px}.art-footer{font-size:11px}}@media(max-width:380px){.location{display:none}.hero h1{font-size:21vw}.hero-art{padding:20px}.sticker{font-size:17px;padding:12px 16px;bottom:64px}.art-footer{font-size:10px}.section-heading h2{font-size:36px}.book-small{font-size:9px}.package-small{font-size:9px}}