@charset "UTF-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

nav ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input, select {
	vertical-align: middle;
}

/* 表示切り替え
==============================================================*/
.sp {
	display: block !important;
}

.pc {
	display: none !important;
}

.inlineSp {
	display: inline !important;
}

.inlinePc {
	display: none !important;
}

.inblockSp {
	display: inline-block !important;
}

.inblockPc {
	display: none !important;
}

.gmnoprint.gm-bundled-control.gm-bundled-control-on-bottom{
	bottom: 180px !important;
}


@media screen and (min-width: 641px) {
	.sp {
		display: none !important;
	}

	.pc {
		display: block !important;
	}

	.inlineSp {
		display: none !important;
	}

	.inlinePc {
		display: inline !important;
	}

	.inblockSp {
		display: none !important;
	}

	.inblockPc {
		display: inline-block !important;
	}

	.gmnoprint.gm-bundled-control.gm-bundled-control-on-bottom{
		bottom: 94px !important;
	}


/* min-width: 641px */}

/* body
==============================================================*/
body {
	font-family: "ヒラギノ角ゴ ProN W3","HiraKakuProN-W3","ヒラギノ角ゴ Pro W3","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS Pgothic","Osaka",sans-serif,Helvetica, Helvetica Neue, Arial, Verdana;
	word-break: break-all;
	word-wrap: break-word;
	overflow-wrap: break-word;
}
@media screen and (min-width: 641px) {
	body {
		font-size: 14px;
	}
/* min-width: 641px */}

ul, ol {
	list-style-type: none;
}

@media screen and (min-width: 641px) {
	a {
		color: #1e88e5;
		text-decoration: none;
	}
/* min-width: 641px */}

* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

@media screen and (min-width: 641px) {
	.cont_inner {
		width: 960px;
		margin: 0 auto;
	}
}

.overlay {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	background: #000;
	z-index: 2;
}

/** ----------------------------------- *
 * 
 * header
 * 
 * ------------------------------------ */
.header {
	height: 51px;
	position: fixed;
	z-index: 11;
	top: 0;
	width: 100%;
	background-color: #fff;
}
.header-inner {
	padding: 8px 0 8px 10px;
}
.header-box {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
}
.header-box-btm {
	display: none;
}
.header-menu {
	position: relative;
	width: 18px;
}
.header-search {
	position: relative;
	width: 80%;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-right: 2%;
}
.header-search .search-form {
	position: relative;
	width: 100%;
	height: 30px;
	box-sizing: border-box;
	border: 1px solid #8b7b74;border-radius: 4px;
}
.search-form::before > input[type="search"]:focus {
    background: #cc0021;
}
.header-search .search-form input {
	border: none;
	-webkit-box-shadow: none;
	        box-shadow: none;
	outline: none;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	position: absolute;
	top: 0;
	right: 0;
}
.header-search .search-form input[type="search"] {
	-webkit-appearance: button;
	width: 81%;
	height: 30px;
	font-size: 12px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 4px 0 0 4px;
	padding-left: 27px;
	position: absolute;
	left: 0;
	top: 0;
}
.header-search .search-form input[type="search"]::-webkit-search-cancel-button {
	-webkit-appearance: none;
}
.header-search .search-form input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
	width: 19%;
	height: 28px;
	color: #fff;
	font-size: 12px;
	line-height: 27px;
	background: #8b7b74;
    border-radius: 0 3px 3px 0;
}
/* サジェスト */
.header-search .suggest-container {
	display: none;
	background: #fff;
	width: 100%;
	position: absolute;
	left: 0;
	top: 30px;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
	        box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}
.header-search .suggest-container .suggest-list {
	display: none;
}
.header-search .suggest-container .suggest-list > li {
	border-bottom: 1px solid #eee;
	font-size: 12px;
}
.header-search .suggest-container .suggest-list > li a {
	display: block;
	font-size: 14px;
	color: #333;
	padding: 10px;
	text-decoration: none;
}
/** 
 * リセットボタン
 */
