.elementor-424 .elementor-element.elementor-element-d7f4759 > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-424 .elementor-element.elementor-element-d7f4759:not(.elementor-motion-effects-element-type-background), .elementor-424 .elementor-element.elementor-element-d7f4759 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://sainokuni-riha.com/wp-content/uploads/2025/09/serviceinfo_top_img.jpg");background-position:0px -174px;background-repeat:no-repeat;background-size:cover;}.elementor-424 .elementor-element.elementor-element-d7f4759 > .elementor-container{max-width:700px;}.elementor-424 .elementor-element.elementor-element-d7f4759 > .elementor-background-overlay{opacity:0.55;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-424 .elementor-element.elementor-element-d7f4759{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:80px;margin-bottom:0px;padding:12em 0em 10em 0em;}.elementor-424 .elementor-element.elementor-element-fccab75 > .elementor-element-populated{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:0em 0em 0em 0em;--e-column-margin-right:0em;--e-column-margin-left:0em;}.elementor-424 .elementor-element.elementor-element-fccab75 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-424 .elementor-element.elementor-element-efa9058{text-align:center;}.elementor-424 .elementor-element.elementor-element-efa9058 .elementor-heading-title{font-family:"Kosugi Maru", Sans-serif;font-size:3rem;font-weight:bold;line-height:1.3em;color:var( --e-global-color-7342ae6 );}.elementor-424 .elementor-element.elementor-element-f5ccf3c{--divider-border-style:zigzag;--divider-color:var( --e-global-color-7342ae6 );--divider-border-width:2px;--divider-pattern-height:15px;--divider-pattern-size:15px;}.elementor-424 .elementor-element.elementor-element-f5ccf3c .elementor-divider-separator{width:68px;margin:0 auto;margin-center:0;}.elementor-424 .elementor-element.elementor-element-f5ccf3c .elementor-divider{text-align:center;padding-block-start:0px;padding-block-end:0px;}.elementor-424 .elementor-element.elementor-element-31725c8{--divider-border-style:solid;--divider-color:#F9CDFF;--divider-border-width:8px;}.elementor-424 .elementor-element.elementor-element-31725c8 .elementor-divider-separator{width:100%;}.elementor-424 .elementor-element.elementor-element-31725c8 .elementor-divider{padding-block-start:0px;padding-block-end:0px;}.elementor-424 .elementor-element.elementor-element-9f2e9ec{--divider-border-style:solid;--divider-color:#CE68A6;--divider-border-width:8px;}.elementor-424 .elementor-element.elementor-element-9f2e9ec .elementor-divider-separator{width:100%;}.elementor-424 .elementor-element.elementor-element-9f2e9ec .elementor-divider{padding-block-start:0px;padding-block-end:0px;}.elementor-424 .elementor-element.elementor-element-1c4e4fbf{overflow:hidden;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:8em 0em 8em 0em;}.elementor-424 .elementor-element.elementor-element-1c4e4fbf > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-424 .elementor-element.elementor-element-69d79c09 > .elementor-element-populated{margin:0px 30px 0px 0px;--e-column-margin-right:30px;--e-column-margin-left:0px;}.elementor-424 .elementor-element.elementor-element-57fbc772{text-align:left;}.elementor-424 .elementor-element.elementor-element-57fbc772 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-424 .elementor-element.elementor-element-1849864a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:left;}.elementor-424 .elementor-element.elementor-element-1849864a .elementor-heading-title{color:var( --e-global-color-8351ddf );}.elementor-424 .elementor-element.elementor-element-53b4991a{--divider-border-style:zigzag;--divider-color:var( --e-global-color-8351ddf );--divider-border-width:2px;--divider-pattern-height:15px;--divider-pattern-size:15px;}.elementor-424 .elementor-element.elementor-element-53b4991a .elementor-divider-separator{width:68px;margin:0 auto;margin-left:0;}.elementor-424 .elementor-element.elementor-element-53b4991a .elementor-divider{text-align:left;padding-block-start:2px;padding-block-end:2px;}.elementor-424 .elementor-element.elementor-element-6f2c6b4c > .elementor-element-populated{margin:0px 0px 0px 30px;--e-column-margin-right:0px;--e-column-margin-left:30px;}@media(max-width:1024px){.elementor-424 .elementor-element.elementor-element-d7f4759:not(.elementor-motion-effects-element-type-background), .elementor-424 .elementor-element.elementor-element-d7f4759 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}.elementor-424 .elementor-element.elementor-element-d7f4759{padding:10em 0em 6em 0em;}.elementor-424 .elementor-element.elementor-element-efa9058 .elementor-heading-title{font-size:54px;}.elementor-424 .elementor-element.elementor-element-1c4e4fbf{padding:4em 0em 4em 0em;}}@media(max-width:767px){.elementor-424 .elementor-element.elementor-element-d7f4759:not(.elementor-motion-effects-element-type-background), .elementor-424 .elementor-element.elementor-element-d7f4759 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px -17px;}.elementor-424 .elementor-element.elementor-element-d7f4759{margin-top:90px;margin-bottom:0px;padding:2em 0em 12em 0em;}.elementor-424 .elementor-element.elementor-element-fccab75 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-424 .elementor-element.elementor-element-efa9058 .elementor-heading-title{font-size:1.7rem;}.elementor-424 .elementor-element.elementor-element-f5ccf3c .elementor-divider{text-align:center;}.elementor-424 .elementor-element.elementor-element-f5ccf3c .elementor-divider-separator{margin:0 auto;margin-center:0;}.elementor-424 .elementor-element.elementor-element-92070b6{width:50%;}.elementor-424 .elementor-element.elementor-element-cdafa6d{width:50%;}.elementor-424 .elementor-element.elementor-element-69d79c09 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-424 .elementor-element.elementor-element-57fbc772{text-align:center;}.elementor-424 .elementor-element.elementor-element-1849864a{text-align:center;}.elementor-424 .elementor-element.elementor-element-53b4991a .elementor-divider{text-align:center;}.elementor-424 .elementor-element.elementor-element-53b4991a .elementor-divider-separator{margin:0 auto;margin-center:0;}.elementor-424 .elementor-element.elementor-element-6c0b0493{text-align:center;}.elementor-424 .elementor-element.elementor-element-6f2c6b4c > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}}@media(min-width:768px){.elementor-424 .elementor-element.elementor-element-69d79c09{width:38.07%;}.elementor-424 .elementor-element.elementor-element-6f2c6b4c{width:61.93%;}}@media(max-width:1024px) and (min-width:768px){.elementor-424 .elementor-element.elementor-element-69d79c09{width:40%;}.elementor-424 .elementor-element.elementor-element-6f2c6b4c{width:60%;}}/* Start custom CSS for shortcode, class: .elementor-element-65c361a *//* =========================================================
   お問い合わせフォーム用カスタムCSS - 最新統合版
   （全体デザイン＋修正版プライバシーポリシー同意）
   ========================================================= */

