@charset "UTF-8";.index-module__container___i9m4- {
  margin: 1rem;
}
.index-module__container___i9m4- h1 {
  text-align: left;
  font-size: 13px;
}
.index-module__container___i9m4- p {
  text-align: left;
  font-size: 12px;
  padding-left: 0;
}
.index-module__container___i9m4- h2 {
  text-align: left;
  font-size: 12px;
  font-weight: lighter;
}
.index-module__container___i9m4- ol {
  font-size: 12px;
  padding-left: 20px;
}
.index-module__container___i9m4- li {
  display: list-item;
  text-align: -webkit-match-parent;
  font-size: 12px;
}
.index-module__container___i9m4- table {
  border: 1px solid black;
  border-collapse: collapse;
  width: 100%;
  font-size: 12px;
  text-align: left;
}
.index-module__container___i9m4- table tr {
  border: 1px solid black;
}
.index-module__container___i9m4- table th,
.index-module__container___i9m4- table td {
  padding: 8px;
  border: 1px solid black;
}
.index-module__container___i9m4- table th {
  font-weight: bold;
}.NavigationControls-module__container___nztr4 {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: white;
  padding: 16px;
}

.NavigationControls-module__buttonContainer___6-3br {
  display: flex;
  align-items: center;
  gap: 32px;
}

.NavigationControls-module__button___DBHHw {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
}
.NavigationControls-module__button___DBHHw:disabled {
  cursor: default;
}

.NavigationControls-module__chevron___ZSCZH {
  color: #000000;
}
.NavigationControls-module__chevron___ZSCZH.NavigationControls-module__disabled___rSwvb {
  color: #D3D3D3;
}.Copyright-module__container___6J6CQ {
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
  color: #717272;
  margin: 0 2rem;
}.MailButton-module__container___F2c00 {
  width: 100%;
  max-width: 343px;
  margin: 0 auto 32px;
}

.MailButton-module__button___CHWeI {
  display: block;
  width: 100%;
  border-radius: 4px;
  background-color: #000;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  cursor: pointer;
  padding: 16px 0;
  transition: background-color 0.3s;
  text-decoration: none;
}
.MailButton-module__button___CHWeI:link, .MailButton-module__button___CHWeI:visited, .MailButton-module__button___CHWeI:active {
  color: #fff;
}
.MailButton-module__button___CHWeI:hover {
  background-color: #222;
  color: #fff;
}.index-module__container___N-k0b {
  padding: 16px 1rem;
  max-width: 782px;
  margin: 1rem auto;
}

.index-module__infoPanel___7MvHN {
  background-color: rgba(236, 235, 50, 0.1019607843);
  padding: 24px 16px;
  margin-bottom: 24px;
}

.index-module__heading1___Fx35p {
  font-size: 24px;
  margin-bottom: 16px;
}

.index-module__heading2___8eNYl {
  font-size: 20px;
  margin-top: 24px;
  margin-bottom: 16px;
}

.index-module__text___Eqogm {
  font-size: 14px;
  white-space: pre-line;
}
.index-module__text___Eqogm a {
  color: #3b4043;
  text-decoration: underline;
}
.index-module__text___Eqogm a:link, .index-module__text___Eqogm a:hover, .index-module__text___Eqogm a:active, .index-module__text___Eqogm a:focus, .index-module__text___Eqogm a:visited {
  color: #3b4043;
}

.index-module__textSub___SCUU2 {
  font-size: 12px;
  color: #3b4043;
  margin-bottom: 32px;
  white-space: pre-line;
}

.index-module__list___cPKO3 {
  padding-left: 20px;
}
.index-module__list___cPKO3 li {
  margin-bottom: 8px;
}.Footer-module__wrapper___UlW2F {
  background: #fff;
  width: 100%;
  max-width: 696px;
  margin: 0 auto;
  padding: 0 32px;
}
@media screen and (max-width: 460px) {
  .Footer-module__wrapper___UlW2F {
    padding: 0 32px;
  }
}

.Footer-module__container___mUARl {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  padding: 0;
}

.Footer-module__links___U4ydX {
  display: flex;
  gap: 48px;
}

.Footer-module__link___4bLKn {
  color: #333333;
}

.Footer-module__bottomSection___bNVcx {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.Footer-module__aboutTrademark___uTZcq {
  font-size: 12px;
  color: #888;
  white-space: pre-wrap;
  white-space: -moz-pre-wrap;
  white-space: -o-pre-wrap;
  word-wrap: break-word;
  word-break: break-word;
  overflow-wrap: break-word;
}

.Footer-module__copyright___x70am {
  font-size: 12px;
  color: #888;
}.CloseButton-module__closeButton___c9KtA {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  background: none;
  border: none;
  padding: 8px;
  color: #000;
  transition: background-color 0.2s ease;
}
.CloseButton-module__closeButton___c9KtA:hover {
  background-color: #f5f5f5;
  border-radius: 50%;
}
.CloseButton-module__closeButton___c9KtA svg {
  width: 24px;
  height: 24px;
}.FortuneBanner-module__fortuneBanner___JX1gS {
  position: fixed;
  top: 53px;
  width: min(100%, 696px);
  background: #fffaeb;
  z-index: 999;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  transform: translateY(0);
  transition: transform 0.3s ease-out;
  will-change: transform;
  height: auto;
  overflow: hidden;
  justify-self: center;
  align-self: center;
}
.FortuneBanner-module__fortuneBanner___JX1gS.FortuneBanner-module__headerHidden___viFzT {
  transform: translateY(calc(-53px - 100%));
}

.FortuneBanner-module__content___lMTuT {
  width: 100%;
  max-width: 696px;
  margin: 0 auto;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.FortuneBanner-module__infoSection___iMReV {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.FortuneBanner-module__mainSection___0ebFk {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  height: clamp(60px, 8.7vw, 68px);
  width: 100%;
}

.FortuneBanner-module__slideContent___KaED- {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  animation: FortuneBanner-module__fadeIn___HpTt1 1.6s ease-in-out;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 4px 0;
}

.FortuneBanner-module__slideWithLinkContainer___KTUNl {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  animation: FortuneBanner-module__fadeIn___HpTt1 1.6s ease-in-out;
  padding: 2px 0;
}

.FortuneBanner-module__luckyDayRow___daBZq {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 12px;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 2px 0;
}
@media (max-width: 768px) {
  .FortuneBanner-module__luckyDayRow___daBZq {
    gap: 8px;
  }
}

.FortuneBanner-module__prayerPointRow___eZXkC {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0px 10px;
}
@media (max-width: 768px) {
  .FortuneBanner-module__prayerPointRow___eZXkC {
    gap: 0px;
    padding: 0px;
  }
}

.FortuneBanner-module__fortuneLevelRow___uM-z2 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  flex-wrap: nowrap;
}
@media (max-width: 768px) {
  .FortuneBanner-module__fortuneLevelRow___uM-z2 {
    gap: 4px;
  }
}

.FortuneBanner-module__calendarLinkSmall___h8YQ2 {
  font-size: 12px;
  text-decoration: underline;
  color: #666;
  margin-top: 0px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.FortuneBanner-module__closeBtn___5obcA {
  width: 24px;
  height: 24px;
  padding: 4px;
  color: #717272;
}
.FortuneBanner-module__closeBtn___5obcA svg {
  width: 16px;
  height: 16px;
}

.FortuneBanner-module__buttonResize___coVrs {
  transform: scale(0.8);
}

.FortuneBanner-module__slideWrapper___g8w4S {
  animation: FortuneBanner-module__slideTransition___0FSIo 0.6s ease-in-out;
  width: 100%;
}

@keyframes FortuneBanner-module__slideTransition___0FSIo {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes FortuneBanner-module__fadeIn___HpTt1 {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.FortuneBanner-module__dateText___f3Us- {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 300;
  color: #000000;
}
@media (max-width: 768px) {
  .FortuneBanner-module__dateText___f3Us- {
    font-size: clamp(13px, 2.9vw, 16px);
  }
}

.FortuneBanner-module__todaysFortuneText___6E2XM {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 300;
  padding-left: 1.5rem;
  color: #333333;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .FortuneBanner-module__todaysFortuneText___6E2XM {
    font-size: clamp(13px, 2.9vw, 16px);
    padding-left: 0.5rem;
  }
}

.FortuneBanner-module__fortuneLevel___wFsQ2 {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #000000;
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8);
  white-space: nowrap;
  padding: 0;
}
@media (max-width: 768px) {
  .FortuneBanner-module__fortuneLevel___wFsQ2 {
    font-size: 20px;
  }
}

.FortuneBanner-module__messageText___JkOZ3 {
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  font-size: clamp(13px, 4.7vw, 25px);
  font-weight: 700;
  color: #000000;
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8);
  line-height: 1.5;
  text-align: center;
  width: 100%;
  display: block;
}

.FortuneBanner-module__levelGauge___ITAbP {
  display: flex;
  gap: 4px;
  width: 100%;
}
@media (max-width: 768px) {
  .FortuneBanner-module__levelGauge___ITAbP {
    gap: 3px;
  }
}

.FortuneBanner-module__levelBar___Q8F7S {
  flex: 1;
  height: 8px;
  background-color: #e0e0e0;
  transition: background-color 0.3s ease;
}
.FortuneBanner-module__levelBar___Q8F7S.FortuneBanner-module__active___225Nv {
  background: #9229d3 100%;
  box-shadow: 0 1px 3px rgba(67, 160, 71, 0.3);
}

.FortuneBanner-module__badgeContainer___9OPXn {
  display: flex;
  gap: 8px;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
}

.FortuneBanner-module__buttonSVG___TnTTx {
  height: clamp(30px, 4.9vw, 45px);
  width: auto;
  vertical-align: middle;
  margin-left: 4px;
  padding-bottom: 2px;
}
@media (max-width: 768px) {
  .FortuneBanner-module__buttonSVG___TnTTx {
    margin-left: 3px;
    padding-bottom: 2px;
  }
}

.FortuneBanner-module__messageSVG___NXjiu {
  height: clamp(35px, 4.9vw, 45px);
  width: auto;
  display: block;
  margin-left: clamp(5px, 2.9vw, 20px);
}

.FortuneBanner-module__luckyDayBadge___rOOzV {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  border-radius: 20px;
  font-family: "HGSMinchoE", serif;
  font-size: 20px;
  font-weight: 700;
  white-space: nowrap;
  border: 2px solid;
  flex-shrink: 0;
}
@media (max-width: 768px) {
  .FortuneBanner-module__luckyDayBadge___rOOzV {
    font-size: 14px;
    padding: 4px 10px;
    border-radius: 16px;
    border-width: 1.5px;
  }
}
.FortuneBanner-module__luckyDayBadge___rOOzV.FortuneBanner-module__taian___Zlcfa {
  background-color: #ffe8e7;
  color: #e53935;
  border-color: #e53935;
}
.FortuneBanner-module__luckyDayBadge___rOOzV.FortuneBanner-module__tensha___Ura-z {
  background-color: #f3e5f5;
  color: #8e44ad;
  border-color: #8e44ad;
}
.FortuneBanner-module__luckyDayBadge___rOOzV.FortuneBanner-module__ichiryumanbai___RuzxP {
  background-color: #e3f2fd;
  color: #1976d2;
  border-color: #1976d2;
}
.FortuneBanner-module__luckyDayBadge___rOOzV.FortuneBanner-module__tora___Uvb4- {
  background-color: #fff9e6;
  color: #c59315;
  border-color: #d4a017;
}
.FortuneBanner-module__luckyDayBadge___rOOzV.FortuneBanner-module__mi___Nmc46 {
  background-color: #e8f5e9;
  color: #388e3c;
  border-color: #388e3c;
}
.FortuneBanner-module__luckyDayBadge___rOOzV.FortuneBanner-module__heijitsu___6gz-U {
  background-color: #f5f5f5;
  color: #777575;
  border-color: #bdbdbd;
}

.FortuneBanner-module__rightSection___XHasA {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  background-color: #e7e632;
}

.FortuneBanner-module__calendarLink___zUu30 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 16px;
  color: #717272;
  text-decoration: underline;
  padding: 0.5rem 8px;
  border-radius: 4px;
  white-space: nowrap;
  transition: background-color 0.3s ease;
}
.FortuneBanner-module__calendarLink___zUu30:hover {
  background-color: rgba(113, 114, 114, 0.08);
}
.FortuneBanner-module__calendarLink___zUu30:active {
  background-color: rgba(113, 114, 114, 0.16);
}
@media (max-width: 768px) {
  .FortuneBanner-module__calendarLink___zUu30 {
    font-size: 12px;
    width: 100%;
    justify-content: center;
  }
}

.FortuneBanner-module__calendarIcon___rTBEi {
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  margin: 0 0.5rem;
}
@media (max-width: 768px) {
  .FortuneBanner-module__calendarIcon___rTBEi {
    width: 16px;
    height: 16px;
  }
}

.FortuneBanner-module__etoContent___ZtaLr {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  animation: FortuneBanner-module__fadeIn___HpTt1 1.6s ease-in-out;
  width: 100%;
  max-width: 100%;
  height: clamp(60px, 8.7vw, 68px);
  margin: 0 auto;
  padding: 2px 0;
}

.FortuneBanner-module__etoHeader___Fst1s {
  display: flex;
  align-items: center;
  gap: 12px;
}

.FortuneBanner-module__etoLabel___yj7nk {
  font-size: 14px;
}

.FortuneBanner-module__etoValue___UhXaT {
  font-size: clamp(20px, 4.7vw, 24px);
  font-weight: bold;
  display: flex;
  align-items: center;
  gap: 4px;
}

.FortuneBanner-module__etoEmoji___W0-qs {
  font-family: "Segoe UI Emoji", "Segoe UI Symbol", "Apple Color Emoji", "Noto Color Emoji", sans-serif;
  font-size: clamp(20px, 2.7vw, 28px);
}

.FortuneBanner-module__etoLink___Qt6w- {
  font-size: 12px;
  text-decoration: underline;
  color: #666;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 12px;
  text-decoration: underline;
  color: #666;
}

.FortuneBanner-module__messageContent___Yz7ve {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  animation: FortuneBanner-module__fadeIn___HpTt1 1.6s ease-in-out;
  flex-wrap: nowrap;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 2px 0;
}

.FortuneBanner-module__kaiundoGauge___UpewH {
  height: 24px;
  width: auto;
  margin-top: 0;
}
@media (max-width: 768px) {
  .FortuneBanner-module__kaiundoGauge___UpewH {
    height: 20px;
  }
}.Header-module__headerSpacer___-EC3- {
  position: relative;
  width: min(100%, 696px);
  z-index: -1;
}

.Header-module__container___hcn1Q {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background-color: #fff;
  height: 53px;
  border-bottom: 1px solid #eee;
  background-size: cover;
  background-position: center;
  padding: 0 16px;
}
@media (max-width: 768px) {
  .Header-module__container___hcn1Q {
    padding: 0 8px;
  }
}

.Header-module__content___tCH8e {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 1200px;
  padding: 16px;
  position: relative;
}

.Header-module__logoContainer___h8OR- {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  top: 5px;
}

.Header-module__logo___WbzVt {
  height: 30px;
  display: block;
}

.Header-module__downloadLinkContainer___Y6oFq {
  display: flex;
  align-items: center;
}

.Header-module__searchIconContainer___Nr70J {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  right: 0;
}

.Header-module__autoHiddenHeader___HXUUZ {
  position: fixed;
  top: 0;
  width: min(100%, 696px);
  height: 53px;
  z-index: 1400;
  overflow: hidden;
  justify-self: center;
  align-self: center;
}

.Header-module__appear___yhli8 {
  transform: translateY(0);
  opacity: 1;
  z-index: 9999;
}

.Header-module__dissapear___oXO-i {
  transform: translateY(-53px);
  opacity: 0;
}

.Header-module__normalHeader___HS-Ss {
  width: 100%;
  position: absolute;
  bottom: 0;
}.SearchButton-module__searchButton___Qq4vG {
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  cursor: pointer;
  padding: 16px;
  font-size: 40px;
  color: #333;
  transition: opacity 0.2s ease;
  min-width: 56px;
  min-height: 56px;
}
.SearchButton-module__searchButton___Qq4vG:hover {
  opacity: 0.7;
}
.SearchButton-module__searchButton___Qq4vG svg,
.SearchButton-module__searchButton___Qq4vG .SearchButton-module__icon___KqJ4y {
  width: 24px;
  height: 24px;
}
@media (max-width: 768px) {
  .SearchButton-module__searchButton___Qq4vG {
    padding: 12px;
    font-size: 32px;
    min-width: 48px;
    min-height: 48px;
  }
  .SearchButton-module__searchButton___Qq4vG svg,
  .SearchButton-module__searchButton___Qq4vG .SearchButton-module__icon___KqJ4y {
    width: 20px;
    height: 20px;
  }
}.Heading-module__headingH6___vjW5O, .Heading-module__headingH5___Szg3e, .Heading-module__headingH4___lLl5F, .Heading-module__headingH3___Cm6Ib, .Heading-module__headingH2___LwaCl, .Heading-module__headingH1___9-jKr {
  line-height: 1;
  text-align: left;
  color: #1f2937;
  font-weight: bold;
  overflow-wrap: break-word;
  white-space: pre-wrap;
  margin: 0;
}

.Heading-module__headingH1___9-jKr {
  font-size: 22px;
  margin-bottom: 8px;
  margin-top: 8px;
  line-height: 1.3;
}
.Heading-module__headingH2___LwaCl {
  font-size: 18px;
  margin-top: 24px;
  margin-bottom: 16px;
}
.Heading-module__headingH3___Cm6Ib {
  font-size: 16px;
}
.Heading-module__headingH4___lLl5F {
  font-size: 16px;
}
.Heading-module__headingH5___Szg3e {
  font-size: 16px;
}
.Heading-module__headingH6___vjW5O {
  font-size: 14px;
}@keyframes KeywordSearchSkeleton-module__skeleton-loading___49ts9 {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.KeywordSearchSkeleton-module__skeleton___YSroy, .KeywordSearchSkeleton-module__inputFieldSkeleton___yy9gR, .KeywordSearchSkeleton-module__iconSkeleton___XyjOM, .KeywordSearchSkeleton-module__searchInputSkeleton___r5ezp {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 63%);
  background-size: 400% 100%;
  animation: KeywordSearchSkeleton-module__skeleton-loading___49ts9 1.4s ease infinite;
}

.KeywordSearchSkeleton-module__container___qg-Jx {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.KeywordSearchSkeleton-module__searchInputSkeleton___r5ezp {
  width: 100%;
  height: 48px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  padding: 12px 16px;
  gap: 12px;
  margin-top: 16px;
}

.KeywordSearchSkeleton-module__iconSkeleton___XyjOM {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  flex-shrink: 0;
}

.KeywordSearchSkeleton-module__inputFieldSkeleton___yy9gR {
  flex: 1;
  height: 20px;
  border-radius: 4px;
}@keyframes SearchByAreaSkeleton-module__skeleton-loading___NhvXh {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.SearchByAreaSkeleton-module__skeleton___Pqn-n, .SearchByAreaSkeleton-module__arrowSkeleton___vUi1c, .SearchByAreaSkeleton-module__regionNameSkeleton___sEL-G {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 63%);
  background-size: 400% 100%;
  animation: SearchByAreaSkeleton-module__skeleton-loading___NhvXh 1.4s ease infinite;
}

.SearchByAreaSkeleton-module__container___c6L5i {
  width: 100%;
  display: block;
}

.SearchByAreaSkeleton-module__accordionContainer___vgkPT {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  margin-top: 24px;
}

.SearchByAreaSkeleton-module__accordionItemSkeleton___gj4D0 {
  width: 100%;
  background-color: #f9f9f9;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
}

.SearchByAreaSkeleton-module__accordionHeaderSkeleton___VgDFZ {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
}

.SearchByAreaSkeleton-module__regionNameSkeleton___sEL-G {
  height: 20px;
  width: 80px;
  border-radius: 4px;
}

.SearchByAreaSkeleton-module__arrowSkeleton___vUi1c {
  width: 20px;
  height: 20px;
  border-radius: 4px;
}@keyframes SearchByCategorySkeleton-module__skeleton-loading___6O1Gj {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.SearchByCategorySkeleton-module__skeleton___Pfic9, .SearchByCategorySkeleton-module__arrowSkeleton___mSkON, .SearchByCategorySkeleton-module__categoryNameSkeleton___E9Lve {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 63%);
  background-size: 400% 100%;
  animation: SearchByCategorySkeleton-module__skeleton-loading___6O1Gj 1.4s ease infinite;
}

.SearchByCategorySkeleton-module__container___6GKwp {
  width: 100%;
  display: block;
}

.SearchByCategorySkeleton-module__accordionContainer___YXY11 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  margin-top: 24px;
}

.SearchByCategorySkeleton-module__accordionItemSkeleton___q3D8L {
  width: 100%;
  background-color: #f9f9f9;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
}

.SearchByCategorySkeleton-module__accordionHeaderSkeleton___bpY4s {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
}

.SearchByCategorySkeleton-module__categoryNameSkeleton___E9Lve {
  height: 20px;
  width: 100px;
  border-radius: 4px;
}

.SearchByCategorySkeleton-module__arrowSkeleton___mSkON {
  width: 20px;
  height: 20px;
  border-radius: 4px;
}@keyframes SearchByFeatureSkeleton-module__skeleton-loading___ouqqc {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.SearchByFeatureSkeleton-module__skeleton___AXQ4p, .SearchByFeatureSkeleton-module__arrowSkeleton___qK20Z, .SearchByFeatureSkeleton-module__featureNameSkeleton___Ps5qY {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 63%);
  background-size: 400% 100%;
  animation: SearchByFeatureSkeleton-module__skeleton-loading___ouqqc 1.4s ease infinite;
}

.SearchByFeatureSkeleton-module__container___Reywu {
  width: 100%;
  display: block;
}

.SearchByFeatureSkeleton-module__accordionContainer___GX-38 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2px;
  margin-top: 24px;
}

.SearchByFeatureSkeleton-module__accordionItemSkeleton___BFtxZ {
  width: 100%;
  background-color: #f9f9f9;
  border: 1px solid #e0e0e0;
  border-radius: 4px;
}

.SearchByFeatureSkeleton-module__accordionHeaderSkeleton___7KfjI {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
}

.SearchByFeatureSkeleton-module__featureNameSkeleton___Ps5qY {
  height: 20px;
  width: 120px;
  border-radius: 4px;
}

.SearchByFeatureSkeleton-module__arrowSkeleton___qK20Z {
  width: 20px;
  height: 20px;
  border-radius: 4px;
}.SearchAccordion-module__accordion___OkMao {
  box-shadow: none;
  border: none;
  background-color: transparent;
  width: 100%;
}

.SearchAccordion-module__accordionSummary___OilrZ {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 12px 0;
  background-color: transparent;
  border: none;
  cursor: pointer;
  font-size: inherit;
  font-family: inherit;
  text-align: left;
  color: #000000;
  -webkit-tap-highlight-color: transparent;
}
.SearchAccordion-module__accordionSummary___OilrZ:link, .SearchAccordion-module__accordionSummary___OilrZ:visited {
  color: #000000;
}
.SearchAccordion-module__accordionSummary___OilrZ:hover {
  background-color: rgba(0, 0, 0, 0.04);
  color: #000000;
}
.SearchAccordion-module__accordionSummary___OilrZ:focus {
  outline: none;
  background-color: rgba(0, 0, 0, 0.12);
  color: #000000;
}
.SearchAccordion-module__accordionSummary___OilrZ:active {
  color: #000000;
}

.SearchAccordion-module__accordionTitle___9ts9C {
  color: #000000;
  margin: 0;
  font-size: inherit;
  font-weight: normal;
  padding-left: 8px;
}

.SearchAccordion-module__accordionContent___uKSss {
  height: 0;
  overflow: hidden;
  transition: height 300ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
}
.SearchAccordion-module__accordionContent___uKSss.SearchAccordion-module__expanded___KzLkx {
  height: auto;
}

.SearchAccordion-module__accordionDetails___YU-m4 {
  width: 100%;
  padding: 0px;
}
.SearchAccordion-module__accordionDetails___YU-m4 a {
  color: #333;
  text-decoration: none;
}
.SearchAccordion-module__accordionDetails___YU-m4 a:hover {
  text-decoration: underline;
}

.SearchAccordion-module__accordionWrapper___8zMv8 {
  width: 100%;
  background-color: #eee;
  border-radius: 4px;
}

.SearchAccordion-module__accordionPadding___HoEbF {
  width: 100%;
  padding: 0px 16px;
}

.SearchAccordion-module__expandIcon___-Q9-R {
  transition: transform 200ms cubic-bezier(0.4, 0, 0.2, 1) 0ms;
}
.SearchAccordion-module__expandIcon___-Q9-R.SearchAccordion-module__rotated___u8BuC {
  transform: rotate(180deg);
}.Spacer-module__spacer___SQX4J {
  margin-bottom: 32px;
}.SearchPanel-module__overlay___VPjOb {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 1401;
  animation: SearchPanel-module__fadeIn___yc-Mr 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  overscroll-behavior: contain;
}

.SearchPanel-module__panel___fs2OJ {
  top: 53px;
  width: min(100%, 694px);
  max-height: calc(100dvh - 53px);
  background-color: #ffffff;
  border: 1px solid #eee;
  border-top: none;
  border-radius: 0 0 8px 8px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
  z-index: 1402;
  overflow-y: auto;
  margin: auto;
  padding-bottom: calc(env(safe-area-inset-bottom, 0px) + 16px);
  animation: SearchPanel-module__slideDown___qggKg 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  box-sizing: border-box;
  overscroll-behavior: contain;
}
.SearchPanel-module__panel___fs2OJ::-webkit-scrollbar {
  width: 8px;
}
.SearchPanel-module__panel___fs2OJ::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 4px;
}
.SearchPanel-module__panel___fs2OJ::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 4px;
}
.SearchPanel-module__panel___fs2OJ::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.SearchPanel-module__content___9HKY- {
  padding: 0 24px;
}
@media (max-width: 768px) {
  .SearchPanel-module__content___9HKY- {
    padding: 0 16px;
  }
}

.SearchPanel-module__heading___0n1Rf {
  font-size: 20px;
  font-weight: bold;
  color: #333;
  margin: 0;
}

.SearchPanel-module__subHeading___d9bfu {
  font-size: 16px;
  font-weight: bold;
  color: #333;
  margin: 0;
}

.SearchPanel-module__searchSections___Du9F2 {
  padding: 0 12px;
}

