@charset "utf-8";
/* CSS Document */
/* reset */
html {
	font-size: 62.5%;
}
body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: normal;
	vertical-align: baseline;
	text-decoration: none;
}
body {
	line-height: 1.5;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}
ol, ul {
	list-style: none;
	list-style-type: none;
}
img {
	max-width: 100%;
}
a {
	color: #333;
  text-decoration: none;
}
a:hover {
	text-decoration: underline;
}

#main_container{
  width:100%;
}

.breadcrumb{
  padding:1.2vw 0.5vw;
}
.breadcrumb ul.breadlist{
  width:100%;
  margin:auto;
  font-size:0;
  white-space: nowrap;
  overflow: auto;
}
.breadcrumb ul.breadlist li{
  font-size: 10px;
  display: inline-block;
}
.breadcrumb ul.breadlist li a{
  text-decoration: underline;
}
.breadcrumb ul.breadlist li+ li:before {
    content: "＞";
    margin: 0 0.3vw;
}
.information-wrap{
  width: 100%;
  padding: 20px 0
}
.information-inbox{
  width: 94vw;
  margin: auto;
  border: 1px solid #888;
  padding: 16px;
  box-sizing: border-box
}
.infomation-title{
  font-weight: bold;
  margin-bottom: 0.3em
}
#main_visual{
  background: url("../images/title_bg.jpg") no-repeat center top;
  background-size: contain;
  padding:10px 0;
  position: relative;
  margin-bottom: 30px;
}
#main_visual:before{
  content:"";
  background-color: rgba(0,0,0,0.3);
  position: absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
  margin: auto;
}
#main-title{
  margin: auto;
  padding: 0.5em;
  z-index:10;
  position: relative;
  text-align: center
}
#main-title>span{
  border-bottom: 1px solid #FFF;
  font-size:5.4vw;
  font-weight:bold;
  color:#FFF;
}

