/*
  /asset/css/page/p-price.css
  priceページFV以外用CSS
*/
.p-price-form__attention {
  padding: 20px 0 0;
  text-align: center;
  color: var(--black);
}
/* husbpot form */
.p-price-form {
  label {
    padding: 1px 0 5px 0;
    margin: 8px 0 0 0;
    font-weight: 700;
    font-size: 14px;
    display: flex;
    align-items: center;
    .hs-form-required {
      background-color: var(--rdenshihozon-primary);
      color: var(--white);
      font-size: 12px;
      padding: 2px 4px 1px;
      border-radius: 3px;
      margin: -2px 6px 0 2px;
    }
  }
  .hs-fieldtype-checkbox {
    label {
      padding: 0 0 10px;
    }
  }
  .hs-error-msg {
    font-size: 12px;
    color: var(--form-error-color);
    padding: 2px 0 0 0;
    margin: 0;
    text-align: left;
    font-weight: 500;
  }
  .hs_error_rollup {
    .hs-main-font-element {
      display: block;
      font-size: 12px;
      color: var(--form-error-color);
      cursor: default;
      margin: 10px auto;
      width: 80%;
      border-radius: 3px;
      text-align: center;
    }
  }
  .hs_rsk_prefecture,
  .hs_rsk_how_to_know {
    position: relative;
  }
  .hs_rsk_prefecture:after,
  .hs_rsk_how_to_know:after {
    width: 7px;
    height: 7px;
    border-left: 2px solid var(--rdenshihozon-primary);
    border-bottom: 2px solid var(--rdenshihozon-primary);
    transform: rotate(-45deg);
    position: absolute;
    right: 28px;
    top: 43px;
  }
  .hs-form-field > label {
    display: flex;
    .hs-form-required {
      order: -1;
      margin: 0 5px 0 0;
    }
  }
  .hs-fieldtype-select > .input {
    position: relative;
  }
  .hs-fieldtype-select > .input:after {
    position: absolute;
    display: block;
    content: "";
    width: 6px;
    height: 6px;
    border-top: 1px solid #706d6d;
    border-right: 1px solid #706d6d;
    right: 15px;
    top: calc(50% - 3px);
    transform: rotate(135deg);
  }
  .input {
    display: block;
    padding: 0;
    margin: 0;
    input[type="text"],
    input[type="email"],
    input[type="tel"],
    textarea,
    select {
      background-color: var(--white);
      padding: 10px;
      border-radius: 5px;
      width: 100% !important;
      border: 1px solid var(--gray-bg-01);
      color: var(--black);
    }
    input[type="text"]:focus,
    input[type="email"]:focus,
    input[type="tel"]:focus,
    textarea:focus,
    select:focus {
      border-color: var(--rdenshihozon-primary);
      background-color: var(--rdenshihozon-bg-sub-03);
    }
    input[type="text"].error,
    input[type="email"].error,
    input[type="tel"].error,
    textarea.error,
    select.error {
      border-color: var(--form-error-border);
      background: var(--form-error-bg);
    }
    ul {
      display: flex;
      @media screen and (max-width: 600px) {
        display: block;
      }
      li {
        @media screen and (max-width: 600px) {
          margin: 0 0 10px;
        }
      }
      .hs-form-checkbox {
        line-height: 1;
        padding: 0 15px 0 0;
        margin: 0 0 0 15px;
      }
      .hs-form-checkbox label input[type="checkbox"]:before {
        content: "";
        display: block;
        position: absolute;
        background-color: var(--white);
        border: 1px solid var(--gray-bg-01);
        border-radius: 0%;
        width: 17px;
        height: 17px;
        top: -6px;
        left: -18px;
      }
      .hs-form-checkbox label input[type="checkbox"]:checked:before {
        background-color: #d8c6f4;
      }
      .hs-form-checkbox label input[type="checkbox"]:after {
        content: "";
        display: block;
        position: absolute;
        opacity: 0;
        height: 6px;
        width: 10px;
        top: -2px;
        left: -15px;
        border-width: 2px;
        border-bottom: 2px solid var(--rdenshihozon-primary);
        border-left: 2px solid var(--rdenshihozon-primary);
        transform: rotate(-45deg);
      }
      .hs-form-checkbox label input[type="checkbox"]:checked:after {
        opacity: 1;
      }
    }
  }
  .hs-richtext {
    font-size: 11px;
    padding: 10px 0 20px;
    a {
      text-decoration: underline;
      &:hover {
        text-decoration: none;
      }
    }
  }
  .actions {
    text-align: center;
    width: 500px;
    margin: 0 auto;
    @media screen and (max-width: 600px) {
      width: 100%;
    }
    .hs-button {
      outline: 0;
      text-decoration: none;
      position: relative;
      text-align: center;
      display: block;
      padding: 24px 20px 22px;
      border-radius: 4px;
      font-size: 22px;
      background: var(--rdenshihozon-cta);
      color: var(--white);
      margin: 0 auto;
      transition: all 0.3s ease;
      width: 100%;
      max-width: 500px;
      font-weight: bold;
      line-height: 1.4;
      border: 3px solid var(--white);
      border-radius: 1000px;
      box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
      @media screen and (max-width: 768px) {
        font-size: 18px;
        padding: 14px 20px;
      }
      &:hover {
        box-shadow: 0 0 0 0 rgba(0, 0, 0, 0.2);
        background-color: var(--white);
        border: 3px solid var(--rdenshihozon-cta);
        color: var(--rdenshihozon-cta);
        transform: scale(1.03);
      }
    }
  }
  .hbspt-form {
    fieldset {
      max-width: 100%;
    }
  }
  .p-price-form__content {
    .legal-consent-container {
      color: var(--black);
    }
  }
  .hbspt-form .hs_rd_company .input,
  .hbspt-form .hs_email .input,
  .hbspt-form .hs_rd_tell .input {
    position: relative;
  }
  .hbspt-form .hs_rd_company .input::before,
  .hbspt-form .hs_email .input::before,
  .hbspt-form .hs_rd_tell .input::before {
    position: absolute;
    z-index: 1000;
    top: -47px;
    left: 0;
    line-height: 40px;
    background-color: var(--rdenshihozon-accent);
    color: var(--black);
    font-weight: bold;
    border-radius: 5px;
    font-size: 11px;
    padding: 0 10px;
    display: none;
    white-space: nowrap;
  }

  .hbspt-form .hs_rd_company .input::after,
  .hbspt-form .hs_email .input::after,
  .hbspt-form .hs_rd_tell .input::after {
    content: "";
    position: absolute;
    top: -8px;
    left: 30px;
    margin-left: -8px;
    border: 8px solid transparent;
    border-top: 8px solid var(--rdenshihozon-accent);
    display: none;
  }

  .hbspt-form .hs_rd_company .input.disp_popup::before,
  .hbspt-form .hs_rd_company .input.disp_popup::after,
  .hbspt-form .hs_email .input.disp_popup::before,
  .hbspt-form .hs_email .input.disp_popup::after,
  .hbspt-form .hs_rd_tell .input.disp_popup::before,
  .hbspt-form .hs_rd_tell .input.disp_popup::after {
    display: inline-block;
    opacity: 1;
    animation-name: fadeout;
    animation-duration: 6s;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
  }

  .hbspt-form .hs_rd_company .input::before {
    content: "お勤め先の会社名（個人事業主の方は屋号）を記入してください";
  }

  .hbspt-form .hs_email .input::before {
    content: "お仕事でお使いのメールアドレスを記入してください";
  }

  .hbspt-form .hs_rd_tell .input::before {
    content: "日中繋がりやすい電話番号を記入してください";
  }

  @keyframes fadeout {
    75% {
      opacity: 1;
    }

    95% {
      opacity: 0;
    }

    100% {
      opacity: 0;
      display: none;
    }
  }
}