.SearchPanel-module__articleLink___TAx8n {
  display: inline-block;
  color: #333;
  text-decoration: underline;
  font-size: 16px;
  padding: 8px 0;
  position: relative;
  transition: color 0.2s ease;
}
.SearchPanel-module__articleLink___TAx8n:hover {
  color: #555;
}
.SearchPanel-module__articleLink___TAx8n:hover::after {
  transform: translateX(4px);
}
.SearchPanel-module__articleLink___TAx8n:focus-visible {
  outline: 2px solid #333;
  outline-offset: 4px;
  border-radius: 2px;
}

@keyframes SearchPanel-module__fadeIn___yc-Mr {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes SearchPanel-module__slideDown___qggKg {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}.SearchResultNotFound-module__container___b6CA3 {
  width: 90%;
  margin: 0 auto;
  text-align: center;
}

.SearchResultNotFound-module__keyword___POMgy {
  text-align: left;
  font-weight: bold;
  margin-bottom: 20px;
}

.SearchResultNotFound-module__searchIconContainer___z2Gmp {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background-color: #f0f0f0;
  margin: 0 auto 20px;
}

.SearchResultNotFound-module__searchIcon___SRDXa {
  font-size: 40px;
  color: #888;
}

.SearchResultNotFound-module__descriptionContainer___YR5dJ {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.SearchResultNotFound-module__descriptionHeading___SJCxR {
  font-weight: bold;
  font-size: 18px;
}

.SearchResultNotFound-module__descriptionText___ZN23d {
  color: #666;
}@keyframes NewArticlesSkeleton-module__skeleton-loading___9jEt5 {
  0% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}
.NewArticlesSkeleton-module__skeleton___r7YcH, .NewArticlesSkeleton-module__buttonSkeleton___8WwIx, .NewArticlesSkeleton-module__dateSkeleton___0rXqM, .NewArticlesSkeleton-module__descriptionSkeleton___oZotu, .NewArticlesSkeleton-module__titleSkeleton___icMOS, .NewArticlesSkeleton-module__featuresSkeleton___lcdhR, .NewArticlesSkeleton-module__imageSkeleton___NkOtt {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 37%, #f0f0f0 63%);
  background-size: 400% 100%;
  animation: NewArticlesSkeleton-module__skeleton-loading___9jEt5 1.4s ease infinite;
}

.NewArticlesSkeleton-module__container___u-BCn {
  margin: 0 auto;
  display: block;
  width: 100%;
}

.NewArticlesSkeleton-module__articleList___wFMH9 {
  margin-top: 24px;
}

.NewArticlesSkeleton-module__articleItem___hMJx4 {
  display: grid;
  grid-template-columns: minmax(80px, 140px) 1fr;
  gap: 20px;
  padding: 10px 0;
  align-items: center;
}

.NewArticlesSkeleton-module__imageSkeleton___NkOtt {
  min-width: 80px;
  min-height: 80px;
  max-width: 140px;
  max-height: 140px;
  border-radius: 16px;
  aspect-ratio: 1/1;
}

.NewArticlesSkeleton-module__contentSkeleton___3u98S {
  min-width: 200px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 140px;
  gap: 8px;
}

.NewArticlesSkeleton-module__featuresSkeleton___lcdhR {
  height: 12px;
  width: 80px;
  border-radius: 4px;
}

.NewArticlesSkeleton-module__titleSkeleton___icMOS {
  height: 20px;
  width: 100%;
  border-radius: 4px;
}
@media (max-width: 460px) {
  .NewArticlesSkeleton-module__titleSkeleton___icMOS {
    height: 16px;
  }
}

.NewArticlesSkeleton-module__descriptionSkeleton___oZotu {
  height: 40px;
  width: 100%;
  border-radius: 4px;
}
@media (max-width: 460px) {
  .NewArticlesSkeleton-module__descriptionSkeleton___oZotu {
    height: 36px;
  }
}

.NewArticlesSkeleton-module__dateSkeleton___0rXqM {
  height: 12px;
  width: 100px;
  border-radius: 4px;
  margin-top: auto;
}

.NewArticlesSkeleton-module__showAllButton___sMlwP {
  margin-top: 24px;
  text-align: center;
}

.NewArticlesSkeleton-module__buttonSkeleton___8WwIx {
  height: 20px;
  width: 150px;
  border-radius: 4px;
  display: inline-block;
}.SpotBreadcrumbs-module__link___fRsE0 {
  color: #333;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(51, 51, 51, 0.5);
}
.SpotBreadcrumbs-module__link___fRsE0:visited {
  color: #333;
}
.SpotBreadcrumbs-module__link___fRsE0:hover {
  text-decoration-thickness: 2px;
  text-decoration-color: #333;
}.NotFound-module__pageContainer___82TsJ {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.NotFound-module__backgroundContainer___IRJ42 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-image: url("/images/hero-background.webp");
  background-size: cover;
  background-position: center;
  z-index: -1;
}

.NotFound-module__contentWrapper___yX-GY {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

.NotFound-module__container___FgLBf {
  background: #fff;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  flex-grow: 1;
}

.NotFound-module__notFound___DkkxF {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 48px 16px;
}

.NotFound-module__notFoundImage___inu0u {
  width: 222px;
  height: 128px;
}

.NotFound-module__notFoundText___Zn4-c {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}

.NotFound-module__introduceApp___WYqNB {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 32px;
}

.NotFound-module__footer___-aBjf {
  background: #fff;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 24px 16px;
}

.NotFound-module__spacer___CzHub {
  margin-bottom: 32px;
}.SpotListSkeleton-module__skeletonContainer___2HfJx {
  padding: 16px;
}

.SpotListSkeleton-module__searchTextInput___hyjbE {
  margin: 16px;
}

.SpotListSkeleton-module__findSpotByApp___5H90r {
  margin: 0 16px;
}

.SpotListSkeleton-module__searchResultHeading___DsMNk {
  margin-left: 16px;
}

.SpotListSkeleton-module__spotList___B11aW {
  width: 100%;
}

.SpotListSkeleton-module__paginationContainer___KyYP- {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}.AppCatchphrase-module__catchphraseStyle___bmQqU {
  font-size: min(2.9vw, 14px);
  font-weight: bold;
  line-height: 1;
  text-align: center;
  color: #000;
  margin: 1em 0;
  padding: 8px 12px;
  border-radius: 4px;
}

.AppCatchphrase-module__emphasisStyle___dhVTg {
  display: block;
  margin-bottom: 0.5em;
  font-size: min(2.9vw, 14px);
  font-weight: bold;
  color: #000;
}.AutoHiddenHeader-module__container___XtDdz {
  display: flex;
  position: relative;
  background-color: #e7e632;
  height: 70px;
  justify-content: center;
  align-items: center;
  border-bottom: 1px solid #eee;
  background-size: cover;
  background-position: center;
}

.AutoHiddenHeader-module__responsiveContainerSmartphone___HqsZt {
  padding: 0 10px;
}
.AutoHiddenHeader-module__responsiveContainerDesktop___ObHiT {
  padding: 0 20px;
}

.AutoHiddenHeader-module__content___5YBY6 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  max-width: 1200px;
  padding: 16px;
  position: relative;
  flex-direction: row;
}

.AutoHiddenHeader-module__logoContainer___8e0uT {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  top: 5px;
}

.AutoHiddenHeader-module__logo___jxuX3 {
  height: 40px;
}

.AutoHiddenHeader-module__downloadLinkContainer___xpzEh {
  display: flex;
  align-items: center;
}

.AutoHiddenHeader-module__flexRight___nixDi {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  left: 10px;
}

.AutoHiddenHeader-module__searchIconContainerSmartphone___kWoBT {
  width: 60px;
  height: 60px;
}
.AutoHiddenHeader-module__searchIconContainerSmartphone___kWoBT svg {
  width: 40px;
  height: 40px;
}
.AutoHiddenHeader-module__searchIconContainerDesktop___p5leO {
  width: 60px;
  height: 60px;
  cursor: pointer;
}
.AutoHiddenHeader-module__searchIconContainerDesktop___p5leO svg {
  width: 50px;
  height: 50px;
}

.AutoHiddenHeader-module__autoHiddenHeader___Qkct7 {
  position: fixed;
  top: 0;
  width: min(100%, 696px);
  height: 70px;
  z-index: 1400;
  transform: translateY(0);
  overflow: hidden;
  justify-self: center;
  align-self: center;
}

.AutoHiddenHeader-module__dissapear___QeipV {
  transform: translateY(-70px);
  opacity: 0;
}

.AutoHiddenHeader-module__appear___chbAb {
  transform: translateY(0);
  opacity: 1;
}

.AutoHiddenHeader-module__normalHeader___kIFsR {
  width: 100%;
  position: absolute;
  bottom: 0;
}.SpotLocationLayout-module__pageContainer___aVMZ- {
  position: relative;
  width: 100%;
  overflow-x: hidden;
}

.SpotLocationLayout-module__backgroundContainer___CZZ-C {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-image: url(/images/hero-background.webp);
  background-size: cover;
  background-position: center;
  z-index: -1;
}
@media (max-width: 460px) {
  .SpotLocationLayout-module__backgroundContainer___CZZ-C {
    display: none;
  }
}

.SpotLocationLayout-module__contentWrapper___eCh65 {
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

.SpotLocationLayout-module__container___1YthY {
  background: #fff;
  width: 100%;
  max-width: 696px;
  margin: 0 auto;
  flex-grow: 1;
}

.SpotLocationLayout-module__horizontalSpacer___Dqj8G {
  padding: 0 24px;
}
@media (max-width: 460px) {
  .SpotLocationLayout-module__horizontalSpacer___Dqj8G {
    padding: 0 16px;
  }
}

.SpotLocationLayout-module__breadcrumbs___6MwtV {
  margin: 16px;
}

.SpotLocationLayout-module__pagination___FEtAx {
  display: flex;
  justify-content: center;
  margin: 20px 0;
}

.SpotLocationLayout-module__spotCountsContainer___cOt5Y {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-top: 4px;
  margin-bottom: 8px;
}

.SpotLocationLayout-module__spotCountsLabel___ZapwS {
  font-size: 12px;
  color: #9c9c9c;
  line-height: 18px;
}

.SpotLocationLayout-module__introduceApp___itdYW {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 32px;
}.spots-module__spotCountsLabel___pXlkq {
  font-size: 12px;
  color: #9c9c9c;
  line-height: 18px;
}.BenefitChip-module__chip___l6vl- {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 10px;
  border-radius: 16px;
  font-size: 11px;
  font-weight: 600;
  transition: all 0.2s ease;
  border: none;
  cursor: default;
  user-select: none;
  white-space: nowrap;
  flex-shrink: 0;
  min-width: 0;
  width: fit-content;
  overflow: hidden;
  box-sizing: border-box;
}

.BenefitChip-module__clickable___FVoo0 {
  cursor: pointer;
}

.BenefitChip-module__clickable___FVoo0:hover {
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.BenefitChip-module__clickable___FVoo0:active {
  transform: translateY(0);
}

.BenefitChip-module__clickable___FVoo0:focus-visible {
  outline: 2px solid #005fcc;
  outline-offset: 2px;
  box-shadow: 0 0 0 4px rgba(0, 95, 204, 0.2);
}

.BenefitChip-module__icon___0PM4I {
  font-size: 11px;
  flex-shrink: 0;
}

.BenefitChip-module__label___giaps {
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

.BenefitChip-module__selected___cCNl0 {
  box-shadow: 0 0 0 2px currentColor;
}.BenefitChipList-module__list___QYewQ {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: flex-start;
  margin-top: 6px;
  margin-bottom: 6px;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (min-width: 768px) {
  .BenefitChipList-module__list___QYewQ {
    gap: 8px;
  }
}

.BenefitChipList-module__listItem___MJbBj {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.SpotLink-module__container___kFmex {
  display: flex;
  max-width: 100%;
}
.SpotLink-module__container___kFmex:first-child > a {
  padding-top: 0;
}

.SpotLink-module__linkContainer___ssbY5 {
  display: grid;
  gap: 10px;
  text-decoration: none;
  color: #000000;
  -webkit-tap-highlight-color: transparent;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-bottom: 5px;
  padding-right: 10px;
  box-sizing: border-box;
  min-width: 0;
  grid-template-columns: 140px 1fr;
}
.SpotLink-module__linkContainer___ssbY5:link, .SpotLink-module__linkContainer___ssbY5:visited {
  color: #000000;
}
.SpotLink-module__linkContainer___ssbY5:hover {
  background-color: #f9fafb;
  color: #000000;
}
.SpotLink-module__linkContainer___ssbY5:active {
  color: #000000;
}
@media (max-width: 460px) {
  .SpotLink-module__linkContainer___ssbY5 {
    grid-template-columns: 140px 1fr;
    grid-template-rows: 1fr;
    margin-left: 5px;
    align-items: center;
    grid-auto-flow: column;
  }
}
@media (min-width: 461px) {
  .SpotLink-module__linkContainer___ssbY5 {
    grid-template-columns: 250px 1fr;
    grid-template-rows: 1fr;
    margin-left: 10px;
    align-items: center;
    grid-auto-flow: column;
  }
}

.SpotLink-module__imageContainer___AHhv- {
  overflow: hidden;
  position: relative;
  z-index: 1;
  border-radius: 13px;
  grid-area: 1/1/2/2;
}
@media (max-width: 460px) {
  .SpotLink-module__imageContainer___AHhv- {
    width: 140px;
    height: auto;
    min-width: 140px;
    min-height: 80px;
    max-width: 140px;
    max-height: 184px;
    aspect-ratio: 1/1.296;
  }
}
@media (min-width: 461px) {
  .SpotLink-module__imageContainer___AHhv- {
    width: 250px;
    height: auto;
    min-width: 250px;
    min-height: 200px;
    max-width: 250px;
    max-height: 250px;
    aspect-ratio: 1/1;
  }
}
.SpotLink-module__imageContainer___AHhv-.SpotLink-module__imagePlaceholder___wlUwO {
  background-color: #e5e5e5;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 460px) {
  .SpotLink-module__imageContainer___AHhv-.SpotLink-module__imagePlaceholder___wlUwO {
    width: 140px;
    height: auto;
    min-width: 140px;
    min-height: 80px;
    max-width: 140px;
    max-height: 184px;
    aspect-ratio: 1/1.296;
  }
}
@media (min-width: 461px) {
  .SpotLink-module__imageContainer___AHhv-.SpotLink-module__imagePlaceholder___wlUwO {
    width: 250px;
    height: auto;
    min-width: 250px;
    min-height: 200px;
    max-width: 250px;
    max-height: 250px;
    aspect-ratio: 1/1;
  }
}
.SpotLink-module__imageContainer___AHhv-.SpotLink-module__imagePlaceholder___wlUwO::before {
  content: "📷";
  font-size: 24px;
  color: #999;
}
@media (max-width: 460px) {
  .SpotLink-module__imageContainer___AHhv-.SpotLink-module__imagePlaceholder___wlUwO::before {
    font-size: 20px;
  }
}

.SpotLink-module__image___OOX9d {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.SpotLink-module__content___s5wks {
  min-width: 100px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  grid-area: 1/2/2/3;
}

.SpotLink-module__title___EsVzr {
  font-weight: 600;
  line-height: 21px;
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (max-width: 460px) {
  .SpotLink-module__title___EsVzr {
    font-size: 12px;
  }
}
@media (min-width: 461px) {
  .SpotLink-module__title___EsVzr {
    font-size: 18px;
  }
}

.SpotLink-module__spotInfoContainer___FGnsY {
  margin-top: 8px;
}.SpotLinkAccess-module__iconWrapper___FHHfS {
  align-items: center;
  margin-right: 4px;
  display: flex;
  gap: 4px;
  height: 18px;
}

.SpotLinkAccess-module__accessContainer___CdglJ {
  height: 18px;
  align-items: center;
  display: flex;
}
@media (max-width: 460px) {
  .SpotLinkAccess-module__accessContainer___CdglJ {
    margin-bottom: 0;
  }
}
@media (min-width: 461px) {
  .SpotLinkAccess-module__accessContainer___CdglJ {
    margin-bottom: 8px;
  }
}

.SpotLinkAccess-module__access___MUJ6S {
  color: #636262;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media (max-width: 460px) {
  .SpotLinkAccess-module__access___MUJ6S {
    font-size: 10px;
  }
}
@media (min-width: 461px) {
  .SpotLinkAccess-module__access___MUJ6S {
    font-size: 14px;
  }
}.SpotLinkAddress-module__iconWrapper___79Qxb {
  align-items: center;
  margin-right: 4px;
  display: flex;
  gap: 4px;
  height: 18px;
}

.SpotLinkAddress-module__addressOverviewContainer___q5ntn {
  height: 18px;
}
@media (max-width: 460px) {
  .SpotLinkAddress-module__addressOverviewContainer___q5ntn {
    margin-bottom: 0;
  }
}
@media (min-width: 461px) {
  .SpotLinkAddress-module__addressOverviewContainer___q5ntn {
    margin-bottom: 8px;
  }
}

.SpotLinkAddress-module__addressOverview___9rsqT {
  color: #636262;
}
@media (max-width: 460px) {
  .SpotLinkAddress-module__addressOverview___9rsqT {
    font-size: 10px;
  }
}
@media (min-width: 461px) {
  .SpotLinkAddress-module__addressOverview___9rsqT {
    font-size: 14px;
  }
}.SpotLinkCatchphrase-module__catchPhrase___ACUqS {
  color: #333333;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 460px) {
  .SpotLinkCatchphrase-module__catchPhrase___ACUqS {
    font-size: 10px;
    margin: 0;
  }
}
@media (min-width: 461px) {
  .SpotLinkCatchphrase-module__catchPhrase___ACUqS {
    font-size: 14px;
    margin: 5px 0;
  }
}.BaseSpotFeaturedTags-module__container___0-Q-b {
  width: 100%;
  margin: 2px 0;
}

.BaseSpotFeaturedTags-module__tagsWrapper___VvkD1 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.BaseSpotFeaturedTags-module__tagItem___Q-Qhv {
  display: inline-flex;
  align-items: center;
  padding: 3px 12px;
  border-radius: 16px;
  font-size: clamp(0.2rem, 2rem + 0.9vw, 0.675rem);
  font-weight: bold;
  text-decoration: none;
}
.BaseSpotFeaturedTags-module__tagItem___Q-Qhv:hover {
  text-decoration: none;
}

.BaseSpotFeaturedTags-module__icon___wgR-a {
  margin-right: 6px;
  font-size: 14px;
}

.BaseSpotFeaturedTags-module__tagName___tt5yt {
  line-height: 1.4;
}.SolidSpotFeaturedTags-module__solidTagItem___-VYSK {
  background-color: #E7E632;
  color: #333333;
}.SpotLinkFeaturedTags-module__tagsContainer___wg8XS {
  border-radius: 4px;
  pointer-events: none;
}.SpotLinkLocationTag-module__iconWrapper___maQIh {
  align-items: center;
  margin-right: 4px;
  display: flex;
  gap: 4px;
  height: 18px;
}

.SpotLinkLocationTag-module__spotLocationTagContainer___o6L8I {
  height: 18px;
  align-items: center;
  display: flex;
}
@media (max-width: 460px) {
  .SpotLinkLocationTag-module__spotLocationTagContainer___o6L8I {
    margin-bottom: 0;
  }
}
@media (min-width: 461px) {
  .SpotLinkLocationTag-module__spotLocationTagContainer___o6L8I {
    margin-bottom: 8px;
  }
}

.SpotLinkLocationTag-module__addressOverview___0no3N {
  color: #636262;
}
@media (max-width: 460px) {
  .SpotLinkLocationTag-module__addressOverview___0no3N {
    font-size: 10px;
  }
}
@media (min-width: 461px) {
  .SpotLinkLocationTag-module__addressOverview___0no3N {
    font-size: 14px;
  }
}.SpotLinkRating-module__iconWrapper___Th-GB {
  align-items: center;
  margin-right: 4px;
  display: flex;
  gap: 4px;
  height: 18px;
}
@media (max-width: 460px) {
  .SpotLinkRating-module__iconWrapper___Th-GB {
    font-size: 12px;
  }
}
@media (min-width: 461px) {
  .SpotLinkRating-module__iconWrapper___Th-GB {
    font-size: 16px;
  }
}

.SpotLinkRating-module__ratingContainer___WG2nP {
  height: 18px;
  align-items: center;
  display: flex;
}

.SpotLinkRating-module__score___18h3t {
  color: #636262;
}
@media (max-width: 460px) {
  .SpotLinkRating-module__score___18h3t {
    font-size: 10px;
  }
}
@media (min-width: 461px) {
  .SpotLinkRating-module__score___18h3t {
    font-size: 14px;
  }
}

.SpotLinkRating-module__reviewCount___VoGKM {
  color: #636262;
}
@media (max-width: 460px) {
  .SpotLinkRating-module__reviewCount___VoGKM {
    font-size: 10px;
  }
}
@media (min-width: 461px) {
  .SpotLinkRating-module__reviewCount___VoGKM {
    font-size: 14px;
  }
}.index-module__container___5COOw {
  padding: 16px;
  max-width: 782px;
  margin: 1rem auto;
}

.index-module__heading1___GHipl {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.7;
  color: #333;
  margin-bottom: 16px;
}

.index-module__infoPanel___i5f8t {
  background-color: rgba(236, 235, 50, 0.1019607843);
  padding: 24px 16px;
}

.index-module__text___KwN0p {
  margin: 0;
  font-size: 14px;
}

.index-module__navList___E1cnq {
  list-style: none;
  padding: 0;
}

.index-module__navListItem___GVYev {
  font-size: 14px;
  padding: 16px 24px 16px 0;
  position: relative;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  color: #333;
  text-decoration: none;
}
.index-module__navListItem___GVYev:hover {
  text-decoration: underline;
}

.index-module__icon___VYmhu {
  width: 24px;
  height: 24px;
  margin-right: 8px;
}

.index-module__chevronIcon___I-i7I {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}.AreaTagSearchByArea-module__container___QnvRv {
  margin: 0 auto;
  display: block;
  width: 100%;
}

.AreaTagSearchByArea-module__regionListContainer___EFx8B {
  flex-direction: column;
  align-items: center;
}.AccordionDetailsHeadingLink-module__container___g30qM {
  width: 100%;
  display: flex;
  align-items: center;
}

.AccordionDetailsHeadingLink-module__line___9UlEr {
  flex-grow: 1;
  height: 1px;
  background-color: #c5c5c5;
  margin-left: 16px;
}.AccordionDetailsLinks-module__container___601oP {
  list-style-type: none;
  padding: 0;
  margin: 16px 0 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.AccordionDetailsLinks-module__containerFullWidth___qcMwK {
  list-style-type: none;
  padding: 0;
  margin: 16px 0 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}

.AccordionDetailsLinks-module__listItem___-kKpb {
  margin: 0;
}.FilteredAreaLink-module__link___3J-QA {
  color: black;
  font-size: 14px;
  text-decoration: underline;
  text-decoration-color: #999999;
  text-decoration-thickness: 1px;
  display: inline-block;
}

.FilteredAreaLink-module__disabled___nyCX- {
  color: #999999;
  cursor: not-allowed;
  text-decoration: none;
  pointer-events: none;
}.FilteredAreaList-module__container___0d2bM {
  margin-bottom: 16px;
  width: 100%;
}

.FilteredAreaList-module__containerNested___s2T5M {
  background-color: #eeeeee;
  margin-bottom: 16px;
  width: 100%;
}

.FilteredAreaList-module__prefectureLink___0QPKI {
  font-size: 18px;
  font-weight: bold;
  color: black;
  text-align: left;
  padding-right: 16px;
  text-decoration: underline;
  text-decoration-color: #999999;
  text-decoration-thickness: 1px;
  display: inline-block;
}

.FilteredAreaList-module__accordion___aVUcZ {
  width: 100%;
  border: none;
  box-shadow: none;
}

.FilteredAreaList-module__nationalLinkSeparator___JKL-L {
  width: 100%;
  height: 1px;
  background-color: #c5c5c5;
}.AreaTagSearchNationalLink-module__container___qIrSu {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  background-color: #eeeeee;
}

.AreaTagSearchNationalLink-module__link___q-Feh {
  font-size: 18px;
  font-weight: bold;
  color: black;
  text-align: left;
  padding-right: 16px;
  text-decoration: underline;
  text-decoration-color: #999999;
  text-decoration-thickness: 1px;
  display: inline-block;
}.AreaTagSearchRegionLink-module__container___VHIB2 {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  background-color: #eeeeee;
}

.AreaTagSearchRegionLink-module__link___g-Km7 {
  font-size: 18px;
  font-weight: bold;
  color: black;
  text-align: left;
  padding-right: 16px;
  text-decoration: underline;
  text-decoration-color: #999999;
  text-decoration-thickness: 1px;
  display: inline-block;
}.PrefectureLink-module__prefectureLink___NKirX {
  font-size: 18px;
  font-weight: bold;
  color: black;
  text-align: left;
  padding-right: 16px;
  text-decoration: underline;
  text-decoration-color: #999999;
  text-decoration-thickness: 1px;
  display: inline-block;
}

.PrefectureLink-module__disabledLink___Y7ES9 {
  color: #999999;
  cursor: default;
  pointer-events: none;
  text-decoration: none;
}

.PrefectureLink-module__line___bUkCS {
  flex-grow: 1;
  height: 1px;
  background-color: #c5c5c5;
  margin-left: 16px;
}.AccordionSummaryText-module__heading___jCfGc {
  margin: 0;
  font-weight: bold;
}.FilteredRegionAccordionHeader-module__text___WHK1b {
  font-size: 18px;
}

.FilteredRegionAccordionHeader-module__link___c5Zd7 {
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  color: #000000;
  -webkit-tap-highlight-color: transparent;
}
.FilteredRegionAccordionHeader-module__link___c5Zd7:link, .FilteredRegionAccordionHeader-module__link___c5Zd7:visited {
  color: #000000;
}
.FilteredRegionAccordionHeader-module__link___c5Zd7:hover {
  border-bottom-color: rgba(0, 0, 0, 0.4);
  color: #000000;
}
.FilteredRegionAccordionHeader-module__link___c5Zd7:active {
  color: #000000;
}.FilteredRegionList-module__areaLink___cbh4G, .FilteredRegionList-module__prefectureLink___6WYPr {
  color: #000000;
  text-decoration: underline;
  text-decoration-color: #999999;
  text-decoration-thickness: 1px;
  display: inline-block;
}

.FilteredRegionList-module__accordion___7C3Zq {
  width: 100%;
  border: none;
  box-shadow: none;
  align-self: stretch;
}

.FilteredRegionList-module__prefectures___XzH4Y {
  margin-bottom: 16px;
}

.FilteredRegionList-module__prefectureLink___6WYPr {
  font-size: 18px;
  font-weight: bold;
  padding-right: 16px;
}

.FilteredRegionList-module__areaLink___cbh4G {
  font-size: 14px;
}

.FilteredRegionList-module__borderBottom___9Lkjb {
  width: 95%;
  margin: 0 auto;
  border: none;
  border-bottom: 2px solid #eaeaea;
}

.FilteredRegionList-module__link___hygN2 {
  text-decoration: none;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  color: #000000;
  -webkit-tap-highlight-color: transparent;
}
.FilteredRegionList-module__link___hygN2:link, .FilteredRegionList-module__link___hygN2:visited {
  color: #000000;
}
.FilteredRegionList-module__link___hygN2:hover {
  border-bottom-color: rgba(0, 0, 0, 0.4);
  color: #000000;
}
.FilteredRegionList-module__link___hygN2:active {
  color: #000000;
}

.FilteredRegionList-module__regionListContainer___fCEEX {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
}.SearchByAccordion-module__container___I-MrQ, .SearchByAccordion-module__containerDesktop___IPyQy, .SearchByAccordion-module__containerMobile___odjk7 {
  width: 100%;
  margin: 0 auto;
  display: block;
}

.SearchByAccordion-module__accordionListContainer___tjODv {
  display: flex;
  flex-direction: column;
  align-items: center;
}.AccordionList-module__accordion___sfFKY {
  width: 100%;
}

.AccordionList-module__withBorder___c8PRk {
  border-bottom: solid 0.5px lightgray;
}

.AccordionList-module__featuredTagExamples___NXFpe {
  color: #676767;
  padding: 0px 16px;
  font-size: 0.6em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.AccordionList-module__linkWrapper___mekQz {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
}

.AccordionList-module__accordionHeaderText___HtA-B {
  font-size: 18px;
  text-decoration: underline;
  color: inherit;
}
.AccordionList-module__accordionHeaderText___HtA-B:hover {
  color: inherit;
  text-decoration: underline;
}
.AccordionList-module__accordionHeaderText___HtA-B:visited {
  color: inherit;
}
.AccordionList-module__accordionHeaderText___HtA-B:active {
  color: inherit;
}

.AccordionList-module__disabledFeaturedTagLink___LuhTz {
  text-decoration: none;
  pointer-events: none;
}.AreaTagSearchByLocation-module__container___qvJBT {
  width: 100%;
  margin: 0 auto;
  display: block;
}

.AreaTagSearchByLocation-module__categoryListContainer___HQW96 {
  display: flex;
  flex-direction: column;
  align-items: center;
}.CategoryAccordionHeader-module__text___u-jtj {
  font-size: 18px;
}

.CategoryAccordionHeader-module__linkWrapper___Xe51Z {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
}

.CategoryAccordionHeader-module__locationTags___0-zAJ {
  color: #676767;
  padding: 0px 16px;
  font-size: 0.6em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}.AreaTagSearchLocationTagList-module__accordion___8rGOd {
  width: 100%;
}

.AreaTagSearchLocationTagList-module__withBorder___gOpgc {
  border-bottom: solid 0.5px lightgray;
}.AreaTagSearchLocationTagSection-module__container___PSQo8 {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.AreaTagSearchLocationTagSection-module__link___nZXY9 {
  color: black;
  font-size: 14px;
  text-decoration: underline;
  text-decoration-color: #999999;
  text-decoration-thickness: 1px;
  display: inline-block;
  padding: 2px 12px 2px 0;
}

.AreaTagSearchLocationTagSection-module__disabled___RYaAZ {
  color: #cccccc;
  text-decoration: none;
  cursor: not-allowed;
  opacity: 0.4;
  pointer-events: none;
}
.AreaTagSearchLocationTagSection-module__disabled___RYaAZ:hover {
  color: #cccccc;
  text-decoration: none;
}.AreaTagSearchResultNotFound-module__container___BycGn {
  width: 90%;
  margin: 0 auto;
  text-align: center;
}

.AreaTagSearchResultNotFound-module__keyword___DmKFW {
  text-align: left;
  font-weight: bold;
  margin-bottom: 20px;
}

.AreaTagSearchResultNotFound-module__searchIconContainer___MJhoE {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background-color: #f0f0f0;
  margin: 0 auto 20px;
}

.AreaTagSearchResultNotFound-module__searchIcon___qCV7Y {
  font-size: 40px;
  color: #888;
}

.AreaTagSearchResultNotFound-module__descriptionContainer___QFhjz {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.AreaTagSearchResultNotFound-module__descriptionHeading___kRlHy {
  font-weight: bold;
  font-size: 18px;
}

.AreaTagSearchResultNotFound-module__descriptionText___kaHZv {
  color: #666;
}@keyframes ResponsiveModal-module__slideUp___lRj-r {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
@keyframes ResponsiveModal-module__fadeIn___pbped {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.ResponsiveModal-module__overlayBase___4DxcA, .ResponsiveModal-module__desktopOverlay___32GUB, .ResponsiveModal-module__mobileOverlay___NgaFg {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  display: flex;
  overflow: hidden;
}

.ResponsiveModal-module__mobileOverlay___NgaFg {
  align-items: flex-end;
  justify-content: center;
}

.ResponsiveModal-module__desktopOverlay___32GUB {
  align-items: center;
  justify-content: center;
  animation: ResponsiveModal-module__fadeIn___pbped 0.2s ease;
}

.ResponsiveModal-module__dialogBase___V7opU, .ResponsiveModal-module__desktopDialog___gRaL-, .ResponsiveModal-module__mobileDialog___kukRg {
  margin: 0;
  padding: 0;
  border: none;
  background-color: #fff;
  overflow: hidden;
  position: relative;
  box-sizing: border-box;
}

.ResponsiveModal-module__mobileDialog___kukRg {
  width: 100%;
  max-width: 500px;
  border-radius: 16px 16px 0 0;
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);
  animation: ResponsiveModal-module__slideUp___lRj-r 0.3s ease forwards;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}

.ResponsiveModal-module__desktopDialog___gRaL- {
  width: 500px;
  max-width: 90%;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
  max-height: 80vh;
  display: flex;
  flex-direction: column;
}

.ResponsiveModal-module__content___BsOB- {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.ResponsiveModal-module__content___BsOB- * {
  max-width: 100%;
  box-sizing: border-box;
}
.ResponsiveModal-module__content___BsOB- form {
  width: 100%;
  overflow-x: hidden;
}@keyframes AreaTagSearchInput-module__slideDown___ekBaA {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes AreaTagSearchInput-module__slideUp___A0ckM {
  0% {
    transform: translateY(100%);
  }
  100% {
    transform: translateY(0);
  }
}
.AreaTagSearchInput-module__container___sPcQl {
  display: flex;
  align-items: center;
  border: 1px solid #999a9a;
  padding: 12px 16px;
  position: relative;
  box-sizing: inherit;
  justify-content: center;
  width: clamp(140px, 50% - 10px, 300px);
}

.AreaTagSearchInput-module__icon___FLo3y {
  color: #999a9a;
  margin-right: 6px;
}

.AreaTagSearchInput-module__input___tz-Mf {
  flex: 1;
  border: none;
  outline: none;
  padding: 0;
  font-size: 16px;
  padding-right: 30px;
  min-width: 0;
}
.AreaTagSearchInput-module__input___tz-Mf::placeholder {
  color: #999a9a;
}

.AreaTagSearchInput-module__clearButton___WpakH {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-40%);
  z-index: 1;
}

.AreaTagSearchInput-module__clearIcon___2xb13 {
  color: #999a9a;
  font-size: 18px;
  line-height: 1;
}

.AreaTagSearchInput-module__searchWrapper___Qtp-I {
  display: flex;
  gap: clamp(8px, 2vw, 16px);
  flex-wrap: wrap;
  width: 100%;
  margin: 0 20px;
  flex: 1;
  box-sizing: inherit;
  justify-content: center;
}

.AreaTagSearchInput-module__selectorContainer___Kpl9O {
  position: relative;
  width: 100%;
}

.AreaTagSearchInput-module__outerContainer___hu5ty {
  display: flex;
  justify-content: center;
  width: 100%;
}

.AreaTagSearchInput-module__searchBox___iWQaW {
  display: flex;
  align-items: center;
  padding: 10px 15px;
  border: 1px solid #ddd;
  border-radius: 6px;
  background-color: #fff;
  cursor: pointer;
  transition: all 0.2s;
}
.AreaTagSearchInput-module__searchBox___iWQaW:hover {
  border-color: #aaa;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.AreaTagSearchInput-module__placeholderText___bJ34P {
  color: #333;
  flex-grow: 1;
}

.AreaTagSearchInput-module__dropdown___LcFiZ {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  max-height: 300px;
  overflow-y: auto;
  background-color: white;
  border: 1px solid #ddd;
  border-radius: 0 0 6px 6px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  z-index: 1000;
  margin-top: 2px;
  animation: AreaTagSearchInput-module__slideDown___ekBaA 0.2s ease;
}

.AreaTagSearchInput-module__optionsList___SVUDa {
  padding: 8px 0;
}

.AreaTagSearchInput-module__titleText___N8QLE {
  flex: 1;
}

.AreaTagSearchInput-module__optionList___mjoZN {
  list-style: none;
  margin: 0;
  padding: 0;
}

.AreaTagSearchInput-module__hamburgerMenuContainer___D5L27 {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.AreaTagSearchInput-module__hamburgerPanel___druU2 {
  width: 80%;
  max-width: 300px;
  background-color: #fff;
  border-radius: 8px;
  padding: 16px;
  position: relative;
}

.AreaTagSearchInput-module__hamburgerPanelClose___jazUs {
  position: absolute;
  top: 8px;
  right: 8px;
  font-size: 1.2rem;
  cursor: pointer;
}

.AreaTagSearchInput-module__radioGroup___Ahk0o {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 16px;
}

.AreaTagSearchInput-module__accordionWapper___g0OPB {
  width: 100%;
  background-color: #EEE;
  border-radius: 4px;
}

.AreaTagSearchInput-module__accordionPadding___s5Q8v {
  width: 100%;
  padding: 0px 16px;
}

.AreaTagSearchInput-module__overlay___h8yU- {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  overflow: hidden;
}

.AreaTagSearchInput-module__dialogOverlay___ELXm2 {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 9999;
  display: flex;
  justify-content: center;
  align-items: center;
}

.AreaTagSearchInput-module__radioBase___rDTSJ {
  appearance: none;
  width: 15px;
  height: 15px;
  border: 2px solid #ccc;
  border-radius: 50%;
  background-color: #fff;
  position: relative;
  cursor: pointer;
  transition: border-color 0.2s ease;
}

.AreaTagSearchInput-module__radioContainer___X6-uK {
  position: relative;
  width: 15px;
  height: 15px;
  border: 2px solid #333;
  border-radius: 50%;
  cursor: pointer;
}

.AreaTagSearchInput-module__sheet___jQMq- {
  width: 100%;
  max-width: 500px;
  background-color: #fff;
  border-radius: 16px 16px 0 0;
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);
  animation: AreaTagSearchInput-module__slideUp___A0ckM 0.3s ease forwards;
  height: 80vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: none;
  box-sizing: border-box;
}
.AreaTagSearchInput-module__sheet___jQMq- * {
  max-width: 100%;
  box-sizing: border-box;
}
.AreaTagSearchInput-module__sheet___jQMq- form {
  width: 100%;
  overflow-x: hidden;
}

.AreaTagSearchInput-module__dialogSheet___g1-G- {
  width: 100%;
  border-radius: 16px 16px 16px 16px;
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);
  height: 90vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-sizing: border-box;
}
.AreaTagSearchInput-module__dialogSheet___g1-G- * {
  max-width: 100%;
  box-sizing: border-box;
}
.AreaTagSearchInput-module__dialogSheet___g1-G- form {
  width: 100%;
  overflow-x: hidden;
}

.AreaTagSearchInput-module__dialog___YE43K {
  width: 500px;
  max-width: 90%;
  background-color: #fff;
  border-radius: 8px;
  max-height: 80vh;
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
  margin: 0;
  padding: 0;
  border: none;
  position: relative;
  box-sizing: border-box;
}
.AreaTagSearchInput-module__dialog___YE43K * {
  max-width: 100%;
  box-sizing: border-box;
}
.AreaTagSearchInput-module__dialog___YE43K form {
  width: 100%;
  overflow-x: hidden;
}

.AreaTagSearchInput-module__sheetContent___pWK7s {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.AreaTagSearchInput-module__body___EaKTk {
  flex: 1 1 auto;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 0 8px;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  box-sizing: border-box;
}

.AreaTagSearchInput-module__buttonContainer___f90Iv {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-bottom: 10px;
  justify-content: space-between;
  margin: 0 10px;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  overflow-x: hidden;
  width: calc(100% - 20px);
  box-sizing: border-box;
}

.AreaTagSearchInput-module__roundedButton___VCAUx {
  padding: 2px 8px;
  border: 1px solid #333333;
  border-radius: 4px;
  flex: 1;
  min-width: 140px;
  max-width: calc(50% - 25px);
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s;
  height: 40px;
}

.AreaTagSearchInput-module__sortButton___qoQLf {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px;
  border: 1px solid #333333;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s;
  height: 40px;
  flex-shrink: 0;
  min-width: 40px;
}
.AreaTagSearchInput-module__sortButton___qoQLf:hover {
  background-color: #e8e8e8;
}

.AreaTagSearchInput-module__sortIcon___ClgP7 {
  width: 16px;
  height: 16px;
  margin-right: 4px;
}

.AreaTagSearchInput-module__buttonContent___bXQ-C {
  display: flex;
  align-items: center;
  width: 100%;
}

.AreaTagSearchInput-module__iconWrapper___TqG9r {
  margin-right: 2px;
  font-size: 18px;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.AreaTagSearchInput-module__textWrapper___TEzRy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  overflow: hidden;
  margin-left: 4px;
  justify-content: space-between;
  width: 100%;
}

.AreaTagSearchInput-module__topText___gMdga {
  margin: 0;
  font-size: clamp(6px, 0.7vw + 4px, 8px);
  color: #666;
  overflow: hidden;
  flex-grow: 1;
}

.AreaTagSearchInput-module__bottomText___OIIml {
  margin: 0;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  text-align: left;
  display: block;
  color: #666;
}

.AreaTagSearchInput-module__notSelectedAreaFilterText___V9J-b {
  margin: 0;
  font-size: clamp(0.425rem, -0.1rem + 3vw, 0.725rem);
  margin-left: 4px;
  color: #333;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  max-width: 100%;
}

.AreaTagSearchInput-module__notSelectedTagFilterText___VTcyY {
  margin: 0;
  font-size: clamp(0.315rem, -0.245rem + 2.9vw, 0.725rem);
  margin-left: 4px;
  color: #333;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.AreaTagSearchInput-module__orderConditionSheet___F0k07 {
  width: 100%;
  background-color: #fff;
  border-radius: 16px 16px 0 0;
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.15);
  animation: AreaTagSearchInput-module__slideUp___A0ckM 0.3s ease forwards;
  max-height: 42vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.AreaTagSearchInput-module__areaDescriptionContainer___Ug5JZ {
  position: relative;
}

.AreaTagSearchInput-module__areaDescriptionTitle___YmiSB {
  font-size: clamp(0.575rem, 0.729rem + 1.8vw, 1.25rem);
  padding: 5px 10px;
}

.AreaTagSearchInput-module__areaDescription___l-ft9 {
  font-size: 12px;
  color: #333;
  line-height: 1.5;
  display: inline;
  margin-right: 4px;
}

.AreaTagSearchInput-module__collapsed___Gr2Hc {
  display: inline-block;
  width: calc(100% - 70px);
  max-height: 3em;
  overflow: hidden;
  text-overflow: ellipsis;
  position: relative;
}
.AreaTagSearchInput-module__collapsed___Gr2Hc::after {
  content: "...";
  position: absolute;
  right: 0;
  bottom: 0;
}

.AreaTagSearchInput-module__readMoreButton___NXXWD {
  background: none;
  border: none;
  color: #0066cc;
  padding: 0;
  cursor: pointer;
  font-size: 12px;
  display: inline;
  vertical-align: bottom;
}

.AreaTagSearchInput-module__descriptionContainer___RCKN8 {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

.AreaTagSearchInput-module__link___uGjnf {
  display: flex;
  gap: 48px;
  color: #333333;
  font-size: clamp(13px, 1.7vw + 6px, 16px);
}

.AreaTagSearchInput-module__breadcrumbs___w40AF {
  font-size: clamp(0.5rem, 0.729rem + 0.78vw, 1rem) !important;
  padding: 8px 8px 0px 10px;
}

.AreaTagSearchInput-module__descriptionContentsContainer___2iPbf {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 0px 8px 0px 10px;
  margin-bottom: 8px;
}

.AreaTagSearchInput-module__inlineReadMoreButton___RAiH2 {
  display: inline;
  border: none;
  background: none;
  color: #6A6A6A;
  font-weight: bold;
  cursor: pointer;
  padding: 0 4px;
  margin-left: 4px;
  text-decoration: underline;
}
.AreaTagSearchInput-module__inlineReadMoreButton___RAiH2:hover {
  color: #004080;
}

.AreaTagSearchInput-module__ellipsis___OLy6M {
  display: inline;
}

.AreaTagSearchInput-module__inlineArrowIcon___OietZ {
  display: inline-flex;
  vertical-align: middle;
}

.AreaTagSearchInput-module__singleLineWrapper___-YU-E {
  overflow: hidden;
  flex-grow: 1;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  min-width: 0;
}.ExpandableText-module__container___Vo-3s {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.ExpandableText-module__text___AI5Rl {
  font-size: 12px;
  color: #333;
  line-height: 1.5;
  display: inline;
  margin: 0;
}

.ExpandableText-module__ellipsis___vdaQl {
  display: inline;
}

.ExpandableText-module__toggleButton___zua9R {
  display: inline;
  border: none;
  background: none;
  color: #6A6A6A;
  font-weight: bold;
  cursor: pointer;
  padding: 0 4px;
  margin-left: 4px;
  text-decoration: underline;
  font-size: 12px;
}
.ExpandableText-module__toggleButton___zua9R:hover {
  color: #004080;
}.FilterButton-module__filterButton___t-rh1 {
  padding: 2px 8px;
  border: 1px solid #333333;
  border-radius: 4px;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.3s;
  height: 40px;
  background-color: transparent;
}
.FilterButton-module__filterButton___t-rh1:hover {
  background-color: #f5f5f5;
}

.FilterButton-module__buttonContent___vpNoD {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 2px;
}

.FilterButton-module__iconWrapper___WUTyt {
  font-size: 18px;
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.FilterButton-module__textWrapper___9hXJc {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  overflow: hidden;
  margin-left: 4px;
  justify-content: center;
  flex: 1;
  min-width: 0;
}

.FilterButton-module__label___L-2uo {
  margin: 0;
  font-size: clamp(6px, 0.7vw + 4px, 8px);
  color: #666;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%;
  text-align: left;
}

.FilterButton-module__valueWrapper___eJQAj {
  overflow: hidden;
  width: 100%;
}

.FilterButton-module__value___sqFdX {
  margin: 0;
  font-size: 14px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: 100%;
  text-align: left;
  display: block;
  color: #666;
}

.FilterButton-module__placeholderWrapper___hFZON {
  overflow: hidden;
  width: 100%;
  display: flex;
  align-items: center;
}

.FilterButton-module__placeholder___bTSjU {
  margin: 0;
  font-size: clamp(0.315rem, -0.245rem + 2.9vw, 0.725rem);
  margin-left: 4px;
  color: #333;
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}

.FilterButton-module__arrowIcon___uCnSC {
  display: inline-flex;
  vertical-align: middle;
  flex-shrink: 0;
  margin-left: auto;
}.AreaSearchHeader-module__header___3e8jf {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #eee;
  padding: 10px 20px;
  flex: 0 0 auto;
  position: relative;
}

.AreaSearchHeader-module__backButton___QkoSA {
  cursor: pointer;
  padding: 8px;
  z-index: 2;
  background: none;
  border: none;
  color: #000;
  display: flex;
  align-items: center;
  transition: background-color 0.2s ease;
}
.AreaSearchHeader-module__backButton___QkoSA:hover {
  background-color: #f5f5f5;
  border-radius: 4px;
}

.AreaSearchHeader-module__title___E70GB {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  font-weight: bold;
  text-align: center;
  z-index: 1;
}

.AreaSearchHeader-module__closeButton___4h23I {
  cursor: pointer;
  z-index: 2;
}.PrefectureList-module__optionContainer___8HuJ5 {
  align-items: center;
  padding: 12px 16px;
  position: relative;
  box-sizing: border-box;
  justify-content: center;
  width: 100%;
  overflow-x: hidden;
}

.PrefectureList-module__option___DhPES {
  cursor: pointer;
  color: #000000;
  -webkit-tap-highlight-color: transparent;
  background: none;
  border: none;
  width: 100%;
  text-align: left;
  font-size: inherit;
  font-family: inherit;
  padding: 8px 0;
}
.PrefectureList-module__option___DhPES:link, .PrefectureList-module__option___DhPES:visited {
  color: #000000;
}
.PrefectureList-module__option___DhPES:hover {
  background-color: #f5f5f5;
  color: #000000;
}
.PrefectureList-module__option___DhPES:active {
  color: #000000;
}

.PrefectureList-module__radioOption___pUBha {
  display: flex;
  align-items: center;
  padding: 4px;
  cursor: pointer;
  border-radius: 6px;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.PrefectureList-module__radioOption___pUBha:hover {
  background-color: #f9f9f9;
}

.PrefectureList-module__subAreaToggle___bJnQR {
  margin-left: auto;
  padding-left: 8px;
  font-size: 12px;
  cursor: pointer;
}

.PrefectureList-module__subAreaContainer___l82ZO {
  margin: 0 0 8px 8px;
}

.PrefectureList-module__subAreaOption___98f7w {
  padding: 4px 0;
}.RadioOption-module__radioOption___Wd10m {
  display: flex;
  align-items: center;
  padding: 4px;
  cursor: pointer;
  border-radius: 6px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.RadioOption-module__radioOption___Wd10m:hover {
  background-color: #f9f9f9;
}

.RadioOption-module__radioInput___-0wwD {
  margin-right: 8px;
}

.RadioOption-module__radioChecked___Xg8kM {
  width: 15px;
  height: 15px;
  background-color: #000;
  border: 2px solid #333;
  border-radius: 50%;
  position: relative;
  appearance: none;
}
.RadioOption-module__radioChecked___Xg8kM::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  border-radius: 9999px;
  background-color: #ffffff;
}.RegionList-module__optionContainer___-4yAI {
  align-items: center;
  padding: 12px 16px;
  position: relative;
  box-sizing: border-box;
  justify-content: center;
  width: 100%;
  overflow-x: hidden;
}

.RegionList-module__option___njkrL {
  cursor: pointer;
}
.RegionList-module__option___njkrL:hover {
  background-color: #f5f5f5;
}

.RegionList-module__radioOption___9ffAv {
  display: flex;
  align-items: center;
  padding: 4px;
  cursor: pointer;
  border-radius: 6px;
  font-weight: bold;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.RegionList-module__radioOption___9ffAv:hover {
  background-color: #f9f9f9;
}.AnimatedNumber-module__animatedNumber___edZlQ {
  display: inline-block;
  transition: color 0.3s ease;
  color: #000000;
}
.AnimatedNumber-module__animatedNumber___edZlQ.AnimatedNumber-module__animating___dXa-V {
  color: #000000;
  font-weight: bold;
}.SearchModalFooter-module__footer___IAeOb {
  flex: 0 0 auto;
  bottom: 0;
  width: 100%;
  background-color: #fff;
  padding: 16px;
  border-top: 1px solid #eee;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  align-items: center;
  position: sticky;
  gap: 16px;
}

.SearchModalFooter-module__searchResultCount___ObPQH {
  font-weight: bold;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  color: #000000;
}
.SearchModalFooter-module__searchResultCount___ObPQH span {
  color: #000000;
}

.SearchModalFooter-module__confirmButton___gNZnr {
  background-color: #008080 !important;
  color: #fff !important;
  padding: 8px 16px;
  border: none;
  border-radius: 30px;
  cursor: pointer;
  width: 190px;
  font-weight: bold;
  height: 50px;
  flex-shrink: 0;
  -webkit-tap-highlight-color: transparent;
  transition: all 0.2s ease;
}
@media (hover: hover) and (pointer: fine) {
  .SearchModalFooter-module__confirmButton___gNZnr:hover {
    background-color: #008080 !important;
    opacity: 0.9;
  }
}
.SearchModalFooter-module__confirmButton___gNZnr:active {
  background-color: #008080 !important;
  transform: scale(0.98);
}
.SearchModalFooter-module__confirmButton___gNZnr:focus {
  outline: none;
  background-color: #008080 !important;
}
.SearchModalFooter-module__confirmButton___gNZnr:visited {
  background-color: #008080 !important;
}
.SearchModalFooter-module__confirmButton___gNZnr:focus-visible {
  background-color: #008080 !important;
}
.SearchModalFooter-module__confirmButton___gNZnr:-webkit-any-link {
  background-color: #008080 !important;
}
@media (hover: none) and (pointer: coarse) {
  .SearchModalFooter-module__confirmButton___gNZnr:hover {
    background-color: #008080 !important;
  }
}

.SearchModalFooter-module__buttonContainer___xy7hR {
  flex: 1;
  display: flex;
  justify-content: flex-end;
}.AreaTagSearchOrderConditionFooter-module__orderConditionFooter___gIsNo {
  flex: 0 0 auto;
  bottom: 0;
  width: 100%;
  background-color: #fff;
  padding: 16px;
  display: flex;
  justify-content: center;
  box-sizing: border-box;
  align-items: center;
  position: sticky;
}

.AreaTagSearchOrderConditionFooter-module__orderConditionForm___7WEk0 {
  display: flex;
  justify-content: center;
  width: 100%;
}

.AreaTagSearchOrderConditionFooter-module__orderConditionConfirmButton___N0tql {
  background-color: #008080 !important;
  color: #fff !important;
  padding: 8px 16px;
  border: none;
  border-radius: 30px;
  cursor: pointer;
  width: 230px;
  font-weight: bold;
  height: 50px;
  -webkit-tap-highlight-color: transparent;
  transition: transform 0.1s ease;
}
.AreaTagSearchOrderConditionFooter-module__orderConditionConfirmButton___N0tql:hover {
  background-color: #0056b3 !important;
}
.AreaTagSearchOrderConditionFooter-module__orderConditionConfirmButton___N0tql:active {
  background-color: #008080 !important;
  transform: scale(0.98);
}
.AreaTagSearchOrderConditionFooter-module__orderConditionConfirmButton___N0tql:focus {
  outline: none;
  background-color: #008080 !important;
}
.AreaTagSearchOrderConditionFooter-module__orderConditionConfirmButton___N0tql:visited {
  background-color: #008080 !important;
}
.AreaTagSearchOrderConditionFooter-module__orderConditionConfirmButton___N0tql:focus-visible {
  background-color: #008080 !important;
}
.AreaTagSearchOrderConditionFooter-module__orderConditionConfirmButton___N0tql:-webkit-any-link {
  background-color: #008080 !important;
}.AreaTagSearchSortConditionList-module__optionContainer___2u9QS {
  align-items: center;
  padding: 12px 16px;
  position: relative;
  box-sizing: border-box;
  justify-content: center;
  width: 100%;
  overflow-x: hidden;
}

.AreaTagSearchSortConditionList-module__option___sumMs {
  cursor: pointer;
}.OrderConditionRadioOption-module__orderRadioOption___jkunZ {
  display: flex;
  align-items: center;
  padding: 8px;
  cursor: pointer;
  border-radius: 6px;
}
.OrderConditionRadioOption-module__orderRadioOption___jkunZ:hover {
  background-color: #f9f9f9;
}

.OrderConditionRadioOption-module__orderConditionRadioInput___IiIy4 {
  margin-right: 15px;
}

.OrderConditionRadioOption-module__radioChecked___HrfnA {
  width: 15px;
  height: 15px;
  background-color: #000;
  border: 2px solid #333;
  border-radius: 50%;
  position: relative;
  appearance: none;
}
.OrderConditionRadioOption-module__radioChecked___HrfnA::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 7px;
  height: 7px;
  margin: auto;
  border-radius: 9999px;
  background-color: #ffffff;
}.AreaTagSearchSortHeader-module__header___B-lXV {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #eee;
  padding: 10px 20px;
  flex: 0 0 auto;
  position: relative;
}

.AreaTagSearchSortHeader-module__backButton___qENBZ {
  cursor: pointer;
  padding: 8px;
  z-index: 2;
}
.AreaTagSearchSortHeader-module__backButton___qENBZ:hover {
  background-color: #f5f5f5;
}

.AreaTagSearchSortHeader-module__title___AJACn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  font-weight: bold;
  text-align: center;
  z-index: 1;
}

.AreaTagSearchSortHeader-module__closeButton___kL0Kn {
  cursor: pointer;
  z-index: 2;
}.LocationAndFeaturedTagList-module__optionContainer___-dsrh {
  align-items: center;
  padding: 12px 16px;
  position: relative;
  box-sizing: border-box;
  justify-content: center;
  width: 100%;
  overflow-x: hidden;
}

.LocationAndFeaturedTagList-module__option___zYI5g {
  cursor: pointer;
}
.LocationAndFeaturedTagList-module__option___zYI5g:hover {
  background-color: #f5f5f5;
}

.LocationAndFeaturedTagList-module__accordionHeader___42Iig {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 0px;
  cursor: pointer;
  border-radius: 5px;
  width: 100%;
  overflow: hidden;
  box-sizing: border-box;
  color: #000000;
  -webkit-tap-highlight-color: transparent;
  background: none;
  border: none;
  text-align: left;
  font-size: inherit;
  font-family: inherit;
}
.LocationAndFeaturedTagList-module__accordionHeader___42Iig:link, .LocationAndFeaturedTagList-module__accordionHeader___42Iig:visited {
  color: #000000;
}
.LocationAndFeaturedTagList-module__accordionHeader___42Iig:hover {
  background-color: #f5f5f5;
  color: #000000;
}
.LocationAndFeaturedTagList-module__accordionHeader___42Iig:active {
  color: #000000;
}

.LocationAndFeaturedTagList-module__accordionContent___-x2JC {
  padding: 0;
}

.LocationAndFeaturedTagList-module__locationTags___qojaA {
  color: #676767;
  padding: 0px 2px;
  font-size: 0.6em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  margin: auto 0px auto 8px;
  flex: 1;
  min-width: 0;
}

.LocationAndFeaturedTagList-module__categoryButton___rTORA {
  padding: 8px 0px;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  overflow: hidden;
  color: #000000;
  -webkit-tap-highlight-color: transparent;
  background: none;
  border: none;
  text-align: left;
  font-size: inherit;
  font-family: inherit;
}
.LocationAndFeaturedTagList-module__categoryButton___rTORA:link, .LocationAndFeaturedTagList-module__categoryButton___rTORA:visited {
  color: #000000;
}
.LocationAndFeaturedTagList-module__categoryButton___rTORA:hover {
  background-color: #f5f5f5;
  color: #000000;
}
.LocationAndFeaturedTagList-module__categoryButton___rTORA:active {
  color: #000000;
}.LocationAndFeaturedTagSearchHeader-module__header___AvvWm {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #eee;
  padding: 10px 20px;
  flex: 0 0 auto;
  position: relative;
}

.LocationAndFeaturedTagSearchHeader-module__backButton___GYURc {
  cursor: pointer;
  padding: 8px;
  z-index: 2;
}
.LocationAndFeaturedTagSearchHeader-module__backButton___GYURc:hover {
  background-color: #f5f5f5;
}

.LocationAndFeaturedTagSearchHeader-module__title___jaw-g {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  font-weight: bold;
  text-align: center;
  z-index: 1;
}

.LocationAndFeaturedTagSearchHeader-module__closeButton___92BwX {
  cursor: pointer;
  z-index: 2;
}.CollapsibleSection-module__container___o6yQX {
  width: 100%;
}

.CollapsibleSection-module__content___eHOWG {
  overflow: hidden;
  transition: max-height 0.3s ease, opacity 0.3s ease;
}

.CollapsibleSection-module__contentInner___TTskj {
  padding-top: 16px;
}

.CollapsibleSection-module__contentExpanded___EDyYj {
  max-height: 5000px;
  opacity: 1;
}

.CollapsibleSection-module__contentCollapsed___jXlpS {
  max-height: 0;
  opacity: 0;
}
.CollapsibleSection-module__contentCollapsed___jXlpS .CollapsibleSection-module__contentInner___TTskj {
  padding-top: 0;
}.CollapsibleSectionTitle-module__container___uMpWI {
  margin: 0;
  padding: 0;
  border-bottom: 3px double #77552A;
  font-size: 20px;
  font-weight: bold;
  line-height: 140%;
  letter-spacing: 0.8px;
  font-family: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Yu Mincho", "YuMincho", "MS PMincho", serif;
}

.CollapsibleSectionTitle-module__button___LC7B9 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 16px 0 4px 0;
  background: none;
  border: none;
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  color: #77552A;
  cursor: pointer;
  text-align: left;
}
.CollapsibleSectionTitle-module__button___LC7B9:hover {
  opacity: 0.8;
}
.CollapsibleSectionTitle-module__button___LC7B9:focus-visible {
  outline: 2px solid #77552A;
  outline-offset: 2px;
}

.CollapsibleSectionTitle-module__title___EJMEO {
  display: flex;
  align-items: center;
  gap: 8px;
}

.CollapsibleSectionTitle-module__emoji___bgVbf {
  font-size: inherit;
}

.CollapsibleSectionTitle-module__chevron___WdntL {
  font-size: 20px;
  transition: transform 0.3s ease;
  color: #77552A;
  flex-shrink: 0;
}

.CollapsibleSectionTitle-module__chevronRotated___VDysI {
  transform: rotate(180deg);
}

.CollapsibleSectionTitle-module__note___atOCo {
  font-size: 16px;
  margin-left: 8px;
}.BenefitCard-module__container___ebi1g {
  width: 100%;
  min-height: 210px;
  padding: 16px;
  border-radius: 12px;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
@media (max-width: 460px) {
  .BenefitCard-module__container___ebi1g {
    min-height: 160px;
  }
}

.BenefitCard-module__header___lsokb {
  display: flex;
  justify-content: space-between;
  align-items: center;
}.BenefitCardChip-module__chip___wBLX8 {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 6px 16px;
  border-radius: 16px;
  font-size: 11px;
  font-weight: 600;
  border: none;
  cursor: pointer;
  user-select: none;
  white-space: nowrap;
  flex-shrink: 0;
  min-width: 0;
  width: fit-content;
  overflow: hidden;
  box-sizing: border-box;
  text-decoration: none;
  background-color: white;
}
.BenefitCardChip-module__chip___wBLX8.BenefitCardChip-module__linkEnabled___G4QoV {
  text-decoration: underline;
}

.BenefitCardChip-module__icon___HderX {
  font-size: 11px;
  flex-shrink: 0;
}.BenefitCardDescription-module__text___5bsEO {
  font-size: 14px;
  line-height: 170%;
  font-weight: 500;
}.BenefitCardTitle-module__title___YQPvB {
  font-size: 18px;
  font-family: "Hiragino Mincho Pro", serif;
  line-height: 170%;
  letter-spacing: 0%;
}.BenefitOverviewSection-module__container___tZ5rI {
  width: 100%;
}

.BenefitOverviewSection-module__benefitGridWrapper___zCsBj {
  margin-bottom: 16px;
}

.BenefitOverviewSection-module__benefitCardsContainer___FLZJV {
  margin-bottom: 24px;
}

.BenefitOverviewSection-module__benefitCardGrid___-3sZ5 {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
}.PaddingLayout-module__container___JXr8A {
  padding: 0 24px;
  box-sizing: border-box;
}
@media (max-width: 460px) {
  .PaddingLayout-module__container___JXr8A {
    padding: 0 16px;
  }
}.LoadingFallback-module__skeleton___OIHgR {
  background: #f5f5f5;
  border-radius: 8px;
  animation: LoadingFallback-module__pulse___EnNAp 2s infinite;
}
.LoadingFallback-module__skeleton___OIHgR.LoadingFallback-module__hasMargin___khxU9 {
  margin-bottom: 16px;
}

@keyframes LoadingFallback-module__pulse___EnNAp {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 1;
  }
}.LastModifiedDate-module__container___0I6nK {
  text-align: right;
}

.LastModifiedDate-module__text___BuQHY {
  color: #6b7280;
  font-size: 12px;
}.SpotDetailLayout-module__pageContainer___inZj8 {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.SpotDetailLayout-module__contentWrapper___RsDbK {
  overflow-y: auto;
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
}

.SpotDetailLayout-module__container___sX2io {
  background: #fff;
  width: 100%;
  max-width: 696px;
  margin: 0 auto;
  flex-grow: 1;
}.BackgroundImage-module__backgroundContainer___khFb5 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-image: url("/images/hero-background.webp");
  background-size: cover;
  background-position: center;
  z-index: -1;
}@keyframes NearbySpotItem-module__fadeInUp___bH9-Z {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.NearbySpotItem-module__spotCardItem___UvZN2 {
  width: 150px;
  flex: 0 0 150px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  scroll-snap-align: start;
  animation: NearbySpotItem-module__fadeInUp___bH9-Z 0.5s ease-out forwards;
}

.NearbySpotItem-module__link___HlJc9 {
  text-decoration: none;
  color: #fff;
  cursor: pointer;
  display: block;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
}
.NearbySpotItem-module__link___HlJc9:link, .NearbySpotItem-module__link___HlJc9:visited {
  color: #fff;
}
.NearbySpotItem-module__link___HlJc9:hover {
  color: #fff;
}
.NearbySpotItem-module__link___HlJc9:active {
  color: #fff;
}

.NearbySpotItem-module__card___KgdpG {
  position: relative;
  width: 100%;
  padding-top: 133.33%;
  border-radius: 8px;
  overflow: hidden;
  background-color: #f5f5f5;
}

.NearbySpotItem-module__image___hnuHL {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.NearbySpotItem-module__overlay___v8kmr {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.7) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 8px;
}

.NearbySpotItem-module__content___PuX9i {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: #fff;
}

.NearbySpotItem-module__spotName___CsvLC {
  margin: 0;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
}

.NearbySpotItem-module__prefecture___SSbBl {
  margin: 0;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  text-align: left;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.HorizontalSlider-module__scrollContainer___8IZkx {
  display: flex;
  overflow-x: auto;
  overflow-y: visible;
  gap: 16px;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  padding-bottom: 8px; /* 下部の影が切れないように余白を追加 */
  scrollbar-width: none; /* Firefox用 */
  -ms-overflow-style: none; /* IE/Edge用 */
}
.HorizontalSlider-module__scrollContainer___8IZkx::-webkit-scrollbar {
  display: none; /* Chrome, Safari用 */
}
.HorizontalSlider-module__scrollContainer___8IZkx:is(ol, ul) {
  list-style: none;
  padding: 0;
  margin: 0;
}.ExpandableContainer-module__wrapper___9tjjH {
  position: relative;
  width: 100%;
}

.ExpandableContainer-module__container___b4gU7 {
  position: relative;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
}

.ExpandableContainer-module__contentWrapper___r2ePo {
  position: relative;
  visibility: visible;
  height: auto;
}

.ExpandableContainer-module__shouldCollapse___lB8dD {
  mask-image: linear-gradient(to bottom, black calc(100% - 2rem), transparent);
}

.ExpandableContainer-module__containerCollapsed___eYfQO {
  max-height: var(--collapsed-height);
}

.ExpandableContainer-module__expanded___idvEb {
  max-height: none;
  mask-image: none;
}

.ExpandableContainer-module__toggleButton___izPxF {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 0;
  background: none;
  border: none;
  color: #77770d;
  cursor: pointer;
}

.ExpandableContainer-module__chevron___-aiag {
  margin-left: 0.5em;
  transition: transform 0.3s ease;
}

.ExpandableContainer-module__chevronRotated___feEte {
  transform: rotate(180deg);
}.LocationTagSpots-module__container___BYQlV {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}.NearbySpots-module__container___GXgcw {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.NearbySpots-module__heading___WMzQl {
  margin-top: 32px;
  margin-bottom: 32px;
}.ShrineGoods-module__container___K64h8 {
  margin-top: 16px;
}

.ShrineGoods-module__items___41X7e {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.ShrineGoods-module__item___urelP {
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 16px;
}
.ShrineGoods-module__item___urelP:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.ShrineGoods-module__itemName___pWkfQ {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 8px;
  color: #000;
  position: relative;
  padding-left: 16px;
}
.ShrineGoods-module__itemName___pWkfQ::before {
  content: "- ";
  position: absolute;
  left: 0;
  color: #000;
  font-weight: bold;
}

.ShrineGoods-module__description___T82X2 {
  font-size: 14px;
  line-height: 1.6;
  color: #000;
  margin: 0;
  padding-left: 16px;
}
.ShrineGoods-module__description___T82X2 p {
  margin: 0 0 8px 0;
}
.ShrineGoods-module__description___T82X2 p:last-child {
  margin-bottom: 0;
}
.ShrineGoods-module__description___T82X2 strong {
  font-weight: 600;
  color: #000;
}
.ShrineGoods-module__description___T82X2 em {
  font-style: italic;
}
.ShrineGoods-module__description___T82X2 ul, .ShrineGoods-module__description___T82X2 ol {
  margin: 0 0 8px 0;
  padding-left: 20px;
}
.ShrineGoods-module__description___T82X2 li {
  margin-bottom: 4px;
}

@media (max-width: 460px) {
  .ShrineGoods-module__container___K64h8 {
    margin-top: 12px;
  }
  .ShrineGoods-module__items___41X7e {
    gap: 20px;
  }
  .ShrineGoods-module__item___urelP {
    padding-bottom: 12px;
  }
  .ShrineGoods-module__itemName___pWkfQ {
    font-size: 13px;
    margin-bottom: 6px;
  }
  .ShrineGoods-module__description___T82X2 {
    font-size: 13px;
  }
}
.ShrineGoods-module__toggleButton___n-Noh {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 0;
  background: none;
  border: none;
  color: #77770d;
  cursor: pointer;
  font-size: 14px;
  transition: opacity 0.2s ease;
}
.ShrineGoods-module__toggleButton___n-Noh:hover {
  opacity: 0.8;
}
.ShrineGoods-module__toggleButton___n-Noh:active {
  opacity: 0.6;
}

.ShrineGoods-module__chevron___lZqIK {
  margin-left: 0.5em;
  transition: transform 0.3s ease;
}

.ShrineGoods-module__chevronRotated___XUXEg {
  transform: rotate(180deg);
}.SpotBasicInfo-module__container___Rcm-L {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin: 16px 0;
}

.SpotBasicInfo-module__section___02Prc {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.SpotBasicInfo-module__text___nsdhO {
  color: #333333;
  font-size: 14px;
  line-height: 1.5;
}

.SpotBasicInfo-module__link___r3En7 {
  text-decoration: none;
  color: inherit;
}
.SpotBasicInfo-module__link___r3En7:hover {
  text-decoration: underline;
}

.SpotBasicInfo-module__content___wuarS {
  display: flex;
  align-items: center;
}

.SpotBasicInfo-module__icon___tGj2- {
  width: 24px;
  height: 24px;
  margin-right: 8px;
}

.SpotBasicInfo-module__markdownContainer___oxSua {
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.6;
  color: #000;
}
.SpotBasicInfo-module__markdownContainer___oxSua h3 {
  font-size: 14px;
  font-weight: bold;
  margin: 16px 0 8px 0;
  color: #000;
  position: relative;
}
.SpotBasicInfo-module__markdownContainer___oxSua h3:first-child {
  margin-top: 0;
}
.SpotBasicInfo-module__markdownContainer___oxSua h3::before {
  content: "- ";
  position: absolute;
  left: 0;
  color: #000;
  font-weight: bold;
}
.SpotBasicInfo-module__markdownContainer___oxSua p {
  margin: 0 0 8px 0;
}
.SpotBasicInfo-module__markdownContainer___oxSua p:last-child {
  margin-bottom: 0;
}
.SpotBasicInfo-module__markdownContainer___oxSua strong {
  font-weight: 600;
  color: #000;
}
.SpotBasicInfo-module__markdownContainer___oxSua em {
  font-style: italic;
}
.SpotBasicInfo-module__markdownContainer___oxSua ul, .SpotBasicInfo-module__markdownContainer___oxSua ol {
  margin: 0 0 8px 0;
  padding-left: 36px;
}
.SpotBasicInfo-module__markdownContainer___oxSua li {
  margin-bottom: 4px;
}
.SpotBasicInfo-module__markdownContainer___oxSua a {
  color: #0066cc;
  text-decoration: none;
}
.SpotBasicInfo-module__markdownContainer___oxSua a:hover {
  text-decoration: underline;
}.SpotDescription-module__container___Osus9 {
  width: 100%;
  margin: 0;
}

.SpotDescription-module__text___-ct2u {
  font-size: 16px;
  color: #333;
  line-height: 1.5;
  white-space: pre-line;
  overflow-wrap: break-word;
  word-break: break-all;
  max-width: 100%;
}
.SpotDescription-module__text___-ct2u figure {
  max-width: 95%;
  margin: 0.75rem auto;
  display: block;
}
@media (min-width: 1024px) {
  .SpotDescription-module__text___-ct2u figure {
    max-width: 960px;
  }
}
.SpotDescription-module__text___-ct2u img {
  display: block;
  height: auto;
  border-radius: 8px;
  object-fit: contain;
  margin: 0.75rem auto;
  max-width: 80%;
  max-height: 70vh;
}
@media (max-width: 460px) {
  .SpotDescription-module__text___-ct2u img {
    max-width: 95%;
    max-height: 60vh;
    width: auto;
  }
}
@media (min-width: 1024px) {
  .SpotDescription-module__text___-ct2u img {
    max-width: 80%;
  }
}
.SpotDescription-module__text___-ct2u figure img {
  max-width: 100%;
  margin: 0 auto 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.SpotDescription-module__spotDescription___xcSJw {
  width: 100%;
  padding: 8px 0;
}.SpotDetailSkeleton-module__innerContainer___CUjhA {
  padding: 0 24px;
  box-sizing: border-box;
}
@media (max-width: 460px) {
  .SpotDetailSkeleton-module__innerContainer___CUjhA {
    padding: 0 16px;
  }
}

.SpotDetailSkeleton-module__titles___UiSa9 {
  display: flex;
  flex-direction: column;
}

.SpotDetailSkeleton-module__thumbnailImage___SON-G {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}

.SpotDetailSkeleton-module__tagContainer___7Fj1f {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.SpotDetailSkeleton-module__tagSkeleton___X-6k- {
  border-radius: 20px;
}

.SpotDetailSkeleton-module__spotGrid___FGi79 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
@media (max-width: 460px) {
  .SpotDetailSkeleton-module__spotGrid___FGi79 {
    grid-template-columns: 1fr;
  }
}.SpotKnowledgeCard-module__container___VbpvY {
  display: flex;
  flex-direction: column;
  border-radius: 8px;
  overflow: hidden;
  margin: 0 auto;
  width: 100%;
}

.SpotKnowledgeCard-module__imageContainer___WlKAP {
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 8px;
}

.SpotKnowledgeCard-module__image___75s2N {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.SpotKnowledgeCard-module__contentContainer___hanYj {
  border-radius: 8px;
  padding: 16px 0;
}

.SpotKnowledgeCard-module__content___6awBH {
  margin: 0;
  font-size: 14px;
  line-height: 1.6;
  color: #000;
  overflow-wrap: break-word;
}.SpotKnowledgeCardSkeleton-module__container___4we-t {
  display: flex;
  flex-direction: column;
  border-radius: 8px;
  overflow: hidden;
  margin: 0 auto;
}
@media (min-width: 1024px) {
  .SpotKnowledgeCardSkeleton-module__container___4we-t {
    max-width: 500px;
  }
}

.SpotKnowledgeCardSkeleton-module__imageContainer___8jPqG {
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 8px;
}

.SpotKnowledgeCardSkeleton-module__imageSkeleton___pUkV- {
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: SpotKnowledgeCardSkeleton-module__shimmer___g1MTn 1.5s infinite;
}

.SpotKnowledgeCardSkeleton-module__contentContainer___U79Uh {
  background-color: #FCFAF1;
  border-radius: 8px;
  padding: 16px;
  margin-top: 16px;
}

.SpotKnowledgeCardSkeleton-module__contentSkeleton___G2RC- {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.SpotKnowledgeCardSkeleton-module__line___R7mZA {
  height: 16px;
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  border-radius: 4px;
  animation: SpotKnowledgeCardSkeleton-module__shimmer___g1MTn 1.5s infinite;
}

.SpotKnowledgeCardSkeleton-module__lineShort___orJMf {
  height: 16px;
  width: 70%;
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  border-radius: 4px;
  animation: SpotKnowledgeCardSkeleton-module__shimmer___g1MTn 1.5s infinite;
}

@keyframes SpotKnowledgeCardSkeleton-module__shimmer___g1MTn {
  0% {
    background-position: -200% 0;
  }
  100% {
    background-position: 200% 0;
  }
}.SpotShrineEventsSection-module__container___DSsVi {
  margin-top: 0px;
}

.SpotShrineEventsSection-module__items___fWg0f {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.SpotShrineEventsSection-module__item___KkQ6n {
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 16px;
}
.SpotShrineEventsSection-module__item___KkQ6n:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.SpotShrineEventsSection-module__contentContainer___wk2Em {
  margin-bottom: 15px;
  border-bottom: 2px solid #f0f0f0;
}

.SpotShrineEventsSection-module__content___fIDWt {
  margin: 0px 10px 20px 10px;
  font-size: 14px;
}

.SpotShrineEventsSection-module__itemName___uxTSc {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 8px;
  color: #000;
  position: relative;
  padding-left: 16px;
}
.SpotShrineEventsSection-module__itemName___uxTSc::before {
  content: "- ";
  position: absolute;
  left: 0;
  color: #000;
  font-weight: bold;
}

.SpotShrineEventsSection-module__description___G-Frx {
  font-size: 14px;
  line-height: 1.6;
  color: #000;
  margin: 0;
  padding-left: 16px;
}
.SpotShrineEventsSection-module__description___G-Frx p {
  margin: 0 0 8px 0;
}
.SpotShrineEventsSection-module__description___G-Frx p:last-child {
  margin-bottom: 0;
}
.SpotShrineEventsSection-module__description___G-Frx strong {
  font-weight: 600;
  color: #000;
}
.SpotShrineEventsSection-module__description___G-Frx em {
  font-style: italic;
}
.SpotShrineEventsSection-module__description___G-Frx ul, .SpotShrineEventsSection-module__description___G-Frx ol {
  margin: 0 0 8px 0;
  padding-left: 20px;
}
.SpotShrineEventsSection-module__description___G-Frx li {
  margin-bottom: 4px;
}

@media (max-width: 460px) {
  .SpotShrineEventsSection-module__container___DSsVi {
    margin-top: 12px;
  }
  .SpotShrineEventsSection-module__items___fWg0f {
    gap: 20px;
  }
  .SpotShrineEventsSection-module__item___KkQ6n {
    padding-bottom: 12px;
  }
  .SpotShrineEventsSection-module__itemName___uxTSc {
    font-size: 13px;
    margin-bottom: 6px;
  }
  .SpotShrineEventsSection-module__description___G-Frx {
    font-size: 13px;
  }
}
.SpotShrineEventsSection-module__toggleButton___zAW25 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 0;
  background: none;
  border: none;
  color: #77770d;
  cursor: pointer;
  font-size: 14px;
  transition: opacity 0.2s ease;
}
.SpotShrineEventsSection-module__toggleButton___zAW25:hover {
  opacity: 0.8;
}
.SpotShrineEventsSection-module__toggleButton___zAW25:active {
  opacity: 0.6;
}

.SpotShrineEventsSection-module__chevron___HIr4E {
  margin-left: 0.5em;
  transition: transform 0.3s ease;
}

.SpotShrineEventsSection-module__chevronRotated___SKbcm {
  transform: rotate(180deg);
}.SpotShrinePrayServices-module__container___VF6Rf {
  margin-top: 0px;
}

.SpotShrinePrayServices-module__items___mwkDB {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.SpotShrinePrayServices-module__item___Te4yF {
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 16px;
}
.SpotShrinePrayServices-module__item___Te4yF:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.SpotShrinePrayServices-module__contentContainer___-1l2- {
  margin-bottom: 15px;
  border-bottom: 2px solid #f0f0f0;
}

.SpotShrinePrayServices-module__content___9UiG3 {
  margin: 0px 10px 20px 10px;
  font-size: 14px;
}

.SpotShrinePrayServices-module__itemName___-MY71 {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 8px;
  color: #000;
  position: relative;
  padding-left: 16px;
}
.SpotShrinePrayServices-module__itemName___-MY71::before {
  content: "- ";
  position: absolute;
  left: 0;
  color: #000;
  font-weight: bold;
}

.SpotShrinePrayServices-module__description___HBw9x {
  font-size: 14px;
  line-height: 1.6;
  color: #000;
  margin: 0;
  padding-left: 16px;
}
.SpotShrinePrayServices-module__description___HBw9x p {
  margin: 0 0 8px 0;
}
.SpotShrinePrayServices-module__description___HBw9x p:last-child {
  margin-bottom: 0;
}
.SpotShrinePrayServices-module__description___HBw9x strong {
  font-weight: 600;
  color: #000;
}
.SpotShrinePrayServices-module__description___HBw9x em {
  font-style: italic;
}
.SpotShrinePrayServices-module__description___HBw9x ul, .SpotShrinePrayServices-module__description___HBw9x ol {
  margin: 0 0 8px 0;
  padding-left: 20px;
}
.SpotShrinePrayServices-module__description___HBw9x li {
  margin-bottom: 4px;
}

@media (max-width: 460px) {
  .SpotShrinePrayServices-module__container___VF6Rf {
    margin-top: 12px;
  }
  .SpotShrinePrayServices-module__items___mwkDB {
    gap: 20px;
  }
  .SpotShrinePrayServices-module__item___Te4yF {
    padding-bottom: 12px;
  }
  .SpotShrinePrayServices-module__itemName___-MY71 {
    font-size: 13px;
    margin-bottom: 6px;
  }
  .SpotShrinePrayServices-module__description___HBw9x {
    font-size: 13px;
  }
}
.SpotShrinePrayServices-module__toggleButton___B-nQF {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 0;
  background: none;
  border: none;
  color: #77770d;
  cursor: pointer;
  font-size: 14px;
  transition: opacity 0.2s ease;
}
.SpotShrinePrayServices-module__toggleButton___B-nQF:hover {
  opacity: 0.8;
}
.SpotShrinePrayServices-module__toggleButton___B-nQF:active {
  opacity: 0.6;
}

.SpotShrinePrayServices-module__chevron___op-Jy {
  margin-left: 0.5em;
  transition: transform 0.3s ease;
}

.SpotShrinePrayServices-module__chevronRotated___wi5Qn {
  transform: rotate(180deg);
}.SpotShrineVisitGuide-module__container___KHXKN {
  margin-top: 0px;
}

.SpotShrineVisitGuide-module__items___273hH {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.SpotShrineVisitGuide-module__item___95-Ww {
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 16px;
}
.SpotShrineVisitGuide-module__item___95-Ww:last-child {
  border-bottom: none;
  padding-bottom: 0;
}

.SpotShrineVisitGuide-module__contentContainer___pY8-L {
  margin-bottom: 15px;
  border-bottom: 2px solid #f0f0f0;
}

.SpotShrineVisitGuide-module__content___y3aGc {
  margin: 0px 10px 20px 10px;
  font-size: 14px;
}

.SpotShrineVisitGuide-module__itemName___1xIrS {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 8px;
  color: #000;
  position: relative;
  padding-left: 16px;
}
.SpotShrineVisitGuide-module__itemName___1xIrS::before {
  content: "- ";
  position: absolute;
  left: 0;
  color: #000;
  font-weight: bold;
}

.SpotShrineVisitGuide-module__description___ejFc- {
  font-size: 14px;
  line-height: 1.6;
  color: #000;
  margin: 0;
  padding-left: 16px;
}
.SpotShrineVisitGuide-module__description___ejFc- p {
  margin: 0 0 8px 0;
}
.SpotShrineVisitGuide-module__description___ejFc- p:last-child {
  margin-bottom: 0;
}
.SpotShrineVisitGuide-module__description___ejFc- strong {
  font-weight: 600;
  color: #000;
}
.SpotShrineVisitGuide-module__description___ejFc- em {
  font-style: italic;
}
.SpotShrineVisitGuide-module__description___ejFc- ul, .SpotShrineVisitGuide-module__description___ejFc- ol {
  margin: 0 0 8px 0;
  padding-left: 20px;
}
.SpotShrineVisitGuide-module__description___ejFc- li {
  margin-bottom: 4px;
}

@media (max-width: 460px) {
  .SpotShrineVisitGuide-module__container___KHXKN {
    margin-top: 12px;
  }
  .SpotShrineVisitGuide-module__items___273hH {
    gap: 20px;
  }
  .SpotShrineVisitGuide-module__item___95-Ww {
    padding-bottom: 12px;
  }
  .SpotShrineVisitGuide-module__itemName___1xIrS {
    font-size: 13px;
    margin-bottom: 6px;
  }
  .SpotShrineVisitGuide-module__description___ejFc- {
    font-size: 13px;
  }
}
.SpotShrineVisitGuide-module__toggleButton___zKXEA {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 0;
  background: none;
  border: none;
  color: #77770d;
  cursor: pointer;
  font-size: 14px;
  transition: opacity 0.2s ease;
}
.SpotShrineVisitGuide-module__toggleButton___zKXEA:hover {
  opacity: 0.8;
}
.SpotShrineVisitGuide-module__toggleButton___zKXEA:active {
  opacity: 0.6;
}

.SpotShrineVisitGuide-module__chevron___-7XCz {
  margin-left: 0.5em;
  transition: transform 0.3s ease;
}

.SpotShrineVisitGuide-module__chevronRotated___7ADiZ {
  transform: rotate(180deg);
}.FavoriteBanner-module__favoriteBanner___8-dLq {
  position: fixed;
  top: 16px;
  left: 50%;
  transform: translate(-50%, -200%);
  width: 90%;
  max-width: 400px;
  background-color: #ff9800;
  color: white;
  padding: 12px;
  border-radius: 8px;
  z-index: 9999;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 4px;
  transition: transform 0.3s ease-out, opacity 0.3s ease-out;
  opacity: 0;
  pointer-events: none;
}

.FavoriteBanner-module__favoriteBannerActive___gUA4e {
  transform: translate(-50%, 0);
  opacity: 1;
  pointer-events: auto;
}

.FavoriteBanner-module__favoriteBannerError___SENJS {
  background-color: #ff3b30;
}

.FavoriteBanner-module__favoriteBannerText___hdxLs {
  font-size: 14px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

.FavoriteBanner-module__warningIcon___h5Kcl {
  font-size: 18px;
}

.FavoriteBanner-module__favoriteBannerLink___ZLfWr {
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
  cursor: pointer;
  background: none;
  border: none;
  color: inherit;
  padding: 0;
  font-family: inherit;
}.BenefitCategoryLevel-module__container___3RoOx {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}

.BenefitCategoryLevel-module__label___cxkgj {
  font-family: "Noto Serif JP", serif;
  font-size: clamp(14px, 2vw, 16px);
  text-align: center;
}

.BenefitCategoryLevel-module__icons___OUsRM {
  display: flex;
  flex-direction: row;
  gap: 2px;
}

.BenefitCategoryLevel-module__icon___PYEg0 {
  font-size: clamp(13px, 2vw, 15px);
  flex-shrink: 0;
}

.BenefitCategoryLevel-module__iconGray___lu-GE {
  font-size: clamp(13px, 2vw, 15px);
  flex-shrink: 0;
  color: #ccc;
}.index-module__container___YBW2I {
  display: flex;
  flex-direction: row;
  gap: 12px;
  justify-content: center;
}.InformationModal-module__modal___4pvHO {
  background: white;
  border-radius: 8px;
  padding: 16px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  max-width: 400px;
  color: #000;
}

.InformationModal-module__header___AH6gB {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 6px;
}

.InformationModal-module__titleSection___Jg0V3 {
  display: flex;
  align-items: center;
  gap: 4px;
}

.InformationModal-module__titleIcon___3o3EV {
  flex-shrink: 0;
  color: #000;
}

.InformationModal-module__title___CZ8R8 {
  font-size: 13px;
  font-weight: 400;
  color: #000;
  margin: 0;
}

.InformationModal-module__closeButton___chblN {
  background: none;
  border: none;
  padding: 4px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.InformationModal-module__closeIcon___hEVBm {
  color: #000;
  font-size: 16px;
}

.InformationModal-module__content___UxGS3 {
  color: #000;
  text-align: left;
}

.InformationModal-module__contentLine___51851 {
  margin: 0;
  line-height: 1.4;
  text-align: left;
}
.InformationModal-module__contentLine___51851:not(:last-child) {
  margin-bottom: 4px;
}
.PrayerButton-module__container___fafJt {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 20px 16px;
  position: relative;
}
@media (max-width: 460px) {
  .PrayerButton-module__container___fafJt {
    padding: 16px 12px;
  }
}

.PrayerButton-module__modalWrapper___uTgS2 {
  position: absolute;
  transform: translateX(-50%);
  width: calc(100% - 40px);
  max-width: 500px;
  max-height: 70vh;
  overflow-y: auto;
  z-index: 9998;
}
@media (max-width: 460px) {
  .PrayerButton-module__modalWrapper___uTgS2 {
    width: calc(100% - 32px);
    max-height: 60vh;
  }
}

.PrayerButton-module__prayerButton___GKgGo {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  transition: transform 0.2s ease, filter 0.2s ease;
  width: 100%;
  max-width: 316px;
}
.PrayerButton-module__prayerButton___GKgGo:active {
  transform: translateY(0);
  filter: brightness(0.95);
}
.PrayerButton-module__prayerButton___GKgGo:focus-visible {
  outline: 2px solid #C4973D;
  outline-offset: 4px;
  border-radius: 30px;
}
.PrayerButton-module__prayerButton___GKgGo:disabled {
  cursor: not-allowed;
  opacity: 0.5;
  filter: grayscale(30%);
}
.PrayerButton-module__prayerButton___GKgGo:disabled:hover {
  transform: none;
  filter: grayscale(30%);
}
.PrayerButton-module__prayerButton___GKgGo:disabled:active {
  transform: none;
}

.PrayerButton-module__buttonSVG___5TDDC {
  width: 100%;
  height: auto;
  display: block;
}

.PrayerButton-module__description___g3o6P {
  font-size: 14px;
  line-height: 1.6;
  text-align: center;
  color: #333;
  margin: 0;
}
.PrayerButton-module__description___g3o6P strong {
  font-weight: 700;
  color: #000000;
}
@media (max-width: 460px) {
  .PrayerButton-module__description___g3o6P {
    font-size: 12px;
  }
}

.PrayerButton-module__prayerOverlay___VE3bi {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100vw;
  width: 100dvw;
  height: 100vh;
  height: 100dvh;
  min-height: 100vh;
  min-height: 100dvh;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: auto;
  touch-action: none;
  overscroll-behavior: none;
}

.PrayerButton-module__soundToggleButton___1FhcK {
  position: absolute;
  top: 20px;
  right: 20px;
  backdrop-filter: blur(10px);
  border-radius: 20px;
  padding: 8px 20px;
  font-size: 13px;
  font-family: "Noto Serif JP", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 400;
  letter-spacing: 0.1em;
  cursor: pointer;
  pointer-events: auto;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 10000;
}
@media (max-width: 460px) {
  .PrayerButton-module__soundToggleButton___1FhcK {
    top: 16px;
    right: 16px;
    padding: 6px 16px;
    font-size: 11px;
    letter-spacing: 0.08em;
  }
}

.PrayerButton-module__soundToggleButtonDark___-Zphu {
  background: rgba(255, 255, 255, 0.1);
  border: 1.5px solid rgba(255, 255, 255, 0.4);
  color: #fff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.PrayerButton-module__soundToggleButtonDark___-Zphu:hover {
  background: rgba(255, 255, 255, 0.25);
  border-color: rgba(255, 255, 255, 0.9);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
  transform: translateY(-1px);
}
.PrayerButton-module__soundToggleButtonDark___-Zphu:active {
  transform: translateY(0);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.15);
}

.PrayerButton-module__soundToggleButtonLight___I8w-4 {
  background: rgba(0, 0, 0, 0.08);
  border: 1.5px solid rgba(0, 0, 0, 0.2);
  color: #333;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.PrayerButton-module__soundToggleButtonLight___I8w-4:hover {
  background: rgba(0, 0, 0, 0.15);
  border-color: rgba(0, 0, 0, 0.3);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transform: translateY(-1px);
}
.PrayerButton-module__soundToggleButtonLight___I8w-4:active {
  transform: translateY(0);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.PrayerButton-module__soundToggleButtonFading___M7j9K {
  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;
}

.PrayerButton-module__messageContainer___orJSE {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  gap: 0;
  position: relative;
}

.PrayerButton-module__darkening___Eyhll {
  background-color: rgba(0, 0, 0, 0.9);
  animation: PrayerButton-module__fadeInDark___-efRG 1s ease-in-out forwards;
}

.PrayerButton-module__praying___j-Yys {
  background-color: rgba(0, 0, 0, 0.9);
}

.PrayerButton-module__prayingFading___jgcLJ {
  background-color: rgba(0, 0, 0, 0.9);
}

.PrayerButton-module__coinsEffect___aY7ds {
  background-color: rgba(0, 0, 0, 0.9);
}

.PrayerButton-module__brightening___jVVOu {
  background-color: rgb(0, 0, 0);
  animation: PrayerButton-module__fadeToWhite___0bgvP 5s ease-in-out forwards;
}

.PrayerButton-module__completing___s9vhM {
  animation: PrayerButton-module__fadeOutFromDark___AgSfK 1s linear forwards;
}

.PrayerButton-module__cancellingFromDark___wKQvB {
  animation: PrayerButton-module__fadeOutFromDark___AgSfK 1s linear forwards;
}

.PrayerButton-module__prayerMessage___f11Ns {
  font-family: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGS明朝E", serif;
  font-weight: 500;
  color: #fff;
  text-align: center;
  margin: 0;
  padding: 0 24px;
  line-height: 1.8;
  letter-spacing: 0.1em;
  animation: PrayerButton-module__textAppear___CaOW9 2s ease-in-out;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
  position: absolute;
  width: 100%;
}
@media (max-width: 460px) {
  .PrayerButton-module__prayerMessage___f11Ns {
    padding: 0 16px;
  }
}

.PrayerButton-module__prayerHandsIcon___XhhM9 {
  position: absolute;
  top: 30%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100px;
  height: 100px;
  animation: PrayerButton-module__iconAppear___qG2lt 2s ease-in-out;
}
.PrayerButton-module__prayerHandsIcon___XhhM9.PrayerButton-module__prayingMessageFadingOut___e0lrW {
  animation: PrayerButton-module__iconFadeOut___M0qeY 3s ease-in-out forwards;
}
@media (max-width: 460px) {
  .PrayerButton-module__prayerHandsIcon___XhhM9 {
    width: 80px;
    height: 80px;
  }
}

.PrayerButton-module__brighteningWrapper___vTavB {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  pointer-events: none;
}

.PrayerButton-module__toriiIcon___Iot19 {
  width: 80px;
  height: auto;
  display: block;
  opacity: 1;
  transition: opacity 2s ease, transform 2s ease;
  /* brighteningMessage と同じ表示アニメーションを適用して同期させる */
  animation: PrayerButton-module__brighteningMessageAppear___dluW3 7s ease-in-out forwards;
}

.PrayerButton-module__messageFadingOut___hGiGa {
  opacity: 0;
  transform: translateY(-8px);
}

@media (max-width: 460px) {
  .PrayerButton-module__toriiIcon___Iot19 {
    width: 60px;
  }
}
.PrayerButton-module__mainMessage___ogg0m {
  font-size: 25px;
  top: 42%;
  transform: translateY(-50%);
}
@media (max-width: 460px) {
  .PrayerButton-module__mainMessage___ogg0m {
    font-size: 18px;
  }
}

.PrayerButton-module__subMessage___UCOD6 {
  font-size: 16px;
  top: 50%;
  transform: translateY(-50%);
}
@media (max-width: 460px) {
  .PrayerButton-module__subMessage___UCOD6 {
    font-size: 14px;
  }
}

.PrayerButton-module__cancelMessage___7Axzu {
  font-size: 16px;
  top: 70%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  pointer-events: auto;
  transition: opacity 0.2s ease, transform 0.2s ease;
}
.PrayerButton-module__cancelMessage___7Axzu:hover {
  opacity: 0.8;
  transform: translateY(-50%) scale(1.05);
}
.PrayerButton-module__cancelMessage___7Axzu:active {
  opacity: 0.6;
}
.PrayerButton-module__cancelMessage___7Axzu:focus-visible {
  outline: 2px solid #C4973D;
  outline-offset: 4px;
  border-radius: 4px;
}
@media (max-width: 460px) {
  .PrayerButton-module__cancelMessage___7Axzu {
    font-size: 14px;
  }
}

.PrayerButton-module__prayingMessageFadingOut___e0lrW {
  animation: PrayerButton-module__textFadeOut___PSUcT 3s ease-in-out forwards;
}

.PrayerButton-module__brighteningMessage___6wJiO {
  font-family: "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HGS明朝E", serif;
  font-size: 24px;
  font-weight: 500;
  color: #333;
  text-align: center;
  margin: 0;
  padding: 0 32px;
  line-height: 2;
  letter-spacing: 0.05em;
  animation: PrayerButton-module__brighteningMessageAppear___dluW3 5s ease-in-out forwards;
}
@media (max-width: 460px) {
  .PrayerButton-module__brighteningMessage___6wJiO {
    font-size: 16px;
    padding: 0 24px;
    line-height: 1.9;
  }
}

.PrayerButton-module__messageFadingOut___hGiGa {
  animation: PrayerButton-module__messageFadeOut___551BI 3s ease-in-out forwards;
}

@keyframes PrayerButton-module__fadeInDark___-efRG {
  0% {
    background-color: rgba(0, 0, 0, 0);
  }
  100% {
    background-color: rgba(0, 0, 0, 0.9);
  }
}
@keyframes PrayerButton-module__fadeToWhite___0bgvP {
  0% {
    background-color: rgba(0, 0, 0, 0.9);
  }
  100% {
    background-color: rgb(0, 0, 0);
  }
}
@keyframes PrayerButton-module__fadeOut___0SWKX {
  0% {
    background-color: rgb(255, 255, 255);
  }
  100% {
    background-color: rgba(0, 0, 0, 0);
  }
}
@keyframes PrayerButton-module__fadeOutFromDark___AgSfK {
  0% {
    background-color: rgba(0, 0, 0, 0.9);
  }
  100% {
    background-color: rgba(0, 0, 0, 0);
  }
}
@keyframes PrayerButton-module__messageAppear___xE3lo {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  20% {
    opacity: 1;
    transform: translateY(0);
  }
  80% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes PrayerButton-module__textAppear___CaOW9 {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes PrayerButton-module__prayingMessageFadeOut___CVOQR {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-10px);
  }
}
@keyframes PrayerButton-module__textFadeOut___PSUcT {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes PrayerButton-module__brighteningMessageAppear___dluW3 {
  0% {
    opacity: 0;
    transform: scale(0.98);
  }
  20% {
    opacity: 0;
    transform: scale(0.98);
  }
  40% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes PrayerButton-module__messageFadeOut___551BI {
  0% {
    opacity: 1;
    transform: scale(1);
  }
  100% {
    opacity: 0;
    transform: scale(1.02);
  }
}
@keyframes PrayerButton-module__iconAppear___qG2lt {
  0% {
    opacity: 0;
  }
  20% {
    opacity: 1;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
@keyframes PrayerButton-module__iconFadeOut___M0qeY {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.PrayerButton-module__coinsEffectContainer___JSW3j {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}

.PrayerButton-module__coinsAnimation___0d2Mz {
  width: 100%;
  max-width: 600px;
  height: auto;
}
@media (max-width: 460px) {
  .PrayerButton-module__coinsAnimation___0d2Mz {
    max-width: 90%;
  }
}.SpotRankCard-module__card___zX-hP {
  background: white;
  border-radius: 16px;
  overflow: visible;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: box-shadow 0.2s ease;
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 80%;
  margin: 0 auto;
}
@media (max-width: 460px) {
  .SpotRankCard-module__card___zX-hP {
    border-radius: 12px;
    max-width: 95%;
  }
}

.SpotRankCard-module__rankS___ztBC6 {
  border: 3px solid #FFD700;
  box-shadow: inset 0 0 20px rgba(255, 215, 0, 0.5);
  overflow: visible;
}
.SpotRankCard-module__rankS___ztBC6::before {
  content: "";
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  border-radius: 20px;
  background: conic-gradient(from var(--rotation, 0deg), transparent 0deg, transparent 300deg, rgba(255, 255, 255, 0.2) 310deg, rgba(255, 255, 255, 0.4) 320deg, rgba(255, 255, 255, 0.6) 330deg, rgba(255, 250, 205, 0.9) 340deg, rgb(255, 255, 255) 345deg, rgba(255, 250, 205, 0.9) 350deg, rgba(255, 255, 255, 0.6) 360deg);
  animation: SpotRankCard-module__orbitLight___tZwoo 8s linear infinite;
  z-index: -1;
  filter: blur(3px);
}
@media (max-width: 460px) {
  .SpotRankCard-module__rankS___ztBC6::before {
    border-radius: 16px;
  }
}
.SpotRankCard-module__rankS___ztBC6::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: white;
  border-radius: 16px;
  z-index: -1;
}
@media (max-width: 460px) {
  .SpotRankCard-module__rankS___ztBC6::after {
    border-radius: 12px;
  }
}

@keyframes SpotRankCard-module__divineAura___tjB01 {
  0%, 100% {
    box-shadow: inset 0 0 20px rgba(255, 215, 0, 0.5), 0 0 30px rgba(255, 215, 0, 0.8), 0 0 60px rgba(255, 215, 0, 0.6), 0 0 90px rgba(255, 215, 0, 0.4), 0 0 120px rgba(255, 215, 0, 0.2);
  }
  50% {
    box-shadow: inset 0 0 30px rgba(255, 215, 0, 0.7), 0 0 40px rgb(255, 215, 0), 0 0 80px rgba(255, 215, 0, 0.8), 0 0 120px rgba(255, 215, 0, 0.6), 0 0 160px rgba(255, 215, 0, 0.4);
  }
}
@keyframes SpotRankCard-module__orbitLight___tZwoo {
  0% {
    --rotation: 0deg;
  }
  100% {
    --rotation: 360deg;
  }
}
@property --rotation {
  syntax: "<angle>";
  initial-value: 0deg;
  inherits: false;
}.keen-slider:not([data-keen-slider-disabled]){-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;align-content:flex-start;display:flex;overflow:hidden;position:relative;touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-khtml-user-select:none;width:100%}.keen-slider:not([data-keen-slider-disabled]) .keen-slider__slide{min-height:100%;overflow:hidden;position:relative;width:100%}.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-reverse]{flex-direction:row-reverse}.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-v]{flex-wrap:wrap}.SliderArrow-module__arrow___RY9JQ {
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  fill: #fff;
  cursor: pointer;
  filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.5));
  z-index: 10;
  background: none;
  border: none;
  padding: 0;
  transition: opacity 0.2s ease;
}
@media (max-width: 460px) {
  .SliderArrow-module__arrow___RY9JQ {
    width: 24px;
    height: 24px;
  }
}
.SliderArrow-module__arrow___RY9JQ:hover {
  opacity: 0.8;
}
.SliderArrow-module__arrow___RY9JQ:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 2px;
}

.SliderArrow-module__arrowLeft___E0lah {
  left: 16px;
}
@media (max-width: 460px) {
  .SliderArrow-module__arrowLeft___E0lah {
    left: 8px;
  }
}

.SliderArrow-module__arrowRight___h29RU {
  left: auto;
  right: 16px;
}
@media (max-width: 460px) {
  .SliderArrow-module__arrowRight___h29RU {
    right: 8px;
  }
}

.SliderArrow-module__arrowDisabled___TdnqW {
  fill: rgba(255, 255, 255, 0.5);
  cursor: default;
}
.SliderArrow-module__arrowDisabled___TdnqW:hover {
  opacity: 1;
}
.SpotRankCardFeatureTags-module__container___qOA-c {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 4px;
  z-index: 2;
  max-width: 60%;
  justify-content: flex-end;
}
@media (max-width: 460px) {
  .SpotRankCardFeatureTags-module__container___qOA-c {
    top: 8px;
    right: 8px;
    gap: 3px;
    max-width: 60%;
  }
}

.SpotRankCardFeatureTags-module__tag___DARwY {
  background: rgba(255, 255, 255, 0.95);
  color: #333;
  font-size: 10px;
  font-weight: 600;
  padding: 6px;
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
  white-space: nowrap;
  backdrop-filter: blur(4px);
  display: inline-flex;
  align-items: center;
  gap: 2px;
  line-height: 1;
}
@media (max-width: 460px) {
  .SpotRankCardFeatureTags-module__tag___DARwY {
    font-size: 9px;
    padding: 2px 5px;
    border-radius: 6px;
    gap: 1px;
  }
}

.SpotRankCardFeatureTags-module__starIcon___tCXl9 {
  width: 1em;
  height: 1em;
  flex-shrink: 0;
  display: block; /* 重要：Safariでの縦ズレ予防 */
}

.SpotRankCardFeatureTags-module__label___0jkci {
  line-height: 1;
  display: block;
}.SpotRankCardImage-module__container___dCOe2 {
  position: relative;
  width: calc(100% - 32px);
  margin: 16px;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 1/1;
}

.SpotRankCardImage-module__slider___K9Qzr {
  width: 100%;
  height: 100%;
  border-radius: 16px;
}

.SpotRankCardImage-module__slide___7sLGz {
  width: 100%;
  height: 100%;
}

.SpotRankCardImage-module__image___Z-im5 {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
}

.SpotRankCardImage-module__pagination___WL1SW {
  position: absolute;
  bottom: 12px;
  right: 12px;
  background: rgba(0, 0, 0, 0.7);
  color: white;
  padding: 4px 8px;
  border-radius: 12px;
  font-size: 12px;
  font-weight: 500;
}
@media (max-width: 460px) {
  .SpotRankCardImage-module__pagination___WL1SW {
    bottom: 8px;
    right: 8px;
    font-size: 10px;
    padding: 3px 6px;
  }
}.SpotRankCardSection-module__container___x0Mi6 {
  margin: 0;
  padding: 12px 0 8px 0;
  position: relative;
  text-align: center;
  font-size: 12px;
}
.SpotRankCardSection-module__container___x0Mi6::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3) 0%, transparent 50%);
  pointer-events: none;
  z-index: 1;
}
@media (max-width: 460px) {
  .SpotRankCardSection-module__container___x0Mi6 {
    padding: 24px 0 8px 0;
  }
}

.SpotRankCardSection-module__ruby___n78go {
  font-size: 10px;
  color: #666;
  margin-bottom: 2px;
  line-height: 1.2;
}
@media (max-width: 460px) {
  .SpotRankCardSection-module__ruby___n78go {
    font-size: 9px;
  }
}

.SpotRankCardSection-module__spotName___d39zR {
  color: #333;
  margin: 0;
  text-align: center;
}

.SpotRankCardSection-module__headingWrapper___YRy8l {
  position: relative;
}

.SpotRankCardSection-module__favoriteButton___LeXa8 {
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #FF9500;
  transition: color 0.2s;
  position: absolute;
  right: clamp(20px, 3.5vw, 30px);
  top: 50%;
  transform: translateY(-50%);
}
.SpotRankCardSection-module__favoriteButton___LeXa8 svg {
  font-size: clamp(24px, 3.5vw, 30px);
}

.SpotRankCardSection-module__favoriteLabel___uti-P {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(9px, 1vw, 10px);
  color: #FF9500;
  line-height: 1.2;
  font-weight: 600;
  padding-top: 3px;
}

.SpotRankCardSection-module__favoriteButtonActive___cajVO {
  color: #FF9500;
}

.SpotRankCardSection-module__aboutShrines___okEMR {
  margin: 5px 0 0 auto;
  background: transparent;
  position: relative;
  width: auto;
  display: flex;
  justify-content: flex-end;
  padding-right: 8px;
}
@media (max-width: 460px) {
  .SpotRankCardSection-module__aboutShrines___okEMR {
    padding-right: 4px;
  }
}

.SpotRankCardSection-module__rankA___pKkP5 {
  background: linear-gradient(to bottom, #fbc531 0%, #fdeaa7 25%, #fef7e0 75%, #fff 100%);
}

.SpotRankCardSection-module__rankB___ktPjj {
  background: linear-gradient(to bottom, #C0C0C8 0%, #D4D4D8 25%, #E8E8ED 75%, #fff 100%);
}

.SpotRankCardSection-module__rankC___9Q2rQ {
  background: linear-gradient(to bottom, #B87333 0%, #CDA367 25%, #E2CC9B 75%, #fff 100%);
}

.SpotRankCardSection-module__rankS___R-Lxv {
  background: radial-gradient(circle at 50% 20%, rgba(255, 255, 255, 0.9) 0%, rgba(255, 255, 255, 0.6) 5%, rgba(255, 223, 0, 0.4) 15%, transparent 40%), repeating-conic-gradient(from 0deg at 50% 20%, transparent 0deg, rgba(255, 255, 255, 0.6) 2deg, rgba(255, 215, 0, 0.4) 3deg, transparent 6deg), repeating-conic-gradient(from 15deg at 50% 20%, transparent 0deg, rgba(255, 255, 255, 0.3) 3deg, transparent 9deg), linear-gradient(to bottom, transparent 0%, transparent 50%, rgba(255, 248, 220, 0.4) 70%, rgba(255, 250, 240, 0.7) 85%, rgba(255, 255, 255, 0.9) 95%, #fff 100%), radial-gradient(ellipse 120% 150% at 50% 20%, #FFD700 0%, #FFC700 15%, #FFB700 25%, #FFA500 40%, #FF8C00 55%, #FFA500 70%, #FFB347 80%, #FFD700 88%, #FFECB3 95%, #FFF8DC 100%);
  position: relative;
}
.SpotRankCardSection-module__rankS___R-Lxv::before {
  content: "";
  position: absolute;
  top: 20%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 150%;
  height: 150%;
  background: radial-gradient(circle at center, rgba(255, 255, 255, 0.7) 0%, rgba(255, 223, 0, 0.4) 10%, rgba(255, 215, 0, 0.2) 25%, transparent 50%);
  animation: SpotRankCardSection-module__divineGlow___Vc5LN 3s ease-in-out infinite;
  pointer-events: none;
}
.SpotRankCardSection-module__rankS___R-Lxv::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: radial-gradient(circle at 30% 20%, rgba(255, 255, 255, 0.8) 0%, transparent 2%), radial-gradient(circle at 70% 25%, rgba(255, 255, 255, 0.7) 0%, transparent 2%), radial-gradient(circle at 40% 40%, rgba(255, 255, 255, 0.6) 0%, transparent 2%), radial-gradient(circle at 60% 35%, rgba(255, 255, 255, 0.9) 0%, transparent 2%);
  animation: SpotRankCardSection-module__sparklePoints___WaLG6 4s ease-in-out infinite;
  pointer-events: none;
}

@keyframes SpotRankCardSection-module__divineGlow___Vc5LN {
  0%, 100% {
    opacity: 0.5;
    transform: translate(-50%, -50%) scale(0.8);
  }
  50% {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.2);
  }
}
@keyframes SpotRankCardSection-module__sparklePoints___WaLG6 {
  0%, 100% {
    opacity: 0.3;
  }
  25% {
    opacity: 1;
  }
  50% {
    opacity: 0.5;
  }
  75% {
    opacity: 0.8;
  }
}
.SpotRankCardSection-module__luckyDayLink___2hRSE {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  text-decoration: underline;
  color: #333;
  font-size: clamp(12px, 3.5vw, 16px);
  margin: 3px auto 0px auto;
  padding: 8px 16px;
  transition: opacity 0.2s ease;
}
.SpotRankCardSection-module__luckyDayLink___2hRSE:hover {
  background-color: #f5f5f5;
}
.SpotRankCardSection-module__luckyDayLink___2hRSE svg {
  font-size: 18px;
  color: #666;
}.AboutShrines-module__wrapper___O-3eM {
  margin: 0;
  position: relative;
}

.AboutShrines-module__container___Dc7Bq {
  display: flex;
  justify-content: flex-end;
  position: relative;
}

.AboutShrines-module__modal___VVU4o {
  position: absolute;
  z-index: 50;
  right: 0;
  top: calc(100% + 8px);
  min-width: 300px;
  max-width: min(400px, 100vw - 40px);
}.InformationLink-module__link___OuTKE {
  display: flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  color: #000;
  text-decoration: underline;
}

.InformationLink-module__icon___7pIo7 {
  flex-shrink: 0;
  font-size: clamp(12px, 3.5vw, 20px);
}

.InformationLink-module__text___IHLG1 {
  color: #000;
  text-decoration: underline;
  font-size: 13px;
}
.SpotRankGauge-module__container___uRnyM {
  display: flex;
  align-items: center;
  gap: clamp(5px, 1.1vw, 10px);
  padding: 0;
  width: 100%;
}

.SpotRankGauge-module__rankBadge___BMkFm {
  flex-shrink: 0;
  width: clamp(50px, 15vw, 110px);
  height: clamp(50px, 15vw, 110px);
  margin-left: 16px;
}

.SpotRankGauge-module__rankIcon___mEYIY {
  width: 100%;
  height: 100%;
  object-fit: contain;
  opacity: 1;
}

.SpotRankGauge-module__rankIconChanging___JYne1 {
  animation: SpotRankGauge-module__rankIconFade___UO11c 0.6s ease-in-out forwards;
}

@keyframes SpotRankGauge-module__rankIconFade___UO11c {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.SpotRankGauge-module__content___7Bdz4 {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.SpotRankGauge-module__header___ynRP4 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-left: 15px;
  margin-bottom: 5px;
  padding-right: 20px;
}

.SpotRankGauge-module__label___MkDTV {
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(11px, 2.2vw, 14px);
  color: #000000;
  font-weight: bold;
  letter-spacing: 0.08em;
  display: flex;
  align-items: center;
  gap: 4px;
}

.SpotRankGauge-module__aboutShrines___dQIue {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

.SpotRankGauge-module__inoriPointIcon___QoBpl {
  width: clamp(24px, 4.5vw, 34px);
  height: clamp(24px, 4.5vw, 34px);
  object-fit: contain;
  vertical-align: middle;
}

.SpotRankGauge-module__gaugeWrapper___xtd04 {
  width: 100%;
  max-width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  position: relative;
  height: clamp(40px, 6.8vw, 50px);
  padding-right: 16px;
}

.SpotRankGauge-module__gaugeBar___BjjHM {
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  gap: 8px; /* トラックと右側の隙間 */
  height: clamp(40px, 6.8vw, 50px);
  /* 背景ぼかし (Figma指定 300px) */
  /* 背景そのものを半透明化し下層をぼかす。Safari対応のため -webkit- 併記 */
  background: var(--gauge-bar-bg, rgba(205, 205, 212, 0.35));
  backdrop-filter: blur(100px);
  border-radius: 34px;
  overflow: visible; /* カウント表示を外に出すため */
  /* 下方向のみだった影を上下からふんわり見えるように調整 */
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12), 0 -2px 8px rgba(0, 0, 0, 0.08); /* 上方向の柔らかい影 */
  padding: 0 10px; /* 左右余白 */
}

/* ===== ランク別 GaugeBar 背景色 (半透明ぼかし用) ===== */
.SpotRankGauge-module__gaugeBarS___Zy5q0 {
  --gauge-bar-bg: rgba(255, 225, 64, 0.12);
}

.SpotRankGauge-module__gaugeBarA___N0ek4 {
  --gauge-bar-bg: rgb(255, 255, 255);
}

.SpotRankGauge-module__gaugeBarB___-S5fo {
  --gauge-bar-bg:rgba(255, 246, 81, 0.20);
}

.SpotRankGauge-module__gaugeBarC___bk-mn {
  --gauge-bar-bg: rgba(205, 205, 212, 0.35);
}

/* カウント表示（ランクバッジ間の中央に絶対配置） */
.SpotRankGauge-module__countDisplay___tEo5c {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 15; /* ゲージより前面に */
  pointer-events: none;
}

/* トラック全体 (flex残余幅) */
.SpotRankGauge-module__gaugeTrack___XfK3b {
  position: relative;
  flex: 1 1 auto;
  height: 100%;
  display: flex;
  align-items: center;
}

.SpotRankGauge-module__countText___1HJMt {
  font-family: "Inter", sans-serif;
  font-size: clamp(14px, 2.6vw, 20px);
  font-weight: 800; /* Inter Extra Bold */
  color: #6d5228;
  letter-spacing: -0.02em;
  text-shadow: 0 2px 6px rgba(255, 255, 255, 0.6), 0 1px 3px rgba(0, 0, 0, 0.3);
  white-space: nowrap;
}

/* 右側固定領域（残り + 次ランク） */
.SpotRankGauge-module__rightFixedGroup___VKXKF {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  gap: clamp(4px, 1.8vw, 10px);
  z-index: 6; /* progressより前 */
  pointer-events: none; /* クリック不要なら */
  height: 100%;
}

.SpotRankGauge-module__currentRankBadge___9kz06 {
  position: absolute;
  left: 6px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80%;
  aspect-ratio: 1/1; /* 高さに応じて正円維持 */
  width: auto; /* 高さから自動計算 */
  background: linear-gradient(135deg, #F3B14E 0%, #FFCE51 100%);
  /* CSS仕様上 border プロパティで直接 linear-gradient は使えないため警告。グラデーション境界線を再現するために背景+内側余白方式へ変更 */
  /* 方法1: 二重背景で擬似的に枠線 (内側を白などで塗り潰し) -> 今回は外側だけ強調する簡易版 */
  border: 2px solid #F3B14E; /* 基調色を使用 */
  /* より厳密なグラデーション枠線が必要なら after 擬似要素で radial-gradient/linear-gradient を絶対配置する案 */
  border-radius: 50%;
  z-index: 10;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2), inset 0 1px 2px rgba(255, 255, 255, 0.3);
}

/* ===== ランク別 Badge 背景色 ===== */
.SpotRankGauge-module__rankSBadge___UVkUn {
  background: linear-gradient(135deg, #FFFBF1 0%, #FFFFFF 100%);
  border: 2px solid #FFFBF1;
}

.SpotRankGauge-module__rankABadge___RjafO {
  background: linear-gradient(200deg, #F3B14E 0%, #FFCE51 100%);
  border: 2px solid #FFCE51;
}

.SpotRankGauge-module__rankBBadge___puSST {
  background: linear-gradient(135deg, #B0B0B0 0%, #D0D0D0 100%);
  border: 2px solid #B0B0B0;
}

.SpotRankGauge-module__rankCBadge___-jv23 {
  background: linear-gradient(135deg, #D6A170 0%, #B87333 100%);
  border: 2px solid #B87333;
}

/* ===== ランク別 Progress 背景色 ===== */
.SpotRankGauge-module__progressS___0RRHx {
  background: linear-gradient(90deg, #FFFBF1 0%, #FFFFFF 100%);
}

.SpotRankGauge-module__progressA___hlf1k {
  background: linear-gradient(90deg, #FFCE51 0%, #F3B14E 100%);
}

.SpotRankGauge-module__progressB___N-hcb {
  background: linear-gradient(90deg, #DBDBE1 0%, #C0C0C8 100%);
}

.SpotRankGauge-module__progressC___wkv57 {
  background: linear-gradient(90deg, #D6A170 0%, #B87333 100%);
}

.SpotRankGauge-module__currentRankText___0zJDP {
  font-size: clamp(18px, 4.5vw, 25px);
  font-weight: 700;
  color: #685613;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

.SpotRankGauge-module__gaugeProgress___Wh5SA {
  height: 80%;
  border-radius: 32px;
  transition: width 0.5s ease;
  z-index: 2;
  display: flex;
  flex-direction: column; /* 縦方向スタック */
  justify-content: center; /* 上下中央に配置 */
  align-items: flex-end; /* 右下に寄せる */
  /* 内側のパディングは控えめに */
  padding: 0 16px 0 8px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
  overflow: hidden;
}
@media (max-width: 460px) {
  .SpotRankGauge-module__gaugeProgress___Wh5SA {
    border-radius: 24px;
    padding: 0 12px 0 6px;
  }
}

.SpotRankGauge-module__rightInfo___BoHkG {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  text-align: right;
}

.SpotRankGauge-module__remaining___KMHnv {
  font-size: clamp(12px, 2.5vw, 15px);
  color: #6a6761;
  font-weight: 400;
  white-space: nowrap;
  letter-spacing: 0.05em;
  display: flex; /* 縦中央用 */
  align-items: center; /* 縦中央 */
  line-height: 1.1; /* 極端な詰まりを緩和 */
}

.SpotRankGauge-module__nextRankBadgeContainer___aNmad {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.SpotRankGauge-module__nextRankBadge___jqjzO {
  flex-shrink: 0;
  display: flex; /* テキスト中央寄せ */
  align-items: center;
  justify-content: center;
  height: 80%;
  aspect-ratio: 1/1; /* 高さに応じて正円維持 */
  width: auto; /* 高さから自動計算 */
  background: #FFFFFF;
  border-radius: 50%;
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2509803922);
  z-index: 5;
}

/* ===== 次ランク Badge 背景色 (nextRankBadge 用) ===== */
.SpotRankGauge-module__nextRankBadgeS___oSX1R {
  background: linear-gradient(135deg, #ffffff 0%, #ffffff 100%);
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.2509803922);
}

.SpotRankGauge-module__nextRankBadgeA___RQME0 {
  background: linear-gradient(135deg, #FFE08F 0%, #FFD671 100%);
  border: 2px solid #F7C979;
}

.SpotRankGauge-module__nextRankBadgeB___if-nu {
  background: linear-gradient(135deg, #B0B0B0 0%, #C3C3CB 100%);
}

.SpotRankGauge-module__nextRankBadgeC___IrvdK {
  background: linear-gradient(135deg, #D6A170 0%, #B87333 100%);
  border: 2px solid #B87333;
}

.SpotRankGauge-module__nextRankBadgeSS___gKkoP {
  background: linear-gradient(135deg, #FFF9B8 0%, #FFF286 100%);
}

.SpotRankGauge-module__nextRankText___ML-ra {
  font-size: clamp(18px, 4.5vw, 25px);
  font-weight: 700;
  color: #999999;
  line-height: 1; /* 高さ方向の余計な余白を除去 */
}.SpotRankBadge-module__container___K4EfJ {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 3;
  width: 112px;
  height: 112px;
}
@media (max-width: 460px) {
  .SpotRankBadge-module__container___K4EfJ {
    top: 8px;
    left: 8px;
    width: 112px;
    height: 112px;
  }
}

.SpotRankBadge-module__badge___E49yD {
  position: relative;
  background: #1a1a1a;
  border: 3px solid #ffd700;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__badge___E49yD {
    width: 32px;
    height: 32px;
    border-width: 2px;
  }
}

.SpotRankBadge-module__rank___Dr11H {
  color: #ffd700;
  font-weight: bold;
  font-size: 18px;
  font-family: serif;
  z-index: 1;
}
@media (max-width: 460px) {
  .SpotRankBadge-module__rank___Dr11H {
    font-size: 14px;
  }
}

.SpotRankBadge-module__star___ck32A {
  position: absolute;
  color: #ffd700;
  font-size: 12px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__star___ck32A {
    font-size: 10px;
  }
}
.SpotRankBadge-module__star___ck32A[data-position="1"] {
  bottom: -16px;
  left: -12px;
  transform: rotate(-20deg);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__star___ck32A[data-position="1"] {
    bottom: -12px;
    left: -8px;
  }
}
.SpotRankBadge-module__star___ck32A[data-position="2"] {
  bottom: -20px;
  left: -2px;
  transform: rotate(-10deg);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__star___ck32A[data-position="2"] {
    bottom: -15px;
    left: -1px;
  }
}
.SpotRankBadge-module__star___ck32A[data-position="3"] {
  bottom: -22px;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__star___ck32A[data-position="3"] {
    bottom: -17px;
  }
}
.SpotRankBadge-module__star___ck32A[data-position="4"] {
  bottom: -20px;
  right: -2px;
  transform: rotate(10deg);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__star___ck32A[data-position="4"] {
    bottom: -15px;
    right: -1px;
  }
}
.SpotRankBadge-module__star___ck32A[data-position="5"] {
  bottom: -16px;
  right: -12px;
  transform: rotate(20deg);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__star___ck32A[data-position="5"] {
    bottom: -12px;
    right: -8px;
  }
}
.SpotRankBadge-module__star___ck32A[data-position="5"][data-filled=false] {
  color: #ffffff;
  text-shadow: -1px -1px 0 #333, 1px -1px 0 #333, -1px 1px 0 #333, 1px 1px 0 #333, 0 1px 2px rgba(0, 0, 0, 0.2);
}
@media (max-width: 460px) {
  .SpotRankBadge-module__star___ck32A[data-position="5"][data-filled=false] {
    text-shadow: -0.8px -0.8px 0 #333, 0.8px -0.8px 0 #333, -0.8px 0.8px 0 #333, 0.8px 0.8px 0 #333, 0 1px 2px rgba(0, 0, 0, 0.2);
  }
}

.SpotRankBadge-module__rankIcon___mwTUO {
  width: 100%;
  height: auto;
}
@media (max-width: 460px) {
  .SpotRankBadge-module__rankIcon___mwTUO {
    width: 80%;
    height: auto;
  }
}.FavoriteEmptyCard-module__card___AbrV4 {
  width: 150px;
  height: 210px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  background-color: #fff8e1;
  font-family: "Noto Sans JP", sans-serif;
}
@media (max-width: 460px) {
  .FavoriteEmptyCard-module__card___AbrV4 {
    width: 150px;
    height: 210px;
  }
}

.FavoriteEmptyCard-module__header___KzN9H {
  background-color: #ff9800;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 8px 0;
  font-size: 16px;
}

.FavoriteEmptyCard-module__body___KCMSs {
  flex: 1;
  padding: 16px 12px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  text-align: center;
}

.FavoriteEmptyCard-module__text___nwRk8 {
  font-size: 12px;
  line-height: 1.5;
  color: #333;
  margin: 0 0 16px;
}

.FavoriteEmptyCard-module__link___9MVqX {
  font-size: 12px;
  color: #795548;
  text-decoration: underline;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}
.FavoriteEmptyCard-module__link___9MVqX:hover {
  opacity: 0.8;
}

.FavoriteEmptyCard-module__star___fK-m9 {
  color: #FF9500;
}.FavoriteShrineSpots-module__container___iFwR- {
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

.FavoriteShrineSpots-module__heading___DR4Q0 {
  margin-top: 32px;
  margin-bottom: 32px;
}

.FavoriteShrineSpots-module__emoji___3Oue0 {
  display: inline-block;
  font-size: 16px;
  vertical-align: middle;
  position: relative;
  top: -2px;
}.BenefitSpotRankBadge-module__wrapper___2YUdS {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 3;
}
@media (min-width: 461px) and (max-width: 1023px) {
  .BenefitSpotRankBadge-module__wrapper___2YUdS {
    transform: scale(0.7);
    transform-origin: top left;
  }
}
@media (min-width: 1024px) {
  .BenefitSpotRankBadge-module__wrapper___2YUdS {
    transform: scale(0.7);
    transform-origin: top left;
  }
}
.BenefitSpotRankBadge-module__wrapper___2YUdS > div {
  position: static !important;
}
.BenefitSpotRankBadge-module__wrapper___2YUdS.BenefitSpotRankBadge-module__small___WL-9C {
  transform: scale(0.65);
  transform-origin: top left;
}
@media (min-width: 461px) and (max-width: 1023px) {
  .BenefitSpotRankBadge-module__wrapper___2YUdS.BenefitSpotRankBadge-module__small___WL-9C {
    transform: scale(0.6);
  }
}
@media (min-width: 1024px) {
  .BenefitSpotRankBadge-module__wrapper___2YUdS.BenefitSpotRankBadge-module__small___WL-9C {
    transform: scale(0.6);
  }
}
.BenefitSpotRankBadge-module__wrapper___2YUdS.BenefitSpotRankBadge-module__xs___JOtyB {
  transform: scale(0.4);
  transform-origin: top left;
}
@media (min-width: 461px) and (max-width: 1023px) {
  .BenefitSpotRankBadge-module__wrapper___2YUdS.BenefitSpotRankBadge-module__xs___JOtyB {
    transform: scale(0.35);
  }
}
@media (min-width: 1024px) {
  .BenefitSpotRankBadge-module__wrapper___2YUdS.BenefitSpotRankBadge-module__xs___JOtyB {
    transform: scale(0.35);
  }
}@keyframes FavoriteSpotItem-module__fadeInUp___v4RCj {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes FavoriteSpotItem-module__fadeOut___fEeft {
  from {
    opacity: 1;
    transform: scale(1);
  }
  to {
    opacity: 0;
    transform: scale(0.8);
  }
}
.FavoriteSpotItem-module__spotCardItem___tmmxG {
  width: 150px;
  flex: 0 0 150px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  scroll-snap-align: start;
  animation: FavoriteSpotItem-module__fadeInUp___v4RCj 0.5s ease-out forwards;
}
.FavoriteSpotItem-module__spotCardItem___tmmxG.FavoriteSpotItem-module__removing___hdSLj {
  animation: FavoriteSpotItem-module__fadeOut___fEeft 0.3s ease-out forwards;
  pointer-events: none;
}

.FavoriteSpotItem-module__link___Vkq-s {
  text-decoration: none;
  color: #fff;
  cursor: pointer;
  display: block;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
}
.FavoriteSpotItem-module__link___Vkq-s:link, .FavoriteSpotItem-module__link___Vkq-s:visited {
  color: #fff;
}
.FavoriteSpotItem-module__link___Vkq-s:hover {
  color: #fff;
}
.FavoriteSpotItem-module__link___Vkq-s:active {
  color: #fff;
}

.FavoriteSpotItem-module__card___dS-dl {
  position: relative;
  width: 150px;
  height: 210px;
  background-color: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  transition: box-shadow 0.2s ease;
}
.FavoriteSpotItem-module__card___dS-dl:hover {
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}
@media (max-width: 460px) {
  .FavoriteSpotItem-module__card___dS-dl {
    width: 150px;
    height: 210px;
  }
}

.FavoriteSpotItem-module__image___BCKcJ {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.FavoriteSpotItem-module__overlay___vBbEY {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.1) 50%, rgba(0, 0, 0, 0.7) 100%);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.FavoriteSpotItem-module__rankWrapper___dKaKV {
  display: flex;
  justify-content: flex-end;
  position: relative;
  align-items: center;
  height: 53px;
}

.FavoriteSpotItem-module__rankBackground___o6e9H {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: black;
  opacity: 0.4;
}

.FavoriteSpotItem-module__rankContent___QkUCh {
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  height: 32px;
  padding-right: 8px;
  gap: 4px;
}

.FavoriteSpotItem-module__ipImageContainer___uCjMC {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}

.FavoriteSpotItem-module__ipIcon___uSa4o {
  height: 20px;
  width: auto;
  display: block;
}

.FavoriteSpotItem-module__inoriFont___V-kKr {
  font-size: 16px;
  letter-spacing: 0px;
  font-weight: 700;
  color: white;
  line-height: 1;
  flex-shrink: 0;
}

.FavoriteSpotItem-module__content___bZUeB {
  display: flex;
  flex-direction: column;
  gap: 4px;
  color: #fff;
  padding: 8px;
  padding-right: 32px;
}

.FavoriteSpotItem-module__favoriteButton___niW8g {
  position: absolute;
  bottom: 8px;
  right: 8px;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.5));
}

.FavoriteSpotItem-module__spotName___qpIuP {
  margin: 0;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.4;
  text-align: left;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}
@media (max-width: 460px) {
  .FavoriteSpotItem-module__spotName___qpIuP {
    font-size: 14px;
  }
}

.FavoriteSpotItem-module__prefecture___Zr74g {
  margin: 0;
  font-size: 12px;
  text-align: left;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}
@media (max-width: 460px) {
  .FavoriteSpotItem-module__prefecture___Zr74g {
    font-size: 12px;
  }
}.FavoriteSurveyCard-module__card___8baBl {
  width: 150px;
  height: 210px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  background-color: #FBF3E1;
  font-family: "Noto Sans JP", sans-serif;
  flex-shrink: 0;
}
@media (max-width: 460px) {
  .FavoriteSurveyCard-module__card___8baBl {
    width: 150px;
    height: 210px;
  }
}

.FavoriteSurveyCard-module__header___w7YyC {
  background-color: #FF9500;
  color: #fff;
  text-align: center;
  padding: 8px 4px;
}

.FavoriteSurveyCard-module__headerTitle___3y28i {
  font-size: 14px;
  font-weight: bold;
  margin: 0;
  line-height: 1.2;
}

.FavoriteSurveyCard-module__headerDesc___A0D0O {
  font-size: 11px;
  margin: 4px 4px 0;
  line-height: 1.2;
  text-align: left;
}

.FavoriteSurveyCard-module__body___dsx1Q {
  flex: 1;
  padding: 8px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}

.FavoriteSurveyCard-module__checkboxContainer___-QG-4 {
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 100%;
}

.FavoriteSurveyCard-module__checkboxLabel___h9bsk {
  display: flex;
  align-items: center;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 4px;
  font-size: 10px;
  color: #333;
  cursor: pointer;
  line-height: 1.2;
  font-weight: 300;
  font-family: "Noto Sans JP", sans-serif;
}
.FavoriteSurveyCard-module__checkboxLabel___h9bsk.FavoriteSurveyCard-module__checked___JjLVE {
  background-color: #fff;
  color: #8a6b2d;
  border-color: #8a6b2d;
}

.FavoriteSurveyCard-module__checkbox___kWWFh {
  margin-right: 4px;
  appearance: none;
  -webkit-appearance: none;
  width: 18px;
  height: 18px;
  border: 2px solid #b5c0c7;
  border-radius: 4px;
  background-color: #fff;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
}
.FavoriteSurveyCard-module__checkbox___kWWFh:checked {
  background-color: #8a6b2d;
  border-color: #8a6b2d;
}
.FavoriteSurveyCard-module__checkbox___kWWFh:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.FavoriteSurveyCard-module__submitButton___uusDY {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  width: 100%;
  display: flex;
  justify-content: center;
  margin-top: 4px;
}
.FavoriteSurveyCard-module__submitButton___uusDY img {
  width: 100%;
  height: auto;
  max-width: 120px;
}

.FavoriteSurveyCard-module__thankYouBody___aH1rT {
  flex: 1;
  padding: 16px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  color: #333;
}

.FavoriteSurveyCard-module__thankYouTitle___iTchZ {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 16px;
  line-height: 1.4;
}

.FavoriteSurveyCard-module__thankYouText___k1BFr {
  font-size: 11px;
  line-height: 1.4;
}.SpotReviewerAttribute-module__userInfo___F2UTW {
  font-size: 12px;
  color: #404040;
  float: right;
}.ExpandableContent-module__wrapper___zUNol {
  position: relative;
  width: 100%;
}

.ExpandableContent-module__container___IXovQ {
  position: relative;
  overflow: hidden;
  transition: max-height 0.3s ease-out;
}

.ExpandableContent-module__contentWrapper___znWGb {
  position: relative;
  visibility: visible;
  height: auto;
}

.ExpandableContent-module__shouldCollapse___AuL7J {
  mask-image: linear-gradient(to bottom, black calc(100% - 2rem), transparent);
}

.ExpandableContent-module__containerCollapsed___ZOzUQ {
  max-height: var(--collapsed-height);
}

.ExpandableContent-module__expanded___sZsk8 {
  max-height: none;
  mask-image: none;
}

.ExpandableContent-module__toggleButton___Loduq {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 0;
  background: none;
  border: none;
  color: #77770d;
  cursor: pointer;
}

.ExpandableContent-module__chevron___35Lot {
  margin-left: 0.5em;
  transition: transform 0.3s ease;
}

.ExpandableContent-module__chevronRotated___sHeW7 {
  transform: rotate(180deg);
}[data-rmiz-ghost] {
  position: absolute;
  pointer-events: none;
}
[data-rmiz-btn-zoom],
[data-rmiz-btn-unzoom] {
  background-color: rgba(0, 0, 0, 0.7);
  border-radius: 50%;
  border: none;
  box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
  color: #fff;
  height: 40px;
  margin: 0;
  outline-offset: 2px;
  padding: 9px;
  touch-action: manipulation;
  width: 40px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
[data-rmiz-btn-zoom]:not(:focus):not(:active) {
  position: absolute;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  pointer-events: none;
  white-space: nowrap;
  width: 1px;
}
[data-rmiz-btn-zoom] {
  position: absolute;
  inset: 10px 10px auto auto;
  cursor: zoom-in;
}
[data-rmiz-btn-unzoom] {
  position: absolute;
  inset: 20px 20px auto auto;
  cursor: zoom-out;
  z-index: 1;
}
[data-rmiz-content="found"] img,
[data-rmiz-content="found"] svg,
[data-rmiz-content="found"] [role="img"],
[data-rmiz-content="found"] [data-zoom] {
  cursor: zoom-in;
}
[data-rmiz-modal]::backdrop {
  display: none;
}
[data-rmiz-modal][open] {
  position: fixed;
  width: 100vw;
  width: 100dvw;
  height: 100vh;
  height: 100dvh;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  overflow: hidden;
}
[data-rmiz-modal-overlay] {
  position: absolute;
  inset: 0;
  transition: background-color 0.3s;
}
[data-rmiz-modal-overlay="hidden"] {
  background-color: rgba(255, 255, 255, 0);
}
[data-rmiz-modal-overlay="visible"] {
  background-color: rgba(255, 255, 255, 1);
}
[data-rmiz-modal-content] {
  position: relative;
  width: 100%;
  height: 100%;
}
[data-rmiz-modal-img] {
  position: absolute;
  cursor: zoom-out;
  image-rendering: high-quality;
  transform-origin: top left;
  transition: transform 0.3s;
}
@media (prefers-reduced-motion: reduce) {
  [data-rmiz-modal-overlay],
  [data-rmiz-modal-img] {
    transition-duration: 0.01ms !important;
  }
}
.lazy-load-image-background.blur {
  filter: blur(15px);
}

.lazy-load-image-background.blur.lazy-load-image-loaded {
  filter: blur(0);
  transition: filter .3s;
}

.lazy-load-image-background.blur > img {
  opacity: 0;
}

.lazy-load-image-background.blur.lazy-load-image-loaded > img {
  opacity: 1;
  transition: opacity .3s;
}

.ImageUrlGallery-module__container___0nwV6 {
  width: 100%;
  overflow: hidden;
}

.ImageUrlGallery-module__scrollContainer___BwIHV {
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  gap: 8px;
  padding-bottom: 8px;
  /* スクロールバーのスタイル調整 */
  -webkit-overflow-scrolling: touch;
  /* 高さを明示的に設定して画像の見切れを防ぐ */
  min-height: var(--image-size);
  /* リストのデフォルトスタイルをリセット */
  list-style: none;
  margin: 0;
  padding: 0;
}

.ImageUrlGallery-module__imageItem___2OCZe {
  flex: 0 0 var(--image-size);
  width: var(--image-size);
  height: var(--image-size);
  border-radius: 8px;
  list-style: none;
}

.ImageUrlGallery-module__imageWrapper___HZGPr {
  position: relative;
  width: var(--image-size);
  height: var(--image-size);
  border-radius: 8px;
  overflow: hidden;
}.SpotReviewItem-module__container___gH0-X {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #c0c1c1;
  padding-bottom: 16px;
  margin-bottom: 16px;
}

.SpotReviewItem-module__nicknameContainer___9o5zf {
  margin-bottom: 8px;
}

.SpotReviewItem-module__nickname___FQ5D3 {
  font-weight: bold;
  font-size: 14px;
}

.SpotReviewItem-module__ratingDateContainer___sIdVh {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.SpotReviewItem-module__visitDate___5vOop {
  font-size: 12px;
  color: #717272;
}

.SpotReviewItem-module__comment___2LXCQ {
  margin: 0 8px 8px 0;
  overflow: hidden;
}

.SpotReviewItem-module__commentText___WVYS5 {
  color: #333;
  font-size: 14px;
  line-height: 1.4;
  margin: 0;
  white-space: pre-wrap;
}

.SpotReviewItem-module__galleryWrapper___-plJE {
  width: 100%;
  margin: 16px 0;
  min-height: 112px;
}

@media (max-width: 460px) {
  .SpotReviewItem-module__imageSizeMobile___6mvSx {
    width: 78px;
    height: 78px;
  }
}

@media (min-width: 461px) {
  .SpotReviewItem-module__imageSizeDesktop___SZZ3N {
    width: 97.5px;
    height: 97.5px;
  }
}.SpotReviews-module__container___RDZFG {
  width: 100%;
  margin: 0 auto;
}

.SpotReviews-module__spotReviews___cf1sU {
  display: flex;
  flex-direction: column;
  margin: 0;
}

.SpotReviews-module__chevron___g7bQG {
  margin-left: 0.5em;
  transition: transform 0.3s ease;
}

.SpotReviews-module__chevronRotated___0qzyn {
  transform: rotate(180deg);
}

.SpotReviews-module__toggleButton___vhT5y {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px;
  margin-top: 10px;
  margin-bottom: 0;
  background: none;
  border: none;
  color: #77770d;
  cursor: pointer;
}.spotId-module__innerContainer___fC-Gi {
  box-sizing: border-box;
}.use-module__container___YUKLq {
  padding: 16px;
  max-width: 782px;
  margin: 1rem auto;
}

.use-module__section___g-IJ- {
  position: relative;
  display: block;
  margin-bottom: 48px;
}

.use-module__heading1___PvWuj {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 16px;
}

.use-module__heading2___uQMCH {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.7;
  color: #333;
  margin-bottom: 16px;
}

.use-module__headingDecorate___Ns9qW {
  position: relative;
  padding-left: 12px;
}
.use-module__headingDecorate___Ns9qW::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: block;
  width: 4px;
  height: 80%;
  background-color: #717272;
  transform: translateY(-50%);
}

.use-module__image___3eqlG {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: auto 246/226;
  overflow-clip-margin: content-box;
  overflow: clip;
  z-index: inherit;
  background: #f7f7f7;
  width: 100vw;
  margin: 0 calc(50% - 50vw);
  padding: 4px calc(50vw - 50% + 8px);
}

.use-module__imgElement___lK3wU {
  display: block;
  max-width: 100%;
  flex: 0 0 auto;
  width: 72%;
  height: auto;
  vertical-align: middle;
  object-fit: contain;
}

.use-module__imgElementSmall___aaEcH {
  width: 54%;
}

.use-module__imgElementMedium___RnGEw {
  width: 75%;
}

.use-module__imageFitBottom___U6oQQ {
  padding-bottom: 0;
}

.use-module__text___STW2m {
  font-size: 16px;
  padding: 16px 0;
}.account-module__account___ofwsR {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
  box-sizing: border-box;
  padding: 32px 2rem;
}
@media (max-width: 460px) {
  .account-module__account___ofwsR {
    padding: 16px 1rem;
  }
}

.account-module__container___bAa9L {
  max-width: 782px;
  width: 100%;
  margin: 2rem auto;
}
@media (max-width: 460px) {
  .account-module__container___bAa9L {
    margin: 1rem auto;
  }
}

.account-module__title___kcshU {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.7;
  margin-bottom: 16px;
}

.account-module__accordion___F7sD8 {
  border-bottom: 1px solid #e0e0e0;
}
.account-module__accordion___F7sD8:before {
  display: none;
}

.account-module__accordionSummary___QfNYe {
  padding: 0 16px;
  min-height: 48px;
}
.account-module__accordionSummary___QfNYe.account-module__Mui-expanded___CCRK- {
  min-height: 48px;
}

.account-module__accordionTitle___mpME- {
  font-size: 12px;
  padding: 8px 0;
  font-weight: 700;
}
.account-module__accordionTitle___mpME- h2 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
}

.account-module__accordionDetails___OP3qP {
  padding: 8px 16px 16px;
}

.account-module__accordionContent___yHetG {
  font-size: 14px;
  white-space: pre-line;
}
.account-module__accordionContent___yHetG a {
  color: #3b4043;
  text-decoration: underline;
}
.account-module__accordionContent___yHetG a:hover {
  text-decoration: none;
}
.account-module__accordionContent___yHetG p {
  margin: 0;
}
.account-module__accordionContent___yHetG ul {
  padding-left: 20px;
  margin: 0;
}
.account-module__accordionContent___yHetG ul li {
  margin-bottom: 8px;
}
.account-module__accordionContent___yHetG ul li strong {
  display: block;
  margin-bottom: 4px;
}
.account-module__accordionContent___yHetG ul li ul {
  margin-top: 8px;
  padding-left: 20px;
}
.account-module__accordionContent___yHetG ul li ul li {
  margin-bottom: 4px;
}.AppDownloadBanner-module__container___pXDP8 {
  background-color: #e7e632;
  width: 100%;
  max-width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.AppDownloadBanner-module__container___pXDP8 img {
  padding: 0;
  margin: 0;
  box-shadow: none;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
}

.AppDownloadBanner-module__titleContainer___NApum {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 15px 20px 10px 20px;
  gap: 5px;
}

.AppDownloadBanner-module__title___5x5QO {
  font-size: 15px;
  font-weight: bold;
  color: #333333;
  text-align: center;
}

.AppDownloadBanner-module__subTitle___ixwzD {
  font-size: 16px;
  font-weight: bold;
  color: #333333;
  text-align: center;
}

.AppDownloadBanner-module__introduceImageContainer___FEHE2 {
  margin-top: 10px;
  max-width: calc(80% + 10px) !important;
  align-self: center;
  display: flex;
  justify-content: center;
  gap: 10px;
  overflow: hidden;
}
.AppDownloadBanner-module__introduceImageContainer___FEHE2:first-child {
  justify-self: flex-start;
}
.AppDownloadBanner-module__introduceImageContainer___FEHE2:last-child {
  justify-self: flex-start;
}

.AppDownloadBanner-module__introduceImage___qN8hu {
  max-width: calc(50% - 5px) !important;
  width: calc(50% - 5px) !important;
}

.AppDownloadBanner-module__bottomFixed___x2Jts {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
}

.AppDownloadBanner-module__footerContainer___sZ2P4 {
  width: 100%;
  height: 80px;
  max-height: 80px;
  background-color: #ffffff;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 12px;
  overflow: hidden;
}

.AppDownloadBanner-module__footerContainerDesktop___nMtcq {
  display: grid;
  width: 100%;
  height: 180px;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: minmax(0, 2fr) minmax(0, 1fr);
  background-color: #ffffff;
  padding: 10px;
}

.AppDownloadBanner-module__footerContainerDesktopItem___SJML9 {
  object-fit: contain;
  display: block;
  align-self: center;
  justify-self: center;
  width: 80%;
  max-width: 80%;
  height: 80%;
  max-height: 80%;
}

.AppDownloadBanner-module__reviewContainer___XLNXC {
  display: flex;
  width: 100%;
  gap: 10px;
  justify-content: center;
  padding: 0 20px;
  flex-direction: column;
}
@media screen and (min-width: 578px) {
  .AppDownloadBanner-module__reviewContainer___XLNXC {
    flex-direction: row-reverse;
  }
}

.AppDownloadBanner-module__review___zNget, .AppDownloadBanner-module__reviewItem___9YE3- {
  position: relative;
  background: #ffffff;
  padding: 5px 10px;
  gap: 5px;
  border-radius: 10px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  max-width: 250px;
  font-size: 14px;
  line-height: 18px;
  margin-bottom: 8px;
}
.AppDownloadBanner-module__review___zNget::after, .AppDownloadBanner-module__reviewItem___9YE3-::after {
  content: "";
  position: absolute;
  bottom: -13px;
  border-style: solid;
  border-width: 15px 10px 0;
  border-color: #ffffff transparent transparent transparent;
  filter: drop-shadow(0 2px 1px rgba(0, 0, 0, 0.1));
  padding-bottom: -2px;
}

.AppDownloadBanner-module__startContainer___1n71z {
  width: fit-content;
  display: flex;
  justify-content: flex-start;
}

.AppDownloadBanner-module__reviewItem___9YE3-:nth-child(odd) {
  align-self: flex-end;
}
.AppDownloadBanner-module__reviewItem___9YE3-:nth-child(odd)::after {
  right: 15%;
}
.AppDownloadBanner-module__reviewItem___9YE3-:nth-child(even) {
  align-self: flex-start;
}
.AppDownloadBanner-module__reviewItem___9YE3-:nth-child(even)::after {
  left: 15%;
}

.AppDownloadBanner-module__iconImageContainer___avKv0 {
  width: 50px;
  max-width: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.AppDownloadBanner-module__iconImage___df86D {
  width: 50px;
  height: 50px;
  object-fit: contain;
  border-radius: 10px;
}

.AppDownloadBanner-module__footerReviewContainer___s2E2q {
  height: 50px;
  max-height: 50px;
  color: #333333;
  text-align: center;
  font-size: 14px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
}
@media screen and (max-width: 374px) {
  .AppDownloadBanner-module__footerReviewContainer___s2E2q {
    display: none;
  }
}

.AppDownloadBanner-module__iosRatingContainer___FlUdN {
  color: #ff9500;
  white-space: wrap;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  width: fit-content;
}

.AppDownloadBanner-module__downloadButton___-9Ng5 {
  width: 140px;
  cursor: pointer;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}

.AppDownloadBanner-module__downloadImage___0USJ8 {
  height: 100%;
  cursor: pointer;
}

.AppDownloadBanner-module__recommendDescriptionContainer___gsNmN {
  width: 100%;
  display: flex;
  gap: 10px;
  justify-content: center;
  align-items: center;
  padding: 0 0 15px 0;
}

.AppDownloadBanner-module__recommendDescriptionItem___uTTm5 {
  font-size: 12px;
  line-height: 18px;
  color: #333333;
  text-align: center;
}
.articleBody {
  line-height: 1.8;
  color: #333;
  max-width: 800px;
  margin: 0 auto;
  text-align: left;
}
.articleBody h2 {
  font-size: 24px;
  font-weight: bold;
  margin-top: 48px;
  margin-bottom: 24px;
  padding-bottom: 8px;
  border-bottom: 1px solid #e2e2e2;
  text-align: left;
}
.articleBody h3 {
  font-size: 20px;
  font-weight: bold;
  margin-top: 40px;
  margin-bottom: 20px;
  text-align: left;
}
.articleBody h4 {
  font-size: 18px;
  font-weight: bold;
  margin-top: 32px;
  margin-bottom: 16px;
  text-align: left;
}
.articleBody u {
  text-decoration: underline;
}
.articleBody h1 u,
.articleBody h2 u,
.articleBody h3 u,
.articleBody h4 u,
.articleBody h5 u,
.articleBody h6 u {
  text-decoration: none;
}
.articleBody p {
  margin-bottom: 24px;
  font-size: 16px;
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.articleBody ul,
.articleBody ol {
  margin-bottom: 24px;
  padding-left: 24px;
}
.articleBody li {
  margin-bottom: 12px;
  font-size: 16px;
}
.articleBody img {
  max-width: 90%;
  height: auto;
  margin-top: 24px;
  margin-bottom: 24px;
  border-radius: 8px;
  display: block;
  margin: 24px auto;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
@media (max-width: 460px) {
  .articleBody img {
    max-width: 95%;
  }
}
.articleBody a[href] {
  color: #0066cc;
  text-decoration: underline;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  hyphens: auto;
}
.articleBody a[href]:link {
  color: #0066cc;
}
.articleBody a[href]:visited {
  color: #663399;
}
.articleBody a[href]:hover {
  color: #003399;
}
.articleBody a[href]:active {
  color: #990000;
}
.articleBody a[href]:focus {
  outline: 2px dotted #aaa;
  text-decoration: underline;
}
.articleBody blockquote {
  margin: 32px 0;
  padding: 16px 24px;
  border-left: 4px solid #e2e2e2;
  background-color: #f8f8f8;
  color: #666;
  font-style: italic;
}
.articleBody table {
  width: 100%;
  margin-bottom: 24px;
  border-collapse: collapse;
}
.articleBody th,
.articleBody td {
  padding: 12px;
  border: 1px solid #e2e2e2;
}
.articleBody th {
  background-color: #f8f8f8;
  font-weight: bold;
}
.articleBody figure {
  max-width: 90%;
  margin: 32px auto;
  text-align: center;
}
@media (max-width: 460px) {
  .articleBody figure {
    max-width: 95%;
  }
}
.articleBody figure img {
  max-width: 100%;
  height: auto;
  border-radius: 8px;
  display: block;
  margin-bottom: 12px;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.articleBody figcaption {
  font-size: 14px;
  color: #666;
  line-height: 1.4;
  margin-top: 8px;
  padding: 0 8px;
}
.articleBody .spot_summary_container {
  background-color: #ebebeb;
  padding: 20px;
  border-radius: 8px;
  margin-bottom: 24px;
}
.articleBody .spot_summary_name_and_review {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 5px;
}
.articleBody .spot_summary_name {
  font-size: 20px;
  font-weight: bold;
  margin: 0;
}
.articleBody .spot_summary_review_wrapper {
  display: flex;
  align-items: center;
  gap: 8px;
}
.articleBody .spot_summary_stars {
  display: flex;
  gap: 2px;
}
.articleBody .spot_summary_stars .star {
  color: #ddd;
  font-size: 20px;
}
.articleBody .spot_summary_stars .star.filled {
  color: #ff9900;
}
.articleBody .spot_summary_stars .star.half {
  position: relative;
  color: #ddd;
}
.articleBody .spot_summary_stars .star.half:before {
  content: "★";
  position: absolute;
  color: #ff9900;
  width: 50%;
  overflow: hidden;
}
.articleBody .spot_summary_stars .star.blank {
  position: relative;
  color: #ff9900;
}
.articleBody .spot_summary_review {
  font-size: 18px;
  font-weight: bold;
}
.articleBody .spot_summary_info h5 {
  font-size: 14px;
  font-weight: bold;
  color: #666;
}
.articleBody .spot_summary_info p {
  margin: 0px;
  font-size: 14px;
}
.articleBody .spot_summary_info a {
  font-size: 14px;
}
.articleBody .spot_summary_info a:hover {
  text-decoration: underline;
}
.articleBody iframe {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  margin: 24px auto;
}
@media (max-width: 460px) {
  .articleBody iframe {
    height: 250px;
  }
}
.articleBody a.spot_summary_name_link[href],
.articleBody a.spot_summary_name_link[href]:link {
  color: #0066cc;
}
.articleBody a.spot_summary_name_link[href]:visited {
  color: #663399;
}
.articleBody a.spot_summary_name_link[href]:hover {
  color: #003399;
}
.articleBody .access_info_wrapper {
  display: flex;
  align-items: center;
}
.articleBody .address_info_wrapper {
  display: flex;
  align-items: center;
}
.articleBody .spot_summary_access_text {
  font-size: clamp(12px, 2.6vw, 16px) !important;
  margin-bottom: 0px;
  margin-left: 5px !important;
}
.articleBody .spot_summary_address_text {
  font-size: clamp(12px, 2.6vw, 16px) !important;
  margin-bottom: 0px;
  margin-left: 5px !important;
}
.articleBody .spot_summary_website_link {
  font-size: clamp(12px, 2.6vw, 16px) !important;
}
.articleBody .spot_summary_spot_detail_link {
  font-size: clamp(12px, 2.6vw, 16px) !important;
}.ArticleDate-module__container___EqbkL {
  display: flex;
  justify-content: flex-end;
  gap: 16px;
  color: #666;
  font-size: 14px;
}

.ArticleDate-module__dateItem___G-4sW {
  display: flex;
  align-items: center;
  gap: 4px;
}

.ArticleDate-module__label___SJV4M {
  font-weight: normal;
}

.ArticleDate-module__date___G8UHj {
  font-weight: normal;
}.ArticleEyecatch-module__containerCover___l4YNO {
  width: 100%;
  margin: 2rem auto;
  position: relative;
  padding-top: 45%;
}

.ArticleEyecatch-module__imageCover___Corhb {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

.ArticleEyecatch-module__containerContain___u9j6D {
  width: 100%;
  margin: 2rem auto;
  position: relative;
}

.ArticleEyecatch-module__imageContain___4srb8 {
  width: 100%;
  object-fit: contain;
  border-radius: 8px;
}.ArticleSNSShare-module__shareContainer___W0zE4 {
  display: flex;
  justify-content: center;
  gap: 1.5rem;
  margin: 2rem auto;
}

.ArticleSNSShare-module__shareButton___TF0Bv {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s;
}
.ArticleSNSShare-module__shareButton___TF0Bv:hover {
  transform: translateY(-2px);
}.ArticleSkeleton-module__container___eYsXd {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.ArticleSkeleton-module__dates___wmv7a {
  display: flex;
  justify-content: flex-end;
  gap: 16px;
}.LocationTags-module__container___cUquT {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
}

.LocationTags-module__tagLink___6A7t2 {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #444;
  text-decoration: underline;
}
.LocationTags-module__tagLink___6A7t2:hover {
  color: #222;
}

.LocationTags-module__tagText___syIeu {
  padding-top: 2px;
}

.LocationTags-module__tagIcon___Kvdw7 {
  width: 16px;
  height: 16px;
}.AuthorInfo-module__authorInfoContainer___L8SCK {
  width: 100%;
  padding: 16px;
  border: 1px solid #e2e2e2;
  border-radius: 4px;
  background-color: #f9f9f9;
}

.AuthorInfo-module__authorName___TurCV {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 8px;
}

.AuthorInfo-module__authorDescription___q1WK2 {
  font-size: 14px;
  line-height: 1.6;
  color: #4a4a4a;
}.EtoFortuneDiagnosis-module__container___H39pC {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px 24px;
  background: #fff;
  border-radius: 24px;
  max-width: 440px;
  margin: 30px auto;
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.2), 0 10px 10px -5px rgba(0, 0, 0, 0.1), 0 -10px 20px -5px rgba(0, 0, 0, 0.15);
  height: clamp(460px, 100vw, 550px);
  justify-content: flex-start;
  width: 95%;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__container___H39pC {
    padding: 20px 16px;
  }
}

.EtoFortuneDiagnosis-module__iconWrapper___U2oWq {
  width: clamp(40px, 10vw, 80px);
  height: clamp(40px, 10vw, 80px);
  border-radius: 50%;
  background: linear-gradient(180deg, #fbbf24 0%, #d946ef 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.EtoFortuneDiagnosis-module__sparkleIcon___c6Sdt {
  font-size: 24px;
}

.EtoFortuneDiagnosis-module__partyIcon___1rQKF {
  font-size: 24px;
}

.EtoFortuneDiagnosis-module__title___xIPvL {
  font-size: 30px !important;
  font-weight: bold;
  background: linear-gradient(90deg, #a855f7, #3b82f6);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin: 0 !important;
  padding-bottom: 30px !important;
  border-bottom: none !important;
}

.EtoFortuneDiagnosis-module__resultTitle___2Y5Uj {
  font-size: clamp(22px, 3vw, 30px) !important;
  font-weight: bold;
  background: linear-gradient(90deg, #ec4899, #3b82f6);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}

.EtoFortuneDiagnosis-module__subtitle___8lnmm {
  font-size: clamp(12px, 3vw, 16px) !important;
  color: #4b5563;
  text-align: center;
  line-height: 1.6;
  margin-bottom: 40px !important;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__subtitle___8lnmm {
    line-height: 1.5;
  }
}

.EtoFortuneDiagnosis-module__inputLabel___cgkkp {
  font-size: clamp(12px, 3vw, 16px) !important;
  color: #374151 !important;
  margin-bottom: 12px !important;
  width: 100%;
  text-align: left !important;
  align-self: flex-start;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__inputLabel___cgkkp {
    font-size: 12px !important;
    margin-bottom: 8px !important;
  }
}

.EtoFortuneDiagnosis-module__cakeEmoji___wVVLM {
  margin-left: 4px;
}

.EtoFortuneDiagnosis-module__inputRow___2mj9J {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 40px;
  width: 100%;
  justify-content: center;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__inputRow___2mj9J {
    gap: 4px;
  }
}

.EtoFortuneDiagnosis-module__dateInput___np-Cc {
  width: 100%;
  max-width: 280px;
  padding: 12px 16px;
  border: 2px solid #E9D4FF;
  border-radius: 8px;
  font-size: 16px;
  text-align: center !important;
  outline: none;
  transition: border-color 0.2s;
  background-color: #fff;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #000000 !important;
}
.EtoFortuneDiagnosis-module__dateInput___np-Cc:focus {
  border-color: #a855f7;
}
.EtoFortuneDiagnosis-module__dateInput___np-Cc::-webkit-date-and-time-value {
  text-align: center !important;
  margin: 0 auto;
  color: #000000 !important;
}
.EtoFortuneDiagnosis-module__dateInput___np-Cc::-webkit-datetime-edit {
  text-align: center !important;
  display: block;
  width: 100%;
  color: #000000 !important;
}
.EtoFortuneDiagnosis-module__dateInput___np-Cc::-webkit-datetime-edit-fields-wrapper {
  display: flex;
  justify-content: center;
  color: #000000 !important;
}
.EtoFortuneDiagnosis-module__dateInput___np-Cc::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__dateInput___np-Cc {
    max-width: 100%;
    padding: 10px 12px;
    font-size: 14px;
  }
}

.EtoFortuneDiagnosis-module__yearInput___-Gu02 {
  width: 150px;
  padding: 12px 16px;
  border: 2px solid #E9D4FF;
  border-radius: 8px;
  font-size: 16px;
  text-align: left;
  outline: none;
  transition: border-color 0.2s;
  -moz-appearance: textfield;
  appearance: textfield;
}
.EtoFortuneDiagnosis-module__yearInput___-Gu02:focus {
  border-color: #a855f7;
}
.EtoFortuneDiagnosis-module__yearInput___-Gu02::-webkit-outer-spin-button, .EtoFortuneDiagnosis-module__yearInput___-Gu02::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__yearInput___-Gu02 {
    width: 100%;
    flex: 2;
    padding: 10px 8px;
    font-size: 14px;
  }
}

.EtoFortuneDiagnosis-module__monthDayInput___QXaAO {
  width: 70px;
  padding: 12px 16px;
  border: 2px solid #E9D4FF;
  border-radius: 8px;
  font-size: 16px;
  text-align: left;
  outline: none;
  transition: border-color 0.2s;
  -moz-appearance: textfield;
  appearance: textfield;
}
.EtoFortuneDiagnosis-module__monthDayInput___QXaAO:focus {
  border-color: #a855f7;
}
.EtoFortuneDiagnosis-module__monthDayInput___QXaAO::-webkit-outer-spin-button, .EtoFortuneDiagnosis-module__monthDayInput___QXaAO::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__monthDayInput___QXaAO {
    width: 100%;
    flex: 1;
    padding: 10px 8px;
    font-size: 14px;
  }
}

.EtoFortuneDiagnosis-module__label___1jSBe {
  font-size: 14px;
  color: #6b7280;
}

.EtoFortuneDiagnosis-module__diagnoseButton___jyScO {
  width: 100%;
  padding: 16px;
  padding-top: clamp(16px, 4vw, 20px) !important;
  padding-bottom: clamp(16px, 4vw, 20px) !important;
  background: linear-gradient(90deg, #a855f7, #ec4899, #3b82f6);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  border: none;
  border-radius: 8px;
  cursor: pointer;
  transition: opacity 0.2s;
}
.EtoFortuneDiagnosis-module__diagnoseButton___jyScO:hover {
  opacity: 0.9;
}
.EtoFortuneDiagnosis-module__diagnoseButton___jyScO:active {
  opacity: 0.8;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__diagnoseButton___jyScO {
    padding: 12px;
    font-size: 14px;
  }
}

.EtoFortuneDiagnosis-module__dateText___V7ZV7 {
  font-size: clamp(14px, 4vw, 18px) !important;
  color: #4b5563;
  margin-bottom: 0 !important;
}

.EtoFortuneDiagnosis-module__resultCard___4xCdm {
  width: 100%;
  padding: 0px 16px;
  border: 4px solid #E9D4FF;
  border-radius: 20px;
  text-align: center;
  margin-bottom: 12px;
  position: relative;
  background: linear-gradient(90deg, #FAF5FF, #FDF2F8, #EFF6FF);
}

.EtoFortuneDiagnosis-module__emojiCircle___poj-Z {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0;
}

.EtoFortuneDiagnosis-module__emojiText___bvxBL {
  font-size: clamp(24px, 4vw, 30px) !important;
}

.EtoFortuneDiagnosis-module__reading___E-1e1 {
  font-size: 13px !important;
  color: #4A5565;
  margin-bottom: 0;
  margin-top: 4px;
  margin-top: -10px !important;
  margin-bottom: 0 !important;
}

.EtoFortuneDiagnosis-module__etoName___cjl9V {
  font-size: clamp(40px, 15vw, 64px) !important;
  font-weight: bold !important;
  background: linear-gradient(90deg, #E60076, #9810FA, #155DFC);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 2px !important;
  line-height: 1;
  margin: 0 !important;
  line-height: 1;
  text-align: center !important;
}

.EtoFortuneDiagnosis-module__catchphrase___2HlGA {
  font-size: clamp(16px, 5vw, 20px) !important;
  font-weight: bold !important;
  color: #364153 !important;
  margin-bottom: 0px !important;
}

.EtoFortuneDiagnosis-module__description___1l7bs {
  font-size: clamp(13px, 4vw, 16px) !important;
  color: #6b7280 !important;
  margin-top: -10px !important;
  margin-bottom: 0px !important;
}

.EtoFortuneDiagnosis-module__guideText___rKW11 {
  font-size: clamp(11px, 3.3vw, 16px) !important;
  color: #4b5563;
  text-align: center;
  line-height: 1.5;
  margin-bottom: 8px !important;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__guideText___rKW11 {
    margin-bottom: 5px !important;
  }
}

.EtoFortuneDiagnosis-module__resetLink___-z-xk {
  font-size: clamp(12px, 3.3vw, 14px) !important;
  color: #6b7280;
  text-decoration: underline;
  cursor: pointer;
}
.EtoFortuneDiagnosis-module__resetLink___-z-xk:hover {
  color: #a855f7;
}

.EtoFortuneDiagnosis-module__calendarButtons___o90CS {
  display: flex;
  gap: 12px;
  width: 100%;
  margin-bottom: 10px;
  justify-content: center;
}
@media (max-width: 460px) {
  .EtoFortuneDiagnosis-module__calendarButtons___o90CS {
    flex-direction: column;
    gap: 8px;
  }
}

.EtoFortuneDiagnosis-module__calendarButton___V3uUN {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(4px, 1vw, 7px) !important;
  font-size: clamp(11px, 3.3vw, 16px) !important;
  color: #1f2937 !important;
  background: #fff;
  border: 2px solid #d8b4fe;
  border-radius: clamp(10px, 1vw, 15px) !important;
  text-decoration: none !important;
  transition: all 0.2s;
  text-align: center;
  cursor: pointer;
  gap: 8px;
}

.EtoFortuneDiagnosis-module__boldDate___llJbn {
  font-weight: bold;
  font-size: 1.1em;
  color: #1f2937;
}@media (max-width: 460px) {
  .ArticleLayout-module__articleLayoutStyle___upTFv {
    padding: 0 16px;
  }
}
@media (min-width: 461px) {
  .ArticleLayout-module__articleLayoutStyle___upTFv {
    padding: 0 24px;
  }
}.spots-module__spotCountsLabel___gMKXV {
  font-size: 12px;
  color: #9c9c9c;
  line-height: 18px;
}.SpotListLayout-module__pageContainer___4XyZW {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.SpotListLayout-module__backgroundContainer___RjvWc {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background-image: url("/images/hero-background.webp");
  background-size: cover;
  background-position: center;
  z-index: -1;
}

.SpotListLayout-module__contentWrapper___Hn5ZG {
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}

.SpotListLayout-module__container___8Cbpl {
  background: #fff;
  width: 100%;
  max-width: 696px;
  margin: 0 auto;
  flex-grow: 1;
}

.SpotListLayout-module__spotCountsLabel___ogu2s {
  font-size: 12px;
  color: #9c9c9c;
  line-height: 18px;
}

.SpotListLayout-module__horizontalSpacerSmartphone___w6SVC {
  padding: 0 16px;
}

.SpotListLayout-module__horizontalSpacerPc___I-e0W {
  padding: 0 24px;
}.ArticleCard-module__container___3-4ej {
  display: flex;
  max-width: 100%;
}
.ArticleCard-module__container___3-4ej:first-child > a {
  padding-top: 0;
}

.ArticleCard-module__linkContainer___KSCAl {
  display: grid;
  grid-template-columns: minmax(80px, 140px) 1fr;
  gap: 20px;
  text-decoration: none;
  padding: 10px 0;
  color: #000000;
  align-items: center;
  justify-content: center;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
}
.ArticleCard-module__linkContainer___KSCAl:link, .ArticleCard-module__linkContainer___KSCAl:visited {
  color: #000000;
}
.ArticleCard-module__linkContainer___KSCAl:hover {
  background-color: #f9fafb;
  color: #000000;
}
.ArticleCard-module__linkContainer___KSCAl:active {
  color: #000000;
}

.ArticleCard-module__imageContainer___OGYVe {
  min-width: 80px;
  min-height: 80px;
  max-width: 140px;
  max-height: 140px;
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 1/1;
}

.ArticleCard-module__image___vYE6R {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ArticleCard-module__content___D9e1X {
  min-width: 200px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 140px;
  gap: 3px;
  text-align: left;
}

.ArticleCard-module__features___5Jo7x {
  font-size: 12px;
  color: #666;
}

.ArticleCard-module__updatedAt___inKPq {
  font-size: 12px;
  color: #666;
  line-height: 1.5;
  margin-top: auto;
}

.ArticleCard-module__title___2rkih {
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.ArticleCard-module__description___TSSUd {
  color: #666;
  line-height: 1.5;
  text-align: left;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ArticleCard-module__titleFontSizeMobile___9-Qob {
  font-size: 14px;
}

.ArticleCard-module__descriptionFontSizeMobile___NzYt0 {
  font-size: 12px;
}

.ArticleCard-module__titleFontSizeDesktop___UiGRT {
  font-size: 16px;
}

.ArticleCard-module__descriptionFontSizeDesktop___wUeLA {
  font-size: 14px;
}.ArticleCardList-module__container___HpOEg {
  margin: 0 auto;
  display: block;
  width: 100%;
}

.ArticleCardList-module__articleList___bLCho {
  margin-top: 24px;
}

.ArticleCardList-module__showAllButton___dCaRY {
  margin-top: 24px;
  text-align: center;
}

.ArticleCardList-module__articleHidden___mqGyB {
  position: relative;
  top: -20px;
  opacity: 0.5;
  height: 0;
  overflow: hidden;
}

.ArticleCardList-module__articleVisible___XBheC {
  position: relative;
  opacity: 1;
  top: 0;
  height: auto;
  transition: opacity 0.3s linear, top 0.3s ease-out, height 0.3s ease-out;
}.BaseArticleCard-module__linkContainer___qXrww {
  display: grid;
  grid-template-columns: minmax(80px, 140px) 1fr;
  gap: 20px;
  text-decoration: none;
  padding: 10px 0;
  color: #000000;
  align-items: center;
  justify-content: center;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
}
.BaseArticleCard-module__linkContainer___qXrww:link, .BaseArticleCard-module__linkContainer___qXrww:visited {
  color: #000000;
}
.BaseArticleCard-module__linkContainer___qXrww:hover {
  background-color: #f9fafb;
  color: #000000;
}
.BaseArticleCard-module__linkContainer___qXrww:active {
  color: #000000;
}

.BaseArticleCard-module__imageContainer___BBcWd {
  min-width: 80px;
  min-height: 80px;
  max-width: 140px;
  max-height: 140px;
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  aspect-ratio: 1/1;
}

.BaseArticleCard-module__image___mP0Rj {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.BaseArticleCard-module__content___fTf2n {
  min-width: 200px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 140px;
  gap: 3px;
  text-align: left;
}

.BaseArticleCard-module__features___F2O87 {
  font-size: 12px;
  color: #666;
}

.BaseArticleCard-module__updatedAt___8bbNz {
  font-size: 12px;
  color: #666;
  line-height: 1.5;
  margin-top: auto;
}

.BaseArticleCard-module__title___VyXRm {
  font-weight: 700;
  line-height: 1.5;
  text-align: left;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.BaseArticleCard-module__description___2Bdc- {
  color: #666;
  line-height: 1.5;
  text-align: left;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.BaseArticleCard-module__titleFontSizeMobile___F0krq {
  font-size: 14px;
}

.BaseArticleCard-module__descriptionFontSizeMobile___ygBdo {
  font-size: 12px;
}

.BaseArticleCard-module__titleFontSizeDesktop___vmwqF {
  font-size: 16px;
}

.BaseArticleCard-module__descriptionFontSizeDesktop___jA0br {
  font-size: 14px;
}.common-module__title___RTNsp {
  font-size: 14px;
  padding: 14px 0px 8px 0px;
}

.common-module__currentDisplayPage___zhs7r {
  font-size: 12px;
  color: #676767;
}

.common-module__justifyContentCenter___7bICY {
  display: flex;
  justify-content: center;
}.spots-module__spotCountsLabel___R9jKo {
  font-size: 12px;
  color: #9c9c9c;
  line-height: 18px;
}
.BenefitChipSlider-module__container___NzZLk {
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  /* スクロールバーを非表示（Webkit） */
  -webkit-overflow-scrolling: touch;
  /* スクロール動作を親から独立させる */
  contain: layout style;
  /* Firefox用のスクロールバー非表示 */
  scrollbar-width: none;
  /* PC環境でのスクロール操作を改善 */
}
.BenefitChipSlider-module__container___NzZLk::-webkit-scrollbar {
  display: none;
}
@media (min-width: 768px) {
  .BenefitChipSlider-module__container___NzZLk {
    cursor: grab;
  }
  .BenefitChipSlider-module__container___NzZLk:active {
    cursor: grabbing;
  }
}

.BenefitChipSlider-module__slider___V0TLL {
  display: flex;
  gap: 8px;
  padding: 0 16px;
  margin: 0;
  /* スクロール時のスナップ（必要に応じて） */
  scroll-snap-type: x mandatory;
}
@media (min-width: 768px) {
  .BenefitChipSlider-module__slider___V0TLL {
    gap: 12px;
    padding: 0 24px;
  }
}

.BenefitChipSlider-module__sliderItem___yybd1 {
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  /* スクロール時のスナップポイント */
  scroll-snap-align: start;
}.BenefitBreadcrumbList-module__breadcrumbContainer___9TYuC {
  margin: 16px 32px;
}

.BenefitBreadcrumbList-module__breadcrumbLink___XV-Tk {
  color: #333;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-decoration-color: rgba(51, 51, 51, 0.5);
}
.BenefitBreadcrumbList-module__breadcrumbLink___XV-Tk:visited {
  color: #333;
}
.BenefitBreadcrumbList-module__breadcrumbLink___XV-Tk:hover {
  text-decoration-thickness: 2px;
  text-decoration-color: #333;
}

.BenefitBreadcrumbList-module__currentPage___DlTct {
  color: #666;
  font-size: 14px;
}.TabSlider-module__container___T6RhU {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.TabSlider-module__tabs___S9TIG {
  display: flex;
  background-color: transparent;
  border-bottom: 1px solid #e0e0e0;
}

.TabSlider-module__tab___q60Sp {
  flex: 1;
  padding: 12px 16px;
  background: none;
  border: none;
  font-size: 16px;
  font-weight: 500;
  color: #666666;
  cursor: pointer;
  transition: color 0.3s ease;
  text-align: center;
}
.TabSlider-module__tab___q60Sp:hover {
  color: #333333;
}
.TabSlider-module__tab___q60Sp.TabSlider-module__active___yDESo {
  color: #333333;
  font-weight: 600;
}

.TabSlider-module__underline___Cf4Xw {
  position: absolute;
  bottom: 0;
  height: 2px;
  background-color: #333333;
  transition: transform 0.3s ease;
  border-radius: 1px;
}

@media (max-width: 460px) {
  .TabSlider-module__tab___q60Sp {
    font-size: 14px;
    padding: 10px 12px;
  }
}
.BenefitPanelList-module__layoutContainer___JDXfA {
  width: 100%;
  box-sizing: border-box;
}
@media (max-width: 460px) {
  .BenefitPanelList-module__layoutContainer___JDXfA {
    padding-left: 5px;
  }
}
@media (min-width: 461px) {
  .BenefitPanelList-module__layoutContainer___JDXfA {
    padding-left: 10px;
  }
}

.BenefitPanelList-module__container___Azw4V {
  width: 100%;
  height: auto;
  overflow-y: auto;
  overflow-x: visible;
  /* スクロールバーを非表示 */
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.BenefitPanelList-module__container___Azw4V::-webkit-scrollbar {
  display: none;
}

.BenefitPanelList-module__spotLinkWrapper___dgp6P {
  /* SpotLinkコンポーネント内のmargin-leftを打ち消す */
  margin-left: 0;
  /* SpotLinkの内部要素のmargin-leftをリセット */
}
@media (max-width: 460px) {
  .BenefitPanelList-module__spotLinkWrapper___dgp6P a {
    margin-left: 0 !important;
  }
}
@media (min-width: 461px) {
  .BenefitPanelList-module__spotLinkWrapper___dgp6P a {
    margin-left: 0 !important;
  }
}

.BenefitPanelList-module__spotCountsContainer___zQp3n {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin-top: 4px;
  margin-bottom: 16px;
  padding-right: 10px;
}

.BenefitPanelList-module__spotCountsLabel___0lwXw {
  font-size: 12px;
  color: #676767;
  line-height: 18px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.BenefitPanelList-module__aboutShrinesWrapper___E1SSI {
  position: relative;
  margin: 0;
  z-index: 1001;
}

@media (max-width: 460px) {
  .BenefitPanelList-module__heading___0LBJi {
    margin-left: 5px;
  }
}
@media (min-width: 461px) {
  .BenefitPanelList-module__heading___0LBJi {
    margin-left: 10px;
  }
}

.BenefitPanelList-module__title___F4NAU {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  font-weight: 600;
  line-height: 21px;
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.BenefitSpotItem-module__container___F6xIz {
  display: flex;
  max-width: 100%;
}
.BenefitSpotItem-module__container___F6xIz:first-child > a {
  padding-top: 0;
}

.BenefitSpotItem-module__linkContainer___bILWH {
  display: grid;
  gap: 10px;
  text-decoration: none;
  color: #000000;
  -webkit-tap-highlight-color: transparent;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin-bottom: 5px;
  padding-right: 10px;
  box-sizing: border-box;
  min-width: 0;
  grid-template-columns: 140px 1fr;
}
.BenefitSpotItem-module__linkContainer___bILWH:link, .BenefitSpotItem-module__linkContainer___bILWH:visited {
  color: #000000;
}
.BenefitSpotItem-module__linkContainer___bILWH:hover {
  background-color: #f9fafb;
  color: #000000;
}
.BenefitSpotItem-module__linkContainer___bILWH:active {
  color: #000000;
}
@media (max-width: 460px) {
  .BenefitSpotItem-module__linkContainer___bILWH {
    grid-template-columns: 140px 1fr;
    grid-template-rows: 1fr;
    margin-left: 5px;
    align-items: center;
    grid-auto-flow: column;
  }
}
@media (min-width: 461px) {
  .BenefitSpotItem-module__linkContainer___bILWH {
    grid-template-columns: 250px 1fr;
    grid-template-rows: 1fr;
    margin-left: 10px;
    align-items: center;
    grid-auto-flow: column;
  }
}

.BenefitSpotItem-module__imageContainer___87WCg {
  overflow: hidden;
  position: relative;
  z-index: 1;
  border-radius: 13px;
  grid-area: 1/1/2/2;
}
@media (max-width: 460px) {
  .BenefitSpotItem-module__imageContainer___87WCg {
    width: 140px;
    height: auto;
    min-width: 140px;
    min-height: 80px;
    max-width: 140px;
    max-height: 184px;
    aspect-ratio: 1/1.296;
  }
}
@media (min-width: 461px) {
  .BenefitSpotItem-module__imageContainer___87WCg {
    width: 250px;
    height: auto;
    min-width: 250px;
    min-height: 200px;
    max-width: 250px;
    max-height: 250px;
    aspect-ratio: 1/1;
  }
}
.BenefitSpotItem-module__imageContainer___87WCg.BenefitSpotItem-module__imagePlaceholder___jeRSF {
  background-color: #e5e5e5;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 460px) {
  .BenefitSpotItem-module__imageContainer___87WCg.BenefitSpotItem-module__imagePlaceholder___jeRSF {
    width: 140px;
    height: auto;
    min-width: 140px;
    min-height: 80px;
    max-width: 140px;
    max-height: 184px;
    aspect-ratio: 1/1.296;
  }
}
@media (min-width: 461px) {
  .BenefitSpotItem-module__imageContainer___87WCg.BenefitSpotItem-module__imagePlaceholder___jeRSF {
    width: 250px;
    height: auto;
    min-width: 250px;
    min-height: 200px;
    max-width: 250px;
    max-height: 250px;
    aspect-ratio: 1/1;
  }
}
.BenefitSpotItem-module__imageContainer___87WCg.BenefitSpotItem-module__imagePlaceholder___jeRSF::before {
  content: "📷";
  font-size: 24px;
  color: #999;
}
@media (max-width: 460px) {
  .BenefitSpotItem-module__imageContainer___87WCg.BenefitSpotItem-module__imagePlaceholder___jeRSF::before {
    font-size: 20px;
  }
}

.BenefitSpotItem-module__image___pQNoJ {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.BenefitSpotItem-module__rankBadge___TncP- {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 2;
}
@media (max-width: 460px) {
  .BenefitSpotItem-module__rankBadge___TncP- {
    width: 55px;
    height: 55px;
  }
}
@media (min-width: 461px) {
  .BenefitSpotItem-module__rankBadge___TncP- {
    width: 70px;
    height: 70px;
  }
}

.BenefitSpotItem-module__content___CoD9m {
  min-width: 100px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  grid-area: 1/2/2/3;
}

.BenefitSpotItem-module__title___sUQl5 {
  font-weight: 600;
  line-height: 21px;
  font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media (max-width: 460px) {
  .BenefitSpotItem-module__title___sUQl5 {
    font-size: 14px;
    margin-bottom: 5px;
  }
}
@media (min-width: 461px) {
  .BenefitSpotItem-module__title___sUQl5 {
    font-size: 18px;
    margin-bottom: 10px;
  }
}

.BenefitSpotItem-module__spotInfoContainer___Deayy {
  margin-top: 8px;
}

.BenefitSpotItem-module__catchphraseWrapper___qcs6F {
  margin: 5px 0 0 0;
}
@media (max-width: 460px) {
  .BenefitSpotItem-module__catchphraseWrapper___qcs6F p {
    font-size: 12px !important;
  }
}
@media (min-width: 461px) {
  .BenefitSpotItem-module__catchphraseWrapper___qcs6F p {
    font-size: 14px !important;
  }
}html {
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
  -moz-tab-size: 4;
  tab-size: 4;
  word-break: normal;
}
*,
:after,
:before {
  background-repeat: no-repeat;
  box-sizing: inherit;
}
:after,
:before {
  text-decoration: inherit;
  vertical-align: inherit;
}
* {
  margin: 0;
  padding: 0;
}
hr {
  color: inherit;
  height: 0;
  overflow: visible;
}
details,
main {
  display: block;
}
summary {
  display: list-item;
}
small {
  font-size: 80%;
}
[hidden] {
  display: none;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
a {
  background-color: transparent;
  color: inherit;
  text-decoration: inherit;
  -webkit-tap-highlight-color: transparent;
}
a:link,
a:visited {
  color: inherit;
}
a:active,
a:hover {
  outline-width: 0;
  color: inherit;
}
code,
kbd,
pre,
samp {
  font-family: monospace;
}
pre {
  font-size: 1em;
}
b,
strong {
  font-weight: bolder;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -.25em;
}
sup {
  top: -.5em;
}
table {
  border-color: inherit;
  text-indent: 0;
}
iframe {
  border-style: none;
}
input {
  border-radius: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
textarea {
  overflow: auto;
  resize: vertical;
}
button,
input,
optgroup,
select,
textarea {
  font: inherit;
}
optgroup {
  font-weight: 700;
}
button {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
[role="button"],
[type="button"],
[type="reset"],
[type="submit"],
button {
  cursor: pointer;
}
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button:-moz-focusring {
  outline: 1px dotted ButtonText;
}
[type="reset"],
[type="submit"],
button,
html [type="button"] {
  -webkit-appearance: button;
}
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
}
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}
select {
  -moz-appearance: none;
  -webkit-appearance: none;
}
select::-ms-expand {
  display: none;
}
select::-ms-value {
  color: currentColor;
}
legend {
  border: 0;
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  color: inherit;
  font: inherit;
}
[disabled] {
  cursor: default;
}
img {
  border-style: none;
}
progress {
  vertical-align: baseline;
}
[aria-busy="true"] {
  cursor: progress;
}
[aria-controls] {
  cursor: pointer;
}
[aria-disabled="true"] {
  cursor: default;
}
body {
  /* macOS / iOS */
  font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", /* Windows */ "Meiryo", "メイリオ", "Yu Gothic", "ＭＳ Ｐゴシック", /* Android */ "Roboto", /* Universal fallback */ sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: "palt";
  letter-spacing: 0.05em;
}

html,
body {
  width: 100vw;
  height: auto;
  overflow-x: hidden;
  overflow-y: auto;
}
/* その他のグローバルスタイルをここに追加 */
