@font-face{font-family:InterVariable;src:url("fonts/inter-variable.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
.language-switcher{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;margin-left:18px;color:#0f3d2a;order:3}
.english-only{display:none}
html[lang="en"] .english-only{display:block}
.owner-platform-summary{max-width:660px;margin-top:10px;line-height:1.7}
.operator-origin{flex-basis:100%;font-size:12px;line-height:1.7;color:rgba(255,255,255,.7);margin-top:-16px}
.language-select{font:inherit;font-size:13px;font-weight:650;color:inherit;background:transparent;border:1px solid #d4dfd8;border-radius:8px;min-height:36px;padding:6px 24px 6px 8px;width:108px;cursor:pointer}
.language-select:focus-visible{outline:3px solid #49a967;outline-offset:3px}
header nav{gap:12px}
header nav .nav-logo{flex-shrink:0;margin-right:auto;order:1}
header nav .nav-links{order:2;gap:clamp(9px,1.25vw,18px)}
header nav .hamburger{order:4;flex-shrink:0}
header:not(:has(nav)){display:flex;align-items:center;justify-content:space-between;gap:16px}
header:not(:has(nav)) .language-switcher{color:#fff}
header:not(:has(nav)) .language-select{border-color:rgba(255,255,255,.35)}
.language-select option{color:#232a2d;background:#fff}
html[lang="ja"] body{--font-main:"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic UI","Yu Gothic",Meiryo,sans-serif;font-family:var(--font-main)}
html[lang="zh-Hans"] body{--font-main:"PingFang SC","Hiragino Sans GB","Noto Sans SC","Microsoft YaHei",sans-serif;font-family:var(--font-main)}
html:is([lang="ja"],[lang="zh-Hans"]) :is(button,input,select,textarea){font-family:inherit}
html[lang="en"] body{--font-main:InterVariable,Arial,"Apple SD Gothic Neo",sans-serif;font-family:var(--font-main);font-optical-sizing:auto;font-kerning:normal;font-synthesis:none}
html[lang="en"] button,html[lang="en"] input,html[lang="en"] select,html[lang="en"] textarea{font-family:inherit}
html[lang="en"] h1,html[lang="en"] h2,html[lang="en"] h3{font-weight:700;letter-spacing:-.025em;line-height:1.28}
html[lang="en"] h4{font-weight:650;letter-spacing:-.015em}
html[lang="en"] .hero-title,html[lang="en"] .franchise-hero h1{font-size:clamp(32px,4vw,48px);font-weight:700;letter-spacing:-.035em;line-height:1.09;text-wrap:balance}
html[lang="en"] .hero-slogan{font-weight:550;letter-spacing:-.018em;line-height:1.45}
html[lang="en"] .hero-sub{font-weight:400;letter-spacing:0;line-height:1.72}
html[lang="en"] h1,html[lang="en"] h2,html[lang="en"] h3,html[lang="en"] p,html[lang="en"] .faq-answer{word-break:normal;overflow-wrap:break-word}
html[lang="ja"] body,html[lang="zh-Hans"] body{line-break:strict;overflow-wrap:break-word}
html:is([lang="ja"],[lang="zh-Hans"]) :is(h1,h2,h3,h4){text-wrap:balance}
html[lang="ja"] [data-i18n],html[lang="zh-Hans"] [data-i18n]{word-break:normal;overflow-wrap:break-word}
.store-upcoming>*{min-width:0}
.store-highlights,.store-desc,.store-addr,.su-body{min-width:0;overflow-wrap:break-word}
html[lang="ja"] .hero-left{max-width:720px}
html[lang="ja"] .hero-title{font-size:clamp(26px,4vw,40px);line-height:1.3;letter-spacing:-.025em}
html[lang="ja"] .hero-title .ja-hero-line{display:block}
html[lang="ja"] .hero-title .ja-hero-signature{display:flex;flex-wrap:wrap;align-items:baseline;gap:.1em .35em;margin-top:.12em}
html[lang="ja"] .hero-title .ja-hero-descriptor{font-size:.8em;letter-spacing:-.02em;white-space:nowrap}
html[lang="ja"] .hero-title .ja-hero-brand{white-space:nowrap}
html[lang="ja"] .hero-slogan{line-height:1.5;letter-spacing:0;text-wrap:balance}
html[lang="ja"] .hero-slogan .ja-hero-phrase{display:inline-block}
html[lang="ja"] .hero-sub{line-break:strict;overflow-wrap:normal;text-wrap:pretty}
.hero-title .accent{display:inline-block}
.store-badges{flex-wrap:wrap}
.store-badge{max-width:100%;white-space:normal}
.store-photo-overlay,.su-photo-overlay{max-width:100%}
.footer-links{display:flex;flex-wrap:wrap;gap:8px 16px}
.footer-links a{margin-right:0}
.footer-right{max-width:650px;overflow-wrap:anywhere}
html[lang="en"] .iot-diagram svg text{font-family:InterVariable,Arial,"Apple SD Gothic Neo","Malgun Gothic",sans-serif}
html:not([lang="ko"]) .iot-diagram text[font-size="17"]{font-size:15px}
html:not([lang="ko"]) .iot-diagram text[font-size="16"]{font-size:14px}
html:not([lang="ko"]) .iot-diagram text[font-size="14"]{font-size:13px}
html:not([lang="ko"]) .iot-diagram text[font-size="21"]{font-size:17px}
/* Keep translated measurements as numbers, with supporting text on its own row. */
.spec-box{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;padding:28px 16px;gap:0}
.spec-divider{display:none}
.spec-item{min-width:0;padding:8px 12px}
.spec-item~.spec-item{border-left:1px solid rgba(255,255,255,.2)}
.spec-icon{height:30px;margin-bottom:10px}
.spec-value{font-size:clamp(26px,3.2vw,38px);font-weight:800;line-height:1.15;min-height:72px;margin-bottom:8px}
.spec-number{display:block;white-space:nowrap;letter-spacing:-.035em}
.spec-unit{font-size:.5em;font-weight:700;letter-spacing:0;margin-left:.12em}
.spec-aux{display:block;font-size:12px;font-weight:500;line-height:1.45;margin-top:6px;color:#c6e1ce}
.spec-label{opacity:1;color:#d4e8da;line-height:1.5}
.spec-note{opacity:1;color:#b9d6c2}
.value-strip-inner{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
html:not([lang="ko"]) .value-item .value-num{font-size:clamp(24px,2.8vw,32px);line-height:1.25;text-wrap:balance;min-height:2.5em;display:flex;align-items:center;justify-content:center}
.value-item .value-desc{text-wrap:pretty}
.iot-mobile-diagram{display:none;list-style:none;padding:0;margin:0}
.iot-device{display:flex;align-items:center;gap:10px;padding:14px 12px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:rgba(255,255,255,.07);font-size:14px;line-height:1.5;min-width:0}
.iot-device-number{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:#d6edd9;color:#1b5c38;flex-shrink:0;font-size:11px;font-weight:800}
.iot-point>div:last-child,.af-point>div:last-child,.q-item>div:last-child,.scenario-card>div:last-child,.form-row>*{min-width:0}
.noti .n-app{display:block;margin:3px 0 0!important;line-height:1.4}
.app-phone-top{gap:8px}
.app-store-name{min-width:0}
.app-store-tag{flex-shrink:0;white-space:nowrap}
.app-menu{grid-template-columns:repeat(3,minmax(0,1fr))}
.app-tile{min-width:0;padding-left:3px;padding-right:3px}
.app-tile span{overflow-wrap:break-word;hyphens:auto;text-wrap:balance}
.b2b-stores .store-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}
.b2b-stores .store-badge{margin:0}
.form-group select{padding-right:44px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
.mt-btn{min-width:0;max-width:100%;text-align:left;line-height:1.4}
.mt-chip{flex-shrink:0}
.journey{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.j-step{min-width:0}
@media(max-width:1000px){
  .value-strip-inner{gap:16px}
  .value-item{padding:24px 16px}
  .journey{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:820px){
  .iot-diagram.has-mobile-map>svg{display:none}
  .iot-mobile-diagram{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}
@media(max-width:700px){
  .value-strip-inner{grid-template-columns:1fr}
  html:not([lang="ko"]) .value-item .value-num{min-height:0;font-size:28px;margin-bottom:12px}
  .spec-box{grid-template-columns:repeat(2,minmax(0,1fr));padding:24px 10px;gap:28px 0}
  .spec-item{padding:0 8px}
  .spec-item~.spec-item{border-left:0}
  .spec-item:nth-of-type(4n+3){border-left:1px solid rgba(255,255,255,.2)}
  .spec-value{font-size:28px}
  .journey{grid-template-columns:repeat(2,minmax(0,1fr))}
  .j-step:last-child{grid-column:1/-1}
}
@media(max-width:1100px){
  header nav .nav-links{display:none;flex-direction:column;align-items:flex-start}
  header nav .nav-links.open{display:flex;position:absolute;top:64px;left:0;right:0;background:#fff;padding:16px 24px 24px;box-shadow:0 8px 24px rgba(0,0,0,.1);z-index:99;gap:18px;max-height:calc(100dvh - 64px);overflow:auto}
  header nav .hamburger{display:flex}
}
@media(max-width:480px){
  header nav{padding:0 16px;gap:10px}
  header nav .nav-logo img{height:30px;max-width:min(31vw,120px);object-fit:contain}
  .language-switcher{margin-left:4px;gap:3px}
  .language-select{width:108px;font-size:12px;padding-left:6px}
  header:not(:has(nav)){padding:16px 12px;gap:8px}
  header:not(:has(nav))>a{font-size:14px}
  .language-switcher svg{width:16px}
  .appfeat-grid{grid-template-columns:minmax(0,1fr)}
  .appfeat-grid>*{min-width:0}
  html[lang="en"] .hero-title{font-size:clamp(30px,8.5vw,40px)}
  html[lang="ja"] .hero-title{font-size:clamp(24px,6.2vw,28px)}
  html[lang="ja"] .franchise-hero h1{font-size:clamp(20px,6.1vw,28px);line-height:1.45;letter-spacing:-.025em}
  html[lang="ja"] .hero-title .ja-hero-signature{flex-direction:column;align-items:flex-start}
  html[lang="ja"] .hero-title .ja-hero-descriptor{font-size:.85em}
  .hero-coupon{max-width:100%;font-size:13px;padding:10px 12px}
  .hero-coupon b{font-size:16px}
  .cta-coupon{max-width:100%;font-size:16px;padding:12px 16px}
  .container{padding-left:16px;padding-right:16px}
  .container table{font-size:12px;table-layout:fixed}
  .container td,.container th{padding:8px 6px;overflow-wrap:anywhere}
  .store-name{overflow-wrap:break-word}
  .store-photo-wrap,.su-photo{aspect-ratio:4/3}
  .store-photo-overlay,.su-photo-overlay{padding-top:24px}
  .su-photo{width:100%;min-height:260px}
  .su-body{padding:24px 20px}
  .recommend-item{padding:18px 20px;border-radius:22px}
  .scenario-card{padding:24px 20px;gap:14px}
  .q-item{padding:20px 16px;gap:12px}
  .mt-btns{display:grid;grid-template-columns:1fr}
  .mt-btn{width:100%;padding:13px 16px}
  .spec-label{font-size:13px}
  .app-phone-screen{padding-left:10px;padding-right:10px}
  .app-menu{gap:6px}
  .app-tile{padding:12px 4px}
}
@media(max-width:600px){
  .container .responsive-table{display:block;font-size:13px;line-height:1.6}
  .responsive-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
  .responsive-table tbody{display:block}
  .responsive-table tbody tr{display:block;padding:10px 14px;margin-bottom:12px;border:1px solid #dce5df;border-radius:12px;background:#fafcfb}
  .container .responsive-table td{display:grid;grid-template-columns:minmax(80px,.8fr) minmax(0,1.3fr);gap:12px;padding:10px 0;border:0;border-bottom:1px solid #e7ede9;overflow-wrap:break-word}
  .responsive-table td:last-child{border-bottom:0}
  .responsive-table td::before{content:attr(data-label);font-weight:650;color:#0f3d2a}
}
@media(max-width:380px){.iot-mobile-diagram{grid-template-columns:1fr}.spec-value{font-size:26px}}
@media(max-width:360px){
  html[lang="ja"] .hero-title .ja-hero-descriptor{font-size:.75em}
  header nav{padding:0 12px;gap:8px}
  header nav .nav-logo img{height:28px;max-width:88px}
  .language-switcher{margin-left:0}
}
