@charset "UTF-8";

#shop #serch {
	width:800px;
	margin:0 auto;
}
#shop #serch h2 {
	text-align:center;
	padding-bottom:50px;
}
#shop #serch ul {
	list-style:none;
}
#shop #serch ul.tab {
	list-style:none;
	display:table;
	table-layout:fixed;
	width:800px;
	border:1px solid #e4e1d9;
	box-sizing:border-box;
}

#shop #serch ul.tab li {
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	width: 100%;
	height:100%;
	box-sizing:border-box;
}

#shop #serch ul.tab li + li {
	border-left:1px solid #e4e1d9;
}

#shop #serch ul.tab li label {
	display:inline-block;
	width:100%;
	height: 55px;
	padding-top: 20px;
	box-sizing:border-box;
}

#shop #serch ul.tab li input { display:none; }
#shop #serch ul.tab li input:checked + label { background-color:#e4e1d9; }
#shop #serch .parameter {
	padding:40px 40px;
	background-color:#e4e1d9;
}
#shop #serch .place p { padding:30px 0 20px; }
#shop #serch .place ul.area li {
	width:95px;
	height:39px;
	float:left;
	background-color:#FFF;
	text-align:center;
	box-sizing:border-box;
}

#shop #serch .place ul.area li label {
	width:100%;
	height:100%;
	display: inline-block;
	padding-top:10px;
	box-sizing:border-box;
}
#shop #serch .place ul.area li { margin-top:5px; }
#shop #serch .place ul.area li + li {margin-left:5px; }
#shop #serch .place ul.area li input { display:none; }
#shop #serch .place ul.area li:nth-child(n+8) { margin-left:0; }

#shop #serch .place ul.area1 { margin-bottom:10px; }
#shop #serch .place ul.area1 li { border:1px solid #452903; }

#shop #serch .place ul.area2 {
	margin-top:10px;
}
#shop #serch .place ul.area2 li { border:1px solid #734c16; }

#shop #serch .place ul.area1 li input:checked + label { background-color:#452903; color:#FFF; }
#shop #serch .place ul.area2 li input:checked + label { background-color:#734c16; color:#FFF; }
#shop #serch .place ul.refine li {
	float:left;
	width: 260px;
	height:35px;
	position:relative;
	box-sizing:border-box;
}
#shop #serch .place ul.refine li img { padding-left:5px; }
#shop #serch .place ul.refine li img.onlyPc { display:inline-block !important; }
#shop #serch .place ul.refine li.deli { width: 460px; }
#shop #serch .place ul.refine li input { display:none; }
#shop #serch .place ul.refine li:nth-child(2) { width:410px; }
#shop #serch .place ul.refine li:nth-child(n+3) { margin-top:10px; }
#shop #serch .place ul.refine li label {
	padding-left:28px;
	padding-top: 3px;
	position:relative;
}
#shop #serch .place ul.refine li label:before,
#shop #serch .place ul.refine li label:after {
	content:"";
	position:absolute;
	top:0;
	left:0;
	display:block;
	width:26px;
	height:21px;
	background-repeat:no-repeat;
	background-position:top left;
}

#shop #serch .place ul.refine li label:before {
	display:block;
	background-image:url(../img/shop_checkbox_off.png);
}
#shop #serch .place ul.refine li label:after {
	display:none;
	background-image:url(../img/shop_checkbox_on.png);
}
#shop #serch .place ul.refine li input:checked + label:before { display:none; }
#shop #serch .place ul.refine li input:checked + label:after { display:block; }
#shop #serch .place input[type=submit] {
	display:block;
	width:270px;
	height:50px;
	text-align:center;
	padding-top: 3px;
	border:1px solid #7a602c;
	box-sizing:border-box;
	font-size:1.1rem;
	background-color:#FFF;
	text-decoration:none;
	margin:20px auto 0;
	-webkit-appearance: none;
	outline: 0;
}
#shop #serch .place input.none {
	-webkit-appearance: none;
	width:0;
	height:0;
}
#shop #serch .target-view1,
#shop #serch .target-view2 {
	display:none;
}
#shop #serch .keyword input { float:left; }
#shop #serch .keyword .txt { position:relative; }
#shop #serch .keyword .txt:before {
	content:"";
	background:url(../img/shop_serch_txt_icon.png) top center no-repeat;
	width:26px;
	height:26px;
	position:absolute;
	top:8px;
	left:8px;
}
#shop #serch .keyword input[type=text] {
	width:434px;
	height:40px;
	border: 1px solid #452903;
	padding:5px 5px 5px 40px;
	margin-right:20px;
	box-sizing: border-box;
	font-size:1.2rem;
}
#shop #serch .keyword input[type=submit] {
	width:100px;
	height:40px;
	border-radius: 0;
  	-webkit-box-sizing: content-box;
  	-webkit-appearance: button;
  	appearance: button;
  	border:1px solid #7a602c;
  	box-sizing: border-box;
	background-color:#FFF;
	font-size:1.1rem;
  	cursor: pointer;
	outline: 0;
}

