@charset "utf-8";


    .keidai-container {
        max-width: 960px;
        margin: 0 auto;
        padding: 20px;
    }
    .page-header {
      text-align: center;
    }
    h1 {
    /* border-bottom: 2px solid #8b0000;
    */
      padding-bottom: 10px;
      color: #8b0000;
    }
    h2 {
      background-color: #f7f7f7;
      padding: 10px 15px;
      border-left: 5px solid #8b0000;
      margin-top: 30px;
    }
    .map-container {
      text-align: center;
      margin: 20px 0;
    }
    .map-container img {
      max-width: 100%;
      height: auto;
    }
    .spot-card {
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
      margin-bottom: 30px;
      padding-bottom: 20px;
      border-bottom: 1px dashed #ccc;
    }
    .spot-image {
      flex: 0 0 300px;
      max-width: 100%;
    }
    .spot-image img {
      width: 100%;
      height: auto;
      border-radius: 4px;
    }
    .spot-info {
      flex: 1;
      min-width: 280px;
    }
    .spot-title {
      font-size: 1.25rem;
      font-weight: bold;
      color: #8b0000;
      margin-bottom: 10px;
    }
    dl.spot-detail {
      display: grid;
      grid-template-columns: 100px 1fr;
      gap: 5px 10px;
      margin: 0;
    }
    dl.spot-detail dt {
      font-weight: bold;
      color: #666;
    }
    dl.spot-detail dd {
      margin: 0;
    }
