/* 全体スタイル */
@font-face {
    font-family: 'Meiryo';
    src: url('{% static "fonts/meiryo.ttc" %}') format('truetype');
}

.japanese-text {
    font-family: 'Meiryo', sans-serif;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    background-color: #f8f9fa;
}

/* ヘッダー */
.navbar-brand {
    font-weight: bold;
}

.navbar {
    background-color: #3777bc !important;
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.85);
}

.navbar-dark .navbar-nav .nav-link:hover {
    color: #ffffff;
}

/* フッター */
footer {
    margin-top: 3rem;
    background-color: #6d6e71;
    color: #ffffff;
    padding: 2rem 0;
}

footer a {
    color: #ffffff;
}

footer a:hover {
    color: rgba(255, 255, 255, 0.8);
    text-decoration: none;
}

/* カード */
.card {
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    border: none;
}

/* 口コミカード */
.reviews .card {
    transition: transform 0.2s ease;
}

.reviews .card:hover {
    transform: translateY(-5px);
}

/* 評価星 */
.text-warning .fa-star,
.text-warning .fa-star-half-alt {
    color: #ffc107 !important;
}

/* フォーム要素 */
.form-control:focus {
    border-color: #3777bc;
    box-shadow: 0 0 0 0.25rem rgba(55, 119, 188, 0.25);
}

/* ボタン */
.btn-primary {
    background-color: #3777bc;
    border-color: #3777bc;
}

.btn-primary:hover {
    background-color: #2d609f;
    border-color: #2a5a95;
}

/* ページネーション */
.pagination .page-link {
    color: #3777bc;
}

.pagination .page-item.active .page-link {
    background-color: #3777bc;
    border-color: #3777bc;
}

/* アバター画像 */
.avatar-img {
    object-fit: cover;
}

/* レビュー画像サムネイル */
.review-images img {
    object-fit: cover;
    height: 150px;
}

/* レスポンシブ調整 */
@media (max-width: 767.98px) {
    .review-images img {
        height: 100px;
    }
}

/* テーブルヘッダー */
.table-dark {
    background-color: #6d6e71 !important;
    border-color: #6d6e71 !important;
}

/* カードヘッダー */
.card-header.bg-primary {
    background-color: #3777bc !important;
    border-color: #3777bc !important;
}