#shop #serch .position a {
	display:block;
	width:270px;
	height:40px;
	text-align:center;
	padding-top: 11px;
	border:1px solid #7a602c;
	box-sizing:border-box;
	font-size:1.1rem;
	background-color:#FFF;
	text-decoration:none;
	margin:0 auto;
}

#shop #shoplist { padding:5px 0 0; }
#shop #shoplist .positontxt { padding-top:30px;}
#shop #shoplist .total { text-align:right; padding-bottom:30px;}

#shop #shoplist > ul { list-style:none; }
#shop #shoplist > ul li + li { margin-top:20px; }
#shop #shoplist > ul li a {
	position:relative;
	width:100%;
	display:table;
	vertical-align:top;
	padding:20px 40px;
	background-color:#f1f0ec;
	box-sizing:border-box;
	text-decoration:none;
	-webkit-transition: background-color 0.2s ease-in-out;
    transition: background-color 0.2s ease-in-out;
}
#shop #shoplist > ul li a:after {
	display:inline-block;
	content:"";
	width:13px;
	height:25px;
	position:absolute;
	top:50%;
	right:40px;
	margin:-7px 0 0 0;
	background:url(../img/shop_detial_arrow.png) top left no-repeat;
	background-size:contain;
	-webkit-transition: right 0.2s ease-in-out;
    transition: right 0.2s ease-in-out;
}
#shop #shoplist > ul li a:hover {
	background-color:#f8f7f5;
}
#shop #shoplist > ul li a:hover:after {
	right:30px;
}
#shop #shoplist > ul li a .name,
#shop #shoplist > ul li a .inner { display:table-cell; }
#shop #shoplist > ul li a .name {
	font-size:1.2rem;
	line-height: 1.1em;
	width:225px;
}
#shop #shoplist > ul li a .address,
#shop #shoplist > ul li a .tel_fax {
	line-height: 1.1em;
}
#shop #shoplist > ul li a .inner > span {
	font-size:1.1rem;
	display:block;
}
#shop #shoplist > ul li a .inner > span + span { padding-top:10px; }
#shop #shoplist > ul li .tel_fax > span {
	display:inline-block;
	padding-right:10px;
}
#shop #shoplist > ul li .icon {
	letter-spacing: -.40em;

}
#shop #shoplist > ul li .icon > span {
	letter-spacing: normal;
	display:inline-block;
	width:36px;
	height:36px;
	background-size:contain;
	margin-right:5px;
}

#shop #shoplist > ul li .icon .barrier_free { background:url(../img/icon_barrierfree.png) center no-repeat; }
#shop #shoplist > ul li .icon .elevator1 { background:url(../img/icon_elevator1.png) center no-repeat; }
#shop #shoplist > ul li .icon .elevator2 { background:url(../img/icon_elevator2.png) center no-repeat; }
#shop #shoplist > ul li .icon .multitoilet { background:url(../img/icon_multitoilet.png) center no-repeat; }
#shop #shoplist > ul li .icon .e_money { background:url(../img/icon_emoney.png) center no-repeat; }
#shop #shoplist > ul li .icon .parking { background:url(../img/icon_parking.png) center no-repeat; }
#shop #shoplist > ul li .icon .normal { background:url(../img/icon_deli.png) center no-repeat; }
#shop #shoplist > ul li .icon .uber { background:url(../img/icon_uber.png) center no-repeat; width: 100px; }
#shop #shoplist > ul li .icon .delivery { background:url(../img/icon_delivery.png) center no-repeat; width: 100px; }
#shop #shoplist > ul li .icon .d_delivery { background:url(../img/icon_d_delivery.png) center no-repeat; width: 100px; }

#shop #shoplist > ul li .tabeho{
	padding-top: 10px;
}
#shop #shoplist > ul li .tabeho .tabeho-icon{
	display: inline-block;
	margin-right: 10px;
}
#shop #shoplist > ul li .tabeho .tabeho-icon img{
	width: 70px;
}
#shop #shoplist > ul li .tabeho .course-name{
	display: inline-block;
	font-size: 16px;
}

