/* ================================
 会員登録LP 専用CSS
 全上書き版 2026-05-25
================================ */

/* --------------------------------
 共通
-------------------------------- */

.jt-memberlp{
  width:100vw !important;
  max-width:none !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  margin-bottom:70px !important;
  background:#fff !important;
  color:#222 !important;
  font-family:"Hiragino Mincho ProN","Yu Mincho",serif !important;
  letter-spacing:.03em !important;
}

.jt-memberlp *{
  box-sizing:border-box !important;
}

.jt-memberlp img{
  max-width:100% !important;
  height:auto !important;
  display:block !important;
}

/* --------------------------------
 FV
-------------------------------- */

.jt-memberfv{
  width:100% !important;
  max-width:1360px !important;
  margin:36px auto 0 !important;
  display:grid !important;
  grid-template-columns:45% 55% !important;
  align-items:stretch !important;
  position:relative !important;
  background:#f7f5f1 !important;
  overflow:hidden !important;
}

.jt-memberfv__text{
  padding:72px 0 70px 72px !important;
  position:relative !important;
  z-index:2 !important;
  text-align:left !important;
}

.jt-memberfv__brand{
  margin:0 0 42px !important;
}

.jt-memberfv__brandname{
  margin:0 0 10px !important;
  font-size:32px !important;
  line-height:1.2 !important;
  font-weight:400 !important;
  letter-spacing:.08em !important;
  color:#222 !important;
}

.jt-memberfv__brandcopy{
  margin:0 !important;
  font-size:14px !important;
  line-height:1.7 !important;
  color:#222 !important;
}

.jt-memberfv__label{
  margin:0 0 18px !important;
  font-size:22px !important;
  line-height:1.6 !important;
  color:#222 !important;
}

.jt-memberfv__title{
  margin:0 0 30px !important;
  font-size:48px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
  letter-spacing:.06em !important;
  color:#111 !important;
}

.jt-memberfv__title span{
  color:#111 !important;
}

.jt-memberfv__desc{
  margin:0 0 8px !important;
  font-size:17px !important;
  line-height:2 !important;
  color:#222 !important;
}

.jt-memberfv__note{
  margin:0 !important;
  font-size:13px !important;
  line-height:1.8 !important;
  color:#333 !important;
}

.jt-memberfv__image{
  height:560px !important;
  overflow:hidden !important;
}

.jt-memberfv__image img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center right !important;
}

.jt-memberfv__badge{
  position:absolute !important;
  top:34px !important;
  right:42px !important;
  width:140px !important;
  height:140px !important;
  border-radius:50% !important;
  background:#2f2a23 !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  font-size:29px !important;
  line-height:1.45 !important;
  letter-spacing:.08em !important;
  z-index:4 !important;
}

/* --------------------------------
 5つの理由
-------------------------------- */

.jt-member-reason{
  max-width:1360px !important;
  margin:0 auto !important;
  padding:36px 0 0 !important;
}

.jt-member-section-title{
  margin:0 0 28px !important;
  text-align:center !important;
  font-size:34px !important;
  line-height:1.5 !important;
  font-weight:400 !important;
  letter-spacing:.1em !important;
  color:#222 !important;
}

.jt-member-section-title span{
  color:#b59b59 !important;
  font-size:46px !important;
  line-height:1 !important;
}

.jt-member-reason-grid{
  display:grid !important;
  grid-template-columns:repeat(5,1fr) !important;
  gap:10px !important;
  border:none !important;
}

.jt-member-reason-box{
  min-height:330px !important;
  padding:36px 22px 40px !important;
  background:#f8f8f8 !important;
  border:none !important;
  text-align:center !important;
}

.jt-member-reason-num{
  margin:0 0 14px !important;
  color:#b59b59 !important;
  font-size:20px !important;
  line-height:1.2 !important;
}

.jt-member-reason-head{
  min-height:58px !important;
  margin:0 0 18px !important;
  color:#222 !important;
  font-size:21px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}

.jt-member-reason-icon{
  margin:0 0 20px !important;
  font-size:26px !important;
  line-height:1 !important;
  color:#222 !important;
}

.jt-member-reason-text{
  margin:0 !important;
  color:#333 !important;
  font-size:15px !important;
  line-height:2 !important;
}

/* --------------------------------
 下部3カラム
-------------------------------- */

.jt-member-bottom{
  max-width:1240px !important;
  margin:48px auto 32px !important;
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  background:#f8f8f8 !important;
  border:none !important;
}

.jt-member-bottom-box{
  min-height:104px !important;
  padding:22px 28px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  border-right:1px solid #ddd !important;
  text-align:left !important;
  color:#222 !important;
  font-size:17px !important;
  line-height:1.8 !important;
}

.jt-member-bottom-box:last-child{
  border-right:none !important;
}

.jt-member-bottom-box p{
  margin:0 !important;
}

.jt-member-bottom-icon{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  width:42px !important;
  height:42px !important;
  font-size:24px !important;
  color:#222 !important;
}

/* --------------------------------
 案内
-------------------------------- */

.jt-member-info{
  max-width:1240px !important;
  margin:0 auto 72px !important;
  display:block !important;
  text-align:center !important;
  color:#222 !important;
}

.jt-member-info p{
  margin:0 0 18px !important;
  font-size:15px !important;
  line-height:2.1 !important;
  color:#222 !important;
}

.jt-member-info__text,
.jt-member-info__box{
  padding:0 !important;
  border:none !important;
  background:transparent !important;
}

.jt-member-info__box h3{
  display:none !important;
}

/* --------------------------------
 フォーム見出し
-------------------------------- */

.jt-member-formlead{
  max-width:1180px !important;
  margin:0 auto !important;
  padding:42px 70px 24px !important;
  background:#f8f7f5 !important;
  border-radius:10px 10px 0 0 !important;
  text-align:center !important;
  position:relative !important;
}

.jt-member-formlead__title{
  margin:0 !important;
  display:inline-block !important;
  position:relative !important;
  color:#222 !important;
  font-size:34px !important;
  line-height:1.4 !important;
  font-weight:400 !important;
  letter-spacing:.14em !important;
}

.jt-member-formlead__title:before,
.jt-member-formlead__title:after{
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  width:70px !important;
  height:1px !important;
  background:#b8ab88 !important;
}

.jt-member-formlead__title:before{
  right:100% !important;
  margin-right:24px !important;
}

.jt-member-formlead__title:after{
  left:100% !important;
  margin-left:24px !important;
}

/* --------------------------------
 Bカート 会員登録フォーム
-------------------------------- */

#regist-form{
  max-width:1180px !important;
  margin:0 auto 80px !important;
  padding:28px 80px 70px !important;
  background:#f8f7f5 !important;
  border-radius:0 0 10px 10px !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}

#regist-form .p-form-table{
  width:100% !important;
  margin:0 !important;
  border:none !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:transparent !important;
}

#regist-form .p-form-table tbody{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  column-gap:48px !important;
  row-gap:26px !important;
  align-items:start !important;
  width:100% !important;
}

#regist-form .p-form-table tr{
  display:block !important;
  width:100% !important;
  min-height:0 !important;
  height:auto !important;
  border:none !important;
  background:transparent !important;
  align-self:start !important;
}

#regist-form .p-form-table th,
#regist-form .p-form-table td{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  border:none !important;
  background:transparent !important;
  padding:0 !important;
  text-align:left !important;
  vertical-align:top !important;
}

#regist-form .p-form-table th{
  margin:0 0 10px !important;
  color:#222 !important;
  font-size:15px !important;
  line-height:1.5 !important;
  font-weight:600 !important;
  position:static !important;
}

#regist-form .p-form-table td{
  color:#222 !important;
  font-size:14px !important;
  line-height:1.7 !important;
}

/* 上部の左右配置を固定 */
#regist-form .p-form-table tr.__row-comp_name{
  grid-column:1 !important;
  grid-row:1 !important;
}

