@charset "utf-8";
/* CSS Document */

.main_contents {
  font-family:'Noto Sans JP', sans-serif; }


.nosp{
  display: none
}



a {
  text-decoration:none;
}

section {
  display:block;
  margin: 0 auto;
	margin-bottom:30px;
  }

.simpleMv--full {
  height:480px;
}

.simpleMv--full>.simpleMv__img {
  height:480px;
}
  
.title-wrapper{
  width: 100%;
  position: relative
}
.mv-slider li{
  margin-right: 10px;
}
.mv-slider li img{
  height: 400px;
  object-fit: cover;
  object-position: center
}
.title-logo{
  margin: auto;
  text-align: center;
	
	
}
.title-logo img{
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
	width:100%;
	padding:20px;
}

/* ナビ */

.nav-wrapper{
	background-color:#462600
}
.nav-list{
width: 100%;
  margin: auto;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
	
}
.nav-list>li{
width: calc(100% / 2);
  height: 48px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
	
}
.nav-list>li>a{
  display: block;
  font-size: 15px;
  text-align: center;
  position: relative;
	color:#fff;
	font-weight:900;
	
}


.nav-list>li:nth-child(odd){
   border-right: 2px dotted #FFF;
}

.nav-list>li:nth-child(-n+4) {
  border-bottom: 2px dotted #FFF;
}



/* 駅から出発とは */
.main_contents {
	margin-top:50px;
}
.ekikara {
	text-align:center;
	font-family: 'Noto Serif JP', serif;
	font-weight:bold;
	font-size:2rem;
	color:#462600;
	 position: relative;
	width:95%;
	margin:0 auto;
	
}

.ekikara::before{
	content: '';
  display: inline-block;
  width: 70px;
  height: 70px;
  background-image: url(../images/ttl_bg.png);
   background-size: cover;
  vertical-align: middle;
	background-repeat: no-repeat;
	 position: absolute;
	top:-30px;
	left:41.5%;

}


.ekikara-txt {
	width:95%;	
	padding-top:30px;
	margin:0 auto;
	font-size:1.2rem;
	
}

/* エリアコンテンツ */

.hawaii,.europa,.asia,.oceania,.america,.guam{
	margin-top:-150px;
}

.area-wrapper{
  margin-top: calc(80vw / 7.5);
}
.area-content{
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: calc(500vw / 7.5);
  position: relative;
  margin-bottom: calc(560vw / 7.5);
}

.inner{
  width: 94vw;
  margin: auto;
}


.eur_cpn {
	text-align:center;
	  position: relative;
    background: #fff0cd;
    box-shadow: 0px 0px 0px 5px #fff0cd;
    border: dashed 2px white;
    padding: 0.2em 0.5em;
    color: #d92e2a;
	font-size:1.5rem;
	font-weight:bold;
}


.eur_cpn:after{
    position: absolute;
    content: '';
    right: -7px;
    top: -7px;
    border-width: 0 15px 15px 0;
    border-style: solid;
    border-color: #ffdb88 #fff #ffdb88;
    box-shadow: -1px 1px 1px rgba(0, 0, 0, 0.15);
}

.hawaii .area-content{
  background-image: url("../images/bg_hawaii.jpg")
}

.guam .area-content{
  background-image: url("../images/bg_guam.jpg")
}


.europa .area-content{
  background-image: url("../images/bg_europa.jpg")
}

.asia .area-box::after{
  background-image: url("../images/Asia.png")
}

.oceania .area-box::after{
  background-image: url("../images/Oceania.png")
}

.america .area-box::after{
  background-image: url("../images/America.png")
}


.area-box{
  width: 94vw;
  background: rgba(255 255 255 / 90%);
  padding: calc(100vw / 7.5) calc(30vw / 7.5) calc(40vw / 7.5);
  box-shadow: calc(4vw / 7.5) calc(4vw / 7.5) calc(10vw / 7.5) rgba(0 0 0 / 35%);
  position: absolute;
  top: calc(380vw / 7.5);;
}

.hawaii .area-box{
  border-top: 6px solid #118bae;
}

.guam .area-box{
  border-top: 6px solid #1b84e6;
}

.europa .area-box{
  border-top: 6px solid #be6301;
}

.asia .area-box{
  border-top: 6px solid #cb0000;
}


.oceania .area-box{
  border-top: 6px solid #01be8b;
}

.america .area-box{
  border-top: 6px solid #7428a0;
}

.area-box::after{
  content: "";
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  width: calc(149vw / 4.5);;
  height: calc(43vw / 4.5);;
  position: absolute;
  top: calc(10vw / 7.5);
  right: 0;
  left: 0;
  margin: auto;
}

.hawaii .area-box::after{
  background-image: url("../images/Hawaii.png")
}

.guam .area-box::after{
  background-image: url("../images/Guam.png")
}


.europa .area-box::after{
  background-image: url("../images/Europa.png")
}

.asia .area-content{
  background-image: url("../images/bg_asia.jpg")
}

.oceania .area-content{
  background-image: url("../images/bg_oceania.jpg")
}