#shop .paginate ul {
	list-style:none;
	display:table;
	margin:0 auto;
	height:30px;
	padding:20px 0 ;
}

/*#shop .paginate ul li {*/
#shop .paginate ul a,
#shop .paginate ul span {
	display:table-cell;
	width:50px;
	text-align:center;
	height:100%;
	padding-top:7px;
	padding-bottom:7px;
}

/*#shop .paginate ul li a,
#shop .paginate ul li span {
	display:block;
	width:100%;
	height:100%;
	padding-top:7px;
	box-sizing:border-box;
}*/

/*#shop .paginate ul li.active {*/
#shop .paginate ul span.current {
	background-color:#CCC;
}
#shop #detail {
	width:880px;
	margin:0 auto;
}
#shop #detail h2 {
	text-align:center;
	padding-bottom:50px;
}
#shop #detail .left {
	float:left;
	width:300px;
}
#shop #detail .right {
	float:right;
}
#shop #detail .left h3 {
	font-size:1.8rem;
	font-weight:normal;
	line-height: 1.1em;
}
#shop #detail .left dl dt {
	color:#7a602c;
	padding:30px 0 5px;
}
#shop #detail .left dl dd {
	padding-top:5px;
	line-height: 1.4em;
}
#shop #detail .left dl dd.icon > div {
	display:table;
}

#shop #detail .left dl dd.icon > div + div {
	padding-top:10px;
}

#shop #detail .left dl dd.icon > div > span {
	display:table-cell;
	vertical-align:middle;
}

#shop #detail .left dl dd.icon > div > span:nth-child(1) {
	letter-spacing: normal;
	width:36px;
	height:36px;
	background-size:contain;
	margin-right:5px;
}
#shop #detail .left dl dd.tabeho{
	padding-top: 10px;
}
#shop #detail .left dl dd.tabeho .tabeho-icon{
	display: inline-block;
	margin-right: 10px;
}
#shop #detail .left dl dd.tabeho .tabeho-icon img{
	width: 70px;
}
#shop #detail .left dl dd.tabeho .course-name{
	display: inline-block;
	font-size: 16px;
}
#shop #detail .left dl dd.icon .barrier_free { background:url(../img/icon_barrierfree.png) center no-repeat; }
#shop #detail .left dl dd.icon .parking { background:url(../img/icon_parking.png) center no-repeat; }
#shop #detail .left dl dd.icon .elevator1 { background:url(../img/icon_elevator1.png) center no-repeat; }
#shop #detail .left dl dd.icon .elevator2 { background:url(../img/icon_elevator2.png) center no-repeat; }
#shop #detail .left dl dd.icon .multitoilet { background:url(../img/icon_multitoilet.png) center no-repeat; }
#shop #detail .left dl dd.icon .e_money { background:url(../img/icon_emoney.png) center no-repeat; }
#shop #detail .left dl dd.icon .deli_normal { background:url(../img/icon_deli.png) center no-repeat; }
#shop #detail .left dl dd.icon .deli_uber { background:url(../img/icon_uber.png) center no-repeat; width: 100px !important; }
#shop #detail .left dl dd.icon .deli_delivery { background:url(../img/icon_delivery.png) center no-repeat; width: 100px !important; }
#shop #detail .left dl dd.icon .deli_d_delivery { background:url(../img/icon_d_delivery.png) center no-repeat; width: 100px !important; }
#shop #detail .left dl dd.icon > div > span:nth-child(2) {
	padding-left:10px;
}

#shop #detail .right #map_canvas {
	width:560px;
	height:695px;
	border:1px solid #000;
	box-sizing:border-box;
}
#shop #detail .right .btn {
	padding-top:10px;
}
#shop #detail .right .btn a,
#shop #detail .deli_btn a {
	position:relative;
	display:inline-block;
	text-align:center;
	font-size:1.1rem;
	border:1px solid #3f3f3f;
	color:#3f3f3f;
	box-sizing:border-box;
	height:45px;
	padding:14px 28px 0 20px;
	text-decoration:none;
	background-color:#FFF;
	-webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
#shop #detail .deli_btn a {
	display: block;
	padding:14px 36px 12px 20px;
	height:auto;
}
#shop #detail .right .btn a + a { margin-left:10px; }
#shop #detail .deli_btn a + a { margin-top:10px; }
#shop #detail .right .btn a:after,
#shop #detail .deli_btn a:after {
	content:"";
	display:inline-block;
	position:absolute;
	top:50%;
	right:15px;
	width:8px;
	height:13px;
	margin:-6px 0 0 0;
	background:url(../img/shop_map_arrow.png) center no-repeat;
	margin-left:10px;
	-webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
