@charset "utf-8";
* "font-awesome" is lisenced under the SIL Open Font License 1.1
* https://fortawesome.github.io/Font-Awesome
* http://scripts.sil.org/OFL
*/
@font-face {
  font-family: "icon";
  src: url("../fonts/icon.woff?240326");
}
.mod_ico_01_arrow::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e001";
  vertical-align: middle;
}

.mod_ico_02_blank::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  vertical-align: middle;
}

.mod_ico_03_pdf::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e003";
  vertical-align: middle;
}

.mod_ico_04_search::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e004";
  vertical-align: middle;
}

.mod_ico_05_twitter::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e005";
  vertical-align: middle;
}

.mod_ico_06_facebook::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e006";
  vertical-align: middle;
}

.mod_ico_07_contact::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e007";
  vertical-align: middle;
}

.mod_ico_08_favorite::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e008";
  vertical-align: middle;
}

.mod_ico_09_favorite::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e009";
  vertical-align: middle;
}

.mod_ico_10_place::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00a";
  vertical-align: middle;
}

.mod_ico_11_calendar::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00b";
  vertical-align: middle;
}

.mod_ico_12_plus::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00c";
  vertical-align: middle;
}

.mod_ico_13_map::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00d";
  vertical-align: middle;
}

.mod_ico_14_check::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00e";
  vertical-align: middle;
}

.mod_ico_15_country::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00f";
  vertical-align: middle;
}

.mod_ico_16_close::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e010";
  vertical-align: middle;
}

.mod_ico_17_tell::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e011";
  vertical-align: middle;
}

.mod_ico_18_city::after {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e012";
  vertical-align: middle;
}
 #gnav .mainNav .headerNav .primary > li.favorite > a::before {
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e008";
    font-size: 15px;
    line-height: 15px;
    vertical-align: middle;
    margin-bottom: 3px;
    display: block;
  }
  #gnav .mainNav .headerNav .headerNavInner .primary > li .secondary .inner .nav > li::before {
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e001";
    font-size: 10px;
    line-height: 10px;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    right: 10px;
    color: rgba(50, 50, 50, 0.6);
    transform: translateY(-50%);
  }
  #gnav .mainNav .headerNav .primary > li.contact > a::before {
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e007";
    vertical-align: middle;
    margin-right: 8px;
  }
  #gnav .mainNav .headerNav .sitemapArea .tell::before {
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e011";
    font-size: 16px;
    line-height: 16px;
    vertical-align: middle;
    display: inline-block;
    margin-inline: 12px 4px;
    transform: translateY(-1px);
  }
#gpagetop > a::before {
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e001";
  font-size: 8px;
  line-height: 8px;
  vertical-align: middle;
  color: #ffffff;
}
.hotel .content_ttl{
	padding-left: 10px;
	text-align: left;
}

.hotel .section{
    width: auto;
    max-width: none;
}
.rating_data,
.rating_data_item.anchor{
		display: inline-block;
}
/* .rating_data_item + .rating_data_item{
 * 	margin-left: 15px;
 * 	} */
.rating_data_item a{
	display: inline-block;
}
.rating_data_item.anchor{
	margin-left: 13px;
	font-size: 13px;
	font-weight: bold;
}
.hotel_top{
	position: relative;
}
.hotel_image_wrap{
	position: absolute;
	right: 0;
}
.hotel_image{
	margin-bottom: 8px;
}
.hotel_image_wrap,
.hotel_image{
	width: 360px;
	max-width: 360px;
	height: 240px;
	text-align: left;
	margin-top: 0;
}
.hotel_image_list{
	display: inline-block;
}
.hotel_image_item{
	display: inline-block;
	width: 62px;
	max-width: 62px;
	height: 50px;
	overflow: hidden;
	padding: 2px;
}

