@media screen and (min-width: 641px){
#sp_global_nav .sp_nav_main li {
	display: inline-block!important;
}
#sp_global_nav .sp_nav_main li.sp_nav_main_btn {
	display: none!important;
}
.sp_only_sp {
	display: none;
}
}
@media screen and (max-width: 640px){

body {
	min-width: 320px;
}

.sp_only_pc {
	display: none!important;
}
.sp_only_sp {
	display: block;
	position: static;
	width: auto;
	height: auto;
}
span.mq_show {
	display: inline;
}

.left_img.mq,
.right_img.mq {
	float: none;
}

.hide_func {
	width: auto;
}

#sp_visual {
	min-width: 320px;
}
	#sp_visual #sp_logo {
		float: none;
		width: 100px;
	}

#sp_visual {
	background-position: center top;
}
	#sp_visual .sp_wrapper {
		padding: 30px 20px;
	}
.sp_member #sp_header {
	margin-right: 0;
}
#sp_header {
	min-width: 320px;
}
	.sp_page_header_logo {
		height: 40px;
	}
		.sp_page_header_logo #sp_logo_sony img {
			width: auto;
			height: 40px;
		}
	#sp_header .sp_wrapper {
		width: auto;
		margin-left: 0;
		padding-right: 10px;
	}
		#sp_logo {
			position: static;
			float: left;
			width: 100px;
			height: auto;
		}
			#sp_logo img {
				height: auto;
				vertical-align: bottom;
			}
		#sp_header .sp_head {
			padding: 20px 0 0;
		}
			#sp_site_name {
				display: block;
				float: none;
				padding: 10px;
				font-size: 1.6em;
				text-align: center;
			}
			#sp_member_info {
				position: absolute;
				top: 10px; right: 10px;
			}

.sp_body_wrapper #sp_global_nav .sp_nav_main {
	width: auto;
	margin-left: 0;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#4C4C4C', endColorstr = '#343233');
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr = '#4C4C4C', endColorstr = '#343233')";
	background-image: -moz-linear-gradient(top, #4C4C4C, #343233);
	background-image: -ms-linear-gradient(top, #4C4C4C, #343233);
	background-image: -o-linear-gradient(top, #4C4C4C, #343233);
	background-image: -webkit-gradient(linear, center top, center bottom, from(#4C4C4C), to(#343233));
	background-image: -webkit-linear-gradient(top, #4C4C4C, #343233);
	background-image: linear-gradient(top, #4C4C4C, #343233);
}
	#sp_global_nav .sp_nav_main li {
		display: block;
		float: none;
		text-align: left;
	}
			.sp_body_wrapper #sp_global_nav .sp_nav_main a {
				display: block;
				padding: 1em 15px 1em 46px;
				border-top: 0;
			}
				#sp_global_nav .sp_nav_main a::before {
					top: 0; right: auto; bottom: 0; left: 10px!important;
				}
			#sp_global_nav .sp_nav_main .inner_text {
				min-height: 0;
			}
	#sp_global_nav .sp_nav_main li + li {
		border-top: 1px #1A1A1A solid;
	}
	#sp_global_nav .sp_nav_main li + li + li {
		margin-left: 0;
	}
	#sp_global_nav .sp_nav_main li.sp_active {
		/* display: none!important; 20191205*/
	}
	#sp_global_nav li.sp_nav_main_btn {
		display: block;
		position: relative;
		padding: 0.5em 20px;
	}
		.sp_nav_btn {
			display: block;
			position: absolute;
			top: 0; right: 15px; bottom: 0;
			z-index: 100;
			width: 35px;
			height: 35px;
			margin: auto;
			border: none;
			border-radius: 50%;
			background: #FFF;
			cursor: pointer;
			user-select: none;
			-ms-user-select: none;
			-moz-user-select: none;
			-webkit-user-select: none;
			outline: none;
		}
			.sp_nav_btn::before {
				content: "";
				display: block;
				position: absolute;
				top: 20%; right: 0; left: 0;
				z-index: 105;
				width: 68%;
				height: 11%;
				margin: 0 auto;
				border-radius: 10%;
				background: #343233;
				transition: all 0.5s;
			}
				.sp_nav_btn.close::before {
					top: 43%;
					transform: rotate(135deg);
				}
			.sp_nav_btn strong {
				display: block;
				position: absolute;
				top: 45%; right: 0; left: 0;
				z-index: 105;
				width: 68%;
				height: 11%;
				overflow: hidden;
				margin: 0 auto;
				border-radius: 10%;
				background: #343233;
				text-indent: -9999px;
				transition: all 0.5s;
			}
				.sp_nav_btn.close strong {
					opacity: 0;
				}
			.sp_nav_btn::after {
				content: "";
				display: block;
				position: absolute;
				bottom: 20%; right: 0; left: 0;
				z-index: 105;
				width: 68%;
				height: 11%;
				margin: 0 auto;
				border-radius: 10%;
				background: #343233;
				transition: all 0.5s;
			}
				.sp_nav_btn.close::after {

					top: 43%;
					transform: rotate(-315deg);
				}
			.sp_nav_btn span {
				display: block;
				position: absolute;
				bottom: 10%; left: 0;
				bottom: 0\9;
				z-index: 105;
				width: 100%;
				color: #FFF;
				text-align: center;
				font-weight: bold;
				letter-spacing: 1px;
				text-shadow:
					1px 1px 0 #47CE93
					,-1px 1px 0 #47CE93
					,1px -1px 0 #47CE93
					,0px 1px 0 #47CE93
					,1px 0px 0 #47CE93
					,-1px 0px 0 #47CE93
					,0px -1px 0 #47CE93
					,-1px -1px 0 #47CE93
				;
			}
	#sp_global_nav li.sp_menu_close {
		display: none;
	}

	#sp_global_nav .sp_drop_down_menu {
		display: none;
	}

