@charset "utf-8";

/*---------------------------------------------------
under 1060
---------------------------------------------------*/

@media screen and (max-width: 1060px) {

	/* ---------------------------------------------------✂ common */
	
	body {
		min-width: 100%;
	}
	
	#wrapper {
		position: relative;
	}
	
	.content {
		width: 767px;
	}
	
	#header {
		position: relative;
		padding: 20px;
	}
	
	#header h1 span {
		font-size: 1.1rem;
	}
	
	#header .content {
		width: 100%;
	}


	#menu-button {
		display: block;
		float: right;
		z-index: 100;
		line-height: 45px;
		cursor: pointer;
		z-index: 10002;
		position: absolute;
	    right: 0;
	    padding: 7px 15px 13px 15px;
        top: 12px;
	}
		
	#menu-button .bar {
		display: block;
		width: 20px;
		height: 3px;
		background: #fff;
		margin: 5px 0 0 0;
		padding: 0;
		opacity: 1;
		
		transition: 0.7s cubic-bezier(0.18, 1, 0.21, 1);
		-o-transition: 0.7s cubic-bezier(0.18, 1, 0.21, 1);
		-ms-transition: 0.7s cubic-bezier(0.18, 1, 0.21, 1);
		-moz-transition: 0.7s cubic-bezier(0.18, 1, 0.21, 1);
		-webkit-transition: 0.7s cubic-bezier(0.18, 1, 0.21, 1);
	
	}
		
	#menu-button .bar:nth-of-type(1) {
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	
	#menu-button .bar:nth-of-type(2) {
		-ms-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	
	.openmenu #menu-button .bar {
		-ms-transform: rotate(215deg);
		-webkit-transform: rotate(215deg);
		-moz-transform: rotate(215deg);
		transform: rotate(215deg);
	}
	
	.openmenu #menu-button .bar:nth-of-type(1) {
		position: absolute;
		top: 62px;
		
		-ms-transform: rotate(225deg);
		-webkit-transform: rotate(225deg);
		-moz-transform: rotate(225deg);
		transform: rotate(225deg);
	}
	
	.openmenu #menu-button .bar:nth-of-type(2) {
		position: absolute;
		top: 62px;
		
		-ms-transform: rotate(-225deg);
		-webkit-transform: rotate(-225deg);
		-moz-transform: rotate(-225deg);
		transform: rotate(-225deg);
	}
	
	.openmenu #menu-button .bar:nth-of-type(3) {
		opacity: 0;
	}
	
	.openmenu #menu-button .bar:nth-of-type(1) {
		position: absolute;
		top: 17px;
		
		-ms-transform: rotate(225deg);
		-webkit-transform: rotate(225deg);
		-moz-transform: rotate(225deg);
		transform: rotate(225deg);
	}
	
	.openmenu #menu-button .bar:nth-of-type(2) {
		position: absolute;
		top: 17px;
		
		-ms-transform: rotate(-225deg);
		-webkit-transform: rotate(-225deg);
		-moz-transform: rotate(-225deg);
		transform: rotate(-225deg);
	}
	
	#mask {
		display: none !important;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0,0,0,0.7);
		z-index: 10000;
		}
	
	/*
	body.openmenu {
		width: 100%;
		height: 100%;
		margin: auto;
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		overflow: hidden;
	}
	*/
	
	body.openmenu #mask {
		display: block !important;
	}
	
	#wrapper {
		-webkit-transition: 200ms -webkit-transform ease-in-out;
		transition: 200ms transform ease-in-out;
	}
	
	.openmenu #wrapper {
		position: absolute;
		width: 100%;
		transform: translate3d(-290px,0,0);
	}
	
	#header nav {
		display: none;
	}
	
	#header nav {
		float: none;
		display: none;
		padding: 0;
		display: block;
		position: fixed;
		width: 300px;
		top: 0px;
		right: 0;
		bottom: 0;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		margin: 0 -300px 0 0;
		-webkit-transition: 200ms -webkit-transform ease-in-out;
		transition: 200ms transform ease-in-out;
		z-index: 10001;
		background: #000;
		box-sizing: border-box;
	}
	
	#header nav > * {
		-webkit-transform: translateZ(0px);
	}
	
	body.openmenu #header nav {
		box-shadow: 0 0 10px rgba(0,0,0,0.3);
	}
	
	body.home.openmenu #header {
		z-index: auto;
	}
	
	/*
	body.openmenu #header nav {
		transform: translate3d(-310px,0,0);
		-webkit-transform: translate3d(-310px,0,0);
	}
	*/
	
	
	#header nav > div {
		float: none;
		width: 100%;
	}
	
	#header nav ul li {
		float: none;
	}
	
	#header nav ul.menu li a {
		padding: 10px 10px;
		border-bottom: 1px solid #383838;
	}
	
	#header nav .sns {
		margin-top: 20px;
		margin-left: 0;
	}
	
	#header nav .sns ul {
		text-align: center;
	}
	
	#header nav .sns ul li {
		float: none;
		display: inline-block;
	}
	
	body.mode-pc #top .lineup .flex-viewport li {
		width: 255px !important;
	}
	
	#top .link > ul {
		flex-wrap: wrap;
	}
	 
	#top .link .facebook {
	 width: 50%;
	}
	
	#top .link .instagram {
	 width: 50%;
	}
	
	#top .link .banner {
	 width: 100%;
	}
	
	#top .link .banner ul {
	 display: flex;
	}
	
	#top .link .banner ul li a {
	 display: block;
	 margin: 10px;
	}
}


