/* Official LINE artwork is used unchanged. Scope all rules to LINE links. */
a.line-consult {
 display:inline-flex !important; align-items:center !important; justify-content:center !important;
 gap:16px !important; box-sizing:border-box !important; min-height:58px !important;
 padding:14px 24px !important; height:auto !important; border:1px solid transparent !important;
 border-radius:2px !important; background:#06C755 !important; color:#fff !important;
 font-size:16px !important; font-weight:700 !important; line-height:1.4 !important;
 text-decoration:none !important; white-space:nowrap !important; vertical-align:middle;
}
a.line-consult:hover { background:#05B34C !important; }
a.line-consult:focus-visible { outline:3px solid #75dca2 !important; outline-offset:3px; }
a.line-consult > img.line-consult-icon {
 display:block !important; height:24px !important; width:auto !important; max-width:none !important;
 flex:0 0 auto !important; object-fit:contain !important; margin:0 !important;
 border:0 !important; border-radius:0 !important; box-shadow:none !important; filter:none !important;
}
a.line-consult > .nm-button-label {
 display:block !important; flex:0 0 auto !important; margin:0 !important; padding:0 !important;
 color:inherit !important; font:inherit !important; text-decoration:none !important;
}
@media (max-width:760px) {
 a.line-consult { min-height:82px !important; padding:20px !important; gap:20px !important; }
 a.line-consult > img.line-consult-icon { height:40px !important; }
 .al-page .al-header .al-header-main > .al-line.line-consult {
  grid-area:2/1/auto/-1 !important; width:100% !important; margin:0 !important;
 }
 .al-page .al-header .al-mobile-phone {
  grid-area:3/1/auto/-1; min-height:28px; display:flex; align-items:center; justify-content:center; gap:12px;
 }
 .al-page .al-header .al-mobile-phone a { min-height:28px; padding:0; align-items:center; font-size:13px; }
 .al-page .al-header .al-mobile-phone a svg { margin-top:0; }
 .al-page .al-header .al-mobile-phone span { position:static; }
 .al-page .al-header nav { grid-area:4/1/auto/-1; }
}
@media (max-width:700px) {
 html { scroll-padding-top:176px; }
 .ps-site.portal-site .ps-mobile-nav { max-height:calc(100dvh - 166px); }
}