#regist-form .p-form-table tr.__row-comp_name_kana{
  grid-column:2 !important;
  grid-row:1 !important;
}

#regist-form .p-form-table tr.__row-ceo_last_name{
  grid-column:1 !important;
  grid-row:2 !important;
}

#regist-form .p-form-table tr.__row-ceo_last_name_kana{
  grid-column:2 !important;
  grid-row:2 !important;
}

#regist-form .p-form-table tr.__row-tanto_last_name{
  grid-column:1 !important;
  grid-row:3 !important;
}

#regist-form .p-form-table tr.__row-tanto_last_name_kana{
  grid-column:2 !important;
  grid-row:3 !important;
}

/* 横幅いっぱいにする項目 */
#regist-form .p-form-table tr.__row-address,
#regist-form .p-form-table tr[class*="address"],
#regist-form .p-form-table tr[class*="zip"],
#regist-form .p-form-table tr[class*="pref"],
#regist-form .p-form-table tr[class*="remarks"],
#regist-form .p-form-table tr[class*="comment"],
#regist-form .p-form-table tr[class*="privacy"],
#regist-form .p-form-table tr[class*="mailmag"],
#regist-form .p-form-table tr[class*="terms"]{
  grid-column:1 / -1 !important;
}

#regist-form input[type="text"],
#regist-form input[type="password"],
#regist-form input[type="email"],
#regist-form input[type="tel"],
#regist-form select{
  width:100% !important;
  max-width:none !important;
  height:52px !important;
  margin:0 !important;
  padding:0 14px !important;
  border:1px solid #d8d4ca !important;
  border-radius:4px !important;
  background:#fff !important;
  color:#222 !important;
  font-size:15px !important;
  line-height:52px !important;
  box-shadow:none !important;
  appearance:auto !important;
}

#regist-form textarea{
  width:100% !important;
  max-width:none !important;
  height:140px !important;
  margin:0 !important;
  padding:14px !important;
  border:1px solid #d8d4ca !important;
  border-radius:4px !important;
  background:#fff !important;
  color:#222 !important;
  font-size:15px !important;
  line-height:1.7 !important;
  box-shadow:none !important;
}

#regist-form input:focus,
#regist-form select:focus,
#regist-form textarea:focus{
  outline:none !important;
  border-color:#b59b59 !important;
  box-shadow:0 0 0 3px rgba(181,155,89,.12) !important;
}

/* 例文 */
#regist-form .p-form-table td p,
#regist-form .p-form-table td .__example,
#regist-form .p-form-table td .example{
  margin:8px 0 0 !important;
  color:#777 !important;
  font-size:12px !important;
  line-height:1.6 !important;
}

/* Bカートの赤い必須ラベルは標準位置で自然に表示 */
#regist-form .p-form-table .__required,
#regist-form .p-form-table .required,
#regist-form .p-form-table .must{
  display:inline-block !important;
  position:static !important;
  margin:0 0 0 8px !important;
  padding:3px 5px !important;
  background:#d9534f !important;
  color:#fff !important;
  border:none !important;
  border-radius:1px !important;
  font-size:11px !important;
  line-height:1 !important;
  vertical-align:middle !important;
}

/* チェックボックス・ラジオ */
#regist-form input[type="checkbox"],
#regist-form input[type="radio"]{
  width:auto !important;
  height:auto !important;
  margin:0 6px 0 0 !important;
  padding:0 !important;
  vertical-align:middle !important;
}

#regist-form label{
  display:inline-block !important;
  margin:0 14px 8px 0 !important;
  font-size:14px !important;
  line-height:1.7 !important;
}

/* 送信ボタン */
#regist-form input[type="submit"],
#regist-form button[type="submit"],
#regist-form .btn_submit{
  width:100% !important;
  max-width:820px !important;
  height:70px !important;
  margin:42px auto 0 !important;
  display:block !important;
  border:none !important;
  border-radius:4px !important;
  background:#c79a3c !important;
  color:#fff !important;
  font-size:24px !important;
  font-weight:600 !important;
  letter-spacing:.08em !important;
  cursor:pointer !important;
  transition:.2s !important;
}

#regist-form input[type="submit"]:hover,
#regist-form button[type="submit"]:hover,
#regist-form .btn_submit:hover{
  opacity:.9 !important;
}

/* --------------------------------
 SP
-------------------------------- */

@media screen and (max-width:767px){

  .jt-memberlp{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 40px !important;
  }

  .jt-memberfv{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 36px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  .jt-memberfv__image{
    order:1 !important;
    height:auto !important;
  }

  .jt-memberfv__image img{
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
  }

  .jt-memberfv__text{
    order:2 !important;
    padding:30px 22px !important;
  }

  .jt-memberfv__brandname{
    font-size:26px !important;
  }

  .jt-memberfv__brandcopy{
    font-size:12px !important;
  }

  .jt-memberfv__label{
    font-size:16px !important;
    margin-bottom:16px !important;
  }

  .jt-memberfv__title{
    font-size:28px !important;
    line-height:1.65 !important;
    margin-bottom:22px !important;
  }

  .jt-memberfv__desc{
    font-size:13px !important;
    line-height:2 !important;
  }

  .jt-memberfv__note{
    font-size:12px !important;
  }

  .jt-memberfv__badge{
    width:82px !important;
    height:82px !important;
    top:16px !important;
    right:16px !important;
    font-size:17px !important;
  }

  .jt-member-reason{
    width:100% !important;
    max-width:100% !important;
    padding:30px 16px 0 !important;
  }

  .jt-member-section-title{
    font-size:22px !important;
    margin-bottom:22px !important;
  }

  .jt-member-section-title span{
    font-size:30px !important;
  }

  .jt-member-reason-grid{
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .jt-member-reason-box{
    min-height:0 !important;
    padding:30px 22px !important;
  }

  .jt-member-reason-head{
    min-height:0 !important;
    font-size:18px !important;
  }

  .jt-member-reason-text{
    font-size:13px !important;
  }

  .jt-member-bottom{
    width:auto !important;
    max-width:none !important;
    margin:30px 16px 24px !important;
    grid-template-columns:1fr !important;
  }

  .jt-member-bottom-box{
    min-height:0 !important;
    border-right:none !important;
    border-bottom:1px solid #ddd !important;
    padding:22px 18px !important;
    font-size:14px !important;
  }

  .jt-member-bottom-box:last-child{
    border-bottom:none !important;
  }

  .jt-member-info{
    width:auto !important;
    max-width:none !important;
    margin:0 16px 40px !important;
  }

  .jt-member-info p{
    font-size:12px !important;
    line-height:1.9 !important;
  }

  .jt-member-formlead{
    max-width:none !important;
    margin:40px 16px 0 !important;
    padding:28px 18px 18px !important;
  }

  .jt-member-formlead__title{
    font-size:22px !important;
  }

  .jt-member-formlead__title:before,
  .jt-member-formlead__title:after{
    width:26px !important;
  }

  .jt-member-formlead__title:before{
    margin-right:12px !important;
  }

  .jt-member-formlead__title:after{
    margin-left:12px !important;
  }

  #regist-form{
    max-width:none !important;
    margin:0 16px 50px !important;
    padding:18px 18px 36px !important;
    width:auto !important;
  }

  #regist-form .p-form-table tbody{
    display:block !important;
  }

  #regist-form .p-form-table tr{
    display:block !important;
    margin:0 0 18px !important;
  }

  #regist-form .p-form-table th,
  #regist-form .p-form-table td{
    display:block !important;
    width:100% !important;
  }

  #regist-form .p-form-table th{
    margin-bottom:7px !important;
    font-size:13px !important;
  }

  #regist-form input[type="text"],
  #regist-form input[type="password"],
  #regist-form input[type="email"],
  #regist-form input[type="tel"],
  #regist-form select{
    height:46px !important;
    font-size:13px !important;
    line-height:46px !important;
  }

  #regist-form textarea{
    height:130px !important;
    font-size:13px !important;
  }

  #regist-form input[type="submit"],
  #regist-form button[type="submit"],
  #regist-form .btn_submit{
    height:58px !important;
    font-size:20px !important;
    margin-top:28px !important;
  }
}
/* ===== 規約エリア 中央寄せ ===== */

