.sideDataArea .Img .ImgText, .sideDataArea .item, .locationsList .Img .ImgText, .locationsList .item {
  transition: all 0.8s ease-in-out;
}

.locationsList {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}
@media (max-width: 1180px) {
  .locationsList {
    margin: 0 -10px;
  }
}
.locationsList .locationsItem {
  width: 33.3333333333%;
  padding: 0 15px 30px;
}
@media (max-width: 1180px) {
  .locationsList .locationsItem {
    width: 50%;
    padding: 0 10px 30px;
  }
}
@media (max-width: 768px) {
  .locationsList .locationsItem {
    padding: 0 10px 20px;
  }
}
@media (max-width: 480px) {
  .locationsList .locationsItem {
    width: 100%;
  }
}
.locationsList .item {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 20px;
  background-color: #ededed;
}
@media (min-width: 1181px) {
  .locationsList .item:hover .ImgText {
    opacity: 1;
  }
}
.locationsList .Img {
  position: relative;
  width: 100%;
}
.locationsList .Img img {
  width: 100%;
  height: auto;
  display: block;
  backface-visibility: hidden;
}
.locationsList .Img .ImgText {
  pointer-events: none;
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
}
.locationsList .Img .ImgText span {
  color: #fff;
  font-size: clamp(16px, 0.9375vw, 18px);
  font-weight: 500;
  padding: 10px 20px;
  border: 1px solid #fff;
}
.locationsList .Txt {
  flex: 1;
  overflow: hidden;
}
.locationsList .Txt .title {
  padding-top: 15px;
}
.locationsList .Txt .title a {
  display: block;
  font-size: clamp(20px, 1.25vw, 24px);
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 1181px) {
  .locationsList .Txt .title a:hover {
    color: #7e7e7e;
  }
}
.locationsList .Txt .infoList {
  padding-top: 15px;
}
.locationsList .Txt .infoList .infoItem {
  display: flex;
  gap: 0.5em;
  font-size: clamp(14px, 0.8vw, 16px);
  color: #000;
  padding-top: 5px;
}
.locationsList .Txt .infoList .infoItem:first-child {
  padding-top: 0;
}
.locationsList .Txt .infoList .infoItem dt {
  flex-shrink: 0;
  white-space: nowrap;
}
.locationsList .Txt .infoList .infoItem dd {
  flex: 1;
  margin: 0;
}
@media (min-width: 1181px) {
  .locationsList .Txt .infoList .infoItem dd a:hover {
    color: #7e7e7e;
  }
}

.sideDataArea .sideDataBox .slick-track {
  margin-left: 0;
}
.sideDataArea .item {
  padding: 20px 0px;
}
@media (min-width: 1181px) {
  .sideDataArea .item:hover .ImgText {
    opacity: 1;
  }
}
.sideDataArea .Img {
  position: relative;
  width: 100%;
}
.sideDataArea .Img img {
  width: 100%;
  height: auto;
  display: block;
  backface-visibility: hidden;
}
.sideDataArea .Img .ImgText {
  pointer-events: none;
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
}
.sideDataArea .Img .ImgText span {
  color: #fff;
  font-size: clamp(16px, 0.9375vw, 18px);
  font-weight: 500;
  padding: 10px 20px;
  border: 1px solid #fff;
}
.sideDataArea .Txt {
  padding: 15px 0;
  overflow: hidden;
}
.sideDataArea .Txt .title a {
  display: block;
  font-size: clamp(20px, 1.25vw, 24px);
  font-weight: 500;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (min-width: 1181px) {
  .sideDataArea .Txt .title a:hover {
    color: #7e7e7e;
  }
}
.sideDataArea .Txt .text {
  color: #000;
  font-size: clamp(14px, 0.8vw, 16px);
  padding-top: 10px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 768px) {
  .sideDataArea .Txt .text {
    -webkit-line-clamp: 3;
  }
}