@charset "utf-8";

@media screen and (max-width: 640px) {
	.u-show_mobile {
		display: block !important;
	}

	.u-hide_mobile {
		display: none !important;
	}
	
	.u-width_10_mobile { width: 10% !important; }
	.u-width_20_mobile { width: 20% !important; }
	.u-width_30_mobile { width: 30% !important; }
	.u-width_40_mobile { width: 40% !important; }
	.u-width_50_mobile { width: 50% !important; }
	.u-width_60_mobile { width: 60% !important; }
	.u-width_70_mobile { width: 70% !important; }
	.u-width_80_mobile { width: 80% !important; }
	.u-width_90_mobile { width: 90% !important; }
	.u-width_100_mobile { width: 100% !important; }
	
	.iot_page {
		letter-spacing: 0;
	}
	
	.u-title_hi em {
		font-size: 20px;
		line-height: 1.5;
		letter-spacing: 0;
	}
	
	.u-title_mid em {
		font-size: 18px;
	}
	
	.u-inner {
		padding-right: 10px;
		padding-left: 10px;
	}
	
	.u-flex.-mobile_none {
		display: block;
	}
	
	.u-box {
		padding: 20px;
	}
	
	.u-box.u-flex > div:nth-child(1) {
		width: 100%;
	}
	
	.u-box.u-flex > div:nth-child(2) {
		width: calc(100% + (20px * 2));
		margin: 20px -20px -20px -20px;
	}
	
	.u-box h4 {
		font-size: 14px;
		text-align: center;
	}
	
	.u-box .u-text {
		font-size: 18px;
		text-align: center;
	}
	
	.u-button > * {
		font-size: 14px;
	}
	
	.l-mv_title {
		color: var(--black);
		font-size: 6vw;
		line-height: 1.75;
		letter-spacing: 0;
	}
	
	.l-main_inner {
		padding: 20px;
	}
	
	.l-main_inner > div {
		width: 100%;
	}
	
	.l-main_image {
		text-align: center;
		width: 100%;
		margin: 20px 0 0;
	}
	
	.l-main_image img {
		width: 50%;
	}
	
	.l-main h3 {
		text-align: center;
	}
	
	.l-main h3 b {
		font-size: 28px;
	}
	
	.l-main p {
		font-size: 16px;
		text-align: center;
	}
	
	.l-voice_item {
		display: block;
	}
	
	.l-voice_item figure {
		width: 100%;
	}
	
	.l-voice_item > div {
		width: 100%;
		padding-left: 0;
	}
	
	.l-voice_item p {
		font-size: 16px;
		margin-top: 20px;
	}
	
	.l-voice_item p + * {
		font-size: 14px;
		margin-top: 15px;
	}
	
	.l-point_inner {
		padding: 20px;
		border-radius: 20px;
	}
	
	.l-point h3 {
		display: block;
	}
	
	.l-point h3 span {
		text-align: center;
		display: block;
	}
	
	.l-point h3 em {
		font-size: 20px;
		text-align: center;
		margin-top: 10px;
		padding-left: 0;
		display: block;
	}
	
	.l-point h3 span {
		font-size: 20px;
	}
	
	.l-point h3 span i {
		width: 42px;
		height: 42px;
	}
	
	.l-point_lists {
		display: block;
	}
	
	.l-point_lists li {
		width: 100%;
	}
	
	.l-point_lists li figure {
		width: 80px;
	}
	
	.l-point_lists li em {
		width: calc(100% - 80px);
		padding: 0 0 0 20px;
	}
	
	.l-iot_navis {
		margin-right: -5px;
		margin-left: -5px;
		padding-right: 0;
		padding-left: 0;
	}
	
	.l-iot_navis .u-inner {
		width: 100%;
		padding-right: 10px;
		padding-left: 10px;
	}
	
	.l-iot_navis .u-inner > div {
		width: calc(100% / 3 - (5px * 2));
		margin: 0 5px;
	}
	
	.l-iot_navis .u-inner > div img {
		width: 25%;
	}
	
	.l-iot_navis .u-inner > div a {
		font-size: 14px;
		min-height: 100px;
		padding-bottom: 10px;
	}
	
	.l-iot_navis .u-inner > div a:after {
		top: auto;
		bottom: 10px;
		right: auto;
		left: 50%;
		transform: translate(-50%,0) scale(.9);
	}
	
	.l-iot_nav.active em {
		font-size: 12px;
		line-height: 1;
	}
	
	.u-title_corner h2 {
		margin-top: 30px;
		position: relative;
		top: auto;
		right: auto;
		transform: none;
	}
	
	.u-title_corner h2 em {
		font-size: 20px;
		letter-spacing: 0;
	}
	
	.u-title_corner h2 .u-title_corner_icon {
		width: 100px;
	}
	
	.u-title_corner figure img {
		width: 100%;
		height: auto;
		object-fit: inherit;
	}
	
	.l-corner_main_models {
		font-size: 12px;
		margin-top: -70px;
	}
	
	.l-corner_main_models + * {
		margin-top: 30px !important;
	}
	
	.l-corner_main_app {
		display: block;
	}
	
	.l-corner_main_app + .u-button {
		margin-right: -5px;
		margin-left: -5px;
	}
	
	.l-corner_main_apps {
		width: 100%;
		justify-content: center;
	}
	
	.l-corner_main_apps > * {
		width: 100px;
	}
	
	.l-corner_main_os {
		width: 100%;
		margin-top: 40px;
		padding-right: 0;
		padding-left: 0;
	}
	
	.l-corner_main_os ul {
		width: 100%;
		justify-content: center;
		margin-right: 0;
		margin-left: 0;
	}
	
	.l-corner_main_os ul li {
		font-size: 12px;
		margin-right: 5px;
		margin-left: 5px;
	}
	
	.l-iot_wash .flow .u-show_mobile div {
		display: flex;
		padding: 20px 0 0 30px;
	}
	
	.l-iot_wash .flow .u-show_mobile div figure {
		width: 80px;
	}
	
	.l-iot_wash .flow .u-show_mobile div ul {
		width: calc(100% - 80px);
		padding-right: 0;
		padding-left: 15px;
		display: flex;
		flex-direction: column;
	}
	
	.l-iot_wash .flow .u-show_mobile div ul li {
		flex: 1;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	
	.l-iot_wash .osusume {
		width: 100px !important;
		height: auto !important;
		margin: 0 0 30px;
	}


	.box_3clm {
		display: inherit;
		width: auto;
		margin: 0 10px;
	}
	.box_3clm h3 {
	}
	.box_3clm .box310 {
		width: auto;
		text-align: center;
		margin-bottom: 40px;
		padding-bottom: 40px;
	}
	.box_3clm .box310 h4 {
		font-size: 18px;
	}
	.box_3clm .box310 .u-text {
	}
	.box_3clm > div:last-child { margin-bottom: 0px;}


	.l-product_lists > div {
		width: calc(100% / 2);
		padding-right: 10px;
		padding-left: 10px;
	}
	
/*	.l-iot_reizo .u-title_corner h2 .u-title_corner_icon {
		width: 220px;
	}*/
	
	.l-iot_reizo .u-button {
		margin-right: 0;
		margin-left: 0;
		display: block;
	}
	
	.l-iot_reizo .u-button > * {
		margin-right: 0;
		margin-left: 0;
		margin-bottom: 10px;
	}
	
	.l-iot_reizo .u-box.u-flex.eco > div:nth-child(2) img {
		width: 50%;
		margin-right: auto;
		margin-bottom: 30px;
		margin-left: auto;
		display: block;
	}
	
	.l-iot_club .u-title_corner h2 em {
		color: var(--black);
	}
	
	.l-iot_club .flows figcaption {
		font-size: 14px;
	}
	
	.l-attention {
		padding-right: 10px;
		padding-left: 10px;
	}
	
	.l-area_list {
		width: calc(100% - 40px);
		max-width: none;
	}
	
	.l-area_list_inner {
		padding: 20px;
	}
	
	.l-area_list h3 {
		font-size: 22px;
	}
	
	.l-area_list h4 {
		font-size: 18px;
	}
	
	.l-area_list .u-text {
		font-size: 14px;
	}
	
	.l-area_list .attention {
		padding: 10px 20px 20px;
	}
	
	
}/* END Responsive */