.america .area-content{
  background-image: url("../images/bg_america.jpg")
}


.area{
  text-align: center;
  margin-bottom: calc(20vw / 7.5);
}


.area>span{
  display: inline-block;
  font-family: 'Noto Serif JP', serif;
  font-size: calc(50vw / 7.5);
  font-weight: 700;
  position: relative;
  padding: 0 calc(50vw / 7.5);
}
.area>span::before,
.area>span::after{
  content: "";
  position: absolute;
  top: 50%;
  display: inline-block;
  width: calc(40vw / 7.5);
  height: calc(1vw / 7.5);
  background-color: #666;
}
.area>span::before{
  left: 0;
}
.area>span::after{
  right: 0;
}

.area-heading{
  font-family: 'Noto Serif JP', serif;
  
  font-size: calc(40vw / 7.5);
  text-align: center;
  margin-bottom: calc(30vw / 7.5);
}

.area-tab{
  margin: calc(50vw / 7.5) auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.area-tab>li{
  width: calc(98% / 2);
  border: 1px solid;
  font-size: calc(26vw / 7.5);
  text-align: center;
  padding: calc(20vw / 7.5);
  margin-right: 2%;
  margin-bottom: 2%;
}
.area-tab>li:nth-child(2n){
  margin-right: 0
}

.hawaii .area-tab>li {
	 color: #118bae;
}

.guam .area-tab>li {
	 color: #1b84e6;
}


.europa .area-tab>li {
	 color: #be6301;
}

.asia .area-tab>li {
	 color: #cb0000;
}

.oceania .area-tab>li {
	 color: #01be8b;
}

.america .area-tab>li {
	 color: #7428a0;
}


.hawaii .area-tab>li.nav_on{ 
	background: #118bae;
  color: #FFF;}

.guam .area-tab>li.nav_on{ 
	background: #1b84e6;
  color: #FFF;}

.europa .area-tab>li.nav_on{ 
	background: #be6301;
  color: #FFF;}

.asia .area-tab>li.nav_on,
.asia .area-tab>li:hover{ background: #cb0000;
  color: #FFF;}

.oceania .area-tab>li.nav_on,
.oceania .area-tab>li:hover{ background: #01be8b;
  color: #FFF;}

.america .area-tab>li.nav_on,
.america .area-tab>li:hover{ background: #7428a0;
  color: #FFF;}


.product-area{
	display: none;}

.sub-title__tour{
  text-align: center;
	margin-bottom:30px;
}
.sub-title__tour>span{
  font-size: 20px;
   font-family: 'Noto Serif JP', serif;
  color: #494949;
  text-align: center;
  position: relative;
  display: inline-block;
  margin-bottom: 10px;
	font-weight:bold;
}
.sub-title__tour>span::before,
.sub-title__tour>span::after{
  content: "◆";
  display: inline-block;
  padding: 0 10px
}

/*商品*/


.product-list {
   position: relative;
   z-index: 1;
   /*display: flex;*/
   gap: calc(30vw / 7.5) 0;
   margin-bottom:50px;
   /*overflow-x: scroll;*/
   /*webkit-overflow-scrolling: touch;*/
   /*overflow-scrolling: touch;*/
}


.product-list>li {
  flex: 0 0 90%;
  margin: 0 calc(10vw / (750 / 100)) calc(20vw / (750 / 100));
  
  box-shadow: 0 2px 4px rgb(0 0 0 / 15%);
  position: relative;
}

.product__list--data{
   justify-content: space-between;
  padding: calc(15vw / 7.5) calc(10vw / 7.5);
  flex-wrap: wrap;
  border: calc(2vw / 7.5) solid #c1c0bc;
  font-size: calc(20vw / 7.5);
}

.product__list--image-wrapper {
	width: calc(250vw / 7.5);
}

.product__list--item:empty{
	display: none;
}

.product-area.active {
	display:block;
}


.product__list--data {
   height: 100%;
   display: flex;
   flex-direction: column;
}

.product__list--image img{
    width: 100%;
    vertical-align: bottom;
}

.product__list--type {
    font-size: 12px;
    color: #fff;
    background: #191919;
    padding: 4px 4px 3px 4px;
    text-align: center;
}


.product__list--text-wrapper {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
	width: calc(417vw / 7.5);

}


.product__list--texts {
  display: flex;
  flex-direction: column;
}

.product__list--title {
    font-size: 15px;
    margin: 8px 0;
    font-weight: bold;
    line-height: 1.3em;
	text-align:left;
}

.product__list--texts > [class*="product__list--"]:not(.product__list--type) {
    padding: 0 10px;
}

.product__list--detail {
    line-height: 1.5;
}

.product__list--inner {
    background: #fff;
    color: inherit;
    text-decoration: none;
    display: flex;
    font-size: 12px;
    height: 100%;
}



.product__list--price > :not(.product__list--point):not(.product__list--notes) {
    padding-left: 4px;
}

.product__list--minmax {
    font-size: 17px;
    color: #e90000;
    font-weight: bold;    
}

.product__list--price {
    padding: 10px 10px 10px;
    margin-top: auto;
	text-align:right;
}