@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
/* CSS Document */

:root{
  --main_txt: #333;
  --pink: #EA5A9D;
}

/* 終了告知文 */
.Post {
  font-size: 22px;
  font-weight: 600;
  color: #c00;
  text-align: center;
}

/* H1 */
#PageName {
  width: 1024px;
  margin-inline: auto;
  font-weight: bold;
}

/* contents */
.contents {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.4375;
  letter-spacing: 0;
}

/* common */
.swiper-outer {
  position: relative;
	padding-bottom: 100px;
}

.swiper {
  overflow: hidden;
}

.swiper-slide {
  height: auto;
}

.tour-items {
  display: grid;
  height: 100%;
  grid-template-rows: auto 1fr auto;
  padding: 14px;
  background: #fff;
  border-radius: 12px;
}

.tour-items__img {
  margin-bottom: 10px;
  transition: 0.3s;
}

.tour-items:hover .tour-items__img {
  opacity: 0.7;
}

.tour-items__place {
  color: #fff;
  font-weight: 700;
  background: var(--pink);
  padding: 5px;
  text-align: center;
  margin-bottom: 8px;
  align-self: end;
}

.tour-items__ttl {
  font-weight: 700;
  margin-bottom: 8px;
}

.tour-items__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-bottom: 8px;
}

.tour-items__list__items {
  display: grid;
  align-items: center;
  background: #FFF7DE;
  padding: 3px;
  border: 1px solid var(--pink);
  color: var(--pink);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.46;
  text-align: center;
}

.tour-items__txt {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.43;
  margin-bottom: 16px;
}

.tour-items__price {
  display: flex;
  justify-content: end;
  align-items: end;
  color: #FF0026;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.44;
  text-align: right;
}
.tour-items__price span {
  font-size: 15px;
}

.tour-items__price__unit {
  font-size: 15px;
}

.swiper-button-next,
.swiper-button-prev {
  display: block;
  width: 56px;
  height: 56px;
  background: url(/attending/t/europethanksgiving/images/ico_arrow01.png) no-repeat right 15px center/13px,
    var(--pink);
  border: 4px solid #fff;
  border-radius: 50%;
  top: calc(50% - 26px);
  translate: 0 -50%;
  margin: 0;
}

.swiper-button-next {
  right: -28px;
}

.swiper-button-prev {
  scale: -1 1;
  left: -28px;
}

.swiper-button-disabled {
  display: none;
}

.swiper-container-horizontal>.swiper-pagination-bullets {
  display: flex;
  width: fit-content;
  left: 50%;
  bottom: 70px;
  translate: -50%;
  gap: 16px;
  justify-content: center;
  align-items: center;
  padding: 8px 24px;
  background: #fff;
  border-radius: 10vh;
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
}

.swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: #BABABA;
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background: var(--pink);
}

/* common-bg01 */
.common-bg01 {
  background: url(/attending/t/europethanksgiving/images/bg.jpg) no-repeat center top/1600px;
	background-color: #fefdd4;
    background-attachment: fixed;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  z-index: 1;
}

/* mv */
.mv {
  width: 1300px;
  height: 580px;
  margin: 0 auto -62px;
  background: url(/attending/t/europethanksgiving/images/bg_mv02@2x.png) no-repeat center top -31px/1300px;
  position: relative;
  z-index: 1;
}
.common-bg01:has(.mv)::before {
  content: '';
  background: url(/attending/t/europethanksgiving/images/mv_bg@2x.png) no-repeat center top/864px;
  width: 864px;
  height: 563px;
  position: absolute;
  z-index: 1;
  margin-inline: auto;
  inset: 0 0 auto;
}
.mv__ttl {
  width: 864px;
  position: absolute;
  top: 0px;
  left: 50%;
  translate: -50%;
  margin: auto;
}

.mv-swiper {
  padding-bottom: 53px;
}

.mv-swiper .tour-items__txt {
  margin-bottom: 21px;
}

.tour-items__price__icon {
  width: 57px;
  /* margin-right: -7px;
  translate: 0 -9px; */
  margin-right: -20px;
  translate: -16px -3px;
}


/* sec--tour */
.sec--tour {
  padding-bottom: 84px;
}

