.open_search,
.header_search .sp_search_top,
.header_search .sp_search_top .icons,
.header_search .sp_search_top .shop,
.header_search .close_box {
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.open_search,
.index_search_wrapper,
.index_search_wrapper .search_types,
.index_search_wrapper .keyword_search,
.header_search .sp_search_top,
.header_search .sp_search_top .icons,
.header_search .sp_search_top .shop,
.header_search .close_box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.index_search_wrapper .browse_search:not(:hover) img.hover,
.index_search_wrapper .browse_search:hover img:not(.hover),
.index_search_wrapper .nearby_search:not(:hover) img.hover,
.index_search_wrapper .nearby_search:hover img:not(.hover) {
	display: none;
}

.open_search,
.header_search .sp_search_top .shop {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.open_search,
.index_search_wrapper .search_types,
.header_search .sp_search_top .shop,
.header_search .close_box {
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.index_search_wrapper .logo,
.index_search_wrapper .search_types {
	margin-bottom: 25px;
}

.index_search_wrapper {
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	width: 100%;
}

.index_search_wrapper img {
	display: inline-block;
	font-size: 0;
	height: auto;
	width: 100%;
}

.index_search_wrapper .logo {
	clear: both;
	float: none;
	margin: 0 auto 25px;
	text-align: center;
}

.index_search_wrapper .logo a {
	display: inline-block;
}

.index_search_wrapper .search_bar .title {
	margin: 0 auto;
	width: 160px;
}

.index_search_wrapper .keyword_search {
	background-color: #e8e8e8;
	padding: 10px;
	width: 100%;
}

.index_search_wrapper .keyword_search input {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	padding: 0 15px;
}

.index_search_wrapper .keyword_search button {
	background-color: #171714;
	color: #fff;
}

.index_search_wrapper .map_marker {
	position: absolute;
    z-index: 1;
}

.index_search_wrapper .keyword_search input {
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	border: none;
	height: 30px;
	margin: 0;
	outline: none;
}

.index_search_wrapper .keyword_search .input {
	width: calc(100% - 60px);
}

.index_search_wrapper .keyword_search .submit {
	background-color: #171717;
	color: #fff;
	cursor: pointer;
	width: 60px;
}

/**
 * Header search
 */

.header_search,
.header_search_toggle .arrow {
    /*opacity: 0;*/
    /*visibility: hidden;*/
    /*transition: opacity .5s, visibility .5s, z-index .5s;*/
    /*z-index: -999;*/
}

body:not(.show_search) .header_search,
body:not(.show_search) .header_search_toggle .arrow {
	display: none;
	/*opacity: 1;*/
	/*transition: opacity .5s, visibility 0s, z-index 0s;*/
	/*visibility: visible;*/
}

.header_search {
    position: fixed;
    background-color: #fff;
    width: 60%;
	z-index: 100;
}

.header_search > .wrapper {
    position: relative;
    height: 100%;
    width: 100%;
}

.header_search_toggle .arrow {
    position: absolute;
    top: 5.6px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: 50px;
	z-index: 999;
}

.header_search .sp_search_top {
	background-color: #fff;
	border-bottom: 1px solid #ccc;
	-webkit-box-shadow: 0 5px 15px 0 rgba(0,0,0,.1);
	        box-shadow: 0 5px 15px 0 rgba(0,0,0,.1);
	height: 72px;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 0 5vw;
}

.header_search .sp_search_top img {
	height: 100%;
	width: auto;
}

.header_search .sp_search_top .site_logo {
	height: 45px;
}

.header_search .sp_search_top .site_logo {
	height: 45px;
}

.header_search .sp_search_top .shop {
	margin-right: 20px;
}

.header_search .sp_search_top .shop img {
	height: 30px;
}

.header_search .sp_search_top .shop .text {
	font-size: 12px;
	padding: 0;
}

.header_search .sp_search_top .close {
	cursor: pointer;
	height: 30px;
}

.header_search .close_box {
	background-color: #4588bf;
	color: #fff;
	font-size: 30px;
}

.header_search .close_box img {
	height: 20px;
	margin: 0 10px -5px 0;
}

@media (min-width: 1081px) {
	.index_search_wrapper .browse_search,
	.index_search_wrapper .nearby_search {
		width: 110px;
	}

	.index_search_wrapper {
		padding: 10px 40px 160px;
	}

	.index_search_wrapper .left {
		width: 40%;
	}

	.index_search_wrapper .right {
		width: 60%;
	}

	.index_search_wrapper .logo a {
		width: 200px;
	}

	.index_search_wrapper .map {
		-webkit-transform: translate(-6%,7%);
		    -ms-transform: translate(-6%,7%);
		        transform: translate(-6%,7%);
		width: 110%;
	}

	.index_search_wrapper .map_marker {
		top: 170px;
		right: 180px;
		width: 130px;
	}

	.index_search_wrapper .browse_search {
		margin-right: 20px;
	}

	.header_search {
		top: 140px;
		left: 50%;
		border-radius: 15px;
		-webkit-box-shadow: 0 0 0 5px #000;
		        box-shadow: 0 0 0 5px #000;
		-webkit-transform: translateX(-50%);
		    -ms-transform: translateX(-50%);
		        transform: translateX(-50%);
		width: 640px;
	}

	.header_search .index_search_wrapper {
		padding: 20px;
	}

	.header_search .index_search_wrapper .right .logo {
		display: none;
	}

	.header_search .index_search_wrapper .logo img {
		height: 130px;
	}

	.header_search .index_search_wrapper .map_marker {
		top: 140px;
		right: 200px;
		width: 100px;
	}

	.header_search .index_search_wrapper .map {
		-webkit-transform: translate(8%,0%);
		    -ms-transform: translate(8%,0%);
		        transform: translate(8%,0%);
		width: 90%;
	}
}

@media (max-width: 1080px) {
	.header_search_toggle .arrow,
	.header_search .index_search_wrapper .left .logo {
		display: none;
	}

	.header_search .index_search_wrapper .logo a,
	.header_search .index_search_wrapper .logo img {
		width: auto;
	}

	.index_search_wrapper .browse_search,
	.index_search_wrapper .nearby_search {
		width: 50%;
	}

	.content-shopsearch {
		padding-top: calc(100vw * 480 / 820);
	}

	.index_search_wrapper {
		position: relative;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: column-reverse;
		        flex-direction: column-reverse;
	}

	.index_search_wrapper .logo {
		position: absolute;
		top: 0;
		left: 0;
	}

	.index_search_wrapper .logo a {
		width: 150px;
	}

	.index_search_wrapper .map {
		display: block;
		margin: 0 auto;
		width: 90%;
	}

	.index_search_wrapper .map_marker {
		top: 105px;
		right: 38%;
		width: 80px;
	}

	.index_search_wrapper .search_types {
		margin: 20px 0;
	}

	.index_search_wrapper .browse_search {
		margin-right: 10px;
	}

	.header_search {
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
	}

	.header_search .index_search_wrapper {
		height: calc(100vh - 72px - 66px);
		overflow-y: auto;
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		padding: 3vw;
	}

	.header_search .index_search_wrapper .right {
		border: 2px solid #ccc;
		height: calc(100% - 50vw);
		padding: 3vw;
	}

	.header_search .index_search_wrapper .logo {
		top: 0;
		left: 0;
	}

	.header_search .index_search_wrapper .logo img {
		height: 30vw;
	}

	.header_search .index_search_wrapper .map_marker {
		top: auto;
		right: 44vw;
		bottom: 12vh;
		width: 18vw;
	}

	.header_search .index_search_wrapper .map {
		position: absolute;
		right: 0;
		bottom: 0;
		height: 100%;
		max-width: 100%;
		width: auto;
	}
}