.lp-contact {
        padding: 8rem 15vw 5rem;
	    text-align: center;
}

.lp-contact h2 {
	margin-bottom: 1.6rem;
}
.lp-contact p {
	margin-bottom: 4rem;
}

.service-logo-box img {
	max-width: 220px;
}

/*入力フォーム*/
/* フォーム全体 */
.lp-form {
    max-width: 600px; 
    margin: 0 auto;
    margin-top: 3rem;
    background-color: #f5f4f4;
    padding: 32px 40px; /* 左右の余白も少し広げる */
    box-sizing: border-box;
}

/* 各フォームグループ（ラベル＋入力） */
.form-group {
    margin-bottom: 25px;
}

/* 名前個別の入力 */
.form-name__item input {
    width: 100%; /* 親の幅いっぱいに広げる */
    padding: 10px;
    font-size: 16px;
    box-sizing: border-box;
}

/* その他の入力欄 */
input[type="text"],
input[type="email"],
input[type="tel"] {
    width: 100%;
    padding: 10px;
    font-size: 16px;
    box-sizing: border-box;
}
.form-group input[type="text"] {
  width: 100%; /* 入力欄を親幅いっぱいに */
  padding: 8px 12px;
  font-size: 16px;
  box-sizing: border-box; /* パディング込みで100% */
}
/* ラベル自体のスタイル */
.form-group label {
    position: relative; /* 擬似要素の基準 */
    display: inline-block;
    font-weight: bold;
    margin-bottom: 5px;
}

/* 「必須」を非表示にして、右上に赤い*を表示 */
.form-group label .required {
    display: none;
}

.form-group label::after {
    content: "*";
    color: red;
    position: absolute;
    top: -5px;   /* 微調整可能 */
    right: -5px; /* 微調整可能 */
    font-size: 14px;
}
/* 送信ボタン */
.form-submit button {
    width: 100%;
    padding: 12px;
    font-size: 16px;
}
.privacy-label {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-bottom: 10px; /* ボタンとの間隔 */
    font-size: 14px;
	justify-content: center;
}

.privacy-label .required {
    color: red;
    font-size: 12px;
    position: relative;
    top: -0.2em; /* 「*」を右上に見せる */
}
.privacy-wrap {
  display: flex;
  align-items: center;
  gap: 8px; 
  justify-content: center;
}

.privacy-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  font-size: 14px;
}

.privacy-label a {
  text-decoration: underline;
  color: inherit;
}

.privacy-label .required {
  color: red;
}
.form-submit input[type="submit"] {
  background-color: #FF8000;
  color: #fff; 
  font-size: 16px;
  font-weight: bold;
  padding: 12px 24px;
  border: none;
  border-radius: 6px;
  cursor: pointer;
    margin-top: 16px;	
  transition: background-color 0.3s;
}

.form-submit input[type="submit"]:hover {
  background-color: #2f2f2f; 
	color: #fff; 
}

@media screen and (max-width: 768px) {
	.form-group .mwform-tel-field input[type="text"] {
		width: 29%;
	}
	.lp-contact {
		padding-right: 3vw;
		padding-left: 3vw;
	}
	.lp-form {
		    padding: 32px 8px;
	}
}

/*=====lp-contac-thanks=========================*/
.lp-thanks {
	padding: 180px 0;
}
.lp-thanks h2 {
	line-height: 1.5;
}
/* スマホでも完了メッセージを表示 */
@media (max-width: 768px) {
  #mw_wp_form_mw-wp-form-170.mw_wp_form_complete .lp-thanks {
    display: block !important;
  }
}
