@charset "utf-8";

/* 
 * Reset
 * ==================================================================================================== */
:root {
	--white: #fff;
	--black: #000;
	--blue: #455C85;
	--gray_dark: #444;
	--gray_light: #f2f2f2;
	--max-w: 976px;
	--cubic_bezier: cubic-bezier(.8,0,.5,1);
}

/*iot_page*/
.iot_page {
	color: var(--gray_dark);
	font-size: 16px;
	letter-spacing: .1em;
	font-feature-settings: 'palt';
}

.iot_page img {
	image-rendering: -webkit-optimize-contrast;
}

.iot_page a,
.iot_page button {
	transition: .2s var(--cubic_bezier);
}

/* Setting */
.u-show_mobile {
	display: none !important;
}

.u-hide_mobile {
	display: block !important;
}

.u-link {
	text-decoration: underline;
}

.u-link:hover {
	text-decoration: none;
}

.u-font-normal {
	font-weight: 400;
}

.u-font-bold {
	font-weight: 700;
}

.u-font-color__red {
	color: #BF4840;
}

.u-font_12 {
	font-size: 12px !important;
}

.u-align_left {
	text-align: left !important;
}

.u-align_center {
	text-align: center !important;
}

.u-vertical-align__top {
	vertical-align: top !important;
}

.u-vertical-align__middle {
	vertical-align: middle !important;
}

.u-vertical-align__bottom {
	vertical-align: bottom !important;
}

.u-button {
	display: flex;
	justify-content: center;
}

.u-button > * {
	color: var(--blue);
	font-size: 16px;
	text-align: center;
	letter-spacing: 0;
	min-height: 60px;
	margin: 0 10px;
	padding: 0 0 .1em;
	border: 1px solid var(--blue);
	background: var(--white);
	border-radius: 6px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	box-shadow: 0 5px 5px 0 rgba(0,0,0,.1);
}

.u-button > *:hover {
	color: var(--white);
	background: var(--blue);
}

.u-button.-blue > * {
	color: var(--white);
	background: var(--blue);
}

.u-flex {
	display: flex;
	flex-wrap: wrap;
}

.u-flex.-center {
	justify-content: center;
}

.u-flex.-right {
	justify-content: flex-end;
}

.u-flex.-middle {
	align-items: center;
}

.u-flex.-bottom {
	align-items: flex-end;
}

.u-flex.-reverse {
	flex-drection: row-reverse;
}

.u-flex.-between {
	justify-content: space-between;
}

.u-flex__column--2 > * { width: calc(100% / 2); }
.u-flex__column--3 > * { width: calc(100% / 3); }
.u-flex__column--4 > * { width: calc(100% / 4); }
.u-flex__column--5 > * { width: calc(100% / 5); }
.u-flex__column--6 > * { width: calc(100% / 6); }
.u-flex__column--7 > * { width: calc(100% / 7); }

.u-flex-child-wrap {
	margin-right: -10px;
	margin-left: -10px;
}

.u-flex-child {
	padding-right: 10px;
	padding-left: 10px;
}


.u-contents {
	margin: 80px 0 0;
}

.u-inner {
	max-width: var(--max-w);
	margin-right: auto;
	margin-left: auto;
}

.u-title_corner {
	margin: 80px 0 0;
	position: relative;
}

.u-title_corner h2 {
	text-align: center;
	position: absolute;
	top: 50%;
	right: 55%;
	transform: translate(0,-50%);
}

.u-title_corner h2 em {
	color: var(--black);
	font-size: 22px;
	font-weight: 500;
	letter-spacing: .15em;
	margin: 15px 0 0;
	display: block;
}

.u-title_corner h2 .u-title_corner_icon {
	width: 120px;
	margin: 0 auto;
	display: block;
}

.u-title_corner figure img {
	width: 100%;
	max-width: none;
	height: 580px;
	object-fit: cover;
}

.u-title_hi em {
	color: var(--blue);
	font-size: 26px;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: .15em;
	text-align: center;
	display: block;
}

.u-title_hi + * {
	margin-top: 30px !important;
}

