@charset "UTF-8";
/*=================================================================

style info :ショップガイド

=================================================================*/

/*******************
 * 共通
 *******************/
/*
 * PC、スマホの非表示処理
 */
@media screen and (min-width: 480px) {
	.sp {
		display: none !important;
	}
}

@media screen and (max-width: 479px) {
	.pc {
		display: none !important;
	}
	.search-box{
		/*display: none;*/
	}
	#pagebody-inner{
		padding: 0 10px;
	}
}

/*
 * divボタン
 */
.btn {
	background-color: #A48B78;
	padding: 10px 0;
	text-align: center;
	color: #fff;
	border-radius: 5px;
	cursor: pointer;
	border: none;
	width: 100%;
}
.btn-search-icon:before{
    content: url(../images/shop-guide/search.png);
    position: relative;
    top: 3px;
    left: -5px;
}
.btn-gps-icon:before{
    content: url(../images/shop-guide/search_gps.png);
    position: relative;
    top: 3px;
    left: -5px;
}

/*
 * 画像サイズ調整
 */
.search_place {
	width: 16px;
	height: 17px;
}
.content_arrow {
	width: 25px;
	height: 50px;
}
.content_arrow2 {
	width: 12px;
	height: 33px;
}
.more_sp {
	width: 21px;
	height: 20px;
}

/*
 * サイドバーボックス
 */
.box {
	border: 1px solid #E6E3C6;
	margin-bottom: 20px;
}
@media screen and (max-width: 479px) {
	.box {
		border: 0px;
	}
}

	.box > .title {
		background: #E6E3C6;
		padding: 7px;
	}

/*
 * チェックボックスカスタマイズ
 */
label.checkbox {
	cursor: pointer;
	overflow: hidden;
	position: relative;
	padding-left: 30px;
	display: inline-block;
	box-sizing: border-box;
	height: 23px;
	padding-top: 2px;
}
	label.checkbox:before {
		content: '';
		position: absolute;
		width: 21px;
		height: 21px;
		left: 0;
		top: 0;
		border: 1px solid #E6E3C6;
		z-index: 3;
	}

	label.checkbox:after {
		content: '';
		position: absolute;
		top: 40%;
		left: 6px;
		display: block;
		margin-top: -8px;
		width: 8px;
		height: 12px;
		border-right: 3px solid #D6D3B6;
		border-bottom: 3px solid #D6D3B6;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		z-index: 1;
	}

	label.checkbox input[type="checkbox"] {
		-moz-appearance: none;
		-webkit-appearance: none;
		position: absolute;
		left: -40px;
		width: 20px;
		height: 20px;
		display: block;
		box-shadow: 41px 0px #FFF;
		z-index: 2;
		margin: 0px;
		padding: 0px;
	}

		label.checkbox input[type="checkbox"]:checked {
			box-shadow : none;
		}
		label.checkbox input[type="checkbox"]:checked:focus {
			opacity    : 0.1;
		}

/*
 * googleマップ
 */
.map {
	max-width: 100%;
	margin: auto;
}

.map #map_canvas {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;

}

.map #map_canvas iframe {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
}

/*******************
 * 一覧サイドバー
 *******************/
@media screen and (min-width: 480px) {
	#list-side {
		float: left;
		width: 200px;
	}
}

	#list-side ul.list {
		list-style-image: url('../images/shop-guide/list-mark.png');
		margin-left: 13px;
	}

		#list-side ul.list li {
			margin-bottom: 5px;
		}

	#list-side .search_btn {
		display: flex;
	}
		#list-side .search_btn .btn {
			flex: 1;
		}
		#list-side .search_btn .btn:first-child {
			margin-right: 10px;
		}

