﻿@charset "utf-8";
/*--------------------------------------------------------------------------------

  catch

--------------------------------------------------------------------------------*/
.tourism .catch {
  background: #f3f3f3;
  margin: calc(var(--main-pdt, var(--space-l)) * -1) 0 0 0;
  padding: 84px 0;
}
.tourism .catch .l-container {
  display: flex;
  /*flex-direction: row-reverse;*/
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  align-content: flex-start;
}
.tourism .catch .l-container img {
  width: 100%;
  max-width: 580px;
  height: auto;
  aspect-ratio: 580 / 327;
}
/*.tourism .catch .l-container p {
  display: block;
  margin: 30px 0 0 0;
}
.tourism .catch .l-container p:first-child {
  margin: 0;
}*/
.tourism .catch .l-container p strong {
  display: block;
  margin-bottom: 30px;
  color: #122266;
  font-size: var(--fs-5l);
  font-family: var(--ff-min);
  line-height: 1.6;
}

@media (max-width: 760px) {
.tourism .catch {
  padding: 42px 0;
}
.tourism .catch .l-container {
  /*flex-direction: column-reverse;*/
  display: block;
}
.tourism .catch .l-container img {
  width: 100%;
  max-width: initial;
  height: auto;
  aspect-ratio: 580 / 327;
  margin-top: 30px;
}
.tourism .catch .l-container p strong {
  font-size: calc(var(--fs-5l) * 0.75);
}
.tourism .catch .l-container p strong br.pc {
  display: none;
}
}



/*--------------------------------------------------------------------------------

  spot

--------------------------------------------------------------------------------*/
.spot { padding: 84px 0; }
.spot-list {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap:48px 24px;
}
.spot-item {
  margin-bottom: 40px;
}
.spot-photo {
  margin-bottom: 24px;
}
.spot-name {
  font-size: var(--fs-2l);
  font-weight: 400;
  margin-bottom: 24px;
}

@media (max-width: 760px) {
.spot .spot-list {
  display: block;
  }
}

/*--------------------------------------------------------------------------------

  transportation

--------------------------------------------------------------------------------*/
.transportation {
  padding: 84px 0;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}
.transportation-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px 24px;
  margin-top: 36px;
}
.transportation-name {
  font-size: var(--fs-2l);
  font-weight: 400;
  margin-bottom: 24px;
}
.transportation-description {
  margin-bottom: 24px;
}
.transpotation-company-list {
  --link-color: var(--txt-color);
  --link-color-hover: var(--color-primary);
  --link-deco: none;
  --link-deco-hover: none;
  align-self: center;
  font-size: var(--fs-s);
}
.transpotation-company-list li a {
  position: relative;
  padding-left: 1rem;
}
.transpotation-company-list li a:before {
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  line-height: 1;
  position: absolute;
  top: 0.4rem;
  left: 0;
  background: currentColor;
  color: var(--color-red);
  mask-image: var(--icon-redtriangle);
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
  transition: var(--hover-trans);
}
.transportation-category-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 36px 18px;
  margin-top: 24px;
}
.transportation-category {
  font-size: .8125rem;
  font-weight: 400;
  display: inline-flex;
  padding: 0 1.125rem;
  margin-bottom: 0.5em;
  height: 1.75rem;
  justify-content: center;
  align-items: center;
  border: 1px solid #1a1a1a
}

@media (max-width: 760px) {
.transportation .transportation-list {
  display: block;
  gap: 48px 24px;
  }
  .transportation .transportation-item {
  margin-bottom: 24px;
  }
}

/*--------------------------------------------------------------------------------

  other

--------------------------------------------------------------------------------*/
.contact { padding: 84px 0 24px; }
.link { padding: 48px 0; background-color: #e6f5ea; }
.footer { padding: 48px 0; }
