@charset "UTF-8";
html {
  scroll-behavior: smooth;
}

body, *, :before, :after {
  font-family: "Noto Sans JP", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, "ＭＳ Ｐゴシック", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

/* マーカー付きの行だけ黄色の下地を敷く */
.el__marker {
  --mark-color: #ffea00;
  --mark-height: .44em;
  display: inline-block;
  font-weight: 900;
  margin: 0.15em 0;
  display: inline; /* テキスト幅分だけ塗る */
  background-image: linear-gradient(to bottom, transparent calc(100% - var(--mark-height)), var(--mark-color) 0);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 0 0.08em; /* 文字端のはみ出し対策の余白 */
}

figure {
  margin: 0;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

@media (min-width: 831px) {
  .hp_pcNone {
    display: none !important;
  }
  /* fv */
  .ly_fv {
    background: url(../images/new_top/2consultation.webp);
    background-size: 100% auto;
    background-repeat: no-repeat;
    padding: clamp(6.625rem, 16vw, 185px) 0 clamp(0.3125rem, 0.5vw, 0.3125rem);
  }
  .ly_fv h1 {
    width: clamp(24.375rem, 45vw, 34.375rem);
    margin: 0 auto;
  }
  .ly_fv .bl_fv_txt {
    margin: clamp(6.375rem, 16vw, 180px) 0 0 clamp(3.125rem, 5vw, 3.125rem);
  }
  .ly_fv .bl_fv_txt span {
    padding: clamp(0.3125rem, 0.5vw, 0.3125rem);
    color: #030303;
    display: inline-block;
    font-size: clamp(2rem, 3.5vw, 3.125rem);
    font-weight: 900;
    background: #fff;
  }
  .ly_fv .bl_fv_txt span:nth-last-of-type(1) {
    margin-top: clamp(0.625rem, 1vw, 0.625rem);
  }
  /* lead */
  .ly_lead {
    margin-top: clamp(5rem, 8vw, 5rem);
  }
  .ly_lead .bl_contact_lead {
    margin: 0;
    text-align: center;
    color: #000;
    line-height: 1.5;
    font-size: clamp(22px, 6vw, 40px);
  }
  .ly_lead .bl_contact_lead span {
    font-weight: 800;
  }
  .ly_lead .ly_lead_contents {
    width: clamp(50.5rem, 80vw, 62.5rem);
    margin: 0 auto;
  }
  .ly_lead .ly_lead_topWrapper {
    position: relative;
    padding-bottom: clamp(9.375rem, 15vw, 9.375rem);
  }
  .ly_lead .ly_lead_topWrapper .bl_contact_pcBubble {
    margin: 0 auto;
  }
  .ly_lead .ly_lead_topWrapper .bl_contact_lead {
    position: absolute;
    top: clamp(13.625rem, 19vw, 15.625rem);
    left: 0;
    right: 0;
    text-align: center;
  }
  .ly_lead .ly_lead_topWrapper .bl_contact_human {
    margin: 0;
    position: absolute;
    bottom: 0;
    left: clamp(7.375rem, 11vw, 9.375rem);
    width: clamp(6.125rem, 11vw, 8.125rem);
  }
  .ly_lead .bl_lead_bottomTxt {
    border-top: 2px solid #030303;
    border-bottom: 2px solid #030303;
    text-align: center;
    font-size: clamp(1.25rem, 2.4vw, 32px);
    padding: clamp(0.625rem, 1vw, 0.625rem) 0;
    color: #030303;
    font-weight: 700;
  }
  .ly_lead .bl_lead_contact {
    color: #fff;
    text-align: center;
    margin-top: clamp(2.5rem, 4vw, 2.5rem);
  }
  .ly_lead .bl_lead_contact li {
    font-size: clamp(1.375rem, 2.2vw, 1.375rem);
    position: relative;
  }
  .ly_lead .bl_lead_contact li a {
    padding: clamp(1.875rem, 3vw, 1.875rem) 0;
    width: clamp(27.375rem, 38vw, 29.375rem);
    display: block;
  }
  .ly_lead .bl_lead_contact li::before {
    content: "";
    position: absolute;
    display: block;
  }
  .ly_lead .bl_lead_contact .bl_lead_contact_tel {
    background: #FFC800;
  }
  .ly_lead .bl_lead_contact .bl_lead_contact_tel a {
    font-weight: 700;
  }
  .ly_lead .bl_lead_contact .bl_lead_contact_tel::before {
    background: url(../images/new_top/6consultation.svg) no-repeat;
    width: clamp(2.5rem, 4vw, 2.5rem);
    height: clamp(2.5rem, 4vw, 2.5rem);
    left: clamp(6.25rem, 10vw, 6.25rem);
    top: clamp(1.5625rem, 2.5vw, 1.5625rem);
  }
  .ly_lead .bl_lead_contact .bl_lead_contact_mail {
    background: #FFAF00;
  }
  .ly_lead .bl_lead_contact .bl_lead_contact_mail a {
    font-weight: 700;
  }
  .ly_lead .bl_lead_contact .bl_lead_contact_mail::before {
    background: url(../images/new_top/5consultation.svg) no-repeat;
    width: clamp(2.5rem, 4vw, 2.5rem);
    height: clamp(1.875rem, 3vw, 1.875rem);
    left: clamp(3.125rem, 5vw, 3.125rem);
    top: clamp(1.875rem, 3vw, 1.875rem);
  }
  /* flow */
  .bl_flow {
    position: relative;
    margin-top: clamp(5rem, 8vw, 5rem);
    background-color: #f4f4f4;
    background-image: linear-gradient(rgba(244, 244, 244, 0.8117647059), rgba(244, 244, 244, 0.8117647059)), url(../images/new_top/noise.png);
    background-repeat: repeat;
    background-size: 100px auto;
    padding: clamp(6.25rem, 10vw, 6.25rem) clamp(1.5rem, 2vw, 2.5rem) clamp(5rem, 8vw, 5rem);
  }
  .bl_flow_ttl {
    position: absolute;
    font-size: clamp(3.75rem, 6vw, 88px);
    text-align: center;
    color: #030303;
    font-weight: 700;
    top: clamp(-3rem, -4vw, -2.5rem);
    left: 0;
    right: 0;
    text-align: center;
  }
  .bl_flow_ttl span {
    font-weight: 700;
    display: block;
    font-size: clamp(1rem, 1.6vw, 1rem);
    margin-top: clamp(0.625rem, 1vw, 0.625rem);
  }
  .bl_flow_list li {
    margin-top: clamp(3.75rem, 6vw, 3.75rem);
  }
  .bl_flow_list li figure {
    width: clamp(22.5rem, 36vw, 37.5rem);
  }
  .bl_flow_list li.bl_flex_reverse {
    flex-direction: row-reverse;
  }
  .bl_flow_list_txtContents {
    width: clamp(22.5rem, 36vw, 37.5rem);
  }
  .bl_flow_list_txtContents .bl_flow_step {
    font-size: clamp(1rem, 2vw, 1.875rem);
    color: #030303;
    font-weight: bold;
  }
  .bl_flow_list_txtContents p {
    font-size: clamp(0.875rem, 1.4vw, 0.875rem);
    margin-top: clamp(1rem, 1.5vw, 1.5625rem);
    line-height: 1.4;
  }
  .bl_flow_step_ttl {
    display: block;
    font-size: clamp(0.75rem, 1.4vw, 1.375rem);
    color: #030303;
    font-weight: bold;
    margin-top: clamp(1rem, 2vw, 2.5rem);
  }
  /* --- 基本設定（数値はお好みで調整可） --- */
  .c-timeline {
    --axis-x: 50%; /* 縦線の位置（50%＝中央。pxでも可：56px など） */
    --axis-w: 2px; /* 縦線の太さ（さらに細くなら 1px） */
    --axis-color: #b9b9b9; /* 縦線の色 */
    --dot: 8px; /* 丸（ドット）のサイズ */
    --tick: clamp(1.125rem, 3vw, 3.125rem); /* 50px → 3.125rem */
    --tick-color: #2b2b2b; /* 色はそのまま */
    --gap: clamp(2.5rem, 5.2vw, 4.5rem); /* 72px → 4.5rem */
    position: relative;
    margin: 0 auto;
    padding: 0;
    list-style: none;
    max-width: 1400px;
  }
  /* 縦の一本線 */
  .c-timeline::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--axis-x);
    transform: translateX(calc(-1 * var(--axis-w) / 2));
    width: var(--axis-w);
    background: var(--axis-color);
  }
  /* 各行のベース */
  .c-timeline > li {
    position: relative;
    min-height: var(--gap);
  }
  /* ● ドット */
  .c-timeline > li::before {
    content: "";
    position: absolute;
    top: 50%;
    left: var(--axis-x);
    transform: translate(-50%, -50%);
    width: var(--dot);
    height: var(--dot);
    background: #000;
    border-radius: 50%;
  }
  /* 横ライン（デフォルト＝右向き）→ 1,3,5…行 */
  .c-timeline > li::after {
    content: "";
    position: absolute;
    top: 50%;
    left: var(--axis-x); /* 縦線の位置から */
    width: var(--tick); /* 右方向へ伸ばす */
    height: 1px;
    background: var(--tick-color);
    transform: translateY(-50%);
  }
  /* 偶数行（2,4,6…）は左向きに切替 */
  .c-timeline > li:nth-child(even)::after {
    left: calc(var(--axis-x) - var(--tick)); /* 左へ伸ばす */
  }
  /* contact */
  .ly_contact .bl_contact_ttl {
    font-size: clamp(3.75rem, 6.3vw, 88px);
    text-align: center;
    color: #030303;
    font-weight: bold;
    text-align: center;
    margin-top: clamp(5rem, 8vw, 5rem);
  }
  .ly_contact .bl_contact_ttl span {
    display: block;
    font-size: clamp(1rem, 1.3vw, 20px);
    margin-top: clamp(0.625rem, 1vw, 0.625rem);
    font-weight: 700;
  }
  .ly_contact .bl_model_house_reservatrionContents {
    margin-top: clamp(2.5rem, 4vw, 2.5rem);
  }
  /* form */
  .bl_form {
    padding: clamp(5rem, 8vw, 5rem) 0 100px;
    background: #f4f4f4;
  }
  .bl_form_contents {
    background: #fff;
    padding: clamp(3.125rem, 5vw, 3.125rem) clamp(4rem, 8vw, 4.5rem) clamp(5rem, 8vw, 5rem);
    width: clamp(400px, 90vw, 960px);
    margin: 0 auto;
    /* /.wpcf7-form */
  }
  .bl_form_contents .bl_form_ttl {
    color: #030303;
    text-align: center;
    font-size: clamp(1.875rem, 3vw, 1.875rem);
    font-weight: 700;
  }
  .bl_form_contents .bl_form_ttl .el_color_blue {
    color: #0076CC;
    font-weight: 700;
  }
  .bl_form_contents .bl_form_lists {
    margin-top: clamp(3.125rem, 5vw, 3.125rem);
  }
  .bl_form_contents .bl_form_lists li {
    line-height: 1.6;
  }
  .bl_form_contents .bl_form_lists li .el_color_red {
    color: #DB283C;
  }
  .bl_form_contents .wpcf7-form {
    padding-top: clamp(4.375rem, 7vw, 4.375rem);
    /* /.bl_form_label_wrapper */
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper {
    border-bottom: 1px solid #ccc;
    padding: clamp(2.5rem, 4vw, 2.5rem) 0;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.req .bl_form_label_name::before {
    content: "必須";
    background: #DB283C;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.any .bl_form_label_name::before {
    content: "任意";
    background: #898a8a;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.req .bl_form_label_name, .bl_form_contents .wpcf7-form .bl_form_label_wrapper.any .bl_form_label_name {
    position: relative;
    padding: 0 clamp(3.125rem, 5vw, 3.125rem) 0 clamp(5.625rem, 9vw, 5.625rem);
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.req .bl_form_label_name::before, .bl_form_contents .wpcf7-form .bl_form_label_wrapper.any .bl_form_label_name::before {
    position: absolute;
    color: #fff;
    padding: clamp(0.1875rem, 0.3vw, 0.1875rem) clamp(0.9375rem, 1.5vw, 0.9375rem);
    left: 0;
    top: 0;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper input[type=text],
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper input[type=email],
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper input[type=tel],
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper select,
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper textarea {
    width: clamp(280px, 47vw, 500px);
    padding: clamp(0.9375rem, 1.5vw, 0.9375rem);
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.el_form_small input[type=text],
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.el_form_small input[type=email],
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.el_form_small input[type=tel],
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.el_form_small select,
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.el_form_small textarea {
    width: clamp(60px, 9vw, 100px);
    padding: clamp(0.9375rem, 1.5vw, 0.9375rem);
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.el_form_middle input[type=text],
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.el_form_middle select {
    width: clamp(160px, 22vw, 245px);
    padding: clamp(0.9375rem, 1.5vw, 0.9375rem);
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper input[type=radio] {
    position: relative;
    left: clamp(-0.625rem, -1vw, -0.625rem);
    transform: scale(1.6);
    accent-color: #DB283C;
    /* 数値そのまま希望なら調整可 */
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper input[type=radio] .wpcf7-list-item-label {
    padding-left: 10px;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper:not(:has(+ .bl_form_label_wrapper)) {
    border-bottom: none;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper .bl_form_label_name {
    padding: 0 clamp(3.125rem, 5vw, 3.125rem) 0 clamp(5.625rem, 9vw, 5.625rem);
    width: clamp(18.75rem, 30vw, 18.75rem);
    display: inline-block;
    font-size: clamp(1.125rem, 1.8vw, 1.125rem);
    line-height: 1.4;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper .c-fieldset__body {
    display: block;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper legend {
    display: block;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.bl_form_label_contact .wpcf7-radio, .bl_form_contents .wpcf7-form .bl_form_label_wrapper.bl_form_label_consult .wpcf7-radio {
    display: block;
    width: clamp(37.5rem, 60vw, 37.5rem);
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.bl_form_label_contact .wpcf7-radio label, .bl_form_contents .wpcf7-form .bl_form_label_wrapper.bl_form_label_consult .wpcf7-radio label {
    display: inline-block;
    padding: 0;
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.bl_form_label_contact .wpcf7-list-item {
    width: clamp(100px, 14vw, 150px);
  }
  .bl_form_contents .wpcf7-form .bl_form_label_wrapper.bl_form_label_consult .wpcf7-list-item {
    width: clamp(15.625rem, 25vw, 15.625rem);
    margin-bottom: clamp(0.9375rem, 1.5vw, 0.9375rem);
  }
  .bl_form_contents .wpcf7-form .bl_submit_wrapper {
    width: clamp(18.75rem, 30vw, 18.75rem);
    margin: 0 auto;
    position: relative;
  }
  .bl_form_contents .wpcf7-form .bl_submit_wrapper .wpcf7-submit {
    display: block;
    width: clamp(18.75rem, 30vw, 18.75rem);
    border-radius: clamp(1.875rem, 3vw, 1.875rem);
    margin: 0 auto;
    background: #030303;
    padding: clamp(1.25rem, 2vw, 1.25rem) 0;
    color: #fff;
  }
  .bl_form_contents .wpcf7-form .bl_submit_wrapper::after {
    position: absolute;
    content: "→";
    display: block;
    right: clamp(0.9375rem, 1.5vw, 0.9375rem);
    top: clamp(1.0625rem, 1.7vw, 1.0625rem);
    color: #fff;
    font-size: clamp(1.375rem, 2.2vw, 1.375rem);
  }
  .bl_form_contents .wpcf7-form .wpcf7-checkbox {
    width: clamp(28.125rem, 45vw, 28.125rem);
    display: block;
    text-align: center;
    margin: 0 auto clamp(1.875rem, 3vw, 1.875rem);
    background: #efefef;
    padding: clamp(0.9375rem, 1.5vw, 0.9375rem) 0;
    border-radius: clamp(0.3125rem, 0.5vw, 0.3125rem);
  }
  .bl_form_contents .wpcf7-form .bl_form_label_unit {
    margin-left: clamp(5px, 1.2vw, 10px);
  }
  .bl_form_contents .wpcf7-form .bl_form_row_label,
  .bl_form_contents .wpcf7-form .bl_form_row_label02 {
    margin-bottom: clamp(5px, 1.2vw, 10px);
  }
  .bl_form_contents .wpcf7-form .bl_form_row_label02 {
    margin-top: clamp(10px, 2vw, 20px);
  }
  /* /.bl_form_contents */
}
@media (max-width: 830px) {
  .hp_spNone {
    display: none !important;
  }
  .ly_fv {
    background: url(../images/new_top/sp/2consultation_sp.webp);
    background-size: 100% auto;
    background-repeat: no-repeat;
    padding-top: 12.0481927711vw;
  }
  .ly_fv h1 {
    width: 78.313253012vw;
    margin: 0 auto;
  }
  .ly_fv .bl_fv_txt {
    margin-top: 36.1445783133vw;
    text-align: center;
  }
  .ly_fv .bl_fv_txt span {
    padding: 0.3125rem;
    color: #030303;
    display: inline-block;
    font-size: 7.2289156627vw;
    font-weight: 900;
    background: #fff;
  }
  .ly_fv .bl_fv_txt span:nth-last-of-type(1) {
    margin-top: 1.2048192771vw;
  }
  .ly_lead_topWrapper {
    position: relative;
  }
  .bl_contact_lead {
    text-align: center;
    margin-top: 7.2289156627vw;
  }
  .bl_contact_lead span {
    color: #030303;
    font-weight: 800;
    font-size: 6.7469879518vw;
  }
  .bl_contact_spBubble {
    width: 90.3614457831vw;
    margin: 6.0240963855vw auto 0;
  }
  .bl_lead_bottomContents {
    position: relative;
    padding: 1.8072289157vw 0;
    width: 90.3614457831vw;
    margin: 8.4337349398vw auto 0;
    border-top: 1px solid #030303;
    border-bottom: 1px solid #030303;
  }
  .bl_lead_bottomContents .bl_lead_bottomTxt {
    font-size: 4.2168674699vw;
    font-weight: 700;
    margin-left: 33.734939759vw;
    color: #030303;
  }
  .bl_lead_bottomContents .bl_contact_human {
    width: 26.5060240964vw;
    position: absolute;
    bottom: 0;
    left: 1.2048192771vw;
  }
  .bl_lead_contact {
    display: block;
    margin-top: 6.0240963855vw;
  }
  .bl_lead_contact li {
    position: relative;
    width: 90.3614457831vw;
    margin: 0 auto;
    color: #fff;
    padding: 3.6144578313vw 0;
    text-align: center;
  }
  .bl_lead_contact li::before {
    content: "";
    position: absolute;
  }
  .bl_lead_contact li a {
    font-size: 3.3734939759vw;
    font-weight: bold;
  }
  .bl_lead_contact li.bl_lead_contact_tel {
    background: #FFC800;
  }
  .bl_lead_contact li.bl_lead_contact_tel a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    height: 19.2771084337vw;
    width: 100%;
    font-size: 5.0602409639vw;
  }
  .bl_lead_contact li.bl_lead_contact_tel::before {
    width: 7.2289156627vw;
    height: 9.6385542169vw;
    background: url(../images/new_top/6consultation.svg) no-repeat;
    left: 14.4578313253vw;
    top: 9.6385542169vw;
  }
  .bl_lead_contact li.bl_lead_contact_mail {
    background: #FFAF00;
    margin-top: 1.8072289157vw;
  }
  .bl_lead_contact li.bl_lead_contact_mail a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    height: 19.2771084337vw;
    width: 100%;
    font-size: 5.0602409639vw;
  }
  .bl_lead_contact li.bl_lead_contact_mail::before {
    width: 8.4337349398vw;
    height: 6.0240963855vw;
    background: url(../images/new_top/5consultation.svg) no-repeat;
    left: 4.8192771084vw;
    top: 10.843373494vw;
  }
  .bl_flow {
    position: relative;
    padding: 12.0481927711vw 0;
    margin-top: 12.0481927711vw;
    background-image: linear-gradient(rgba(244, 244, 244, 0.8117647059), rgba(244, 244, 244, 0.8117647059)), url(../images/new_top/noise.png);
    background-repeat: repeat;
    background-size: 100px auto;
  }
  .bl_flow .bl_flow_ttl {
    position: absolute;
    left: 0;
    right: 0;
    top: -7.2289156627vw;
    font-size: 15.421686747vw;
    color: #030303;
    text-align: center;
    font-weight: 700;
  }
  .bl_flow .bl_flow_ttl span {
    font-weight: 700;
    font-size: 4.3373493976vw;
    display: block;
  }
  .bl_flow .bl_flow_list {
    padding: 0 2.4096385542vw;
  }
  .bl_flow .bl_flow_list li {
    display: block;
    margin-top: 8.4337349398vw;
  }
  .bl_flow .bl_flow_list li .bl_flow_step {
    font-size: 8.6746987952vw;
    color: #030303;
  }
  .bl_flow .bl_flow_list li .bl_flow_step_ttl {
    font-size: 4.8192771084vw;
    margin-top: 4.8192771084vw;
    color: #030303;
    display: block;
    font-weight: bold;
  }
  .bl_flow .bl_flow_list li figure {
    margin: 3.6144578313vw 0;
  }
  .bl_flow .bl_flow_list li .bl_flow_list_txtContents p {
    font-size: 3.8554216867vw;
    margin-bottom: 1.2048192771vw;
    color: #030303;
  }
  .ly_contact {
    padding-top: 16.8674698795vw;
  }
  .ly_contact .bl_contact_ttl {
    color: #030303;
    text-align: center;
    font-size: 15.421686747vw;
    font-weight: bold;
  }
  .ly_contact .bl_contact_ttl span {
    display: block;
    font-size: 3.8554216867vw;
    font-weight: 700;
  }
  .ly_contact .bl_model_house_reservatrionContents {
    margin-top: 7.2289156627vw;
  }
  .ly_contact .bl_form {
    background: #f4f4f4;
    padding: 12.0481927711vw 3.6144578313vw 7.2289156627vw;
  }
  .ly_contact .bl_form .bl_form_ttl {
    text-align: center;
    font-size: 4.8192771084vw;
    font-weight: 700;
  }
  .ly_contact .bl_form .bl_form_ttl .el_color_blue {
    font-weight: 700;
    color: #0076CC;
  }
  .ly_contact .bl_form .bl_form_contents {
    margin-top: 7.2289156627vw;
    padding: 7.2289156627vw 4.8192771084vw 0;
    background: #fff;
  }
  .ly_contact .bl_form .bl_form_contents .bl_form_lists {
    line-height: 1.5;
    font-size: 3.3734939759vw;
  }
  .ly_contact .bl_form .bl_form_contents .bl_form_lists li {
    margin-bottom: 0.6024096386vw;
  }
  .ly_contact .bl_form .bl_form_contents .bl_form_lists li .el_color_red {
    color: #DB283C;
  }
  .ly_contact .bl_form .bl_form_contents .wpcf7-checkbox {
    width: 78.313253012vw;
    display: block;
    text-align: center;
    margin: 0 auto 4.8192771084vw;
    background: #efefef;
    padding: 1.8072289157vw 0;
    border-radius: 0.6024096386vw;
    font-size: 3.6144578313vw;
  }
  .ly_contact .bl_form .wpcf7-form {
    margin-top: 9.6385542169vw;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper {
    border-bottom: 1px solid #ccc;
    padding-bottom: 4.8192771084vw;
    margin-bottom: 4.8192771084vw;
    display: block;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper .bl_form_label {
    display: block;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.req .bl_form_label_name::before {
    content: "必須";
    background: #DB283C;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.any .bl_form_label_name::before {
    content: "任意";
    background: #898A8A;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper .bl_form_label_name {
    display: block;
    position: relative;
    padding-left: 8.4337349398vw;
    margin-bottom: 1.2048192771vw;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper .bl_form_label_name::before {
    position: absolute;
    color: #fff;
    left: 0;
    width: 7.2289156627vw;
    text-align: center;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.bl_form_label_contact, .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.bl_form_label_consult,
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper .bl_form_label_textarea {
    display: block;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper input[type=text], .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper input[type=email], .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper input[type=tel], .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper select, .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper textarea {
    width: 80.7228915663vw;
    padding: 1.8072289157vw;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.el_form_small input[type=text], .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.el_form_small input[type=email], .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.el_form_small input[type=tel], .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.el_form_small select, .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.el_form_small textarea {
    width: 18.0722891566vw;
    padding: 1.8072289157vw;
  }
  .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.el_form_middle input[type=text], .ly_contact .bl_form .wpcf7-form .bl_form_label_wrapper.el_form_middle select {
    width: 38.5542168675vw;
    padding: 1.8072289157vw;
  }
  .ly_contact .bl_form .wpcf7-form .bl_submit_wrapper {
    width: 60.2409638554vw;
    margin: 0 auto;
    position: relative;
  }
  .ly_contact .bl_form .wpcf7-form .bl_submit_wrapper .wpcf7-submit {
    display: block;
    width: 60.2409638554vw;
    border-radius: 6.0240963855vw;
    margin: 0 auto;
    background: #030303;
    padding: 4.2168674699vw 0;
    color: #fff;
  }
  .ly_contact .bl_form .wpcf7-form .bl_submit_wrapper::after {
    position: absolute;
    content: "→";
    display: block;
    right: 3.6144578313vw;
    top: 3.0120481928vw;
    color: #fff;
    font-size: 4.2168674699vw;
  }
}