.u-title_mid {
	text-align: center;
	margin: 60px 0 0;
}

.u-title_mid em {
	color: var(--black);
	font-size: 20px;
	font-weight: 500;
}

.u-title_mid + * {
	margin-top: 20px !important;
}




.u-video_player {
	padding: 56.25% 0 0;
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	transform: translateZ(0);
}

.u-video_player iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}





.u-text {
	margin: 30px 0 0;
}

.u-photo img {
	max-width: 646px;
}

.u-table table {
	border-right: 1px solid #808080;
	border-bottom: 1px solid #808080;
}

.u-table th {
	font-size: 13px;
	font-weight: 700;
	vertical-align: top;
	padding: 15px;
	background: #f2f2f2;
	border-top: 1px solid #808080;
	border-left: 1px solid #808080;
}

.u-table th sup {
	font-weight: 400;
}

.u-table td {
	font-size: 13px;
	vertical-align: middle;
	padding: 15px;
	border-top: 1px solid #808080;
	border-left: 1px solid #808080;
}

.u-table img {
	max-width: 100%;
}

.u-notes {
	margin: 30px 0 0;
}

.u-notes li {
	font-size: 12px;
	line-height: 1.5;
	display: table;
}

.u-notes li i {
	white-space: nowrap;
	padding: 0 .5em 0 0;
	display: table-cell;
}

.u-notes li span {
	letter-spacing: 0;
	display: table-cell;
}


.u-mgt_0 { margin-top: 0 !important; }
.u-mgt_10 { margin-top: 10px !important; }
.u-mgt_20 { margin-top: 20px !important; }
.u-mgt_30 { margin-top: 30px !important; }
.u-mgt_40 { margin-top: 40px !important; }
.u-mgt_50 { margin-top: 50px !important; }
.u-mgt_60 { margin-top: 60px !important; }
.u-mgt_70 { margin-top: 70px !important; }
.u-mgt_80 { margin-top: 80px !important; }
.u-mgt_90 { margin-top: 90px !important; }
.u-mgt_100 { margin-top: 100px !important; }

.u-width_10 { width: 10% !important; }
.u-width_20 { width: 20% !important; }
.u-width_30 { width: 30% !important; }
.u-width_40 { width: 40% !important; }
.u-width_50 { width: 50% !important; }
.u-width_60 { width: 60% !important; }
.u-width_70 { width: 70% !important; }
.u-width_80 { width: 80% !important; }
.u-width_90 { width: 90% !important; }
.u-width_100 { width: 100% !important; }



.eccom-contents {
	padding-bottom: 60px;
}

.u-lists li {
	padding: 0 0 0 .75em;
	position: relative;
}

.u-lists li:after {
	content: '';
	width: .35em;
	height: .35em;
	display: block;
	background: #000;
	border-radius: 50%;
	position: absolute;
	top: .65em;
	left: 0;
}

.u-box {
	padding: 40px;
	background: var(--gray_light);
}

.u-box.u-flex > div:nth-child(1) {
	width: calc(100% - 320px);
}

.u-box.u-flex > div:nth-child(2) {
	line-height: 0;
	width: calc(320px + 40px);
	margin: -40px -40px -40px 0;
}

.u-box.u-flex > div:nth-child(2) img {
	width: 100%;
	max-width: none;
	object-fit: cover;
}

.u-box h4 {
	color: var(--blue);
	font-size: 17px;
}

.u-box .u-text {
	color: var(--black);
	font-size: 20px;
	margin: 20px 0 0;
}


/*mv*/
.l-mv {
	margin-top: 0;
	position: relative;
}

.l-mv_title {
	color: var(--white);
	font-size: 36px;
	font-weight: 700;
	text-align: center;
	line-height: 1.75;
	letter-spacing: .225em;
	width: 100%;
	position: absolute;
	top: calc(50% - .1em);
	left: 0;
	z-index: 10;
	transform: translate(0,-50%);
}

.l-mv img {
	width: 100%;
	max-width: none;
}

.l-main_inner {
	color: var(--black);
	padding: 20px 60px;
	background: var(--gray_light);
}

