.contact-chip { line-height:1; padding:4px 8px; margin-left:8px; font-size:70%; border-radius:4px; }
.any { color:#333; background-color:#ddd; }
.required { color:#fff; background-color:#e83e8c; }

.p-about-overview__dt-last::after,.p-about-overview__dd-last::after { content:none !important; }

form input[type=url], form input[type=tel],form input[type=number], form input[type=date], form input[type=email], form input[type=password], form input[type=text], form select, form textarea, form select {
    accent-color: #6b5400; border: 1px solid var(--text-color-third); background-color: #fff;
    box-shadow: 0 1px 0 1px rgb(0 0 0 / 4%); border-radius: 4px;
    padding: 8px; font-size: 100%; width: 100%;
    -webkit-appearance: none; appearance: none; }
form input[type=number] { width:160px; }
.submit-button { text-align:center; }
input[type=submit] { display: inline-block;
    font-size: 100%; width:64%; background-color: #6b5400;
    font-weight: 700; color:#fff; border:2px solid #fff; margin-top:24px;
    font-family: shippori-mincho, sans-serif;
    padding: 20px 16px; transition: scale var(--base-duration) var(--base-easing); }

.confirm-message { display:block; margin-top:8px; font-size:90%; }
.wpcf7-not-valid-tip { color:red; font-weight:900; }
.wpcf7-response-output { margin-top:16px; text-align:center; color:red; font-weight:900; }
@media (any-hover: hover) {
	input[type=submit]:hover { scale: 1.02; }}


/*   ラジオボタンのカスタマイズ
-------------------------------------------*/
.wpcf7-form-control-wrap.your-contact { margin: 20px 0; display: flex; justify-content: center; }
.wpcf7-form-control.wpcf7-radio { display: flex; flex-wrap: wrap; align-items: center; }
.wpcf7-list-item { margin: 0 16px 0 0; }
/* ラベル要素全体をクリック可能エリアに（ユーザー選択やカーソル変更） */
.wpcf7-list-item label {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
  position: relative;
}

/* カスタムラジオボタン用：ブラウザ標準の表示を解除してスタイル適用 */
.wpcf7-list-item input[type="radio"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px; border: 2px solid #6b5400;
  border-radius: 50%; outline: none; margin: 0;
  margin-right: 8px;
  transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out; position: relative; }

.wpcf7-list-item input[type="radio"]:checked { border-color: #6b5400;
	background-color: #6b5400; }
.wpcf7-list-item input[type="radio"]:checked::after {
  content: ""; position: absolute; top: 50%; left: 50%; width: 8px;
  height: 8px; background-color: #fff; border-radius: 50%; transform: translate(-50%, -50%); }
.wpcf7-list-item input[type="radio"]:focus { box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25); }
.wpcf7-list-item label:hover input[type="radio"] { border-color: #6b5400; }
.wpcf7-list-item-label { color: var(--text-color-primary); }


/* チェックボックスのカスタマイズ */
.wpcf7-form-control-wrap.your-contact-checkbox { 
  margin: 20px 0; 
  display: flex; 
  justify-content: center; 
}
.wpcf7-form-control.wpcf7-checkbox { 
  display: flex; 
  flex-wrap: wrap; 
  align-items: center; 
}
.wpcf7-list-item { 
  margin: 0 24px 0 0; 
}
/* ラベル全体をクリック可能エリアに */
.wpcf7-list-item label {
  display: inline-flex;
  align-items: center;
  cursor: pointer;
  user-select: none;
  position: relative;
}

/* カスタムチェックボックス用：ブラウザ標準の表示を解除してスタイル適用 */
.wpcf7-list-item input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #6b5400;
  border-radius: 4px; /* 少し角を丸める。角張ったデザインにしたい場合は0に */
  outline: none;
  margin: 0;
  margin-right: 4px;
  transition: border-color 0.2s ease-in-out, background-color 0.2s ease-in-out;
  position: relative;
}

/* チェックされた状態のスタイル */
.wpcf7-list-item input[type="checkbox"]:checked {
  border-color: #6b5400;
  background-color: #6b5400;
}

/* 擬似要素でチェックマークを表示 */
.wpcf7-list-item input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: translate(-50%, -60%) rotate(45deg);
}

/* フォーカス時のスタイル */
.wpcf7-list-item input[type="checkbox"]:focus {
  box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.25);
}

/* ラベルにマウスオーバーした際のスタイル */
.wpcf7-list-item label:hover input[type="checkbox"] {
  border-color: #6b5400;
}

/* ラベルテキストのスタイル */
.wpcf7-list-item-label { color: var(--text-color-primary); }


@media (max-width: 766.9px) {
	.tel-list { gap:0; }
	.tel-list li { width:100%; padding:16px 4px;  }
	.tel-list li:nth-child(n+3) { margin-top:inherit; }
	.tel-list li:nth-child(n+2) { margin-top:16px; }

	.contact-table th,.contact-table td { display:block; width:100%; padding-inline:0; }
	.contact-table th { padding-bottom:4px; }
	.contact-table td { padding-top:4px; }
	.wpcf7-form-control.wpcf7-radio { align-items: flex-start; }
	.wpcf7-list-item { margin-right: 0; margin-bottom:12px; width:100%; }
	.wpcf7-list-item-label { font-size:120%; }
	input[type=submit] { width:100%; }

	
}
