@charset "utf-8";/* --------------------------------------------------- *//* Main Visual *//* --------------------------------------------------- */#mv {	position: relative;	z-index: 1;	box-sizing: border-box;	padding: 0 4%;	width: 100%;	min-height: 480px;	background-color: #008dff;}#mv .sitetitle {	position: relative;	z-index: 111;	margin-left: auto;	margin-right: auto;	padding-top: 14.0em;	padding-bottom: 7.0em;	width: 86%;	max-width: 800px;	text-align: center;}#mv .sitetitle p {	display: block;	margin-left: auto;	margin-right: auto;	width: 52.5%;}#mv .sitetitle h1 { display: flex; justify-content: center; }#mv .sitetitle h1 span:first-child { width: 53.61%; }#mv .sitetitle h1 span:last-child { width: 46.38%; }#mv .sitetitle figure {	display: block;	margin-top: 1.0em;	margin-left: auto;	margin-right: auto;	width: 50%;}@media screen and (max-width: 767px) {	#mv .sitetitle {		padding-top: 10.0em;		padding-bottom: 4.0em;		width: 84%;	}	#mv .sitetitle p { width: 75%; }	#mv .sitetitle h1 { flex-direction: column; align-items: center;}	#mv .sitetitle h1 span:first-child { width: 100%; }	#mv .sitetitle h1 span:last-child { width: 92%; }	#mv .sitetitle figure { width: 75%; }}@media screen and (max-width: 420px) {	#mv .sitetitle {		padding-top: 7.0em;		padding-bottom: 3.0em;		width: 88%;	}}.drops {	position: absolute;	z-index:5;	top: 0;	bottom: 100%;	left: 0;	right: 0;	display: block;	width: 100%;	height: 100%;}.drops > div {	position: absolute;	transform: translate(-50%, -50%);	width: 30%;	max-width: 360px;	opacity: 0.8;}.drops .drop01 {	top:20%;	right: 55%;}.drops .drop02 {	top: 15%;	left: 70%;}.drops .drop03 {	top: 55%;	right: 50%;}.drops .drop04 {	top: 50%;	left: 75%;}.drops .drop05 {	top: 9%;	right: 60%;}.drops .drop06 {	top: 12%;	left: 90%;}.drops .drop07 {	top: 70%;	right: 60%;}.drops .drop08 {	top: 60%;	left: 85%;}@media screen and (max-width: 960px) {	.drops > div { width: 40%; }	.drops .drop01 {		top:20%;		right: 45%;	}	.drops .drop02 {		top: 15%;		left: 70%;	}	.drops .drop03 {		top: 55%;		right: 45%;	}	.drops .drop04 {		top: 62%;		left: 70%;	}	.drops .drop05 {		top: 12%;		right: 53%;	}	.drops .drop06 {		top: 4%;		left: 88%;	}	.drops .drop07 {		top: 60%;		right: 53%;	}	.drops .drop08 {		top: 50%;		left: 85%;	}}@media screen and (max-width: 640px) {	.drops > div { width: 50%; }	.drops .drop01 {		top: 22%;		right: 48%;	}	.drops .drop02 {		top: 14%;		left: 65%;	}	.drops .drop03 {		top: 55%;		right: 35%;	}	.drops .drop04 {		top: 65%;		left: 70%;	}	.drops .drop05 {		top: 10%;		right: 45%;	}	.drops .drop06 {		top: 4%;		left: 90%;	}	.drops .drop07 {		top: initial;		bottom: 11%;		right: 40%;	}	.drops .drop08 {		top: initial;		bottom: 15%;		left: 95%;	}}@media screen and (max-width: 420px) {	.drops > div { width: 60%; }	.drops .drop01 {		top: 22%;		right: 48%;	}	.drops .drop02 {		top: 14%;		left: 65%;	}	.drops .drop03 {		top: 55%;		right: 35%;	}	.drops .drop04 {		top: 55%;		left: 70%;	}	.drops .drop05 {		top: 10%;		right: 35%;	}	.drops .drop06 {		top: 3%;		left: 90%;	}	.drops .drop07 {		top: initial;		bottom: 11%;		right: 40%;	}	.drops .drop08 {		top: initial;		bottom: 15%;		left: 95%;	}}.balls {	position: absolute;	z-index: 6;	top: 0;	bottom: 0;	left: 0;	right: 0;	display: block;	width: 100%;	height: 100%;}.balls > div {	position: absolute;	transform: translate(-50%, -50%);	width: 30%;	max-width: 320px;}.balls > div span { display: block;margin-left: auto; margin-right: auto; }.balls .ball01 {	top: 25%;	right: 57%;}.balls .ball02 {	top: 15%;	left: 50%;}.balls .ball03 {	top: 24%;	left: 80%;}.balls .ball04 {	top: 60%;	right: 55%;}.balls .ball05 {	top: 75%;	left: 81%;}.balls .ball01 span {	width: 75%;}.balls .ball02 span {	width: 85%;}.balls .ball03 span {	width: 80%;}.balls .ball04 span {	width: 105%;}.balls .ball05 span {	width: 115%;}@media screen and (max-width: 767px) {	.balls > div { width: 40%; }	.balls .ball01 {		top: 20%;		right: 45%;	}	.balls .ball02 {		top: 10%;		right: initial;		left: 80%;	}	.balls .ball03 {		top: 50%;		left: 92%;	}	.balls .ball04 {		top: 60%;		right: 40%;	}	.balls .ball05 {		top: 88%;		left: 88%;	}}@media screen and (max-width: 420px) {	.balls > div { width: 50%; }	.balls .ball01 {		top: 20%;		right: 40%;	}	.balls .ball02 {		top: 8%;		left: 88%;	}	.balls .ball03 {		top: 48%;		left: 93%;	}	.balls .ball04 {		top: 55%;		right: 40%;	}	.balls .ball05 {		top: 85%;		left: 88%;	}}.balls > div {	opacity: 0.0;	animation-name:encount;	animation-duration: 2.5s;	animation-iteration-count: 1;	animation-timing-function: ease-out;	animation-fill-mode: forwards;	transform: translate(-50%, -50%) scale(0.5);}.balls > div.ball01 { animation-delay: 0.5s; }.balls > div.ball02 { animation-delay: 1.5s; }.balls > div.ball03 { animation-delay: 2.5s; }.balls > div.ball04 { animation-delay: 2.0s; }.balls > div.ball05 { animation-delay: 1.0s; }@keyframes encount {	0% {  opacity: 0.0; transform: translate(-50%, -10%) scale(0.4); }	100% {  opacity: 1.0; transform: translate(-50%, -50%) scale(1.0); }}.balls > div span {	position: relative;	animation-name:fluffy;	animation-duration: 2.5s;	animation-iteration-count: infinite;	animation-direction: alternate;	animation-timing-function: ease-in-out;}.balls > div.ball01 span { animation-delay: 0s; }.balls > div.ball02 span { animation-delay: 1.0s; }.balls > div.ball03 span { animation-delay: 2.0s; }.balls > div.ball04 span { animation-delay: 1.5s; }.balls > div.ball05 span { animation-delay: 2.5s; }@keyframes fluffy {	0% { top: 0; }	100% { top: 24px; }}@media screen and (max-width: 640px) {	@keyframes fluffy {		0% { top: 0; }		100% { top: 12px; }	}}@media screen and (max-width: 420px) {	@keyframes fluffy {		0% { top: 0; }		100% { top: 8px; }	}}/* --------------------------------------------------- *//* Intro *//* --------------------------------------------------- */#intro { position: relative; z-index: 1; }#intro.wave::after { background-image: url(../../img/mizumawari/wave-b.svg); }#intro .block-m { position: relative; z-index: 111;}#intro .btn-area { position: relative; z-index: 111;}#intro .tags {	display: flex;	flex-wrap: wrap;	align-items: center;	justify-content: center;	gap: 0 9%;	margin: 0 auto;	width: 90%;	max-width: 640px;}#intro .tags figure {	box-sizing: border-box;	width: 18%;}#intro .tags figure .kitchen-2 { fill: #f2945a; }#intro .tags figure .bath-2 { fill: #52b340; }#intro .tags figure .wash-2 { fill: #d972a9; }#intro .tags figure .toilet-2 { fill: #7d74b4; }#intro .tags figure::after {	content: attr(data-label)'';	display: block;	font-weight: 500;	text-align: center;}#intro .tags figure:first-child { color: #f2945a; }#intro .tags figure:nth-child(2) { color: #52b340; }#intro .tags figure:nth-child(3) { color: #d972a9; }#intro .tags figure:last-child { color: #7d74b4; }#intro .lead h2 {	font-size: 4.2rem;	font-weight: 600;	line-height: 1.5;	text-align: center;}#intro .lead h2 strong {	position: relative;	display: inline-block;	padding: 0 1.5em;}#intro .lead h2 strong::before,#intro .lead h2 strong::after {	content: '';	position: absolute;	display: block;	width: 108px;	padding-top: 108px;	background-size: cover;}#intro .lead h2 strong::before {	background-image: url('../../img/mizumawari/kira-lt-y.png');	bottom: 0;	left: 0;	transform: translate(-50%, 50%);}#intro .lead h2 strong::after {	background-image: url('../../img/mizumawari/kira-rt-y.png');	top: 0;	right: 0;	transform: translate(50%, -50%);}#intro .lead p {	font-size: 1.8rem;	font-weight: 400;	line-height: 2.5;	text-align: center;}@media screen and (max-width: 767px) {	#intro .lead h2 { font-size: 6.0vw; }	#intro .lead h2 strong::before {		bottom: 0;		left: 5%;	}	#intro .lead h2 strong::after {		top: 0;		right: 5%;	}}@media screen and (max-width: 540px) {	#intro .tags figure::after { font-size: 1.4rem; }	#intro .lead h2 strong::before {		bottom: 20%;		left: 8%;	}	#intro .lead h2 strong::after {		top: 10%;		right: 5%;	}	#intro .lead p { line-height: 2.0; text-align: left; }	#intro .lead p span { display: inline; }	#intro .lead p br { display: none; }}@media screen and (max-width: 420px) {	#intro .tags {		gap: 0 8%;		width: 96%;	}	#intro .tags figure { width: 18%; }	#intro .tags figure::after { font-size: 1.2rem; }	#intro .lead h2 { font-size: 6.3vw; }	#intro .lead h2 strong::before,	#intro .lead h2 strong::after {		width: 72px;		padding-top: 72px;	}	#intro .lead p { font-size: 1.6rem; }}/* Event *//* --------------------------------------------------- */.event {	 position: relative;	 z-index: 111;	margin: 2.0em auto 0;	padding: 1.75em;	width: 92%;	max-width: 800px;	background-color: #e5f3ff;	border-radius: 1.0em;}.event h3 {	margin-bottom: 0.5em;	color: #008dff;	font-size: 2.1rem;	font-weight: 600;	text-align: center;}/* --------------------------------------------------- *//* trust *//* --------------------------------------------------- */#trust { position: relative; background-color: #008dff;}#trust .block-lm { position: relative; }#trust h2 {	color: #fff;	font-size: 4.2rem;	font-weight: 600;	line-height: 1.4;	text-align: center;}#trust h2 strong {	position: relative;	display: inline-block;	padding: 0 1.5em;}#trust h2 strong::before,#trust h2 strong::after {	content: '';	position: absolute;	display: block;	width: 108px;	padding-top: 108px;	background-size: cover;}#trust h2 strong::before {	background-image: url('../../img/mizumawari/kira-lt-y.png');	bottom: 20%;	left: 0;	transform: translate(-50%, 50%);}#trust h2 strong::after {	background-image: url('../../img/mizumawari/kira-rt-y.png');	top: 15%;	right: 0;	transform: translate(50%, -50%);}#trust .value {	display: flex;	justify-content: space-between;	margin-left: auto;	margin-right: auto;	max-width: 800px;}#trust .value > div {	position: relative;	width: 44%;}#trust .value div:last-child::before {	content: '×';	right: 99%;	bottom: -25%;	position: absolute;	color: #fff;	font-size: 9.6rem;	font-weight: 600;}#trust .value h3 {	color: #fff;	font-size: 4.8rem;	font-weight: 600;	vertical-align: middle;	line-height: 1.4;	text-align: center;}#trust .value h3 em {	display: inline-block;	color: #ffff00;	font-size: 160%;	font-weight: 600;	vertical-align: -0.1em;}#trust .value h4 {	background-color: #fff;	border-radius: 640px;	color: #008dff;	font-size: 2.4rem;	font-weight: 500;	text-align: center;}#trust h3 {	color: #fff;	font-size: 3.2rem;	font-weight: 600;	line-height: 1.4;	text-align: center;}#trust h3 em {	color: #ffff00;	font-size: 150%;	font-weight: 600;	vertical-align: -0.1em;}#trust .pannels {	position: relative;	display: flex;	flex-wrap: wrap;	justify-content: space-between;	gap: 1.0em 0;	margin-left: auto;	margin-right: auto;	width: 90%;	max-width: 960px;}#trust .pannels > div {	box-sizing: border-box;	padding: 2.0em 0.75em;	width: 32%;	background-color: #fff;	border-radius: 18px;}#trust .pannels div[data-num] {	position: relative;}#trust .pannels div[data-num]::before {	content: attr(data-num)'';	display: block;	margin-left: auto;	margin-right: auto;	padding-top: 12px;	width: 72px;	background-image: url('../../img/mizumawari/trust-num.png');	background-repeat: no-repeat;	background-size: contain;	background-position: 50% 0;	color: #008dff;	font-family: "Jost", sans-serif;	font-size: 4.2rem;	font-weight: 600;	text-align: center;}#trust .pannels div[data-num] h3 {	color: #008dff;	font-size: 2.4rem;	font-weight: 600;	line-height: 1.2;	text-align: center;}#trust .pannels div[data-num] p {	margin-top: 0.75em;	line-height: 1.4;	text-align: center;}@media screen and (max-width: 960px) {	#trust .value > div { width: 46%; }	#trust .value div:last-child::before {		right: 94%;		bottom: -22%;		font-size: 8.0rem;	}	#trust .value h3 { font-size: 4.2rem; }}@media screen and (max-width: 767px) {	#trust h2 { font-size: 3.6rem; }	#trust h2 strong::before {		bottom: 5%;		left: 0;		transform: translate(-50%, 50%);	}	#trust h2 strong::after {		top: 10%;		right: 0;		transform: translate(50%, -50%);	}	#trust .value { flex-direction: column; max-width: 420px; }	#trust .value > div { width: 100%; }	#trust .value div:last-child::before {		position: static;		display: block;		margin-bottom: 0.20em;		font-size: 9.6rem;		line-height: 1.0em;		text-align: center;	}	#trust h3 { font-size: 2.8rem; }	#trust .pannels > div {		width: 49%;		border-radius: 16px;	}}@media screen and (max-width: 640px) {	#trust h2 { font-size: 3.2rem; }	#trust h2 strong::before {		bottom: 5%;		left: 0;		transform: translate(-50%, 50%);	}	#trust h2 strong::after {		top: 10%;		right: 0;		transform: translate(50%, -50%);	}	#trust .pannels div[data-num]::before {		padding-top: 12px;		width: 64px;		font-size: 3.6rem;	}	#trust .pannels div[data-num] h3 { font-size: 2.1rem; }}@media screen and (max-width: 480px) {	#trust h2 { font-size: 2.4rem; }	#trust h2 strong {		position: relative;		display: inline-block;		padding: 0 0.5em;	}	#trust h2 strong::before,	#trust h2 strong::after {		width: 72px;		padding-top: 72px;	}	#trust h2 strong::before {		bottom: 0;		left: 2%;		transform: translate(-50%, 50%);	}	#trust h2 strong::after {		top: 5%;		right: 2%;		transform: translate(50%, -50%);	}	#trust h3 { font-size: 2.1rem; }	#trust .value { max-width: 256px; }	#trust .value div:last-child::before { font-size: 6.4rem; }	#trust .value h3 { font-size: 3.6rem; }	#trust .value h4 { font-size: 1.8rem; }	#trust .pannels { gap: 0.5em 0; }	#trust .pannels > div {		padding: 1.25em 0.5em;	}	#trust .pannels div[data-num]::before {		padding-top: 5%;		width: 33.33%;		font-size: 8.0vw;	}	#trust .pannels div[data-num] h3 { font-size: 4.3vw; }	#trust .pannels div[data-num] p { font-size: 3.7vw; }}/* --------------------------------------------------- *//* Warranty *//* --------------------------------------------------- */#warranty {	position: relative;	background: linear-gradient(to bottom, #e5f1f9 50%, #008dff 90%);}#warranty .arrow {	position: relative;	z-index: 2;	top: -1px;	left: 0;	right: 0;	display: block;	padding-top: 6%;	width: 100%;	background-color: #008dff;	clip-path: polygon(0 0, 100% 0, 50% 100%);}#warranty .block-lm { position: relative; max-width: 1040px;  }#warranty h2 {	font-size: 3.2rem;	font-weight: 600;	line-height: 1.4;	text-align: center;}#warranty h2 em {	color: #008dff;	font-size: 150%;	font-weight: 600;	vertical-align: -0.1em;}#warranty .double {	display: flex;	justify-content: space-between;}#warranty .item { width: 47.0%; }#warranty .item h3 {	background-color: #008dff;	color: #ffff00;	font-size: 2.4rem;	font-weight: 600;	text-align: center;}#warranty .item p em {	color: #008dff;	font-size: 133.33%;	font-weight: 500;}#warranty .item p a { color: #f7931e; text-decoration: underline; }#warranty .item .marks {	display: flex;	align-items: flex-end;	justify-content: space-between;	gap: 0 3%;	margin-left: auto;	margin-right: auto;	max-width: 720px;}#warranty .item .marks > div {	display: flex;	align-items: flex-end;	justify-content: space-between;}#warranty .item .marks > div:first-child { width: 65.5%; }#warranty .item .marks > div:last-child {	flex-direction: column;	width: 30%;	gap: 0.75em 0;}#warranty .item .marks > div:last-child figure {	width: 100%;}#warranty h4 {	position: relative;	box-sizing: border-box;	margin-left: auto;	margin-right: auto;	max-width: 800px;	color: #fff;	font-size: 2.8rem;	line-height: 1.4;	font-weight: 600;	text-align: center;}#warranty h4 strong {	position: relative;	display: inline-block;	padding: 0 1.5em;}#warranty h4 strong::before,#warranty h4 strong::after {	content: '';	position: absolute;	display: block;	width: 108px;	padding-top: 108px;	background-size: cover;}#warranty h4 strong::before {	background-image: url('../../img/mizumawari/kira-lt-y.png');	bottom: 5%;	left: 0;	transform: translate(-50%, 50%);}#warranty h4 strong::after {	background-image: url('../../img/mizumawari/kira-rt-y.png');	top: 5%;	right: 0;	transform: translate(50%, -50%);}#warranty .btn-area p { color: #ffff00; }@media screen and (max-width: 767px) {	#warranty {		background: linear-gradient(to bottom, #e5f1f9 75%, #008dff 95%);	}	#warranty .arrow { padding-top: 8%; }	#warranty h2 { font-size: 2.8rem; }	#warranty .double {		flex-direction: column;		gap: 3.0em 0;	}	#warranty .item { width: 100%; }	#warranty h4 { font-size: 2.1rem; }	#warranty h4 strong::before {		bottom: -10%;		left: -2%;	}	#warranty h4 strong::after {		top: 0;		right: 3%;	}}@media screen and (max-width: 420px) {	#warranty .arrow { padding-top: 12%; }	#warranty h2 { font-size: 7.0vw; }	#warranty .item .marks { gap: 0 5%; }	#warranty .item .marks > div {		flex-direction: column;		gap: 0.75em;	}	#warranty .item h3 { font-size: 2.1rem; }	#warranty h4 { font-size: 2.1rem; }	#warranty h4 strong { padding: 0 0.5em; }	#warranty h4 strong::before,	#warranty h4 strong::after {		width: 72px;		padding-top: 72px;	}	#warranty h4 strong::before {		bottom: -5%;		left: 5%;	}	#warranty h4 strong::after {		top: 0;		right: 0;	}}/* --------------------------------------------------- *//* Maker *//* --------------------------------------------------- */#maker { position: relative; }#maker.wave::after { background-image: url(../../img/mizumawari/wave-s.svg); }#maker .brand h2 {	font-size: 3.2rem;	font-weight: 600;	line-height: 1.4;	text-align: center;}#maker .brand h2 em {	display: inline-block;	color: #008dff;	font-size: 150%;	font-weight: 600;	vertical-align: -0.1em;}#maker .brand p {	display: block;	margin-left: auto;	margin-right: auto;	width: 100%;	max-width: 720px;}#maker .brand .logos {	display: flex;	flex-wrap: wrap;	gap: 0.5em 2.0em;	justify-content: center;}#maker .brand .logos figure img { width: auto; height: 64px; }@media screen and (max-width: 767px) {	#maker .brand h2 { font-size: 2.8rem; }	#maker .brand .logos { gap: 0.5em 1.5em; }	#maker .brand .logos figure img { width: auto; height: 48px; }}@media screen and (max-width: 420px) {	#maker .brand h2 { font-size: 2.4rem; }	#maker .brand .logos { gap: 0.5em 1.0em; }	#maker .brand .logos figure img { width: auto; height: 42px; }}#products { position: relative; }#products .tabs {	position: relative;	z-index: 2;	display: flex;	justify-content: center;	gap: 0 0.5em;	margin-left: auto;	margin-right: auto;	max-width: 90%;	font-size: 1.8rem;}#products .tabs li {	position: relative;	width: 192px;	border-top: 2px solid;	border-right: 2px solid;	border-left: 2px solid;	border-radius: 12px 12px 0 0;	text-align: center;	transition: all .3s;}#products .tabs li::after {	content: '';	position: absolute;	top: 100%;	left: 0;	right: 0;	display: block;	height: 3px;}#products .tabs li a {	display: block;	font-weight: 500;	line-height: 2.5;	transition: all .1s;}#products .tabs li a span {	position: relative;	padding-left: 2.25em;}#products .tabs li a span i {	position: absolute;	top: 64%;	left: 0;	display: block;	width: 36px;	transform: translateY(-50%);}#products .curtain {	position: absolute;	display: block;	top: 47px;	left: 0;	right: 0;	padding-top: 360px;	border-top: 2px solid;	background-color: #f3f3f3;	transition: all .3s;}#products .sliders {	position: relative;	margin-left: auto;	margin-right: auto;	width: 90%;	max-width: 720px;	z-index: 3;}#products .sliders .catalog01,#products .sliders .catalog02,#products .sliders .catalog03,#products .sliders .catalog04 { visibility: hidden; height: 0; }#products .sliders .slider div figure:nth-child(2) { float: left; }#products .sliders .slider div figure:last-child { float: right; padding-top: 8px;}#products .sliders .slider div figure:nth-child(2) img { width: auto; height: 64px; }#products .sliders .slider div figure:last-child img { width: auto; height: 48px; }#products .sliders .thumb {	display: flex;	justify-content: center;	gap: 0 1%;}#products .sliders .thumb figure { width: 15.8%; position: relative;}#products .sliders .thumb figure.thumbnail-current::after {	content: '';	position: absolute;	top: 0;	bottom: 0;	left: 0;	right: 0;	display: block;	border: 2px solid ;}#maker .closing {	text-align: center;}/* 設定 */#products .tabs li.tab01 {	background-color: #f2945a;	border-color: #f2945a;	color: #fff;}#products .tabs li.tab01 .kitchen-2 { fill: #fff; }#products.type01 .tabs li.tab01 {	background-color: #fdecdf;	color: #f2945a;}#products.type01 .tabs li.tab01 .kitchen-2 { fill: #f2945a; }#products.type01 .tabs li.tab01::after { background-color: #fdecdf; }#products.type01 .sliders .catalog01 { visibility: visible; height: initial; }#products .sliders .catalog01 .thumb figure.thumbnail-current::after { border-color: #f2945a; }#products .tabs li.tab02 {	background-color: #52b340;	border-color: #52b340;	color: #fff;}#products .tabs li.tab02 .bath-2 { fill: #fff; }#products.type02 .tabs li.tab02 {	background-color: #e5f1db;	color: #52b340;}#products.type02 .tabs li.tab02 .bath-2 { fill: #52b340; }#products.type02 .tabs li.tab02::after { background-color: #e5f1db; }#products.type02 .sliders .catalog02 { visibility: visible; height: initial; }#products .sliders .catalog02 .thumb figure.thumbnail-current::after { border-color: #52b340; }#products .tabs li.tab03 {	background-color: #d972a9;	border-color: #d972a9;	color: #fff;}#products .tabs li.tab03 .wash-2 { fill: #fff; }#products.type03  .tabs li.tab03 {	background-color: #faeef5;	color: #d972a9;}#products.type03  .tabs li.tab03 .wash-2 { fill: #d972a9; }#products.type03 .tabs li.tab03::after { background-color: #faeef5; }#products.type03 .sliders .catalog03 { visibility: visible; height: initial; }#products .sliders .catalog03 .thumb figure.thumbnail-current::after { border-color: #d972a9; }#products .tabs li.tab04 {	background-color: #7d74b4;	border-color: #7d74b4;	color: #fff;}#products .tabs li.tab04 .toilet-2 { fill: #fff; }#products.type04 .tabs li.tab04 {	background-color: #ecebf5;	color: #7d74b4;}#products.type04 .tabs li.tab04 .toilet-2 { fill: #7d74b4; }#products.type04 .tabs li.tab04::after { background-color: #ecebf5; }#products.type04 .sliders .catalog04 { visibility: visible; height: initial; }#products .sliders .catalog04 .thumb figure.thumbnail-current::after { border-color: #7d74b4; }#products.type01 .curtain {	background-color: #fdecdf;	border-color: #f2945a;}#products.type02 .curtain {	background-color: #e5f1db;	border-color: #52b340;}#products.type03 .curtain {	background-color: #faeef5;	border-color: #d972a9;}#products.type04 .curtain {	background-color: #ecebf5;	border-color: #7d74b4;}@media screen and (max-width: 640px) {	#products .tabs {		gap: 0 0.25em;		max-width: 92%;		font-size: 1.4rem;	}	#products .tabs li a {		display: block;		font-weight: 500;		line-height: 2.2;		transition: all .1s;	}	#products .tabs li a span {		position: relative;		padding-left: 1.75em;	}	#products .tabs li a span i { width: 24px; }	#products .curtain {		top: 32.8px;		padding-top: 280px;	}}@media screen and (max-width: 420px) {	#products .tabs {		gap: 0 0.25em;		max-width: 92%;		font-size: 1.1rem;	}	#products .tabs li a {		display: block;		font-weight: 500;		line-height: 1.8;		transition: all .1s;	}	#products .tabs li a span {		position: relative;		padding-left: 0;	}#products .tabs li a span i {	position: static;	top: initial;	left: 0;	display: block;	margin: 0 auto;	padding-top: 0.5em;	width: 32px;	transform: none;}	#products .curtain {		top: 56px;		padding-top:60%;	}	#products .sliders .slider div figure:last-child { float: right; padding-top: 8px;}	#products .sliders .slider div figure:nth-child(2) img { width: auto; height: 48px; }	#products .sliders .slider div figure:last-child img { width: auto; height: 36px; }}/* --------------------------------------------------- *//* Gallery *//* --------------------------------------------------- */#gallery {	position: relative;	background: linear-gradient(to bottom, #ecf4f9 5%, #f3f5f6 95%);}#gallery.wave::after { background-image: url(../../img/mizumawari/wave-y.svg); }#gallery .cat-list {	display: flex;	justify-content: space-between;	margin-left: auto;	margin-right: auto;	width: 100%;	max-width: 800px;	font-size: 1.8rem;}#gallery .cat-list li {	width: 19%;}#gallery .cat-list li a {	display: block;	box-shadow: 4px 4px 8px rgba(0,0,0,0.1);	background-color: #fff;	border-radius: 8px;	font-weight: 600;	line-height: 2.5;	text-align: center;}#gallery .cat-list li a.selected {	box-shadow: 2px 2px 4px rgba(0,0,0,0.08);}#gallery .cat-list li .cat01 { color: #008dff; }#gallery .cat-list li .cat01.selected {	background-color: #008dff;	color: #fff;}#gallery .cat-list li .cat02 { color: #f2945a; }#gallery .cat-list li .cat02.selected {	background-color: #f2945a;	color: #fff;}#gallery .cat-list li .cat03 { color: #52b340; }#gallery .cat-list li .cat03.selected {	background-color: #52b340;	color: #fff;}#gallery .cat-list li .cat04 { color: #d972a9; }#gallery .cat-list li .cat04.selected {	background-color: #d972a9;	color: #fff;}#gallery .cat-list li .cat05 { color: #7d74b4; }#gallery .cat-list li .cat05.selected {	background-color: #7d74b4;	color: #fff;}#gallery .cat-title figure {	position: relative;	display: block;	width: 100%;	padding-top: 37.5%;	background-color: #fff;	background-repeat: no-repeat;	background-size: cover;	background-position: 50% 50%;	}#gallery .cat-title > div { display: none; }#gallery .cat-title > div.selected { display: block; }#gallery .cat-title h3 {	position: absolute;	top: 50%;	left: 50%;	display: block;	padding: 1.0em 0;	width: 75%;	max-width: 480px;	background-color: rgba(0,0,0,0.1);	transform: translate(-50%, -50%);	color: #fff;	font-weight: 600;	line-height: 1.4;	text-align: center;}#gallery .cat-title h3::before {	content: attr(data-eng)'';	display: block;	font-size: 200%;}#gallery .cat-title p { text-align: center; }#gallery .cat-title  .upgrade figure { background-image: url('../../img/mizumawari/cat-upgrade.webp'); }#gallery .cat-title   .upgrade h3 { background-color: rgba(0,141,255,0.5); }#gallery .cat-title .kitchen figure { background-image: url('../../img/mizumawari/cat-kitchen.webp'); }#gallery .cat-title .kitchen h3 { background-color: rgba(242,148,90,0.5); }#gallery .cat-title .bath figure { background-image: url('../../img/mizumawari/cat-bath.webp'); }#gallery .cat-title .bath h3 { background-color: rgba(82,179,64,0.4); }#gallery .cat-title .ut figure { background-image: url('../../img/mizumawari/cat-ut.webp'); }#gallery .cat-title .ut h3 { background-color: rgba(217,144,169,0.5); }#gallery .cat-title .toilet figure { background-image: url('../../img/mizumawari/cat-toilet.webp'); }#gallery .cat-title .toilet h3 { background-color: rgba(125,116,180,0.5); }@media screen and (max-width: 960px) {	#gallery .cat-list { font-size: 1.6rem; }}@media screen and (max-width: 767px) {	#gallery .cat-list {		flex-wrap: wrap;		gap: 0.5em 0;	}	#gallery .cat-list li { width: 32%; }	#gallery .cat-list li:nth-child(-n+2) { width: 49%; }	#gallery .cat-list li a { box-shadow: 3px 3px 6px rgba(0,0,0,0.1); }	#gallery .cat-title h3 { font-size: 1.4rem; }	#gallery .cat-title h3::before { font-size: 180%; }}@media screen and (max-width: 640px) {	#gallery .cat-title h3 { font-size: 1.4rem; }	#gallery .cat-title h3::before { font-size: 150%; }}@media screen and (max-width: 420px) {	#gallery .cat-list {		gap: 0.5em 0;		font-size: 1.6rem;	}	#gallery .cat-list li { width: 31.4%; }	#gallery .cat-list li:nth-child(-n+2) { width: 48.5%; }	#gallery .cat-list li a { box-shadow: 2px 2px 6px rgba(0,0,0,0.1); }	#gallery .cat-title h3 { width: 90%; font-size: 4.0vw; }	#gallery .cat-title h3::before { font-size: 150%; }	#gallery .cat-title p { text-align: left; }	#gallery .cat-title p span { display: inline; }}#gallery .case {	visibility: hidden;	display: table;	opacity: 0.0;	width: 100%;	height: 0.00001px;	transition: all .5s;}#gallery .case.active {	visibility: visible;	height: initial;	opacity: 1.0;}#gallery .case > div { height: 0.00001px; min-height: initial; }#gallery .case.active > div { height: initial; }#gallery .case .casehead { width: 100%; }#gallery .case.active .casehead { margin-bottom: 3.0em; }#gallery .case .casetitle > p {	font-weight: 600;	text-align: center;}#gallery .case .casetitle > p span { display: none; }#gallery .case .casetitle.planning > p span {	display: inline-block;	margin-right: 0.5em;	width: 160px;	background-color: #fff;	border: 2px solid;}#gallery .case h3 {	font-family: "Jost", sans-serif;	font-size: 7.2rem;	font-weight: 600;	line-height: 1.2;	text-align: center;}#gallery .case h3::before {	content: ' CASE';	display: inline-block;	margin-right: 0.5em;	border-bottom: 2px solid;	font-size: 66.66%;	line-height: 1.0;	vertical-align: 0.2em;}#gallery .case .labels {	display: flex;	margin-left: auto;	margin-right: auto;	width: 86%;	max-width: 288px;}#gallery .case .labels p {	width: 50%;	font-size: 1.4rem;	font-weight: 500;	line-height: 2.2;	text-align: center;}#gallery .case .labels p:first-child { background-color: #000; color: #fff; border-radius: 144px 0 0 144px ;}#gallery .case .labels p:last-child { background-color: #fff; border-radius: 0 144px 144px 0; }#gallery .case.cat01 h3 { color: #008dff; }#gallery .case.cat01 .labels p:first-child { background-color: #008dff; }#gallery .case.cat02 h3 { color: #f2945a; }#gallery .case.cat02 .labels p:first-child { background-color: #f2945a; }#gallery .case.cat03 h3 { color: #52b340; }#gallery .case.cat03 .labels p:first-child { background-color: #52b340; }#gallery .case.cat04 h3 { color: #d972a9; }#gallery .case.cat04 .labels p:first-child { background-color: #d972a9; }#gallery .case.cat05 h3 { color: #7d74b4; }#gallery .case.cat05 .labels p:first-child { background-color: #7d74b4; }#gallery .case.cat01 .casetitle.planning > p span { color:  #008dff; }#gallery .case.cat02 .casetitle.planning > p span { color:  #f2945a; }#gallery .case.cat03 .casetitle.planning > p span { color:  #52b340; }#gallery .case.cat04 .casetitle.planning > p span { color:  #d972a9; }#gallery .case.cat05 .casetitle.planning > p span { color:  #7d74b4; }#gallery .case h3::before {	content: ' CASE';	display: inline-block;	margin-right: 0.5em;	border-bottom: 2px solid;	font-size: 66.66%;	line-height: 1.0;	vertical-align: 0.2em;}#gallery .case .study,#gallery .case .voice {	width: 50%;	float: right;}#gallery .case .pics {	display: block;	width: 43%;	float: left;}#gallery .case h5 {	margin-bottom: 0.75em;	width: 100%;	font-size: 2.4rem;	font-weight: 500;	line-height: 1.5;}#gallery .case .cover {	position: relative;}#gallery .case .cover .pic {	display: block;	padding-top: 100%;	width: 100%;	background-color: #fff;}#gallery .case .cover figure {	display: block;	width: auto;	max-width: 97%;	height: auto;	max-height: 97%;}#gallery .case .cover figure img {	position: absolute;	top: 50%;	left: 50%;	width: auto;	max-width: 97%;	height: auto;	max-height: 97%;	transform: translate(-50%, -50%);}#gallery .case .cover p {	position: absolute;	left: 0;	top: 100%;	padding: 12px 0 0 0;}#gallery .case .cover figure + div {	position: absolute;	right: 0;	bottom: 10%;	display: flex;	flex-direction: column;	width: 128px;	background-color: #fff;	transition: all .3s;}#gallery .case .cover figure + div.after::before {	content: 'After';	display: block;	color: #fff;	background-color: #008dff;	font-family: "Jost", sans-serif;	font-size: 2.1rem;	font-weight: 600;	text-align: center;	transition: all .3s;}#gallery .case .cover figure + div.before::before {	content: 'Before';	display: block;	color: #fff;	background-color: #999;	font-family: "Jost", sans-serif;	font-size: 2.1rem;	font-weight: 600;	text-align: center;	transition: all .3s;}#gallery .case .cover figure + div.design::before {	content: 'Design';	display: block;	color: #fff;	background-color: #008dff;	font-family: "Jost", sans-serif;	font-size: 2.1rem;	font-weight: 600;	text-align: center;	transition: all .3s;}#gallery .case .planning .cover figure + div::before { display: none; }#gallery .case .cover figure + div span {	visibility: hidden;	padding-top: 0;	height: 0;	transition: all .3s;}#gallery .case .cover figure + div.mk01 span,#gallery .case .cover figure + div.mk02 span,#gallery .case .cover figure + div.mk03 span,#gallery .case .cover figure + div.mk04 span,#gallery .case .cover figure + div.mk05 span,#gallery .case .cover figure + div.mk06 span {	content: '';	visibility: visible;	display: block;	width: 80%;	margin: 0 auto;	padding-top: 33.33%;	background-repeat: no-repeat;	background-size: auto 90%;	background-position: 50% 50%;}#gallery .case .cover figure + div.mk01 span { background-image: url('../../img/mizumawari/logo-toto.png'); }#gallery .case .cover figure + div.mk02 span { background-image: url('../../img/mizumawari/logo-panasonic.png'); }#gallery .case .cover figure + div.mk03 span { background-image: url('../../img/mizumawari/logo-lixil.png'); }#gallery .case .cover figure + div.mk04 span { background-image: url('../../img/mizumawari/logo-takara.png'); }#gallery .case .cover figure + div.mk05 span { background-image: url('../../img/mizumawari/logo-cleanup.png'); }#gallery .case .cover figure + div.mk06 span { background-image: url('../../img/mizumawari/logo-taclas.png'); }#gallery .case .selecter {	display: flex;	flex-wrap: wrap;	gap: 0.75em 2.66%;	font-size: 1.6rem;}#gallery .case .selecter li {	position: relative;	width: 23%;	background-repeat: no-repeat;	background-size: cover;	background-position: 50% 50%;	cursor: pointer;	transition: all .5s;}#gallery .case .selecter li:hover { opacity: 0.5; }#gallery .case .selecter li a {	display: block;	padding-top: 100%;	width: 100%;}#gallery .case .voice dl dt {	display: flex;	margin: 2.0em 0 0.75em;	background-color: #fff;}#gallery .case .voice dl dt.befor,#gallery .case .voice dl dt.request,#gallery .case .voice dl dt.after {}#gallery .case .voice dl dt.befor::before,#gallery .case .voice dl dt.request::before,#gallery .case .voice dl dt.after::before,#gallery .case .voice dl dt.concept::before,#gallery .case .voice dl dt.material::before {	display: flex;	width: 80px;	flex-direction: column;	justify-content: center;	align-items: center;	font-weight: 500;}#gallery .case .voice h4 {	padding: 0.5em 0.75em;	font-size: 1.8rem;	font-weight: 500;}#gallery .case .voice dl dt.befor::before {	content: 'Before';	background-color: #999;	font-family: "Jost", sans-serif;	color: #fff;  }#gallery .case .voice dl dt.request::before {	content: 'Request';	background-color: #fa7300;	font-family: "Jost", sans-serif;	color: #fff;}#gallery .case .voice dl dt.after::before {	content: 'After';	background-color: #008dff;	font-family: "Jost", sans-serif;	color: #fff;}#gallery .case .voice dl dt.concept::before {	content: 'Concept';	background-color: #999;	font-family: "Jost", sans-serif;	color: #fff;  }#gallery .case .voice dl dt.material::before {	content: 'Material';	background-color: #fa7300;	font-family: "Jost", sans-serif;	color: #fff;}#gallery .case .voice .befor h4 { color: #555; }#gallery .case .voice .request h4 { color: #fa7300; }#gallery .case .voice .after h4 { color: #008dff; }#gallery .case .voice .concept h4 { color: #555; }#gallery .case .voice .material h4 { color: #fa7300; }#gallery .case .voice .result {	margin-top: 2.0em;	padding: 1.25em 1.5em 1.5em;	background-color: #fff;	border-radius: 8px;}#gallery .case .voice .result h4 {	margin-bottom: 0.5em;	padding: 0.25em 0.5em;	background-color: #e5f3ff;	color: #008dff;}@media screen and (max-width: 960px) {	#gallery .case {		display: flex;		flex-direction: column;		justify-content: space-between;		gap: 3.0em;	}	#gallery .case.active .casehead { margin-bottom: 0; }	#gallery .case .study,	#gallery .case .voice { width: 100%; }	#gallery .case .pics {		margin-left: auto;		margin-right: auto;		width: 100%;		max-width: 560px;	}}@media screen and (max-width: 420px) {	#gallery .case {		display: flex;		flex-direction: column;		justify-content: space-between;		gap: 2.0em;	}	#gallery .case h3 {		width: auto;		font-size: 5.6rem;	}	#gallery .case h5 { font-size: 1.8rem; }	#gallery .case .voice h4 { font-size: 1.6rem; }	#gallery .case .voice p { font-size: 1.4rem; }}#gallery .album-tab {	position: relative;	padding-top: 2.0em;	z-index: 5;}#gallery .btn-wrap {	position: absolute;	top: 0;	left: 50%;	margin: 0 auto;	width: 280px;	background-color: #fff;	border: 2px solid #008dff;	transform: translateX(-50%);}#gallery .btn-wrap .btn-switch {	display: block;	padding: 0.25em 2.0em 0.25em 0.75em;	color: #008dff;	font-size: 1.6rem;	font-weight: 500;}#gallery .btn-wrap .btn-switch::after {	content:'+';	position: absolute;	top: 0.10em;	right: 0.5em;	font-size: 2.8rem;	font-weight: 300;	line-height: 1.0;	transition: all .6s;}#gallery .btn-wrap .btn-switch.opened::after {	top: 0.20em;	transform: rotate(225deg);}#gallery .btn-wrap .switcher {	display: flex;	flex-direction: column;	gap: 2px 0;//	padding: 0 0.75em 1.0em;	font-size: 1.6rem;}#gallery .btn-wrap .switcher li {}#gallery .btn-wrap .switcher li a  {	display: block;	padding: 0.5em 0;	background-color: #f6f6f6;	font-size: 1.2rem;	font-weight: 500;}#gallery .btn-wrap .switcher li:last-child a {	border-radius: 0 0 9px 9px;}#gallery .btn-wrap .switcher li a.selected {	background-color: #008dff;	color: #fff;}#gallery .btn-wrap .switcher li a span:first-child {	width: 80px;	font-family: "Jost", sans-serif;	font-size: 110%;	text-align: center;}#gallery .btn-wrap .switcher li a span:nth-child(2) { width: 104px; }@media screen and (min-width: 768px) {	#gallery .album-tab { display: none; }}#gallery .album-btn {	position: relative;	display: flex;	flex-wrap: wrap;	gap: 1.0em 2%;}#gallery .album-btn::before {	content: '他のリフォーム事例を見る';	position: absolute;	top: 0;	left: 0;	display: block;	width: 100%;	color: #008dff;	font-size: 2.1rem;	font-weight: 500;	text-align: center;	transform: translateY(-150%);}#gallery .album-btn > a {	display: flex;	width: 23.5%;	border-radius: 9px;	box-shadow: 1px 1px 12px rgba(0, 0, 0, 0.1);}#gallery .album-btn > a figure {	width: 33%;	background-size: cover;	background-position: 50% 50%;	border-radius: 8px 0 0 8px;}#gallery .album-btn > a div {	width: 67%;	display: flex;	flex-direction: column;	justify-content: space-between;}#gallery .album-btn > a div p {	display: block;	padding: 0.5em;	background-color: #fff;	font-size: 1.6rem;	font-weight: 500;	line-height: 1.4;	transition: all .3s;}#gallery .album-btn > a div p span {	display: block;	font-family: "Jost", sans-serif;	font-size: 1.2rem;	line-height: 1.2;}#gallery .album-btn > a div p:first-child {	padding: 0.5em;	border-radius: 0 8px 0 0;}#gallery .album-btn > a div p:last-child {	padding: 0.5em;	border-radius: 0 0 8px 0;	border-top: 1px solid;	color: #444;	font-size: 1.3rem;}#gallery .album-btn > a.cat01 div p:first-child { color: #008dff; }#gallery .album-btn > a.cat01 div p:last-child { border-color: #008dff; }#gallery .album-btn > a.cat01:hover div p:first-child { background-color: #d9eeff; }#gallery .album-btn > a.cat01:hover div p:last-child { background-color: #d9eeff; }#gallery .album-btn > a.cat01.selected div p:first-child { background-color: #008dff; color: #fff; }#gallery .album-btn > a.cat01.selected div p:last-child { background-color: #008dff; border-color: #fff; color: #fff;  }#gallery .album-btn > a.cat02 div p:first-child { color: #f2945a; }#gallery .album-btn > a.cat02 div p:last-child { border-color: #f2945a; }#gallery .album-btn > a.cat02:hover div p:first-child { background-color: #fdecdf; }#gallery .album-btn > a.cat02:hover div p:last-child { background-color: #fdecdf; }#gallery .album-btn > a.cat02.selected div p:first-child { background-color: #f2945a; color: #fff; }#gallery .album-btn > a.cat02.selected div p:last-child { background-color: #f2945a; border-color: #fff; color: #fff;  }#gallery .album-btn > a.cat03 div p:first-child { color: #52b340; }#gallery .album-btn > a.cat03 div p:last-child { border-color: #52b340; }#gallery .album-btn > a.cat03:hover div p:first-child { background-color: #e5f1db; }#gallery .album-btn > a.cat03:hover div p:last-child { background-color: #e5f1db; }#gallery .album-btn > a.cat03.selected div p:first-child { background-color: #52b340; color: #fff; }#gallery .album-btn > a.cat03.selected div p:last-child { background-color: #52b340; border-color: #fff; color: #fff;  }#gallery .album-btn > a.cat04 div p:first-child { color: #d972a9; }#gallery .album-btn > a.cat04 div p:last-child { border-color: #d972a9; }#gallery .album-btn > a.cat04:hover div p:first-child { background-color: #faeef5; }#gallery .album-btn > a.cat04:hover div p:last-child { background-color: #faeef5; }#gallery .album-btn > a.cat04.selected div p:first-child { background-color: #d972a9; color: #fff; }#gallery .album-btn > a.cat04.selected div p:last-child { background-color: #d972a9; border-color: #fff; color: #fff;  }#gallery .album-btn > a.cat05 div p:first-child { color: #7d74b4; }#gallery .album-btn > a.cat05 div p:last-child { border-color: #7d74b4; }#gallery .album-btn > a.cat05:hover div p:first-child { background-color: #ecebf5; }#gallery .album-btn > a.cat05:hover div p:last-child { background-color: #ecebf5; }#gallery .album-btn > a.cat05.selected div p:first-child { background-color: #7d74b4; color: #fff; }#gallery .album-btn > a.cat05.selected div p:last-child { background-color: #7d74b4; border-color: #fff; color: #fff;  }@media screen and (max-width: 960px) {	#gallery .album-btn {		display: flex;		flex-wrap: wrap;		gap: 0.75em 1.5%;	}	#gallery .album-btn > a {		display: flex;		width: 32%;		border-radius: 9px;		box-shadow: 1px 1px 12px rgba(0, 0, 0, 0.1);	}}@media screen and (max-width: 767px) {	#gallery .album-btn { display: none; }}@media screen and (max-width: 420px) {}#gallery .galleryfoot {	background-image: url('../../img/mizumawari/bg_sl.png');}/* --------------------------------------------------- *//* Flow *//* --------------------------------------------------- */#flow {	position: relative;	background: linear-gradient(to bottom, #ffffee, #ffffcc);}#flow.wave::after {	background-image: url(../../img/mizumawari/wave-w.svg);}#flow .block-lm { max-width: 1280px; }#flow .chart {	display: flex;	justify-content: center;	gap: 2.0em;}#flow .chart > div {	position: relative;	width: 25%;}#flow .chart > div::before {	content: '';	display: block;	padding-top: 100%;	width: 100%;}#flow .chart > div::after {	content: '';	position: absolute;	top: 50%;	left: 100%;	display: block;	margin-left: -0.10em;	width: 0.000em;	height: 0.000em;	border-top: 10px solid transparent;	border-left: 10px solid transparent;	border-right: 10px solid #008dff;	border-bottom: 10px solid #008dff;	transform: translateY(-50%) rotate(-45deg);}#flow .chart > div:last-child::after { display: none; }#flow .chart dl {	position: absolute;	top: 0;	bottom: 0;	left: 0;	right: 0;	display: flex;	flex-direction: column;	align-items: center;	width: 100%;	background-color: #fff;	border-radius: 50%;}#flow .chart dl dt {	display: flex;	flex-direction: column;	align-items: center;	justify-content: flex-end;	height: 40%;}#flow .chart dl dd {	flex: 1 0 auto;	padding: 0 0.5em;}#flow .chart h4 {	font-size: 2.1rem;	font-weight: 500;	line-height: 1.4;	text-align: center;}#flow .chart dt p {	color: #008dff;	font-family: "Jost", sans-serif;	font-size: 2.1rem;	font-weight: 600;}#flow .chart dt p em {	margin-left: 0.25em;	vertical-align: -0.1em;	font-size: 150%;	font-weight: inherit;	line-height: 1.0;}@media screen and (max-width: 1040px) {	#flow .chart { gap: 1.0em; }	#flow .chart > div::after {		border-top: 6px solid transparent;		border-left: 6px solid transparent;		border-right: 6px solid #008dff;		border-bottom: 6px solid #008dff;	}	#flow .chart h4 { font-size: 1.6rem; }	#flow .chart dt p { font-size: 1.6rem; }}@media screen and (max-width: 767px) {	#flow .chart {		flex-direction: column;		gap: 2.0em;	}	#flow .chart > div { width: 100%; }	#flow .chart > div::before { display: none; }	#flow .chart > div::after {		top: 100%;		left: 50%;		border-top: 8px solid transparent;		border-left: 8px solid transparent;		border-right: 8px solid #008dff;		border-bottom: 8px solid #008dff;		transform: translateY(25%) rotate(45deg);	}	#flow .chart > div:last-child::after { display: none; }	#flow .chart dl {		position: static;		display: flex;		flex-direction: row;		align-items: initial;		width: 100%;		background-color: transparent;		border-radius: 0;	}	#flow .chart dl dt {		display: flex;		flex-direction: column;		align-items: center;		justify-content: center;		width: 80px;		height: auto;		background-color: #008dff;		border-radius: 5px 0 0 5px;	}	#flow .chart dl dd {		padding: 1.0em 64px 1.0em 0;		background-color: #fff;		border-radius: 0 5px 5px 0;	}	#flow .chart h4 { font-size: 1.8rem; }	#flow .chart dt p {		color: #fff;		font-size: 1.6rem;	}#flow .chart dt p em {	margin-left: 0.1em;}}@media screen and (max-width: 420px) {	#flow .chart {		flex-direction: column;		gap: 1.5em;	}	#flow .chart > div::after {		top: 100%;		left: 50%;		border-top: 5px solid transparent;		border-left: 5px solid transparent;		border-right: 5px solid #008dff;		border-bottom: 5px solid #008dff;		transform: translateY(35%) rotate(45deg);	}	#flow .chart dl dt {		display: flex;		flex-direction: column;		align-items: center;		justify-content: center;		width: 64px;		height: auto;		background-color: #008dff;		border-radius: 5px 0 0 5px;	}	#flow .chart dl dd {		padding: 1.0em 0.5em 1.0em 0.5em;	}	#flow .chart h4 {  text-align: left; }	#flow .chart dt p { font-size: 1.4rem; }}/* --------------------------------------------------- *//* FAQ *//* --------------------------------------------------- */#faq .qalist { border-top: 1px dotted #ddd; }#faq .qalist h4,#faq .qalist p { position: relative; }#faq .qalist h4 {	margin-top: 2.0em;	padding: 0 0 0 3.6em;	color: #000;	font-size: 1.8rem;	font-weight: 500;}#faq .qalist p {	margin-top: 2.0em;	padding: 0 0 2.0em 4.0em;	border-bottom: 1px dotted #ddd;	color: #333;}#faq .qalist h4::before,#faq .qalist p::before {	position: absolute;	top: -0.25em;	left: 0;	width: 48px;	border-radius: 50%;	color: #fff;	font-family: "Jost", sans-serif;	font-size: 3.2rem;	font-weight: 600;	line-height: 48px;	text-align: center;}#faq .qalist h4::before { content: 'Q'; background-color: #008dff; }#faq .qalist p::before { content: 'A'; background-color: #8dc21f; color: #fff; }@media screen and (max-width: 420px) {	#faq .qalist h4 {		margin-top: 1.25em;		padding: 0 0 0 2.4em;		color: #000;		font-size: 1.8rem;		font-weight: 500;	}	#faq .qalist p {		margin-top: 1.25em;		padding: 0 0 1.5em 2.75em;		border-bottom: 1px dotted #ddd;		color: #333;	}	#faq .qalist h4::before,	#faq .qalist p::before {		position: absolute;		top: -0.10em;		left: 0;		width: 36px;		border-radius: 50%;		font-size: 2.4rem;		line-height: 36px;	}}/* --------------------------------------------------- *//* Contact *//* --------------------------------------------------- */#contact { background-color: #f3f9e8; }#contact h2 {	font-size: 3.6rem;	font-weight: 600;	text-align: center;}#contact h2 span {	padding-left: 1.75em;	background-image: url('../../img/mizumawari/ic-check.png');	background-repeat: no-repeat;	background-size: 1.20em;	background-position: 0 50%;	color: #008dff;}#contact p a { text-decoration: underline; }#contact .area {	display: flex;	justify-content: center;	margin-left: auto;	margin-right: auto;	width: 100%;	max-width: 560px;}#contact .area > div:first-child {	box-sizing: border-box;	display: flex;	align-items: center;	padding: 0 1.0em;	width: 104px;	background-color: #008dff;	border-radius: 128px 0 0 128px;	color: #fff;}#contact .area > div:last-child {	box-sizing: border-box;	display: flex;	align-items: center;	padding: 0.5em 1.0em;	width: calc(100% - 104px);	background-color: #fff;	border-radius: 0 128px 128px 0;	border: 2px solid #008dff;}#contact .area h5 {	color: #fff;	font-size: 1.4rem;	font-weight: 600;}#contact .announce {	padding: 1.25em 4% 1.0em;	background-color: #fff;	border: 3px solid #008dff;}#contact .step {	display: flex;	justify-content: center;	align-items: center;	gap: 0 0.75em;	margin: 2.0em auto 2.0em;}#contact .step div {	position: relative;	padding: 0.25em;	width: 160px;	background-color: #e9e9e9;	font-size: 1.4rem;	text-align: center;}#contact .step div:nth-child(-n+2)::after {	content: '';	position: absolute;	left: 99.5%;	top: 0;	bottom: 0;	display: block;	width: 0.65em;	height: 100%;	background-color: #e9e9e9;	clip-path: polygon(0 0, 100% 50%, 0 100%);}#contact .step div.active,#contact .step div.active::after {	background-color: #008dff;	color: #fff;}#contact.thanks .block-lm { max-width: 800px; }#contact h3 {	font-size: 2.1rem;	font-weight: 500;	line-height: 1.4;	text-align: center;}@media screen and (max-width: 767px) {	#contact h2 { font-size: 3.2rem; }}@media screen and (max-width: 420px) {	#contact h2 { font-size: 2.4rem; }	#contact .area { flex-direction: column; }	#contact .area > div:first-child {		padding: 0.25em 1.0em 0;		width: 100%;		border-radius: 8px 8px 0 0;	}	#contact .area > div:last-child {		padding: 0.75em 1.0em;		width: 100%;		border-radius: 0 0 8px 8px;	}	#contact .step {		gap: 0 0.6em;		margin: 1.5em auto 2.0em;	}	#contact .step div {		padding: 0.25em 0.2em;		font-size: 1.1rem;	}}/* --------------------------------------------------- *//* Form *//* --------------------------------------------------- */#contact form dl {	display: table;	width: 100%;	border-bottom: 1px solid #ddd;}#contact form dl:first-child { border-top: 1px solid #ddd; }#contact form dl dt {	position: relative;	padding: 0 0 0;	width: 160px;	float: left;}#contact form dl dd {	padding: 0 0 1.5em 192px;}#contact form dl dt:first-child,#contact form dl dd:nth-child(2) { padding-top: 1.5em; }#contact form dl dt.required::after {	content: '必須';	position: absolute;	left: 95%;	bottom: 1.0em;	display: block;	width: 32px;	background-color: #d00;	color: #fff;	font-size: 1.0rem;	text-align: center;}#contact form dl dt h4 { display: inline-block; line-height: 2.5; }#contact.confirm form dl dt.required::after { display: none; }#contact.confirm p.note { display: none; }@media screen and (max-width: 767px) {	#contact form dl dt {		position: relative;		padding: 0 0 0;		width: 100%;		float: none;	}	#contact form dl dd {		padding: 0 0 1.5em 0;	}	#contact form dl dd:nth-child(2) { padding-top: 0; }	#contact form dl dt.required::after {		position: static;		display: inline-block;		margin-left: 0.5em;		vertical-align: 0.25em;	}	#contact form dl dt h4 { line-height: 2.5; }}form *:focus { outline: none; }form .selectwrap { position: relative; display: table; }form .selectwrap::after {	content: '';	position: absolute;	top: 15px;	right: 15px;	display: block;	width: 7px;	height: 7px;	border-bottom: 1px solid #333;	border-right: 1px solid #333;	transform: rotateZ(45deg);	pointer-events: none;}.confirm form .selectwrap::after { display: none; }form select {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	display: table;	padding: 5px 30px 5px 12px;	width: 100%;	height: 40px;	border: 1px;	font-size: 1.8rem;	line-height: 30px;	background-color: #f2f1f1;	border: 0;	border-radius: 4px;	box-sizing: border-box;	cursor: pointer;}select::-ms-expand {	display: none;}select:-moz-focusring { 	color: transparent; 	text-shadow: 0 0 0 #828c9a;}form input[type=text],form input[type=email],form input[type=password],form input[type=tel] {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	padding: 4px 10px;	background-color: #fff;	border: 0;}form input[type=text],form input[type=email],form input[type=password],form input[type=tel] {	display: inline-block;	box-sizing: border-box;	border-radius: 4px;	font-size: 1.8rem;	line-height: 2.2;	height: 2.5em;	border: 1px solid #008dff;	transition: all 0.2s;}:placeholder-shown { color: #ddd; }::-webkit-input-placeholder { padding-top: 5px;　color: #ddd; font-size: 1.2rem; line-height: 2.2; }:-moz-placeholder { color: #ddd; font-size: 1.2rem; line-height: 2.2; opacity: 1; }:-ms-input-placeholder { padding-top: -5px; color: #ddd; font-size: 1.2rem; line-height: 2.2; }form textarea {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	font-size: 1.6rem;	padding: 4px 10px;	background-color: #fff;	border: 0;	border: 1px solid #008dff;	box-sizing: border-box;	border-radius: 4px;	font-size: 1.8rem;	line-height: 2.2;	transition: all 0.2s;}form button,form input[type=button],form input[type=submit],form input[type=reset] {	-webkit-appearance: none;	-moz-appearance: none;	appearance: none;	display: block;	width: 100%;	max-width: 240px;	min-width: 240px;	border: 0;	background-color: #fff;	border: 1px solid #111;	border-radius: 120px;	color: #111;	font-size: 1.8rem;	font-weight: 600;	line-height: 48px;	text-align: center;	transition: all .3s;	cursor: pointer;}form input[type=submit] {	margin: 0 auto;	border-color: #f7931e;	background-color: #f7931e;	color: #fff;}.btn-form {position: relative;}.btn-form::after {	content: '';	position: absolute;	top: 50%;	right: 1.25em;	display: block;	width: 9px;	height: 9px;	border-top: 1px solid #007b49;	border-right: 1px solid #007b49;	transform: translateY(-50%) rotate(45deg);}.btn-form.prev::after {	border-top: 1px solid #fff;	border-right: 1px solid #fff;} form .btn-form.prev input[type=submit] {	border-color: #a0a0a0;	background-color: #a0a0a0;	color: #fff;}form input[type=submit].btn-back {	border-color: #bbb;	background-color: #bbb;	color: #fff;}form button:hover,form input[type=button]:hover,form input[type=reset]:hover { opacity: 0.7; }form input[type=submit]:hover,form input[type=submit]:active {	border-color: #ffcc00;	background-color: #fd8b11;	color: #fff;}form input[type=submit].btn-back:hover {	border-color: #bbb;	background-color: #fff;	color: #999;}form label { 	display: inline-block; 	vertical-align: middle;	font-size: 1.6rem;	line-height: 24px; }form label input[type=radio],form label input[type=checkbox] {	display: inline-block;	margin-right: 0.25em;	vertical-align: -1px;}form .w-line label {	display: inline-block;	margin-right: 20px;}form .v-line label { display: block; margin-top: 8px; }form .v-line span {	display: block;	margin-top: 8px;}form .v-line label span { display: inline-block; }form .v-line span:first-child { margin-top: 0; }form .v-line input[type=text] { margin-top: 5px; }form .h-line label {	position: relative;	padding-left: 24px;}form .h-line label input {	position: absolute;	top: 0;	left: 0;}form label em {	display: inline-block;	margin-right: 5px;	width: 18px;	color: #bbb;	text-align: center;}/* フォームサイズ指定 *//* --------------------------------------------------- */.wide-l { width: 98%; }.wide-m { width: 60%; }.wide-s { width: 200px; }form textarea { height: 240px; }@media screen and (max-width: 767px) {	.wide-l { width: 100%; }	form textarea { height: 180px; }}@media screen and (max-width: 420px) {	.wide-m { width: 100%; }	.wide-s { width:100px; }	form textarea { height: 120px; }	form button,	form input[type=button],	form input[type=submit],	form input[type=reset] {		font-size: 1.6rem;		line-height: 42px;	}}/* ContactForm7 *//* --------------------------------------------------- */.wpcf7-form-control-wrap { display: block; }.wpcf7-not-valid-tip { font-size: 1.2rem; }/* --------------------------------------------------- *//* Privacy *//* --------------------------------------------------- */#privacy h2 {	font-size: 3.6rem;	font-weight: 600;	text-align: center;}#privacy h3 {	padding-bottom: 0.25em;	border-bottom: 1px solid #ccc;}#privacy h3 span {	display: block;	text-indent: -1.0em;	padding-left: 1.0em;	font-size: 1.8rem;	font-weight: 500;}#privacy h3 + p,#privacy p + p  { color: #555; }@media screen and (max-width: 767px) {	#privacy h2 { font-size: 3.2rem; }}@media screen and (max-width: 420px) {	#privacy h2 { font-size: 2.8rem; }}/* --------------------------------------------------- *//* BasicBreakPoint *//* --------------------------------------------------- */@media screen and (max-width: 767px) {}@media screen and (max-width: 420px) {}