/* Original Sugiharu mascots: the three requested homepage placements. */
.st-brand-a .top-intro .st-home-company-mascot { left:12px!important; top:10px!important; bottom:10px!important; width:30%!important; height:auto!important; display:flex; align-items:center; justify-content:center; pointer-events:none; }
.st-brand-a .top-intro .st-home-company-mascot img { position:static!important; display:block; width:auto!important; max-width:100%; height:100%!important; max-height:190px; object-fit:contain; transform:none!important; }
.st-home-service-head { display:grid; grid-template-columns:minmax(0,1fr) 190px; grid-template-rows:auto auto; gap:16px 24px; align-items:center; margin:0 clamp(24px,4vw,64px); }
.st-brand-a .top-service .top-service__header { grid-column:1; grid-row:1; min-width:0; padding:0!important; }
.st-brand-a .top-service .st-service-tags { position:static!important; grid-column:1; grid-row:2; display:flex!important; flex-wrap:wrap; gap:10px; width:auto!important; margin:0!important; }
.st-brand-a .top-service .st-service-tags li { font-size:18px; }
.st-brand-a .top-service .top-service__illust.st-home-service-mascot { position:static!important; grid-column:2; grid-row:1 / 3; align-self:end; width:100%!important; margin:0!important; pointer-events:none; }
.st-home-service-mascot img { position:static!important; display:block; width:100%!important; height:auto!important; max-height:260px; object-fit:contain; transform:none!important; }
.st-brand-a .top-service .st-title-c__main { display:flex; flex-wrap:wrap; align-items:baseline; gap:0 16px; font-size:clamp(40px,7vw,108px); }
.st-brand-a .top-service .st-title-c__main > span:last-child { font-size:clamp(22px,3vw,42px); }
.st-brand-a .top-area .st-home-area-heading { position:relative; z-index:0; }
.st-brand-a .top-area .top-area__header { position:relative; z-index:1; padding-bottom:30px; }
.st-brand-a .top-area .top-area__illust.st-home-area-mascot { position:absolute!important; top:auto!important; left:auto!important; bottom:-110px; right:clamp(24px,5vw,80px)!important; width:180px!important; z-index:0!important; pointer-events:none; }
.st-home-area-mascot img { position:static!important; display:block; width:100%!important; height:auto!important; transform:none!important; }
.st-brand-a .top-area .top-area__items { position:relative; z-index:2; }
@media(max-width:1023px) {
 .st-brand-a .top-intro .st-home-company-mascot { width:88px!important; }
 .st-home-service-head { grid-template-columns:minmax(0,1fr) 140px; gap:12px 16px; margin:0 24px; }
 .st-home-service-mascot img { max-height:210px; }
 .st-brand-a .top-area .top-area__illust.st-home-area-mascot { width:140px!important; bottom:-90px; right:24px!important; }
}
@media(max-width:599px) {
 .st-brand-a .top-intro .st-home-company-mascot img { max-height:150px; }
 .st-home-service-head { grid-template-columns:minmax(0,1fr) 105px; gap:12px 10px; margin:0 20px; }
 .st-brand-a .top-service .st-title-c__main { font-size:40px; gap:0 8px; }
 .st-brand-a .top-service .st-title-c__main > span:first-child { font-size:clamp(36px,10vw,40px)!important; }
 .st-brand-a .top-service .st-title-c__main > span:last-child { font-size:22px; }
 .st-brand-a .top-service .st-service-tags { gap:6px; }
 .st-brand-a .top-service .st-service-tags li { font-size:13px; padding:3px 6px; }
 .st-home-service-mascot img { max-height:170px; }
 .st-brand-a .top-area .top-area__header { padding-bottom:100px; }
 .st-brand-a .top-area .top-area__illust.st-home-area-mascot { width:112px!important; bottom:-65px; right:24px!important; }
}
