.elementor-1786 .elementor-element.elementor-element-05deadd{--display:flex;--min-height:1400px;--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:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.6;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:500px;--padding-left:130px;--padding-right:130px;}.elementor-1786 .elementor-element.elementor-element-05deadd:not(.elementor-motion-effects-element-type-background), .elementor-1786 .elementor-element.elementor-element-05deadd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ECECEC;}.elementor-1786 .elementor-element.elementor-element-05deadd::before, .elementor-1786 .elementor-element.elementor-element-05deadd > .elementor-background-video-container::before, .elementor-1786 .elementor-element.elementor-element-05deadd > .e-con-inner > .elementor-background-video-container::before, .elementor-1786 .elementor-element.elementor-element-05deadd > .elementor-background-slideshow::before, .elementor-1786 .elementor-element.elementor-element-05deadd > .e-con-inner > .elementor-background-slideshow::before, .elementor-1786 .elementor-element.elementor-element-05deadd > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#ECECEC;--background-overlay:'';}.elementor-1786 .elementor-element.elementor-element-b651edf{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );text-decoration:var( --e-global-typography-primary-text-decoration );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-1786 .elementor-element.elementor-element-3fa5351 .elementor-heading-title{font-family:"Zen Old Mincho", Sans-serif;font-size:166px;font-weight:400;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:4.9px;color:#363636;}.elementor-1786 .elementor-element.elementor-element-dca9f2a .elementor-heading-title{font-family:"Zen Old Mincho", Sans-serif;font-size:28px;font-weight:400;text-transform:capitalize;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:3.3px;}.elementor-1786 .elementor-element.elementor-element-8eff0ad{--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;}.elementor-1786 .elementor-element.elementor-element-890a06e{--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:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:wrap;--margin-top:-500px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1786 .elementor-element.elementor-element-890a06e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1786 .elementor-element.elementor-element-391eb3a{--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;--padding-top:90px;--padding-bottom:90px;--padding-left:0px;--padding-right:0px;}.elementor-1786 .elementor-element.elementor-element-391eb3a:not(.elementor-motion-effects-element-type-background), .elementor-1786 .elementor-element.elementor-element-391eb3a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2E2F31;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-1786 .elementor-element.elementor-element-b34ea9c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 120px) 0px;font-family:"Zen Old Mincho", Sans-serif;font-size:18px;font-weight:100;text-decoration:none;line-height:1.7em;letter-spacing:2px;color:#FFFFFF;}.elementor-1786 .elementor-element.elementor-element-6822ed6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 120px) 0px;font-family:"Zen Old Mincho", Sans-serif;font-size:18px;font-weight:100;text-decoration:none;line-height:1.7em;letter-spacing:2px;color:#FFFFFF;}@media(min-width:768px){.elementor-1786 .elementor-element.elementor-element-b651edf{--width:50%;}.elementor-1786 .elementor-element.elementor-element-8eff0ad{--width:50%;}}@media(max-width:1024px){.elementor-1786 .elementor-element.elementor-element-05deadd{--padding-top:0px;--padding-bottom:450px;--padding-left:55px;--padding-right:55px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-1786 .elementor-element.elementor-element-3fa5351 .elementor-heading-title{font-size:110px;}.elementor-1786 .elementor-element.elementor-element-dca9f2a .elementor-heading-title{font-size:18px;}.elementor-1786 .elementor-element.elementor-element-391eb3a{--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1786 .elementor-element.elementor-element-b34ea9c{font-size:2.6vw;letter-spacing:5.4px;}.elementor-1786 .elementor-element.elementor-element-6822ed6{font-size:2.6vw;letter-spacing:5.4px;}}@media(max-width:767px){.elementor-1786 .elementor-element.elementor-element-05deadd{--min-height:85vh;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:30px;--padding-bottom:330px;--padding-left:30px;--padding-right:30px;}.elementor-1786 .elementor-element.elementor-element-b651edf{--margin-top:130px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-1786 .elementor-element.elementor-element-3fa5351 .elementor-heading-title{font-size:50px;}.elementor-1786 .elementor-element.elementor-element-dca9f2a .elementor-heading-title{font-size:15px;}.elementor-1786 .elementor-element.elementor-element-8eff0ad{--margin-top:-50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1786 .elementor-element.elementor-element-890a06e{--width:748px;--margin-top:-250px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-text-editor{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1786 .elementor-element.elementor-element-b34ea9c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 40px) 0px;font-size:14px;letter-spacing:1.3px;}.elementor-1786 .elementor-element.elementor-element-6822ed6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 40px) 0px;font-size:14px;letter-spacing:1.3px;}}/* Start custom CSS for shortcode, class: .elementor-element-ebaff22 *//* ===========================
   EGEN Contact Form 7 Styling（修正版）
   =========================== */
