body {
  background: var(--color-pale-grey);
}

.list-title-wrapper-sp {
  padding: var(--space-S) var(--space-S) var(--space-XXS) var(--space-S);
}

.list-title-wrapper-pc {
  padding: 0;
}

.list-title-text {
  font-size: var(--text-L);
  font-weight: unset;
}

.left-column,
.right-column-main {
  padding: var(--space-XS);
}

.left-column {
  padding-bottom: var(--space-M);
}

.right-column-main {
  padding-top: 0;
}

/* 右カラム内フッター */
.right-column-main .common-footer {
  margin: var(--space-L) var(--space-minus-XS) var(--space-minus-XS);
}

/* 表示内容切り替えトグル */
.switcher-base {
  bottom: 30px;
  left: 50%;
  position: fixed;
  transform: translateX(-50%);
  z-index: 100000;
}

/* 検索結果 */
.search-result-text {
  font-size: var(--text-L);
  margin-bottom: var(--space-XS);
}

.select-wrapper.select-wrapper-sort .input-common,
.select-wrapper.select-wrapper-sort i::before {
  color: var(--color-red);
}

.select-wrapper.select-wrapper-sort .icon-chevron_right::before {
  color: var(--color-grey);
}

.search-result-list {
  margin: var(--space-M) 0;
}

.search-result-list li + li {
  margin-top: var(--space-XS);
}

.search-result-list .card-list-cassette {
  padding-bottom: 0;
}

.search-result-list .card-list-cassette-reserve-wrapper .button-disabled {
  background: var(--color-black-opacity-4);
  border: none;
  color: var(--color-dark-grey);
}

.search-result-description {
  font-size: var(--text-M);
  line-height: 22px;
  margin-top: var(--space-XL);
}

.search-result-description a:hover {
  text-decoration: underline;
}

/* 地図検索 */
.list-map-area-wrapper {
  left: 0;
  position: fixed;
  top: 44px;
  width: 100%;
  z-index: 100;
}

.list-map-area-wrapper .list-map-area {
  height: calc(100dvh - 44px);
  width: 100%;
}

.list-map-area.show-restaurant-infobar {
  height: calc(var(--vh, 1vh) * 100 - 30vw - 105px);
  top: 0;
}

/* chef's recommendation */
.chefsrec-list li + li {
  margin-top: var(--space-M);
}

.card-list-cassette-chefsrec-wrapper {
  padding: var(--space-XS) var(--space-M) var(--space-M);
}

.card-list-cassette-chefsrec-wrapper .button-base {
  margin-bottom: var(--space-XS);
}

.card-list-cassette-chefsrec-review-wrapper,
.card-list-cassette-chefsrec-link {
  display: inline-block;
}

.card-list-cassette-chefsrec-review {
  display: inline;
  margin-right: var(--space-XS);
}

.recommend-chefs-wrapper {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: var(--space-XS) 0;
}

.chef-info-wrapper {
  font-size: var(--text-S);
  font-weight: bold;
}

.chef-name {
  color: var(--color-red);
  margin-top: var(--space-XXS);
}

.recommend-chefs {
  display: flex;
}

.recommend-chefs .link-image {
  height: 40px;
}

.recommend-chefs .link-image + .link-image {
  margin-left: var(--space-XS);
}

/* chef directory */
.chef-directory-title-wrapper {
  padding-bottom: var(--space-XXS);
}

.chef-directory-title-wrapper .text-list-count {
  font-size: var(--text-M);
  margin-top: var(--space-XS);
}

.chef-directory-list {
  margin-top: var(--space-L);
}

.chef-directory-list li + li {
  margin-top: var(--space-M);
}

.card-tenpo-name-wrapper {
  border-bottom: 1px solid var(--color-ddd);
  padding-bottom: var(--space-XS);
  margin-bottom: var(--space-XS);
}

.card-list-cassette-info .card-title {
  margin-bottom: var(--space-XXS);
}

.chef-directory-list .img-main {
  height: 330px;
}

.chef-directory-list .card-list-cassette .img-width-sticker .card-image-sticker-right {
  top: 15px;
}

.card-list-cassette-info .card-text-sub {
  color: var(--color-black);
}

.card-list-cassette-chef-directory {
  padding: 0 var(--space-M) var(--space-M) var(--space-M);
}

.card-list-cassette-chef-directory .name-text-sub {
  margin-top: var(--space-XXS);
  font-size: var(--text-S);
}

.card-list-cassette-chef-directory .img-list-wrapper {
  display: flex;
  gap: 12px;
}

