@charset "utf-8";
/* CSS Document */

body{
  font-family: "Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

#ttlwrap{
  width:100%;
}
#ttlwrap .ttl{
  width:100%;
  margin: auto;
  position: relative
}
#ttlwrap .ttl img{
}

#content nav{
  background: #222;
  border-bottom: 3px solid #95a7b0
}
#content nav ul.nav_item{
  width:100%;
  margin: auto;
  display: flex;
  flex-wrap: wrap;
}
#content nav ul.nav_item li{
 width: calc(98%/2);
 margin: 0.5%;
}
/*宿泊バスツアー復活したらこれも復活させる
#content nav ul.nav_item li:last-child{
 width: calc(100%/1);
 margin: 0.5%;
}*/
#content nav ul.nav_item li a{
  display: block;
  border: 1px solid #b3b3b3;
  padding: 1.3em;
  font-size:3.4vw;
  font-weight: bold;
  color:#FFF;
  text-align: center;
  position: relative;
  line-height: 1.5em;
}
#content nav ul.nav_item li a:hover{
  background: #ffb21e;
}
#content nav ul.nav_item li a:after{
  content:"";
  display: block;
  background:url("../img/navi_arrow01.png") no-repeat;
  background-size: contain;
  width:8px;
  height:6px;
  position: absolute;
  bottom: 15%;
  left:48%;  
}
/*
nav ul.nav_item li:last-child a{
  border-right:1px solid #b3b3b3;
  padding:0.8em 0.5em;
}
nav ul.nav_item li:last-child a:after{
  content:"";
  background: url("../img/navi_arrow02.png") no-repeat;
  background-size: contain;
  width:6px;
  height:8px;
  top:48%;
  bottom:0;
  left:90%;
}
*/
#contentwrap{
  width: 100%;
}

#contentwrap div:after {
  content: none!important;
}

section{
  width:100%;
  padding: 20px 0;
}
.inner{
  width: 94vw;
  margin: auto;
}
h2.headline{
  margin:0 auto 10px;
  font-size:6.3vw;
  font-weight:bold;
  text-align: center;
  background: url("../img/sp_ttl_bg.png") no-repeat center center;
  background-size: contain
}
h2.headline>span{
  color:#ffb21e;
}
h2.headline .sub{
  display: block;
  font-size:70%;
  font-weight:normal;
  line-height: 1.2
}

section#spot{
  background:#fcf6d3;
  padding-bottom:0;
}
p.introtxt{
  background: url("../img/sp_txt_bg.png") no-repeat bottom center;
  background-size: contain;
  padding: 0.5em 0 2.8em;
  margin-bottom: 10px;
  text-align: center;
  font-size:3.6vw;
  line-height: 1.8
}

ul.spot_list li{
  width:100%;
  background: #FFF;
  margin-bottom: 2px
}

ul.spot_list li .spot_photo{
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}
ul.spot_list li .spot_photo.wide{
  padding-bottom: 200px;
}
ul.spot_list li h3.spot_name{
  padding: 0.3em;
  font-size:6.5vw;
  color:#FFF;
  background:url("../img/acd_arrow.png") no-repeat 96% center rgba(40,40,40,0.4);
  background-size: 14px 10px;
  text-shadow: 1px 1px 3px #333;
}
ul.spot_list li h3.spot_name small{
  font-size:70%;
  font-weight: normal
}
ul.spot_list li .spot_item{
  padding: 0.5em;
  display: none;
}
ul.spot_list li .spot_item p.spot_link{
  width:80%;
  margin:10px auto;
}
ul.spot_list li .spot_item p.spot_link a{
  display: block;
  padding: 0.8em;
  font-size:4.2vw;
  font-weight:bold;
  color:#FFF;
  background: #ffb21e;
  text-align: center;
  border-radius: 5px;
  box-shadow: 0 3px 0 rgba(0,0,0,0.2)
}
ul.spot_list li .spot_item p.spot_link a:after{
  content:"";
  display: inline-block;
  background: url("../img/arrow01.png") no-repeat;
  background-size: contain;
  width:8px;
  height:14px;
  margin-left: 1.0em;
  vertical-align: middle
}
ul.spot_list li .spot_item p.spot_link a:hover{
  background: #ffb21e
}
ul.spot_list li:first-child .spot_item{
  display: block;
}

