@charset "utf-8";

* {
	box-sizing: border-box;
}
body {
	position: relative;
	margin: 0;
	font-weight: 900;
	color: #131834;
	font-family: 'Noto Sans JP', sans-serif !important;
	line-height: normal;
}
img {
	display: block;
	max-width: 100%;
}
a {
	display: block;
	text-decoration: none;
}
ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
h1,h2,h3,h4,h5,h6 {
	margin: 0;
}
p {
	margin: 0;
}
section {
	padding: 10rem 0;
}
i {
	font-style: normal;
}

/* common */
.inner {
	margin: auto;
	padding: 0 2rem;
	max-width: 1320px;
	box-sizing: content-box;
}
.common_h2 {
	margin-bottom: 4rem;
	font-size: 60px;
	color: #131834;
	font-weight: 900;
}
.common_h2 span {
	display: block;
	font-size: .3em;
	font-weight: 900;
}
.common_color {
	color: #b29059;
}
.common_indent {
	display: inline-block;
	text-indent: -.5em;
}
.sp_only,
.tb_wide_only,
.tb_only {
	display: none;
}
.tax {
	color: #b29059;
	font-size: .5em;
}
.to_top {
	position: fixed;
	bottom: -5rem;
	right: 2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 5rem;
	height: 5rem;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	color: #131834;
	border-radius: 50%;
	background-color: #b29059;
	transition: bottom .3s;
	-webkit-transition: bottom .3s;
	-moz-transition: bottom .3s;
	-ms-transition: bottom .3s;
	-o-transition: bottom .3s;
}
.to_top.show {
	bottom: 2rem;
}
.to_top img {
	margin: -1.25rem auto -.3rem;
	width: 2.5rem;
}
.to_top span {
	font-size: .5em;
}
.to_top span,
.to_top b {
	line-height: 1.3;
}

/* header */
.header {
	position: relative;
	z-index: 2;
}
.header_flex {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: auto;
	padding: 4rem 2rem 0;
	max-width: 1792px;
	box-sizing: content-box;
}
.header_logo {
	width: calc((324 / 1920) * 100vw);
}
.header_logo a {
	padding-bottom: calc((4 / 1920) * 100vw);
	border-bottom: solid 4px #b29059;
}
.header_cta {
	display: flex;
	align-items: center;
	padding: 1.25vw 2.5vw;
	color: #fff;
	font-size: .729166666666667vw;
	border-radius: 3rem;
	letter-spacing: 2.8px;
	background-color: #131834;
}
.header_cta span {
	margin-right: 2.916666666666667vw;
}
.header_cta b {
	width: .9375vw;
}

/* mv */
#mv {
	padding: 0;
	background-color: #f5f2eb;
}
.mv_flex {
	display: flex;
	align-items: flex-end;
}
.mv_flex_left {
	padding: 0 2.5vw 2.5vw;
	flex: 1;
	width: 54%;
}
.mv_slide {
	margin-bottom: 9.58333333333333vw;
}
.mv_slide li {
	font-size: 3.333333vw;
	color: #131834;
}
.mv_slide li span {
	display: block;
	text-indent: -.5em;
}
.mv_flex_right {
	width: 47.396%;
}
.mv_bunner {
	width: calc((256 / 1920) * 100vw);
}
.slick-dots {
	display: flex;
	justify-content: center;
	margin-top: 1rem;
}
.slick-dots li {
	width: calc((16 / 1920) * 100vw);
	height: calc((16 / 1920) * 100vw);
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border: 1px solid #131834;
	background-color: transparent;
	transition: background-color .3s;
	-webkit-transition: background-color .3s;
	-moz-transition: background-color .3s;
	-ms-transition: background-color .3s;
	-o-transition: background-color .3s;
}
.slick-dots li.slick-active {
	background-color: #131834;
}
.slick-dots li:not(:last-child) {
	margin-right: calc((8 / 1920) * 100vw);
}
.slick-dots li button {
	display: none;
}
.mv_mid_b {
	font-size: calc((57 / 1920) * 100vw);
}
.mv_small_p {
	font-size: calc((28 / 1920) * 100vw);
}
.mv_small_p a {
	color: #131834;
	text-decoration: underline;
}
.mv_small_p a .patent_icon {
	display: inline-block;
	margin-left: .5rem;
	width: 1em;
	vertical-align: middle;
	text-indent: -.5em;
	transform: translateY(-2px);
}

/* sec01 */
.service_ul {
	display: flex;
	margin-bottom: 1.5rem;
}
.service_ul li {
	padding: 2rem;
	width: 33.3333%;
	border-radius: 1rem;
	background-color: #f5f2eb;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.service_ul li:first-child {
	margin-right: 2rem;
}
.service_ul .img_wrap {
	padding-top: 100%;
	position: relative;
}
.service_ul .img_wrap img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.span_small {
	display: block;
	margin-top: 1rem;
	font-size: 14px;
}
#sec01 .common_h2 p {
	font-size: 23px;
}