#regist-form .__kiyaku{
  grid-column:1 / -1 !important;
  width:560px !important;
  max-width:560px !important;
  margin:0 auto 34px !important;
  text-align:center !important;
}

#regist-form .__kiyaku .p-form-table,
#regist-form .__kiyaku .p-form-table tbody,
#regist-form .__kiyaku .p-form-table tr,
#regist-form .__kiyaku .p-form-table td{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:none !important;
}

#regist-form .__kiyaku .__content{
  width:100% !important;
  height:210px !important;
  margin:0 auto 14px !important;
  padding:18px !important;
  background:#fff !important;
  border:1px solid #d8d4ca !important;
  overflow:auto !important;
  text-align:left !important;
  font-size:13px !important;
  line-height:1.8 !important;
}

#regist-form .__kiyaku .__check-wrap{
  text-align:center !important;
}

#regist-form .__submit{
  text-align:center !important;
}

#regist-form .__submit input[type="submit"],
#regist-form .__submit button[type="submit"]{
  width:100% !important;
  max-width:820px !important;
  margin:0 auto !important;
}

/* ===== 住所ブロックを2列化・実HTML対応 ===== */

@media screen and (min-width:768px){

  #regist-form .p-form-table tr.__row-address td{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    column-gap:48px !important;
    row-gap:18px !important;
    align-items:start !important;
  }

  #regist-form .p-form-table tr.__row-address td > .__block{
    width:100% !important;
    margin:0 !important;
  }

  #regist-form .p-form-table tr.__row-address td > .__block-zip,
  #regist-form .p-form-table tr.__row-address td > .__block-pref{
    grid-column:auto !important;
  }

  #regist-form .p-form-table tr.__row-address td > .__block-address1,
  #regist-form .p-form-table tr.__row-address td > .__block-address2{
    grid-column:auto !important;
  }

  #regist-form .p-form-table tr.__row-address td > .__block-building{
    grid-column:1 / -1 !important;
  }

  #regist-form .p-form-table tr.__row-address input,
  #regist-form .p-form-table tr.__row-address select{
    width:100% !important;
  }

  #regist-form .p-form-table tr.__row-address .__block-zip{
    display:grid !important;
    grid-template-columns:1fr 1fr auto !important;
    gap:10px !important;
    align-items:end !important;
  }

  #regist-form .p-form-table tr.__row-address .__block-zip button{
    height:52px !important;
    white-space:nowrap !important;
  }

}
/* ===== FVロゴ下 ===== */

.jt-memberfv__brand{
  margin-bottom:4px;
  font-size:15px;
  font-weight:600;
  letter-spacing:.08em;
  color:#222;
}

.jt-memberfv__sub{
  margin-bottom:34px;
  font-size:12px;
  line-height:1.8;
  color:#666;
}

/* ===== バッジ ===== */

.jt-memberfv__badge{
  position:absolute;
  top:24px;
  right:24px;
  width:108px;
  height:108px;
  border-radius:50%;
  background:#2f2722;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
  text-align:center;
  font-size:18px;
  line-height:1.6;
  letter-spacing:.08em;
}

/* ===== 5つの理由 見出し ===== */

.jt-member-reason-title{
  margin-bottom:42px;
  text-align:center;
  font-size:44px;
  font-weight:400;
  line-height:1.4;
  letter-spacing:.06em;
  color:#222;
}

.jt-member-reason-title span{
  color:#b99247;
}

@media screen and (max-width:767px){

  .jt-memberfv__badge{
    width:78px;
    height:78px;
    top:14px;
    right:14px;
    font-size:13px;
  }

  .jt-member-reason-title{
    font-size:28px;
    line-height:1.6;
  }

}
/* =========================================================
 会員登録ページ SP専用調整
 body.body-regist-form 限定
========================================================= */