.sp_page_title {
	margin-top: 10px;
}

.sp_section,
.sp_gray .sp_wrapper {
	width: auto;
	padding: 25px 10px;
	margin: 0;
}
.sp_section.sp_top_sec {
	margin-top: 0;
}

.sp_three_sec {
	float: none;
	width: auto;
}
.sp_three_sec + .sp_three_sec {
	margin-top: 50px;
	margin-left: 0;
}
.sp_three_sec + .sp_three_sec + .sp_three_sec {
	margin-bottom: 0;
}

div.f_left {
	float: none;
}
div.w50 {
	width: 100%;
}

table.trial_list {
	width: 100%;	
	word-break: break-word;
}
table.comparison_list {
	width: 100%;	
	font-size: 10px;
	word-break: break-word;
}
table.comparison_list img{
	max-width: 95%;
	height: auto;
}


.col-4 {
	float: none;
	width: auto;
	margin-left: 0;
}
	.apply .step {
		padding-top: 185px;
	}
		.apply span {
			font-size: 3em;
			line-height: 1em;
		}

.sp_steps {
	display: block;
}
	.sp_steps li {
		display: block;
		width: auto;
		min-height: 5em;
		height: auto;
		padding: 1em 0;
		box-sizing: border-box;
	}
		.sp_steps li + li::before {
			top: -28px;
			right: 0;
			bottom: auto;
			left: 0;
			border-width: 14px 22px 0 22px;
			border-color: #EC6600 transparent transparent;
		}
	.sp_steps li + li {
		margin-top: 40px;
	}

.sp_bg_gry {
	width: auto;
	margin: 20px 10px 0;
}

.sp_page_title {
	font-size: 1.5em;
}
.sp_square {
	margin-bottom: 10px;
	font-size: 1.3em;
}


#ap_info_category {
	width: auto;
}
	#ap_info_category li {
		padding: 4px 0.5em;
		margin-bottom: 0.5em;
		width: auto;
		font-size: 14px;
	}
#sp_info_article {
	width: auto;
	margin-top: 0;
}

#sp_main.sp_non_member {
	padding-bottom: 0;
}

.sp_my_products,
.sp_loan_products {
	display: block;
	width: auto;
	flex-wrap: nowrap;
}
	#sp_main .sp_my_products > li {
		width: auto;
		margin-right: 0;
		padding: 5px 5px 10px;
	}
		.sp_my_products .sp_my_products_repair,
		.sp_my_products .sp_my_products_maintenance {
			float: none;
			margin-right: 0;
			margin-left: 174px;
		}
	.sp_loan_products li {
		width: auto;
	}
		.sp_loan_products .sp_products_img {
			float: left;
		}
		.sp_loan_products .sp_period {
			margin-top: 2em;
		}

#sp_main .sp_counter li {
	float: none;
	width: auto;
	line-height: 1em;
	margin-left: 0;
}
	.sp_counter .sp_title {
		line-height: 1.2em;
		padding: 5px 0;
	}
.sp_counter li + li {
	margin-top: 40px;
}

