.elementor-35417 .elementor-element.elementor-element-44be894{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.37;--margin-top:0em;--margin-bottom:0em;--margin-left:0em;--margin-right:0em;--padding-top:5em;--padding-bottom:5em;--padding-left:0em;--padding-right:0em;}.elementor-35417 .elementor-element.elementor-element-44be894:not(.elementor-motion-effects-element-type-background), .elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(120deg, var( --e-global-color-1638749 ) 0%, var( --e-global-color-e224d41 ) 100%);}.elementor-35417 .elementor-element.elementor-element-44be894::before, .elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-background-video-container::before, .elementor-35417 .elementor-element.elementor-element-44be894 > .e-con-inner > .elementor-background-video-container::before, .elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-background-slideshow::before, .elementor-35417 .elementor-element.elementor-element-44be894 > .e-con-inner > .elementor-background-slideshow::before, .elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(120deg, #F4F7FA 0%, var( --e-global-color-8892b93 ) 100%);}.elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-shape-top .elementor-shape-fill, .elementor-35417 .elementor-element.elementor-element-44be894 > .e-con-inner > .elementor-shape-top .elementor-shape-fill{fill:#FFFFFF54;}.elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-shape-top svg, .elementor-35417 .elementor-element.elementor-element-44be894 > .e-con-inner > .elementor-shape-top svg{height:222px;transform:translateX(-50%) rotateY(180deg);}.elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-shape-bottom .elementor-shape-fill, .elementor-35417 .elementor-element.elementor-element-44be894 > .e-con-inner > .elementor-shape-bottom .elementor-shape-fill{fill:#FFFFFF8C;}.elementor-35417 .elementor-element.elementor-element-44be894 > .elementor-shape-bottom svg, .elementor-35417 .elementor-element.elementor-element-44be894 > .e-con-inner > .elementor-shape-bottom svg{transform:translateX(-50%) rotateY(180deg);}.elementor-35417 .elementor-element.elementor-element-df44a15{text-align:center;}.elementor-35417 .elementor-element.elementor-element-df44a15 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-35417 .elementor-element.elementor-element-80b9289{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:2rem 0rem;--row-gap:2rem;--column-gap:0rem;--margin-top:2rem;--margin-bottom:0rem;--margin-left:0rem;--margin-right:0rem;--padding-top:0rem;--padding-bottom:4rem;--padding-left:0rem;--padding-right:0rem;}.elementor-35417 .elementor-element.elementor-element-3b51822{--display:flex;}.elementor-35417 .elementor-element.elementor-element-4c525dd{padding:3em 0em 0em 0em;text-align:center;}.elementor-35417 .elementor-element.elementor-element-282af2d{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-35417 .elementor-element.elementor-element-8ccf5ca{width:var( --container-widget-width, 75% );max-width:75%;--container-widget-width:75%;--container-widget-flex-grow:0;}.elementor-35417 .elementor-element.elementor-element-8ccf5ca.elementor-element{--flex-grow:0;--flex-shrink:0;}:root{--page-title-display:none;}/* Start custom CSS for shortcode, class: .elementor-element-8ccf5ca *//* ---------------------------------------------------
   Contact Form 7 + Salesforce Web-to-Lead 共通CSS（完全版・安定版）
   --------------------------------------------------- */

/* フォーム全体 */
form.wpcf7-form {
  max-width: 700px;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  background: #fff;
  border-radius: 8px;
}

/* ラベル・見出し・段落 */
label,
.form-label,
.wpcf7-form p {
  display: block;
  margin-top: 0.4rem;
  margin-bottom: 0.4rem;
  font-weight: 600;
  color: #333;
}

/* 必須マーク */
.required-mark {
  color: #d93025;
  margin-left: 0.2em;
  font-weight: 700;
}

/* テキスト系フィールド共通 */
input[type="text"],
input[type="email"],
input[type="tel"],
select,
textarea {
  width: 100%;
  padding: 0.6rem 0.8rem;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-size: 1rem;
  margin-bottom: 0.4rem;
  transition: border-color 0.2s, box-shadow 0.2s;
  background-color: #fff;
  box-sizing: border-box;
}

/* フォーカス時 */
input:focus,
select:focus,
textarea:focus {
  border-color: #0098d8 !important;
  box-shadow: 0 0 0 2px rgba(0,152,216,0.2);
  outline: none;
}

/* ---------------------------------------------------
   チェックボックス（1カラム・高さ自動調整）
   --------------------------------------------------- */

/* グループ本体をブロック化して縦積みに */
.wpcf7-form .wpcf7-form-control.wpcf7-checkbox {
  display: block !important;
  width: 100%;
  margin: 0 !important;
  padding: 0.3rem 0;
  background: transparent;
}

/* 各項目をブロックで縦並びに */
.wpcf7-form .wpcf7-list-item {
  display: block !important;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

/* ラベル整形（横並び＋中央寄せ） */
.wpcf7-list-item label {
  display: flex;
  align-items: center;
  gap: 0.4em;
  line-height: 1.6em;
  cursor: pointer;
  font-weight: normal;
  color: #333;
  margin: 0;
  padding: 0.1em 0;
}

/* チェックボックス本体 */
.wpcf7-list-item input[type="checkbox"] {
  flex-shrink: 0;
  margin: 0;
  transform: scale(1.05);
}

.wpcf7-list-item-label {
  display: inline-block;
  line-height: 1.5;
}

/* p要素内のチェックボックス余白リセット */
.wpcf7-form p:has(.wpcf7-checkbox) {
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent;
}

/* ---------------------------------------------------
   エラー表示
   --------------------------------------------------- */
.wpcf7-not-valid-tip,
.error-message {
  display: block;
  color: #d93025;
  font-size: 0.9rem;
  margin-top: 0.3rem;
  margin-bottom: 0.6rem;
}

.error-field,
.wpcf7-not-valid {
  border-color: #d93025 !important;
  box-shadow: 0 0 0 2px rgba(217,48,37,0.2) !important;
}

/* ---------------------------------------------------
   reCAPTCHA
   --------------------------------------------------- */
.g-recaptcha,
.recaptcha-wrap {
  margin: 1.5rem 0;
  display: flex;
  justify-content: center;
}

.recaptcha-error {
  color: #d93025;
  font-size: 0.9rem;
  text-align: center;
  margin-top: 0.6rem;
}

/* ---------------------------------------------------
   acceptance（同意チェック）中央揃え・リンク下線あり
   --------------------------------------------------- */
.wpcf7-acceptance {
  text-align: center;
  margin-top: 1rem;
  font-size: 0.95rem;
  color: #333;
}

/* 中央揃え */
.wpcf7-acceptance .wpcf7-list-item {
  display: inline-block;
  margin: 0 auto;
}

/* 横並び＋中央寄せ */
.wpcf7-acceptance .wpcf7-list-item label {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.4em;
  margin: 0 auto;
  padding: 0;
  font-weight: normal;
  color: #333;
}

/* チェックボックスサイズ微調整 */
.wpcf7-acceptance .wpcf7-list-item input[type="checkbox"] {
  margin: 0;
  transform: scale(1.1);
  vertical-align: middle;
}

/* リンク下線 */
.wpcf7-acceptance a {
  text-decoration: underline !important;
  color: #0098d8;
}

.wpcf7-acceptance a:hover {
  opacity: 0.8;
}

/* ---------------------------------------------------
   送信ボタン
   --------------------------------------------------- */
input[type="submit"],
.wpcf7-submit {
  display: block;
  margin: 2rem auto 0;
  padding: 0.8rem 2rem;
  background-color: #0098d8;
  color: #fff;
  font-size: 1rem;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: opacity 0.2s ease, background-color 0.2s ease;
}

input[type="submit"]:hover,
.wpcf7-submit:hover {
  opacity: 0.85;
}

input[type="submit"]:focus,
.wpcf7-submit:focus {
  outline: none;
  background-color: #0098d8;
}

/* ---------------------------------------------------
   全体段落調整
   --------------------------------------------------- */
.wpcf7 p {
  margin-bottom: 1rem;
}/* End custom CSS */