#shop #detail .deli_btn a:after {
}
#shop #detail .right .btn a:hover,
#shop #detail .deli_btn a:hover {
	padding:14px 24px 0 24px;
	color:#FFF;
	background-color:#3f3f3f;
}
#shop #detail .deli_btn a:hover {
	padding:14px 28px 12px 28px;
	color:#FFF;
	background-color:#3f3f3f;
}
#shop #detail .right .btn a:hover:after,
#shop #detail .deli_btn a:hover:after {
	width:0;
	margin-left:0;
}
#shop #detail > .btn {
	/*padding-top:35px;*/
	text-align:center;
	margin-bottom: 35px;

}
#shop #detail > .btn a {
	display:inline-block;
	margin:auto 10px;
	text-align:center;
	font-size:1.1rem;
	border:1px solid #7a602c;
	color:#FFF;
	box-sizing:border-box;
	width:266px;
	height:45px;
	padding:14px 5px 0;
	text-decoration:none;
	background-color:#7a602c;
	-webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
#shop #detail > .btn a:before {
	content:"";
	display:inline-block;
	width:0;
	height:13px;
	padding-right:20px;
	background:url(../img/shop_link_arrow.png) center no-repeat;
	-webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
	overflow:hidden;
}
#shop #detail > .btn a + a {
	/*margin:20px auto 0;*/
}
#shop #detail > .btn a:hover {
	color:#7a602c;
	border:1px solid #7a602c;
	background-color:#FFF;
}
#shop #detail > .btn a:hover:before {
	padding-right:0;
}
#shop #detail > .btn .not_supported {
	position:relative;
	display:block;
	margin:20px auto 0;
	text-align:center;
	font-size:1.1rem;
	border:1px solid #7a602c;
	color:#7a602c;
	box-sizing:border-box;
	width:236px;
	height:45px;
	padding:14px 20px 0 20px;
	background-color:#FFF;
}
#shop #detail .shopNote {
	border: 1px solid #cc0000;
	background: #f9c2c2;
	padding: 10px 15px;
	line-height: 150%;
	margin-bottom: 30px;
}

#shop h2 { margin-top: 30px; }

/* 店舗詳細 */
/*#shop #c_col { margin-top: 30px; margin-bottom: 0; }*/
/*#shop #c_col .btn { width: 85%; }*/

#shop #c_col { margin-top: 30px; margin-bottom: 0; }
#shop #c_col .btn { width: 85%; text-align: center; }
#shop #c_col ul { padding: 0; }
#shop #c_col li { width: calc(28% - 5px); }
#shop #c_col li img { display: block;margin: auto; }
#shop #c_col .menu { width: calc(44% - 5px); }
#shop #c_col .menu .inr { letter-spacing: -.4em; }
#shop #c_col .menu a { display: inline-block; width: 50%; letter-spacing: normal; }

#shop #detail .left h3 { padding-left: 15px; }
#shop #detail .left,
#shop #detail .right { width: auto; float: none; }
#shop #detail .right .btn a,
#shop #detail .right .btn a:hover,
#shop #detail .deli_btn a,
#shop #detail .deli_btn a:hover { padding-top: 10px; }
#shop .flex-list { display: flex; }
#shop .flex-list dl { width: 50%; padding-right: 15px; padding-left: 15px; }
#shop .flex-list dd { padding-bottom: 15px; border-bottom: 1px solid #e0e0e0; }
#shop .flex-list dl dd:last-child { border-bottom: none; }


