/* Specific arrow targets prevent translated title wrappers from rotating. */
.service-door h2>[data-ja]{display:contents}.service-door:hover h2>[data-ja]{transform:none}.service-door h2 .door-arrow{display:inline-block}
#wave-canvas{opacity:0;transition:opacity .35s ease}.webgl-ready #wave-canvas{opacity:1}.wave-modes{visibility:hidden}.webgl-ready .wave-modes{visibility:visible}.wave-fallback{display:none!important}
.door-photo{position:relative;align-self:center;border-radius:4px;overflow:hidden;height:150px}.door-photo img{height:100%;width:100%;object-fit:cover;transition:transform .4s}.door-photo>span{position:absolute;bottom:0;left:0;right:0;padding:9px 7px;font-size:9px;background:#06151ae6;color:#e4f4fa;text-align:center}.service-door:hover .door-photo img{transform:scale(1.035)}
.easy-iot{padding-top:35px;padding-bottom:95px}.iot-service-hero{min-height:0;padding-bottom:45px}.iot-service-hero h1{font-size:clamp(40px,6.2vw,90px)}.iot-service-hero .service-hero-bottom p{font-size:15px;max-width:610px;line-height:2}.easy-iot .section-top p{font-size:15px;line-height:2;max-width:500px}.easy-iot h2,.iot-home-examples h2{font-size:clamp(34px,4vw,62px);line-height:1.45}.field-tabs{display:flex;gap:10px;margin:40px 0 25px}.field-tabs button{padding:15px 32px;border:1px solid #55717f;border-radius:50px;font-size:16px;transition:.2s}.field-tabs button[aria-pressed=true],.field-tabs button:hover{background:#b9e6f6;color:#102631;border-color:#b9e6f6}.field-story{display:grid;grid-template-columns:1.25fr 1fr;gap:4vw;align-items:center}.field-story-image{position:relative;min-width:0}.field-story-image img{width:100%;height:auto;aspect-ratio:1.4;object-fit:cover}.field-story-image>span{display:block;font-size:14px;line-height:1.7;padding:18px;background:#172a37;color:#dfedf6}.field-story-phone h3{font-size:clamp(23px,2.35vw,35px);letter-spacing:-.04em;line-height:1.6;margin:18px 0 25px}.notice-card{background:#e9f0f2;color:#0c2631;border-radius:20px;padding:25px;box-shadow:0 0 0 7px #253a47,0 0 0 9px #456777;margin:8px 9px 22px}.notice-card>span{font-size:12px;display:flex;align-items:center;flex-wrap:wrap;gap:7px}.notice-card i{width:8px;height:8px;border-radius:50%;background:#299abd}.notice-card small{font-size:10px;margin-left:auto;color:#5d7987}.notice-card>b{display:block;font-size:20px;line-height:1.6;margin:23px 0 15px}.notice-card>p{font-size:14px;line-height:1.9}.notice-demo{display:block;margin-top:22px;border-top:1px solid #afc4ce;width:100%;text-align:left;padding:18px 0 0;font-size:13px;color:#174d65}.notice-card .notice-next{border-top:1px solid #afc4ce;padding-top:15px;margin-top:15px;font-size:13px;color:#24546a}.field-caption{font-size:13px;color:#a8bcc7}.illustration-note{font-size:12px;line-height:1.9;color:#99aeb8;margin-top:28px;max-width:1000px}.iot-home-examples{background:#10222d;padding-top:85px;padding-bottom:80px}.iot-photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:40px}.iot-photo-grid img{aspect-ratio:1.5;object-fit:cover;width:100%;transition:filter .3s}.iot-photo-grid a:hover img{filter:brightness(1.08)}.iot-photo-grid a>span{display:block;color:#8ccef0;font-size:13px;margin-top:22px}.iot-photo-grid h3{font-size:24px;line-height:1.5;margin:13px 0}.iot-photo-grid p{font-size:14px;color:#b6c7cf}.iot-case-copy>p,.iot-case-copy dd{font-size:14px;line-height:1.95}.iot-case-copy dt{font-size:13px}.iot-approach .capability-grid p{font-size:14px;line-height:1.9}.iot-approach .capability-grid h3{font-size:22px;line-height:1.5}
.contact-dialog label{font-size:13px}.contact-dialog input,.contact-dialog textarea,.contact-dialog select{font-size:16px}.contact-dialog #contact-status{font-size:13px;line-height:1.9;white-space:pre-wrap}.contact-dialog .fine{font-size:11px;line-height:1.9}.contact-honeypot{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}.prepared-mail{font-size:14px;line-height:1.8}#contact-challenge{margin:15px 0}body:has(.playground) header nav{font-size:12px!important;gap:18px!important}.site-head nav{margin-left:3%}
@media(max-width:1100px){.field-story{grid-template-columns:1.1fr 1fr;gap:30px}.notice-card{padding:20px}.notice-card>b{font-size:18px}.iot-photo-grid{gap:18px}.iot-photo-grid h3{font-size:20px}body:has(.playground) header nav{display:none}.door-photo{height:130px}.site-head nav{display:none}.site-head .menu-toggle{display:block}}
@media(max-width:700px){.door-photo{display:none}.iot-service-hero{padding-top:45px;padding-bottom:40px}.iot-service-hero h1{font-size:clamp(30px,7.7vw,48px);line-height:1.55}.iot-service-hero .service-hero-bottom p{font-size:14px;max-width:100%;margin-top:25px}.iot-service-hero .service-hero-bottom p br{display:none}.iot-service-hero .service-hero-bottom h2{font-size:22px}.iot-service-hero .service-hero-bottom{margin-top:30px}.easy-iot{padding-top:30px;padding-bottom:60px}.easy-iot h2,.iot-home-examples h2{font-size:32px}.easy-iot .section-top p{font-size:14px;margin-top:25px}.easy-iot .section-top p br{display:none}.field-tabs{gap:7px;margin:25px 0 20px}.field-tabs button{padding:12px 8px;font-size:13px;flex:1}.field-story{grid-template-columns:1fr;gap:30px}.field-story-image img{aspect-ratio:1.45}.field-story-image>span{font-size:12px;padding:15px}.field-story-phone h3{font-size:25px;margin:15px 0 25px}.notice-card{padding:23px}.notice-card>b{font-size:19px}.notice-card>p{font-size:14px}.illustration-note{font-size:11px}.iot-home-examples{padding-top:55px;padding-bottom:55px}.iot-photo-grid{grid-template-columns:1fr;gap:35px;margin-top:30px}.iot-photo-grid img{aspect-ratio:1.65}.iot-photo-grid a>span{margin-top:18px}.iot-photo-grid h3{font-size:24px;margin:10px 0}.iot-photo-grid p{font-size:13px}.iot-home-examples .line-link{display:inline-block;margin-top:25px}.iot-case-copy>p,.iot-case-copy dd{font-size:13px}.iot-case-copy dt{font-size:12px}.iot-approach .capability-grid p{font-size:13px}.iot-approach .capability-grid h3{font-size:20px}.contact-dialog{padding:30px 23px}.contact-dialog label{font-size:12px}.mobile-menu{max-height:calc(100svh - 75px);overflow-y:auto}.mobile-menu a{font-size:24px}}
@media(prefers-reduced-motion:reduce){#wave-canvas,.door-photo img{transition:none}}.motion-off #wave-canvas,.motion-off .door-photo img{transition:none}
