 /* =================================================================
      1. CSSスコープ・リセット設定
    ================================================================= */
    #sbsd-win-container {
      all: revert;
      display: block;
      margin: 1% auto 0 auto;
      width: 100%;
      max-width: 100%;
      font-size: 16px;
      line-height: 1.6;
      color: #333;
      font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
      text-align: left;
      background: #fff;
    }

    #sbsd-win-container *,
    #sbsd-win-container *::before,
    #sbsd-win-container *::after {
      box-sizing: border-box !important;
    }

    #sbsd-win-container h3, #sbsd-win-container h4, #sbsd-win-container h5, #sbsd-win-container p, #sbsd-win-container ul, #sbsd-win-container li {
      all: revert;
      margin: 0;
      padding: 0;
      list-style: none;
    }

    #sbsd-win-container h3::before, #sbsd-win-container h3::after,
    #sbsd-win-container h4::before, #sbsd-win-container h4::after {
      content: none !important;
    }

    /* =================================================================
      2. 共通レイアウトクラス (sbsd-win- プレフィックス付与)
    ================================================================= */
    #sbsd-win-container .sbsd-win-flex {
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
    }

    #sbsd-win-container .sbsd-win-clr01 { color: #3FAAFA !important; }
    #sbsd-win-container .sbsd-win-keikou { background: linear-gradient(transparent 70%, #ff6 60%); }
    #sbsd-win-container .sbsd-win-small { padding-left: 2px; font-size: 11px; }

    /* =================================================================
      3. コンテンツ固有スタイル
    ================================================================= */
    #sbsd-win-container .sbsd-win-main-wrapper {
      max-width: 730px;
      margin: 0 auto;
      color: #333;
    }

    #sbsd-win-container .sbsd-win-fv-in { background: #f1f1f1; text-align: center; }
    #sbsd-win-container .sbsd-win-fvimg { margin: 0 auto; display: block; max-width: 100%; height: auto; }

    /* 見出し類 */
    #sbsd-win-container h3 {
      color: #000000 !important;
      border: 1px solid #3FAAFA;
      border-width: 2px 0;
      background: #DEEFFC !important;
      font-size: 20px;
      padding: 2%;
      margin: 2% 0;
      font-weight: bold;
    }

    #sbsd-win-container h4 {
      color: #2a2a2a !important;
      border-left: 6px solid #3FAAFA;
      background: #fff;
      font-size: 18px;
      text-align: left;
      padding: 0 2%;
      margin: 4% 2% 2% 2%;
      font-weight: bold;
    }

    #sbsd-win-container p {
      line-height: 1.67;
      font-weight: 350;
      color: #333;
      word-wrap: break-word;
    }

    /* お悩みリスト */
    #sbsd-win-container .sbsd-win-nayami {
      background: #deeffc;
      padding: 20px 20px 20px 50px;
      border-radius: 10px;
      width: 60%;
      margin: 0 auto;
    }
    #sbsd-win-container .sbsd-win-nayami ul li {
      padding-bottom: 10px;
      position: relative;
      line-height: 1.8;
    }
    #sbsd-win-container .sbsd-win-nayami ul li::after {
      content: ''; display: block; position: absolute; top: .5em; left: -1.5em;
      width: 10px; height: 5px; border-left: 3px solid #f3aa0c; border-bottom: 3px solid #f3aa0c;
      transform: rotate(-45deg);
    }

    /* ポイントボックス */
    #sbsd-win-container .sbsd-win-point-item {
      width: 31.4%;
      border: 1px solid #3FAAFA;
      margin-right: 20px;
      padding: 10px;
      border-radius: 7px;
    }
    #sbsd-win-container .sbsd-win-point-item:last-child { margin-right: 0 !important; }
    
    #sbsd-win-container .sbsd-win-pont-ttl-eng {
      text-align: center; color: #3FAAFA !important; font-weight: 600 !important;
      background: #deeffc;
    }
    #sbsd-win-container .sbsd-win-point-ttl-jp { margin-top: 10px; font-weight: 600 !important; color: #3FAAFA !important; }
    #sbsd-win-container .sbsd-win-point-txt { font-size: 14px; font-weight: 600 !important; }
    #sbsd-win-container .sbsd-win-caution { font-size: 12px; }
    #sbsd-win-container .sbsd-win-caution a { text-decoration: underline; color: #5999ff; }

    /* お問い合わせボタン */
    #sbsd-win-container .sbsd-win-contact-btn a {
      position: relative;
      display: flex;
      justify-content: space-around;
      align-items: center;
      margin: 0 auto;
      width: 430px;
      height: 85px;
      padding: 10px 25px;
      color: #fff !important;
      background: #3FAAFA;
      transition: 0.3s ease-in-out;
      font-weight: 600;
      filter: drop-shadow(0px 2px 4px #ccc);
      border-radius: 70px;
      text-align: center;
      text-decoration: none !important;
    }
    #sbsd-win-container .sbsd-win-contact-btn a:hover {
      transform: translateY(-2px);
      box-shadow: 0 15px 30px -5px rgba(0,0,0,0.15);
    }
    #sbsd-win-container .sbsd-win-contact-btn a::after {
      content: ''; width: 8px; height: 8px; border-top: 3px solid #fff; border-right: 3px solid #fff;
      transform: rotate(45deg) translateY(-48%);
      position: absolute; top: 48%; right: 20px; border-radius: 1px;
    }

    /* 下部：他の補助金リンク */
    #sbsd-win-container .sbsd-win-select-list{ margin-top: 20px; }
    #sbsd-win-container .sbsd-win-select-list a {
      position: relative; display: flex; justify-content: space-around; align-items: center;
      margin: 0 auto; width: 289px; padding: 10px 25px;
      font-weight: 600; text-align: center; text-decoration: none !important;
      transition: 0.3s ease-in-out;
    }
    #sbsd-win-container .sbsd-win-select-list a::after {
      content: ''; width: 8px; height: 8px; position: absolute; top: 48%; right: 20px;
      transform: rotate(45deg) translateY(-48%); border-radius: 1px;
    }
    #sbsd-win-container .sbsd-win-btn-second { border: 3px solid #77cc00; color: #77cc00 !important; margin-right: 10px !important; }
    #sbsd-win-container .sbsd-win-btn-second::after { border-top: 3px solid #77cc00; border-right: 3px solid #77cc00; }
    #sbsd-win-container .sbsd-win-btn-last { border: 3px solid #fc9534; color: #fc9534 !important; }
    #sbsd-win-container .sbsd-win-btn-last::after { border-top: 3px solid #fc9534; border-right: 3px solid #fc9534; }

    /* =================================================================
      4. レスポンシブ
    ================================================================= */
    @media screen and (max-width: 769px) {
      #sbsd-win-container .sbsd-win-detailWrap { padding: 0 4%; }
      #sbsd-win-container .sbsd-win-nayami { width: 100%; margin: 0 auto 20px auto; }
      #sbsd-win-container .sbsd-win-contact-btn a { width: auto; height: auto; padding: 20px 25px; }
      #sbsd-win-container .sbsd-win-point-item { width: 100%; margin-right: 0 !important; margin: 20px auto; }
      #sbsd-win-container .sbsd-win-select-wrap.sbsd-win-flex { display: block; }
      #sbsd-win-container .sbsd-win-select-list a { width: 100%; margin: 0 auto 15px !important; }
      #sbsd-win-container .sbsd-win-main-wrapper h3 { font-size: 18px; }
      #sbsd-win-container p.sbsd-win-bld-top { font-size: 18px; }
}