:root{
  --egen-bg:#1f2022;          /* セクションの背景（ダーク） */
  --egen-panel:#242628;       /* フィールド背景 */
  --egen-line:rgba(255,255,255,.16);
  --egen-line-strong:rgba(255,255,255,.28);
  --egen-text:#f2f3f5;        /* 文字色（明） */
  --egen-muted:#a9adb3;       /* 補助文字 */
  --egen-accent:#ffffff;      /* アクセント（白） */
  --egen-error:#ff6b6b;       /* エラー */
  --egen-radius:14px;
  --egen-gap:28px;            /* アイテム間余白 */
  --egen-pad:16px 18px;       /* 入力内パディング */
}

/* フォーム全体 */

.egen-contact__title{
  font-size: clamp(18px, 2.2vw, 22px);
  letter-spacing: .12em;
  font-weight: 600;
  margin: 0 0 1.2em;
}

/* 2カラムグリッド（スマホは1カラム） */
.egen-grid{
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--egen-gap);
}
@media (min-width: 768px){
  .egen-grid{ grid-template-columns: 1fr 1fr; }
  .egen-field--full{ grid-column: 1 / -1; }
}

.egen-label{
  display: block;
  font-size: 12px;
  letter-spacing: .14em;
  color: var(--egen-muted);
  margin: 0 0 10px;
}
.egen-req{
  font-size: 11px;
  color: var(--egen-text);
  background: linear-gradient(135deg, rgba(255,255,255,.22), rgba(255,255,255,.06));
  padding: 2px 8px;
  border-radius: 999px;
  margin-left: .6em;
}

/* 入力UI */
.egen-contact input[type="text"],
.egen-contact input[type="email"],
.egen-contact input[type="tel"],
.egen-contact select,
.egen-contact textarea{
  width: 100%;
  color: var(--egen-text);
  background: var(--egen-panel);
  border: 1px solid var(--egen-line);
  border-radius: var(--egen-radius);
  padding: var(--egen-pad);
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
  -webkit-appearance: none;
}

/* select 修正版（不要な線を削除） */
.egen-contact select{
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: var(--egen-panel) !important;
  border: 1px solid var(--egen-line);
  border-radius: var(--egen-radius);
  color: var(--egen-text);
  padding: var(--egen-pad);
  padding-right: 44px;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 12px 12px;

  /* シンプルな白矢印SVG */
  background-image: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' width='24' height='24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\
  <polyline points='6 9 12 15 18 9'/></svg>");
}
.egen-contact select::-ms-expand{ display:none; }

.egen-contact textarea{
  min-height: 180px;
  line-height: 1.8;
  resize: vertical;
}
.egen-contact ::placeholder{ color: rgba(255,255,255,.38); }

/* フォーカス時 */
.egen-contact input:focus,
.egen-contact select:focus,
.egen-contact textarea:focus{
  border-color: var(--egen-line-strong);
  box-shadow: 0 0 0 6px rgba(255,255,255,.06);
}

/* 送信ボタン */
.egen-actions{ display:flex; gap:14px; align-items:center; }
.egen-actions .egen-btn{
  width: 100%;
  max-width: 240px;
  margin-left: auto;
  border-radius: 999px;
  border: 1px solid var(--egen-accent);
  background: transparent;
  color: var(--egen-accent);
  padding: 14px 22px;
  font-weight: 600;
  letter-spacing: .12em;
  transition: transform .15s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}
.egen-actions .egen-btn:hover{
  background: var(--egen-accent);
  color: #0f1113;
  box-shadow: 0 10px 24px rgba(255,255,255,.08);
  transform: translateY(-1px);
}
.egen-actions .egen-btn:active{ transform: translateY(0); }

/* 同意（acceptance） */
.egen-privacy{
  font-size: 13px;
  color: var(--egen-muted);
  line-height: 1.8;
}
.egen-privacy a{
  color: var(--egen-text);
  text-underline-offset: 3px;
  border-bottom: 1px dashed rgba(255,255,255,.3);
}
.egen-privacy input[type="checkbox"]{
  accent-color: var(--egen-accent);
  transform: translateY(1px);
  margin-right: 8px;
}

/* バリデーション & メッセージ */
.egen-contact .wpcf7-not-valid{ border-color: var(--egen-error) !important; }
.egen-contact .wpcf7-not-valid-tip{
  color: var(--egen-error);
  font-size: 12px;
  margin-top: 8px;
}
.egen-contact .wpcf7-response-output{
  margin-top: 20px;
  border-radius: var(--egen-radius);
  border: 1px solid var(--egen-line);
  background: rgba(255,255,255,.04);
  color: var(--egen-text);
}

/* 適度な余白と構成 */
.egen-field{ display:flex; flex-direction:column; gap:10px; }
.egen-contact + *{ margin-top: clamp(24px, 4vw, 48px); }/* End custom CSS */