/* sec02 */
#sec02 {
	background-color: #f5f2eb;
}
.common_h3 {
	display: inline-block;
	padding-bottom: .5rem;
	line-height: 1;
	font-size: 32px;
	font-weight: 900;
	border-bottom: solid 4px #b29059;
}
.patent_wrap {
	margin: 2rem 0 1rem;
	padding: 2rem;
	border-radius: 1rem;
	background-color: #fff;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.patent_wrap img {
	margin: auto;
	max-width: none;
	width: 100%;
}
.patent_a {
	display: flex;
	align-items: center;
	margin-top: .5rem;
	color: #131834;
	text-decoration: underline;
}
.patent_icon {
	width: 1.5em;
}
.time_p {
	margin-top: 1rem;
}
.time_wrap {
	margin-top: 2rem;
	padding: 2rem;
	border-radius: 1rem;
	background-color: #f5f2eb;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.time_wrap img {
	max-width: none;
	width: 100%;
	overflow: hidden;
	border-radius: 1rem;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}

/* sec04 */
#sec04 {
	background-color: #f5f2eb;
}
.validity_ul {
	display: flex;
	justify-content: space-between;
	margin-top: 2rem;
	padding: 2rem;
	border-radius: 1rem;
	background-color: #fff;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.validity_ul li {
	width: calc(50% - 1rem);
}
.wide {
	margin: 4rem 0 0 auto;
	padding: 4rem;
	color: #fff;
	width: calc(100% - (100% - 1320px) / 2);
	background-color: #131834;
	border-radius: 1rem 0 0 1rem;
	-webkit-border-radius: 1rem 0 0 1rem;
	-moz-border-radius: 1rem 0 0 1rem;
	-ms-border-radius: 1rem 0 0 1rem;
	-o-border-radius: 1rem 0 0 1rem;
}
#sec04 .wide h2 {
	text-indent: -.5em;
}
.wide h2 {
	margin-bottom: 2rem;
	font-size: 60px;
	font-weight: 900;
}
.wide p {
	font-size: 18px;
	line-height: 1.75;
}
.wide strong {
	display: block;
	margin: .75rem 0;
	font-size: 28px;
}
.wide b {
	font-size: 28px;
}

/* sec05 */
.hygiene_flex {
	display: flex;
	align-items: center;
}
.hygiene_text {
	flex-shrink: 0;
}
.hygiene_text .common_h2 p {
	margin: 0;
}
.hygiene_text .common_h2 p:nth-child(2) {
	text-indent: -.5em;
}
.hygiene_text p {
	margin-top: 1rem;
}
.hygiene_img {
	flex: 1;
	margin-left: 4rem;
	padding: 2rem;
	border-radius: 1rem;
	background-color: #f5f2eb;
}
.hygiene_img div {
	position: relative;
	padding-top: 100%;
	overflow: hidden;
}
.hygiene_img div img {
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	display: block;
	object-fit: contain;
}

/* sec06 */
#sec06 {
	background-color: #f5f2eb;
}
#sec06 .common_h2 p {
	text-indent: -.5em;
}
.performance_ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.performance_ul li {
	position: relative;
	padding: 4rem 2rem 2rem;
	width: calc(50% - 1rem);
	font-size: 16px;
	font-weight: bold;
	line-height: 1.75;
	border-radius: 1rem;
	letter-spacing: 1.6px;
	background-color: #fff;
	border: 4px solid #131834;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.performance_ul li::before {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 32px;
	font-weight: bold;
	letter-spacing: normal;
	margin: auto;
	width: 4rem;
	height: 4rem;
	position: absolute;
	top: -2rem;
	left: 0;
	right: 0;
	background-color: #fff;
	border: solid 4px #131834;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
}
.performance_ul li:nth-child(1)::before {
	content: "01";
}
.performance_ul li:nth-child(2)::before {
	content: "02";
}
.performance_ul li:nth-child(3)::before {
	content: "03";
}
.performance_ul li:nth-child(4)::before {
	content: "04";
}
.performance_ul li:nth-child(-n+2) {
	margin-bottom: 4rem;
}
.performance_ul li b {
	display: block;
	margin-bottom: 1rem;
	font-size: 22px;
	font-weight: 900;
	line-height: normal;
	letter-spacing: 2.2px;
	color: #b29059;
}

/* sec07 */
.consideration_ul {
	margin-top: 7.125rem;
	padding-left: 3.125rem;
}
.consideration_ul li {
	position: relative;
	padding: 2rem 4rem;
	border-radius: 1rem;
	font-weight: 900;
	background-color: #f5f2eb;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.consideration_ul li:not(:last-child) {
	margin-bottom: 5rem;
}
.number {
	position: absolute;
	top: -3.125rem;
	left: -3.125rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	width: 6.25rem;
	height: 6.25rem;
	line-height: 1;
	font-size: 32px;
	font-weight: bold;
	border-radius: 50%;
	background-color: #fff;
	border: solid 4px #131834;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
}
.number span {
	color: #b29059;
	font-size: .375em;
}
.consideration_ul li h4 {
	margin-bottom: .5rem;
	font-weight: 900;
}
.consideration_ul li h4 strong {
	font-size: 48px;
}
.consideration_ul li h4 b {
	font-size: 24px;
}