@media screen and (max-width:767px){

  body.body-regist-form{
    overflow-x:hidden !important;
  }

  body.body-regist-form .jt-memberlp{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 36px !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  /* ===== FV ===== */

  body.body-regist-form .jt-memberfv{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 30px !important;
    display:flex !important;
    flex-direction:column !important;
    background:#f7f5f1 !important;
  }

  body.body-regist-form .jt-memberfv__image{
    order:1 !important;
    width:100% !important;
    height:260px !important;
    position:relative !important;
  }

  body.body-regist-form .jt-memberfv__image img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center right !important;
  }

  body.body-regist-form .jt-memberfv__text{
    order:2 !important;
    padding:28px 22px 30px !important;
  }

  body.body-regist-form .jt-memberfv__brand{
    margin:0 0 20px !important;
  }

  body.body-regist-form .jt-memberfv__brandname{
    margin:0 0 6px !important;
    font-size:24px !important;
    line-height:1.3 !important;
    letter-spacing:.08em !important;
  }

  body.body-regist-form .jt-memberfv__brandcopy{
    margin:0 !important;
    font-size:11px !important;
    line-height:1.7 !important;
  }

  body.body-regist-form .jt-memberfv__label{
    margin:0 0 12px !important;
    font-size:15px !important;
    line-height:1.7 !important;
  }

  body.body-regist-form .jt-memberfv__title{
    margin:0 0 18px !important;
    font-size:30px !important;
    line-height:1.55 !important;
    letter-spacing:.04em !important;
  }

  body.body-regist-form .jt-memberfv__desc{
    margin:0 0 6px !important;
    font-size:12px !important;
    line-height:1.9 !important;
  }

  body.body-regist-form .jt-memberfv__note{
    margin:0 !important;
    font-size:11px !important;
    line-height:1.8 !important;
  }

  body.body-regist-form .jt-memberfv__badge{
    width:88px !important;
    height:88px !important;
    top:14px !important;
    right:14px !important;
    font-size:14px !important;
    line-height:1.55 !important;
  }

  /* ===== 5つの理由 ===== */

  body.body-regist-form .jt-member-reason{
    width:100% !important;
    max-width:100% !important;
    padding:28px 16px 0 !important;
    margin:0 auto !important;
  }

  body.body-regist-form .jt-member-section-title{
    margin:0 0 22px !important;
    font-size:22px !important;
    line-height:1.6 !important;
    letter-spacing:.06em !important;
  }

  body.body-regist-form .jt-member-section-title span{
    font-size:30px !important;
  }

  body.body-regist-form .jt-member-reason-grid{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }

  body.body-regist-form .jt-member-reason-box{
    min-height:0 !important;
    padding:22px 12px !important;
  }

  body.body-regist-form .jt-member-reason-num{
    margin:0 0 8px !important;
    font-size:16px !important;
  }

  body.body-regist-form .jt-member-reason-head{
    min-height:0 !important;
    margin:0 0 10px !important;
    font-size:14px !important;
    line-height:1.6 !important;
  }

  body.body-regist-form .jt-member-reason-icon{
    margin:0 0 10px !important;
    font-size:18px !important;
  }

  body.body-regist-form .jt-member-reason-text{
    margin:0 !important;
    font-size:11px !important;
    line-height:1.8 !important;
  }

  body.body-regist-form .jt-member-reason-box:last-child{
    grid-column:1 / -1 !important;
  }

  /* ===== 3カラム ===== */

  body.body-regist-form .jt-member-bottom{
    width:auto !important;
    max-width:none !important;
    margin:28px 16px 24px !important;
    display:grid !important;
    grid-template-columns:1fr !important;
  }

  body.body-regist-form .jt-member-bottom-box{
    min-height:0 !important;
    padding:18px 16px !important;
    border-right:none !important;
    border-bottom:1px solid #ddd !important;
    font-size:13px !important;
    line-height:1.8 !important;
  }

  body.body-regist-form .jt-member-bottom-box:last-child{
    border-bottom:none !important;
  }

  body.body-regist-form .jt-member-bottom-icon{
    width:34px !important;
    height:34px !important;
    font-size:18px !important;
  }

  /* ===== 案内 ===== */

  body.body-regist-form .jt-member-info{
    width:auto !important;
    max-width:none !important;
    margin:0 18px 34px !important;
    text-align:center !important;
  }

  body.body-regist-form .jt-member-info p{
    margin:0 0 14px !important;
    font-size:11px !important;
    line-height:1.9 !important;
  }

  /* ===== フォーム見出し ===== */

  body.body-regist-form .jt-member-formlead{
    max-width:none !important;
    margin:36px 16px 0 !important;
    padding:26px 16px 18px !important;
  }

  body.body-regist-form .jt-member-formlead__title{
    font-size:21px !important;
    letter-spacing:.12em !important;
  }

  body.body-regist-form .jt-member-formlead__title:before,
  body.body-regist-form .jt-member-formlead__title:after{
    width:24px !important;
  }

  body.body-regist-form .jt-member-formlead__title:before{
    margin-right:10px !important;
  }

  body.body-regist-form .jt-member-formlead__title:after{
    margin-left:10px !important;
  }

  /* ===== フォーム ===== */

  body.body-regist-form #regist-form{
    width:auto !important;
    max-width:none !important;
    margin:0 16px 46px !important;
    padding:18px 16px 34px !important;
    background:#faf8f5 !important;
  }

  body.body-regist-form #regist-form .p-form-table,
  body.body-regist-form #regist-form .p-form-table tbody,
  body.body-regist-form #regist-form .p-form-table tr,
  body.body-regist-form #regist-form .p-form-table th,
  body.body-regist-form #regist-form .p-form-table td{
    display:block !important;
    width:100% !important;
  }

  body.body-regist-form #regist-form .p-form-table tr{
    margin:0 0 18px !important;
  }

  body.body-regist-form #regist-form .p-form-table th{
    margin:0 0 6px !important;
    font-size:13px !important;
    line-height:1.6 !important;
  }

  body.body-regist-form #regist-form .p-form-table td{
    font-size:12px !important;
  }

  body.body-regist-form #regist-form input[type="text"],
  body.body-regist-form #regist-form input[type="password"],
  body.body-regist-form #regist-form input[type="email"],
  body.body-regist-form #regist-form input[type="tel"],
  body.body-regist-form #regist-form select{
    width:100% !important;
    height:44px !important;
    padding:0 12px !important;
    font-size:16px !important;
    line-height:44px !important;
  }

  body.body-regist-form #regist-form textarea{
    width:100% !important;
    height:150px !important;
    padding:12px !important;
    font-size:13px !important;
  }

  body.body-regist-form #regist-form .__required,
  body.body-regist-form #regist-form .required,
  body.body-regist-form #regist-form .must{
    margin-left:6px !important;
    padding:2px 5px !important;
    font-size:10px !important;
  }

  /* ===== 住所 ===== */

  body.body-regist-form #regist-form .__block,
  body.body-regist-form #regist-form [class*="__block"]{
    display:block !important;
    width:100% !important;
    margin:0 0 12px !important;
  }

  body.body-regist-form #regist-form .__block-zip{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  body.body-regist-form #regist-form .__block-zip button{
    grid-column:1 / -1 !important;
    width:100% !important;
    height:40px !important;
    margin:0 !important;
  }

  /* ===== 規約 ===== */

  body.body-regist-form #regist-form .__kiyaku{
    width:100% !important;
    max-width:100% !important;
    margin:0 auto 24px !important;
  }

  body.body-regist-form #regist-form .__kiyaku .__content{
    height:170px !important;
    padding:12px !important;
    font-size:11px !important;
    line-height:1.8 !important;
  }

  body.body-regist-form #regist-form .__kiyaku .__check-wrap{
    text-align:center !important;
  }

  /* ===== 送信 ===== */

  body.body-regist-form #regist-form .__submit,
  body.body-regist-form #regist-form .submit{
    text-align:center !important;
  }

  body.body-regist-form #regist-form input[type="submit"],
  body.body-regist-form #regist-form button[type="submit"],
  body.body-regist-form #regist-form .btn_submit{
    width:100% !important;
    max-width:none !important;
    height:54px !important;
    margin:24px auto 0 !important;
    font-size:18px !important;
  }

  /* ===== SPでは下部を軽くする ===== */

  body.body-regist-form .regular,
  body.body-regist-form .regular-list,
  body.body-regist-form .c-regular{
    display:none !important;
  }

}
/* ===== 会員登録ページSP：上部見出しの詰まり修正 ===== */

@media screen and (max-width:767px){

  body.body-regist-form .main--regist-form .__heading{
    display:block !important;
    width:100% !important;
    margin:18px auto 14px !important;
    padding:14px 0 8px !important;
    background:transparent !important;
    text-align:center !important;
  }

  body.body-regist-form .main--regist-form .__heading .c-h1,
  body.body-regist-form .main--regist-form .__heading .__h1{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    color:#222 !important;
    font-size:20px !important;
    line-height:1.5 !important;
    font-weight:600 !important;
    letter-spacing:.08em !important;
  }

  body.body-regist-form .main--regist-form .__heading + *{
    margin-top:12px !important;
  }

}
/* =========================================
 会員登録SP 最終仕上げ
========================================= */

@media screen and (max-width:767px){

  /* FVタイトル */

  body.body-regist-form .jt-memberfv__title{
    font-size:24px !important;
    line-height:1.45 !important;
    letter-spacing:.02em !important;
  }

  body.body-regist-form .jt-memberfv__text{
    padding:22px 18px 24px !important;
  }

  body.body-regist-form .jt-memberfv__label{
    margin-bottom:8px !important;
    font-size:14px !important;
  }

  /* 理由 */

  body.body-regist-form .jt-member-reason-grid{
    gap:8px !important;
  }

  body.body-regist-form .jt-member-reason-box{
    padding:16px 10px !important;
  }

  body.body-regist-form .jt-member-reason-head{
    margin-bottom:6px !important;
    font-size:13px !important;
  }

  body.body-regist-form .jt-member-reason-icon{
    margin-bottom:6px !important;
    font-size:16px !important;
  }

  body.body-regist-form .jt-member-reason-text{
    font-size:10px !important;
    line-height:1.6 !important;
  }

  /* フォーム */

  body.body-regist-form #regist-form{
    padding:14px 14px 28px !important;
  }

  body.body-regist-form #regist-form .p-form-table tr{
    margin-bottom:14px !important;
  }

  body.body-regist-form #regist-form input[type="text"],
  body.body-regist-form #regist-form input[type="email"],
  body.body-regist-form #regist-form input[type="tel"],
  body.body-regist-form #regist-form input[type="password"],
  body.body-regist-form #regist-form select{
    height:42px !important;
  }

  /* CTA */

  body.body-regist-form #regist-form input[type="submit"]{
    height:58px !important;
    font-size:20px !important;
    font-weight:700 !important;
    border-radius:6px !important;
  }

  /* 下部を整理 */

  body.body-regist-form .brand,
  body.body-regist-form .contents,
  body.body-regist-form .movie,
  body.body-regist-form .youtube,
  body.body-regist-form .regular{
    display:none !important;
  }

}