.hotel_image_item img{
	width: 100%;
	max-width: none;
	height: inherit;
}
.hotel_lead{
	margin-bottom: 25px;
}
.hotel_lead,
.hotel_data_list,
.content_child{
	width: calc( 100% - 360px );
	max-width: 100%;
	margin-right: auto;
	padding-right: 50px;
	padding-bottom: 0;
	box-sizing: border-box;
}
@media screen and (min-width: 601px) and (max-width: 1024px) {
	.hotel_image_wrap,
	.hotel_image{
		width: 27.7vw;
		height: auto;
	}
	.hotel_image{
		height: 18vw;
		overflow: hidden;
	}
	.hotel_lead,
	.hotel_data_list,
	.hotel .content_child,
	.el_note{
		width: calc( 100% - 27.7vw );
		max-width: 100%;
		padding-right: 3vw;
	}

	.hotel_image_list{
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	.hotel_image_item{
		width: 28%;
		height: auto;
		box-sizing: border-box;
		padding-left: 8px;
		padding: 0;
	}
	.hotel_image_item + .hotel_image_item{
		margin-left: 5px;
	}
}
@media screen and (max-width: 600px){
dl.hotel_data_item {
    display: flex
;
    /* align-items: center; */
}
	.content_ttl {
		margin-bottom: 10px;
	}
	.rating_data_item.anchor{
		font-size: 12px;
	}
	.hotel_image_wrap,
	.hotel_image{
		width: 100%;
		position: static;
	}
	.hotel_lead,
	.hotel_data_list,
	.content_child,
	.hotel_image_wrap{
		width: 100%;
		padding: 0;
		margin-top: 0;
		box-sizing: border-box;
	}
	.hotel_image{
		display: none;
	}
	.hotel_image_wrap{
		height: auto;
		max-width: 100%;
	}
	.hotel_image_list{
		width: 100%;
		margin-top: 17px;
	}
	.hotel_image_item{
		width:100%;
		max-width: 100%;
		height: auto;
		padding: 0;
	}
	.hotel_lead{
		margin: 15px 0;
		font-size: 12px;
	}

	/* slick */
	.hotel_image_list{
		display: none;
	}
	.hotel_image_list.slick-initialized{
		display: block;
	}
	.slick-slide img{
		width: 100%;
			max-width: 100%;
		 height: auto;
		 margin: auto;
	 }
	.slick-prev {
    left: 0;
		background: url(../img/arrow_prev.png) left 15px center no-repeat;
	}
	.slick-next {
		right: 0;
		background: url(../img/arrow_next.png) right 15px center no-repeat;
	}
	.slick-prev, .slick-next,
	.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
		width: 10vw;
		height: 100%;
		background-size: 3.21vw auto;
		z-index: 100;
	}
	.slick-prev:before {
    content: '';
	}
	.slick-prev:before, .slick-next:before {
		display: none;
	}
	.slick-prev:hover, .slick-prev:focus{
		background: url(../img/arrow_prev.png) left 15px center no-repeat;
		background-size: 3.21vw auto;
	}
	.slick-next:hover, .slick-next:focus {
    background: url(../img/arrow_next.png) right 15px center no-repeat;
		background-size: 3.21vw auto;
	}
}
@media screen and (max-width: 400px){
	.rating_data, .rating_data_item.anchor{
	    font-size: 10px;
	}
	.rating_data .hotel_rating,
	.rating_data_item.anchor{
		margin-left: 5px;
	}
	.top_rating_list {
    margin-left: 0px;
	}
}


.hotel_data_item {
    padding: 0;
    border-top: 1px solid #000000;
    font-size: 0.875rem;
    margin: 0;
    overflow: hidden;
    display: flex
;
    align-items: stretch;
}
.hotel_data_item:last-child{
	border-bottom: 1px solid #000000;
}
.el_head {
/*    float: left;*/
    width: 110px;
    font-weight: bold;
    padding: 1.125rem;
    background: #f5f5f5;
}
.el_data {
        padding: 1.125rem;
        width: calc(100% - 110px);
        margin: 0;
            word-break: break-all;
    }
.map {
	display: block;
	position: relative;
	margin-top: 20px;
	padding-bottom: 75%;
	height: 0;
	overflow: hidden;
}

.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100%;
}
.tour a{
	font-size: 12px;
}
.tour .el_price{
	font-weight: bold;
	color: #cc0000;
	font-size: 18px;
}
.tour, .review{
	margin-top: 30px;
}
.el_note{
	margin-top: 30px;
	box-sizing: border-box;
	font-size: 12px;
}
@media screen and (max-width: 600px){
	.el_head{
		width: 32%;
	}
.el_data {
        width: calc(100% - 32%);
        margin: 0;
    }
}



