.elementor-712 .elementor-element.elementor-element-64b071e{--display:flex;--padding-top:46px;--padding-bottom:34px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), alata;font-weight:var( --e-global-typography-primary-font-weight );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-712 .elementor-element.elementor-element-640819f{width:100%;max-width:100%;padding:0px 0px 0px 9px;z-index:2;text-align:center;}.elementor-712 .elementor-element.elementor-element-640819f.elementor-element{--align-self:center;}.elementor-712 .elementor-element.elementor-element-640819f .elementor-heading-title{font-family:"Barlow", alata;font-size:64px;font-weight:700;text-transform:none;font-style:normal;text-decoration:none;line-height:normal;letter-spacing:0.15em;color:var( --e-global-color-primary );}.elementor-712 .elementor-element.elementor-element-5eddf6b{width:100%;max-width:100%;z-index:0;text-align:center;}.elementor-712 .elementor-element.elementor-element-5eddf6b.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-712 .elementor-element.elementor-element-5eddf6b .elementor-heading-title{font-family:"Noto Sans JP", alata;font-size:18px;font-weight:700;text-transform:none;font-style:normal;text-decoration:none;line-height:normal;letter-spacing:0.15em;color:var( --e-global-color-accent );}.elementor-712 .elementor-element.elementor-element-a649d93{--display:flex;}.elementor-widget-eael-contact-form-7 .eael-contact-form-7 .eael-contact-form-7-title{font-family:var( --e-global-typography-accent-font-family ), alata;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-contact-form-7 .eael-contact-form-7 .eael-contact-form-7-description{font-family:var( --e-global-typography-accent-font-family ), alata;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form-control.wpcf7-text, .elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form-control.wpcf7-quiz, .elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form-control.wpcf7-quiz, .elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form-control.wpcf7-textarea, .elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form-control.wpcf7-select{font-family:var( --e-global-typography-accent-font-family ), alata;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form label, .elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form .wpcf7-quiz-label{font-family:var( --e-global-typography-accent-font-family ), alata;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form-control::-webkit-input-placeholder{font-family:var( --e-global-typography-accent-font-family ), alata;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-form input[type="submit"]{font-family:var( --e-global-typography-accent-font-family ), alata;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-eael-contact-form-7 .eael-contact-form-7 .wpcf7-not-valid-tip{font-family:var( --e-global-typography-accent-font-family ), alata;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-712 .elementor-element.elementor-element-de8591b{margin:-2px 0px calc(var(--kit-widget-spacing, 0px) + 7px) 0px;}.elementor-712 .elementor-element.elementor-element-de8591b .eael-contact-form-7 .wpcf7-not-valid-tip{display:block !important;}.elementor-712 .elementor-element.elementor-element-de8591b .eael-contact-form-7 .wpcf7-validation-errors{display:block !important;}.elementor-712 .elementor-element.elementor-element-de8591b .eael-contact-form-7-wrapper{text-align:default;}.elementor-712 .elementor-element.elementor-element-de8591b .eael-contact-form-7 .wpcf7-form p:not(:last-of-type) .wpcf7-form-control-wrap{margin-bottom:0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-712 .elementor-element.elementor-element-640819f .elementor-heading-title{font-size:32px;}.elementor-712 .elementor-element.elementor-element-5eddf6b .elementor-heading-title{font-size:16.02px;}}@media(max-width:767px){.elementor-widget-heading .elementor-heading-title{letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-712 .elementor-element.elementor-element-640819f .elementor-heading-title{font-size:26.88px;}.elementor-712 .elementor-element.elementor-element-5eddf6b .elementor-heading-title{font-size:16.92px;}}


/* ===== Ramuni Contact (CF7) ===== */
.ramuni-contact{
  --txt:#4C3C42;
  --acc1:#FF988A; /* コーラルピンク */
  --bg:#FFFDFC;
  --card:#FFFFFF;
  --radius:16px;

  max-width: min(1243px, 820px);
  margin: 0 auto;
  padding: 28px clamp(16px, 3vw, 28px);
  color: var(--txt);
  background: var(--card);
  border-radius: var(--radius);
  box-shadow: 0 8px 24px rgba(0,0,0,.06);
  border: 1.6px solid #EADFE2;  /* ← 単色の枠線に変更 */
}

/* ===== リード文（お気軽に〜） ===== */
.ramuni-contact .c-lead{
  font-weight: 500;
  text-align: center;            /* 中央寄せ */
  font-size: clamp(14px, 1.6vw, 16px); /* 小さめ */
  color: var(--txt);
  margin-bottom: 20px;
}


.ramuni-contact .c-grid{
  display: grid;
  grid-template-columns: 1fr; /* ← 1列に変更 */
  gap: clamp(10px, 1vw, 10px);
}

.ramuni-contact .c-field{ display:flex; flex-direction:column; gap:0px; }
.ramuni-contact .c-field--full{ grid-column: 1 / -1; }

.ramuni-contact .c-label{
  font-size: 13px;
  font-weight: 600;
  color: var(--txt);
  opacity: .85;
}

/* CF7 inputs */
.ramuni-contact input[type="text"],
.ramuni-contact input[type="email"],
.ramuni-contact textarea{
  width: 100%;
  font: 400 16px/1.6 "Noto Sans JP", system-ui, sans-serif;
  color: var(--txt);
  background: var(--bg);
  border: 1.6px solid #EADFE2;
  border-radius: 12px;
  padding: 12px 14px;
  transition: border-color .2s, box-shadow .2s, background-color .2s;
}

.ramuni-contact textarea{ min-height: 160px; resize: vertical; }

.ramuni-contact input::placeholder,
.ramuni-contact textarea::placeholder{
  color: #9C8F94; opacity:.8;
}

/* focus */
.ramuni-contact input:focus,
.ramuni-contact textarea:focus{
  outline: none;
  border-color: var(--acc1);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--acc1) 24%, transparent);
  background:#FFFFFF;
}

/* acceptance */
.ramuni-contact .c-accept{
  align-items: flex-start;
  font-size: 14px;
}
.ramuni-contact .c-accept .wpcf7-acceptance input{
  accent-color: var(--acc1);
  transform: translateY(2px);
  margin-right: 8px;
}

/* submit button → ピンク単色 */
.ramuni-contact .btn-primary{
  width: clamp(180px, 40%, 260px);
  justify-self: start;
  appearance: none;
  border: none;
  border-radius: 999px;
  padding: 12px 22px;
  font-weight: 700;
  letter-spacing: .02em;
  color: #fff;
  background: var(--acc1);
  cursor: pointer;
  transition: transform .06s ease, filter .2s ease, box-shadow .2s ease;
}
.ramuni-contact .btn-primary:hover{
  filter: brightness(1.05);
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
}
.ramuni-contact .btn-primary:active{ transform: translateY(1px); }

.ramuni-contact .c-actions{ margin-top: 8px; }

/* CF7 validation / messages */
.ramuni-contact .wpcf7-not-valid-tip{
  color: #C54040;
  font-size: 12px;
  margin-top: 6px;
}
.ramuni-contact .wpcf7-response-output{
  margin-top: 16px;
  border: 1.5px solid var(--acc1);
  background: #FFF6F5;
  color: var(--txt);
  border-radius: 12px;
  padding: 10px 12px;
}
.ramuni-contact .wpcf7-spinner{ margin-left: 10px; }

/* モバイル */
@media (max-width: 768px){
  .ramuni-contact{ padding: 22px 16px; max-width: min(1243px, 94vw); }
  .ramuni-contact .c-grid{ grid-template-columns: 1fr; }
  .ramuni-contact .btn-primary{ width: 100%; }
}