/* sec08 */
#sec08 {
	background-color: #f5f2eb;
}
.price {
	margin-top: 2rem;
	padding: 2rem;
	border-radius: 1rem;
	font-size: 24px;
	background-color: #fff;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.price ul {
	display: flex;
	padding-left: 2rem;
	list-style: disc;
}
.price ul li:not(:first-child) {
	margin-left: 5rem;
}
.price p {
	text-align: right;
	margin-top: 1rem;
	font-size: 16px;
}
#sec08 .wide {
	border-radius: 0 1rem 1rem 0;
	margin: 4rem auto 0 0;
	-webkit-border-radius: 0 1rem 1rem 0;
	-moz-border-radius: 0 1rem 1rem 0;
	-ms-border-radius: 0 1rem 1rem 0;
	-o-border-radius: 0 1rem 1rem 0;
}
#sec08 .wide h2 {
	margin-bottom: 4rem;
}
.price_table {
	margin-top: 2rem;
}
.price_table table {
	border-collapse: collapse;
}
.price_table table th,
.price_table table td {
	padding: 1rem;
	border: 2px solid #fff;
}
.price_table table th {
	font-size: 20px;
	white-space: nowrap;
}
.price_table table td {
	text-align: center;
}
.price_table tr:first-child th {
	font-size: 24px;
	font-weight: 900;
	text-align: center;
}
.price_table tr:first-child th:first-child {
	border: transparent;
}
.price_table tr:first-child th:nth-child(2) {
	color: #b29059;
}
.price_table tr:not(:first-child) th {
	text-align: left;
}
.price_table tr th span {
	display: block;
	font-size: 12px;
}
.price_table tr td:first-of-type {
	font-size: 18px;
}
#sec08 .wide {
	text-align: right;
}
#sec08 .wide_inner {
	display: inline-block;
	text-align: left;
}
.ste,
.other {
	display: none;
}
#sec08 table .tax {
	color: #fff;
}

/* sec09 */
.case_wrap {
	margin: 2rem 0 7rem;
	padding: 2rem;
	border-radius: 1rem;
	background-color: #f5f2eb;
}
.case_wrap ul {
	display: flex;
	padding-left: 2rem;
	font-size: 24px;
	list-style: disc;
}
.case_wrap ul li:not(:first-child) {
	margin-left: 5rem;
}
.case_wrap p {
	text-align: right;
	margin-top: 1rem;
	font-size: 16px;
}
.case_ul {
	display: flex;
	justify-content: space-between;
}
.case_ul li {
	position: relative;
	padding: 5rem 2rem 2rem;
	width: calc(33.3333% - (4rem /3));
	font-size: 48px;
	text-align: center;
	border-radius: 1rem;
	background-color: #f5f2eb;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.case_ul li .num,
.flow_ul li .num {
	position: absolute;
	top: -3.125rem;
	left: 0;
	right: 0;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	margin: auto;
	width: 6.25rem;
	height: 6.25rem;
	font-size: 32px;
	line-height: 1;
	border-radius: 50%;
	border: solid 3px #131834;
	background-color: #fff;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
}
.flow_ul li .num i,
.case_ul li .num i {
	font-size: .375em;
	color: #b29059;
}
.case_h4 {
	margin-bottom: 1rem;
	font-size: .5em;
}
.case_area,
.case_price {
	margin-bottom: 1rem;
	padding: 1rem 1.5rem;
	border-radius: .5rem;
	background-color: #fff;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}
.case_area > b,
.case_price > b {
	display: block;
	color: #b29059;
	font-size: .3333em;
}
.case_area p {
	font-size: .5em;
}
.case_area p span {
	font-size: .666667em;
}
.case_price p b {
	font-weight: 900;
}
.case_price p span {
	font-size: .8261em;
}
.case_img {
	overflow: hidden;
	border-radius: .5rem;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}
.case_note {
	display: inline-block;
	margin-top: 1rem;
	text-align: left;
	font-size: 14px;
}
.case_strong_wrap {
	text-align: center;
}
.case_strong {
	display: inline-block;
	margin: 4rem auto 0;
	text-align: left;
	font-size: 32px;
	line-height: 1.5;
}
.case_note_wrap {
	text-align: right;
}

/* sec10 */
#sec10 {
	background-color: #f5f2eb;
}
.flow_b {
	display: block;
	margin: 4rem 0;
	padding: 2rem;
	width: 11.7em;
	color: #fff;
	font-size: 24px;
	line-height: 1;
	border-radius: 1rem;
	background-color: #131834;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.flow_ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flow_ul li {
	position: relative;
	padding: 5rem 2rem 2rem;
	width: calc(25% - (6rem / 4));
	text-align: center;
	border-radius: 1rem;
	background-color: #fff;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.flow_ul li:nth-child(-n+4) {
	margin-bottom: 5rem;
}
.flow_title {
	display: block;
	margin-bottom: 1.5rem;
	line-height: 1;
	font-size: 24px;
	font-weight: 900;
}
.flow_img {
	overflow: hidden;
	border-radius: .5rem;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}
.flow_p {
	margin-top: 1rem;
	font-size: 14px;
}

/* sec11 */
.meter_p {
	margin-top: .5rem;
}

/* sec12 */
#sec12 {
	 background-color: #f5f2eb;
}
.result_p {
	margin-top: 1rem;
}
.result_img_flex {
	display: flex;
	margin-top: 2rem;
	max-width: 780px;
}
.result_img img {
	max-width: none;
	width: 100%;
}
.result_img:first-child {
	width: 60%;
}
.result_img:last-child {
	width: 49%;
}
.result_b {
	display: inline-block;
	margin: 0 0 2rem;
	padding: 2rem;
	color: #fff;
	font-size: 24px;
	border-radius: 1rem;
	background-color: #131834;
}
.result_ul {
	display: flex;
	justify-content: space-between;
}
.result_ul > li {
	padding: 2rem;
	width: calc(33.3333% - (4rem / 3));
	background-color: #fff;
	border-radius: 1rem;
}
.result_ul_p {
	margin-bottom: 1rem;
	font-size: 32px;
	text-align: center;
}
.ba_ul {
	display: flex;
	justify-content: space-between;
}
.ba_ul li {
	width: calc(50% - .5rem);
}
.before,
.after {
	margin-bottom: .5rem;
	padding: 1rem;
	text-align: center;
	color: #fff;
	font-size: 24px;
	border-radius: .5rem;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}
