@charset "Shift_JIS";
/*-----
	地図
-----*/
div#Map {
	position:		relative;
	overflow:		hidden;
	width:			300px;
	height:			211px;
	margin:			0;
	padding:		0;
}
div#Map div.mapText div.box {
	position:			absolute;
	cursor:				pointer;
	color:				#333;
	border:				1px solid #229DE7;
	background-color:	white;
	font-size:			10px;
	padding:			0px 3px 2px 3px;
	z-index:			2;
}
div#Map div.mapText div.sel {
	color:				red;
	border:				2px solid red;
}
div#Map div.mapText div.over {
	color:				red;
}
div#Map div.mapText div.na {
	cursor:					default;
	color:					#999;
	background-color:		#EEE;
	border:					1px solid transparent;
}
div#Map div.mapLayer img {
	position:			absolute;
	z-index:			-1;
	top:				0px;
	left:				0px;
}

.popupCalendar {
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-background-size: auto auto;
	background-attachment: scroll;
	background-color: #FFFFFF;
	background-image: none;
	background-position: 0 0;
	background-repeat: repeat;
	border-bottom-color: #A89E72;
	border-bottom-style: solid;
	border-bottom-width: 2px;
	border-left-color-ltr-source: physical;
	border-left-color-rtl-source: physical;
	border-left-color-value: #A89E72;
	border-left-style-ltr-source: physical;
	border-left-style-rtl-source: physical;
	border-left-style-value: solid;
	border-left-width-ltr-source: physical;
	border-left-width-rtl-source: physical;
	border-left-width-value: 2px;
	border-right-color-ltr-source: physical;
	border-right-color-rtl-source: physical;
	border-right-color-value: #A89E72;
	border-right-style-ltr-source: physical;
	border-right-style-rtl-source: physical;
	border-right-style-value: solid;
	border-right-width-ltr-source: physical;
	border-right-width-rtl-source: physical;
	border-right-width-value: 2px;
	border-top-color: #A89E72;
	border-top-style: solid;
	border-top-width: 2px;
	position: absolute;
	width: 340px;
	z-index: 100;
}
.popupCalendar .inner {
	padding-bottom: 0;
	padding-left: 15px;
	padding-right: 0;
	padding-top: 15px;
}
.popupCalendar .close {
	clear: both;
	margin-right: 10px;
	padding-bottom: 8px;
	padding-left: 0;
	padding-right: 0;
	padding-top: 8px;
	text-align: center;
}
.popupCalendar table.calender {
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-background-size: auto auto;
	background-attachment: scroll;
	background-color: #FFFFFF;
	background-image: none;
	background-position: 0 0;
	background-repeat: repeat;
	border-bottom-color: #CCCCCC;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-left-color-ltr-source: physical;
	border-left-color-rtl-source: physical;
	border-left-color-value: #CCCCCC;
	border-left-style-ltr-source: physical;
	border-left-style-rtl-source: physical;
	border-left-style-value: solid;
	border-left-width-ltr-source: physical;
	border-left-width-rtl-source: physical;
	border-left-width-value: 1px;
	border-right-color-ltr-source: physical;
	border-right-color-rtl-source: physical;
	border-right-color-value: #CCCCCC;
	border-right-style-ltr-source: physical;
	border-right-style-rtl-source: physical;
	border-right-style-value: solid;
	border-right-width-ltr-source: physical;
	border-right-width-rtl-source: physical;
	border-right-width-value: 1px;
	border-top-color: #CCCCCC;
	border-top-style: solid;
	border-top-width: 1px;
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
	width: 147px;
}
.popupCalendar table.calender th {
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-background-size: auto auto;
	background-attachment: scroll;
	background-color: #EFEFEF;
	background-image: none;
	background-position: 0 0;
	background-repeat: repeat;
	border-bottom-color: #CCCCCC;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	font-size: 12px;
	font-weight: normal;
	padding-bottom: 2px;
	padding-top: 2px;
	text-align: center;
}
.popupCalendar table.calender td {
	border-bottom-color: #CFCFCF;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	color: #999999;
	font-size: 12px;
	height: 20px;
	line-height: 20px;
	text-align: center;
	vertical-align: middle;
	width: 21px;
}
.popupCalendar table.calender .month {
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-background-size: auto auto;
	background-attachment: scroll;
	background-color: transparent;
	background-image: url("../images/bg4.jpg");
	background-position: left top;
	background-repeat: repeat-x;
	border-bottom-color: #CCCCCC;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-left-color-ltr-source: physical;
	border-left-color-rtl-source: physical;
	border-left-color-value: #CCCCCC;
	border-left-style-ltr-source: physical;
	border-left-style-rtl-source: physical;
	border-left-style-value: solid;
	border-left-width-ltr-source: physical;
	border-left-width-rtl-source: physical;
	border-left-width-value: 1px;
	border-right-color-ltr-source: physical;
	border-right-color-rtl-source: physical;
	border-right-color-value: #CCCCCC;
	border-right-style-ltr-source: physical;
	border-right-style-rtl-source: physical;
	border-right-style-value: solid;
	border-right-width-ltr-source: physical;
	border-right-width-rtl-source: physical;
	border-right-width-value: 1px;
	border-top-color: #CCCCCC;
	border-top-style: solid;
	border-top-width: 1px;
	color: #000000;
	font-weight: bold;
	padding-bottom: 3px;
	padding-left: 0;
	padding-right: 0;
	padding-top: 3px;
	text-align: center;
}
.popupCalendar table.calender .saturday {
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-background-size: auto auto;
	background-attachment: scroll;
	background-color: #CCDDFF;
	background-image: none;
	background-position: 0 0;
	background-repeat: repeat;
}
.popupCalendar table.calender .sunday {
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-background-size: auto auto;
	background-attachment: scroll;
	background-color: #FFCCEE;
	background-image: none;
	background-position: 0 0;
	background-repeat: repeat;
}
.popupCalendar table.calender td a {
	display: block;
	font-weight: bold;
	height: 20px;
	width: 21px;
}
.popupCalendar table.calender td a:hover {
	-moz-background-clip: border;
	-moz-background-origin: padding;
	-moz-background-size: auto auto;
	background-attachment: scroll;
	background-color: #FFFF99;
	background-image: none;
	background-position: 0 0;
	background-repeat: repeat;
}
/*-----
	共通
-----*/
ul.headerNav {
	text-align: right;
	margin: 0px 5px 3px;
	padding: 3px 9px 0px;
}
.sideFavorite .inner .box .search_txt {
	padding-top: 6px;
	font-size: 85%;
	margin-left: 3px;
	line-height: 1.3;
}
.na {
	background-color:	#CCCCCC;
}
.na + label {
	color: #CCCCCC;
}
/*-----
	検索TOP
-----*/
.resultInfoBody .caution {
	float: right;
	white-space: nowrap;
}
.resultCassette1 .head .left .hotel img,
.resultCassette1 .head .leftTrip .hotel img{
	padding-left: 10px;
	margin-bottom: -2px;
}
.resultCassette2 .head .hotel img{
	padding-left: 10px;
	margin-bottom: -2px;
}
.resultCassette3 .head img{
	padding-left: 10px;
	margin-bottom: -2px;
}
/*-----
	プラン一覧
-----*/
.searchModule dl.line2 {
	border-right: 1px solid #D4D4AF;
	margin-right: 6px;
	padding-right: 6px;
}
/*-----
	施設詳細
-----*/
ul.planNav { margin-bottom: 15px; }
ul.planNav li {
	display: inline;
	margin-right: 10px;
	border-right: 1px solid #CCCCCC;
	line-height: 1.2;
	font-weight: bold;
	background: url(../images/arrow1.gif) no-repeat left center;
	padding: 0px 10px 0px 15px;
}
/*-----
	プラン詳細
-----*/
.returnApplyForm {
	font-size: 85%;
	padding: 10px;
	text-align: right;
	clear: both;
}

