*{box-sizing:border-box;}
  body{margin:0;font-family:"Noto Sans JP",sans-serif;color:#1f2d3a;-webkit-font-smoothing:antialiased;}
  a{color:#0d5aa7;text-decoration:none;}
  a:hover{color:#0a4880;}
  img{max-width:100%;}
  .hdr-burger{display:none;}
  @media (max-width:960px){
    /* header */
    .hdr-inner{padding:10px 16px !important;gap:12px !important;}
    .hdr-logo img{height:40px !important;}
    .hdr-nav{display:none !important;}
    .hdr-cta{display:none !important;}
    /* SPは下部固定バーに「電話する」があるためヘッダーの電話番号は隠す */
    .hdr-tel{display:none !important;}
    /* 電話番号が消えるので、右寄せの役割をバーガーへ移す */
    .hdr-burger{display:flex !important;margin-left:auto !important;}
    /* layout */
    section{padding-left:16px !important;padding-right:16px !important;}
    .fullbleed{padding-left:0 !important;padding-right:0 !important;}
    .g1{grid-template-columns:1fr !important;}
    .g2sp{grid-template-columns:1fr 1fr !important;}
    .svc-row{flex-direction:column !important;gap:24px !important;}
    /* typography */
    h1{font-size:20px !important;line-height:1.6 !important;}
    h2{font-size:23px !important;line-height:1.45 !important;}
    h3{font-size:17px !important;}
    /* tables scroll instead of squashing */
    table{font-size:13.5px !important;}
    table th,table td{padding:11px 12px !important;}
    /* trouble bubbles */
    .bubble{width:47% !important;height:150px !important;padding:14px 26px 36px !important;}
    .bubble h3{font-size:13.5px !important;}
    .cta-strip{flex-direction:column !important;flex-wrap:wrap !important;gap:16px !important;padding:18px 16px !important;}
    .cta-strip .cta-strip-item{padding:0 !important;}
    .cta-strip .cta-strip-btn{padding:12px 24px !important;margin-left:0 !important;}
    .cta-strip-item + .cta-strip-item::before{display:none !important;}
    /* illustrations */    .ill-worried{height:150px !important;width:auto !important;}
    .solve-box{padding:16px 18px !important;gap:10px !important;align-items:center !important;}
    .solve-box img{height:110px !important;width:auto !important;margin-top:-56px !important;}
    .solve-box p{font-size:19px !important;}
    .yorokobi{height:130px !important;}
    /* footer: nav links are covered by the SP menu */
    .footer-nav{display:none !important;}
    .footer-copy{margin-top:26px !important;}
    /* form targets */
    input,textarea,select,button{font-size:16px !important;}
    body{padding-bottom:78px !important;}
  }
  @media (max-width:520px){
    .g2sp{grid-template-columns:1fr !important;}
    h2{font-size:21px !important;}
  }
@media (max-width:960px){ .pc-fixed-bar{ display:none !important; } }
  @media (min-width:961px){ body{ padding-bottom:96px; } .sp-fixed-bar{ display:none !important; } }
/* dropdown (CSS hover) */
.has-drop{position:relative;}
.drop{position:absolute;top:100%;left:-16px;padding-top:8px;}
.has-drop > .drop{display:none;}
.has-drop:hover > .drop{display:block;}
/* sp menu */
#spMenu{display:none;}
#spMenu.is-open{display:block;}