.l-main_inner > div {
	width: calc(100% - 320px);
}

.l-main_image {
	width: 320px;
}

.l-main_image img {
	width: 55%;
}

.l-main h3 {
	font-size: 20px;
	line-height: 1.35;
	margin: 15px 0;
}

.l-main h3 b {
	font-size: 42px;
	font-weight: 500;
}

.l-main p {
	font-size: 20px;
	line-height: 1.75;
}


.l-voice_item {
	display: flex;
}

.l-voice_item:not(:nth-child(1)) {
	margin-top: 40px;
}

.l-voice_item figure {
	width: 320px;
}

.l-voice_item > div {
	width: calc(100% - 320px);
	padding: 0 0 0 60px;
}

.l-voice_item p {
	font-size: 1.8rem;
	line-height: 2;
	margin: 30px 0 0;
}

.l-voice_item p + * {
	margin: 30px 0 0;
	display: block;
}

.l-point {
	margin-bottom: 80px;
}

.l-point_inner {
	padding: 40px 60px;
	border-radius: 40px;
	border: 1px solid #ddd;
}

.l-point_inner:not(:nth-child(1)) {
	margin-top: 60px;
}

.l-point h3 {
	line-height: 1.25;
	display: flex;
	justify-content: center;
	align-items: center;
}

.l-point h3 span {
	color: var(--blue);
	font-size: 2.4rem;
	font-weight: 700;
	display: inline-block;
}

.l-point h3 span i {
	color: var(--blue);
	font-size: 3.8rem;
}

/*
.l-point h3 span i {
	color: var(--white);
	line-height: 1;
	text-align: center;
	width: 52px;
	height: 52px;
	margin: 0 0 0 5px;
	padding: .5em 0 0;
	display: inline-block;
	background: var(--blue);
	border-radius: 50%;
}
*/

.l-point h3 em {
	color: var(--black);
	font-size: 22px;
	font-weight: 500;
	text-align: left;
	padding: 0 0 0 20px;
	display: inline-block;
}

.l-point_lists {
	margin: 0 0 40px;
	display: flex;
	flex-wrap: wrap;
}

.l-point_lists li {
	width: calc(100% / 2);
	margin: 20px 0 0;
	display: flex;
	align-items: center;
}

.l-point_lists li figure {
	text-align: center;
	width: 180px;
}

.l-point_lists li em {
	color: var(--black);
	font-size: 1.8rem;
	font-weight: 500;
}

.l-point_inner.-area .u-text {
	text-align: center;
}

.l-point_inner.-area .u-button {
	margin-top: 30px;
}

.l-iot_nav {
	width: 100%;
	margin-top: 0;
	padding: 0 0 10px;
	background: #fff;
	position: absolute;
	z-index: 100;
	transition: 2s;
}

.l-iot_nav .u-title_hi {
	transition: .2;
}

.l-iot_navis .u-inner {
	width: var(--max-w);
	margin-right: auto;
	margin-left: auto;
	padding: 0 60px;
	display: flex;
}

.l-iot_navis .u-inner > div {
	width: calc(100% / 3 - (15px * 2));
	margin: 0 15px;
}

.l-iot_navis .u-inner > div a {
	color: var(--blue);
	text-align: center;
	min-height: 170px;
	border-radius: 20px;
	border: 1px solid #ddd;
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
	box-shadow: 0 5px 5px 0 rgba(0,0,0,.1);
}

.l-iot_navis .u-inner > div a:hover {
	border-color: var(--blue);
	box-shadow: 0 5px 5px 0 rgba(0,0,0,0);
}

.l-iot_navis .u-inner > div a:after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 9px 0 9px;
	border-color: var(--blue) transparent transparent transparent;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0,-50%);
}

.l-iot_nav.active {
	position: fixed;
	top: -40px;
	left: 0;
}

.l-iot_nav.active .u-title_hi {
	opacity: 0;
	visibility: hidden;
}

.l-iot_nav.active .l-iot_navis {
	margin-top: -20px;
}

.l-iot_nav.active .l-iot_navis .u-inner > div a {
	min-height: 90px;
}