button {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.shop_searchBar_resetButton {
	position: absolute;
	top: 6px;
	right: 22%;
}
.searchBar_resetButton_button {
	display: none;
    background: url(https://dpoint.jp/parts/map/img/ic_suggest_clear.png) no-repeat;
    background-size: 18px 18px;
    text-indent: -9999px;
    white-space: nowrap;
    width: 18px;
    height: 18px;
	overflow: hidden;
	cursor: pointer;
}
.header-search .search-form input[type="search"].searchBar_shopName_input {
	background: url(https://dpoint.jp/parts/map/img/icon_parts_search.png) 6px center no-repeat;
	background-size: 16px 18px;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
    color: #8b7b74;
    line-height: 27px;
}
.header-search .search-form input[type="search"].searchBar_shopName_input:focus {
	background: none;
	padding-left: 10px;
}

.searchBar_shopName_input::placeholder{
  color: #8b7b74;
}

@media screen and (min-width: 642px) {
	.header-search .search-form input[type="submit"] {
		line-height: 30px;
	}
	.header-search .search-form input[type="search"].searchBar_shopName_input {
		line-height: 30px;
	}
	.shop_searchBar_resetButton {
		right: 28%;
		top: 11px;
	}
/* min-width: 642px */}

/* 現在地 */
.header-location {
	width: 40px;
	height: 40px;
	position: absolute;
	bottom: 198px;
	right: 10px;
	z-index: 1;
}
.header-location a {
	width: 100%;
	height: 100%;
	background: #fff url(https://dpoint.jp/parts/map/img/icon_map_here.png) center 6px no-repeat;
	box-sizing: border-box;
	background-size: 22px;
	border-radius: 2px;
	padding-top: 40px;
	color: #cc0033;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	display: block;
	text-decoration: none;
	box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, .15);
}
.header-filter {
	width: 20%;
	height: 30px;
	vertical-align: middle;
}
.header-filter-link {
	display: block;
	width: 100%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
}
.header-filter-thumbnail {
	width: 50%;
	max-width: 21px;
	display: block;
    -webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-left: auto;
	margin-right: auto;
}
.header-filter-image {
	width: 100%;
	height: auto;
}
.header-filter-text {
	font-size: 11px;
	color: #666;
	text-align: center;
	text-decoration: none;
	margin-top: 5px;
}
.header-select {
	width: 230px;
	padding: 0 0 0 15px;
}
.header-select a {
	width: 230px;
	height: 25px;
	line-height: 25px;
	border: #eeeeee solid 1px;
	border-radius: 3px;
	color: #333333;
	font-size: 13px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	display: inline-block;
	text-decoration: none;
	padding: 0 0 0 25px;
	background: url(https://dpoint.jp/parts/map/img/img_pulldown.png) 5px center no-repeat;
	background-size: 13px auto;
}
.header-count {
	text-align: center;
	padding-left: 10px;
}
.header-count p {
	color: #666666;
	font-size: 11px;
}
.header-count p b {
	font-weight: normal;
	font-size: 14px;
}
.header-print {
	display: none;
}
@media screen and (min-width: 641px) {
	.header {
		width: 100%;
		height: 63px;
		-webkit-box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, .15);
		        box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, .15);
	}
	.header-inner {
		padding: 10px;
	}
	.header-inner::after {
		/* clearfix */
		content: '';
		display: block;
		clear: both;
	}
	.header-box {
		width: 33.3%;
		display: block;
	    float: left;
	}
	.header-box::after {
		/* clearfix */
		content: '';
		display: block;
		clear: both;
	}
	.header-box.header-box-search {
		width: 390px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.header-box.header-box-btm {
		width: 7%;
		max-width: 101px;
		float: right;
	}
	/* PC: 検索 */
	.header-search,
	.header-filter {
		display: block;
		float: left;
	}
	.header-search .search-form {
		border-radius: 8px;height: 40px;		
	}
	.header-search .search-form::before {
		width: 18px;
		height: 18px;
	}
	.header-search .search-form input[type="search"],
	.header-search .search-form input[type="submit"],
	.header-filter-link {
		height: 38px;
		font-size: 14px;
	}
	.header-search .search-form input[type="search"] {
		width: 76%;
		border-radius: 6px 0 0 6px;
		padding-left: 30px;
	}
	.header-search .search-form input[type="submit"] {
		width: 24%;
		border-radius: 0 6px 6px 0;
	}
	.header-filter-thumbnail {
		max-width: 32px;
	}
	.header-filter-text {
		font-size: 12px;
	}
	.header-menu {
		position: relative;
		width: 27px;
		padding: 0;
	}
	.header-location {
		bottom: 112px;
	}

	/* プリンターボタン */
	.header-print {
		display: block;
	}
	.header-print a {
		display: block;
		width: 100%;
		height: 43px;
		line-height: 50px;
		text-align: center;
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		border: 1px solid #4285f4;
		border-radius: 8px;
		margin-left: auto;
	}
/* min-width: 641px */}


/** ----------------------------------- *
 * 
 * 各種検索窓
 * 検索条件表示
 *
 * ------------------------------------ */
.filtering-category-pc,
.filtering-category-sp {
	background: #e8e8e8;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
	top: 51px;
}
.shop-search-box:not([data-title]),
[data-title="全店舗"] {
	display: none;
}
.filtering-category-text {
	font-size: 12px;
	color: #333;
	text-align: left;
	white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
}
@media screen and (max-width: 640px) {
	.filtering-category-pc {
		display: none;
	}

	.filtering-category-sp .filtering-category-text {
		line-height: 28px;
		padding-left: 12px;
	}
/* max-width: 640px */}
@media screen and (min-width: 641px) {
	.filtering-category-sp {
		display: none;
	}
	.filtering-category-pc {
		max-width: 400px;
		top: 63px;
	}
	.filtering-category-pc .filtering-category-text {
		font-size: 14px;
		line-height: 42px;
		padding-left: 10px;
	}
/* min-width: 641px */}

 
/** ----------------------------------- *
 * 
 * フィルタボタン
 * - dポイントカード
 * - d払い
 * - iD
 * - クーポン
 * 
 * ------------------------------------ */
.service-button-block {
	width: 100%;
	height: auto;
	background: rgba(51, 51, 51, .5);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 4px 5px;
}
.service-button-list {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
}
/* サービスボタンのli 活性*/
.service-button-item {
	width: 23%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0 1%;
	padding: 0;
    border-radius: 6px;
    border: 1px solid #9a9a9a;
    background-color: #fff;
}
/* サービスボタンのli 非活性 */
.service-button-item.is-disabled {
	border: 1px solid #e8e8e8;
	background: #e8e8e8;
}

/*サービスボタンのa*/
.service-button-link {
	width: 100%;
	height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	cursor: pointer;
}

@media screen and (max-width: 640px) {
	.service-button-block.disp-sp {
		display: block;
		position: absolute;
		top: 51px;
	}
/* max-width: 640px */}


@media screen and (min-width: 641px) {
	.service-button-block.disp-sp {
		display: none;
	}
	.header-box.disp-pc {
		display: block;
		width: 31%;
		max-width: 440px;
		min-width: 180px;
	}
	.header-box.disp-pc .service-button-block {
		display: block;
		max-width: 440px; /* IE11用 */
		background: rgba( 255, 255, 255, 0);
		padding: 0;
		position: unset;
	}
	.service-button-item {
		width: 23.5%;
		border-radius: 6px;
		margin: 0 2% 0 0;
	}
	.service-button-item:nth-last-of-type(1) {
		margin-right: 0;
	}
	.service-button-link {
		height: 41px;
		position: relative;
		-webkit-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
	}
	.service-button-link:hover {
		opacity: .6;
	}
	.is-disabled .service-button-link:hover {
		opacity: 1;
	}
	.campaign-list-wrap .service-button-link:hover {
		opacity: 1;
	}
	.campaign-list-wrap .is-disabled .service-button-link:hover {
		opacity: 1;
	}

/* min-width: 641px */}

/** ----------------------------------- *
 * 
 * modal
 * 
 * ------------------------------------ */
.modal {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: none;
	z-index: 9998;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
/*	background: #fff;*/
}
.modal .inner {
	overflow: hidden;
	position: absolute;
	z-index: 11;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width: 100%;
	background: #fff;
}
.modal-title {
	background: #666666;
	width: 100%;
	display: block;
	text-align: center;
	color: #fff;
	font-weight: normal;
	font-size: 14px;
	padding: 19px 0 17px;
}
.modal-subtitle {
	font-size: 14px;
	padding-left: .75em;
	margin-bottom: 15px;
}
.modal-checks {
	background:#fff;
	padding: 15px 5px;
	margin-bottom: 15px;
}
.modal-wrapper {
	background: rgba(0, 0, 0, 0.5);
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 10000;
	display: none;
}
.modal .shop-card {
	margin-top: 0;
	position: initial;
	bottom: 0;
}
.modal .shop-card > li {
	width: 100%;
	margin: 0;
	border-radius: 0;
	border: none;
}
.modal .shop-card > li:first-child {
	border-top: none;
}
@media screen and (min-width: 641px) {
	.modal {
		position: absolute;
		top: 63px;
	}
	#modalRefine {
		background-color: #fff;
	}
	.modal-title {
		font-size: 18px;
		font-weight: bold;
	}
	.modal-subtitle {
		font-size: 16px;
	}
	.modal-checks {
		padding: 15px 10px 30px;
	}
	.modal-wrapper {
		height: calc(100% - 63px);
	}
/* min-width: 641px */}

.modal-footer {
	position: fixed;
	bottom: 0;
	left: 0;
	background: transparent;
}
@media screen and (max-width: 640px) {
	.modal-footer {
		width: 100% !important;
	}
/* max-width: 640px */}

.modal-footer a {
	display: inline-block;
	width: 100%;
	height: 44px;
	line-height: 44px;
	background: rgba(204, 0, 51, .85);
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	border-radius: 4px;
	-webkit-box-shadow: 0px 4px 8px 2px rgba( 54, 54, 68, .35);
		box-shadow: 0px 4px 8px 2px rgba( 54, 54, 68, .35);
}
.modal-footer a span {
	font-size: 20px;
	font-weight: bold;
	margin-left: 5px;
}
.modal-footer-text {
	font-size: 14px;
	font-weight: bold;
	padding: 15px;
	width: 100%;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.modal-footer-text span {
	color: #cc0021;
	font-size: 20px;
	margin-left: 5px;
}
@media screen and (min-width: 641px) {
	.modal-footer {
		width: 400px;
		background-color: #fff;
	}
	.modal-footer a {
		height: 54px;
		line-height: 54px;
		box-shadow: 0px 4px 10px 2px rgba( 54, 54, 68, .45);
	}
/* min-width: 641px */}

.modalClose, 
.naviClose {
	display: block;
	width: 28px;
	height: 28px;
	text-indent: -9999px;
}
.modalClose:hover, 
.naviClose:hover {
	opacity: 0.7;
}
#modal02 .modalClose:not(.bottom), 
#modal02 .naviClose:not(.bottom) {
	margin: 10px 10px 0 0;
}
.modalClose::before, 
.naviClose::before, 
.modalClose::after, 
.naviClose::after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 84%;
	height: 5%;
	margin: -3% 0 0 -42%;
	background: #9a9a9a;
	width: 67%;
}
.modalClose::before, 
.naviClose::before {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	    transform: rotate(-45deg);
}
.modalClose::after, 
.naviClose::after {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	    transform: rotate(45deg);
}
@media screen and (min-width: 641px) {
	.modalClose, 
	.naviClose {
		width: 35px;
		height: 35px;
	}
/* min-width: 641px */}
.modal-select-table, 
.modal-select-line, 
.modal-select-shop, 
.modal-select-list {
	display: table;
	width: 100%;
	border: #ebebeb solid 1px;
	background: #fff;
	border-radius: 6px;
	/*
	&.type-ui-checkbox{
	@include checkbox;
	}
	*/
}
.modal-select-table label, 
.modal-select-line label {
	height: 44px;
	line-height: 44px;
	width: 100%;
	display: block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 0 10px;
} 
.modal-select-list label {
	height: 44px;
	line-height: 44px;
	width: 100%;
	display: block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.modal-select-table span, 
.modal-select-line span, 
.modal-select-shop span, 
.modal-select-list span {
	text-align: center;
	position: relative;
	display: inline-block;
	width: 100%;
	font-size: 14px;
}
.modal-select-table span::after, 
.modal-select-shop span::after,
.modal-select-line span::after {
	content: "";
	display: inline-block;
	width: 12px;
	height: 12px;
	border: 2px solid #767676;
	border-radius: 2px;
	margin-left: 7px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	vertical-align: middle;
}
/* ジャンル */
.modal-genre .modal-select-list span::after {
	content: "";
	display: inline-block;
	width: 20px;
	height: 14px;
	background: transparent url(https://dpoint.jp/parts/map/img/icon_check_disable.png) center center no-repeat;
	background-size: contain;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	vertical-align: middle;	
}

.modal-select-table input, 
.modal-select-line input, 
.modal-select-shop input, 
.modal-select-list input {
	display: none;
}
.modal-select-table input:checked + span::after, 
.modal-select-line input:checked + span::after, 
.modal-select-shop input:checked + span::after {
	background: url(https://dpoint.jp/parts/map/img/check_active.png) center center no-repeat #cc0021;
	background-size: 12px auto;
	border: none;
}
.modal-select-list input:checked + span {
	color: #333;
	border: 1px solid #cc0033;
}
.modal-select-list input:checked + span::after {
	width: 20px;
	height: 14px;
	background: transparent url(https://dpoint.jp/parts/map/img/icon_check_enable.png) center center no-repeat;
	background-size: contain;
}
@media screen and (min-width: 641px) {
	.modal-select-table label, 
	.modal-select-line label, 
	.modal-select-shop label, 
	.modal-select-list label {
		height: 50px;
		line-height: 50px;
		cursor: pointer;
	}
	.modal-select-table span::after, 
	.modal-select-line span::after, 
	.modal-select-shop span::after, 
	.modal-select-list span::after {
		width: 15px;
		height: 15px;
		border-width: 1px;
	}
/* min-width: 641px */}

.modal-select-table li, 
.modal-select-line li, 
.modal-select-shop li, 
.modal-select-list li {
	display: table-cell;
	height: 44px;
}
.modal-select-table li:only-child, 
.modal-select-line li:only-child, 
.modal-select-shop li:only-child, 
.modal-select-list li:only-child {
	width: 100%;
}
.modal-select-table li:first-child:nth-last-child(3), 
.modal-select-line li:first-child:nth-last-child(3), 
.modal-select-shop li:first-child:nth-last-child(3), 
.modal-select-list li:first-child:nth-last-child(3), 
.modal-select-table li:first-child:nth-last-child(3) ~ li, 
.modal-select-line li:first-child:nth-last-child(3) ~ li, 
.modal-select-shop li:first-child:nth-last-child(3) ~ li, 
.modal-select-list li:first-child:nth-last-child(3) ~ li {
	width: 30%;
}
@media screen and (min-width: 641px) {
	.modal-select-table, 
	.modal-select-shop, 
	.modal-select-list {
		margin-bottom: 22px;
	}
	.modal-select-table li, 
	.modal-select-line li, 
	.modal-select-shop li, 
	.modal-select-list li {
		height: 50px;
	}
/* min-width: 641px */}
.modal-select-line {
	display: block;
}
.modal-select-line li {
	display: block;
	width: 100%;
}
.modal-select-line li label {
	height: 44px;
	line-height: 44px;
	width: 100%;
	display: block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding-left: 45px;
	padding-right: 10px;
}
.modal-select-line li span {
	text-align: center;
	position: relative;
	display: inline-block;
	width: 100%;
	font-size: 13px;
}
.modal-select-line li span::after {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	border: 1px solid #9a9a9a;
	border-radius: 4px;
	margin-left: 7px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	vertical-align: middle;
}
.modal-select-line li input {
	display: none;
}
/* 対応サービス |  */
.modal-select-line li [class*="check_"]::before,
.modal-select-line li [class^="check_"]::before {
	content: '';
	position: absolute;
	top: 50%;
	left: -35px;
	-webkit-transform: translate( 0, -50%);
	transform: translate( 0, -50%);
}
/* 対応サービス | dポイントカード */
.modal-select-line li .check_stock::before {
	width: 25px;
	height: 25px;
	background: transparent url(https://dpoint.jp/parts/map/img/icon_serviceTagList_dpointcard.png) left center no-repeat;
	background-size: contain;
}
/* 対応サービス | d払い(コード決済) */
.modal-select-line li .check_barai::before {
	width: 25px;
	height: 25px;
	background: transparent url(https://dpoint.jp/parts/map/img/icon_serviceTagList_dpay.png) left center no-repeat;
	background-size: contain;
}
/* 対応サービス | dカード(iD)、d払い(iD) */
.modal-select-line li .check_id::before {
	width: 25px;
	height: 25px;
	background: transparent url(https://dpoint.jp/parts/map/img/icon_serviceTagList_id.png) left center no-repeat;
	background-size: contain;
}
/* 対応サービス | クーポン */
.modal-select-line li .check_use::before {
	width: 25px;
	height: 25px;
	background: transparent url(https://dpoint.jp/parts/map/img/icon_serviceTagList_coupon.png) left center no-repeat;
	background-size: contain;
}
/* 対応サービス | キャンペーン実施中 */
.modal-select-line li .check_campaign::before {
	width: 25px;
	height: 25px;
	background: transparent url(https://dpoint.jp/parts/map/img/icon_serviceTagList_campaign.png) left center no-repeat;
	background-size: contain;
}
.modal-checks .modal-select-line li input:checked + span::after {
	background: url(https://dpoint.jp/parts/map/img/icon_check_active.png) center center no-repeat #cc0021;
	background-size: contain;
	border: none;
}
@media screen and (min-width: 641px) {
	.modal-select-line li label {
		height: 50px;
		line-height: 50px;
		cursor: pointer;
	}
	.modal-select-line li span,
	.modal-select-list li span {
		font-size: 14px;
	}
/* min-width: 641px */}

.modal-select-line li:first-child:nth-last-child(2), 
.modal-select-line li:first-child:nth-last-child(2) ~ li, 
.modal-select-line li:first-child:nth-last-child(3), 
.modal-select-line li:first-child:nth-last-child(3) ~ li {
	width: 100%;
}
.modal-select-line li + li {
	border-left: none;
	border-top: #ebebeb solid 1px;
}
.modal-select-line li span {
	text-align: left;
	font-size: 13px;
	font-weight: bold;
}
.modal-select-line li span::after {
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate( 0, -50%);
	transform: translate( 0, -50%);
}
.modal-genre {
	background: #fff;
	width: 100%;
	padding: 15px 5px;
}
.modal-shop {
	background: #fff;
	display: table;
	width: 100%;
	padding: 15px 5px 75px;
}
.modal-genre-head {
	display: table;
	width: 100%;
	margin-bottom: 15px;
}
.modal-genre-title {
	font-size: 15px;
	display: table-cell;
	padding-left: .75em;
	margin: 0;
}
.modal-shop-title {
	font-size: 15px;
	padding-left: .75em;
	margin-bottom: 15px;
}
.modal-select-shop {
	width: 100%;
	border: none;
	display: block;
	-webkit-box-shadow: none;
			box-shadow: none;
}
.modal-select-shop li {
	letter-spacing: normal;
	display: inline-block;
	width: 100%;
	border: 1px solid #ebebeb;
	border-top: 0;
}
.modal-select-shop li:nth-of-type(1) {
	border-radius: 6px 6px 0 0;
	border-top: 1px solid #ebebeb;
}
.modal-select-shop li:nth-last-of-type(1) {
	border-radius: 0 0 6px 6px;
}
.modal-select-shop li label {
	height: 44px;
	line-height: 44px;
	width: 100%;
	display: block;
	-webkit-box-sizing: border-box;
			box-sizing: border-box;
	padding-right: 10px;
}
.modal-select-shop li span {
	text-align: center;
	position: relative;
	display: inline-block;
	width: 100%;
	font-size: 14px;
}
.modal-select-shop li span::after {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	border: 1px solid #9a9a9a;
	border-radius: 4px;
	margin-left: 7px;
	box-sizing: border-box;
	vertical-align: middle;
}
.modal-select-shop li input {
	display: none;
}
.modal-select-shop li input:checked + span::after {
	background: transparent url(https://dpoint.jp/parts/map/img/icon_check_active.png) center center no-repeat;
	background-size: contain;
	border: none;
}
@media screen and (min-width: 641px) {
	.modal-select-shop li label {
		height: 50px;
		line-height: 50px;
		cursor: pointer;
	}
	.modal-genre,
	.modal-shop {
		padding: 15px 10px;
	}
	.modal-genre-title,
	.modal-shop-title {
		font-size: 16px;
	}
	.modal-shop {
		padding-bottom: 80px;
	}
/* min-width: 641px */}

.modal-select-shop li span {
	text-align: left;
	padding-left: 12px;
	padding-right: 20px;
}
.modal-select-shop li span::after {
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate( 0, -50%);
	transform: translate( 0, -50%);
}
.modal-select-list {
	width: 100%;
	border-radius: 0;
	-webkit-box-shadow: none;
	        box-shadow: none;
	font-size: 0;
	border: none;
	display: block;
	overflow: hidden;
	padding: 0 5px 50px;
	margin-bottom: 6%;
}
.modal-select-list li {
	letter-spacing: normal;
	display: inline-block;
	vertical-align: top;
	position: relative;
	margin-right: 5px;
	margin-bottom: 8px;
}
.modal-select-list li:nth-last-of-type(1) {
	margin-right: 0;
	margin-bottom: 0;
}
.modal-select-list li label {
	width: 100%;
	height: 42px;
	display: table;
	line-height: 42px;
}
.modal-select-list li span {
	text-align: left;
	display: table-cell;
	vertical-align: middle;
	position: unset;
	width: 100%;
	color: #cccccc;
	font-size: 13px;
	line-height: 14px;
	font-weight: bold;
	padding: 10px 35px 10px 10px;
	border-radius: 6px;
	border: 1px solid #cccccc;
}
.modal-select-list li span::after {
	position: absolute;
	top: 50%;
	right: 10px;
	-webkit-transform: translate( 0, -50%);
	transform: translate( 0, -50%);
}
@media screen and (min-width: 641px) {
	.modal-select-list {
		padding: 0 0 40px;
	}
	.modal-select-list li {
		margin-right: 8px;
		margin-bottom: 8px;
	}
	.modal-select-list li label {
		height: 50px;
		line-height: 50px;
	}
}


/** ----------------------------------- *
 * 
 * 検索条件の絞り込み
 * 
 * ------------------------------------ */
#modalRefine .inner {
	background: #dddddd;
	position: relative;
}
#modalRefine .modalClose {
	position: absolute;
	top: 10px;
	right: 10px;
}
#modalRefine .modalClose::before, 
#modalRefine .modalClose::after {
	background: #fff;
}
@media screen and (min-width: 641px) {
	/*#modalRefine .inner {
	top: 63px;
}*/
/* min-width: 641px */}

.modal-type-shop {
	padding: 15px;
}
.modal-type-shop .inner {
	width: calc(100% - 30px);
	padding: 0;
	border-radius: 5px;
	margin-bottom: 100px;
	top: 100px;
}
.modal-shop-cardHead {
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 12px;
	position: relative;
}
.modal-shop-cardHead-text,
.modal-shop-cardHead-count {
	font-size: 12px;
	color: #333;
}
.modal-shop-cardHead-close {
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate( 0, -50%);
	transform: translate( 0, -50%);
}
.modal-type-shop .shop-card-main {
	border-radius: 0;
	border-top: 1px solid #e8e8e8;
	border-left: 0;
	padding: 10px 18px;
	box-shadow: none;
}
@media screen and (min-width: 641px) {
	.modal-type-shop .inner {
		width: 600px;
		left: calc(50% - 300px);
		top: 100px;
		margin-bottom: 100px;
	}
	.modal-shop-cardHead {
		padding: 20px 15px;
	}
	.modal-shop-cardHead-text,
	.modal-shop-cardHead-count {
		font-size: 16px;
	}
	.modal-shop-cardHead-close {
		right: 6px;
	}
/* min-width: 641px */}

/* iPad mini対応 */
@media screen and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait){
	.modal-type-shop .inner {
		top: calc(512px - 30%);
	}
}
@media screen and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape){
	.modal-type-shop .inner {
		top: calc(384px - 30%);
	}
}

.check_genre_all {
	display: table-cell;
	text-align: right;
}
.check_genre_all label {
	height: 24px;
	line-height: 24px;
	width: 100%;
	display: block;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding-right: 10px;
}
.check_genre_all span {
	text-align: center;
	position: relative;
	display: inline-block;
	width: 100%;
	font-size: 14px;
	text-align: right;
}
.check_genre_all span::after {
	content: "";
	display: inline-block;
	width: 24px;
	height: 24px;
	border: 1px solid #9a9a9a;
	border-radius: 4px;
	margin-left: 7px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	vertical-align: middle;
}
.check_genre_all input {
	display: none;
}
.check_genre_all input:checked + span::after {
	background: transparent url(https://dpoint.jp/parts/map/img/icon_check_active.png) center center no-repeat;
	background-size: contain;
	border: none;
}
@media screen and (min-width: 641px) {
	.check_genre_all label {
		height: 25px;
		line-height: 25px;
		cursor: pointer;
	}
/* min-width: 641px */}


/** ----------------------------------- *
 * 
 * メイン・コンテンツのラッパー
 * - 地図表示部分
 * - 店舗情報
 * 
 * ------------------------------------ */
.map-main-box {
	position: relative;	
}
.map-main-box .map-area {
	position: relative;
	display: block;
	top: 51px;
}
.map-main-box .btn-refine {
	position: absolute;
	top: 20px;
	left: 0;
	color: #fff;
	font-size: 14px;
	padding: 45px 10px 10px;
	border-radius: 0 8px 8px 0;
	background: url(https://dpoint.jp/parts/map/img/img_pulldown.png) center 10px no-repeat #1e88e5;
	text-decoration: none;
}
@media screen and (max-width: 640px) {
	.map-main-box .btn-refine {
	background-size: 12px auto;
	padding: 30px 10px 10px;
	font-size: 10px;
	}
/* max-width: 640px */}

.map-main-box .btn-research {
	position: absolute;
	top: 70px;
	left: 50%;
	color: #fff;
	font-size: 14px;
	padding: 0 0 0 10px;
	border-radius: 40px;
	height: 40px;
	line-height: 40px;
	background: url(https://dpoint.jp/parts/map/img/img_search_w.png) 10px center no-repeat #1e88e5;
	background-size: 18px auto;
	text-decoration: none;
	width: 190px;
	text-align: center;
	margin-left: -95px;
}
.map-main-box #gmap {
	width: 100%;
	/* header 51px , カテゴリフィルター 28px , footer 44px */
	height: calc(100vh - (51px + 28px + 44px));
}
.shop-search-box:not([data-title]) + .map-main-box #gmap,
[data-title="全店舗"] + .map-main-box #gmap {
	/* header 51px , カテゴリフィルター 非表示, footer 44px */
	height: calc(100vh - (51px + 44px));
}

.map-main-box .map-menu-inner {
	overflow: hidden;
	position: absolute;
    left: 0;
    /*bottom: -44px;*/
    width: 100%;
}
.map-menu-inner .quote {
	line-height: 22px;
	position: fixed;
	bottom: 22px;
	width: 100%;
	background-color: #fff;
	min-width: 320px;
	color: #9a9a9a;
}
@media screen and (min-width: 641px) {
	.map-main-box .btn-research {
		font-size: 18px;
		width: 260px;
	}
	.map-main-box {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.map-main-box .map-area {
		position: absolute;
		left: 400px;
		top: 64px;
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
			order: 1;
		height: calc(100vh - 64px);
		width: calc(100% - 400px);
	}
	.map-main-box .map-menu {
		position: relative;
		-webkit-box-ordinal-group: 1;
		-ms-flex-order: 0;
			order: 0;
		width: 400px;
		height: calc(100vh - 64px);
		z-index: 1;
	}
	/* 地図 部分 */
	.map-main-box #gmap,
	.shop-search-box:not([data-title]) + .map-main-box #gmap,
	[data-title="全店舗"] + .map-main-box #gmap {
		height: 100%;
	}
	/* 店舗情報 部分*/
	.map-main-box .map-menu-inner {
		overflow-y: scroll;
		/* header 63px + カテゴリーフィルター 42px */
		max-height: calc(100vh - (63px + 42px));
		position: relative;
		top: 63px;
	}
	.shop-search-box:not([data-title]) + .map-main-box .map-menu-inner,
	[data-title="全店舗"] + .map-main-box .map-menu-inner {
		overflow-y: scroll;
		/* header 63px + カテゴリーフィルター 非表示 */
		max-height: calc(100vh - 63px);
		top: 63px;
	}
	.map-menu-inner .quote {
		font-size: 14px;
		padding: 8px;
		width: 400px;
		position: static;
	}
/* min-width: 641px */}

/* iPad mini対応 */
@media screen and (device-width: 768px) and (device-height: 1024px) and (orientation: portrait){
	.map-main-box .map-area {
		height: calc(1024px	- 64px);
	}
	.map-main-box .map-menu {
		height: calc(1024px	- 64px);
	}
	.map-main-box .map-menu-inner {
		height: calc(1024px	- 64px - 48px);
	}
}
@media screen and (device-width: 768px) and (device-height: 1024px) and (orientation: landscape){
	.map-main-box .map-area {
		height: calc(768px	- 64px);
	}
	.map-main-box .map-menu {
		height: calc(768px	- 64px);
	}
	.map-main-box .map-menu-inner {
		height: calc(768px	- 64px - 48px);
	}
}



/** ----------------------------------- *
 * 
 * shop-card
 * 店舗情報
 * 
 * ------------------------------------ */
.shop-card {
	margin-top: 10px;
}
.shop-card.on-modal {
	width: auto;
}
.shop-card .slick-list {
	overflow: visible;
	padding-right: 34vw;
}
/* カレント・アクティブ */
.shop-card .slick-current .list-inner {
	position: relative;
}
.shop-card .slick-current .shop-card-main {
    border-top: 4px solid #cc0033;
}
.shop-card .slick-current .list-inner .shop-card-inner .shop-card-main {
	border-top: 1px solid #cc0033;
}
.shop-card .slick-next, 
.shop-card .slick-prev {
	display: block;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	/*background: url(https://dpoint.jp/parts/map/img/controls.png) no-repeat 0 0;*/
	width: 32px;
	height: 32px;
	border: none;
	text-indent: -9999px;
	z-index: 10;
	outline: none;
}
.shop-card .slick-next {
	left: calc(100vw - 35px);
	background-position: -43px -32px;
}
.shop-card .slick-prev {
	left: 3px;
}
.shop-card .slick-disabled {
	display: none !important;
}
.shop-card .list-inner {
	display: block;
	background: #fff;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 5px;
	margin-left: 10px;
}
@media screen and (max-width: 640px) {
	.shop-card {
		width: 100%;
		margin-top: 0;
		position: fixed;
		bottom: 68px;
	}
/* max-width: 640px */}

@media screen and (min-width: 641px) {
	.shop-card .list-inner {
		width: 100%;
		border-radius: 0;
		margin: 0;
	}
	/* カレント・アクティブ */
	.shop-card .slick-current .shop-card-main {
		border-top: 1px solid #e8e8e8;
		border-left: 5px solid #cc0033;
		border-radius: 0;
	}
	.shop-card .slick-current .list-inner {
		box-shadow: none;
	}
/* min-width: 641px */}

.shop-card-main {
	width: 100%;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	text-decoration: none;
	color: #333;
	border-radius: 5px;
	border-top: 5px solid #fff;
	padding: 5px 15px 5px 8px;
	-webkit-box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, .15);
	box-shadow: 0px 0px 5px 1px rgba(0, 0, 0, .15);
	position: relative;
	min-height: 75px;
}
.shop-card-main::before {
	content: "";
	display: block;
	border-top: 1px solid #b2b2b2;
	border-right: 1px solid #b2b2b2;
	position: absolute;
	top: 50%;
	right: 10px;
	width: 9px;
	height: 9px;
	-webkit-transform: translate( 0, -50%) rotate(45deg);
	-ms-transform: translate( 0, -50%) rotate(45deg);
	    transform: translate( 0, -50%) rotate(45deg);
}
.shop-card-infomtion {
	width: 83%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 10px;
}
.shop-card-infomtion > * {
	vertical-align: middle;
}
.shop-card-logo {
	width: 17%;
}
.shop-card-logo img {
	width: 100%;
	height: auto;
}
.shop-card-data-box {
    width: 100%;
    margin-bottom: 4px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.shop-card-name {
	color: #333;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.4;
	white-space: nowrap;
	-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
	overflow: hidden;
}
.shop-card-place {
	color: #9a9a9a;
	font-size: 12px;
	margin-top: 2px;
	padding: 2px 0;
	white-space: nowrap;
	-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
	overflow: hidden;
}
.shop-card-route {
	border-top: #eeeeee solid 1px;
	text-decoration: none;
	display: block;
	color: #333333;
	width: 100%;
	text-align: center;
	font-size: 10px;
	padding: 7px 0;
}
.shop-card-route:after {
	content: "";
	background: url(https://dpoint.jp/parts/map/img/logo_route.png) left center no-repeat;
	background-size: 14px;
	display: inline-block;
	width: 14px;
	height: 14px;
	vertical-align: middle;
	margin-left: 5px;
}
@media screen and (min-width: 641px) {
	.shop-card {
		margin-top: 0;
	}
	.shop-card .list {
		display: block;
		width: 100%;
		margin: 0;
	}
	.shop-card-main {
		width: 100%;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		border-top: 1px solid #e8e8e8;
		border-left: 5px solid #fff;
		padding: 15px 35px 15px 7px;
		-webkit-box-shadow: none;
		box-shadow: none;
		-webkit-transition: all .2s ease-in-out;
		transition: all .2s ease-in-out;
		border-radius: 0;
	}
	.shop-card-main:hover {
		border-top: 1px solid #e8e8e8;
		/* opacity: .6; */
	}
	.shop-card-main::before {
		margin-top: -5px;
		width: 10px;
		height: 10px;
		right: 20px;
		border-top: 2px solid #b2b2b2;
		border-right: 2px solid #b2b2b2;
	}
	.shop-card-logo {
		width: 80px;
		height: 80px;
	}
	.shop-card-infomtion {
		width: 76%;
		padding-left: 12px;
	}
	.shop-card-data-box {
		margin-bottom: 0;
	}
	.shop-card-name {
		font-size: 15px;
		font-weight: bold;
		line-height: 1.4;
	}
	.shop-card-place {
		font-size: 14px;
		margin-top: 9px;
		margin-bottom: 12px;
	}
/* min-width: 641px */}


/** ----------------------------------- *
 * 
 * 検索結果無し
 * 
 * ------------------------------------ */
.NoResult_wrapper {
	width: 100%;
	background: #fff;
	box-sizing: border-box;
	border-bottom: 15px solid #dddddd;
	padding: 15px 10px;	
}
.NoResult_text {
	color: #333;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	line-height: 1.65;
}
.NoResult_text::before {
	content: 'i';
	color: #fff;
	font-size: 14px;
	box-sizing: border-box;
	border-radius: 50%;
	background: #cc0033;
	width: 18px;
	height: 18px;
	line-height: 20px;
	display: inline-block;
	margin-right: .5em;
}
@media screen and (min-width: 641px) {
	.empty-text {
		font-size: 13px;
	}
}

/** ----------------------------------- *
 * 
 * - 現在地の取得に失敗しました
 * - 地名・エリアが見つかりませんでした。
 * 
 * ------------------------------------ */
.error-message {
	display: none;
	background: rgba( 57, 57, 57, .85);
	position: absolute;
	left: 50%;
	bottom: calc(100vh - 60vh);
	width: calc(100% - (60px * 2));
	border-radius: 6px;
	padding: 12px;
	color: #fff;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	    transform: translateX(-50%);
	text-align: center;
	font-size: 12px;
	z-index: 1;
}
@media screen and (min-width: 641px) {
	.error-message {
		font-size: 16px;
		/*bottom: 10vh;*/
		width: 360px;
		padding: 20px 15px;
	}
/* min-width: 641px */}

/* 使用可能サービスアイコン */
.tag-list {
	display: inline;
	overflow: hidden;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}
.tag-list li {
	position: relative;
	vertical-align: middle;
	float: left;
}
.tag-list li::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	    transform: translateY(-50%);
}
.tag-list li.i_dpay,
.tag-list li.i_dcard,
.tag-list li.i_coupon,
.tag-list li.i_id {
	height: 23px;
}
.tag-list li.i_dpay {
	width: 20px;
}
.tag-list li.i_dcard::after {
	width: 100%;
	height: 16px;
	background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_dpointcard.png) left center no-repeat;
	background-size: contain;
}

.tag-list li.i_dcard {
	width: 24px;
}
.tag-list li.i_dpay::after {
	width: 100%;
	height: 16px;
	background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_dpay.png) left center no-repeat;
	background-size: contain;
}

.tag-list li.i_id {
	width: 28px;
}
.tag-list li.i_id::after {
	width: 100%;
	height: 16px;
	background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_id.png) left center no-repeat;
	background-size: contain;
}

.tag-list li.i_coupon {
	width: 23px;
}
.tag-list li.i_coupon::after {
	width: 100%;
	height: 16px;
	background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_coupon.png) left center no-repeat;
	background-size: contain;
}

/*キャンペーンアイコン*/
.shop_shoplist,
.shop_modal,
.shop_print {
	position: static !important;
	display: inline-block;
	overflow: hidden;
	border-left: solid 1px #808080;
	margin-left: 5px;
}
.shop_shoplist li,
.shop_modal li,
.shop_print li {
	float: left;
	margin: 3px 2px;
}
.shop_shoplist li:nth-child(1),
.shop_modal li:nth-child(1),
.shop_print li:nth-child(1) {
	padding-left: 3px;
}
.shop_shoplist img,
.shop_modal img,
.shop_print img {
	width: 17px;
}
/*キャンペーンアイコン・印刷用*/
.shop_print {
	margin-left: 14px;
}
.shop_print li img {
	width: 16px;
}

@media screen and (min-width: 641px) {
	.tag-list {
		max-width: 242px;
	}
	.tag-list li {
		margin-top: 4px;
	}
	.tag-list li.i_dcard {
		width: 38px;
	}
	.tag-list li.i_dcard::after {
		width: 100%;
		height: 24px;
		background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_dpointcard.png) left center no-repeat;
		background-size: contain;
	}

	.tag-list li.i_dpay {
		width: 32px;
	}
	.tag-list li.i_dpay::after {
		width: 100%;
		height: 24px;
		background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_dpay.png) left center no-repeat;
		background-size: contain;
	}

	.tag-list li.i_id {
		width: 45px;
	}
	.tag-list li.i_id::after {
		width: 100%;
		height: 24px;
		background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_id.png) left center no-repeat;
		background-size: contain;
	}

	.tag-list li.i_coupon {
		width: 42px;
	}
	.tag-list li.i_coupon::after {
		width: 100%;
		height: 24px;
		background: url(https://dpoint.jp/parts/map/img/icon_serviceTagList_coupon.png) left center no-repeat;
		background-size: contain;
	}
	/*キャンペーンアイコン*/
	.shop_shoplist img,
	.shop_modal img,
	.shop_print img {
		width: 24px;
	}
/* min-width: 641px */}

/** ----------------------------------- *
 * 
 * ???
 * 
 * ------------------------------------ */
.d-bnrs {
	margin: 20px 15px;
}
.d-bnrs li {
	display: inline-block;
	width: 47%;
	min-height: 16px;
}
.d-bnrs li + li {
	margin-left: 15px;
}
.d-bnrs li a {
	border: #eeeeee solid 1px;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 100%;
	display: block;
	text-align: center;
	height: 40px;
	line-height: 40px;
}
.d-bnrs li img {
	height: 16px;
	width: auto;
}


/** ----------------------------------- *
 * 
 * 店舗情報　下部
 * - dメニュー
 * - dポイントクラブ
 * 
 * ------------------------------------ */
.bottomMenu {
	overflow: hidden;
}
.bottomMenu.side {
	background: #333333;
	height: 22px;
	position: fixed;
	bottom: 0;
	width: 100%;
}
.bottomMenu-list {
	width: 100%;
}
.bottomMenu li {
	display: inline-block;
	position: relative;
	letter-spacing: -.6em;
}
.bottomMenu.side .bottomMenu-list li:nth-of-type(1)::after {
	content: '';
	width: 1px;
	height: 12px;
	background: #fff;
	position: absolute;
	top: 50%;
	right: 0;
	-webkit-transform: translate( 0, -50%);
	transform: translate( 0, -50%);
}
.bottomMenu li a {
	width: 100%;
	display: inline-block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding-left: 5px;
	padding-right: 10px;
	color: #fff;
	font-size: 12px;
	line-height: 20px;
	text-align: left;
	text-decoration: none;
	letter-spacing: normal;
}
@media screen and (min-width: 641px) {
	.bottomMenu.side {
		height: 37px;
		width: 400px;
		position: static;
	}
	.bottomMenu-list {
		width: 560px;
		margin: 0 auto;
	}
	.bottomMenu.side .bottomMenu-list {
		width: 100%;
	}
	.bottomMenu li {
		border-right: 0;
	}
	.bottomMenu.side .bottomMenu-list li a {
		font-size: 14px;
		padding: 8px 12px;
	}
	.bottomMenu.side .bottomMenu-list li:nth-of-type(1) {
		position: relative;
	}
	.bottomMenu.side .bottomMenu-list li:nth-of-type(1)::after {
		content: '';
		width: 1px;
		height: 14px;
		background: #fff;
		position: absolute;
		top: 50%;
		right: 0;
		-webkit-transform: translate( 0, -50%);
		transform: translate( 0, -50%);
	}
	.bottomMenu.side .bottomMenu-list li a:hover {
		opacity: .6;
	}
/* min-width: 641px */}


/** ----------------------------------- *
 * 
 * 地図内ピンなどのパーツ
 * 印刷プレビュー
 * 
 * ------------------------------------ */
.print-box {
	display: none;
}
.print-num-label {
	display: none;
}
.print-shop-num {
	position: absolute;
	width: 100%;
	top: 15px;
	left: 2px;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	color: #cc0033;
	line-height: 1;
}
.print-shop-unit {
	font-size: 12px;
	line-height: 18px;
	padding-left: 1px;
}
.print-title-box,
.print-bottom-txt {
	display: none;
}

.gm-style map area {
	background: url(https://dpoint.jp/parts/map/img/pin.png) !important;
	width: 20px;
	height: 40px;
	display: block;
}
.gm-style div[title^="shop"] {
	/*overflow: auto !important;*/
	width: 36px !important;
	height: 52px !important;
	opacity: 1.0 !important;
	overflow: visible !important;
}

.gm-style div[title^="here"],
.gm-style div[title^="here"] img {
	opacity: 1.0 !important;
	pointer-events: none !important;
}

.gm-style div[title^="here"]{
	background: url(https://dpoint.jp/parts/map/img/icon_map_point_new.png) 0 0 no-repeat !important;
}

.map-shop-list {
	width: 400px;
}

.map-shop-list .shop-name .name,
.map-shop-list .shop-name .data{
	white-space: nowrap;
	overflow: hidden;
		-o-text-overflow: ellipsis;
	   text-overflow: ellipsis;
}

/*印刷時のサービスアイコン説明*/
.print-inner .icn-info .tag-list{
	max-width: 740px;
}

.print-inner .icn-info .tag-list li{
	margin-right: 5px;
}

@media screen and (max-width: 640px) {
	.gm-style div[title^="shop"] {
		margin: 5px;
	}
/* max-width: 640px */}

/*バッジアイコン*/
.gm-style div[title^="shop"] .shop_campicon img,
.gm-style div[title="select_shop"] .shop_campicon img {
	position: absolute;
}
/* 通常時の吹き出しアイコン */
.gm-style div[title^="shop"]::before {
	content: "";
	display: block;
	background: url(https://dpoint.jp/parts/map/img/icon_map_pin_new.png) no-repeat !important;
	background-position: -6px 0 !important;
	background-size: 52px auto !important;
	width: 44px !important;
	height: 50px !important;
}
.gm-style div[title^="shop"] img {
	left: 6px !important;
	top: 10px !important;
	width: 28px !important;
	height: 28px !important;
}
/* 通常時のバッジアイコン */
.gm-style div[title^="shop"] .shop_campicon img {
	top: -5px !important;
	width: 16px !important;
	height: 16px !important;
}
.gm-style div[title^="shop"] .shop_campicon li:nth-child(1) img {
	left: -7px !important;
}
.gm-style div[title^="shop"] .shop_campicon li:nth-child(2) img {
	left: 9px !important;
}
.gm-style div[title^="shop"] .shop_campicon li:nth-child(3) img {
	left: 25px !important;
}
/* アクティブ時の吹き出しアイコン */
.gm-style div[title="select_shop"] {
	width: 50px !important;
	height: 66px !important;
	opacity: 1.0 !important;
	margin: -8px;
	overflow: visible !important;
}
.gm-style div[title="select_shop"]::before {
	content: "";
	display: block;
	background: url(https://dpoint.jp/parts/map/img/icon_map_pin-active_new.png) -7px -5px no-repeat !important;
	background-size: 65px auto !important;
	width: 56px !important;
	height: 66px !important;
}
.gm-style div[title="select_shop"] img {
	left: 5px !important;
	top: 5px !important;
	width: 40px !important;
	height: 40px !important;
	position: absolute;

}
/* アクティブの件数表示時の吹き出しアイコン */
.gm-style div[title="select_shop"] .print-shop-num {
	top: 0.7em;
	font-size: 22px;
	z-index: 1;
}
/* アクティブ時のバッジアイコン */
.gm-style div[title="select_shop"] .shop_campicon img {
	top: -17px !important;
	width: 24px !important;
	height: 24px !important;

}
.gm-style div[title="select_shop"] .shop_campicon li:nth-child(1) img {
	left: -11px !important;
}
.gm-style div[title="select_shop"] .shop_campicon li:nth-child(2) img {
	left: 13px !important;
}
.gm-style div[title="select_shop"] .shop_campicon li:nth-child(3) img {
	left: 37px !important;
}
@media screen and (max-width: 640px) {
	.gm-style div[title="select_shop"] {
		margin: -5px;
	}
/*max-width: 640px*/}

@media screen and (min-width: 641px) {
	/* 通常の件数表示時の吹き出しアイコン */
	.print-shop-num {
		top: 0.95em;
	}
	/* アクティブの件数表示時の吹き出しアイコン */
	.gm-style div[title="select_shop"] .print-shop-num {
		top: 18px;
		left: -8px;
		font-size: 24px;
	}
	/* 通常時の吹き出しアイコン */
	.gm-style div[title^="shop"] {
		width: 44px !important;
		height: 55px !important;
	}
	.gm-style div[title^="shop"]::before {
		background-size: 63px auto !important;
		background-position: -9px -6px !important;
		width: 48px !important;
		height: 55px !important;
	}
	.gm-style div[title^="shop"] img {
		left: 4px !important;
		top: 4px !important;
		width: 36px !important;
		height: 36px !important;
		position: absolute;

	}
	/* 通常時のバッジアイコン */
	.gm-style div[title^="shop"] .shop_campicon img {
		top: -15px !important;
		width: 20px !important;
		height: 20px !important;

	}
	.gm-style div[title^="shop"] .shop_campicon li:nth-child(1) img {
		left: -8px !important;
	}
	.gm-style div[title^="shop"] .shop_campicon li:nth-child(2) img {
		left: 12px !important;
	}
	.gm-style div[title^="shop"] .shop_campicon li:nth-child(3) img {
		left: 32px !important;
	}

	/* アクティブ時のピン */
	.gm-style div[title="select_shop"] {
		width: 76px !important;
		height: 94px !important;
		opacity: 1.0 !important;
		margin: -8px;
		overflow: visible !important;
	}
	.gm-style div[title="select_shop"]::before {
		background: url(https://dpoint.jp/parts/map/img/icon_map_pin-active_new.png) -9px -6px no-repeat !important;
		background-size: 78px auto !important;
		width: 60px !important;
		height: 74px !important;
	}
	.gm-style div[title="select_shop"] img {
		left: 5px !important;
		top: 5px !important;
		width: 50px !important;
		height: 50px !important;
	}
	/* アクティブ時のバッジアイコン */
	.gm-style div[title="select_shop"] .shop_campicon img {
		top: -21px !important;
		width: 28px !important;
		height: 28px !important;

	}
	.gm-style div[title="select_shop"] .shop_campicon li:nth-child(1) img {
		left: -13px !important;
	}
	.gm-style div[title="select_shop"] .shop_campicon li:nth-child(2) img {
		left: 15px !important;
	}
	.gm-style div[title="select_shop"] .shop_campicon li:nth-child(3) img {
		left: 43px !important;
	}
/* min-width: 641px */}

.service-button-thumbnail {
	display: none;
}

.disp-sp .service-button-link {
	height: 30px;
	text-align: center;
}
.disp-sp .service-button-link img {
	margin: 0 auto;
	/* width: 100%; */
}

.disp-sp .service-button-card a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpointcard-active.png);
	background-size: auto 80%;
	display: block;
}

.disp-sp .service-button-card.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpointcard.png);
	background-size: auto 80%;
	display: block;
}

.disp-sp .service-button-pay a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpay-active.png);
	background-size: auto 80%;
	display: block;
}