@media screen and (max-width: 479px) {
    #list-side .search-box {
		display: none;
	}
	
	#list-side ul.list li {
			margin-bottom: 10px;
			background-color: #8fc31f;
			color: #fff;
			border-radius: 4px;
			padding: 10px;
	}
	
	#list-side ul.list {
		list-style-image: none;
		margin-left: 0;
	}
	
	#list-side ul.list li a {
		color: #fff;
		display: block;
	}
	
	input[type="submit"] {
   -webkit-appearance: none;
   border-radius: 5px;
   }


}

	#list-side .map {
		position: relative;
		height: 295px;
	}

		#list-side .map .map_area_green,
		#list-side .map .map_area_blue {
			padding: 3px 8px;
			text-align: center;
			position: absolute;
			display: inline-block;
			border-radius: 10px;
			color: #fff;
		}

		#list-side .map .map_area_green {
			background: #2AA239;
		}
			#list-side .map .map_area_green.kita-karuizawa{
				top: 10px;
				left: 95px;
			}
			#list-side .map .map_area_green.kyu-karuizawa{
				top: 83px;
				left: 132px;
			}
			#list-side .map .map_area_green.naka-karuizawa{
				top: 109px;
				left: 68px;
			}
			#list-side .map .map_area_green.sin-karuizawa{
				top: 131px;
				left: 132px;
			}
			#list-side .map .map_area_green.oiwake{
				top: 141px;
				left: 35px;
			}
			#list-side .map .map_area_green.minami-karuizawa{
				top: 172px;
				left: 107px;
			}

		#list-side .map .map_area_blue {
			background: #0768AB;
		}
			#list-side .map .map_area_blue.miyota {
				top: 177px;
				left: 35px;
			}
			#list-side .map .map_area_blue.saku {
				top: 207px;
				left: 35px;
			}
			#list-side .map .map_area_blue.komoro {
				top: 237px;
				left: 35px;
			}
			#list-side .map .map_area_blue.toumi-uedasi {
				top: 237px;
				left: 101px;
			}

	#list-side .area {
	}

		#list-side .box.area .content {
			padding: 15px 25px;
		}

	#list-side .genre {
	}

		#list-side .box.genre .content {
			padding: 15px 10px;
		}

	#list-side .price {
	}

		#list-side .box.price .content {
			padding: 15px 10px;
		}

	#list-side .additional {
	}

		#list-side .additional .content {
			padding: 15px 10px;
		}
		@media screen and (max-width: 479px) {
			#list-side .additional .content {
				padding: 15px 0;
			}
		}

		@media screen and (min-width: 480px) {
			#list-side .additional ul {
				display: inline-block;
			}
		}

			#list-side .additional ul:first-child {
				margin-right: 20px;
			}
			@media screen and (max-width: 479px) {
				#list-side .additional ul:first-child {
					margin-right: auto;
				}
			}

			@media screen and (max-width: 479px) {
				#list-side .additional ul li {
					margin-top: 10px;
					margin-bottom: 10px;
					border-bottom: 1px solid #E6E3C6;
				}
			}

				@media screen and (max-width: 479px) {
					#list-side .additional ul li label {
						width: 100%;
					}
				}

	#list-side .guide {
	}

		#list-side .guide img {
			max-width: 100%;
		}

		#list-side .guide p {
			font-size: 1.3rem;
			text-align: center;
			margin: 10px 0;
		}

/*******************
 * 一覧コンテンツ
 *******************/
@media screen and (min-width: 480px) {
	#list-contents {
		float: right;
		width: 800px;
	}
}

	#list-contents .search {
		display: flex;
	}
	@media screen and (max-width: 479px) {
		#list-contents .search {
			display: block;
			text-align: center;
		}
	}

		#list-contents .search input[type="text"] {
			border: 1px solid #A48B78;
			padding: 7px;
			margin-right: 20px;;
			flex: 1;
			width: 599px;
		}
		@media screen and (max-width: 479px) {
			#list-contents .search input[type="text"] {
				width: 95%;
				margin-bottom: 10px;
			}
		}

		#list-contents .search .btn {
			width: 160px;
			border: none;
			background: #A48B78 url(../images/shop-guide/search.png) 20% center no-repeat;
		}
		@media screen and (max-width: 479px) {
			#list-contents .search .btn {
				width: 100%;
				border: none;
				background: #A48B78 url(../images/shop-guide/search.png) 35% center no-repeat;
			}
		}


	#list-contents .data {
		background: #E6E3C6;
		padding: 7px 10px;
	}
		#list-contents .data .page {
			float: right;
		}