/* コンタクトフォーム全体のスタイル */
.contact-container {
  display: flex;
  gap: 40px;
  align-items: flex-start;
  margin: 40px 0;
}

.contact-left {
  flex: 1;
}

.contact-left h2 {
  font-size: 2.2em;
  color: #2c3e50;
  margin-bottom: 15px;
}

.contact-left p {
  color: #666;
  line-height: 1.6;
  font-size: 1.1em;
}

/* フォームエリア */
.contact-form {
  flex: 1;
  background: #fff;
  border: 1px solid #e1e8ed;
  border-radius: 12px;
  padding: 35px;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
}

.form-row {
  display: flex;
  gap: 20px;
  margin-bottom: 25px;
}

.form-field,
.form-field-full {
  margin-bottom: 25px;
}

.form-field {
  flex: 1;
}

/* ラベルスタイル */
.contact-form label {
  display: block;
  margin-bottom: 8px;
  font-weight: 600;
  color: #34495e;
  font-size: 14px;
}

/* 入力フィールドスタイル */
.contact-form input[type="text"],
.contact-form input[type="email"],
.contact-form input[type="tel"],
.contact-form select,
.contact-form textarea {
  width: 100%;
  padding: 14px 16px;
  border: 2px solid #e1e8ed;
  border-radius: 8px;
  font-size: 16px;
  transition: all 0.3s ease;
  box-sizing: border-box;
}