.before {
	background-color: #131834;
}
.after {
	background-color: #B29059;
}
.ba_img_wrap {
	overflow: hidden;
	border-radius: .5rem;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}

/* sec13 */
.certificate_flex {
	display: flex;
	margin-top: 2rem;
	max-width: 770px;
}
.certificate_left {
	margin-right: 2rem;
	width: 50%;
}
.certificate_left li:first-child {
	margin-bottom: 1rem;
}
.certificate_right {
	width: 43%;
}

/* sec14 */
#sec14 {
	background-color: #f5f2eb;
}
.scene_ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 4rem;
}
.scene_ul li {
	padding: 2rem;
	width: calc(25% - (6rem / 4));
	border-radius: 1rem;
	background-color: #fff;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.scene_ul li:nth-child(-n+4) {
	margin-bottom: 2rem;
}
.scene_ul h5 {
	margin-bottom: 1rem;
	line-height: 1;
	font-size: 24px;
	text-align: center;
}
.scene_ul div {
	overflow: hidden;
	border-radius: .5rem;
	-webkit-border-radius: .5rem;
	-moz-border-radius: .5rem;
	-ms-border-radius: .5rem;
	-o-border-radius: .5rem;
}
.space_p {
	margin: 4rem 0 2rem;
}
.space_ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.space_ul li {
	width: calc(33.333% - (4rem / 3));
	overflow: hidden;
	border-radius: 1rem;
	-webkit-border-radius: 1rem;
	-moz-border-radius: 1rem;
	-ms-border-radius: 1rem;
	-o-border-radius: 1rem;
}
.space_ul li:nth-child(-n+3) {
	margin-bottom: 2rem;
}

/* sec17 */
#sec17 {
	color: #fff;
	background-color: #131834;
}
#sec17 .common_h2 {
	margin-bottom: 2rem;
	color: #fff;
}
.banner_flex {
	display: flex;
	align-items: flex-end;
}
.banner_text {
	margin-right: 2rem;
	flex-shrink: 0;
}
.banner_ul {
	display: flex;
	font-size: 48px;
}
.banner_ul li:not(:last-child) {
	margin-right: 4rem;
}
.banner_img {
	padding: 2rem;
	border-radius: 1rem;
	background-color: #F5F2EB;
}

/* footer */
.footer {
	padding: 1rem 0;
	background-color: #F5F2EB;
}
.footer_flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer_small {
	font-size: 32px;
}
.footer_p {
	margin-top: .5rem;
	font-size: 16px;
}
.footer_p span:first-child {
	margin-right: 1rem;
}
.footer_tel {
	display: flex;
	align-items: center;
	padding: 1rem 2rem;
	color: #fff;
	font-size: 40px;
	background-color: #131834;
	border-radius: 4rem;
	-webkit-border-radius: 4rem;
	-moz-border-radius: 4rem;
	-ms-border-radius: 4rem;
	-o-border-radius: 4rem;
}
.footer_tel span {
	margin-right: 1rem;
	font-size: .8em;
}