.disp-sp .service-button-pay.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpay.png);
	background-size: auto 80%;
	display: block;
}

.disp-sp .service-button-id a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_id-active.png);
	background-size: auto 80%;
	display: block;
}

.disp-sp .service-button-id.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_id.png);
	background-size: auto 80%;
	display: block;
}

.disp-sp .service-button-coupon a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_coupon-active.png);
	background-size: auto 80%;
	display: block;
}

.disp-sp .service-button-coupon.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_coupon.png);
	background-size: auto 80%;
	display: block;
}


.disp-pc .service-button-card a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpointcard-active.png);
	background-size: auto 62%;
	display: block;
}

.disp-pc .service-button-card.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpointcard.png);
	background-size: auto 62%;
	display: block;
}

.disp-pc .service-button-pay a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpay-active.png);
	background-size: auto 62%;
	display: block;
}

.disp-pc .service-button-pay.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_dpay.png);
	background-size: auto 62%;
	display: block;
}

.disp-pc .service-button-id a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_id-active.png);
	background-size: auto 62%;
	display: block;
}

.disp-pc .service-button-id.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_id.png);
	background-size: auto 62%;
	display: block;
}

.disp-pc .service-button-coupon a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_coupon-active.png);
	background-size: auto 62%;
	display: block;
}

