@charset "UTF-8";
/* ---------- base ---------- */
.lp {
  color: #333;
  font-family: inherit; /* ヤフトラ本体のフォントに合わせる */
  line-height: 1.7;
  text-align: left;
}
.lp *,
.lp *::before,
.lp *::after {
  box-sizing: border-box;
}
.lp h2,
.lp h3,
.lp p,
.lp ul {
  margin: 0;
  padding: 0;
}
.lp li {
  list-style: none;
}
.lp img {
  max-width: 100%;
  height: auto;
  border: 0;
  vertical-align: bottom;
}
.lp a {
  text-decoration: none;
}
.lp-inner {
  width: 1000px;
  margin: 0 auto;
}

/* ---------- メインビジュアル ---------- */
.lp-mv {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 480px;
  background: url(https://www.img-ikyu.com/contents/common/image/acc9/00002629/0/org/13402814.jpg?auto=compress,format&lossless=0&q=75) no-repeat center / cover;
  color: #fff;
  text-align: center;
}
.lp-mv::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.45));
}
.lp-mv_inner {
  position: relative;
  z-index: 1;
  padding: 0 16px;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.35);
}
.lp-mv_area {
  font-family: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif; /* 一休版：明朝 */
  margin-bottom: 8px !important;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.lp-mv_title {
  margin: 8px 0 24px !important;
  font-family: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif; /* 一休版：明朝 */
  font-size: 56px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.5;
}
/* SP用の改行はPCでは使わない */
.lp-mv_title .lp-spBr {
  display: none;
}
/* .lp p のリセットより優先させるため .lp を付けて指定 */
.lp .lp-mv_badge {
  display: inline-flex;
  align-items: baseline;
  padding: 8px 44px;
  background: #fff;
  color: #b58f1e;
  border-radius: 999px;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-shadow: none;
}
.lp-mv_badgeNum {
  margin: 0 4px;
  font-size: 36px;
  line-height: 1;
}
.lp-mv_badgeNum small {
  font-size: 0.6em;
}
.lp-mv_period {
  display: table;
  margin: 24px auto 0;
  padding: 12px 24px;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 4px;
  font-size: 14px;
  line-height: 1.8;
  text-align: left;
  text-shadow: none;
}
.lp-mv_periodLabel {
  font-weight: 700;
}
.lp-mv_periodNote {
  margin-top: 2px !important;
  font-size: 12px;
  opacity: 0.85;
}

/* ---------- 自治体紹介 ---------- */
.lp-intro {
  padding: 72px 0;
  background: #fff;
}
.lp-intro_body {
  display: flex;
  align-items: center;
  gap: 48px;
}
.lp-intro_text {
  flex: 1;
}
.lp-intro_ttl {
  margin-bottom: 24px !important;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.4;
}
.lp-intro_desc {
  font-size: 16px;
  line-height: 2;
}
.lp-intro_map {
  flex-shrink: 0;
}
.lp-intro_map img {
  width: auto;
  height: 160px;
}

/* ふるさと納税バナー */
.lp-furusato {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 48px;
  padding: 20px 28px;
  background: #fff;
  border: 1px solid #861212;
  border-radius: 8px;
  color: #222;
  transition: opacity 0.2s;
}
.lp-furusato:hover {
  opacity: 0.7;
}
.lp-furusato_icon {
  display: flex;
  flex-shrink: 0;
  color: #861212;
}
.lp-furusato_text {
  display: flex;
  flex-direction: column;
}
.lp-furusato_main {
  color: #861212;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
}
.lp-furusato_sub {
  margin-top: 8px;
  font-size: 14px;
}
.lp-furusato_sub_notes {
  font-size: 12px;
  margin-top: 8px;
  color: #888;
}
.lp-furusato_more {
  flex-shrink: 0;
  margin-left: auto;
  color: #861212;
  font-size: 14px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
/* 「詳しく見る」の矢印 */
.lp-furusato_arrow {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

/* ---------- セクション見出し（共通） ---------- */
.lp-secTtl {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1.4;
  text-align: center;
}
.lp-secTtl_sub {
  display: block;
  margin-bottom: 4px;
  font-size: 22px;
  letter-spacing: 0.1em;
}
.lp-secTtl_num {
  color: #e5352b;
  font-size: 1.4em;
  line-height: 1;
}

/* ---------- おすすめスポット ---------- */
.lp-spot {
  padding: 88px 0;
  background: #f7f7f7;
}
.lp-spot_list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 48px !important;
}
.lp-spot_item {
  display: flex;
  align-items: stretch;
  overflow: hidden;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 14px rgba(0, 0, 0, 0.08);
}
.lp-spot_img {
  position: relative;
  flex-shrink: 0;
  width: 50%;
  aspect-ratio: 2 / 1; /* 基本は2:1。テキストの方が高いときはカードの高さに合わせて伸びる */
}
/* 写真はカードの高さいっぱいに表示。左右が切れる場合も右端（コピーライト表記）は残す */
.lp-spot_img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: right center;
}
.lp-spot_body {
  display: flex;
  flex: 1;
  flex-direction: column;
  justify-content: center;
  padding: 24px 32px;
}
.lp-spot_name {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
}
.lp-spot_desc {
  margin-top: 12px !important;
  font-size: 14px;
  line-height: 1.9;
}
.lp-spot_addr {
  display: flex;
  align-items: flex-start;
  gap: 4px;
  margin-top: 12px !important;
  color: #888;
  font-size: 14px;
}
.lp-spot_addr svg {
  flex-shrink: 0;
  margin-top: 0.4em; /* アイコンを1行目の高さに揃える */
  color: #888;
}

/* ---------- 対象の宿（見出し） ---------- */
.lp-hotel {
  padding: 88px 0 40px;
  background: #fff;
}
.lp-secTtl--hotel {
  font-size: 32px;
}

/* ---------- 注意事項（footer）---------- */
.lp-notes {
  margin-top: 60px;
  padding: 64px 0;
  background: #fff;
}
.lp-notes_ttl {
  color: #333;
  font-size: 26px;
  font-weight: 700;
  line-height: 1.6;
}
.lp-notes_list {
  margin-top: 20px !important;
  color: #333;
  font-size: 14px;
  line-height: 1.6;
}
.lp-notes_list li + li {
  margin-top: 4px;
}
.lp-notes_list a {
  color: #008dde;
}

/* ふるさと納税ボックス（枠全体がリンク） */
.lp-furusatoBox {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin-top: 64px;
  padding: 32px 20px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  color: #333;
  text-align: center;
  transition: opacity 0.2s;
}
.lp-furusatoBox:hover {
  opacity: 0.8;
}
.lp-furusatoBox_logo {
  display: block;
  line-height: 0;
}
.lp-furusatoBox_logoSvg {
  display: block;
  width: auto;
  height: 24px;
}
.lp-furusatoBox_ttl {
  display: block;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
}
.lp-furusatoBox_lead {
  display: block;
  margin-top: -8px;
  font-size: 18px;
  line-height: 1.6;
}
.lp-furusatoBox_em {
  color: #ff4d4d;
  font-weight: 700;
}
.lp-furusatoBox_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  max-width: 100%;
  padding: 16px 32px;
  background: #861212;
  border-radius: 6px;
  color: #fff !important;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.6;
}
.lp-furusatoBox_arrow {
  flex-shrink: 0;
}

/* ---------- 施設カード（システム）調整 ---------- */
article div.pt-4.text-center.font-serif.text-5xl.font-bold.text-gray-800,
article div.w-screen-xl.mx-auto.mt-4.bg-gray-200.py-2.text-center.text-xl.text-gray-800 {
  display: none !important;
}
.cardpro {
  padding-top: 0 !important;
}