@media screen and (max-width: 1380px) {
	/* common */
	.common_h2 {
		font-size: 50px;
	}
	.wide {
		margin: 3rem 0 0 auto;
		padding: 3rem 4rem;
		width: 100%;
	}
	.wide h2 {
		font-size: 50px;
	}

	/* sec08 */
	.price ul li:not(:first-child) {
		margin-left: 4rem;
	}
}

@media screen and (max-width: 1200px) {
	/* tag */
	section {
		padding: 6rem 0;
	}

	/* common */
	.common_h2 {
		margin-bottom: 2rem;
		font-size: 40px;
	}
	.common_h3 {
		font-size: 24px;
	}
	.tb_wide_only {
		display: block;
	}
	.wide h2 {
		font-size: 40px;
	}
	
	/* sec05 */
	.hygiene_img {
		margin-left: 2rem;
		padding: 2rem 1rem;
	}

	/* sec06 */
	.performance_ul {
		margin-top: 4rem;
	}
	.performance_ul li {
		padding: 4rem 1rem 2rem;
		width: calc(50% - .5rem);
	}
	.performance_ul li:nth-child(-n+2) {
		margin-bottom: 3rem;
	}
	.performance_ul li b {
		font-size: 20px;
	}
	.performance_ul li p {
		text-align: justify;
	}

	/* sec07 */
	.consideration_ul {
		margin-top: 4.25rem;
		padding-left: 2.25rem;
	}
	.consideration_ul li {
		padding: 2rem;
	}
	.consideration_ul li:not(:last-child) {
		margin-bottom: 3.25rem;
	}
	.number {
		width: 4.5rem;
		height: 4.5rem;
		font-size: 24px;
		top: -2.25rem;
		left: -2.25rem;
	}
	.consideration_ul li h4 strong {
		font-size: 40px;
	}

	/* sec08 */
	.price {
		font-size: 20px;
	}
	.price ul li:not(:first-child) {
		margin-left: 3rem;
	}

	/* sec09 */
	.case_wrap ul {
		font-size: 20px;
	}
	.case_wrap ul li:not(:first-child) {
		margin-left: 3rem;
	}
	.case_ul li {
		padding: 3.25rem 1rem 2rem;
		width: calc(33.3333% - (2rem /3));
		font-size: 38px;
	}
	.case_ul li .num, .flow_ul li .num {
	top: -2.25rem;
	width: 4.5rem;
	height: 4.5rem;
	font-size: 24px;
}

	/* sec10 */
	.flow_ul li {
		padding: 3.25rem 1rem 2rem;
		width: calc(25% - (3rem / 4));
	}
	.flow_ul li:nth-child(-n+4) {
		margin-bottom: 3.25rem;
	}
	.flow_title {
		font-size: 20px;
	}

	/* sec12 */
	.result_ul > li {
		padding: 2rem 1rem;
		width: calc(33.3333% - (2rem / 3));
	}
	.result_ul_p {
		font-size: 24px;
	}
	.before,
	.after {
		font-size: 20px;
		line-height: 1;
	}

	/* sec14 */
	.scene_ul li {
		padding: 2rem 1rem;
		width: calc(25% - (3rem / 4));
	}
	.scene_ul h5 {
		font-size: 20px;
	}
	.scene_ul li:nth-child(-n+4) {
		margin-bottom: 1rem;
	}

	/* sec16 */
	.space_ul li {
		width: calc(33.333% - (2rem / 3));
	}
	.space_ul li:nth-child(-n+3) {
		margin-bottom: 1rem;
	}

	/* sec17 */
	.banner_ul {
		font-size: 40px;
	}
	.banner_ul li:not(:last-child) {
		margin-right: 2rem;
	}
	.banner_img {
		padding: 1rem;
	}
}