.disp-pc .service-button-coupon.is-disabled a{
	background: no-repeat center url(https://dpoint.jp/parts/map/img/icon_service_coupon.png);
	background-size: auto 62%;
	display: block;
}

.loading_overlay {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: #000;
	opacity: 0.2;
	z-index: 9999;
}

.loader_img {
	height: 100%;
	background: no-repeat url(../img/bx_loader.gif);
	background-position: center;
}

@media screen and (min-width: 641px) {
	.loader_img {
		margin-left: 400px;
	}
/* min-width: 641px */}

.slick-track {
	padding-right: 34vw;
}

@media screen and (max-width: 640px) {
	body {
		overflow: hidden;
	}
/* max-width: 640px */}


/* キャンペーン ボタン&リスト */

.sub-nav-campaign-pc{
	display: block;
	margin-left: 400px;
	/*width: 100%;*/
	width: calc(100% - 400px);
    max-width: 650px;
}
.campaign-list-wrap{
	display: block;
	overflow: hidden;
	white-space: nowrap;
	overflow-y: hidden;
	overflow-x: auto;
	cursor: pointer;
	/*スクロールバー非表示*/
	/*IE, Edge*/
	-ms-overflow-style: none;
	/*Firefox*/
	scrollbar-width: none;
}
.campaign-list-wrap::-webkit-scrollbar {
	/*Chrome*/
    display:none;
}
.campaign-list-wrap li{
	display: inline-block;
}
.sub-nav-campaign-sp{
	margin-left: 0;
	width: 100%;
    max-width: 640px;
}
.campaign-box-sp.disp-sp{
	display: block;
    position: absolute;
    top: 90px;
	width: 100%;
	font-size: 2vw;
}

@media screen and (min-width: 641px) {
	.campaign-box.disp-pc{
		display: block;
		width: 100%;
	}
	.campaign-box-sp.disp-sp{
		display: none;
	}
}

.campaign-list-wrap li{
	margin: 10px 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-box-shadow: 0 2px 4px 0 rgba(51, 51, 51, .30);
    box-shadow: 0 2px 4px 0 rgba(51, 51, 51, .30);	
}
.campaign-list-wrap li:first-child{
	margin-left: 10px;
}
.campaign-list-wrap li a{
	background-color: #fff;
	border-radius: 5px;
}
.campaign-list-wrap li.is-disabled a{
	background-color: #999999;
}

.shpiconimg{
	position: absolute;
}


/*　再検索ボタンーー*/
.sub-research-buttom{
	width: 160px;
	height: 52px;
	position: absolute;
	bottom: 108px;
	right: 0;
	left: 0;
	margin: auto;
	z-index: 1;
	display: none;
}
.sub-research-buttom a{
	width: 100%;
	height: 100%;
	display: block;
	background: url(https://dpoint.jp/parts/map/img/map_btn.png) center 0 no-repeat;
	box-sizing: border-box;

	background-size: 100%;
	text-decoration: none;
	filter: drop-shadow(0px 0px 5px rgba(0,0,0, .15));
}

@media screen and (min-width: 641px) {
	.sub-research-buttom {
		width: 50%;
		max-width: 200px;
		height: 80px;
		position: absolute;
		bottom: 13px;
		z-index: 1;
	}
	.sub-research-buttom a {
		background-position: center bottom;
	}
}

/* サジェスト 履歴入力 */
.selecthistory{
    cursor: pointer;
}
.header-search .history-container {
	/*display: block;*/
	background: #fff;
	width: 100%;
	position: absolute;
	left: 0;
	top: 30px;
	-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
	        box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}
.header-search .history-container .history-list {
	/* display: none; */
}
.header-search .history-container .history-list > li {
	border-bottom: 1px solid #eee;
	font-size: 14px;
	color: #333;
	padding: 10px;
    list-style: none;
}

.header-search .history-container .history-list > li a {
/*	display: block;*/
	/*font-size: 14px;
	color: #333;
	padding: 10px;
	text-decoration: none;*/
}