.searchModule2Attention{
	float:right;
	padding: 2px 5px;
	color: red;
	margin-top: -8px;
}

/*----------
	列車選択ページ 宿泊施設情報
------------*/
.contents_inner .section1 .infoBox {
	border: 1px solid #CCC;
	margin: 10px 15px; 
	width: 675px;
}

.contents_inner .section1 .infoBox .titleHotel {
	font-weight: bold;
	font-size: 11pt;
	margin: 8px 10px 0px;
}

.contents_inner .section1 .infoBox .hotelName {
	font-weight: bold;
	font-size: 11pt;
	margin: 0px 10px;
}

.contents_inner .section1 .infoBox .access {
	margin: 0px 10px 10px;
}
.contents_inner .section1 .infoBox .infoTable {
	margin: 5px 10px;
}
.contents_inner .section1 .infoBox .infoTable td {
	font-weight: bold;
	padding: 0px 18px 0px 7px;
}

.contents_inner .section1 .infoBox th {
	background:#EFEEFF;
	padding: 0px 5px;
	font-weight: normal;
}

/*-----
	列車選択
-----*/
.train_remarks3, .train_remarks4 {
	background: #efefef;
	border: 1px solid #CCCCCC;
	padding: 10px 12px;
	margin: 0px 5px 10px;
}

