@charset "utf-8";
/* shoplist.css */

.eye-catch {
    width: 100%;
    max-width: 1920px; /* 動画の最大幅 */
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }

    .eye-catch h1{
        width: 100%;
        height: 100%;
        aspect-ratio: 12 / 5;
        overflow: hidden;
    }

    .eye-catch img{
      position: relative;
      width: 100%;
      height: 100%;
      top: 0;
      object-fit: cover;
    }

  .shoplist-container {
    margin:50px auto;
    max-width: 1200px;
    counter-reset: number 0;
  }
  
  .googlemap {
  position:relative;
  border:5px solid #e20000;
  overflow:hidden;
  display:inline-block;
  width: 100%;
  }

  h2 {
    font-size:1.5em;
    margin:20px 0;
    padding:0 0 0 10px;
    border-left: 10px solid #e20000;
  }

  .shop-header {
    display: grid;
    grid-template-columns: 2fr 2fr 1fr;
    gap: 0px;
    margin:0;
    padding:0;
    color:#000000;
  }
  
  .shop-table {
    display: grid;
    grid-template-columns: 2fr 2fr 1fr;
    gap: 0px;
    margin:0;
    padding:0;
    border-bottom:1px dotted #000000;
    color:#000000;
  }

    .shop-item {
    margin:0;
    padding: 10px 0;
    font-size:0.8em;
    text-align: left;
  }
  .shop-item.name{
    font-size:1em;
    font-weight: bold;
  }

  .shop-item.name::before {
    counter-increment: number 1;
    content: counter(number);      /* 表示形式を指定 */
    background-color: #e20000;
    border-radius: 50%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 20px;
    width: 20px;
    color: #ffffff;
    font-size: 85%;
    line-height: 1;
    float: left;
    margin-right:5px;
  }

  .shop-item.red-bg{
    margin:0;
    padding: 5px 0 5px 5px;
    background:#e20000;
    color:#ffffff;
    font-size:0.8em;
    text-align: left;
  }

  .button-block {
    margin: 20px auto;
    max-width: 1200px;
    text-align: left;
  }

  .more-button {
    margin: 20px auto 0px;
    float:none;
  }
  
  .more-button button {
    background: none;
    border: 2px solid #262626;
    padding: 8px;
    margin-right:10px;
    font-size: 1rem;
    cursor: pointer;
    transition: background 0.3s ease;
  }
  
  .more-button button:hover {
    background: black;
    color: white;
  }


  @media (max-width: 480px) {

    .header-bottom .red-line {
        height: 10px;
        background-color: #e20000;
        display: block;
        }
      
    .shoplist-container {
        margin:50px auto;
        padding:0 5%;
        width: auto;
      }
    
    .shop-header {
        display: none;
    }
    .shop-table {
      display: grid;
      grid-template-columns: 1fr;
      gap: 0px;
      border-bottom:1px dotted #000000;
      padding: 10px 0;
    }
    .shop-item {
        margin:0;
        padding: 5px 0;
        font-size:0.8em;
        text-align: left;
      }
      .button-block {
        margin: 20px auto;
        padding:0 5%;
        width: auto;
      }
    
    
  }