@media screen and (min-width: 480px) {
	#list-contents .data {
		overflow: hidden;
	}
		#list-contents .data .count,
		#list-contents .title .page {
			display: inline-block;
		}
		#list-contents .data .page {
			float: right;
		}
}
@media screen and (max-width: 479px) {
		#list-contents .data .count,
		#list-contents .title .page {
			display: block;
		}
		#list-contents .data .page {
			float: none;
		}
}

	#list-contents-inner .row {
		display: inline-block;
		border-top: 1px solid #ccc;
		padding-top: 20px;
		margin-bottom: 20px;
		width: 100%;
	}
	#list-contents-inner .data + .row {
		border-top: none;
		padding-top: 0;
	}
@media screen and (max-width: 479px) {
	#list-contents-inner .row {
		background: url(../images/shop-guide/content_arrow.png) right center no-repeat;
	}
}

		#list-contents .row .title {
			font-size: 1.1rem;
		}

		#list-contents .row .title a{
			color: #036eb8;
		}

		#list-contents .row .meta1 {
		}

			#list-contents .row .meta1 span {
				margin-right: 10px;
			}

		#list-contents .row .article {
			display: flex;
		}

		#list-contents .row .article .image {
			margin-right: 20px;
		}

			#list-contents .row .article .image img {
				max-width: 201px;
			}
			@media screen and (max-width: 479px) {
				#list-contents .row .article .image img {
					max-width: 150px;
				}
			}

		#list-contents .row .article .info {
			flex: 1;
		}
		/*IE11*/
		@media all and (-ms-high-contrast:none){
			#list-contents .row .article .info {
				flex: none;
			}
		}

			#list-contents .row .article .info .midasi {
				font-size: 1rem;
				line-height: 1.3;
				color: #604c3f;
			}

			#list-contents .row .article .info .text {
				font-size: 0.9rem;
			}

			@media screen and (max-width: 479px) {
				#list-contents .row .article .info .meta2 {
					padding-right: 30px;
				}
			}

			#list-contents .row .article .info .coupon {
				display: inline-block;
				padding: 1px 3px 0 3px;
				border: 1px solid #E65D12;
				color: #E65D12;
			}

	#list-contents .tile-wrap{
		display: -webkit-flex; /* Safari */
		display: flex;
		-webkit-flex-flow: row wrap; /* Safari */
		flex-flow: row wrap;
	}

	#list-contents .tile .title {
		font-size: 1rem;
	}
		#list-contents .tile .title a{
			color: #036eb8;
		}

	#list-contents .tile .image {
		margin: 0 auto 10px;
	}
		#list-contents .tile .image img {
			width: 100%;
		}

	#list-contents .tile .article {
		margin: 10px auto 0;
	}

@media screen and (min-width: 480px) {
	#list-contents .tile-wrap .tile {
		width: 256px;
		margin: 0 16px 20px 0;
	}
	#list-contents .tile-wrap .tile:nth-child(3n) {
		margin-right: 0;
	}
}
	@media screen and (max-width: 479px) {
		#list-contents .tile-wrap .tile {
			width: 100%;
			border-top: 1px solid #ccc;
			margin: 0 auto 20px;
			padding: 20px 1em 0;
		}
		#list-contents .tile-wrap .tile:first-child {
			border-top: none;
			padding-top: 0;
		}
	}

	#list-contents .sp_page {
		text-align: center;
		margin: 20px 0;
	}

		#list-contents .sp_page a {
			margin: 0 30px;;
		}

	#list-contents .box.recent .content {
		padding: 15px 0;
	}

	#list-contents .box.recent .more_list {
		text-align: center;
	}

/*******************
 * 詳細コンテンツ
 *******************/
@media screen and (min-width: 480px) {
	#detail-contents {
		float: left;
		width: 640px;
		padding: 0 0 30px 0;
	}
}

	#detail-contents .shop {
	}

		#detail-contents .shop .title {
			font-size: 1.2rem;
			margin-bottom: 10px;
			color: #333;
		}

		#detail-contents .shop .meta {
			margin-bottom: 10px;
		}

			#detail-contents .shop .meta span {
				margin-right: 10px;
			}

		#detail-contents .shop .tab {
			border-bottom: 1px solid #C9BC9C;
		}

			#detail-contents .tab div {
				width: 100px;
				border: 1px solid #C9BC9C;
				padding: 15px 0;
				text-align: center;
				display: inline-block;
				cursor: pointer;
				border-bottom: none;
			}
			#detail-contents .tab div.selected {
				background: #E6E3C6;
			}

		#detail-contents .shop .tab-content {
			display: none;
		}

		#detail-contents .shop .article {
			font-size: 0.9rem;
			margin-bottom: 30px;
		}

		#detail-contents .shop .article .flexslider{
		}

