@charset "UTF-8";

/* --------------------------------------------------------

	スマホ共通リセットファイル
	Last UpDate: 2015.08.18 by t.kuriyama
	
-------------------------------------------------------- */

/* reset styles */

body {
    margin:0;
	font-size: medium;
	color: #333333;
}
a,
a:visited{
	color: #333333;
    /*display: block;*/
	text-decoration: none;
}

/**/
html, body, div, h1, h2, h3, h4, h5, h6,
p, blockquote, pre, address,
ul, ol, li, dl, dt, dd,
table, th, td,
form, fieldset {
	margin: 0;
	padding: 0;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
}
img {
	height: auto;
	border: none;
	vertical-align: top;
}

ul, ol, li {
	list-style:none;
	padding:0;
}

[hidden] {
display: none;
}

em, address {
	font-style: normal;
}

input, select {
    vertical-align:middle;
}


/* new HTML5 elements */
section, nav, article, aside, hgroup,
header, footer, figure, figcaption,
summary {
	display: block;
	margin: 0;
	padding: 0;
}



/* avoid auto gradation style of input button (only appears on iOS Safari)  */
input[type="submit"],
input[type="reset"],
input[type="button"],
button {
    cursor: pointer;
    -webkit-appearance: button;
    *overflow: visible;
}

/* clearfix */
.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

html {
	-webkit-text-size-adjust: 100%;
}



/* FOR PC header */
/* ------------------------------------------------------------ grpheaderArea */
div#widewrapper div#grpheaderArea{
	width: 100%;
	margin: 0;
	border-bottom: 2px solid #69B82A;
}
div#grpheaderArea p#grpTagLine{
	display: none;
}
div#grpheaderArea p#grpSiteID{
	float: none;
	width: 64px;
	height: auto;
	margin: 3px 0 5px 3px;
}
div#grpheaderArea p#grpSiteID img{
	width: 64px;
	height: 32px;
}
div#grpheaderArea p#grpServiceTitle,
div#grpheaderArea dl#grpRemoteNav,
div#grpheaderArea dl#grpSectionDomestic,
div#grpheaderArea dl#sectionNav,
div#grpheaderArea dl#grpSubSectionDomestic{
	display: none;
}

#rtSiteHeader{
	display: block;
	position: relative;
	width: 100%;
	height: 57px;
	min-height: 43px;
	border-bottom: 2px solid #69B82A;
	margin: 0 0 7px 0;
	padding: 0;
	background-color: #FFF;
	line-height: 1;
}
#rtSiteHeader #rtSiteName{
	padding: 14px 7px 7px 7px;
}
#rtSiteHeader #rtSiteName a,
#rtSiteHeader #rtSiteName em{
	display: block;
	width: 57px;
	height: 29px;
	line-height: 1;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	background: url(https://img.travel.rakuten.co.jp/share/smart/header/images/sprite_header_20131010.png) no-repeat 0 0;
	-webkit-background-size: 300px 500px;
	-moz-background-size: 300px 500px;
	-o-background-size: 300px 500px;
}

#rtSiteHeader .rtOutline,
#rtSiteHeader .rtUtility,
#rtSiteHeader .rtSiteNav,
#rtSiteHeader .rtRsvNav{
	display: none;
}


/* ------------------------------------------------------------ grpLocationArea */
div#grpLocationArea{
	display:none;
}
/* SPサイト＞メインコンテンツ共通背景用クラス（sp_commonにも同じクラスが入っています。念のため。） */
.CmnMainContent {
	margin: 0;
	padding: 10px 10px 10px 10px;
	background-color: #EAEAEA;
}

/* FOR PC footer */
/* ------------------------------------------------------------ grpRakutenLinkArea */
#grpRakutenLinkArea{
	padding: 5px 0;
	border-top: 2px solid #72A331;
}
#grpRakutenLinkArea .grpSpelinlk,
#grpRakutenLinkArea #grpKeyword,
#grpRakutenLinkArea #grpFooter,
#grpRakutenLinkArea #grpFooterNav dt,
#grpRakutenLinkArea #grpFooterNav dd ul{
	display: none;
}

#grpRakutenLinkArea .grpCopyright{
	font-size: 60%;
	color: #666666;
	text-align: center;
}

.stickyArea {
	overflow: visible !important;
}

.stickyFilterUpperContent {
	padding: 10px 10px 0px 10px !important;
}

