@charset "UTF-8";

/* ==================================================

  "wp-members" Styles 2026

================================================== */
.wpmem_msg {
  width: 100%;
  margin: 2rem auto;
  text-align: center;
  color: #f00;
  border: 0;
  background: #fff;
}

#wp_reg {
  width: 90%;
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
}

#wp_reg h2 {
  font-size: 30px;
  text-align: center;
  margin: 1rem auto;
}

#wp_reg p:first {
  margin: 0 auto 80px;
  text-align: center;
}

#wp_reg dl {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 50px;
  margin: 80px auto 50px;
}

#wp_reg dt p {
  text-align: right;
  font-size: 14px;
  color: #878787;
  font-weight: normal;
}

#wp_reg dd p {
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
}

#wp_reg dt,
#wp_reg dd {
  width: 50%;
}

#wp_reg dt img { width: 100%; }

#wp_reg dd {
  padding-right: 80px;
  box-sizing: border-box;
}

#wp_reg > p:last-child {
  margin: 0 auto;
  width: 100%;
  max-width: 540px;
  font-size: 14px;
  text-align: left;
}

#wp_reg > p:last-child span {
  font-size: 14px;
  content: "必須";
  background: #c00;
  border-radius: 2px;
  color: #fff;
  margin-right: .5rem;
  padding: .2rem .5rem;
  font-weight: bold;
}

#wpmem_reg {
  position: relative;
  margin: 0 auto;
  width: 94%;
  max-width: 540px;
  height: auto;
}

@media screen and (max-width:640px) {
  #wpmem_reg { height: auto; }
}

#wpmem_reg fieldset {
  display: grid;
  grid-template-columns: 170px 1fr;
  align-items: center;
}

/* お名前 */
#wpmem_reg label:nth-child(2) {
  grid-row: 2/3;
  grid-column: 1/3;
}
#wpmem_reg .div_text:nth-child(3) {
  grid-row: 3/4;
  grid-column: 1/3;
}

/* ふりがな */
#wpmem_reg label:nth-child(4) {
  grid-row: 4/5;
  grid-column: 1/3;
}
#wpmem_reg .div_text:nth-child(5) {
  grid-row: 5/6;
  grid-column: 1/3;
}

/* メールアドレス */
#wpmem_reg label:nth-child(6) {
  grid-row: 6/7;
  grid-column: 1/3;
}
#wpmem_reg .div_text:nth-child(7) {
  grid-row: 7/8;
  grid-column: 1/3;
}

/* メールアドレス（確認用） */
#wpmem_reg label:nth-child(8) {
  grid-row: 8/9;
  grid-column: 1/3;
}
#wpmem_reg .div_text:nth-child(9) {
  grid-row: 9/10;
  grid-column: 1/3;
}

/* 電話番号 */
#wpmem_reg label:nth-child(10) {
  grid-row: 10/11;
  grid-column: 1/3;
}
#wpmem_reg .div_text:nth-child(11) {
  grid-row: 11/12;
  grid-column: 1/3;
}
#wpmem_reg .div_text:nth-child(11)::after {
  content: "\a\aご希望の物件条件";
  font-weight: bold;
  white-space: pre;
}

/* エリア */
#wpmem_reg label:nth-child(12) {
  grid-row: 12/13;
  grid-column: 1/2;
  margin-bottom: 40px;
}
#wpmem_reg .div_text:nth-child(13) {
  grid-row: 12/13;
  grid-column: 2/3;
  margin-bottom: 40px;
}

/* 坪数 */
#wpmem_reg label:nth-child(14) {
  grid-row: 13/14;
  grid-column: 1/2;
  margin-bottom: 40px;
}
#wpmem_reg .div_text:nth-child(15) {
  grid-row: 13/14;
  grid-column: 2/3;
  margin-bottom: 40px;
}

/* 開業のご予算 */
#wpmem_reg label:nth-child(16) {
  grid-row: 14/15;
  grid-column: 1/2;
  margin-bottom: 40px;
}
#wpmem_reg .div_text:nth-child(17) {
  grid-row: 14/15;
  grid-column: 2/3;
  margin-bottom: 40px;
}

/* 開業予定 */
#wpmem_reg label:nth-child(18) {
  grid-row: 15/16;
  grid-column: 1/2;
  margin-bottom: 40px;
}
#wpmem_reg .div_text:nth-child(19) {
  grid-row: 15/16;
  grid-column: 2/3;
  margin-bottom: 40px;
}