/* SP */
@media screen and (max-width:767px){

  body.body-regist-form #regist-form .__row-tel td,
  body.body-regist-form #regist-form .__row-fax td{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:0 4px !important;
  }

  body.body-regist-form #regist-form .__row-tel td input,
  body.body-regist-form #regist-form .__row-fax td input{
    flex:1 1 0 !important;
    width:auto !important;
    min-width:0 !important;
    padding:0 6px !important;
    font-size:14px !important;
  }

}

/* -------------------------
 名前1枠化
------------------------- */

/* 2個目input非表示 */
#regist-form td input[name*="last_name_2"],
#regist-form td input[name*="first_name"],
#regist-form td input[name*="kana_2"]{
  display:none !important;
}

/* 名前横ラベル消す */
#regist-form td span{
  font-size:0 !important;
}

/* br消す */
#regist-form td br{
  display:none !important;
}

/* inputを1本化 */
#regist-form .__row-ceo_last_name td input,
#regist-form .__row-ceo_last_name_kana td input,
#regist-form .__row-tanto_last_name td input,
#regist-form .__row-tanto_last_name_kana td input{
  width:100% !important;
  max-width:none !important;
  display:block !important;
}

/* -------------------------
 郵便番号1枠化
------------------------- */

#regist-form .__block-zip{
  display:block !important;
}

#regist-form .__block-zip input:nth-of-type(2),
#regist-form .__block-zip span,
#regist-form .__block-zip br{
  display:none !important;
}

#regist-form .__block-zip input:nth-of-type(1){
  width:100% !important;
}

#regist-form .__block-zip button{
  margin-top:8px !important;
}

/* -------------------------
 電話番号1行
------------------------- */

#regist-form .__row-tel td,
#regist-form .__row-fax td{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  flex-wrap:wrap !important;
}

#regist-form .__row-tel td input,
#regist-form .__row-fax td input{
  flex:1 !important;
  min-width:0 !important;
  width:auto !important;
}

#regist-form .__row-tel td .__example,
#regist-form .__row-fax td .__example{
  width:100% !important;
  margin-top:8px !important;
}
/* =========================================
 会員登録フォーム 仕上げ調整
========================================= */

/* 名前・カナは標準表示に戻す */
#regist-form .__row-ceo_last_name td,
#regist-form .__row-ceo_last_name_kana td,
#regist-form .__row-tanto_last_name td,
#regist-form .__row-tanto_last_name_kana td{
  display:block !important;
}

#regist-form .__row-ceo_last_name td input,
#regist-form .__row-ceo_last_name_kana td input,
#regist-form .__row-tanto_last_name td input,
#regist-form .__row-tanto_last_name_kana td input{
  width:100% !important;
  max-width:none !important;
  margin-bottom:8px !important;
}

#regist-form .__row-ceo_last_name td input,
#regist-form .__row-ceo_last_name_kana td input,
#regist-form .__row-tanto_last_name td input,
#regist-form .__row-tanto_last_name_kana td input{
  width:100% !important;
  max-width:none !important;
}

#regist-form .__row-ceo_last_name td .__example,
#regist-form .__row-ceo_last_name_kana td .__example,
#regist-form .__row-tanto_last_name td .__example,
#regist-form .__row-tanto_last_name_kana td .__example{
  grid-column:1 / -1 !important;
  margin-top:6px !important;
}

/* 郵便番号：2枠横並び */
#regist-form .__block-zip{
  display:grid !important;
  grid-template-columns:1fr 1fr auto !important;
  gap:8px !important;
  align-items:center !important;
}

#regist-form .__block-zip input{
  width:100% !important;
  max-width:none !important;
}

#regist-form .__block-zip button{
  height:42px !important;
  white-space:nowrap !important;
}

/* 電話番号：1行 */
#regist-form .__row-tel td,
#regist-form .__row-fax td{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  flex-wrap:wrap !important;
}

#regist-form .__row-tel td input,
#regist-form .__row-fax td input{
  flex:1 1 0 !important;
  min-width:0 !important;
  width:auto !important;
}

#regist-form .__row-tel td .__example,
#regist-form .__row-fax td .__example{
  width:100% !important;
  margin-top:8px !important;
}

/* PCフォーム全体を少し締める */
@media screen and (min-width:768px){
  #regist-form{
    max-width:960px !important;
    padding:34px 70px 64px !important;
  }

  #regist-form .p-form-table tbody{
    column-gap:42px !important;
    row-gap:22px !important;
  }
}

/* 名前・カナの小ラベルを消して面を揃える */

#regist-form .__row-ceo_last_name td,
#regist-form .__row-ceo_last_name_kana td,
#regist-form .__row-tanto_last_name td,
#regist-form .__row-tanto_last_name_kana td{
  font-size:0 !important;
}

#regist-form .__row-ceo_last_name td input,
#regist-form .__row-ceo_last_name_kana td input,
#regist-form .__row-tanto_last_name td input,
#regist-form .__row-tanto_last_name_kana td input{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  margin:0 0 12px !important;
  font-size:15px !important;
}

#regist-form .__row-ceo_last_name td .__example,
#regist-form .__row-ceo_last_name_kana td .__example,
#regist-form .__row-tanto_last_name td .__example,
#regist-form .__row-tanto_last_name_kana td .__example{
  font-size:12px !important;
  margin-top:0 !important;
}
/* =====================================================
 会員登録ページ SP完成版
 regist.php / body.body-regist-form 専用
===================================================== */

