.elementor-33 .elementor-element.elementor-element-ac41a26{--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;--overlay-opacity:0.05;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:60px;--padding-bottom:60px;--padding-left:0px;--padding-right:0px;}.elementor-33 .elementor-element.elementor-element-ac41a26::before, .elementor-33 .elementor-element.elementor-element-ac41a26 > .elementor-background-video-container::before, .elementor-33 .elementor-element.elementor-element-ac41a26 > .e-con-inner > .elementor-background-video-container::before, .elementor-33 .elementor-element.elementor-element-ac41a26 > .elementor-background-slideshow::before, .elementor-33 .elementor-element.elementor-element-ac41a26 > .e-con-inner > .elementor-background-slideshow::before, .elementor-33 .elementor-element.elementor-element-ac41a26 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://company.grsta.jp/wp-content/uploads/2026/04/mark.png");--background-overlay:'';background-position:center right;background-repeat:no-repeat;background-size:contain;}.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-33 .elementor-element.elementor-element-60aec57 .elementor-heading-title{font-family:"Anton", Sans-serif;font-size:100px;font-weight:500;color:var( --e-global-color-66fa393 );}.elementor-33 .elementor-element.elementor-element-98d10c3{margin:1px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-33 .elementor-element.elementor-element-98d10c3 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:15px;font-weight:700;color:var( --e-global-color-text );}.elementor-33 .elementor-element.elementor-element-e9f89e3 > .elementor-container{max-width:800px;}.elementor-33 .elementor-element.elementor-element-e9f89e3{padding:20px 0px 70px 0px;}@media(max-width:1024px){.elementor-33 .elementor-element.elementor-element-ac41a26{--padding-top:50px;--padding-bottom:50px;--padding-left:10px;--padding-right:10px;}.elementor-33 .elementor-element.elementor-element-60aec57 .elementor-heading-title{font-size:50px;}}@media(max-width:767px){.elementor-33 .elementor-element.elementor-element-60aec57 .elementor-heading-title{font-size:44px;}.elementor-33 .elementor-element.elementor-element-98d10c3 .elementor-heading-title{font-size:13px;}.elementor-33 .elementor-element.elementor-element-a09a27d{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for shortcode, class: .elementor-element-a09a27d *//* ===============================
   Contact Form 完全修正版
================================= */

/* タイトルと必須を完全横並び */
.contact_form dt.required {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 1.5em;
}

.contact_form dt.required::after {
  position: relative;
  top: -7px;
}

/* 必須バッジ */
.contact_form dt.required::after {
  content: "必須";
  font-size: 11px;
  font-weight: bold;
  padding: 3px 10px;
  border: 1px solid;
  border-color:#0A1F57;
  color: #0A1F57;
  border-radius: 20px;
  line-height: 1;
}

/* レイアウト */
.contact_form dt {
  margin-top: 1.5em;
  font-weight: 700;
}

.contact_form dd {
  margin: .5em 0 0 0;
}

/* 入力欄 */
.contact_form input[type="text"],
.contact_form input[type="email"],
.contact_form input[type="tel"],
.contact_form textarea {
  width: 100%;
  padding: .9em 1em;
  border-radius: 10px;
  border: none;
  background: #c6d2f2;
  box-sizing: border-box;
}

/* ラジオ縦並び */
.contact_form .wpcf7-radio {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px;
}

.contact_form .wpcf7-list-item {
  display: block !important;
  margin: 0 !important;
}

/* 送信ボタン */
.contact_form input[type="submit"] {
  width: 100%;
  padding: 1em;
  margin-top: 2em;
  border-radius: 50px;
  border: 3px solid #0A1F57;
  background: #0A1F57;
  color: #fff;
  font-weight: bold;
  cursor: pointer;
  transition: .3s;
}

.contact_form input[type="submit"]:hover {
  background: #fff;
  color: #0A1F57;
}


/* ===============================
   モバイル余白調整
================================= */
@media (max-width: 768px) {

  .contact_form {
    padding: 1.2em;
  }

  .contact_form dl dt {
    padding: 1em 0 0.2em;
  }

  .contact_form dl dd {
    padding-bottom: .6em;
  }

  input[type="submit"] {
    margin: 1.2em auto;
  }

}/* End custom CSS */