/*
Theme Name:   Astra Child - Hinodeya
Template:     astra
Version:      1.0.0
*/

/* 上向きスクロールボタンを非表示 */
#ast-scroll-top { display: none !important; }

/* ===== Astraデフォルトの紫色を上書き（wp_head 9999 で確実に上書き）===== */
a:visited {
    color: inherit;
}

/* ===== 観光情報投稿ページ レイアウト ===== */

/* 上部エリア: 画像(左) + 本文(右) */
.kankou-post-header {
    display: flex;
    gap: 24px;
    margin-bottom: 28px;
    align-items: flex-start;
}

.kankou-thumbnail {
    flex: 0 0 38%;
    max-width: 38%;
}

.kankou-thumbnail img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px;
}

.kankou-intro {
    flex: 1;
}

.kankou-intro .entry-title {
    font-size: 1.6rem;
    margin: 0 0 12px 0;
    line-height: 1.4;
    color: #2c2c2c;
    border-bottom: 2px solid #c8a96e;
    padding-bottom: 8px;
}

.kankou-intro .entry-content-text {
    font-size: 0.95rem;
    line-height: 1.8;
    color: #444;
    margin-bottom: 16px;
}

.kankou-booking-link {
    margin-top: 12px;
}

.kankou-booking-link a {
    display: inline-block;
    background: #c8a96e;
    color: #fff;
    padding: 8px 18px;
    border-radius: 3px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: bold;
    transition: background 0.2s;
}

.kankou-booking-link a:hover {
    background: #a8894e;
    color: #fff;
}

/* 施設情報テーブル */
.kankou-info-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 28px;
    font-size: 0.9rem;
}

.kankou-info-table th,
.kankou-info-table td {
    padding: 10px 14px;
    border: 1px solid #ddd;
    text-align: left;
    vertical-align: top;
    line-height: 1.6;
}

.kankou-info-table th {
    background: #f5f0e8;
    color: #5a4a30;
    font-weight: bold;
    width: 120px;
    white-space: nowrap;
}

.kankou-info-table td {
    background: #fff;
    color: #333;
}

.kankou-info-table a {
    color: #c8a96e;
    text-decoration: none;
}

.kankou-info-table a:hover {
    text-decoration: underline;
}

/* Googleマップ */
.kankou-map {
    margin-bottom: 28px;
}

.kankou-map iframe {
    width: 100% !important;
    height: 300px;
    border: none;
    display: block;
    border-radius: 4px;
}

/* その他情報エリア */
.kankou-other-info {
    background: #f9f7f2;
    border: 1px solid #e8e0d0;
    border-radius: 4px;
    padding: 16px;
    margin-bottom: 28px;
    font-size: 0.9rem;
}

.kankou-other-info h4 {
    margin: 0 0 8px 0;
    color: #5a4a30;
    font-size: 1rem;
}

/* 記事メタ情報（著者・日付）を非表示 */
.single .entry-meta {
    display: none;
}

/* モバイル対応 */
@media (max-width: 640px) {
    .kankou-post-header {
        flex-direction: column;
    }

    .kankou-thumbnail {
        flex: none;
        max-width: 100%;
    }

    .kankou-intro .entry-title {
        font-size: 1.3rem;
    }

    .kankou-info-table th {
        width: 90px;
        font-size: 0.82rem;
    }
}

/* ===== レストランガイドページ (restaurant-reservation) ===== */
/* hn-* / feat-card と統一したデザイン言語 */

