@charset "UTF-8";

/* ==========================================================================
   スマートフォン向けスタイル (max-width: 767px)
   ========================================================================== */
.pc-only { display: none !important; }
.hero-slider { height: 70vh; }
.hero-sub { font-size: 2.2rem; }
.hero-title { font-size: 1.8rem; }

.lead-section { padding: 60px 0; }
.lead-title { font-size: 1.3rem; }

.tours-section, .faq-section, .category-section { padding: 60px 0; }
.section-title { font-size: 1.5rem; }
.heading-deco { padding: 0 24px; }
.heading-deco::before, .heading-deco::after { width: 16px; }

.tour-card { margin-bottom: 10px; }
.img-zoom { height: 200px; }
.card-body { padding: 20px; }

.faq-question { padding: 16px; font-size: 0.9rem; }
.faq-answer { padding: 10px 16px 20px; font-size: 0.85rem; }

.category-grid { gap: 16px; }
.cat-content h3 { font-size: 0.95rem; }
.cat-content p { font-size: 0.65rem; }

/* スマホ閲覧時はタップでフィードバック */
.tour-card:active { transform: scale(0.98); }
.category-item:active { transform: scale(0.96); }