.sec--ttl {
  color: var(--main_txt);
  font-size: 42px;
  letter-spacing: 5%;
  font-weight: 900;
  text-align: center;
  line-height: 1.2;
  position: relative;
  margin: 60px auto 30px;
}
.sec--ttl::before {
  content: '';
  position: absolute;
  background-image: url(/attending/t/europethanksgiving/images/deco_flag.png);
  background-size: 110px 55px;
  width: 110px;
  height: 55px;
  background-repeat: no-repeat;
  inset: -50px 0 auto;
  margin-inline: auto;
}
.sec--ttl strong {
   /* -webkit-text-stroke: 3px #fff; */
text-shadow: 
  -1px -1px 2px #ffffff,
  1px 1px 2px #ffffff,
  -1px 1px 2px #ffffff,
  1px -1px 2px #ffffff,
  -2px -2px 2px #ffffff,
  2px 2px 2px #ffffff,
  -2px 2px 2px #ffffff,
  2px -2px 2px #ffffff,
  -3px -3px 2px #ffffff,
  3px 3px 2px #ffffff,
  -3px 3px 2px #ffffff,
  3px -3px 2px #ffffff,
  -4px -4px 2px #ffffff,
  4px 4px 2px #ffffff,
  -4px 4px 2px #ffffff,
  4px -4px 2px #ffffff;
}
.sec--ttl span {
  text-shadow: 
  -1px -1px 1px #ffffff,
  1px 1px 1px #ffffff,
  -1px 1px 1px #ffffff,
  1px -1px 1px #ffffff,
  -3px -3px 1px #ffffff,
  3px 3px 1px #ffffff,
  -3px 3px 1px #ffffff,
  3px -3px 1px #ffffff;
  color: var(--main_txt);
  font-size: 24px;
  font-weight: 900;
  /* display: block; */
  position: relative;
}
.sec--ttl span::before,
.sec--ttl span::after {
  content:'';
  position: absolute;
  background-image: url(/attending/t/europethanksgiving/images/parts01.svg);
  background-repeat: no-repeat;
  width: 21px;
  height: 28px;
  top: 8px;
}
.sec--ttl span::before {
  left: -30px;
}
.sec--ttl span::after {
  right: calc(21px / 2 - 30px);
  transform: scaleX(-1);
}

.sec--tour__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.sec--tour__list :is(.tour-items__place, .tour-items__ttl) {
  font-size: 14px;
}

.sec--tour__list .tour-items__list__items {
  font-size: 12px;
}

.sec--tour__empty-txt {
  font-size: 22px;
  font-weight: 700;
  text-align: center;
  padding-bottom: 80px;
}

.sec--tour__banner-wrapper {
  background: #831728;
}
.sec--tour__banner {
  display: block;
  max-width: 1300px;
  margin-inline: auto;
}

/* sec--search */
.sec--search {
  padding-block: 41px 56px;
  background: #F1D656;
}

.sec--search .sec--ttl {
  font-size: 28px;
  line-height: 1.4;
}
.sec--search .sec--ttl strong {
  text-shadow: 
  -1px -1px 2px #ffffff,
  1px 1px 2px #ffffff,
  -1px 1px 2px #ffffff,
  1px -1px 2px #ffffff,
  -2px -2px 2px #ffffff,
  2px 2px 2px #ffffff,
  -2px 2px 2px #ffffff,
  2px -2px 2px #ffffff,
  -3px -3px 2px #ffffff,
  3px 3px 2px #ffffff,
  -3px 3px 2px #ffffff,
  3px -3px 2px #ffffff;
}
.sec--search .sec--ttl::before {
  top: -65px;
}
.Search_module--horizontal .Search__form-ttl {
  display: none;
}

/* sec--recommend */
.sec--recommend {
  padding-block: 58px 71px;
}
.sec--recommend .sec--ttl {
  font-size: 28px;
  line-height: 1.4;
}
.sec--recommend .sec--ttl strong {
  text-shadow: 
  -1px -1px 2px #ffffff,
  1px 1px 2px #ffffff,
  -1px 1px 2px #ffffff,
  1px -1px 2px #ffffff,
  -2px -2px 2px #ffffff,
  2px 2px 2px #ffffff,
  -2px 2px 2px #ffffff,
  2px -2px 2px #ffffff,
  -3px -3px 2px #ffffff,
  3px 3px 2px #ffffff,
  -3px 3px 2px #ffffff,
  3px -3px 2px #ffffff;
}
.sec--recommend .sec--ttl::before {
  top: -65px;
}
.sec--recommend__ttl {
  font-size: 30px;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
}

.sec--recommend__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

.recommend__items {
  display: block;
  transition: 0.3s;
}

.recommend__items:hover {
  opacity: 0.7;
}

#tab {
	position: relative;
	z-index: 99;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 30px;
	gap: 4px;
}

#tab div {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 98.8px;
	height: 70px;
	text-align: center;
	color: var(--pink);
	background-color: #FBFBEA;
	border: 1px solid var(--pink);
	font-size: 1.8rem;
	border-radius: 10px;
}

#tab div.current {
	color: #fff;
	background-color: var(--pink); 
}