.elementor-914 .elementor-element.elementor-element-35f87dc{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-914 .elementor-element.elementor-element-9c53d2f{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-914 .elementor-element.elementor-element-38c3b6b .elementor-heading-title{font-family:"futura-pt", Sans-serif;font-size:24px;font-weight:600;color:var( --e-global-color-bbaa1d6 );}#elementor-popup-modal-914 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-914{justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-914 .dialog-close-button{display:flex;}#elementor-popup-modal-914 .dialog-widget-content{box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-914 .dialog-close-button i{color:var( --e-global-color-39943cb );}#elementor-popup-modal-914 .dialog-close-button svg{fill:var( --e-global-color-39943cb );}@media(max-width:767px){.elementor-914 .elementor-element.elementor-element-35f87dc{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}#elementor-popup-modal-914 .dialog-close-button{font-size:20px;}}/* Start custom CSS for heading, class: .elementor-element-38c3b6b *//* 文字の中でグラデーションが動く設定 */

.elementor-914 .elementor-element.elementor-element-38c3b6b .elementor-heading-title,

.elementor-914 .elementor-element.elementor-element-38c3b6b {

  background: linear-gradient(-45deg, #e4007f,  #a72561, #8a2be2);

  background-size: 300% 300%;

  -webkit-background-clip: text;

  -webkit-text-fill-color: transparent;

  animation: textGradientMove 3s ease infinite alternate;

  display: inline-block;

}



@keyframes textGradientMove {

  0% {

    background-position: 0% 50%;

  }

  50% {

    background-position: 100% 50%;

  }

  100% {

    background-position: 0% 50%;

  }

}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-185fde4 *//* フォーム全体の枠組み（カード調） */
.wpcf7-form {
  background-color: rgba(255, 255, 255, 0.5) !important; /* すりガラス調の半透明白 */
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border-radius: 16px !important;
  padding: 30px 24px !important;
  box-shadow: 0 10px 30px rgba(168, 85, 247, 0.08) !important;
  box-sizing: border-box !important;
}

/* ラベルテキスト（「氏名」「メールアドレス」など） */
.wpcf7-form label {
  color: #4b5563 !important; /* 濃いめのグレー */
  font-size: 14px !important;
  font-weight: 600 !important;
  margin-bottom: 8px !important;
  display: block !important;
  width: 100% !important;
}

/* 入力エリア（1行テキスト・メール・題名・メッセージ本文） */
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
  width: 100% !important;
  background-color: rgba(255, 255, 255, 0.8) !important; /* 薄い白い背景 */
  border: 1px solid rgba(168, 85, 247, 0.2) !important; /* 薄いパープルの枠線 */
  border-radius: 8px !important;
  padding: 12px 14px !important;
  font-size: 14px !important;
  color: #374151 !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
  outline: none !important;
}

/* 入力欄にフォーカス（クリック）したとき */
.wpcf7-form input[type="text"]:focus,
.wpcf7-form input[type="email"]:focus,
.wpcf7-form input[type="tel"]:focus,
.wpcf7-form textarea:focus {
  background-color: #ffffff !important;
  border-color: #a855f7 !important; /* 鮮やかなパープルの枠線 */
  box-shadow: 0 0 0 3px rgba(168, 85, 247, 0.15) !important; /* パープルのほんのり光る効果 */
}

/* 「送信」ボタン */
.wpcf7-form input[type="submit"] {
  background-color: #9363c2 !important; /* パープル */
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: bold !important;
  padding: 12px 36px !important;
  border: none !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
  margin-top: 10px !important;
}

/* 送信ボタン ホバー時 */
.wpcf7-form input[type="submit"]:hover {
  background-color: #9333ea !important; /* 少し濃いパープル */
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(168, 85, 247, 0.3) !important;
}

/* エラーメッセージ・完了メッセージの装飾 */
.wpcf7-response-output {
  border-radius: 8px !important;
  font-size: 13px !important;
  padding: 10px 15px !important;
  margin-top: 15px !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-35f87dc */.elementor-914 .elementor-element.elementor-element-35f87dc {
  position: relative;
  z-index: 1;

  background-color: #f0f9ff !important;
  background-image: linear-gradient(
    -45deg,
    #f0f9ff 0%,
    #cfc7e2 25%,
    #f3e8ff 50%,
    #f3e8ff 75%,
    #ffffff 100%
  ) !important;

  background-repeat: no-repeat !important;
  background-size: 400% 400% !important;
  background-position: 0% 50%;

  animation: bgGradientMove 10s ease-in-out infinite !important;
  -webkit-animation: bgGradientMove 10s ease-in-out infinite !important;
}

@keyframes bgGradientMove {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

@-webkit-keyframes bgGradientMove {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}/* End custom CSS */