#cs_cleaning_table,
#cs_cleaning_table caption,
#cs_cleaning_table tr,
#cs_cleaning_table td,
#cs_cleaning_table th,
#cs_cleaning_table thead,
#cs_cleaning_table tbody {
	display: block;
	width: auto!important;
}
	#cs_cleaning_table caption {
		display: none;
	}
	#cs_cleaning_table thead .cs_course {
		position: relative;
		margin-bottom: 16px;
		background: #FFF!important;
		color: #333;
		cursor: pointer;
		box-shadow: 1px 1px 0 #444;
		border-bottom: 3px #333 solid;
	}
		#cs_cleaning_table thead .cs_course:hover {
			opacity: 0.8;
		}
		#cs_cleaning_table thead .cs_course::before {
			content: "";
			display: block;
			position: absolute;
			top: 2px; left: 2px;
			width: 0;
			height: 0;
			border-style: solid;
			border-width: 20px 20px 0 0;
		}
		#cs_cleaning_table thead .cs_cleaning_simple::before {
			border-color: #874EA9 transparent transparent transparent;
		}
		#cs_cleaning_table thead .cs_cleaning_sensor::before {
			border-color: #524EAB transparent transparent transparent;
		}
		#cs_cleaning_table thead .cs_cleaning_light::before {
			border-color: #465673 transparent transparent transparent;
		}
		#cs_cleaning_table thead .cs_cleaning_full::before {
			border-color: #497389 transparent transparent transparent;
		}
		#cs_cleaning_table thead .cs_cleaning_full_body::before {
			border-color: #EB6101 transparent transparent transparent;
		}
		#cs_cleaning_table thead .cs_cleaning_full_lens::before {
			border-color: #A74200 transparent transparent transparent;
		}
		#cs_cleaning_table thead .cs_course p {
			margin: 0 20px;
		}
		#cs_cleaning_table thead .cs_price {
			display: block;
			padding: 8px 0 4px;
			line-height: 1em;
		}
			#cs_cleaning_table thead .cs_price strong {
				font-size: 1.5em;
			}
	#cs_cleaning_table thead .cs_cleaning_simple,
	#cs_cleaning_table thead .cs_cleaning_sensor,
	#cs_cleaning_table thead .cs_cleaning_light,
	#cs_cleaning_table thead .cs_cleaning_full,
	#cs_cleaning_table thead .cs_cleaning_full_body,
	#cs_cleaning_table thead .cs_cleaning_full_lens {
		position: relative;
		min-height: 48px;
		padding-right: 48px;
	}
		#cs_cleaning_table thead .cs_cleaning_simple::after,
		#cs_cleaning_table thead .cs_cleaning_sensor::after,
		#cs_cleaning_table thead .cs_cleaning_light::after,
		#cs_cleaning_table thead .cs_cleaning_full::after,
		#cs_cleaning_table thead .cs_cleaning_full_body::after,
		#cs_cleaning_table thead .cs_cleaning_full_lens::after {
			content: "";
			display: block;
			position: absolute;
			right: 4px; bottom: 4px;
			width: 41px;
			height: 40px;
			background: left top no-repeat;
		}
	#cs_cleaning_table thead .cs_cleaning_simple {
		border-color: #874EA9;
	}
		#cs_cleaning_table thead .cs_cleaning_simple::after {
			background-image: url("../img/icon_course-simple.png");
		}
	#cs_cleaning_table thead .cs_cleaning_sensor {
		border-color: #524EAB;
	}
		#cs_cleaning_table thead .cs_cleaning_sensor::after {
			background-image: url("../img/icon_course-sensor.png");
		}
	#cs_cleaning_table thead .cs_cleaning_light {
		border-color: #465673;
	}
		#cs_cleaning_table thead .cs_cleaning_light::after {
			background-image: url("../img/icon_course-light.png");
		}
	#cs_cleaning_table thead .cs_cleaning_full {
		border-color: #497389;
	}
		#cs_cleaning_table thead .cs_cleaning_full::after {
			background-image: url("../img/icon_course-full.png");
		}
	#cs_cleaning_table thead .cs_cleaning_full_body {
		border-color: #EB6101;
	}
		#cs_cleaning_table thead .cs_cleaning_full_body::after {
			background-image: url("../img/icon_course-full_body.png");
		}
	#cs_cleaning_table thead .cs_cleaning_full_lens {
		border-color: #A74200;
	}
		#cs_cleaning_table thead .cs_cleaning_full_lens::after {
			background-image: url("../img/icon_course-full_lens.png");
		}

		#cs_cleaning_table thead .cs_cleaning_price {
			display: none;
		}


	#cs_cleaning_table tbody tr {
		border: 1px #333 solid;
	}
		#cs_cleaning_table tbody th {
			background: #333;
			font-weight: bold;
		}
		#cs_cleaning_table tbody td {
			border: none;
			padding: 4px 8px;
		}
	#cs_cleaning_table tbody .cs_cleaning_course {
		padding: 8px;
		border-bottom: 1px #333 solid;
		background: #DDD;
		font-weight: bold;
		font-size: 1.2em;
	}
	#cs_cleaning_table tbody td + td {
		border-top: 0px;
		border-bottom: 0px;
	}
	#cs_cleaning_table tbody.cs_cleaning_lens th {
		background: #655EA7;
	}
	#cs_cleaning_table tbody.cs_cleaning_lens .cs_cleaning_course {
		background: #C0BCE3;
	}

	#cs_cleaning_table tbody .cs_cleaning_simple,
	#cs_cleaning_table tbody .cs_cleaning_sensor,
	#cs_cleaning_table tbody .cs_cleaning_light,
	#cs_cleaning_table tbody .cs_cleaning_full,
	#cs_cleaning_table tbody .cs_cleaning_full_body,
	#cs_cleaning_table tbody .cs_cleaning_full_lens {
		display: inline-block;
		position: relative;
		overflow: hidden;
	}
		#cs_cleaning_table tbody .cs_cleaning_simple::before,
		#cs_cleaning_table tbody .cs_cleaning_sensor::before,
		#cs_cleaning_table tbody .cs_cleaning_light::before,
		#cs_cleaning_table tbody .cs_cleaning_full::before,
		#cs_cleaning_table tbody .cs_cleaning_full_body::before,
		#cs_cleaning_table tbody .cs_cleaning_full_lens::before {
			content: "";
			display: inline-block;
			width: 41px;
			height: 40px;
			background: left top no-repeat;
		}
		#cs_cleaning_table tbody td .cs_propriety {
			position: absolute;
			top: -1px;
			left: -1px;
			width: 1px;
			height: 1px;
			line-height: 1px;
			overflow: hidden;
			font-size: 1px;
		}
	#cs_cleaning_table tbody .cs_cleaning_simple {
		color: #874EA9;
	}
		#cs_cleaning_table tbody .cs_cleaning_simple::before {
			background-image: url("../img/icon_course-simple.png");
		}
	#cs_cleaning_table tbody .cs_cleaning_sensor {
		color: #524EAB;
	}
		#cs_cleaning_table tbody .cs_cleaning_sensor::before {
			background-image: url("../img/icon_course-sensor.png");
		}
	#cs_cleaning_table tbody .cs_cleaning_light {
		color: #465673;
	}
		#cs_cleaning_table tbody .cs_cleaning_light::before {
			background-image: url("../img/icon_course-light.png");
		}
	#cs_cleaning_table tbody .cs_cleaning_full {
		color: #497389;
	}
		#cs_cleaning_table tbody .cs_cleaning_full::before {
			background-image: url("../img/icon_course-full.png");
		}
	#cs_cleaning_table tbody .cs_cleaning_full_body {
		color: #497389;
	}
		#cs_cleaning_table tbody .cs_cleaning_full_body::before {
			background-image: url("../img/icon_course-full_body.png");
		}
	#cs_cleaning_table tbody .cs_cleaning_full_lens {
		color: #497389;
	}
		#cs_cleaning_table tbody .cs_cleaning_full_lens::before {
			background-image: url("../img/icon_course-full_lens.png");
		}
	#cs_cleaning_table tbody .cs_no {
		display: none;
	}