@media screen and (max-width: 1024px) {
	/* tag */
	section {
		padding: 6rem 0;
	}

	/* common */
	.inner {
		padding: 0 1rem;
	}
	.common_h2 {
		margin-bottom: 2rem;
		font-size: 32px;
	}
	.common_h2 span {
		font-size: .4375em;
	}
	.common_h3 {
		font-size: 24px;
	}
	.wide {
		padding: 3rem 2rem;
	}
	.wide h2 {
		font-size: 32px;
	}
	.wide p {
		font-size: 14px;
	}

	/* header */
	.header_flex {
		padding: 2rem 1rem 0;
	}

	/* sec01 */
	.service_ul li {
		padding: 1rem;
		width: calc(33.3333% - 1rem);
	}
	.service_ul li:first-child {
		margin-right: 1rem;
	}
	#sec01 .text_wrap {
		font-size: 14px;
	}

	/* sec03 */
	.time_wrap {
		padding: 1rem;
	}

	/* sec04 */
	.validity_ul {
		padding: 1rem;
	}
	.validity_ul li {
		width: calc(50% - .5rem);
	}

	/* sec05 */
	.hygiene_flex {
		align-items: unset;
		flex-direction: column;
	}
	.hygiene_text {
		width: auto;
		flex-shrink: unset;
	}
	.hygiene_img {
		margin: 2rem auto 0 0;
		padding: 1rem;
		width: 40%;
	}

	/* sec06 */
	.performance_ul {
		margin-top: 3rem;
	}
	.performance_ul li {
		padding: 4rem 1rem 2rem;
		width: calc(50% - .5rem);
	}
	.performance_ul li b {
		font-size: 16px;
		line-height: normal;
	}
	.performance_ul li p {
		font-size: 14px;
	}

	/* sec07 */
	.consideration_ul li h4 strong {
		font-size: 40px;
	}
	.consideration_ul li h4 b {
		font-size: 18px;
	}
	.consideration_ul li p {
		font-size: 14px;
	}

	/* sec08 */
	.price {
		padding: 2rem 1rem;
		font-size: 16px;
	}
	.price ul li:not(:first-child) {
		margin-left: 2.5rem;
	}
	.price p {
		margin-top: .5rem;
	}
	#sec08 .wide {
		padding: 3rem 1rem;
	}
	#sec08 .wide h2 {
		margin-bottom: 2rem;
	}
	.price_table table th,
	.price_table table td {
		font-size: 14px;
	}
	.price_table tr td:first-of-type {
		font-size: 16px;
	}

	/* sec09 */
	.case_wrap ul {
		font-size: 16px;
	}
	.case_wrap ul li:not(:first-child) {
		margin-left: 2.5rem;
	}
	.case_ul li {
		font-size: 28px;
	}
	.case_wrap {
		margin: 2rem 0 4rem;
	}
	.case_wrap p {
		margin-top: .5rem;
	}
	.case_area,
	.case_price {
		padding: 1rem;
	}
	.case_area > b,
	.case_price > b {
		font-size: .5em;
	}
	.case_area p {
		font-size: .625em;
	}
	.case_strong {
		font-size: 28px;
	}

	/* sec10 */
	.case_ul li .num,
	.flow_ul li .num {
		top: -1.75rem;
		width: 3.5rem;
		height: 3.5rem;
		font-size: 18px;
	}
	.flow_ul li {
		padding: 3.25rem .5rem 2rem;
		width: calc(25% - (1.5rem / 4));
	}
	.flow_title {
		font-size: 16px;
	}

	/* sec14 */
	.scene_ul h5 {
		font-size: 16px;
	}
}

@media screen and (max-width: 768px) {
	/* common */
	.common_h3 {
		font-size: 18px;
	}
	.tb_only {
		display: block;
	}
	.to_top {
		right: 1rem;
	}
	.to_top.show {
		bottom: 1rem;
	}

	/* header */
	.header_flex {
		padding: 1.5rem 1rem 0;
	}
	.header_logo a {
		border-bottom: solid 2px #b29059;
	}

	/* sec02 */
	.patent_wrap {
		padding: 1rem;
	}

	/* sec06 */
	.performance_ul {
		flex-direction: column;
	}
	.performance_ul li {
		width: auto;
	}
	.performance_ul li:nth-child(-n+3) {
		margin-bottom: 3rem;
	}

	/* seac07 */
	.consideration_ul li h4 strong {
		font-size: 32px;
	}

	/* sec08 */
	.price{
		font-size: 14px;
	}
	.price ul li {
		text-indent: -.5em;
	}
	.price ul li:not(:first-child) {
			margin-left: 1.7rem;
	}
	#sec08 .wide_inner {
		display: block;
	}
	.price_table table,
	.price_table table tbody,
	.price_table table tr,
	.price_table table th,
	.price_table table td {
		display: block;
	}
	.price_table table th,
	.price_table td:not(:last-child) {
		border-bottom: 0px;
	}
	.price_table tr:first-child {
		display: none;
	}
	.price_table tr:not(:last-child) {
		margin-bottom: 1rem;
	}
	.price_table tr:not(:first-child) th {
		text-align: center;
	}
	.price_table table th {
		font-size: 24px;
	}
	.price_table table td {
		position: relative;
	}
	.ste,
	.other {
		display: flex;
		align-items: center;
		position: absolute;
			top: 0;
			left: 0;
			bottom: -2px;
		padding: 1em;
		width: 24%;
		z-index: 1;
	}
	.ste {
		color: #b29059;
		font-size: calc((18 / 768) * 100vw );
		border-right: 2px solid #fff;
		background-color: #fff;
		border-bottom: 2px solid #131834;
	}
	.other {
		color: #131834;
		font-size: calc((16 / 768) * 100vw );
		border-right: 2px solid #fff;
		background-color: #fff;
	}
	.price_table td:not(:last-child) .other {
		border-bottom: 2px solid #131834;
	}
	#sec08 .tb_wide_only {
		display: none;
	}


	/* sec09 */
	.case_wrap {
		padding: 2rem 1rem;
	}
	.case_wrap li {
		text-indent: -.5em;
	}
	.case_wrap ul {
		font-size: 14px;
	}
	.case_wrap ul li:not(:first-child) {
		margin-left: 1.75rem;
	}
	.case_ul {
		flex-direction: column;
	}
	.case_ul li {
		width: auto;
		font-size: 35px;
	}
	.case_ul li:not(:last-child) {
		margin-bottom: 3rem;
	}
	.case_h4 {
		font-size: .625em;
	}
	.case_strong {
		font-size: 24px;
	}

	/* sec10 */
	.flow_ul li {
		padding: 3.25rem 1rem 2rem;
		width: calc(50% - .5rem);
	}
	.flow_ul li:nth-child(-n+6) {
		margin-bottom: 3rem;
	}
	.flow_title {
		font-size: 18px;
	}

	/* sec12 */
	.result_ul {
		flex-direction: column;
	}
	.result_ul > li {
		padding: 2rem 1rem 1rem;
		width: 100%;
	}
	.result_ul > li:not(:last-child) {
		margin-bottom: 1rem;
	}

	/* sec14 */
	.scene_ul li {
		width: calc(50% - .5rem);
	}
	.scene_ul h5 {
		font-size: 18px;
	}
	.scene_ul li:nth-child(-n+7) {
		margin-bottom: 1rem;
	}

	/* sec16 */
	.space_ul li {
		width: calc(50% - .5rem);
	}
	.space_ul li:nth-child(-n+4) {
		margin-bottom: 1rem;
	}

	/* sec17 */
	.banner_flex {
		flex-direction: column;
	}
	.banner_text {
		margin: 0 0 2rem;
		width: 100%;
	}
	.banner_ul {
		font-size: 32px;
	}
	.banner_ul li:not(:last-child) {
		margin-right: 1em;
	}

	/* footer */
	.footer_flex {
		flex-direction: column;
	}
	.footer_small {
		margin-bottom: 1rem;
	}
	.footer_tel {
		justify-content: center;
		width: 80%;
		font-size: 32px;
	}
}

