@charset "UTF-8";
body {
  background-color: #f5f2ec; }

#pageHeader .top {
  background-image: url("../img/store/store_top_image.jpg"); }
@media screen and (max-width: 781px) {
  #pageHeader .top {
    background-image: url("../img/store/store_top_image_sp.jpg"); } }

#search .wbox {
  display: flex;
  flex-direction: column;
  padding: 2.5em;
  min-height: 100%; }
  #search .wbox .head > .ttl {
    font-size: 1.3125em;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.5em; }
    #search .wbox .head > .ttl .i {
      margin-right: 0.5em; }
  #search .wbox .head .descript {
    text-align: center;
    margin-bottom: 1em; }
  #search .wbox .input {
    height: 3.75em;
    display: flex; }
#search .word .input input {
  width: 0;
  flex-grow: 1;
  margin-right: 0.625em;
  padding: 0.25em 1em; }
#search .word .input button {
  width: 5.625em; }
#search .area .cols {
  margin-top: auto; }
  #search .area .cols .ttl {
    background-color: #35200c;
    text-align: center;
    color: #FFF;
    margin-bottom: 0.625em; }
  #search .area .cols .input .field {
    width: 100%; }
    #search .area .cols .input .field:not(._show) {
      display: none; }
@media screen and (max-width: 781px) {
  #search .wbox {
    padding: 1.25em; }
    #search .wbox .input {
      height: 2.8125em; } }

#result .storelist {
  width: 100%;
  margin-top: -1.875em;
  margin-bottom: -1.875em; }
  #result .storelist .sl_item {
    position: relative; }
    #result .storelist .sl_item:not(:last-child):not(._last)::after {
      content: "";
      display: block;
      border-bottom: 1px solid #666;
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%; }
    #result .storelist .sl_item td {
      padding: 1.875em 0; }
      #result .storelist .sl_item td:not(:last-child) {
        padding-right: 1.5625em; }
    #result .storelist .sl_item .sl_name a {
      font-size: 1.3125em;
      line-height: 1.5;
      font-weight: bold;
      text-decoration: underline; }
    #result .storelist .sl_item .sl_info {
      line-height: 1.5; }
      #result .storelist .sl_item .sl_info .tel {
        margin-top: 0.5em; }
    #result .storelist .sl_item .sl_service ul {
      display: flex;
      gap: 0.625em; }
      #result .storelist .sl_item .sl_service ul li img {
        display: block;
        width: auto;
        height: 3.125em; }
  #result .storelist._empty::before {
    content: "条件に該当する店舗が見つかりません";
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center;
    height: 5em; }
@media screen and (max-width: 781px) {
  #result .storelist {
    display: block;
    margin-top: -0.625em;
    margin-bottom: 0; }
    #result .storelist .sl_item {
      display: block;
      padding: 1.25em 0; }
      #result .storelist .sl_item td {
        padding: 0;
        display: block; }
        #result .storelist .sl_item td:not(:last-child) {
          margin-bottom: 1.125em; }
      #result .storelist .sl_item .sl_name {
        width: 100%; }
        #result .storelist .sl_item .sl_name a {
          font-size: 1.0625em; }
      #result .storelist .sl_item .sl_info {
        width: 100%; }
      #result .storelist .sl_item .sl_service {
        width: 100%; }
        #result .storelist .sl_item .sl_service ul {
          gap: 0.4375em; }
          #result .storelist .sl_item .sl_service ul li img {
            height: 2.1875em; }
    #result .storelist._empty::before {
      margin-bottom: -0.75em; } }