@media screen and (min-width: 480px) {
			#detail-contents .shop .article .image {
				display: table-cell;
				width: 640px;
				height: 420px;
				text-align: center;
				vertical-align: middle;
				margin-bottom: 10px;
			}
			#detail-contents .shop .article .image  img{
				width: auto;
				height: auto;
				max-width: 640px;
				max-height: 420px;
				margin: 0 auto;
			}
}
@media screen and (max-width: 479px) {
				#detail-contents .shop .article .image img {
					width: 100%;
				}
}

			#detail-contents .shop .article .image-other {
				margin-top: 15px;
				margin-bottom: 20px;
			}

				#detail-contents .shop .article .image-other img {
					width: auto;
					height: 80px;
					max-width: 106px;
					margin: 0 auto;
				}
				#detail-contents .shop .article .image-other img:nth-child(6n) {
					margin-right: 0;
				}


			#detail-contents .shop .article .info {
			}

				#detail-contents .shop .article .info .midasi {
					font-size: 1.2rem;
					line-height: 1.5;
					color: #604c3f;
					margin: 15px 0 20px;
				}
@media screen and (max-width: 479px) {
				#detail-contents .shop .article .info .midasi {
					font-size: 1.2rem;
				}
}
				#detail-contents .shop .article .info .text {
					line-height: 1.8;
				}

				#detail-contents .shop .article .info .more_text {
					text-align: right;
					color: #A48B78;
					margin: 10px;
				}

		#detail-contents .shop .tel {
			font-size: 1.1rem;
			margin-bottom: 20px;
		}

	#detail-contents .meta-table {
		font-size: 0.9rem;
		margin-bottom: 20px;
	}

		#detail-contents .meta-table a {
			color: #036eb8;
			font-weight: bold;
		}

		#detail-contents .meta-table .title {
			color: #333;
			background: #E6E3C6;
			padding: 10px;
			font-size: .8rem;
		}

		#detail-contents .meta-table table {
			width: 100%;
		}

			#detail-contents .meta-table table th {
				background: #F5F4E9;
				width: 105px;
				text-align: left;
			}
			@media screen and (max-width: 479px) {
				#detail-contents .meta-table table th {
					background: transparent;
				}
			}

			#detail-contents .meta-table table th,
			#detail-contents .meta-table table td {
				padding: 10px;
				border: 1px solid #E6E3C6;
			}
			@media screen and (max-width: 479px) {
				#detail-contents .meta-table table th,
				#detail-contents .meta-table table td {
					border-right: 0px;
					border-left: 0px;
				}
			}

	#detail-contents .coupon {
		position: relative;
		margin-bottom: 40px;
	}

		#detail-contents .coupon img {
			position: absolute;
			top: 0;
			right: 25px;
		}

		#detail-contents .coupon .box {
			border-bottom: none;
		}

		#detail-contents .coupon .content {
			padding:10px 20px;
			border-bottom: 1px solid #E6E3C6;
		}

		#detail-contents .coupon .content .price {
			font-size: 1.2rem;
			color: #E63B73;
		}

		#detail-contents .coupon .btn {
			width: 200px;
			display: inline-block;
			margin-bottom: 10px;
			text-decoration: none;
			color: #fff;
		}
		@media screen and (max-width: 479px) {
			#detail-contents .coupon .btn {
				display: block;
				width: auto;
			}
		}

	#detail-contents .indoor_view {
	}
	#detail-contents .indoor_view .title{
		margin-bottom: 10px;
	}

	#detail-contents .message {
	}

		#detail-contents .message .content {
		}

			#detail-contents .message .content .item {
				display: flex;
			}

				#detail-contents .message .content .item .date {
					flex: 1;
					padding-left: 10px;
				}

				#detail-contents .message .content .item .text {
					flex: 2;
				}