@media screen and (max-width:767px){

  body.body-regist-form{
    overflow-x:hidden !important;
  }

  /* LP全体 */
  body.body-regist-form .jt-memberlp{
    margin-bottom:34px !important;
  }

  /* FV */
  body.body-regist-form .jt-memberfv{
    margin:0 auto 28px !important;
  }

  body.body-regist-form .jt-memberfv__image{
    height:240px !important;
  }

  body.body-regist-form .jt-memberfv__text{
    padding:22px 18px 24px !important;
  }

  body.body-regist-form .jt-memberfv__brand{
    margin-bottom:16px !important;
  }

  body.body-regist-form .jt-memberfv__brandname{
    font-size:23px !important;
  }

  body.body-regist-form .jt-memberfv__brandcopy{
    font-size:11px !important;
  }

  body.body-regist-form .jt-memberfv__label{
    margin-bottom:8px !important;
    font-size:14px !important;
  }

  body.body-regist-form .jt-memberfv__title{
    font-size:24px !important;
    line-height:1.48 !important;
    letter-spacing:.02em !important;
    margin-bottom:16px !important;
  }

  body.body-regist-form .jt-memberfv__desc{
    font-size:12px !important;
    line-height:1.8 !important;
  }

  body.body-regist-form .jt-memberfv__note{
    font-size:11px !important;
  }

  body.body-regist-form .jt-memberfv__badge{
    width:78px !important;
    height:78px !important;
    top:12px !important;
    right:12px !important;
    font-size:13px !important;
  }

  /* 5つの理由 */
  body.body-regist-form .jt-member-reason{
    padding:24px 14px 0 !important;
  }

  body.body-regist-form .jt-member-section-title{
    font-size:20px !important;
    line-height:1.55 !important;
    margin-bottom:18px !important;
  }

  body.body-regist-form .jt-member-section-title span{
    font-size:28px !important;
  }

  body.body-regist-form .jt-member-reason-grid{
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }

  body.body-regist-form .jt-member-reason-box{
    padding:16px 10px !important;
  }

  body.body-regist-form .jt-member-reason-num{
    font-size:15px !important;
    margin-bottom:6px !important;
  }

  body.body-regist-form .jt-member-reason-head{
    font-size:13px !important;
    line-height:1.55 !important;
    margin-bottom:6px !important;
  }

  body.body-regist-form .jt-member-reason-icon{
    font-size:16px !important;
    margin-bottom:6px !important;
  }

  body.body-regist-form .jt-member-reason-text{
    font-size:10px !important;
    line-height:1.65 !important;
  }

  body.body-regist-form .jt-member-reason-box:last-child{
    grid-column:1 / -1 !important;
  }

  /* 下部3案内 */
  body.body-regist-form .jt-member-bottom{
    margin:24px 16px 22px !important;
  }

  body.body-regist-form .jt-member-bottom-box{
    padding:14px 14px !important;
    font-size:12px !important;
    line-height:1.7 !important;
  }

  /* 案内文 */
  body.body-regist-form .jt-member-info{
    margin:0 18px 30px !important;
  }

  body.body-regist-form .jt-member-info p{
    font-size:11px !important;
    line-height:1.85 !important;
  }

  /* フォーム見出し */
  body.body-regist-form .jt-member-formlead{
    margin:30px 16px 0 !important;
    padding:22px 14px 16px !important;
  }

  body.body-regist-form .jt-member-formlead__title{
    font-size:20px !important;
  }

  /* フォーム本体 */
  body.body-regist-form #regist-form{
    margin:0 16px 42px !important;
    padding:14px 14px 28px !important;
  }

  body.body-regist-form #regist-form .p-form-table tr{
    margin-bottom:14px !important;
  }

  body.body-regist-form #regist-form .p-form-table th{
    margin-bottom:5px !important;
    font-size:12px !important;
  }

  body.body-regist-form #regist-form .p-form-table td{
    font-size:11px !important;
  }

  body.body-regist-form #regist-form input[type="text"],
  body.body-regist-form #regist-form input[type="email"],
  body.body-regist-form #regist-form input[type="tel"],
  body.body-regist-form #regist-form input[type="password"],
  body.body-regist-form #regist-form select{
    height:40px !important;
    line-height:40px !important;
    font-size:14px !important;
    padding:0 10px !important;
  }

  body.body-regist-form #regist-form textarea{
    height:135px !important;
    font-size:12px !important;
  }

  /* 名前・カナの小ラベル非表示 */
  body.body-regist-form #regist-form .__row-ceo_last_name td,
  body.body-regist-form #regist-form .__row-ceo_last_name_kana td,
  body.body-regist-form #regist-form .__row-tanto_last_name td,
  body.body-regist-form #regist-form .__row-tanto_last_name_kana td{
    font-size:0 !important;
  }

  body.body-regist-form #regist-form .__row-ceo_last_name td input,
  body.body-regist-form #regist-form .__row-ceo_last_name_kana td input,
  body.body-regist-form #regist-form .__row-tanto_last_name td input,
  body.body-regist-form #regist-form .__row-tanto_last_name_kana td input{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 0 10px !important;
    font-size:14px !important;
  }

  body.body-regist-form #regist-form .__row-ceo_last_name td .__example,
  body.body-regist-form #regist-form .__row-ceo_last_name_kana td .__example,
  body.body-regist-form #regist-form .__row-tanto_last_name td .__example,
  body.body-regist-form #regist-form .__row-tanto_last_name_kana td .__example{
    font-size:11px !important;
    margin-top:0 !important;
  }

  /* 電話番号 */
  body.body-regist-form #regist-form .__row-tel td,
  body.body-regist-form #regist-form .__row-fax td{
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    gap:0 4px !important;
  }

  body.body-regist-form #regist-form .__row-tel td input,
  body.body-regist-form #regist-form .__row-fax td input{
    flex:1 1 0 !important;
    width:auto !important;
    min-width:0 !important;
    padding:0 6px !important;
    font-size:13px !important;
  }

  body.body-regist-form #regist-form .__row-tel td .__example,
  body.body-regist-form #regist-form .__row-fax td .__example{
    width:100% !important;
    margin-top:6px !important;
  }

  /* 規約 */
  body.body-regist-form #regist-form .__kiyaku{
    margin-bottom:20px !important;
  }

  body.body-regist-form #regist-form .__kiyaku .__content{
    height:150px !important;
    font-size:11px !important;
    line-height:1.75 !important;
  }

  /* 確認ボタン */
  body.body-regist-form #regist-form input[type="submit"],
  body.body-regist-form #regist-form button[type="submit"],
  body.body-regist-form #regist-form .btn_submit{
    height:52px !important;
    margin-top:22px !important;
    font-size:17px !important;
    font-weight:700 !important;
    border-radius:4px !important;
  }

  /* 下部 */
  body.body-regist-form .brand,
  body.body-regist-form .regular,
  body.body-regist-form .contents,
  body.body-regist-form .movie{
    margin-top:34px !important;
  }

}
/* =====================================================
 会員登録ページ SP最終追加CSS
 regist.php / body.body-regist-form 専用
===================================================== */

@media screen and (max-width:767px){

  /* FV画像を少し締める */
  body.body-regist-form .jt-memberfv__image{
    height:200px !important;
  }

  /* SP入力時のズーム防止＆入力しやすさ */
  body.body-regist-form #regist-form input[type="text"],
  body.body-regist-form #regist-form input[type="email"],
  body.body-regist-form #regist-form input[type="tel"],
  body.body-regist-form #regist-form input[type="password"],
  body.body-regist-form #regist-form select{
    font-size:16px !important;
  }

  /* 登録に集中させるため下部を整理 */
  body.body-regist-form .brand,
  body.body-regist-form .regular,
  body.body-regist-form .regular-list,
  body.body-regist-form .c-regular,
  body.body-regist-form .contents,
  body.body-regist-form .movie,
  body.body-regist-form .youtube,
  body.body-regist-form .footer-banner{
    display:none !important;
  }

}
/* =====================================================
 会員登録ページ SP最終追加CSS
 regist.php / body.body-regist-form 専用
===================================================== */

@media screen and (max-width:767px){

  /* FV画像を少し締める */
  body.body-regist-form .jt-memberfv__image{
    height:200px !important;
  }

  /* SP入力時のズーム防止＆入力しやすさ */
  body.body-regist-form #regist-form input[type="text"],
  body.body-regist-form #regist-form input[type="email"],
  body.body-regist-form #regist-form input[type="tel"],
  body.body-regist-form #regist-form input[type="password"],
  body.body-regist-form #regist-form select{
    font-size:16px !important;
  }

  /* 登録に集中させるため下部を整理 */
  body.body-regist-form .brand,
  body.body-regist-form .regular,
  body.body-regist-form .regular-list,
  body.body-regist-form .c-regular,
  body.body-regist-form .contents,
  body.body-regist-form .movie,
  body.body-regist-form .youtube,
  body.body-regist-form .footer-banner{
    display:none !important;
  }

}
/* =====================================================
 会員登録ページ 最終調整CSS
 regist.php / body.body-regist-form 専用
===================================================== */

@media screen and (max-width:767px){

  /* FV画像を少し締める */
  body.body-regist-form .jt-memberfv__image{
    height:200px !important;
  }

  /* フォーム見出し〜フォーム本体の余白調整 */
  body.body-regist-form .jt-member-formlead{
    margin-top:28px !important;
  }

  body.body-regist-form #regist-form{
    margin-top:0 !important;
  }

  /* 入力欄：スマホで入力しやすく */
  body.body-regist-form #regist-form input[type="text"],
  body.body-regist-form #regist-form input[type="email"],
  body.body-regist-form #regist-form input[type="tel"],
  body.body-regist-form #regist-form input[type="password"],
  body.body-regist-form #regist-form select{
    height:40px !important;
    line-height:40px !important;
    font-size:16px !important;
  }

  /* textarea */
  body.body-regist-form #regist-form textarea{
    height:135px !important;
    font-size:12px !important;
  }

  /* 確認ボタン */
  body.body-regist-form #regist-form input[type="submit"],
  body.body-regist-form #regist-form button[type="submit"],
  body.body-regist-form #regist-form .btn_submit{
    height:52px !important;
    font-size:17px !important;
    font-weight:700 !important;
    border-radius:4px !important;
  }

  /* 登録に集中させるため下部を整理 */
  body.body-regist-form .brand,
  body.body-regist-form .regular,
  body.body-regist-form .regular-list,
  body.body-regist-form .c-regular,
  body.body-regist-form .contents,
  body.body-regist-form .movie,
  body.body-regist-form .youtube,
  body.body-regist-form .footer-banner{
    display:none !important;
  }

  /* フッター余白 */
  body.body-regist-form footer{
    padding-bottom:90px !important;
  }

}
/* =================================
 ご利用案内 SP 下部整理
================================= */