.trainBody .caution,
.train_remarks2 .caution {
	text-align: left;
	color: red;
	padding-bottom: 2px;
}
table.requestTable .column input.other {
	top: 0px;
	padding: 1px;
	color: #999;
}
table.requestTable .column label { margin-right: 12px; }

.stationBody {
	text-align: center;
}

.trainBody {
	text-align: center;
}

.stationBody img.loading {
	margin: 10px;
}

.trainBody #TrainSelectableTable img.loading {
	margin-top: 140px;
}

.trainBody TrainSelectableTable p {
	font-size: 15px;
	margin-top: 140px;
}

/*-----
	内容確認画面
-----*/
.deleteAdd {
	float: right;
}
.confirm_remarks3 {
	line-height: 1.6;
	margin: 0px 0px 20px 5px;
}
.confirm_remarks3 dl {
	margin: 0;
	padding: 0;
}
.confirm_remarks3 dt {
	margin: 0 0 0 0;
	padding: 0;
	font-weight: bold;
}
.confirm_remarks3 dd {
	margin: 0;
	padding: 0 0 0 12px;
}
/*-----
	追加宿泊
-----*/
.searchHeadBody .addCaution {
	padding-top:6px;
}
.searchHeadBody .addCaution span {
	color:red;
	padding:3px 10px 0px;
}
.searchHeadBody .addCaution a {
	background: url(../images/arrow3.gif) no-repeat left center;
	padding-left: 8px;
}

#attention_message {
	border : 2px solid red;
	margin : 3px 0;
	padding : 6px;
	color:red;
	font-size: 13px;
}

#attention_message span {
	font-weight : bold;
}
.trainBody table.trainTable th input{
	font-size: 7pt;
	color: #585858;
	width: 20px;
	height: 15px;
}
.trainSearchModule .title {
	font-weight: bold;
	color: red;
	font-size: 10pt;
}
#header h1.logo {
	text-indent: -9999px;
}
.jumpHotelInfo{
	float: right;
	font-size: 11pt;
	padding-bottom: 3px;
	padding-left: 10px;
	padding-right: 5px;
	margin-right: 340px;
}
.trainBody {
	clear: both;
	margin: 0px 5px 6px;
}

/*-----
	TripAdvisor
-----*/
/* 検索トップ */
.tripadvisorTop{
	float: right;
	background-color: white;
	margin-right: 8px;
	padding: 4px 6px;
}

.tripadvisorTop dl dt{
	font-weight: bold;
	font-size: 11px;
}
.tripadvisorTop dl dd{
	font-size: 11px;
	color: gray;
}
.tripadvisorTop dl dd .count{
	font-weight: bold;
}

.resultCassette1 .head .left {
	float: left;
	padding-top: 3px;
	width: 520px;
}

.resultCassette1 .head .leftTrip {
	float: left;
	padding-top: 3px;
	width: 340px;
}

/* プラン一覧 */
.tripadvisorHotel{
	border: 1px solid #CCC;
	padding:6px 10px
}