.pickup-inner .unit{
	margin: 20px 0;
}
.pickup-inner .pickup-header{
	background-color: #E6E3C6;
	color: #333;
	font-size: 1.1rem;
	padding: 5px 10px;
}
.pickup-inner .unit1,
.pickup-inner .unit2{
	display: -webkit-flex; /* Safari */
	display: flex;
	-webkit-justify-content: space-between; /* Safari */
	justify-content: space-between;
	-webkit-flex-flow: row wrap; /* Safari */
	flex-flow: row wrap;
}
.pickup-inner .unit1{
	border-top: 1px solid #ccc;
	padding-top: 20px;
}
.pickup-inner .unit1:nth-child(2){
	border-top: none;
}

.pickup-inner .unit-title{
	font-size: 1rem;
	margin: 0 0 10px;
}
.pickup-inner .unit-image{
	margin-bottom: 10px;
}
.pickup-inner .unit-image img{
	width: 100%;
}
.pickup-inner .unit1 .unit-image{
	margin: 0 auto;
}
.pickup-inner .unit2 .unit-group{
	margin-bottom: 20px;
}
@media screen and (min-width: 480px) {
	.pickup-inner .unit1 .unit-content{
		width: 310px;
		padding-left: 30px;
	}
	.pickup-inner .unit1 .unit-image,
	.pickup-inner .unit2 .unit-group{
		width: 300px;
	}
	.pickup-inner .unit2 .unit-image{
		/*max-height: 200px;*/
		overflow: hidden;
	}
}
@media screen and (max-width: 479px) {
	.pickup-inner .unit1 .unit-content,
	.pickup-inner .unit2 .unit-group{
		padding: 0 1em;
		margin: 0 auto 20px;
	}
}


/*******************
 * 詳細サイドバー
 *******************/
@media screen and (min-width: 480px) {
	#detail-side {
		float: right;
		width: 300px;
	}
}
@media screen and (max-width: 479px) {
	#detail-side {
		margin-top: 30px;
	}
}

	#detail-side .box {
		border: 0px;
	}

	#detail-side .shop_tel .number{
		font-size: 1.6rem;
		color: #717071;
		font-weight: bold;
	}

	#detail-side .shop_sns{
		margin-bottom: 20px;
	}

	#detail-side .shop_sns .btn-list {
		display: -webkit-flex; /* Safari */
		display: flex;
		-webkit-flex-flow: row wrap; /* Safari */
		flex-flow: row wrap;
	}
	#detail-side .shop_sns .list-item {
		margin-right: 10px;
	}

	#detail-side .shop_sns .sns-widget {
		width: 290px;
		margin: 20px auto 0;
	}

	#detail-side .shop{
		background: url(../images/shop-guide/content_arrow2.png) right center no-repeat;
		border-top: 1px solid #ccc;
		padding-top: 10px;
	}
	#detail-side .shop:first-child{
		border-top: none;
	}

		#detail-side .shop .article {
			display: table;
			width: 100%;
			padding: 5px 0;
		}

			#detail-side .shop .article .image {
				display: table-cell;
				width: 105px;
			}

				#detail-side .shop .article .image img {
					max-width: 105px;
					max-height: 84px;
				}

			#detail-side .shop .info {
				display: table-cell;
				padding: 0 15px;
				vertical-align: top;
			}

				#detail-side .shop .info .rank {
					margin-bottom: 2px;
				}
					#detail-side .shop .info .rank img {
					vertical-align: top;
				}
					#detail-side .shop .info .rank span {
						position: relative;
						top: -4px;
						font-weight: bold;
						font-size: 1.0rem;
						color: #666;
					}

				#detail-side .shop .info .title {
					background: transparent;
					padding: 0;
				}
					#detail-side .shop .info .title a{
						color: #604c3f;
					}

				#detail-side .shop .info .meta,
				#detail-side .shop .info .text {
					font-size: 0.6rem;
				}

	#detail-side .spot {
	}

		#detail-side .spot .article {
			display: table;
			width: 100%;
		}

			#detail-side .spot .article .image {
				display: table-cell;
				width: 105px;
			}

				#detail-side .spot .article .image img {
					max-width: 105px;
					max-height: 84px;
				}

			#detail-side .spot .info {
				display: table-cell;
				vertical-align: top;
				padding: 0 0 0 15px;
			}

				#detail-side .spot .info .title {
					background: transparent;
					padding: 0;
				}

				#detail-side .spot .info .meta,
				#detail-side .spot .info .text {
					font-size: 0.6rem;
				}

a.btn-gps-icon {
	color: #FFF;
}