section#tour{
  background: url("../img/pattern.png") repeat;
}
ul.tour_item{
  margin-bottom: 20px;
}
ul.tour_item li{
  width:100%;
  margin-bottom: 12px;
}
ul.tour_item li a{
  width:100%;
  border: 1px solid #b5b5b5;
  background: #fff;
  display: block;
  color:#333;
  box-sizing: border-box
}
dl.deals{
	margin:0;
 	padding:0;
}
dl.deals dt{
	font-size:4.0vw;
  color: #000099;
	padding-top:0.5em;
	font-weight: bold;
	text-align: center;
  line-height: 1.2em
}
dl.deals dt span{
  display: inline-block;
  font-size:100%;
  margin-right:0.2em
}
dl.deals dd {
  text-align: center;
  font-size:2.6vw;
  line-height: 1.5em;
}
dl.deals dd.pic{
	width:100%;
	height:160px;
	margin-bottom:0;
	overflow: hidden;
	position:relative;
}
dl.deals dd.pic img{
	width:auto;
	height:auto;
	position:absolute;
	top:25%;
	left:50%;
	-webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
dl.deals dd.price {
  color: #cc0000;
  font-size:4.0vw;
  font-weight: bold;
  margin-bottom:0;
}
dl.deals dd.point{
  background:#E5F0FF;
  font-size: 2.8vw;
  padding:0.2em;
}

.bus_ttl_bg{
  width:94vw;
  margin: 0 auto 20px;
  background: #111111;
  transform: skewX(-15deg);
}
.bus_ttl_bg>h3.bus_ttl{
  padding: 0.2em;
  font-size:5.0vw;
  font-weight:bold;
  text-align: center;
  transform: skewX(15deg);
}
.bus_ttl_bg>h3.bus_ttl.stay{
  color:#b8ee44
}
.bus_ttl_bg>h3.bus_ttl.day{
  color:#fd8197
}

section#tour ul.tourList{
  margin-bottom: 30px;
}
section#tour ul.tourList li{
  width:100%;
  border:1px solid #000;
  position:relative;
  box-sizing: border-box;
}
section#tour ul.tourList li:before{
  content: "";
  border: 6px solid transparent;
  border-bottom: 6px solid #000;
  border-right: 6px solid #000;
  position: absolute;
  bottom: 0;
  right: 0;
}
section#tour ul.tourList li a:hover{
  background: none;
}
section#tour ul.tourList li:hover{
  background: #fffcd8;
  border:1px solid #ffac40;
}
section#tour ul.tourList li:hover:before{
  content: "";
  border: 6px solid transparent;
  border-bottom: 6px solid #ffac40;
  border-right: 6px solid #ffac40;
  position: absolute;
  bottom: 0;
  right: 0;
}
section#tour p.link{
  width:80%;
  margin: 20px auto 80px;
}
section#tour p.link a{
  display: block;
  padding: 0.8em;
  font-size:4.2vw;
  font-weight:bold;
  text-align: center;
  color:#FFF;
  background: #ec9b00;
  border-radius: 5px;
}
section#tour p.link a:after{
  content:"";
  display: inline-block;
  background: url("../img/arrow01.png") no-repeat;
  background-size: contain;
  width:8px;
  height:11px;
  vertical-align: middle;
  margin-left: 0.5em;
}
section#tour p.link a:hover{
  opacity: 0.7
}

ul.point_item{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom:30px;
}
ul.point_item li{
  width:48%;
  margin-bottom: 20px;
}
ul.point_item li>h3{
  font-size:3.6vw;
  font-weight:bold;
  color:#ffb21e;
  margin: 10px auto;
}

section#searchBox{
  background: url("../img/pattern.png") repeat;
  padding:20px 0
}
#searchBox #sec_search{
  border-radius:0;
  border:2px solid #003d9a;
}

ul.searchTab{
  margin:20px auto;
}
ul.searchTab li{
  width:80%;
  margin:0 auto 10px;
}
ul.searchTab li a{
  display: block;
  padding:10px;
  background: #009;
  border-radius: 5px;
  text-align: center;
  font-weight: bold;
  color: #FFF;
  font-size: 4.4vw;
  position: relative
}
ul.searchTab li a:after {
  content: "";
  width: 10px;
  height: 14px;
  background: url("../img/arrow01.png") no-repeat 0 0;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
}

.tag01{
	position: absolute;
    background: #1571b4;
    color: #FFF;
    padding: 4px 8px 2px;
	width: 100%;
    text-align: center;
	font-size: 15px;
    font-weight: bold;
}

.tag02{
	position: absolute;
    background: #4f8a24;
    color: #FFF;
    padding: 4px 8px 2px;
	width: 100%;
    text-align: center;
	font-size: 15px;
    font-weight: bold;
}

.tag03{
	position: absolute;
    background: #b11c10;
    color: #FFF;
    padding: 4px 8px 2px;
	width: 100%;
    text-align: center;
	font-size: 15px;
    font-weight: bold;
}

.tag04{
	position: absolute;
    background: #e79612;
    color: #FFF;
    padding: 4px 8px 2px;
	width: 100%;
    text-align: center;
	font-size: 15px;
    font-weight: bold;
}

.tag05{
	position: absolute;
    background: #34248a;
    color: #FFF;
    padding: 4px 8px 2px;
	width: 100%;
    text-align: center;
	font-size: 15px;
    font-weight: bold;
}

#recArea {
    width: 100%;
}
#footerAreaSP h3 {
    text-align: left;
}
#recArea h3 span {
    border-bottom: none;
}