/* ▼ Add 202506 ▼ */
#wpmem_reg label:nth-child(20) {
  grid-row: 16/17;
  grid-column: 2/3;
  margin-bottom: 40px;
}
#wpmem_reg .div_checkbox:nth-child(21) {
  grid-row: 16/17;
  grid-column: 1/2;
  margin-bottom: 40px;
  text-align: right;
  padding: 0 10px 0 0;
}

#wpmem_reg .button_div:nth-child(22) {
  grid-row: 17/18;
  grid-column: 1/3;
  margin-bottom: 40px;
  text-align: center;
}

/* ▲ Add 202506 ▲ */
#wpmem_reg legend, #wpmem_reg .req-text {
  display: none;
}

#wpmem_reg label {
  font-size: 14px;
  font-weight: bold;
  line-height: 1;
  align-items: center;
}

/*
#wpmem_reg .div_text:nth-child(11) { margin-bottom: 20px !important; }
*/
#wpmem_reg label span { font-size: 0 !important; }

#wpmem_reg label span:before {
  font-size: 14px;
  content: "必須";
  background: #c00;
  border-radius: 2px;
  color: #fff;
  margin-left: .5rem;
  padding: .2rem .5rem;
}

#wpmem_reg .div_text { align-items: center; }

#wpmem_reg .div_text:nth-child(3),
#wpmem_reg .div_text:nth-child(5),
#wpmem_reg .div_text:nth-child(7),
#wpmem_reg .div_text:nth-child(9) { margin: 12px 0 36px; }
#wpmem_reg .div_text:nth-child(11) { margin: 12px 0 20px; }

#wpmem_reg input[type="text"] {
  border: 1px solid #e4e4e4;
  border-radius: 5px;
  padding: .5rem;
  width: 100%;
}

#wpmem_reg input#area { max-width: 340px; }

#wpmem_reg input#size,
#wpmem_reg input#budget,
#wpmem_reg input#schedule {
  display: inline;
  max-width: 170px;
}

#wpmem_reg .div_text:nth-child(15)::after {
  content: "坪";
  display: inline;
  margin-left: 1rem;
}

#wpmem_reg .div_text:nth-child(17)::after {
  content: "万円";
  display: inline;
  margin-left: 1rem;
}

#wpmem_reg .div_text:nth-child(19)::after {
  content: "頃";
  display: inline;
  margin-left: 1rem;
}

/* ▼ Modified 202506 ▼ */
#wpmem_reg .button_div {
  position: absolute;
  bottom: -60px;
  left: 0;
  width: 100%;
  max-width: 540px;
  margin: 0 auto;
  text-align: center !important;
}

/* ▲ Modified 202506 ▲ */
#wpmem_reg .button_div .buttons {
  width: 80%;
  max-width: 260px;
  background: #0100c6;
  color: #fff;
  font-size: 18px;
  text-align: center;
  border-radius: 10px;
  padding: 1rem 0;
}

/* ▼ Add 202506 ▼ */
#wpmem_reg .button_div .buttons:disabled {
  opacity: .2;
  pointer-events: none;
}

/* ▲ Add 202506 ▲ */

@media screen and (max-width:720px) {
  #wpmem_reg label:nth-child(18) { white-space: nowrap; }

  #wpmem_reg label.checkbox { width: fit-content; }

  #wpmem_reg .div_checkbox:nth-child(21) { padding: 5px 10px 0 0; }

  #wpmem_reg .button_div { bottom: -60px; }

  .agreement {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
  }
}

#wpmem_reg .registration-form-mailpoet { display: none; }

@media screen and (max-width:640px) {
  #wp_reg h2 { font-size: 24px; }

  #wp_reg dl { display: block; }

  #wp_reg dt { width: 100%; }

  #wp_reg dd {
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
  }

  #wpmem_reg fieldset { display: block; }
  #wpmem_reg .div_text:nth-child(13),
  #wpmem_reg .div_text:nth-child(15),
  #wpmem_reg .div_text:nth-child(17),
  #wpmem_reg .div_text:nth-child(19) { margin: 12px 0 36px; }
  #wpmem_reg .div_checkbox:nth-child(21) {
    width: fit-content;
    float: left;
    padding: 1.5px 10px 0 0;
  }
}