@media screen and (max-width: 560px) {
	/* tags */
	section {
		padding: 4rem 0;
	}

	/* common */
	.sp_only {
		display: block;
	}
	.common_h2 {
		font-size: 20px;
	}
	.common_h2 span {
		font-size: calc((11 / 375) * 100vw);
	}
	.common_h3 {
		padding-bottom: .25rem;
		line-height: normal;
		border-bottom: 2px solid #b29059;
	}
	.wide {
		margin-top: 2rem;
		padding: 2rem 1rem;
	}
	.wide h2 {
		font-size: 20px;
	}
	.wide strong {
		font-size: 18px;
	}
	.wide p {
		font-size: 12px;
		font-weight: 400;
	}
	.sp_hidden {
		display: none;
	}

	/* header */
	.header_logo {
		width: calc((170 / 375) * 100vw);
	}
	.header_logo a {
		padding-bottom: .125rem;
	}
	.header_cta {
		padding: 1vw 5vw;
		letter-spacing: 1.5px;
		font-size: calc((11 / 375) * 100vw);
	}
	.header_cta b {
		width: 4vw;
		transform: translateY(1px);
		-webkit-transform: translateY(1px);
		-moz-transform: translateY(1px);
		-ms-transform: translateY(1px);
		-o-transform: translateY(1px);
}
.header_cta span {
		margin-right: 2vw;
	}

	/* mv */
	.mv_flex {
		flex-direction: column;
		height: 100vh;
	}
	.mv_flex_left {
	padding: 5rem 1rem 0;
	width: 100%;
	height: 44vh;
	background-color: #f5f2eb;
	}
	.mv_flex_right {
		width: 100%;
		height: 56vh;
		overflow: hidden;
	}
	.mv_slide li {
		font-size: 24px;
	}
	.mv_mid_b {
		font-size: calc((21 / 375) * 100vw);
	}
	.mv_small_p {
		margin-top: calc((8 / 375) * 100vw);
		font-size: calc((14 / 375) * 100vw);
	}
	.mv_bunner {
		display: none;
	}
	.mv_slide {
		margin-bottom: 0;
	}

	/* sec01 */
	.service_ul li {
		width: calc(50% - .5rem);
	}
	#sec01 .common_h2 span {
		margin-bottom: .25rem;
	}
	#sec01 .text_wrap {
		font-size: 12px;
		font-weight: 400;
		text-align: justify;
		line-height: 1.75;
	}
	.text_wrap p:not(:last-child) {
		margin-bottom: 1rem;
	}
	.span_small {
		font-size: 12px;
		font-weight: 400;
		line-height: 1.75;
	}
	#sec01 .common_h2 p {
		font-size: 12px;
		font-weight: 400;
		line-height: 1.5;
		margin-top: 1rem;
	}

	/* sec02 */
	.patent_wrap {
		margin: 1rem 0;
	}
	.patent_a {
		display: block;
	}
	.patent_icon {
		display: inline-block;
		width: 1em;
		transform: translateY(2px);
	}
	.text_wrap p {
		font-size: 12px;
		font-weight: 400;
	}
	.patent_a {
		font-size: 10px;
		font-weight: 400;
	}

	/* sec03 */
	.time_p {
		font-size: 12px;
		font-weight: 400;
	}

	/* sec05 */
	.hygiene_img {
		width: 100%;
	}
	.hygiene_text > p {
		font-size: 12px;
		font-weight: 400;
	}

	/* sec06 */
	.performance_ul li {
		padding: 2rem 1rem 2rem;
	}
	.performance_ul li::before {
		width: 3rem;
		height: 3rem;
		font-size: 20px;
	}
	.performance_ul li b {
		font-size: 18px;
		text-align: center;
	}
	.performance_ul li p {
		font-size: 12px;
		font-weight: 400;
		letter-spacing: normal;
	}

	/* sec07 */
	.consideration_ul {
		padding: 0;
	}
	.number {
		width: 4rem;
		height: 4rem;
		top: -2rem;
		left: 0;
		right: 0;
		margin: auto;
	}
	.consideration_ul li {
		padding: 3rem 1rem 1rem;
	}
	.consideration_ul li h4 strong {
		font-size: 24px;
	}
	.consideration_ul li h4 b {
		font-size: 16px;
	}
	#sec07 .wide h2 {
		margin-bottom: 0;
	}
	.consideration_ul li p {
		font-size: 12px;
		font-weight: 400;
		line-height: 1.75;
	}
	#sec07 .wide {
		padding: 2rem;
	}
	#sec07 .wide b {
		font-size: 20px;
	}

	/* sec8 */
	.price ul {
		display: block;
		padding-left: 1.5rem;
	}
	.price ul li:not(:first-child) {
		margin-left: 0;
	}
	.price p {
		font-size: 12px;
		font-weight: 400;
	}
	.price_table table th {
		font-size: 20px;
	}
	.price_table table td {
		text-align: right;
		font-size: 10px;
	}
	.price_table tr td:first-of-type {
		font-size: 14px;
	}
	.ste,
	.other {
		padding: .5em;
		width: 31%;
	}
	.ste {
		font-size: calc((12 / 375) * 100vw );
	}
	.other {
		font-size: calc((12 / 375) * 100vw );
	}
	#sec08 .wide {
		margin-top: 2rem;
		padding: 2rem 1rem;
	}

	/* sec09 */
	.case_wrap ul {
		display: block;
	}
	.case_wrap ul li:not(:first-child) {
		margin-left: 0;
	}
	.case_wrap p {
		font-weight: 400;
		font-size: 12px;
	}
	.case_ul li {
		font-size: 24px;
	}
	.case_note {
		font-size: 11px;
		font-weight: 400;
	}
	.case_strong_wrap {
		text-align: left;
	}
	.case_strong {
		font-size: 20px;
	}
	.case_strong p {
		margin-bottom: .5rem;
	}
	.case_strong .common_h3 {
		font-size: 16px;
	}

	/* sec10 */
	.flow_b {
		padding: 1rem;
		font-size: 20px;
		text-align: center;
	}
	.flow_ul {
		display: block;
	}
	.flow_ul li {
		width: auto;
	}

	/* sec11 */
	.meter_p {
		font-size: 12px;
		font-weight: 400;
	}

	/* sec12 */
	.result_b {
		padding: 1rem;
		font-size: 20px;
	}
	.result_ul > li {
		padding: 1rem;
	}
	.result_ul_p {
		font-size: 20px;
	}
	.before,
	.after {
		padding: .5rem;
		font-size: 16px;
	}
	.result_p {
		font-size: 12px;
		font-weight: 400;
	}

	/* sec13 */
	.certificate_text p {
		margin-bottom: .5rem;
		text-align: justify;
		font-size: 12px;
		font-weight: 400;
	}
	.certificate_flex {
		display: block;
	}
	.certificate_left {
		margin: 0 0 1rem;
	}

	/* sec14 */
	.scene_ul {
		display: block;
	}
	.scene_ul li {
		width: auto;
	}

	/* sec16 */
	.space_p {
		font-size: 14px;
		text-align: justify;
	}
	.space_ul {
		display: block;
	}
	.space_ul li {
		width: auto;
	}
	.space_ul li:nth-child(-n+5) {
		margin-bottom: 1rem;
	}
	.space_p {
		font-size: 12px;
		font-weight: 400;
	}

	/* sec17 */
	.banner_ul {
		font-size: 23px;
	}

	/* footer */
	.footer {
		padding-bottom: 7rem;
	}
	.footer_small {
		font-size: 20px;
	}
	.footer_p {
		font-size: 14px;
	}
	.footer_p span {
		display: block;
	}
	.footer_tel {
		width: 100%;
		font-size: 24px;
		line-height: 1;
	}
}