/************************************************************************************
検索モジュールまわり
************************************************************************************/
.mb15 {
	margin-bottom: 15px;
}
#search_area{
  width:94vw;
  margin:10px auto;
  position: relative;
  z-index: 10
}
.search-tab{
  padding: 0.5em;
  font-size:3.6vw;
  font-weight:bold;
  color:#FFF;
  background-color: #3366cc;
  border-radius: 4px 4px 0 0;
  text-align: center;
}
.detail-searchbox{
  margin-bottom: 20px;
}
.detail-searchbox .moduleIner,
.popular-searchbox .train-section{
  background: #FFF;
  border: 2px solid #3366cc;
}
.detail-searchbox .moduleIner{
  padding: 1.2em;
}
.detail-searchbox .moduleIner > .map {
	width:100%;
}
.detail-searchbox .moduleIner>.map h3,
.detail-searchbox .moduleIner>.condition h3{
	margin-bottom:5px;
	font-weight: bold;
  font-size:4.0vw;
}
.detail-searchbox .moduleIner>.condition {
  margin-top: 10px;
}
.detail-searchbox .moduleIner>.condition div > select,
.detail-searchbox .moduleIner>.condition > dl > dd > select {
	padding: 6px 0;
  background: #FFF;
}
a#NTA_JR2_popup_calendar_button {
	display: inline-block;
	vertical-align: bottom;
}
.detail-searchbox .moduleIner>.condition > dl {
	display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.detail-searchbox .moduleIner>.condition > dl > dt {
	width: 100px;
}
.detail-searchbox .moduleIner>.condition > dl > dd {
	width: 200px;
}
.detail-searchbox .moduleIner>.condition > dl > dd > select {
	width: 100%;
}

.detail-searchbox .moduleIner > .data .btn_search {
	width: 100%;
	margin: 0 auto;
}
#NTA_JR2_go {
	height: 45px;
	width: 100%;
	margin: 0 auto;
	text-decoration: none;
	font-weight: bold;
	text-align: center;
	color: #172302;
	border: 1px solid #98b85b;
	border-bottom: 1px solid #799545;
	text-shadow: 0px 1px 0px #d5e8aa;
	-webkit-box-shadow: 1px 1px 0 #cce3a1 inset, 1px 1px 1px #e9e9e9;
	-moz-box-shadow: 1px 1px 0 #cce3a1 inset, 1px 1px 1px #e9e9e9;
	box-shadow: 1px 1px 0 #cce3a1 inset, 1px 1px 1px #e9e9e9;
	background: #cae285;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.5, #cae285), color-stop(0.5, #a3cd5a));
	background: -moz-linear-gradient(top, #cae285 50%, #a3cd5a 50%);
	background: -o-linear-gradient(top, #cae285 50%, #a3cd5a 50%);
	background: -ms-linear-gradient(top, #cae285 50%, #a3cd5a 50%);
	background: linear-gradient(top, #cae285 50%, #a3cd5a 50%);
 filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0, startColorstr='#cae285 50%', endColorstr='#a3cd5a 50%');
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#cae285 50%', endColorstr='#a3cd5a 50%')";
	cursor: pointer;
}
#NTA_JR2_go:active {
	-ms-transform: translateY(2px);
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: none;
}
.train-section{
  padding: 1.2em;
}
.train-section>li{
  margin-bottom:10px; 
}
.train-section>li:last-child{
  margin-bottom: 0
}
.train-section>li a{
  display: block;
  line-height: 42px;
  font-size:4.0vw;
  font-weight:bold;
  color:#FFF;
  background-color: #030F2C;
  text-align: center;
  position: relative
}
.train-section>li a:after{
  content:"\f054";
  font-family: "Font Awesome 5 Free";
  font-weight:900;  
  position: absolute;
  top:0;
  right:3%;
  bottom:0;
  margin: auto;
}
.train-section>li a:hover{
  opacity: 0.8
}

section.inner{
  width:100%;
  margin: 0 auto 10px;
  padding:1.2vw;
  box-sizing: border-box
}

section.inner h2.head_point{
  border-bottom: 3px solid #385bcb;
  position: relative;
  text-align: center
}
section.inner h2.head_point:before,section.inner h2.head_point:after{
  position: absolute;
  left: 50%;
  top: 100%;
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  margin: 0 0 0 -14px;
}
section.inner h2.head_point:before{
  border-top-color:#385bcb;
  border-width: 20px;
}
section.inner h2.head_point:after{
  border-top-color:#FFF;
  margin: 0 0 0 -10px;
  border-width: 16px;
}

section.inner h2.head_point span{
  display: inline-block;
  font-size:4.6vw;
  text-align: center;
  color:#385bcb;
}
section.inner h2.head_point span:before{
  content:"";
  display: inline-block;
  background:url("../images/icon_point.png") no-repeat;
  width:20px;
  height:26px;
  background-size: contain;
  vertical-align: middle;
  margin-right: 5px;
}

section.inner h2.head_hotel{
  border-bottom: 3px solid #C41A41;
  position: relative;
  text-align: center
}
section.inner h2.head_hotel:before,section.inner h2.head_hotel:after{
  position: absolute;
  left: 50%;
  top: 100%;
  border: solid transparent;
  content: '';
  height: 0;
  width: 0;
  margin: 0 0 0 -14px;
}
section.inner h2.head_hotel:before{
  border-top-color:#C41A41;
  border-width: 20px;
}
section.inner h2.head_hotel:after{
  border-top-color:#F3F3F3;
  margin: 0 0 0 -10px;
  border-width: 16px;
}

section.inner h2.head_hotel span{
  display: inline-block;
  font-size:4.6vw;
  text-align: center;
  color:#C41A41;
}
section.inner h2.head_hotel span:before{
  content:"";
  display: inline-block;
  background:url("../images/icon_hotel.png") no-repeat;
  width:20px;
  height:26px;
  background-size: contain;
  vertical-align: middle;
  margin-right: 5px;
}

.set_img{width: 90vw;
  margin: 20px auto 10px;
  text-align: center
}
.merit_list{
  margin: 0 4vw;
}
.merit_list>li{
  font-size:3.2vw;
  font-weight:bold;
  color:#6a6c71;
  margin-bottom: 5px;
  padding-left: 1.5em
}
.merit_list>li .num{
  font-family: "'Open Sans', sans-serif";
  font-style: italic;
  font-weight:bold;
  font-size:4.2vw;
  margin-left: -1.0em
}
.merit_list>li .txt_bold{
  color:#ff3366;
  font-weight:bold;
}

ul.recbnr{
  margin: 0;
  padding:0;
}
ul.recbnr li{
  background: #FFF;
  overflow: hidden;
  margin-bottom: 10px;
}
ul.recbnr li a{
  display: block;
}
ul.recbnr li a img{
  display: block;
  width:30%;
  float:left;
  margin-right: 5px
}
ul.recbnr li a p.rec_txt{
  padding: 5px;
  font-size:1.2rem
}
ul.recbnr li a p.rec_txt>span{
  display: block;
  font-size:1.4rem;
  font-weight:bold;
  margin-bottom: 5px;
}
ul.recbnr li a:hover{
  opacity: 0.8;
  text-decoration: none;
}

ul.rechtl{
  margin:30px auto;
  padding:0;
  overflow:hidden
}
ul.rechtl li{
  margin:5px 5px 10px;
  background:#FFF;
}
ul.rechtl li img{
  display: block;
}
ul.rechtl li .htl{
  padding:10px;
}
ul.rechtl li .htl p+p{
  margin-bottom: 5px
}
ul.rechtl li .htl p.htl_name{
  font-size:1.6rem;
  font-weight:bold
}
ul.rechtl li .htl p.htl_link{
  text-align: right;
}
ul.rechtl li .htl p.htl_link a{
  display: block;
  padding-right: 10px;
  color: #009;
  font-size:1.4rem;
  background-size: 6px 12px;
  position: relative;
  text-decoration: underline;
}
ul.rechtl li .htl p.htl_link a:hover{
  text-decoration: none;
}
ul.rechtl li .htl p.htl_link a:after{
  content: "";
  position: absolute;
  right: 0;
  top:28%;
  width: 8px;
  height: 8px;
  border-top: 2px solid #009;
  border-right: 2px solid #009;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.attention{
  margin: 0 auto 20px;
  background: #ffeeee;
  border-radius: 5px;
}
.attention p.title {
  display: inline-block;
  font-size: 1.2rem;
  margin-left: 4.0vw;
  padding:1.2vw;
  border-radius: 0 0 5px 5px;
  background: #FFF;
}
.attention>ul{
  padding:2vw;
}
.attention>ul li{
  font-size:1.3rem;
}

p.tour_link{
  width:94%;
  margin:50px auto;
}
p.tour_link a{
  display: block;
  padding:8px;
  font-size:4.2vw;
  font-weight:bold;
  color:#FFF;
  text-align: center;
  background-color:#0033cc;
  position: relative;
}
p.tour_link a:hover{
  color:#ffff33;
  text-decoration: none;
}
p.tour_link a:after{
  content: "";
  position: absolute;
  right: 2%;
  top: 40%;
  width: 8px;
  height: 8px;
  border-top: 3px solid #FFF;
  border-right: 3px solid #FFF;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
p.tour_link a:hover:after{
  content: "";
  position: absolute;
  right: 6%;
  top:40%;
  width: 12px;
  height: 12px;
  border-top: 4px solid #ffff33;
  border-right: 4px solid #ffff33;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
section.inner.tourbnr{
  background:#FFF;
  padding:1.2vw;
  margin: auto
}
section.inner.tourbnr>h3{
  border-left: 5px solid #009;
  padding: 1.2vw;
  margin-bottom: 10px;
  color: #009;
  font-size: 3.8vw;
  font-weight: 700;
  text-indent: 10px;
}
ul.banneritem li{
	width:100%;
	margin-bottom: 1.5%;
}
ul.banneritem li a{
  display:block;
  overflow: hidden;
}
ul.banneritem li a:hover{
	opacity:0.8;
	color:#333;
	text-decoration: underline;
}
ul.banneritem li a img{
  display:block;
  width:31%;
  float:left;
  margin-right: 1%;
}
ul.banneritem li a span{
  display: block;
  width:68%;
  float:right;
}

ul.banneritem li:last-child{
	width:100%;
	min-height:auto;
	display:block;
	margin:0;
	padding:0;
	text-align: right;
	box-sizing: border-box;
}
ul.banneritem li:last-child a{
	display: block;
	padding-right:15px;
	color:#333;
	font-size:3.0vw;
  position: relative;
}
ul.banneritem li:last-child a:after{
  content: "";
  position: absolute;
  right: 1%;
  top:26%;
  width: 6px;
  height: 6px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

ul.banneritem li:last-child a:hover{
	opacity:1.0;
}
ul.banneritem li a span {
	display: block;
	margin-top: 3px;
	text-align: left;
	font-size:2.8vw;
	color:#666;
	
}
.goto_bnr{
  margin: 10px auto;
  text-align: center
}
.goto_bnr a{
  display: block
}
.goto_bnr a:hover{
  opacity: 0.8
}