.card-list-cassette-chef-directory .img-list-wrapper img {
  margin-bottom: 0;
  height: 63px;
}

.internal-link-wrapper {
  margin-top: var(--space-XL);
}

.popular-area-genre-wrapper {
  margin-top: var(--space-M);
}

.internal-link-title {
  font-size: var(--text-XL);
  font-weight: bold;
  margin-bottom: var(--space-XS);
}

.link-list-container {
  gap: var(--space-M);
  width: 100%;
  justify-content: center;
  flex-wrap: wrap;
  align-items: flex-start;
}

.category-cuisine-list {
  display: block;
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0;
  background-color: var(--color-white);
  border-radius: var(--radius-common);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  flex: 1;
}

.category-cuisine-list li {
  font-size: var(--text-M);
  padding: var(--space-XS);
}

.category-cuisine-item {
  border-bottom: 1px solid var(--color-eee);
}

.category-cuisine-item:last-child {
  border-bottom: none;
}

.category-cuisine-link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
}

.left-content-wrapper {
  display: flex;
  align-items: flex-start;
  flex-grow: 1;
}

.left-content-wrapper .icon-search {
  margin-right: 10px;
  flex-shrink: 0;
}

.left-content-wrapper .search-link-text {
  line-height: 1.4;
  flex-grow: 1;
  flex-shrink: 1;
  min-width: 0;
}

.category-cuisine-link .icon-arrow_forward_ios {
  font-size: var(--text-L);
  color: var(--color-dark-grey);
  margin-left: 10px;
  flex-shrink: 0;
}

.sp-only .search-link-text {
  width: 100%;
  margin-left: 10px;
}

/* PC版 */
@media (min-width: 768px) {
  .list-title-wrapper-sp {
    padding: 0;
  }
  
  .list-title-wrapper-pc {
    padding: var(--space-S) var(--space-S) 0 var(--space-S);
  }

  .two-columns {
    padding: 0 var(--space-L);
  }

  .left-column,
  .right-column-main {
    padding: 0;
  }

  .left-column {
    max-width: 400px;
  }

  /* 右カラム */
  /* 検索結果 */
  .card-search-result {
    margin: var(--space-S) 0 var(--space-M);
  }

  .page-dysp-wrapper .search-result-text {
    margin-bottom: 0;
  }

  .page-dysp-wrapper .select-wrapper {
    margin-top: var(--space-XS);
  }

  .page-dysp-wrapper .select-wrapper,
  .page-dysp-wrapper .select-wrapper .input-common {
    width: 100%;
  }

  /* 右カラム内フッター */
  .right-column-main .common-footer {
    margin-top: var(--space-footer-top);
  }

  /* chef's recommendation */
  .chefsrec-list,
  .chef-directory-list {
    margin: var(--space-XXXL) 0;
    width: var(--pc-centered-width);
  }

  .chefsrec-list li + li {
    margin-top: var(--space-L);
  }

  .card-list-cassette-chefsrec-wrapper {
    border: none;
  }

  .card-list-cassette-chefsrec-wrapper .button-base {
    margin-bottom: var(--space-M);
    width: 370px;
  }

  .recommend-chefs-wrapper {
    justify-content: flex-end;
    margin: var(--space-M) 0;
  }

  .chef-info-wrapper {
    font-size: var(--text-L);
    margin-right: var(--space-L);
  }

  .recommend-chefs .link-image {
    height: 50px;
    width: 50px;
  }

  .chefsrec-form-wrapper h1 {
    justify-content: center;
  }

  /* chef directory */
  .chef-directory-title-wrapper {
    padding-bottom: var(--space-XXXL);
  }

  .chef-directory-title-wrapper .text-list-count {
    font-size: var(--text-L);
    width: 560px;
  }

  .chef-directory-list .card-list-cassette {
    padding-bottom: var(--space-M);
  }

  .chef-directory-list .card-tenpo-name-wrapper {
    border: none;
    margin-bottom: var(--space-S);
    padding: 0;
  }

  .chef-directory-list .card-tenpo-name-wrapper .card-title {
    font-size: var(--title-M);
  }

  .card-list-cassette-info .card-title {
    margin: var(--space-M) 0;
  }

  .chef-directory-list .card-list-cassette .img-width-sticker .card-image-sticker-right {
    top: 10px;
  }

  .chef-directory-list .img-main {
    margin: 0;
    width: 309px;
  }

  .card-list-cassette-chef-directory .img-list-wrapper img {
    height: 80px;
    width: 120px;
  }
}
