/* Typography fix (new /works/ page only): keep Japanese text in Gothic, including PDF/preview environments. */
.tsu-works { font-family: "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif; }
/* TSUNAGITE /works/ new-page-only stylesheet: scoped to .tsu-works; existing site.css unchanged. */
.tsu-works {background:#fff}
.tsu-works .works-preview-warning{background:#f8f4eb;border-bottom:1px solid #e6dec9;color:#70501f;font-size:11px;line-height:1.6;letter-spacing:.02em;padding:9px 6%;text-align:center}
.tsu-works .works-hero{min-height:530px;display:grid;grid-template-columns:52% 48%;background:#082541;color:white;overflow:hidden}
.tsu-works .works-hero-copy{padding:84px clamp(30px,6vw,98px) 70px max(45px,8%);position:relative;z-index:1}
.tsu-works .works-eyebrow,.tsu-works .works-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.19em;color:#70d5eb}
.tsu-works .works-hero h1{font-size:clamp(38px,4.2vw,62px);font-weight:900;line-height:1.29;letter-spacing:-.066em;margin:27px 0 19px}
.tsu-works .works-hero p{font-size:17px;font-weight:500;line-height:2;color:#d8e9f1;max-width:460px}
.tsu-works .works-rule{display:block;width:118px;height:4px;background:linear-gradient(90deg,#f6aa42 0 35%,#12b3d0 35% 100%);margin:27px 0}
.tsu-works .works-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:30px}
.tsu-works .works-tags span{display:inline-flex;padding:5px 13px;border:1px solid #ffffff57;border-radius:100px;color:#edfaff;font-size:11px;letter-spacing:.04em}
.tsu-works .works-hero-art{min-height:480px;position:relative;background:radial-gradient(circle at 82% 10%,#e9f9fe 0 15%,transparent 43%),linear-gradient(143deg,#9dd7ec,#d9f3fb 55%,#f2fbfe);overflow:hidden;display:flex;align-items:center;justify-content:center}
.tsu-works .works-hero-art:before{content:'';position:absolute;inset:auto -21% -42% -22%;height:80%;background:#c6eaf7;border-radius:50%;transform:rotate(-13deg)}
.tsu-works .works-hero-art:after{content:'';position:absolute;right:-80px;top:-125px;width:370px;height:370px;border-radius:50%;border:42px solid #ffffff6b}
.tsu-works .works-hero-stage{position:relative;width:min(88%,510px);height:380px;z-index:1;filter:drop-shadow(0 25px 28px #163e5536)}
.tsu-works .works-browser{position:absolute;top:30px;left:3%;width:82%;height:250px;border:6px solid white;border-radius:14px;background:#fff;box-shadow:0 0 0 1px #a8d7e3;overflow:hidden}
.tsu-works .works-browser-top{height:31px;background:#e5f0f5;display:flex;align-items:center;gap:5px;padding:0 15px}
.tsu-works .works-browser-top i{width:7px;height:7px;border-radius:50%;background:#8ab7c7}
.tsu-works .works-browser-row{display:grid;grid-template-columns:1.05fr .95fr;height:calc(100% - 31px)}
.tsu-works .works-browser-left{padding:27px 16px 19px 26px;background:#123951;color:white}
.tsu-works .works-browser-left small{font-size:8px;letter-spacing:.24em;color:#80d8ed}
.tsu-works .works-browser-left strong{display:block;font-size:25px;line-height:1.33;margin:11px 0 16px}
.tsu-works .works-browser-left em{display:block;width:71px;height:8px;background:#27b4d7;border-radius:20px}
.tsu-works .works-browser-right{background:linear-gradient(153deg,#c2ebf6,#72b7d6);display:flex;flex-direction:column;justify-content:center;padding:20px;gap:9px}
.tsu-works .works-browser-right b{height:12px;background:#ffffffab;border-radius:8px}
.tsu-works .works-browser-right b:nth-child(2){width:70%}
.tsu-works .works-browser-right b:nth-child(3){width:86%;height:47px;background:#fff9}
.tsu-works .works-sheet{position:absolute;bottom:14px;left:17%;width:43%;height:120px;transform:rotate(-10deg);background:white;border:5px solid white;box-shadow:0 12px 28px #1e5d7536;border-radius:6px;overflow:hidden}
.tsu-works .works-sheet-top{height:54px;background:#0d4167;color:white;padding:13px 12px;font-weight:850;font-size:14px;line-height:1.2}
.tsu-works .works-sheet-top span{font-size:7px;display:block;color:#9de2f5;letter-spacing:.1em}
.tsu-works .works-sheet-bottom{display:flex;gap:5px;padding:8px}
.tsu-works .works-sheet-bottom i{width:24px;height:24px;background:#a5dce8}
.tsu-works .works-sheet-bottom i:nth-child(2){flex:1;height:7px;margin-top:7px;background:#c2d6e1}
.tsu-works .works-phone{position:absolute;right:7%;bottom:2px;width:110px;height:206px;border:7px solid #083956;border-radius:22px;background:#e7f8ff;box-shadow:0 17px 29px #153e5b48;overflow:hidden;transform:rotate(8deg)}
.tsu-works .works-phone:before{content:'';display:block;width:36px;height:5px;border-radius:8px;background:#083956;margin:8px auto 15px}
.tsu-works .works-phone .screen-mark{display:block;width:60%;height:67px;background:#2a9cca;margin:0 auto 12px;border-radius:4px}
.tsu-works .works-phone .screen-line{display:block;margin:8px 13px;background:#89bdd1;height:7px;border-radius:6px}
.tsu-works .works-phone .screen-line:last-child{width:55%}
.tsu-works .works-bridge{position:absolute;bottom:21px;right:26%;width:175px;height:14px;border:4px solid #e8a34c;border-bottom:0;border-radius:50% 50% 0 0;opacity:.8}
.tsu-works .works-intro{padding:75px max(6%,calc((100% - 1110px)/2));text-align:center}
.tsu-works .works-intro h2,.tsu-works .works-section h2{font-size:clamp(28px,2.8vw,39px);letter-spacing:-.055em;color:#082541;margin:11px 0 20px;font-weight:900;line-height:1.4}
.tsu-works .works-intro p{max-width:780px;margin:0 auto;line-height:2.2;color:#4e6575}
.tsu-works .works-section{padding:65px max(5.3%,calc((100% - 1160px)/2)) 85px}
.tsu-works .works-section.alt{background:#f1f7fa}
.tsu-works .works-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:33px}
.tsu-works .works-section-head p{max-width:400px;color:#536e80;font-size:14px;margin:0}
.tsu-works .works-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tsu-works .works-showcase{background:#fff;border:1px solid #e0eaf0;border-radius:12px;overflow:hidden;box-shadow:0 8px 26px #0b36540b}
.tsu-works .works-picture{height:170px;position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:center;background:#d9edf7}
.tsu-works .works-picture.web{background:linear-gradient(140deg,#e9f8fc,#b2e5f3)}
.tsu-works .works-picture.print{background:linear-gradient(150deg,#e8e9ea,#d1e1ee)}
.tsu-works .works-picture.ai{background:linear-gradient(125deg,#072d49,#24678c)}
.tsu-works .works-picture.it{background:linear-gradient(144deg,#c3e9ee,#eaf7f9)}
.tsu-works .works-picture.grants{background:linear-gradient(150deg,#e9f1f7,#bed8ea)}
.tsu-works .works-picture.safe{background:linear-gradient(150deg,#123c59,#18617b)}
.tsu-works .works-picture .tile{position:relative;z-index:2;width:76%;height:69%;background:#fff;box-shadow:10px 12px 0 #12547622;border-radius:5px;padding:13px;transform:rotate(-4deg)}
.tsu-works .works-picture .tile:before{content:'';display:block;height:12px;background:#0d3452;border-radius:2px;margin-bottom:14px}
.tsu-works .works-picture .tile i{display:block;background:#93d4e9;height:9px;border-radius:2px;margin-bottom:9px}
.tsu-works .works-picture .tile i:nth-child(3){width:75%}
.tsu-works .works-picture.print .tile{width:47%;height:72%;transform:rotate(-14deg);border-bottom:40px solid #2c86a5}
.tsu-works .works-picture.print .tile:after{content:'';position:absolute;width:80%;height:85%;background:#fff;border-top:28px solid #f0ac4a;transform:rotate(17deg);left:66%;top:7px;box-shadow:4px 8px 20px #3753692e;z-index:-1}
.tsu-works .works-picture.ai .tile,.tsu-works .works-picture.safe .tile{background:#f1faff;width:70%;transform:none}
.tsu-works .works-picture.ai .tile:before,.tsu-works .works-picture.safe .tile:before{background:#1f8db6}
.tsu-works .works-picture.it .tile{border-radius:15px;transform:none}
.tsu-works .works-picture.grants .tile{width:58%;transform:rotate(-7deg)}
.tsu-works .works-icon{position:absolute;z-index:3;right:11%;bottom:11%;width:59px;height:59px;border-radius:13px;background:#0a5779;color:#fff;font-size:26px;font-weight:800;display:grid;place-items:center;box-shadow:0 9px 17px #183c574d}
.tsu-works .works-picture.ai .works-icon,.tsu-works .works-picture.safe .works-icon{background:#f8ac4d;color:#11354b}
.tsu-works .works-card-body{padding:23px 24px 27px}
.tsu-works .works-card-body span{display:block;color:#0087ad;font-size:10px;letter-spacing:.13em;font-weight:900;margin-bottom:8px}
.tsu-works .works-card-body h3{font-size:19px;margin-bottom:10px;color:#082d4d;letter-spacing:-.04em}
.tsu-works .works-card-body p{font-size:13px;line-height:1.9;color:#567084;margin:0}
.tsu-works .works-notice{font-size:12px;color:#56758b;line-height:1.9;margin-top:20px}
.tsu-works .works-case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.tsu-works .works-case{border:1px solid #dce8ee;background:#fff;border-radius:11px;padding:26px 24px 29px;box-shadow:0 8px 24px #0b365308}
.tsu-works .works-case-no{display:block;color:#138bae;letter-spacing:.15em;font-size:11px;font-weight:850;margin-bottom:12px}
.tsu-works .works-case h3{font-size:21px;line-height:1.5;color:#0a3450;letter-spacing:-.05em;margin:0 0 19px}
.tsu-works .works-stage{padding:15px 0;border-top:1px solid #e7eef2}
.tsu-works .works-stage b{display:block;color:#167ba4;font-size:11px;margin-bottom:6px;letter-spacing:.08em}
.tsu-works .works-stage p{margin:0;font-size:13px;color:#466074;line-height:1.9}
.tsu-works .works-workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;list-style:none;padding:0;margin:28px 0 0}
.tsu-works .works-workflow li{border-top:4px solid #0b89b5;padding:21px 18px;background:#f1f7fa;min-height:145px}
.tsu-works .works-workflow li:nth-child(2){border-color:#52bed8}
.tsu-works .works-workflow li:nth-child(3){border-color:#e7a94f}
.tsu-works .works-workflow li:nth-child(4){border-color:#083f65}
.tsu-works .works-workflow small{display:block;color:#1688aa;font-weight:800;letter-spacing:.16em}
.tsu-works .works-workflow b{font-size:19px;color:#0c3d57;display:block;margin:8px 0}
.tsu-works .works-workflow p{font-size:12px;line-height:1.8;margin:0;color:#4e6a7d}
.tsu-works .works-cta{padding:70px max(5.3%,calc((100% - 1160px)/2));background:#092943;color:white;position:relative;overflow:hidden}
.tsu-works .works-cta:after{content:'';position:absolute;right:-35px;top:-170px;width:430px;height:430px;border:60px solid #3dc9dc1a;border-radius:50%}
.tsu-works .works-cta h2{font-size:clamp(27px,3vw,39px);margin:13px 0 18px;max-width:790px;letter-spacing:-.05em}
.tsu-works .works-cta p{font-size:15px;color:#d3eaf3;margin-bottom:26px;max-width:710px}
.tsu-works .works-cta a{display:inline-flex;text-decoration:none;background:#f5aa48;color:#082541;font-size:14px;font-weight:850;padding:14px 29px;border-radius:5px;position:relative;z-index:2}
.tsu-works .works-cta a:hover{background:#ffc26d}
.tsu-works .works-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.tsu-works .works-links a{color:#d5f4ff;background:transparent;border:1px solid #d5f4ff66;padding:10px 17px;font-size:12px}
.tsu-works .menu-mobile.works-open{display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;transform:none!important;position:relative!important;flex-direction:column!important;padding:14px 6%;background:#fff;box-shadow:none;border-bottom:1px solid #dae9f0}
.tsu-works .menu-mobile.works-open a{padding:10px 12px;border-bottom:1px solid #ebf1f5;font-weight:650;color:#173a54;text-decoration:none;font-size:14px}
@media (max-width:1250px){.tsu-works .nav{display:none}.tsu-works .menu-button{display:inline-flex}}
@media (max-width:800px){.tsu-works .nav{display:none}.tsu-works .menu-button{display:inline-flex}.tsu-works .works-hero{grid-template-columns:1fr}.tsu-works .works-hero-copy{padding:55px 7% 45px}.tsu-works .works-hero h1{font-size:clamp(34px,7.8vw,52px)}.tsu-works .works-hero-art{min-height:340px}.tsu-works .works-hero-stage{height:312px;transform:scale(.85)}.tsu-works .works-intro{padding:60px 7%}.tsu-works .works-section{padding:52px 6% 65px}.tsu-works .works-section-head{display:block}.tsu-works .works-section-head p{max-width:none}.tsu-works .works-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.tsu-works .works-case-grid{grid-template-columns:1fr}.tsu-works .works-workflow{grid-template-columns:repeat(2,minmax(0,1fr))}.tsu-works .works-cta{padding:58px 7%}}
@media (max-width:520px){.view-shell{padding:0!important}.site-shell{box-shadow:none!important}.tsu-works .site-head{padding:14px 5.3%}.tsu-works .official-logo{width:177px}.tsu-works .works-hero-copy{padding:52px 6% 43px}.tsu-works .works-hero h1{font-size:37px}.tsu-works .works-hero p{font-size:14px}.tsu-works .works-hero-art{min-height:295px}.tsu-works .works-hero-stage{transform:scale(.78)}.tsu-works .works-intro h2,.tsu-works .works-section h2{font-size:29px}.tsu-works .works-grid{grid-template-columns:1fr}.tsu-works .works-picture{height:175px}.tsu-works .works-card-body{padding:19px 23px 22px}.tsu-works .works-workflow{grid-template-columns:1fr}.tsu-works .works-workflow li{min-height:0}.tsu-works .works-cta h2{font-size:27px}.tsu-works .works-case{padding:20px}.tsu-works .works-preview-warning{font-size:10px}.tsu-works .works-tags{gap:6px}.tsu-works .works-tags span{font-size:10px}.tsu-works .works-cta a{width:100%;justify-content:center}}
@media (prefers-reduced-motion:reduce){.tsu-works *{scroll-behavior:auto!important;transition:none!important}}

/* V2 anonymous model-case detail enhancements: case section only. */
.tsu-works .works-demo-disclaimer{background:#f2f8fb;border:1px solid #cce3ed;border-left:4px solid #1e93b5;border-radius:7px;padding:12px 17px;margin:-4px 0 25px;color:#355770;font-size:13px;line-height:1.85}
.tsu-works .works-demo-disclaimer strong{color:#0a4565}
.tsu-works .works-cases-v2 .works-case{display:flex;flex-direction:column;min-width:0}
.tsu-works .works-cases-v2 .works-case h3{min-height:3em}
.tsu-works .works-cases-v2 .works-stage b{font-size:12px;color:#136e91}
.tsu-works .works-output-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.tsu-works .works-output-list li{font-size:13px;line-height:1.6;color:#3e5b70;position:relative;padding-left:15px}
.tsu-works .works-output-list li::before{content:'✓';position:absolute;left:0;top:0;color:#1aa4bc;font-weight:800}
.tsu-works .works-cases-v2 .works-stage.works-operation{margin-top:auto;background:#f4fafc;padding:15px;border-radius:6px;border-top:0}
@media (max-width:800px){.tsu-works .works-cases-v2 .works-case h3{min-height:0}.tsu-works .works-demo-disclaimer{font-size:12px}.tsu-works .works-cases-v2 .works-stage.works-operation{margin-top:12px}}