/*---------------------------------------------------
under 767
---------------------------------------------------*/

@media screen and (max-width: 767px) {
	
	html, body, div, span, applet, object, iframe,
	p, blockquote, pre,
	a, abbr, acronym, address, big, cite, code,
	del, dfn, em, font, ins, kbd, q, s, samp,
	small, strike, sub, sup, tt, var,
	dl, dt, dd, ol, ul, li,
	fieldset, form, label, legend,
	table, caption, tbody, tfoot, thead, tr, th, td,
	article, aside, dialog, figure, figcaption, footer, header,
	hgroup, menu, nav, section,
	time, mark, audio, video {
		font-size: 1.1rem;
		line-height: 1.7em;
	}
	
	h1, h2, h3, h4, h5 {
		line-height: 1.5em;
	}
	
	h1 a, h2 a, h3 a, h4 a, h5 a {
		line-height: 1.5em;
	}
	
	.content {
		max-width: 600px;
		width: 90%;
	}
	
	#footer section {
		margin-bottom: 10px;
	}
	
	.sbi_item {
		width: 33.333% !important;

	}
	
	.sbi_item .sbi_photo_wrap {
		display: block !important;
		height: 0;
		padding-bottom: 100%;
		overflow: hidden;
	}
	
	.sbi_item .sbi_photo_wrap a img {
		width: 100% !important;
	}
	
	#header .content {
		max-width: 100%;
	}

	
	.fb_iframe_widget,
	.fb_iframe_widget span,
	.fb_iframe_widget iframe[style]{
	    width: 100% !important;
	}
		
	
	/* ---------------------------------------------------✂ top */
	
	#top section {
		margin: 0 0 20px;
	}
	
	#top section .title {
		padding: 40px 0;
	}
	
	#top section .title span {
		font-size: 12px;
	}
	
	#top .visual {
		padding-bottom: 50px;
		background: #000;
	}
	
	#top .visual .slides li {
		padding: 0;
		height: auto;
	}
	
	#top .visual .slides li article {
		position: relative;
		background: #222222;
	}
	
	#top .visual .slides li img {
		
	}
	
	#top .visual .slides li article .cover {
		background-image: linear-gradient(45deg, rgba(0,0,0,0.8), rgba(0,0,0,0.0));
		position: relative;
		padding: 150px 5% 10px;
	}
	
	#top .visual .slides li article .cover .content {
		top: inherit;
		transform: inherit;
		width: 100%;
		max-width: 100%;
		padding: 0;
	}
	
	#top .visual .slides li article header {
		
	}
	
	#top .visual .slides li article header span {
		font-size: 14px;
	}
	
	#top .visual .slides li article header h2 {
		font-size: 2.5rem;
		line-height: 1.4em;
		margin-bottom: 10px;
	}
	
	#top .visual .slides li article .text p {
		font-size: 1.125rem;
		line-height: 1.5em;
	}
	
	#top .visual .slides li article footer {
		margin: 15px 0;
		text-align: center;
	}

	#top .visual .flex-direction-nav {
		display: none;
	}	

	#top .visual .flex-control-nav {
		bottom: 8px;
	}
	
	#top .visual .flex-control-nav li {
		margin: 0 3px;
	}
	
	#top .visual .flex-control-nav li a {
		width: 15px;
		height: 15px;
	}
	
	#top section .title h2 {
		font-size: 25px;
	}
	
	#top .lineup .flex-viewport li {
		
	}
	
	#top .lineup .flex-direction-nav {
		width: 110%;
		left: -5%;
		margin: 30px 0% 0;
		z-index: 100;
	}
	
	#top .lineup .flex-direction-nav a {
		width: 40px;
		height: 40px;
    }
	
	#top .lineup .flex-direction-nav a:after {
		right: 15px;
		top: 15px;
	}
	
	
	#top .link > ul > li > div {
		margin: 0;
	}

	#top .link > ul {
		display: block;
	}
	
	#top .link .facebook {
		width: 100%;
	}
	
	#top .link .instagram {
		width: 100%;
	}
	
	#top .link .banner {
		width: 100%;
	}
	
	#top .link .banner ul {
		display: block;
	}
	
	#top .link .banner li {
		width: 100%;
	}
	
	/* ---------------------------------------------------✂ list */
	
	.news-list li {
		width: 100%;
		margin-bottom: 10px;
	}

	.news-list li .thumbnail {
		width: 70px;
	}
	
	.news-list li header {
		margin-left: 85px;
	}

	/* ---------------------------------------------------✂ page-content */
	
	.page-content .page-title .cover {
		padding: 30px 0;
	}
	
	.page-content .page-title h2 {
		font-size: 25px;
	}
	
	/* ---------------------------------------------------✂ blog */

	.blog-list li {
		width: 50%;
	}
	
	.blog-list li article {
		margin: 5px;
	}
	
	.blog-list li article p {
		display: none;
	}
	
	/* ---------------------------------------------------✂ shop */
	
	#shop .text {
		width: 100%
	}
	
	#shop .map {
		width: 100%;
	}
	
	/* ---------------------------------------------------✂ page */
	
	.wp-pagenavi {
		margin-top: 20px;
	}
	

	
	/* ---------------------------------------------------✂ blog */
	
	#blog .main-content,
	#blog .side {
		width: 100%;
		float: none;
	}
	
	#blog .side {
		margin-top: 40px;
	}
	
	#blog .side header h3 {
		font-size: 15px;
	}
	
	#blog .main-content article {
		padding: 15px;
		border: none;
	}
	
	#blog .main-content article .photo {
		margin: 0 -15px 20px;
	}
	
	#blog .main-content article header {
		margin-bottom: 15px;
	}
	
	#blog .main-content article header h1 {
		font-size: 16px;
	}
	
	.entry-content h2 {
	    padding: 10px 15px;
		margin: 10px -15px;
	}
	
	.entry-content p {
		font-size: 1.1rem;
	}
	
	
	/* ---------------------------------------------------✂ test-ride */
	
	#test-ride li {
		margin-bottom: 40px;
	}
	
	#test-ride li article {
		display: block;
	}
	
	#test-ride li article .photo {
		width: 100%;
	}
	
	#test-ride li article .text {
		width: 100%;
		padding: 0;
		margin: 10px 0;
	}
	
	
	
	/* ---------------------------------------------------✂ contact */
	
	input[type="text"],
	input[type="password"],
	input[type="tel"],
	input[type="email"],
	input[type="url"], 
	textarea {
		font-size: 16px;
	}
	
	#contact .form .table {
		padding: 0 15px;
	}
	
	#contact .form dl {
		padding-bottom: 15px;
	}
	
	#contact .form dt {
		float: none;
		width: 100%;
		padding: 10px 0;
	}
	
	#contact .form dd {
		margin-left: 0;
		border: none;
		padding: 0;
	}
	

	
}