#sp_footer_nav ul {
	width: auto;
	text-align: left;
}
	#sp_footer_nav li {
		display: block;
		padding: 0;
	}
		#sp_footer_nav li a {
			display: block;
			padding: 1em 2.5em 1em 1em;
		}
			#sp_footer_nav li a::after {
				content: ">>";
				position: absolute;
				top: 0;
				right: 1em;
				bottom: 0;
				height: 2em;
				margin: auto;
				color: #FFF;
			}
	#sp_footer_nav li + li {
		border-top: 1px #FFF solid;
	}
		#sp_footer_nav li + li::before {
			display: none;
		}

table.repairPriceTable,
table.repairPriceTable caption,
table.repairPriceTable tbody,
table.repairPriceTable tr,
table.repairPriceTable th,
table.repairPriceTable td,
table.sp_header_table,
table.sp_header_table caption,
table.sp_header_table thead,
table.sp_header_table tbody,
table.sp_header_table tr,
table.sp_header_table th,
table.sp_header_table td,
table.sp_main_table,
table.sp_main_table caption,
table.sp_main_table thead,
table.sp_main_table tbody,
table.sp_main_table tr,
table.sp_main_table th,
table.sp_main_table td {
	display: block;
	width: auto;
}
	table.sp_main_table {
		width: auto;
	}
		table.sp_header_table caption,
		table.sp_main_table caption {
			padding-bottom: 10px;
		}
		table.sp_main_table tr {
			padding-bottom: 1px;
		}
			table.sp_main_table th {
				width: auto;
			}
				table.sp_main_table th::after {
					display: none;
				}
				table.sp_main_table td {
					padding-left: 10px;
				}
		table.sp_header_table tr + tr,
		table.sp_main_table tr + tr {
			margin-top: 20px;
		}
	table.sp_header_table thead {
		display: none;
	}
	table.sp_header_table td + td {
		padding-top: 0;
	}
	table.sp_header_table td::before {
		content: attr(data-title) ": ";
	}

	table.repairPriceTable thead {
		display: none;
	}
		table.repairPriceTable th {
			background: #6E6E6E;
			color: #FFF;
			text-align: center;
		}
		table.repairPriceTable td.nedan::before {
			content: "–ÚˆÀ—¿‹à";
			display: inline-block;
			line-height: 1.8em;
			vertical-align: text-bottom;
			margin-right: 5px;
			padding: 0 5px;
			border-radius: 3px;
			background: #999;
			color: #FFF;
			font-size: 0.8em;
		}


	.cs_cover {
		position: fixed;
		top: 0;
		bottom: 0;
		z-index: 100000;
		width: 100%;
		height: 100%;
		background: rgba(0,0,0,0.8);
	}
	.course_detail {
		position: fixed;
		top: 0; bottom: 0; left: 0; right: 0;
		z-index: 1000000;
		box-sizing: border-box;
		width: 80vw;
		height: 80Vh;
		padding-bottom: 8px;
		margin: auto;
		background: #FFF;
	}
		.course_detail p {
			line-height: 1.3em;
			padding: 4px;
			color: #FFF;
			text-align: center;
		}
		.course_detail.c_simple p {
			background: #874EA9;
		}
		.course_detail.c_sensor p {
			background: #524EAB;
		}
		.course_detail.c_light p {
			background: #465673;
		}
		.course_detail.c_full p {
			background: #497389;
		}
		.course_detail.c_full_body p {
			background: #EB6101;
		}
		.course_detail.c_full_lens p {
			background: #A74200;
		}
		.course_detail dl {
			box-sizing: border-box;
			height: calc(80vh - 2em - 8px);
			overflow-y: scroll;
			line-height: 1.5em;
			padding: 8px;
			background: #FFF;
		}
			.course_detail dd {
				padding-left: 8px;
				font-size: 0.8em;
			}
			.course_detail dd + dt {
				margin-top: 8px;
			}
		.course_detail .cs_close {
			position: absolute;
			top: 0; right: 0;
			cursor: pointer;
		}