@media screen and (max-width:767px){

  body.body-howto .cat-img,
  body.body-howto .block__block--pro-link,
  body.body-howto .footer-youtube_container_sp,
  body.body-howto .requestformunder{
    display:none !important;
  }

}
/* 会員登録ページ SP 下部完全整理 */
@media screen and (max-width:767px){

  body.body-regist-form .cat-img,
  body.body-regist-form .cat-title,
  body.body-regist-form .block--pro-link,
  body.body-regist-form .block__block--pro-link,
  body.body-regist-form .link-content,
  body.body-regist-form .footer_youtube_container_sp,
  body.body-regist-form .footer-youtube_container_sp,
  body.body-regist-form .requestformunder,
  body.body-regist-form section[class*="pro-link"],
  body.body-regist-form section[class*="cat"],
  body.body-regist-form section[class*="youtube"]{
    display:none !important;
  }

}
/* 会員登録SP：Instagram埋め込み完全非表示 */
@media screen and (max-width:767px){

  body.body-regist-form iframe,
  body.body-regist-form .es-main-widget,
  body.body-regist-form .embedsocial-hashtag{
    display:none !important;
    height:0 !important;
    overflow:hidden !important;
  }

}
/* ========================================
   会員登録ページ SP 最終調整
======================================== */
@media screen and (max-width:767px){

  /* 全体余白 */
  body.body-regist-form #wrapper{
    overflow:hidden !important;
  }

  body.body-regist-form main{
    padding-bottom:80px !important;
  }

  /* FV調整 */
  body.body-regist-form .member-mv{
    margin-bottom:24px !important;
  }

  /* 理由エリア */
  body.body-regist-form .member-reason{
    margin:24px 0 !important;
  }

  body.body-regist-form .member-reason-box{
    gap:10px !important;
  }

  /* フォームタイトル */
  body.body-regist-form .member-formlead{
    margin:28px 0 12px !important;
    padding:12px !important;
    font-size:18px !important;
    letter-spacing:.08em !important;
  }

  /* フォーム本体 */
  body.body-regist-form #regist-form{
    margin-top:16px !important;
    padding:20px 14px !important;
    border-radius:8px !important;
  }

  /* ラベル */
  body.body-regist-form #regist-form th,
  body.body-regist-form #regist-form td{
    font-size:13px !important;
    line-height:1.7 !important;
  }

  /* 入力欄 */
  body.body-regist-form #regist-form input,
  body.body-regist-form #regist-form select{
    height:44px !important;
    font-size:16px !important;
    border-radius:4px !important;
  }

  /* textarea */
  body.body-regist-form #regist-form textarea{
    min-height:140px !important;
    font-size:13px !important;
    line-height:1.7 !important;
    border-radius:4px !important;
  }

  /* 必須 */
  body.body-regist-form .required{
    font-size:10px !important;
    padding:2px 5px !important;
  }

  /* 確認ボタン */
  body.body-regist-form .btn_submit,
  body.body-regist-form input[type="submit"]{
    width:100% !important;
    height:52px !important;
    font-size:16px !important;
    font-weight:700 !important;
    letter-spacing:.06em !important;
    border-radius:4px !important;
    margin-top:20px !important;
  }

  /* 下部コンテンツ非表示 */
  body.body-regist-form iframe,
  body.body-regist-form .es-main-widget,
  body.body-regist-form .embedsocial-hashtag,
  body.body-regist-form .cat-img,
  body.body-regist-form .cat-title,
  body.body-regist-form .block--pro-link,
  body.body-regist-form .block__block--pro-link,
  body.body-regist-form .link-content,
  body.body-regist-form .footer_youtube_container_sp,
  body.body-regist-form .footer-youtube_container_sp,
  body.body-regist-form .requestformunder,
  body.body-regist-form section[class*="pro-link"],
  body.body-regist-form section[class*="cat"],
  body.body-regist-form section[class*="youtube"]{
    display:none !important;
    height:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
  }

  /* フッター余白 */
  body.body-regist-form footer{
    padding-bottom:90px !important;
  }

}
/* ========================================
   SP 文字サイズ最終調整
======================================== */
@media screen and (max-width:767px){

  /* 全体 */
  body.body-regist-form{
    font-size:14px !important;
    line-height:1.8 !important;
  }

  /* FV説明 */
  body.body-regist-form .member-copy,
  body.body-regist-form .member-text,
  body.body-regist-form .member-note{
    font-size:13px !important;
    line-height:1.9 !important;
  }

  /* 5つの理由 */
  body.body-regist-form .member-reason-box{
    font-size:12px !important;
    line-height:1.7 !important;
  }

  body.body-regist-form .member-reason-box h3{
    font-size:13px !important;
  }

  /* フォームラベル */
  body.body-regist-form #regist-form th,
  body.body-regist-form #regist-form td{
    font-size:13px !important;
    line-height:1.8 !important;
  }

  /* 入力欄 */
  body.body-regist-form #regist-form input,
  body.body-regist-form #regist-form select,
  body.body-regist-form #regist-form textarea{
    font-size:16px !important;
  }

  /* 注意書き */
  body.body-regist-form .privacy,
  body.body-regist-form .note,
  body.body-regist-form small{
    font-size:11px !important;
    line-height:1.8 !important;
  }

  /* CTA */
  body.body-regist-form .btn_submit,
  body.body-regist-form input[type="submit"]{
    font-size:16px !important;
  }

}

/* ========================================
担当者名 入力補助
======================================== */

/* 例）山田太郎 を消す */
body.body-regist-form #regist-form ._row-tanto_last_name ._example{
  display:none !important;
}

/* 姓 */
body.body-regist-form #regist-form input.__tanto_last_name{
  padding-left:16px !important;
}

body.body-regist-form #regist-form input.__tanto_last_name::placeholder{
  color:#999 !important;
}

/* 名 */
body.body-regist-form #regist-form input.__tanto_first_name{
  padding-left:16px !important;
}

body.body-regist-form #regist-form input.__tanto_first_name::placeholder{
  color:#999 !important;
}

body.body-regist-form #regist-form p.example{
display:none !important;
}
/* 会社名 placeholder */
body.body-regist-form #regist-form input[name="company_name"]::placeholder{
 color:#999 !important;
}

/* 会社名カナ placeholder */
body.body-regist-form #regist-form input[name="company_name_kana"]::placeholder{
 color:#999 !important;
}

/* 会社名 下の例文を消す */
body.body-regist-form #regist-form ._row-comp_name .example,
body.body-regist-form #regist-form ._row-comp_name_kana .example{
 display:none !important;
}

/* 規約エリア 上余白 */
body.body-regist-form section.__kiyaku{
  padding-top:40px !important;
}
/* =========================
SP 微調整
========================= */
@media screen and (max-width: 767px){

  /* フォーム上余白 */
  .jt-member-formlead{
    margin: 40px 0 20px;
  }

  .jt-memberlp #regist-form{
    margin-top: 10px;
  }

  /* 5つの理由 */
  .jt-member-reason-text{
    color:#555;
    line-height:1.7;
  }

  /* 入力欄 */
  #regist-form input,
  #regist-form select,
  #regist-form textarea{
    font-size:16px !important;
  }

  /* 確認ボタン */
  .submit input,
  .submit button{
    height:56px !important;
    font-size:18px !important;
    font-weight:700;
    letter-spacing:.08em;
  }

}
/* =========================
会員登録ページ：下部コンテンツ非表示
PC・SP共通
========================= */