.tripadvisorHotel dl dt{
	font-weight: bold;
	font-size: 11px;
}
.tripadvisorHotel dl dd a{
	font-size: 11px;
}
.tripadvisorHotel dl dd a .count{
	font-weight: bold;
}

.tripadvisorHotel dl .tripCopyright{
	color: gray;
	font-size: 11px;
}

.reviewNote{
	margin-bottom: 5px;
	margin-left: 10px;
	font-size: 11px;
}

/* プラン詳細 2014/11 WD 対応 */
.planDetailBody .detail dl.plan-info dt{
	font-weight: bold;
	float: left;
	width: 24%;
}
.planDetailBody .detail dl.plan-info dd{
	float: left;
	width: 76%;
}
.planDetailBody .detail .detail-line div.icon{
	background: #a9a9a9;
	color: #FFFFFF;
	display: inline;
	padding: 3px 5px 2px;
	white-space: nowrap;
	margin-right: 2px;
	float: left;
}

.planDetailBody dl.meal_info dd {
	margin-left: 50px;
}
.planDetailBody dl.meal_inner dt {
	float: left;
}
.planDetailBody dl.room_info dt {
	float: left;
	font-weight: bold;
}
.planDetailBody dl.room_info dd {
	margin-left: 120px;
}
.planDetailBody div.planBox {
	margin-bottom: 10px;
}
.planDetailBody div#boxRoom.planBox .detailTable3{
	width: 450px;
}

div#applyFormArea div#applyForm table.detailTable3 th{
	text-align: left;
}

.planDetailBody .head div.head_icon_wrap {
	float: left;
	width: 68px;
}
.planDetailBody .head div.head_icon_wrap img{
	margin-bottom: 2px;
}
.planDetailBody .head div.head_title_wrap {
	width: 630px;
	float: left;
}
.planDetailBody .head div.head_title_wrap span.sub{
	font-size: 85%;
}
.planDetailBody div#boxSyosaiIn div.explanation_body {
	margin-left: 20px;
	margin-bottom: 20px;
}
.section2 dd.explanation_body {
	margin: 0 0 10px 0;
}
.feeInfoTable{
	border: 1px solid #b2aea9;
}
.feeInfoTable th{
	background-color: #efefef;
	border: 1px solid #bcbcbc;
	width: 20%;
}





.resultCassette3 .explanation_body {
	margin-left: 30px;
	margin-bottom: 20px;
}


.resultCassette3 dl.meal_info dd {
	margin-left: 50px;
}
.resultCassette3 dl.meal_inner dt {
	float: left;
}

#Foot {
	position:static !important;
	margin-top:15px;
}

body {
	height:auto !important;
}
div.resultCassette3 div.head,
.section2 #itineraryTable,
div.resultCassette1 table.plantable td.plan,
div.planDetailBody div.head div.head_title_wrap,
div.contentsLeft div.section2 table.confirmTable td {
	word-break: break-all;
}

/* hotel.fsp table */
table.detailTable2 {
	border: 1px solid #CCCCCC;
	margin-bottom: 15px;
}
table.detailTable2 th {
	background: #efeeff;
	font-weight: normal;
	text-align: center;
	padding: 2px 5px;
	border: 1px solid #CCCCCC;
	line-height: 1.4;
}
table.detailTable2 th.col1 { background: #eeedf7; }
table.detailTable2 td {
	font-weight: normal;
	text-align: center;
	padding: 3px 10px;
	border: 1px solid #CCCCCC;
	line-height: 1.4;
}
table.detailTable2 td.left { text-align: left; }

.f-tab__item-dp {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
	width: 100%;
	height: 60px;
	padding-top: 1px;
	font-weight: bold;
	font-size: 16px;
	border-top: 1px solid $color-secondary;
	box-sizing: border-box;
	cursor: pointer;
}

.f-tab__item-bottom-dp {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	position: relative;
	width: 100%;
	height: 60px;
	padding-bottom: 1px;
	font-weight: bold;
	font-size: 16px;
	border-bottom: 1px solid $color-secondary;
	box-sizing: border-box;
	cursor: pointer;
}