.elementor-166 .elementor-element.elementor-element-06a9f7b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-166 .elementor-element.elementor-element-047241e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:30px;--padding-bottom:30px;--padding-left:3px;--padding-right:3px;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-button-content-wrapper{flex-direction:row;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group{padding-right:calc( 14px/2 );padding-left:calc( 14px/2 );margin-bottom:26px;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-form-fields-wrapper{margin-left:calc( -14px/2 );margin-right:calc( -14px/2 );margin-bottom:-26px;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group.recaptcha_v3-bottomleft, .elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-166 .elementor-element.elementor-element-e2deccf .elementor-labels-inline .elementor-field-group > label{padding-left:12px;}body:not(.rtl) .elementor-166 .elementor-element.elementor-element-e2deccf .elementor-labels-inline .elementor-field-group > label{padding-right:12px;}body .elementor-166 .elementor-element.elementor-element-e2deccf .elementor-labels-above .elementor-field-group > label{padding-bottom:12px;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group > label, .elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-subgroup label{color:#1F1D1D;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group > label{font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-type-html{padding-bottom:0px;color:#1F1D1D;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group .elementor-field{color:#1F1D1D;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-button{font-family:"Roboto", Sans-serif;font-size:18px;font-weight:500;}.elementor-166 .elementor-element.elementor-element-e2deccf .e-form__buttons__wrapper__button-next{background-color:#AC226C;color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-button[type="submit"]{background-color:#AC226C;color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-166 .elementor-element.elementor-element-e2deccf{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-166 .elementor-element.elementor-element-cd5b803{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:768px){.elementor-166 .elementor-element.elementor-element-047241e{--content-width:776px;}.elementor-166 .elementor-element.elementor-element-cd5b803{--content-width:759px;}}/* Start custom CSS for form, class: .elementor-element-e2deccf */.elementor-field-required .elementor-field-label::after {
    content: '（必須）';
    color: red;
    font-size: 16px;
    margin-left: 4px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-3b686e4 */.sl-contact-form-wrap {
  background: #ffffff;
  border: 1px solid #f2e8ea;
  border-radius: 24px;
  box-shadow: 0 8px 30px rgba(92, 56, 68, 0.08);
  padding: 34px 34px 26px;
  max-width: 980px;
  margin: 0 auto;
}

.sl-contact-form-head {
  margin-bottom: 22px;
}

.sl-contact-form-title {
  display: flex;
  align-items: center;
  gap: 14px;
}

.sl-contact-form-title__icon {
  width: 34px;
  height: 34px;
  color: #ea5d88;
  flex-shrink: 0;
}

.sl-contact-form-title__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.sl-contact-form-title h2 {
  margin: 0;
  font-family: "Yu Mincho", "Hiragino Mincho ProN", "Noto Serif JP", serif;
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.4;
  letter-spacing: 0.08em;
  color: #ea5d88;
  font-weight: 600;
}

/* Elementorフォーム本体の見た目調整 */
.sl-contact-form-wrap .elementor-form {
  margin: 0;
}

.sl-contact-form-wrap .elementor-field-group {
  margin-bottom: 18px;
}

.sl-contact-form-wrap .elementor-field-label {
  margin-bottom: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #3e3a3b;
  line-height: 1.6;
}

.sl-contact-form-wrap .elementor-field,
.sl-contact-form-wrap .elementor-select-wrapper select,
.sl-contact-form-wrap textarea.elementor-field-textual {
  min-height: 58px;
  border: 1px solid #ece4e6;
  border-radius: 14px;
  background: #ffffff;
  color: #4a4345;
  font-size: 15px;
  padding: 14px 18px;
  box-shadow: none;
}

.sl-contact-form-wrap textarea.elementor-field-textual {
  min-height: 200px;
  padding-top: 16px;
  resize: vertical;
}

.sl-contact-form-wrap .elementor-field::placeholder,
.sl-contact-form-wrap textarea::placeholder {
  color: #b8afb2;
  opacity: 1;
}

.sl-contact-form-wrap .elementor-field:focus,
.sl-contact-form-wrap .elementor-select-wrapper select:focus,
.sl-contact-form-wrap textarea:focus {
  border-color: #ea7c9f;
  outline: none;
  box-shadow: 0 0 0 3px rgba(234, 93, 136, 0.08);
}

/* セレクト矢印 */
.sl-contact-form-wrap .elementor-select-wrapper::before {
  color: #9f9196;
  font-size: 14px;
}

/* 送信ボタン */
.sl-contact-form-wrap .elementor-button {
  width: 100%;
  min-height: 62px;
  border: 0;
  border-radius: 14px;
  background: linear-gradient(135deg, #ec5f8a 0%, #d94c78 100%);
  color: #ffffff;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.08em;
  box-shadow: 0 8px 22px rgba(217, 76, 120, 0.22);
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease;
}

.sl-contact-form-wrap .elementor-button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 26px rgba(217, 76, 120, 0.28);
  opacity: 0.98;
}

.sl-contact-form-wrap .elementor-button:focus {
  outline: none;
}

/* 下部注意書き */
.sl-contact-form-notes {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 28px;
  justify-content: flex-start;
  margin-top: 18px;
  padding-top: 8px;
}

.sl-contact-form-note {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  font-size: 15px;
  line-height: 1.7;
  color: #746b6e;
}

.sl-contact-form-note__icon {
  width: 22px;
  height: 22px;
  color: #ea7c9f;
  flex-shrink: 0;
}

.sl-contact-form-note__icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

/* 必須マークを少し上品に */
.sl-contact-form-wrap .elementor-mark-required {
  color: #ea5d88;
}

/* スマホ */
@media (max-width: 767px) {
  .sl-contact-form-wrap {
    padding: 22px 16px 18px;
    border-radius: 18px;
  }

  .sl-contact-form-head {
    margin-bottom: 18px;
  }

  .sl-contact-form-title {
    gap: 10px;
  }

  .sl-contact-form-title__icon {
    width: 28px;
    height: 28px;
  }

  .sl-contact-form-title h2 {
    font-size: 24px;
    line-height: 1.5;
  }

  .sl-contact-form-wrap .elementor-field-label {
    font-size: 15px;
  }

  .sl-contact-form-wrap .elementor-field,
  .sl-contact-form-wrap .elementor-select-wrapper select,
  .sl-contact-form-wrap textarea.elementor-field-textual {
    min-height: 52px;
    font-size: 14px;
    padding: 12px 14px;
    border-radius: 12px;
  }

  .sl-contact-form-wrap textarea.elementor-field-textual {
    min-height: 170px;
  }

  .sl-contact-form-wrap .elementor-button {
    min-height: 56px;
    font-size: 17px;
    border-radius: 12px;
  }

  .sl-contact-form-notes {
    flex-direction: column;
    gap: 10px;
    margin-top: 14px;
  }

  .sl-contact-form-note {
    font-size: 14px;
  }

  .sl-contact-form-note__icon {
    width: 20px;
    height: 20px;
  }
}/* End custom CSS */