body.body-regist-form .embedsocial-hashtag,
body.body-regist-form section.cat-img,
body.body-regist-form section.__block--pro-link,
body.body-regist-form section.requestfromunder{
  display:none !important;
}
/* PC：お問い合わせ・YouTube非表示 */
@media screen and (min-width: 768px){

  /* お問い合わせブロック */
  section.requestformunder{
    display: none !important;
  }

}

  /* 下部不要導線を非表示 */
  section.requestformunder,
  .requestformunder,
  .block.block--pro-link,
  .hotm,
  .cat-img{
    display: none !important;
  }

}
/* =========================
   SP最終調整
========================= */
@media screen and (max-width: 767px){

  /* 理由5つの余白調整 */
  body.body-regist-form .reason li{
    padding: 14px 10px;
  }

  /* フォーム見出し余白 */
  body.body-regist-form .heading-main{
    margin-bottom: 24px;
  }

  /* 入力欄を少し見やすく */
  body.body-regist-form input[type="text"],
  body.body-regist-form input[type="email"],
  body.body-regist-form input[type="tel"],
  body.body-regist-form input[type="password"],
  body.body-regist-form select{
    font-size: 16px !important;
  }

  /* CTAボタン */
  body.body-regist-form .submit input{
    height: 54px;
    font-size: 18px;
    font-weight: 700;
  }

  /* 下固定ボタンを少し薄く */
  .pc_catalog.pc_catalog_guest{
    opacity: .96;
  }

}
/* =========================
   SP最終調整まとめ
========================= */
@media screen and (max-width: 767px){

  /* FVテキスト余白 */
  body.body-regist-form .mv-copy{
    padding: 18px 16px;
  }

  /* FVタイトル */
  body.body-regist-form .mv-copy h2{
    font-size: 30px;
    line-height: 1.5;
  }

  /* 理由5つ */
  body.body-regist-form .reason li{
    padding: 14px 10px;
    min-height: 150px;
  }

  /* フォーム見出し */
  body.body-regist-form .heading-main{
    margin-bottom: 24px;
  }

  /* 入力欄 */
  body.body-regist-form input[type="text"],
  body.body-regist-form input[type="email"],
  body.body-regist-form input[type="tel"],
  body.body-regist-form input[type="password"],
  body.body-regist-form select{
    font-size: 16px !important;
  }

  /* CTAボタン */
  body.body-regist-form .submit input{
    height: 54px;
    font-size: 18px;
    font-weight: 700;
  }

  /* 下固定ボタン */
  .pc_catalog.pc_catalog_guest{
    opacity: .96;
  }

}
@media screen and (max-width: 767px){

/* 理由5つの余白調整 */
body.body-regist-form .reason li{
  padding: 14px 10px;
}

/* フォーム見出し余白 */
body.body-regist-form .heading-main{
  margin-bottom: 24px;
}

/* 入力欄を少し見やすく */
body.body-regist-form input[type="text"],
body.body-regist-form input[type="email"],
body.body-regist-form input[type="tel"],
body.body-regist-form input[type="password"],
body.body-regist-form select{
  font-size: 16px !important;
}

/* CTAボタン */
body.body-regist-form .submit input{
  height: 54px;
  font-size: 18px;
  font-weight: 700;
}

/* 下固定ボタンを少し薄く */
.pc_catalog.pc_catalog_guest{
  opacity: .96;
}

}
/* 会員登録フォーム エラー表示 */
body.body-regist .c-alert--danger,
body.body-regist .c-alert--error{
  background:#fff0f0 !important;
  border:1px solid #d85b5b !important;
  color:#8f1d1d !important;
  border-radius:8px;
  font-weight:700;
  padding:14px 16px !important;
}

/* 入力欄 */
body.body-regist input,
body.body-regist select,
body.body-regist textarea{
  border-radius:6px;
}

/* エラー時に赤枠 */
body.body-regist .is-error input,
body.body-regist .error input,
body.body-regist .has-error input{
  border:2px solid #d85b5b !important;
  background:#fff8f8 !important;
}
/* エラー全体 */
body.body-regist .c-alert--danger,
body.body-regist .c-alert--error{
  background:#fff1f1 !important;
  border:2px solid #d84c4c !important;
  color:#a11f1f !important;
  border-radius:10px;
  font-weight:700;
  padding:16px 18px !important;
  margin-bottom:24px !important;
}

/* 必須 */
body.body-regist .required{
  background:#d84c4c !important;
  color:#fff !important;
  border-radius:4px;
  padding:2px 6px;
  font-size:11px;
  font-weight:700;
}

/* 入力欄 */
body.body-regist input,
body.body-regist select,
body.body-regist textarea{
  border:1px solid #ddd;
  transition:.2s;
}

/* フォーカス */
body.body-regist input:focus,
body.body-regist select:focus,
body.body-regist textarea:focus{
  border-color:#caa14a;
  box-shadow:0 0 0 3px rgba(202,161,74,.15);
}

/* エラー入力 */
body.body-regist .error input,
body.body-regist .error select,
body.body-regist .error textarea,
body.body-regist .has-error input,
body.body-regist .has-error select,
body.body-regist .has-error textarea{
  border:2px solid #d84c4c !important;
  background:#fff8f8 !important;
}
/* 入力エラー箇所を目立たせる */
body.body-regist input:invalid,
body.body-regist select:invalid,
body.body-regist textarea:invalid{
  border:2px solid #d84c4c !important;
  background:#fff8f8 !important;
}

/* エラー時の入力欄フォーカス */
body.body-regist input:invalid:focus,
body.body-regist select:invalid:focus,
body.body-regist textarea:invalid:focus{
  box-shadow:0 0 0 3px rgba(216,76,76,.18) !important;
}

/* エラー説明 */
body.body-regist .c-alert--danger::before,
body.body-regist .c-alert--error::before{
  content:"未入力・入力形式に誤りがある項目を赤枠で表示しています。";
  display:block;
  margin-bottom:6px;
  font-size:13px;
}
/* エラー箇所 */
body.body-regist .jt-error-field{
  border:2px solid #d84c4c !important;
  background:#fff8f8 !important;
}

body.body-regist .jt-error-row label,
body.body-regist .jt-error-row th{
  color:#b32626 !important;
  font-weight:700;
}

body.body-regist .jt-error-help{
  margin-top:6px;
  font-size:13px;
  color:#a11f1f;
}
.jt-error-field{
  border: 2px solid #e54848 !important;
  background: #fff8f8 !important;
}

/* 会員登録フォーム：メール再入力欄を通常表示に戻す */
body.body-regist-form #regist-form input[name="email_again"],
body.body-regist-form #regist-form input[name="custom6"] {
  width: 100% !important;
  height: 40px !important;
  line-height: 40px !important;
  font-size: 16px !important;
  padding: 8px 10px !important;
  box-sizing: border-box !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  margin: 0 !important;
}

/* 主な取扱い商品：ずれ修正 */
body.body-regist-form #regist-form .__row-custom6,
body.body-regist-form #regist-form .tr-custom6 {
  margin-bottom: 12px !important;
  padding-bottom: 0 !important;
  position: static !important;
}

body.body-regist-form #regist-form .__row-custom6-dummy,
body.body-regist-form #regist-form .tr-custom6-dummy {
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: none !important;
}

/* メールアドレス再入力欄を少し上へ */
body.body-regist-form #regist-form .__row-email_again {
  margin-top: -12px !important;
}

/* フォームの例文を大きく */
body.body-regist-form input::placeholder,
body.body-regist-form textarea::placeholder{
  font-size:14px !important;
  color:#999 !important;
  opacity:1 !important;
}
/* メール再入力欄の行を上に詰める */
body.body-regist-form #regist-form .__row-email_again{
    margin-top:-20px !important;
}
