/* サイト共通の追加スタイル（静的版で追加した部分） */
html{scrollbar-gutter:stable}
html.sp-lock{overflow:hidden} /* ポップアップを開いてもスクロールバーの幅ぶん画面が横にずれないように */
.sp{overflow-x:clip;overflow-wrap:break-word}
html,body{overflow-x:clip}
.sp p,.rich p{overflow-wrap:anywhere}
[data-modal]{display:none !important}
[data-modal].open{display:flex !important}
a.card{display:block;color:inherit}
a.card:hover{color:inherit}
.news-row{box-sizing:border-box}
.sp-menu-btn{display:none}
.sp-menu{display:none}
@media (max-width: 900px){
  .sp-menu-btn{display:flex;position:absolute;top:10px;right:92px;width:44px;height:44px;align-items:center;justify-content:center;border:1.5px solid #C9D6E6;border-radius:10px;background:#FFFFFF;color:#0E1E33;cursor:pointer;padding:0}
  .sp-menu.open{display:block;position:fixed;inset:0;z-index:90;background:rgba(14,30,51,.45)}
  .sp-menu nav{position:absolute;top:64px;left:12px;right:12px;background:#FFFFFF;border-radius:18px;padding:12px;box-shadow:0 20px 50px rgba(14,30,51,.25);display:flex;flex-direction:column}
  .sp-menu nav a{display:flex;align-items:center;min-height:48px;padding:0 14px;border-radius:10px;color:#0E1E33;text-decoration:none;font-weight:700;font-size:15px}
  .sp-menu nav a:hover,.sp-menu nav a[aria-current]{background:#EEF8FF;color:#1E6DC7}
  .sp-menu nav a.sp-menu-cta{margin-top:8px;justify-content:center;background:#1E6DC7;color:#FFFFFF}
  header.site-header,header.site-header > div{min-height:64px !important}
  header.site-header > div{padding:0 148px 0 16px !important}
  header.site-header > div > a:first-child{font-size:15px !important;white-space:normal !important;line-height:1.35}
  header.site-header .contact-tab{width:76px !important;height:64px !important;right:8px !important;font-size:11px !important}
}
@media (max-width: 420px){
  header.site-header > div > a:first-child{font-size:13px !important}
}
@media (max-width: 420px){
  .sp #top h1{font-size:30px !important;line-height:1.5 !important}
}
/* 見積もりの内訳ポップアップ（大きめ表示） */
[data-modal="quote"] [role="dialog"]{max-width:960px !important;padding:52px clamp(20px,5vw,56px) 44px !important}
[data-modal="quote"] h2{font-size:32px !important}
[data-modal="quote"] p{font-size:15px !important}
[data-modal="quote"] table{font-size:16px !important;width:100%}
[data-modal="quote"] th,[data-modal="quote"] td{padding:16px clamp(12px,1.6vw,20px) !important}
[data-modal="quote"] [data-k="total"]{font-size:22px !important}
[data-modal="quote"] ul{font-size:14px !important;margin-top:18px !important}
[data-modal="quote"] a,[data-modal="quote"] button[data-act="close"]:not([aria-label]){min-height:60px !important;font-size:17px !important}
@media (max-width:600px){
[data-modal="quote"] [role="dialog"]{padding:44px 20px 24px !important}
[data-modal="quote"] h2{font-size:24px !important}
[data-modal="quote"] table{font-size:14px !important}
[data-modal="quote"] th,[data-modal="quote"] td{padding:12px 14px !important}
[data-modal="quote"] .yp-v{display:none} [data-modal="quote"] .yp-m{font-size:10px !important;letter-spacing:-.04em}
}
/* トップのChatwork風画面：本文は枠いっぱいに */
.home-ui .home-section .home-chatwork p,.home-chatwork p{max-width:none !important}
/* トップのABOUT：よくある不満 → 解決策の3枚 */
.home-ui .home-benefits .home-benefit{flex-wrap:nowrap !important;flex-direction:row !important;align-items:flex-start !important;padding:20px 22px !important;gap:16px !important}
@media (min-width:768px) and (max-width:1223px){.home-about .home-benefits{display:grid !important;grid-template-columns:repeat(3,1fr)}}
/* トップのサービス一覧：アイコンと名前のタイル */
.svc-tile{box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .15s ease,box-shadow .15s ease}
.svc-tile:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(0,0,0,.26)}
.svc-tile:hover .svc-tile-plus{color:#1E6DC7 !important}
.svc-tile:focus-visible{outline:3px solid #8EC5FF;outline-offset:3px}
@media (max-width:640px){.svc-tiles{gap:8px !important}.svc-tile{min-height:124px !important;padding:18px 6px 14px !important;gap:10px !important}.svc-tile span{font-size:12.5px !important}.svc-tile img{width:44px !important;height:44px !important}.svc-tile .svc-tile-plus{top:6px !important;right:8px !important;font-size:14px !important}}
/* 料金プランのカード（トップと料金プランのページ）：上の帯は細く、説明と試算ボタンは下端にそろえる */
.plan-card{display:flex;flex-direction:column}
html body .plan-card > div:first-child,html body #plans .plan-card.home-card > div:first-child{height:6px !important}
.plan-card > div:nth-child(2){flex:1 1 auto;display:flex;flex-direction:column}
html body .plan-card .plan-note{margin-top:auto !important;background:transparent !important;border-left:3px solid #B9D7F5;border-radius:0 !important;padding:2px 0 2px 12px !important;min-height:0}
.plan-card ul{margin-bottom:20px}
.plan-card .plan-try:hover{background:#1E6DC7;color:#fff !important}
.home-ui #plans .home-card p.plan-hours > span:first-child{font-size:17px !important;line-height:1.5 !important;font-family:inherit !important;font-weight:700 !important;color:#2B3990 !important;letter-spacing:normal !important}
