@charset "UTF-8";

html {
  scroll-padding-top: 95px;
}
.sp-only { display: block; }

.section-title {
  font-size: 24px;
  margin-bottom: 24px;
}
.en-title {
  font-size: 12px;
  gap: 10px;
}
.en-title::before,
.en-title::after {
  width: 20px;
}

.section-lead {font-size: 14px;/* padding: 0 16px; */margin-bottom: 24px;}
.lp-section {padding: 40px 0;}
.section-lead .small{}
.section-lead span{
    display: initial;
}
/* ==========================================================================
   ナビゲーションの表示切り替え ＆ 上部固定
   ========================================================================== */
.lp-nav {
  display: none !important;
}

.page-header {
  display: block; 
  position: sticky;
  top: 100px;
  
  z-index: 900;
  background-color: #fff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

/* ==========================================================================
   ヒーロー（MV） ＆ イントロ
   ========================================================================== */
.lp-hero {
  padding: 24px 16px 24px;
}
.lp-hero-title {
  line-height: 1.2;
}
.hero-sub {
  font-size: 18px;
  margin-bottom: 5px;
  /* gap: 8px; */
}
.hero-logo {
    height: 22px;
  }
.hero-particle {
  font-size: 14px;
}
.hero-main {
  font-size: 40px;
}

.lp-intro-catch {
  font-size: 12px;
  margin: 16px 0 0 0;
}

/* ==========================================================================
   スマホ用：固定メニューの横スワイプ化
   ========================================================================== */
.lp-nav { top: 50px; } 
.lp-nav-inner {
  justify-content: flex-start;
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}
.lp-nav-inner::-webkit-scrollbar { display: none; }
.lp-nav-link { padding: 14px 16px; font-size: 13px; }

/* ==========================================================================
   その他
   ========================================================================== */
.card-grid, 
.tour-grid, 
.safety-grid,
.ranking-grid,
.voices-grid{
  grid-template-columns: 1fr;
  gap: 20px;
  /* padding: 0 15px; */
}
.gourmet-grid { max-width: 100%; }

.card-img-wrap { aspect-ratio: 16 / 9; }
.card-body {padding: 20px 16px;}
.tour-card {padding: 24px 16px 0px;}
.btn-route {
  font-size: 14px;
  padding: 14px 20px;
}

.btn-wrapper {
    margin-top: 24px;
  }

.safety-item {padding: 16px;}


.info-tables {grid-template-columns: 1fr;/* padding: 0 16px; */}
.info-table tr {
  display: block;
  margin-bottom: 16px;
  border: 1px solid #e0e0e0;
  border-radius: 6px;
  overflow: hidden;
}
.info-table th, .info-table td { display: block; width: 100%; border: none; }
.info-table th { background-color: #f5f7fa; padding: 10px 15px; }
.info-table td { padding: 15px; background-color: #fff; }
.info-table td .small{}

.visa-box {
    padding: 16px;
    margin-bottom: 16px;
}
.visa-box ul {
  padding-left: 0px;
}
.faq-list {/* padding: 0 15px; */}
.faq-question {font-size: 14px;padding: 16px 40px 16px 16px;}
.faq-question::after { right: 15px; }

.btn-wrapper .btn-route{
    width: 85%;
}

/* ==========================================================================
   グルメカード タイトル調整
   ========================================================================== */
.card-body h3 {
  display: block;
  line-height: 1.4;
}

.sub-gourmet {
  display: block;
  margin-left: 0; 
  margin-top: 6px; 
}

/* ==========================================================================
   バナー
   ========================================================================== */
.lp-banner {
  padding: 16px 0;
}

.bn-wrapper {
  gap: 8px;
}

.bn {
  width: 100%;
  max-width: 670px;
}

/* ==========================================================================
   観光スポットランキング
   ========================================================================== */
.rank-place{}
.ranking-card .card-body h3 {
  font-size: 14px;
}

/* ==========================================================================
   参加者の声
   ========================================================================== */
.voice-card {
  flex-direction: column;
}

.voice-img-wrap {
  width: 100%;
  aspect-ratio: 16 / 10;
}

.voice-content-wrap {
  padding: 20px;
}

.voice-tour {
  font-size: 16px;
}
.voice-text p {line-height: 1.6;}

/* ==========================================================================
   モデルルート
   ========================================================================== */
.tour-content {
    padding: 24px 0px 16px;
  }
  
.tour-card .btn-route {
  width: 100%;
  max-width: none;
}