.rating_item{
	margin-bottom: 10px;
}
.ratingParts_head {
  width: auto;
  min-width: auto;
	margin-right: 12px;
	padding: 0 10px;
}
.hotel .synthesis .ratingParts_head{
	width: auto;
	padding: 7px 10px 5px;
}
.synthesis .ratingParts_body-score *{
	width: 28px;
	height: 28px;
}
.ratingParts_val{
	font-size: 24px;
}
.review_wrap{
	padding: 15px 0;
	border-bottom: 1px solid #e5e5e5;
}
.review .el_image{
	width: 150px;
	height: 115px;
}
.review_detail{
	padding-left: 14px;
}
.review_item.el_title a{
	text-decoration: underline;
	color: #000000;
	font-size: 16px;
}
.review_item + .review_item{
	margin-top: 10px;
}
.el_info p{
	line-height: 1.5;
}

.tour .link{
	margin-top: 20px;
}
.tour .link_list{
	margin-top: 20px;
}
.review .link{
	margin-top: 30px;
}
.review .link_list{
	margin-top: 35px;
}
.hotel .link_item a{
	font-size: 16px;
}
.hotel .link_item + .link_item{
	margin: 10px 0 0 0;
}
.hotel .rating_data{
    display: flex;
    /* align-items: center; */
    align-content: center;
        margin-bottom: 20px;
}
.hotel span.hotel_rating {
    padding-left: 23px;
    display: inline-block;
}
.hotel .top_rating_list.rating_data_item.ratingParts_body-ster {
    display: flex;
    align-items: center;
}
.hotel .el_data a {
    color: #ff9900;
}
.hotel .el_data a:hover{
    opacity: 0.8;
}
.head_ttl {
    margin-bottom: 10px;
}
@media screen and (min-width: 601px) and (max-width: 1024px) {
	.tour + .link .link_item{
		width: 100%;
	}
	.tour + .link .link_item a{
		font-size: 14px;
	}
}
@media screen and (max-width: 600px){
	.review .synthesis .ratingParts_val {
    font-size: 21px;
	}
	.review .ratingParts .ratingParts_body-score * {
			width: 13px;
			height: 13px;
	}
	.review .ratingParts.synthesis .ratingParts_body-score * {
	    width: 15px;
	    height: 15px;
	}
	.review_item.el_title a{
		font-size: 12px;
	}
	.review_item + .review_item{
		margin-top: 6px;
	}
	.link_item{
		padding: 0;
	}
	.link_item a{
		font-size: 13px;
	}
	.tour + .link{
		margin-top: 10px;
	}
	.tour + .link .link_item a{
		font-size: 14px;
	}
	.btn_link.link_item::after {
    right: 5%;
	}
	.review .el_image{
		width: 26.5vw;
		min-width: 26.5vw;
		height: 20.3vw;
	}
	.el_note{
		margin-top: 10px;
		padding: 0 6.25vw;
		font-size: 11px;
	}
}
@media screen and (max-width: 400px){
	.tour + .link .link_item a{
		font-size: 13px;
		letter-spacing: -.1px;
	}
	.tour + .link .link_item a span{
			margin-left: -10px;
		}
}



@media screen and (min-width: 601px){
	.js-switching{
		cursor: pointer;
	}
	.js-switching:hover,
	.js-switching.current{
		border: 2px solid #349ddf;
		padding: 0;
	}
.hotel_top .hotel_lead{
        width: 100% !important;    
    }
}
}
@media screen and (max-width: 600px){
	.slick-slide img{
		width: 100%;
			max-width: 100%;
		 height: auto;
		 margin: auto;
	 }
	.slick-prev {
    left: 0;
		background: url(../img/arrow_prev.png) left 15px center no-repeat;
	}
	.slick-next {
		right: 0;
		background: url(../img/arrow_next.png) right 15px center no-repeat;
	}
	.slick-prev, .slick-next,
	.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {
		width: 10vw;
		height: 100%;
		background-size: 3.21vw auto;
		z-index: 100;
	}
	.slick-prev:before {
    content: '';
	}
	.slick-prev:before, .slick-next:before {
		display: none;
	}
	.slick-prev:hover, .slick-prev:focus{
		background: url(../img/arrow_prev.png) left 15px center no-repeat;
		background-size: 3.21vw auto;
	}
	.slick-next:hover, .slick-next:focus {
    background: url(../img/arrow_next.png) right 15px center no-repeat;
		background-size: 3.21vw auto;
	}
}