@media screen and (max-width: 750px){

 	#shop #serch { text-align:left; padding-top:50px; overflow: hidden; }
	#shop #serch h2 { padding-bottom:46px; width:70%; margin:0 auto; }
	#shop #serch { width:100%; }
	#shop #serch ul.tab { width:100%; }
	#shop #serch .place ul.refine li { float:none; }
	#shop #serch .keyword input[type=text] { width:100%; margin-right: 0; border-radius: 0;}
	#shop #serch .place ul.refine li,
	#shop #serch .place ul.refine li:nth-child(2) { margin-top: 10px; text-align:left; width:auto; }
	#shop #serch ul.tab li label { padding-top: 5px; line-height:1.4em; }
	#shop #serch .place input[type=submit] { border-radius: 0; }
	#shop #serch .parameter { padding:25px 0; }
	#shop #serch .place p { text-align:left; padding: 30px 14px 0px;}
	#shop #serch .place ul.area { padding:0 0 0 14px; }
	#shop #serch .place ul.area li { margin-right:5px; }
	#shop #serch .place ul.area li + li { margin-left:0; }
	#shop #serch .place ul.area2 li { border:none; color:#7a602c; }
	#shop #serch .place ul.refine { padding:0 14px;}
	#shop #serch .place ul.refine li { height:auto; }
	#shop #serch .place ul.refine li label { display:block; line-height:1.2em; }
	#shop #serch .place ul.refine li label img { display:none; }
	#shop #serch .parameter.keyword { padding:25px 14px 25px; text-align:center; }
	#shop #serch .keyword input { float:none; }
	#shop #serch .keyword input[type=text] { margin-bottom:25px; }
	#shop #serch .keyword input[type=submit] { width:212px; }
	#shop #serch .position a { width:212px; }

	#shop #shoplist .total { padding-right:20px; }
	#shop #shoplist > ul li a { display:block; padding:15px 40px 15px 10px; }
	#shop #shoplist > ul li a .name,
	#shop #shoplist > ul li a .inner { display:block; line-height: 1.3em; }
	#shop #shoplist > ul li a .name { padding-bottom:13px; }
	#shop #shoplist > ul li a:after { right:20px; margin: -12px 0 0 0;}
	#shop #shoplist > ul li a:hover:after { right:20px; }
	#shop #shoplist > ul li .icon { display:none !important; }

	#shop #shoplist > ul li .tabeho .tabeho-icon img{
		width: 40px;
	}

	#shop #detail { width:100%; text-align:left; padding-top:50px; }
	#shop #detail h2 { padding-bottom:46px; width:70%; margin:0 auto; }
	#shop #detail .left,
	#shop #detail .right {
		float:none;
		padding: 0 15px;
	    box-sizing: border-box;
	}
	#shop #detail .left {
		width:100%;
	}
	#shop #detail .left h3 {
		font-size:1.25rem;
	}
	#shop #detail .left dl {
		font-size:1.1rem;
		line-height: 1.3em;
	}
	#shop #detail .left dl dt { padding: 25px 0 5px; }
	#shop #detail .left dl dd.icon > div + div { padding-top: 6px; }

	#shop #detail .left dl dd.tabeho .tabeho-icon img{
		width: 45px;
	}
	#shop #detail .right #map_canvas { width:100%; height:266px; }
	#shop #detail .right { padding: 25px 15px 0; }

	#shop #detail .right .btn a { width:100%; }
	#shop #detail .right .btn a + a  { margin-left:0; margin-top: 10px; }
	#shop #detail .right .btn a:hover {
		color: #3f3f3f;
		background-color: #FFF;
		padding: 14px 28px 0 20px;
	}
	#shop #detail .right .btn a:hover:after {
		width:8px;
	}
	#shop #detail > .btn { padding:0 15px; margin-bottom: 20px;}
	#shop #detail > .btn a { width:100%; margin:0px auto; }
	#shop #detail > .btn a.printBtn { display:none; }
	#shop #detail > .btn a + a { margin: 20px 0 0; }
	#shop #detail > .btn .not_supported {
		width:100%;
	}
	#shop #detail > .btn a:hover { color: #FFF; background-color: #7a602c; }
	#shop #detail > .btn a:hover:before { padding-right: 20px; }
	#shop #detail .shopNote {
		margin-left: 15px;
		margin-right: 15px;
	}

	#shop #c_col .btn{ font-size: 12px; font-size: 3.4vw; }
	#shop h2{ margin-top: 0; }

	/* 店舗詳細 */
	/*#shop #c_col .btn { width: 94%; }*/

	#shop #c_col .btn { width: 94%; }
	#shop #c_col li { width: calc(50% - 2px); }
	#shop #c_col .menu { width: calc(100% - 2px); }
	#shop #c_col .app { border-top: none; }

	#shop #detail .left h3 { padding-left: 0; }
	#shop #detail .right .btn a,
	#shop #detail .right .btn a:hover {  }
	#shop .flex-list { display: block; }
	#shop .flex-list dl { width: auto; padding-right: 0; padding-left: 0; }
	#shop .flex-list dd {  }
	#shop .flex-list dl:first-child dd { border-bottom: 1px solid #e0e0e0; }

}/* mediaquery */

@-moz-document url-prefix() {
@media screen and (max-width: 750px){
	#shop #serch ul.tab li label { padding-top: 10px; line-height:0.7em; /* firefox only */ }
}
}