/* Mobile typography: native Japanese sans-serif fonts, no additional font downloads. */
@media (max-width:768px){
 :root{--stm-mobile-font:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Noto Sans CJK JP",Roboto,Meiryo,sans-serif}
 html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body{font-family:var(--stm-mobile-font);font-size:16px;font-weight:400;line-height:1.85;letter-spacing:.015em}
 button,input,textarea,select{font-family:var(--stm-mobile-font)}
 #main h1,#main h2,#main h3,#main h4{font-family:var(--stm-mobile-font);font-weight:700;letter-spacing:.015em;line-break:strict;word-break:normal;overflow-wrap:break-word}
 #main h2{font-size:clamp(22px,6.2vw,28px);line-height:1.65}
 #main h3{font-size:20px;line-height:1.65}
 #main .full-video-hero .hero-copy h1{font-family:var(--stm-mobile-font);font-size:clamp(32px,8.5vw,42px);font-weight:700;line-height:1.55;letter-spacing:0}
 #main .full-video-hero .hero-copy>p:not(.eyebrow){font-size:15px;font-weight:400;line-height:1.9}
 #main .subpage-hero h1,#main .page-hero h1{font-size:clamp(28px,8vw,36px);line-height:1.55}
 #main .split-intro h2{font-family:var(--stm-mobile-font);font-size:clamp(23px,6.4vw,29px);line-height:1.75}
 #main .split-intro .intro-grid>p:first-child{font-size:18px;font-weight:700;line-height:1.8}
 #main .split-intro .intro-grid>p:nth-child(2),#main .feature-description>p:not(.featured-external),#main .section.dark>.container>p:not(.eyebrow){font-size:16px;font-weight:400;line-height:1.9}
 #main .feature-headline .feature-caption{font-size:16px!important;font-weight:700;line-height:1.7}
 #main .featured-external{font-size:14px;line-height:1.8}
 #main .eyebrow{font-size:12px;font-weight:600;line-height:1.7;letter-spacing:.12em}
 #main .full-video-hero .eyebrow{font-size:11px;letter-spacing:.12em}
 #main .media-kit-hero .eyebrow{font-size:16px;font-weight:700;letter-spacing:.06em}
 #main .entry-content{font-size:16px;line-height:1.9}
 #main .entry-content p:not([class]),#main .media-area-copy>p:not(.eyebrow):not(.media-source-note),#main .media-overview-copy>p:not(.eyebrow),#main .media-target-copy>p:not(.eyebrow):not(.media-target-tags),#main .media-spec-card>p:not(.eyebrow),#main .media-price-note>p,#main .media-faq-item>p,#main .stm-group-relationship p:not(.eyebrow){font-size:16px;font-weight:400;line-height:1.9}
 #main .service-section-lead{font-size:16px;line-height:1.9}
 #main .service-card h3,#main .media-menu h3{font-size:20px;line-height:1.65!important;min-height:3.3em;font-weight:700}
 #main .service-overview .service-card h3{min-height:0}
 #main .service-card .service-pitch{font-size:15px;line-height:1.85;font-weight:600}
 #main .service-card .service-detail{font-size:14px!important;line-height:1.85;font-weight:400}
 #main .media-menu p:not(.media-menu-number){font-size:15px;line-height:1.85;font-weight:400}
 #main .service-card .wp-block-button__link{font-size:14px;font-weight:600}
 #main .media-target-tags{font-size:14px;line-height:1.85}
 #main .media-flow-step>p:not(.media-flow-number){font-size:14px;line-height:1.85}
 #main .media-source-note,#main .media-section-note,#main .media-plan-note{font-size:13px;line-height:1.85;font-weight:400}
 #main .media-plan-scale .media-plan-description{font-size:22px;font-weight:600;line-height:1.75}
 #main .media-map-label{font-size:12px;font-weight:700}
 #main .media-japan-map>p{font-size:14px;font-weight:600;line-height:1.7}
 #main .media-area-tags span{font-size:14px;font-weight:700}
 #main .media-stat-label{font-size:12px;font-weight:600;line-height:1.7}
 #main .media-kit-other-inquiry{font-size:14px;line-height:1.85}
 #main .btn,#main .wp-block-button__link{font-family:var(--stm-mobile-font);font-size:15px;font-weight:600;line-height:1.6;min-height:48px;white-space:normal;text-align:center}
 #main .full-video-hero .wp-block-button__link{font-size:14px;padding:13px 16px}
 #main .featured-menu-actions .wp-block-button__link{font-size:15px;min-height:54px}
 #main .stm-contact label,#main .form-row label{font-size:15px;font-weight:600;line-height:1.7}
 #main .stm-contact input:not([type=checkbox]):not([type=radio]):not([type=hidden]),#main .stm-contact textarea,#main .stm-contact select,#main .form-row input:not([type=checkbox]):not([type=radio]):not([type=hidden]),#main .form-row textarea,#main .form-row select{font-size:16px;font-weight:400;line-height:1.6;min-height:48px}
 #main .stm-contact input[type=checkbox],#main .stm-contact input[type=radio]{width:20px;height:20px;vertical-align:middle;flex-shrink:0}
 #main .stm-contact button{font-size:16px;font-weight:600;min-height:48px}
 #main .stm-contact .form-note,#main .form-note,#main .stm-contact fieldset{font-size:14px;line-height:1.85}
 #main .company-table th,#main .company-table td{font-size:14px;line-height:1.85;overflow-wrap:anywhere}
 #main .company-table th{font-weight:600}
 #main .stm-work-card-main h2,#main .stm-work-card-main h3{font-size:20px}
 #main .stm-work-summary,#main .stm-work-facts dt,#main .stm-work-facts dd{font-size:14px;line-height:1.85}
 #main .stm-work-excerpt{font-size:15px;line-height:1.85}
 #main .contact-band p:not(.eyebrow),#main .stm-media-request-cta>p{font-size:16px;line-height:1.85}
 .site-footer h2{font-family:var(--stm-mobile-font);font-size:28px;font-weight:600;line-height:1.6}
 .site-footer p{font-size:13px;line-height:1.85}.site-footer .copyright{font-size:11px;line-height:1.7}
 .site-footer a,.nav a{font-size:14px;font-weight:600;line-height:1.7}
 @supports(text-wrap:balance){#main h1,#main h2,#main h3{text-wrap:balance}}
}
@media(max-width:359px){
 #main h2{font-size:22px}
 #main .split-intro h2{font-size:23px}
 #main .full-video-hero .hero-copy h1{font-size:32px}
 #main .full-video-hero .wp-block-buttons{gap:10px}
 #main .full-video-hero .wp-block-button__link{font-size:13px;padding:12px 14px}
 #main .media-plan-scale .media-plan-description{font-size:20px}
}
