@layer property {
  /**
 */
  .price-value {
    line-height: 1;
  }

  .price-value .price-unit {
    font-size: 0.625em;
    line-height: 1;
  }

  .price-management-fee {
    font-size: 0.875rem;
  }

  .results-list {
    display: flex;
    flex-direction: column;
    gap: 2rem;
  }

  /*******************************************************************************
    property-search-form
  *******************************************************************************/

  .property-search-form {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    min-width: 320px;
    border: 1px solid #ccc;
    background: white;
  }
  .property-search-form *,
  .property-search-form *::before,
  .property-search-form *::after {
    transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out, opacity 0.3s ease-in-out;
  }

  .property-search-form-header {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
    padding: 0.5rem 1rem;
    background: #f0f0f0;
  }

  .property-search-form-title {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
  }

  .property-search-form-body {
    padding: 0.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .property-search-form-submit {
    position: sticky;
    bottom: 0;
    background: white;
    padding: 0.5rem;
    border-top: 1px solid #ccc;
  }

  /* 検索フォーム全体のコンテナ */
  .property-search-form {
    background-color: #ffffff;
    border: 1px solid #d3d3d3;
    border-radius: 0;
    width: 292px;
    box-shadow: none;
  }

  /* 検索フォームヘッダーのスタイル調整 */
  .property-search-form-header {
    background-color: #f7f7f7;
    height: 53px;
    display: flex;
    align-items: center;
    padding: 0 16px;
    position: relative;
    margin-bottom: 0;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #d3d3d3;
  }

  /* タイトルのスタイル - Figmaデザインに合わせて調整 */
  .property-search-form-title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.5em;
    color: #000000;
    margin: 0;
    padding: 0 16px;
    display: flex;
    align-items: center;
    height: 100%;
    gap: 8px;
  }

  /* 赤いアイコンの追加 */
  .property-search-form-title::before {
    content: "\f002"; /* Font Awesome の検索アイコン */
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 16px;
    color: #e32828;
    width: 16.39px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
  }

  /* フォーム内容エリア */
  .property-search-form-content {
    padding: 15px 20px;
    background-color: #ffffff;
  }

  /* セクション間の間隔 */
  .property-search-form-section {
    margin-bottom: 20px;
  }

  .property-search-form-section:last-child {
    margin-bottom: 0;
  }

  /* セクションタイトル */
  .property-search-form-section-title {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.5em;
    color: #000000;
    margin: 0 0 8px 0;
    padding: 4px 0;
    border-bottom: 1px solid #d3d3d3;
    border-top: 1px solid #d3d3d3;
    border-left: none;
    border-right: none;
  }

  /* 新着物件セクションのボタングループ */
  .new-property-buttons {
    display: flex;
    align-items: center;
    padding: 0 6px 0 0;
    box-shadow: 0px 0.956px 0px 0px rgba(211, 211, 211, 1);
  }

  .new-property-button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10.5px 0;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 11px;
    line-height: 0.973em;
    color: #000000;
    background-color: #ffffff;
    border: 0.892px solid #d3d3d3;
    cursor: pointer;
    transition: background-color 0.2s;
    text-align: center;
  }

  .new-property-button:first-child {
    background-color: #f9f3ec;
    border-radius: 4.78px 0 0 4.78px;
    width: 62px;
    height: 38px;
  }

  .new-property-button:not(:first-child) {
    border-left: none;
    width: 64px;
    height: 38px;
  }

  .new-property-button:last-child {
    border-radius: 0 4.78px 4.78px 0;
    width: 62px;
  }

  .new-property-button:hover {
    background-color: #f5f5f5;
  }

  /* 新着物件セクションのタイトル調整 */
  .property-search-form-body .field-group .field-group-label,
  .property-search-form-body .field-group .field-label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.5em;
    color: #000000;
    margin-bottom: 8px;
    padding: 4px 0;
  }

  /* 新着物件ボタングループの調整（より強力なセレクター） */
  .property-search-form .property-search-form-body .field-group .segmented-control,
  .property-search-form .property-search-form-body .field-group .new-property-buttons {
    display: flex !important;
    align-items: center !important;
    padding: 0 !important;
    box-shadow: 0px 0.956px 0px 0px rgba(211, 211, 211, 1) !important;
    margin-top: 8px !important;
    gap: 0 !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  .property-search-form .property-search-form-body .field-group .segmented-control li,
  .property-search-form .property-search-form-body .field-group .new-property-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10.5px 0 !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 11px !important;
    line-height: 0.973em !important;
    color: #000000 !important;
    background-color: #ffffff !important;
    border: 0.892px solid #d3d3d3 !important;
    cursor: pointer !important;
    transition: background-color 0.2s !important;
    text-align: center !important;
    margin: 0 !important;
    list-style: none !important;
  }

  .property-search-form .property-search-form-body .field-group .segmented-control li:first-child,
  .property-search-form .property-search-form-body .field-group .new-property-button:first-child {
    background-color: #ffffff !important;
    border-radius: 4.78px 0 0 4.78px !important;
    flex: 1 !important;
    height: 38px !important;
  }

  .property-search-form .property-search-form-body .field-group .segmented-control li:not(:first-child),
  .property-search-form .property-search-form-body .field-group .new-property-button:not(:first-child) {
    border-left: none !important;
    flex: 1 !important;
    height: 38px !important;
  }

  .property-search-form .property-search-form-body .field-group .segmented-control li:last-child,
  .property-search-form .property-search-form-body .field-group .new-property-button:last-child {
    border-radius: 0 4.78px 4.78px 0 !important;
    flex: 1 !important;
  }

  .property-search-form .property-search-form-body .field-group .segmented-control li:hover,
  .property-search-form .property-search-form-body .field-group .new-property-button:hover {
    background-color: #f5f5f5 !important;
  }

  /* ラジオボタンとラベルの調整 */
  .property-search-form .property-search-form-body .field-group .segmented-control li input[type="radio"] {
    position: absolute !important;
    opacity: 0 !important;
    pointer-events: auto !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 1 !important;
  }

  .property-search-form .property-search-form-body .field-group .segmented-control li label {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    padding: 10.5px 0 !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 11px !important;
    line-height: 0.973em !important;
    color: #000000 !important;
    background-color: transparent !important;
    border: none !important;
    cursor: pointer !important;
    text-align: center !important;
    margin: 0 !important;
    position: relative !important;
    z-index: 0 !important;
  }

  /* リストアイテム全体の背景を制御 */
  .property-search-form .property-search-form-body .field-group .segmented-control li {
    background-color: #ffffff !important;
    transition: background-color 0.2s !important;
    position: relative !important;
  }

  /* ラジオボタンの選択状態制御 */
  .property-search-form .property-search-form-body .field-group .segmented-control li:has(input[type="radio"]:checked) {
    background-color: #f9f3ec !important;
  }

  .property-search-form .property-search-form-body .field-group .segmented-control li input[type="radio"]:checked + label {
    background-color: #f9f3ec !important;
    color: #000000 !important;
  }

  /* 入力フィールドのスタイル */
  .property-search-input {
    width: 114px;
    height: 31px;
    background-color: #ffffff;
    border: 1px solid #d3d3d3;
    border-radius: 3px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1em;
    color: #000000;
    text-align: center;
    padding: 9px 6px;
  }

  /* ドロップダウン矢印 */
  .property-search-dropdown-arrow {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 5px;
    height: 5px;
    background-color: #000000;
    clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  }

  /* チェックボックスラベル */
  .property-search-checkbox-label {
    display: flex;
    align-items: center;
    gap: 3px;
    margin-bottom: 10px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 1em;
    color: #000000;
  }

  .property-search-checkbox {
    width: 20px;
    height: 20px;
    border: 1px solid #d3d3d3;
    border-radius: 3px;
    background-color: #ffffff;
    cursor: pointer;
  }

  /* ラジオボタンラベル */
  .property-search-radio-label {
    display: flex;
    align-items: center;
    gap: 5px;
    padding: 3px 4px;
    margin-bottom: 5px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 1em;
    color: #000000;
  }

  .property-search-radio {
    width: 14px;
    height: 14px;
    border: 1px solid #d3d3d3;
    border-radius: 50%;
    background-color: #d9d9d9;
    cursor: pointer;
  }

  /* 築年数セクションのラジオボタン調整 */
  .property-search-form-body .field-group .radio-group {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    margin-bottom: 10px !important;
  }

  .property-search-form-body .field-group .radio-group .radio-item,
  .property-search-form-body .field-group .radio-group .form-check {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 3px 4px !important;
    width: 84px !important;
    height: auto !important;
    min-height: 20px !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 1em !important;
    color: #000000 !important;
    margin: 0 !important;
  }

  .property-search-form-body .field-group .radio-group input[type="radio"] {
    width: 14px !important;
    height: 14px !important;
    border: 1px solid #d3d3d3 !important;
    border-radius: 50% !important;
    background-color: #d9d9d9 !important;
    cursor: pointer !important;
    margin: 0 !important;
  }

  /* 建築中を除くチェックボックス */
  .property-search-form-body .field-group .exclude-option {
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    width: 126px !important;
    height: 20px !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 1em !important;
    color: #000000 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .property-search-form-body .field-group .exclude-option input[type="checkbox"] {
    width: 20px !important;
    height: 20px !important;
    border: 1px solid #d3d3d3 !important;
    border-radius: 3px !important;
    background-color: #ffffff !important;
    cursor: pointer !important;
    margin: 0 !important;
  }

  /* キーワード検索入力 */
  .property-search-keyword-input {
    position: relative;
    width: 252px;
    height: 29px;
    background-color: #ffffff;
    border: 1px solid #d3d3d3;
    border-radius: 3px;
    padding: 6px 31px 6px 31px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.2em;
    color: #000000;
  }

  .property-search-keyword-input::placeholder {
    color: #757575;
  }

  .property-search-keyword-icon {
    position: absolute;
    left: 9.65px;
    top: 50%;
    transform: translateY(-50%);
    color: #e32828;
    font-family: "Font Awesome 6 Pro", "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 13px;
    z-index: 1;
  }

  /* キーワード検索の説明文 */
  .property-search-keyword-help {
    margin-top: 12px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 11px;
    line-height: 1.455em;
    color: #000000;
  }

  /* キーワード検索入力の詳細調整 */
  .property-search-form-body .field-group .keyword-input {
    position: relative !important;
    width: 100% !important;
    max-width: 252px !important;
  }

  .property-search-form-body .field-group .keyword-input input[type="text"],
  .property-search-form-body .field-group .keyword-input input[type="search"] {
    width: 100% !important;
    height: 29px !important;
    padding: 6px 31px 6px 31px !important;
    border: 1px solid #d3d3d3 !important;
    border-radius: 3px !important;
    background-color: #ffffff !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    line-height: 1.2em !important;
    color: #000000 !important;
    box-sizing: border-box !important;
  }

  .property-search-form-body .field-group .keyword-input input[type="text"]::placeholder,
  .property-search-form-body .field-group .keyword-input input[type="search"]::placeholder {
    color: #757575 !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
  }

  /* キーワード検索アイコン */
  .property-search-form-body .field-group .keyword-input::before {
    content: "\f002" !important;
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "FontAwesome" !important;
    font-weight: 900 !important;
    position: absolute !important;
    left: 9.65px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    color: #e32828 !important;
    font-size: 13px !important;
    z-index: 1 !important;
    pointer-events: none !important;
  }

  /* Font Awesomeが読み込まれていない場合の代替 */
  @supports not (font-family: "Font Awesome 6 Free") {
    .property-search-form-body .field-group .keyword-input::before {
      content: "🔍" !important;
      font-family: inherit !important;
      font-weight: normal !important;
    }
  }

  /* キーワード入力フィールド専用のスタイル */
  .property-search-form-body .field-group .field input[name="fw:kw"],
  .property-search-form-body .field-group .field input[id="keyword"] {
    width: 100% !important;
    height: 29px !important;
    padding: 6px 31px 6px 31px !important;
    border: 1px solid #d3d3d3 !important;
    border-radius: 3px !important;
    background-color: #ffffff !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    line-height: 1.2em !important;
    color: #000000 !important;
    box-sizing: border-box !important;
    position: relative !important;
  }

  .property-search-form-body .field-group .field input[name="fw:kw"]::placeholder,
  .property-search-form-body .field-group .field input[id="keyword"]::placeholder {
    color: #757575 !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
  }

  .property-search-form-body .field-group .field input[type="text"],
  .property-search-form-body .field-group .field input[type="search"] {
    width: 100% !important;
    height: 29px !important;
    padding: 6px 31px 6px 31px !important;
    border: 1px solid #d3d3d3 !important;
    border-radius: 3px !important;
    background-color: #ffffff !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    line-height: 1.2em !important;
    color: #000000 !important;
    box-sizing: border-box !important;
  }

  .property-search-form-body .field-group .field input[type="text"]::placeholder,
  .property-search-form-body .field-group .field input[type="search"]::placeholder {
    color: #757575 !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
  }

  /* キーワード入力フィールド専用のアイコン（親要素に配置） */
  .property-search-form-body .field-group .field {
    position: relative !important;
  }

  /* キーワード入力フィールド専用のアイコン表示 */
  .keyword-input::before {
    content: "\f002" !important;
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "FontAwesome" !important;
    font-weight: 900 !important;
    position: absolute !important;
    left: 9.65px !important;
    top: 76% !important;
    transform: translateY(-50%) translateY(1px) !important; /* 微調整 */
    color: #e32828 !important;
    font-size: 13px !important;
    z-index: 1 !important;
    pointer-events: none !important;
    display: none !important; /* デフォルトで非表示 */
  }

  /* キーワード入力フィールドの親要素のみアイコンを表示 */
  .keyword-input:has(input[name="fw:kw"])::before,
  .keyword-input:has(input[id="keyword"])::before {
    display: block !important;
  }

  /* Font Awesomeが読み込まれていない場合の代替 */
  @supports not (font-family: "Font Awesome 6 Free") {
    .property-search-form-body .field-group .field::before {
      content: "🔍" !important;
      font-family: inherit !important;
      font-weight: normal !important;
    }
  }

  /* ボタンエリア */
  .property-search-form-submit {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
    background-color: #e4dacf;
    margin-top: 20px;
  }

  /* 検索ボタン */
  .property-search-form-submit .button {
    width: 100%;
    height: 38px;
    background-color: var(--main-color, #eb6100);
    border: none;
    border-radius: 52px;
    box-shadow: 0px 2px 0px 0px var(--main-color, #eb6100);
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1em;
    color: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    padding: 0;
    gap: 8px;
  }

  .property-search-form-submit .button::after {
    content: "\f054";
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro";
    font-weight: 900;
    font-size: 14px;
    line-height: 1em;
  }

  /* ボタン内のテキスト要素 */
  .property-search-form-submit .button .label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1em;
    color: #ffffff;
  }

  .property-search-form-submit .button .count {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1em;
    color: #ffffff;
  }

  .property-search-form-submit .button .count-label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1em;
    color: #ffffff;
  }

  /* 賃料・費用セクションのスタイル */
  .property-search-form-body {
    padding: 15px 20px;
  }

  /* セクションタイトル（賃料など） */
  .property-search-form-body .form-group > label,
  .property-search-form-body .form-group > .form-label,
  .property-search-form-body .field-group-label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 1.5em;
    color: #000000;
    margin: 0 0 8px 0;
    padding: 4px 0;
    border: none;
    display: block;
  }

  /* 賃料入力エリア */
  .property-search-form-body .form-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 15px;
  }

  /* 賃料入力フィールド */
  .property-search-form-body select,
  .property-search-form-body input[type="number"] {
    width: 114px;
    height: 31px;
    background-color: #ffffff;
    border: 1px solid #d3d3d3;
    border-radius: 3px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1em;
    color: #000000;
    text-align: center;
    padding: 0px 0px;
    position: relative;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* 〜記号 */
  .property-search-form-body .range-separator {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 1em;
    color: #000000;
    margin: 0 4px;
  }

  /* チェックボックスエリア - 強力なセレクタで上書き */
  .property-search-form .property-search-form-body .checkbox-group,
  .property-search-form .property-search-form-body .form-check-group {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 5px !important;
    margin-top: 10px !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    flex-wrap: unset !important;
  }

  /* チェックボックスラベル - 強力なセレクタで上書き */
  .property-search-form .property-search-form-body .checkbox-item,
  .property-search-form .property-search-form-body .form-check {
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    width: 126px !important;
    height: 20px !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 1em !important;
    color: #000000 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* チェックボックスラベル内のテキスト - より強力なセレクタ */
  .property-search-form .property-search-form-body .checkbox-item label,
  .property-search-form .property-search-form-body .form-check label,
  .property-search-form .property-search-form-body .checkbox-item span,
  .property-search-form .property-search-form-body .form-check span {
    font-size: 12px !important;
    line-height: 1em !important;
    margin: 0 !important;
    padding: 0 !important;
    font-weight: 400 !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    text-align: left !important;
  }

  /* liタグのスタイルを上書き */
  .property-search-form .property-search-form-body .checkbox-group > li {
    list-style: none !important;
    user-select: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 3px !important;
    width: 100% !important;
    height: 20px !important;
    font-size: 12px !important;
    line-height: 1em !important;
    white-space: normal !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
  }

  /* checkbox-groupのスタイルを上書き */
  .property-search-form .property-search-form-body .checkbox-group {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 5px !important;
    margin-top: 0px !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    font-size: 12px !important;
    --border-color: transparent !important;
    --border-radius: 0.25em !important;
    --px: 0.5em !important;
    --py: 0.5em !important;
    --size: 1em !important;
    --check-size: 1em !important;
    --check-color: var(--main-color) !important;
  }

  /* チェックボックス */
  .property-search-form-body input[type="checkbox"] {
    width: 20px;
    height: 20px;
    border: 1px solid #d3d3d3;
    border-radius: 3px;
    background-color: #ffffff;
    cursor: pointer;
    margin: 0;
  }

  /* フィールドグループヘッダーの調整 */
  .property-search-form-body .field-group-header {
    border-left: none !important;
    padding-left: 0 !important;
    height: 25px;
  }

  /* フィールドグループラベルの調整 */
  .property-search-form-body .field-group-label {
    font-size: 16px;
    font-weight: 700;
    border-left: none;
    padding-left: 0;
    display: block;
    align-items: normal;
    gap: 0;
  }

  /* 紫の丸を削除 */
  .property-search-form-body .field-label::before,
  .property-search-form-body .field-label::after,
  .property-search-form-body .field-group-label::before,
  .property-search-form-body .field-group-label::after {
    display: none;
    content: none;
  }

  /* field-groupの下部ボーダー */
  .property-search-form-body .field-group {
    border-bottom: 1px solid #d3d3d3;
    padding-bottom: 15px;
    margin-bottom: 15px;
  }

  .property-search-form-body .field-group:last-child {
    border-bottom: none;
    margin-bottom: 0;
  }

  /* 坪単価セクション */
  .property-search-form-body .price-unit-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
  }

  .property-search-form-body .price-unit-label {
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 13px;
    line-height: 1.846em;
    color: #000000;
  }

  .property-search-form-body .unit-toggle {
    display: flex;
    align-items: center;
    gap: 4px;
    font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    font-size: 12px;
    line-height: 2em;
    color: #000000;
  }

  /* 広さセクションの調整 */
  .property-search-form-body .field-group .field-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 4px !important;
    margin-bottom: 4px !important;
  }

  .property-search-form-body .field-group .field-label {
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 13px !important;
    line-height: 1.846em !important;
    color: #000000 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* ㎡で指定の部分を横並びに */
  .property-search-form-body .field-group .field-header .unit-toggle,
  .property-search-form-body .field-group .field-header .unit-switch {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-family: "Noto Sans JP", sans-serif !important;
    font-weight: 400 !important;
    font-size: 12px !important;
    line-height: 2em !important;
    color: #000000 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* アイコンを文字の左に配置 */
  .property-search-form-body .field-group .field-header .unit-toggle::before,
  .property-search-form-body .field-group .field-header .unit-switch::before {
    content: "📐" !important;
    font-size: 12px !important;
    margin-right: 4px !important;
    display: inline-block !important;
  }

  .property-search-form-body .radio-group > li label {
    font-size: 12px;
  }

  .property-search-form-body .radio-group > li {
    width: 30%;
  }

  /* スマホでは幅指定を削除 */
  @media (max-width: 768px) {
    .property-search-form-body .radio-group > li {
      width: auto !important;
    }

    .property-search-form {
      width: 100%;
    }
    .property-search-form-header {
      height: 48px; /* モバイルでの高さ調整 */
    }
    .property-search-form-title {
      font-size: 16px;
    }
  }

  /*******************************************************************************
 * labeled-value
 *******************************************************************************/

  .labeled-value {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.875rem;
  }

  .labeled-value > .value {
    font-size: 0.75rem;
    margin-right: 0.5rem;
  }

  .labeled-value > .label {
    display: inline-block;
    background: #f0f0f0;
    aspect-ratio: 1 / 1;
    text-align: center;
    padding: 0.125rem 0.125rem;
    border-radius: 0.125rem;
    line-height: 1;
  }

  /*******************************************************************************
    matched
   *******************************************************************************/

  .matched,
  .matched::before,
  .matched::after,
  .matched *,
  .matched *::before,
  .matched *::after {
    box-sizing: border-box;
    transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out, border-color 0.3s ease-in-out, opacity 0.3s ease-in-out;
  }

  .matched {
    display: grid;
    grid-template-columns: 180px 1fr;
    grid-template-rows: max-content 1fr max-content;
    grid-template-areas:
      "image header"
      "image body"
      "singles singles";
    column-gap: 1rem;
    row-gap: 0.5rem;
  }

  @media (max-width: 1024px) {
    .matched {
      grid-template-columns: 80px 1fr;
      grid-template-areas:
        "image header"
        "body body"
        "singles singles";
    }
  }

  .matched-header {
    grid-area: header;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.25rem;
  }

  .matched-header-div {
    display: inline-flex;
    justify-content: center;
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    line-height: 1;
    border: 1px solid #d3d3d3;
    border-radius: 0.25rem;
  }

  @media (max-width: 768px) {
    .matched-header-div {
      font-size: 0.75rem;
    }
  }

  .matched-header-title {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.2;
  }

  @media (max-width: 768px) {
    .matched-header-title {
      font-size: 1rem;
    }
  }

  .matched-image {
    grid-area: image;
    aspect-ratio: 1 / 1;
  }

  .matched-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
  }

  .matched-body {
    grid-area: body;
  }

  /* 賃料表示 */
  .matched-header-price {
    font-size: 1.25rem;
    font-weight: bold;
    line-height: 1.2em;
    color: #e32828;
  }

  .matched-header-price .price-unit {
    font-size: 0.75em;
  }

  /*******************************************************************************
    building-info
  *******************************************************************************/

  .building-info {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 1rem;
  }

  @media (max-width: 768px) {
    .building-info {
      font-size: 0.875rem;
    }
  }

  .building-info::before {
    content: "";
    width: 1em;
    height: 1em;
    display: inline-block;
    align-items: center;
  }

  .building-info.address .building-info {
    color: #2880b8;
    text-decoration: underline;
  }

  .building-info.address::before {
    content: "\f3c5";
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "FontAwesome";
    font-weight: bold;
    font-size: 1rem;
    line-height: 1em;
  }

  .building-info.traffic::before {
    content: "\f238";
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "FontAwesome";
    font-weight: bold;
    font-size: 1rem;
    line-height: 1em;
  }

  .building-info.floors::before {
    content: "\f1ad";
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "FontAwesome";
    font-weight: bold;
    font-size: 1rem;
    line-height: 1em;
  }

  .buliding-info.build-age::before {
    content: "\f1ad";
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Pro", "FontAwesome";
    font-weight: bold;
    font-size: 1rem;
    line-height: 1em;
  }

  /*******************************************************************************
    matched matched-singles
  *******************************************************************************/

  .matched-singles {
    grid-area: singles;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .matched-single-separator {
    height: 1px;
    background-color: #d3d3d3;
    margin: 0.5rem 0;
  }

  .matched-single {
    display: grid;
    grid-template-columns: 80px 1fr;
    grid-template-areas: "image body";
    column-gap: 1rem;
    padding: 0.5rem;
    text-decoration: none;
    color: inherit;
    position: relative;
  }

  .matched-single:hover {
    background: rgb(from var(--main-color) r g b / 0.1);
  }

  .matched-single::after {
    content: "";
    width: 1rem;
    height: 1rem;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 18l6-6-6-6'/%3E%3C/svg%3E")
      no-repeat center center / contain;
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.25rem;
    line-height: 1;
    color: var(--main-color);
  }

  .matched-single-image {
    grid-area: image;
    width: 80px;
    height: 80px;
    overflow: hidden;
    flex-shrink: 0;
  }

  .matched-single-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .matched-single-body {
    grid-area: body;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    justify-content: center;
  }

  .matched-single-body-price {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }

  .matched-single-body-price-value {
    display: flex;
    flex-wrap: wrap;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 1.2em;
    color: #e32828;
  }

  .matched-single-body-price .price-management-fee {
    font-size: 0.875rem;
    line-height: 1.5em;
  }

  .matched-single-body-price-fees {
    display: flex;
    gap: 0.3rem 1rem;
  }

  .matched-single-body-price-fees .price-unit {
    font-size: 0.875em;
  }

  .matched-single-body-property-info {
    display: flex;
    gap: 0.3rem 1rem;
    flex-wrap: wrap;
  }

  .matched-single-body-property-info .property-info {
    display: flex;
    align-items: center;
    gap: 0.25rem;
  }

  .matched-single-body-property-info .property-info-label {
    font-size: 0.75rem;
    line-height: 1.2em;
    color: #666666;
  }

  .matched-single-body-property-info .property-info-value {
    font-size: 0.875rem;
    line-height: 1.2em;
  }
}