.l-iot_nav.active img {
	width: 40px;
}

.l-iot_nav.active em {
	font-size: 14px;
}


/*corner_main*/
.l-corner_main_models {
	line-height: 2;
	text-align: center;
	margin: -60px 0 0;
}

.l-corner_main_models + * {
	margin-top: 60px !important;
}

.l-corner_main_app {
	margin: 60px 0 30px;
	padding: 10px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
/*
	border-right: 1px solid #ddd;
	border-left: 1px solid #ddd;
*/
}

.l-corner_main_app > * {
	width: calc(100% / 2);
}

.l-corner_main_apps {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

.l-corner_main_apps > * {
	width: 130px;
	margin: 0 25px;
}

.l-corner_main_os {
	font-size: 14px;
	letter-spacing: 0;
	padding: 0 40px 0 90px;
}

.l-corner_main_os .u-text {
	line-height: 1.75;
	margin-top: 0;
}

.l-corner_main_os ul {
	margin: 15px -15px 0;
	display: flex;
}

.l-corner_main_os ul li {
	text-align: center;
	width: calc(100% / 2);
	padding: 0 15px;
}

/*wash*/
.l-iot_wash {
	margin-top: 460px;
}

.l-iot_wash .flow figure {
	text-align: center;
}

.l-iot_wash .flow ul {
	padding: 0 60px;
	display: flex;
	justify-content: space-between;
}

.l-iot_wash .flow ul li {
	font-size: 15px;
	text-align: center;
	width: 215px;
}

.l-iot_wash .osusume {
	width: 130px !important;
	height: auto !important;
	margin: 30px 0;
}


.box_3clm {
	display: flex;
	justify-content: space-between;
	width: 976px;
	margin: 0 auto;
}
.box_3clm h3 {
	display: block;
	text-align: center;
	font-size: 20px;
    font-weight: 500;
	color: #000000;
	background-color: #FFFFFF;
	margin-block-start: 0;
    margin-block-end: 0;
	padding-bottom: 20px;
}
.box_3clm img { width: 100%;}
.box_3clm figure { margin: 0 0 30px; padding: 0;}
.box_3clm .box310 {
	width: 310px;
	background-color: #F2F2F2;
	padding-bottom: 40px;
}
.box_3clm .box310 h4 {
	font-size: 16px;
	color: #455C85;
	padding: 0 15px;
}
.box_3clm .box310 .u-text {
	padding: 0 15px;
}


.l-product_lists {
	padding: 30px 0 0;
	border-top: 1px solid #ddd;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.l-product_lists > div {
	font-size: 14px;
	text-align: center;
	width: calc(100% / 4);
	margin: 40px 0 0;
	padding: 0 15px;
}

.l-product_lists > div a {
	color: var(--black);
	font-weight: 500;
}

.l-product_lists > div a:hover {
	opacity: .8;
}

.l-product_lists > div .u-button {
	margin-top: 5px;
	display: block;
}

.l-product_lists > div .u-button > * {
	font-size: 14px;
	min-height: 52px;
}

.l-product_lists_color {
	letter-spacing: 0;
	margin: 15px 0 0;
	display: block;
}

.l-product_lists_color:before {
	content: '';
	vertical-align: -.1em;
	width: 20px;
	height: 13px;
	background: #666;
	border: 1px solid #ddd;
	margin: 0 5px 0 0;
	display: inline-block;
}

.l-product_lists_color.-onyx:before {
	background: url("../img/cl_onyx.jpg") no-repeat center / 100% 100%;
}

.l-product_lists_color.-steel:before {
	background: url("../img/cl_steel.jpg") no-repeat center / 100% 100%;
}

.l-product_lists_color.-msgray:before {
	background: url("../img/cl_msgray.jpg") no-repeat center / 100% 100%;
}

.l-product_lists_color.-albrchamp:before {
	background: #B1A9A0;
}

.l-product_lists_color.-albroffw:before {
	background: #F6F6F6;
}

.l-product_lists_color.-F609HPX3:before {
	background: linear-gradient(135deg, rgba(250,250,250,1) 0%, rgba(226,226,226,1) 100%);
}
.l-product_lists_color.-hairlinedeepk:before {
	background: url("../img/cl_hairlinedeepk.jpg") no-repeat center / 100% 100%;
}
.l-product_lists_color.-hairlinechamp:before {
	background: url("../img/cl_hairlinechamp.jpg") no-repeat center / 100% 100%;
}
.l-product_lists_color.-ceramicoffw:before {
	background: url("../img/cl_ceramicoffw.jpg") no-repeat center / 100% 100%;
}

.l-product_lists figcaption {
	font-weight: 500;
	margin: 0 0 10px;
	display: block;
}

.l-product_lists img {
	max-height: 120px;
	object-fit: contain;
}

.l-iot_reizo {
	margin-top: 160px;
}

/*.l-iot_reizo .u-title_corner h2 .u-title_corner_icon {
	width: 250px;
}*/

/*.l-iot_reizo .l-corner_main_apps > *:nth-child(1) {
	width: 240px;
}*/

.l-iot_reizo .u-box.u-flex.eco > div:nth-child(2) img {
	width: 220px;
	margin: 30px 0 0 20px;
}
.l-iot_reizo .u-box.u-flex.eco > div:nth-child(2) img.w320 {
	width: 320px;
}

.l-iot_club .u-title_corner h2 em {
	color: var(--white);
}

.l-iot_club .flows {
	display: flex;
	justify-content: space-between;
}

.l-iot_club .flows > * {
	text-align: center;
	width: 266px;
}

.l-iot_club .flows figcaption {
	font-size: 15px;
	margin: 15px 0 0;
	display: block;
}

/*modal*/
.u-cover {
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.5);
	position: fixed;
	inset: 0;
	z-index: 2000;
	opacity: 0;
	visibility: hidden;
	transition: .2s var(--cubic_bezier);
}