/* ヒーロー */
.rg-hero{background:linear-gradient(160deg,rgba(15,30,50,.80),rgba(10,22,38,.52)),url('http://162.43.37.112/wp-content/uploads/2026/06/IMG_0521.jpg') center/cover no-repeat;padding:56px 28px 44px;text-align:center}
.rg-hero .hn-eyebrow{margin-bottom:12px}
.rg-hero h1{font-size:30px;font-weight:300;color:#fff;letter-spacing:2px;margin:0 0 10px;line-height:1.35}
.rg-hero-sub{color:rgba(255,255,255,.62);font-size:13px;margin:0 0 16px;line-height:1.7}
.rg-checkin-badge{display:none}
.rg-guest{display:none}
/* 注意バナー */
.rg-banner{background:var(--offwhite);border-top:2px solid var(--gold);border-bottom:0.5px solid var(--lg);padding:20px 28px}
.rg-banner-inner{max-width:960px;margin:0 auto;display:flex;gap:16px;align-items:flex-start}
.rg-banner-icon{font-size:20px;flex-shrink:0;padding-top:2px}
.rg-banner-title{font-size:13px;font-weight:500;color:var(--navy);letter-spacing:.5px;margin:0 0 6px}
.rg-banner ul{margin:0 0 6px;padding-left:16px}
.rg-banner li{font-size:12px;color:var(--gray);margin-bottom:3px;line-height:1.6}
.rg-banner-cta{font-size:12px;font-weight:600;color:var(--gold);margin:0}
/* コンテンツ */
.rg-content{max-width:960px;margin:0 auto;padding:48px 28px 56px}
.rg-sec-head{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.rg-sec-icon{width:36px;height:36px;background:var(--navy);border-radius:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px}
.rg-sec-title{font-size:15px;font-weight:500;color:var(--navy);letter-spacing:.5px}
/* カードグリッド（feat-card準拠） */
.rg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.rg-card{background:#fff;border:0.5px solid var(--lg);border-radius:2px;overflow:hidden;display:flex;flex-direction:column;transition:.15s;position:relative}
.rg-card:hover{box-shadow:0 4px 16px rgba(0,0,0,.1)}
.rg-card-img{position:relative;height:168px;overflow:hidden;background:var(--navy)}
.rg-card-img img{width:100%;height:100%;object-fit:cover;display:block;transition:.3s}
.rg-card:hover .rg-card-img img{transform:scale(1.03)}
.rg-genre{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(15,30,50,.78),transparent);padding:28px 12px 8px;font-size:10px;letter-spacing:1.5px;color:var(--gold2);text-transform:uppercase}
.rg-closed-badge{position:absolute;top:10px;right:10px;background:#e53e3e;color:#fff;font-size:10px;padding:2px 8px;letter-spacing:.5px;display:none;border-radius:2px}
.rg-card-body{padding:14px 16px 16px;display:flex;flex-direction:column;flex:1;gap:8px}
.rg-card-name{font-size:14px;font-weight:500;color:var(--navy);margin:0;line-height:1.35;font-family:'Noto Serif JP',serif}
.rg-holiday-warn{font-size:11px;color:#92400e;background:#fef3c7;border:0.5px solid #f59e0b;padding:4px 10px;border-radius:2px;display:none;align-items:center;gap:4px}
.rg-meta{display:flex;flex-direction:column;gap:4px;flex:1}
.rg-meta-row{display:flex;gap:8px;font-size:11px;color:var(--gray);line-height:1.5}
.rg-meta-label{font-size:10px;color:var(--gold);letter-spacing:.5px;text-transform:uppercase;min-width:46px;flex-shrink:0;padding-top:1px}
.rg-book-btn{display:flex;align-items:center;justify-content:center;gap:7px;background:var(--navy);color:#fff !important;text-decoration:none !important;font-size:12px;font-weight:500;padding:11px 16px;border-radius:2px;transition:.15s;margin-top:auto;letter-spacing:.5px}
.rg-book-btn:hover,.rg-book-btn:focus{background:var(--gold) !important;color:#fff !important}
/* CTA（.hn-ctaは非表示のため専用クラス） */
.rr-cta-wrap{background:var(--navy);padding:36px 28px;text-align:center}
.rr-cta-wrap h3{font-size:18px;font-weight:300;color:#fff;letter-spacing:1px;margin:0 0 6px}
.rr-cta-wrap p{font-size:13px;color:rgba(255,255,255,.6);margin:0 0 18px}
.rr-cta-tel{color:var(--gold2) !important;font-size:26px;font-weight:300;text-decoration:none !important;letter-spacing:2px;display:block;margin-bottom:4px}
.rr-cta-tel:hover{color:#fff !important}
.rr-cta-note{font-size:11px;color:rgba(255,255,255,.35);margin:0;letter-spacing:.5px}
/* アフィリエイト注記 */
.rg-affiliate-note{text-align:center;font-size:10px;color:var(--gray);padding:10px 28px;letter-spacing:.5px;opacity:.7}
/* レスポンシブ */
@media(max-width:640px){
  .rg-hero{padding:40px 20px 36px}
  .rg-hero h1{font-size:22px}
  .rg-banner{padding:16px 20px}
  .rg-content{padding:32px 16px 48px}
  .rg-grid{grid-template-columns:1fr}
  .rr-cta-wrap{padding:28px 20px}
}