.searchFilterCarousel {
	overflow: hidden;
	display: flex;
}
.searchFilterCarousel .searchFilterSlider {
	overflow-x: scroll;
	display: flex;
}
.searchFilterCarousel .searchFilterSlider::-webkit-scrollbar {
	width: 0;
	height: 0;
	background: transparent;
}
.searchFilterCarousel .searchFilterItem {
	height: 34px;
	display: flex;
	margin-right: 8px;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	white-space: nowrap;
	font-size: 14px;
	background-color: white;
	border: solid 1px #8C8C8C;
	border-radius: 17px;
	-webkit-border-radius: 17px;
	-moz-border-radius: 17px;
}
.searchFilterCarousel .searchFilterItem:last-of-type {
	margin-right: 10px;
}
.searchFilterCarousel .searchFilterItem .searchFilterWrapper{
	display: flex;
	padding: 0 12px;
	align-items: center;
	justify-content: center;
	flex-wrap: nowrap;
	height: 36px;
}
.searchFilterCarousel .searchFilterItem img#filterSliderImg {
	size: 24;
	padding: 0px;
}
.searchFilterCarousel .searchFilterItem .searchFilterSortWrapper{
	position: relative;
	overflow: hidden;
	padding: 0 6px;
}
.searchFilterCarousel .searchFilterItem .searchFilterSortWrapper select{
	width: 100px;
	height: auto;
	padding: 4px 6px;
	font-size: 14px;
	color: #333333;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: transparent;
	border: 0px;
	border-radius: 0px;
	-moz-border-radius: 0px;
}
.searchFilterCarousel .searchFilterItem .searchFilterCondWrapper{
	padding: 0px 6px 0px 12px;
}
.searchFilterCarousel .searchFilterItem .searchFilterCondWrapper .searchFilterDelArea {
	padding: 6px;
	line-height: 11px;
}
.searchFilterCarousel .searchFilterItem .searchFilterCondWrapper .searchFilterDelArea img{
	vertical-align: baseline;
}
.searchFilterCarousel .searchFilterItem .filterButtonText {
	font-size: 14px;
	color: #333333;
	padding: 0 0 0 4px;
}
.searchFilterCarousel .searchFilterItem .filterText {
	font-size: 14px;
	color: #333333;
	line-height: 16px;
}
.stickyFilter {
	position: -webkit-sticky;
	position: sticky;
	top: 0px;
	z-index: 10;
	padding: 4px 0px 4px 0px;
	background: rgba(255, 255, 255, 0);
	transition: background .3s, box-shadow .3s ;
}
.stickyFilter.fixed {
	position: fixed;
	background: rgba(255, 255, 255, 100);
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
	transition: background .3s, box-shadow .3s ;
	padding: 4px 0px 4px 10px;
	left: 0;
	right: 0;
}
#filterTop {
	height:1px;
}
#filterBottom {
	height: 8px;
}
.myObserver {
	height: 1px;
	width: 1px;
	pointer-events: none;
	position: relative;
	top:auto;
	z-index: -1;
	overflow: hidden;
}
.focusAreaBox .filterButtonDivSp .filterButtonContainer {
	flex: 1;
	justify-content: center;
	text-align: center;
	flex-wrap: nowrap;
	align-items: center;
}

.focusAreaBox .filterButtonDivSp .filterButtonContainer:first-child {
	margin: 8px 0px 8px 20px;
}

.focusAreaBox .filterButtonDivSp .filterButtonContainer:last-child {
	margin: 8px 20px 8px 0px;
}

.focusAreaBox .filterButtonDivSp .filterButtonContainer .filterUnCheckAllButton {
	border: none;
	color: #1D54A7;
	background: transparent;
	font-size: 12px;
	font-weight: normal;
	height: 100%;
	width: 100%;
	padding: 0;
}

.focusAreaBox .filterButtonDivSp .filterButtonContainer .filterSubmitButton {
	border: none;
	border-radius: 3px;
	background: -moz-linear-gradient(top, #E37435, #CC3617);
	background: -webkit-gradient(linear, left top, left bottom, from(#E37435), to(#CC3617));
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	font-size: 14px;
	text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.25);
	height: 100%;
	width: 100%;
	letter-spacing: .0em;
}

.focusAreaBox .filterButtonDivSp {
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 52px;
	background-color: #EAEAEA;
	display: flex;
	z-index: 999;
	padding: 0;
}