.u-cover .u-button {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translate(-50%,0);
}

.u-cover .u-button > * {
	width: 300px;
}

.active_modal {
	overflow: hidden;
}

.active_modal .u-cover {
	opacity: 1;
	visibility: visible;
}

.l-area_list {
	max-width: calc(var(--max-w) - 120px);
	height: calc(100vh - 240px);
	background: var(--white);
	position: fixed;
	top: calc(50% - 30px);
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 2100;
	overflow-y: scroll;
	overflow-x: hidden;
	opacity: 0;
	visibility: hidden;
	transition: .2s var(--cubic_bezier);
}

.active_modal .l-area_list {
	opacity: 1;
	visibility: visible;
}

.l-area_list_inner {
	padding: 60px;
}

.l-area_list h3 {
	color: var(--black);
	font-size: 26px;
	font-weight: 500;
}

.l-area_list h4 {
	color: var(--black);
	font-size: 20px;
	font-weight: 500;
	margin: 30px 0 0;
	padding: 30px 0 0;
	border-top: 1px solid #ddd;
}

.l-area_list h4 + * {
	margin-top: 15px !important;
}

.l-area_list h4 small {
	font-size: 14px;
}

.l-area_list p {
	font-size: 15px;
}

.l-area_list p:last-of-type {
	padding-bottom: 30px;
	border-bottom: 1px solid #ddd;
}

#attention {
	margin-top: 0;
	padding-top: 60px;
}

.l-attention {
	line-height: 1.5;
	margin: 40px 0 0;
	padding: 10px 30px 30px;
	background: var(--gray_light);
}

.l-attention h2 {
	font-size: 14px;
	font-weight: 700;
	margin: 30px 0 0;
}

.l-attention .u-text {
	font-size: 14px;
	margin-top: 1.5em;
	padding: 0 !important;
	border: 0;
}

.l-attention > * {
	margin-top: 1em;
}

.l-attention .u-notes li,
.l-attention .u-lists li {
	font-size: 14px;
	margin-top: .25em;
}

.reizo_screen_image {
	width: 75%;
}

.club_screen_image {
	padding-right: 60px;
	padding-left: 60px;
}

.club_screen_image img {
	width: 75%;
}