/* フォーカス時のスタイル */
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline: none;
  border-color: #3498db;
  box-shadow: 0 0 0 3px rgba(52,152,219,0.1);
}

/* セレクトボックス */
.contact-form select {
  cursor: pointer;
  background-color: white;
}

/* テキストエリア */
.contact-form textarea {
  resize: vertical;
  min-height: 120px;
}

/* =========================================================
   プライバシーポリシー同意部分（修正版）
   ========================================================= */
.privacy-consent {
  margin: 30px 0;
  padding: 18px 20px;
  background: #f8f9fa;
  border-radius: 8px;
  border-left: 4px solid #3498db;
}

/* acceptance本体を横並び */
.privacy-consent .wpcf7-acceptance {
  display: flex;
  align-items: center;
  gap: 10px;
  line-height: 1.7;
  font-size: 15px;
}

.privacy-consent input[type="checkbox"] {
  width: auto;
  margin: 0;
  transform: scale(1.15);
  vertical-align: middle;
}

/* 文言とリンク */
.privacy-consent .wpcf7-list-item,
.privacy-consent .wpcf7-list-item-label {
  margin: 0;
  font-weight: 500;
  cursor: pointer;
}

.privacy-consent a {
  color: #CE68A6;
  text-decoration: underline;
}
.privacy-consent a:hover {
  text-decoration: none;
}

/* 未チェックエラー表示 */
.privacy-consent .wpcf7-form-control.wpcf7-not-valid {
  outline: none;
  box-shadow: none;
}
.privacy-consent .wpcf7-not-valid-tip {
  display: block;
  margin-top: 10px;
  color: #e74c3c;
  font-size: 13px;
}

/* =========================================================
   送信ボタン
   ========================================================= */
.submit-wrapper {
  text-align: center;
  margin-top: 30px;
}

.contact-form input[type="submit"] {
  background: #CE68A6;
  color: white;
  padding: 16px 40px;
  border: none;
  border-radius: 8px;
  font-size: 16px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.contact-form input[type="submit"]:hover {
  background: #B85593;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(206,104,166,0.3);
}

/* =========================================================
   エラーメッセージ & 成功メッセージ
   ========================================================= */
.wpcf7-not-valid-tip {
  color: #e74c3c;
  font-size: 13px;
  margin-top: 5px;
  display: block;
}

.wpcf7-mail-sent-ok {
  background-color: #d4edda;
  border: 1px solid #c3e6cb;
  border-radius: 8px;
  color: #155724;
  padding: 15px;
  margin-bottom: 20px;
}

/* 送信成功・失敗メッセージ全体 */
.wpcf7 form .wpcf7-response-output {
  margin: 0 0 20px;
  padding: 12px 14px;
  border-radius: 8px;
  border: 1px solid #e1e8ed;
}
.wpcf7 form.sent .wpcf7-response-output {
  background: #d4edda;
  border-color: #c3e6cb;
  color: #155724;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output {
  background: #fff5f5;
  border-color: #f5c2c7;
  color: #842029;
}

/* =========================================================
   スマホ対応
   ========================================================= */
@media (max-width: 768px) {
  .contact-container {
    flex-direction: column;
    gap: 30px;
  }
  
  .form-row {
    flex-direction: column;
    gap: 15px;
  }
  
  .contact-form {
    padding: 25px;
  }

  .privacy-consent .wpcf7-acceptance {
    align-items: flex-start;
    gap: 12px;
  }
}/* End custom CSS */