/*20191003*/

.pro_menu {
	width: 100%;
	margin: 0;
}

.pro_link {
	padding: 30px 0;
}
.sign_in_area {
	width: 96%;
	padding: 10px;
	margin-top: 0;
}
.sign_in_area span {
	padding: 5px 10px;
}
ul.txtlink li {
	margin-right: 0px !important;
}

.step_area ul li {
	width: 90%;
}

.step_area .figure {
	display: inline-block;
}
.step_area .stepLine {
	display: inline-block;
	vertical-align: top;
	text-align: left;
	width: 150px;
	padding-left: 10px;
}

/* 20191205 */

#sp_visual #sp_global_nav .sp_nav_main .sp_active span {
	width: 100%;
	display: block;
	padding-left: 24px;
	padding-top: 8.5px;
	padding-bottom: 8px;
}

#sp_visual #sp_global_nav .sp_nav_main .sp_home > span::before {
	left: 12px;
}

.sp_slide li span {
  background-size: 100% auto;    
            background-position: center top;  
}


}


@media screen and (max-width: 540px){
table.trial_list {
	font-size: 10px;
	line-height: 17px;
}
}


@media screen and (max-width: 460px){

.step_area .figure {
	width: 70px;
}


}


/* 20200313 */

@media screen and (max-width: 640px){
	#ap_info_category {
		width: 100%;
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		flex-wrap: wrap;
	}
	#ap_info_category li {
		width: 32%;
		margin-right: 5px;
	}
	#ap_info_category li:last-child{
		margin-right: 0;
	}
}

@media screen and (max-width: 480px){
	
	#ap_info_category {
		justify-content: space-between;
	}
	#ap_info_category li {
		width: 49%;
		margin-right: 0;
	}
}
