/* 2020.11.30 NAO YOSHIKAWA */
@charset "utf-8";

@media screen and (max-width: 767px) {/*SP*/
	/**-----------------------------------------------
	common
	-----------------------------------------------**/
	body {
		font-size:13px;
	}
	img {
		max-width:100%;
		height:auto;
	}
	.sp {
		display:block;
	}
	.pc {
		display:none;
	}

	
	/**-----------------------------------------------
	header
	-----------------------------------------------**/
	#header {
		display:flex;
		align-items:center;
		justify-content:space-between;
		position:fixed;
		top:0;
		left:0;
		right:0;
		height:60px;
		padding:0;
		margin:0;
	}
	#header .section {
		padding:0;
	}
	#header .logo img {
		width:120px;
		height:auto;
	}
	#header .menu {
		display:block;
		width: 312px;
		height: 100vh;
		transition: all 0.2s;
		transform: translate(312px);
		position: fixed;
		top:60px;
		right: 0;
		padding:30px;
		z-index: 1000;
		background-color: #fff; /*#F6B400*/
	}
	#header .menu.open {
		transform: translate(0);
	}
	#header .menu li a {
		display:block;
		font-size:15px;
		margin:0 0 40px;
	}
	/* --- */
	.sp_menu_btn {
		display: block;
		position: absolute;
		top:0;
		right:0;
		width: 60px;
		height: 60px;
		text-align: center;
		letter-spacing: 1px;
		cursor: pointer;
		border:none;
		color: #333; /*#FFF*/
		background-color:rgba(256,256,256,0); /* #F6B400;*/
	}
	.sp_menu_btn span {
		display: block;
		position: absolute;
		left: 0;
		right:0;
		margin:0 auto;
		width: 32px;
		height: 2px;
		transition: all 0.2s;
		transform-origin: 0% 0%;
		transform: translateY(-50%);
		background-color: #333; /*#FFF */
	}
	.sp_menu_btn span:nth-child(1) { top: 15px;}
	.sp_menu_btn span:nth-child(2) { top: 25px; }
	.sp_menu_btn span:nth-child(3) { top: 35px; }
	.sp_menu_btn.active span {
		width: 36.77px;
		left: 10px
	}
	.sp_menu_btn.active span:nth-child(1) {
		transform: rotate(0.7853981633974483rad) translateY(-50%);
	}
	.sp_menu_btn.active span:nth-child(2) { opacity: 0; }
	.sp_menu_btn.active span:nth-child(3) {
		transform: rotate(-0.7853981633974483rad) translateY(-50%);
		top: calc(100% - 20px)
	}
	.sp_menu_btn.active small {
		display: none;
	}
	.sp_menu_btn small {
		width: 100%;
		position: absolute;
		bottom: 10px;
		left: 0;
		right:0;
		margin:0 auto;
		text-align: center;
		font-size: 10px;
	}
	
	/**-----------------------------------------------
	content
	-----------------------------------------------**/	
	.section {
		width:auto;
		margin-right:5%;
		margin-left:5%;
	}
	
	/**-----------------------------------------------
	footer
	-----------------------------------------------**/
	#footer {
		padding:30px 0;
	}
	#footer .section {
		display:block;
	}
	#footer .logo {
		width:100px;
		margin:0 auto 30px;
	}
	#footer .menu {
		flex-direction: column;
		justify-content:center;
	}
	#footer .menu ul {
		border-top: 2px solid #bfbfbf;
		width: 100%;
		margin:0;
		padding-top: 15px;
	}
	#footer .menu ul:last-child {
		/*margin-left:50px;*/
		border-bottom: 2px solid #bfbfbf;
	}
	#footer .menu li {
		width: 50%;
		float: left;
		margin-bottom:15px;
	}
	#footer .menu li::after {
		display: block;
		content: '';
		clear: both;
	}

	/* pagefooter */
	.page_footer_btn_block {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	.page_footer_btn_block .btn:first-child {
		margin-bottom: 15px;
	}
	
	/**-----------------------------------------------
	general
	-----------------------------------------------**/
	/* btn */
	.btn a {
		font-size:5vw;
	}
	
	/* table */
	.table_style,
	.table_style tbody,
	.table_style tr {
		display:block;
	}
	.table_style th {
		display:block;
		padding:10px;
		border-bottom:0;
	}
	.table_style td {
		display:block;
		width:100%;
		padding:10px;
		border-top:0;
		border-bottom:0;
	}
	.table_style tr:last-child td {
		border-bottom:1px solid #CCC;
	}
	
	
	/**-----------------------------------------------
	top
	-----------------------------------------------**/
	/* mv */
	.top_mv {
		margin-bottom:30px;
	}
	.top_mv .img {
		justify-content:center;
		max-height:inherit;
	}
	.top_mv .img img {
		width:auto;
		height:100vh;
		max-width:inherit;
	}
	.top_mv .section h1 {
		font-size:13vw;
	}
	.top_mv .section span {
		font-size:6vw;
	}
	
	/* block */
	.main_title {
		font-size:7vw;
	}
	/**-----------------------------------------------
	product
	-----------------------------------------------**/
	.product_block img {
		padding-right: 0;
	}

	/**-----------------------------------------------
	dealer
	-----------------------------------------------**/
	.dealer_block table th,
	.dealer_block table td {
		display: block;
		text-align: center;
		width: 100%;
		margin-bottom: 10px;
	}
	.dealer_block table td:last-child {
		border-bottom: 1px solid #bfbfbf;
		padding-bottom: 10px;
	}
	
	/**-----------------------------------------------
	requirement
	-----------------------------------------------**/
	.requirement_message {
		width: auto;
		margin: 0 5% 50px;
	}
	.requirement_block .requirement_title h2 span {
		display: block;
	}
	.requirement_block .requirement_content {
		flex-direction: column;
	}
	.requirement_block .requirement_content  .requirement_icon {
		margin: 0 auto 10px;
	}
	.application_form {
		width: auto;
		margin-right: 5%;
		margin-left: 5%;
	}

	/**-----------------------------------------------
	faq
	-----------------------------------------------**/
	.qa_block {
		padding: 10px;
	}
	details {
	}
	details > summary {
		padding: 0px;
	}
	details > summary::-webkit-details-marker {
		display: none;
	}
	details > p {
		margin-top: 10px;
		padding: 10px;
	}
	
}