@charset "UTF-8";
/* CSS Document */
@import "https://use.fontawesome.com/releases/v5.13.0/css/all.css";
* {
	margin:0;
	padding:0;
} 
*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
html {
	font-size: 62.5%;
	height: 100%;
}
body {
	min-height: 100%;
	font-family: 'Fredoka', 'M PLUS Rounded 1c', sans-serif;
	font-size: 1.6rem;
	font-weight: 300;
	color: #48361E;
	background-color: #FFF;
	-webkit-text-size-adjust: 100%;
  	display: flex;
    flex-flow: column;
}

img{
	border-style:none;
}
ul {
	list-style-type:none;
}
a {
	color: #333;
	text-decoration:none;
	outline:none;
	display: block;
}
a:hover,
.nav-header:hover {
	color: #e5d3d8;
}
br {
	letter-spacing: normal;
}
iframe {
	border: none;
}
fieldset {
	border: none;
}
span.text-br {
	display:inline-block;
}
span.br:before {
    content: '\A';
    white-space: pre;
}
h1 {
	font-size: clamp(2.0rem, 5.0vw, 4.6rem);
	font-weight: 400;
	color: #CCA8B2;
	margin-bottom: 15px;
}
h2 {
	font-size: clamp(1.5rem, 3.6vw, 3.2rem);
	font-weight: 400;
	color: #88807B;
}
h3 {
	font-size: 3.0rem;
	letter-spacing: 0.1em;
	line-height: 1.1em;
	margin-bottom: 15px;
}
h4 {
	font-size: 2.6rem;
	font-weight: 300;
	color: #48361E;
}
h5 {
	font-size: 2.2rem;
	font-weight: 300;
	line-height: 1.8em;
}
p {
	font-size: 1.6rem;
	line-height: 1.8em;
	letter-spacing: 0.05em;
	text-align: left;
}

.pink {
	color: #CCA8B2;
}
.pink2 {
	color: #CCA8B2;
}
.brown {
	color: #48361E;
}
.beige {
	color: #88807B;
}
.bold {
	font-weight: 600;
}



header {
	width:100%;
	height: fit-content;
	background: url("../images/menu_wave.png") no-repeat center bottom;
	min-height: 1px;
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	position:fixed;
	top: -30px;
	transition: all 0.5s;
	z-index:1000;
}
.itemid-101 header {
	top: -180px;
}
header.is-show {
	top: -30px;
}
header.is-hide {
	transform: translateY(-100%);
	transition: all 0.5s;
}
header.open {
	top: 0;
}

header .logo {
	width: 100px;
	height: 130px;
	background: url("../images/logo_main.png") no-repeat center top;
	background-size: contain;
	margin: 0 auto;
	transition: all 0.5s;
	z-index: 1;
}
header .insta {
    width: 34px;
    height: 34px;
    background: url(../images/icon_ig.png) no-repeat center;
    background-size: contain;
    position: fixed;
    top: 23px;
    right: 90px;
}
div#navArea {
	position: relative;
}
nav {
	width: 100%;
	background: #ffffff;
	padding: 25px 15px;
	display: block;
	transition: .5s;
	z-index: 2;
}
nav ul.mod-menu {
	height: 0;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	column-gap: 20px;
	row-gap: 15px;
	transition: all 1s;
}
header.open  ul.mod-menu {
	height: auto;
}
nav ul.mod-menu > li {
	width: fit-content;
	max-width: 240px;
	position: relative;
}
nav ul.mod-menu > li a,
nav ul.mod-menu > li span.nav-header {
	font-size: 2.0rem;
	color: #CCA8B2;
	border-bottom: 1px solid #CCA8B2;
	padding-bottom: 3px;
	display: block;
	transition-duration: 0.2s;
}
nav ul.mod-menu li > ul {
	display: flex;
	flex-wrap: wrap;
	padding-top: 10px;
}
nav ul.mod-menu li > ul li {
	width: 100%;
	list-style: disc;
	margin-left: 16px;
}
nav ul.mod-menu li > ul li a {
	font-size: 1.6rem;
	color: #48361E;
	border: none;
	padding: 3px 0;
}
nav ul li a:hover {
	color: #e5d3d8;
}
nav ul li a:after {
	font-size: 1.2rem;
	font-weight: 300;
	color: #999;
	margin-top: 5px;
	display: block;
}

/*============
@keyframes
=============*/
@keyframes equalizer01 {
  0% {
    width: 100%;
  }
  10% {
    width: 75%;
  }
  20% {
    width: 100%;
  }
  30% {
    width: 45%;
  }
  40% {
    width: 50%;
  }
  50% {
    width: 100%;
  }
  60% {
    width: 75%;
  }
  70% {
    width: 45%;
  }
  80% {
    width: 100%;
  }
  90% {
    width: 45%;
  }
  100% {
    width: 100%;
  }
}
@keyframes equalizer02 {
  0% {
    width: 60%;
  }
  10% {
    width: 100%;
  }
  20% {
    width: 75%;
  }
  30% {
    width: 30%;
  }
  40% {
    width: 45%;
  }
  50% {
    width: 60%;
  }
  60% {
    width: 60%;
  }
  70% {
    width: 75%;
  }
  80% {
    width: 75%;
  }
  90% {
    width: 45%;
  }
  100% {
    width: 100%;
  }
}
/*============
.toggle_btn
=============*/
.toggle_btn {
	width: 40px;
	height: 40px;
	display: block;
	position: fixed;
	top: 20px;
	right: 30px;
	transform: translate(0, 0);
	transition: all .5s;
	cursor: pointer;
	z-index: 3;
}
.itemid-101 .toggle_btn {
	top: 20px;
   right: 30px;
}
header.is-show .toggle_btn {
	top: 20px;
	right: 30px;
}
header.open .toggle_btn {
    position: absolute;
    top: inherit;
    bottom: -110px;
	right: 15px;
}
.toggle_btn span {
	width: 30px;
	height: 2px;
	display: block;
	position: absolute;
	right: 0;
	background-color: #000;
	transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  width: 60px;
  top: 5px;
  animation: equalizer01 7000ms infinite;
}
.toggle_btn span:nth-child(2) {
  width: 30px;
  top: 19px;
  animation: equalizer02 5000ms infinite;
  animation-delay: 0.33s;
}
.toggle_btn span:nth-child(3) {
  top: 33px;
  width: 20px;
  animation: equalizer02 5000ms infinite;
}
header.open .toggle_btn span {
    width: 40px;
    height: 1px;
	background-color: #fff;
}
header.open .toggle_btn span:nth-child(1) {
  transform: translate(0, 10px) rotate(-45deg);
  animation: unset;
}
header.open .toggle_btn span:nth-child(2) {
  opacity: 0;
  animation: unset;
}
header.open .toggle_btn span:nth-child(3) {
  transform: translate(0, -17.5px) rotate(45deg);
  animation: unset;
}

/*============
#mask
=============*/
#mask {
  display: none;
}
header.open + #mask {
	width: 100%;
	height: 100vh;
	background: #000;
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	opacity: .8;
	z-index: 999;
	cursor: pointer;
	transition: all .5s;
}



.wrapper {
	width: 100%;
	min-height: 100%;
	padding-top: 130px;
	padding-bottom: 30px;
	position: relative;
	top: 0;
	transition: all .5s;
	flex: 1;
	overflow-x: hidden;
}
.itemid-101 .wrapper {
	padding-top: 0;
}
section {
	width: 100%;
	background-color: #FFF;
	position: relative;
	padding: 30px 0px;
	text-align: center;
}
.container {
	width: 100%;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding: 0 15px;
	position: relative;
	text-align: center;
}

.live {
	width: 16.15vw;
	max-width: 150px;
	min-width: 92.3px;
	height: 14vw;
	max-height: 130px;
	min-height: 80px;
	background: url("../images/icon_live.png") no-repeat 10px center rgba(204,168,178,0.7);
	background-size: contain;
	-webkit-border-top-left-radius: 65px;
	-moz-border-radius-topleft: 65px;
	border-top-left-radius: 65px;
	-webkit-border-bottom-left-radius: 65px;
	-moz-border-radius-bottomleft: 65px;
	border-bottom-left-radius: 65px;
	position: absolute;
	right: 0;
	top: 36vw;
	z-index: 998;
}
.live.fixed {
	position: fixed;
	top: 100px;
}
section.top-image,
section.top-1 {
	height: 47.272727vw;
	background-color: transparent;
	position: fixed;
	padding: 0;
}
section.top-image {
	opacity: 0;
}
section.top-image.active {
	opacity: 1;
}
section .img-wrap {
	width: 100%;
	height: 100%;
	background: url("../images/img_top4.jpg") no-repeat center top;
	background-size: contain;
	margin: 0 auto;
	position: relative;
}
section.top-image .img-wrap {

}
section.top-image .img-wrap div {
	width: 100%;
	height: 100%;
	background-position: center top;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
section.top-image .img-wrap .slide {
	animation-duration: 15s;
	animation-iteration-count: infinite;
	animation-name: slideFadeIn;
	animation-timing-function: ease;
	opacity: 0;
}
section.top-image .img-wrap .slide:nth-of-type(1) {
	background-image: url("../images/img_top1.jpg");
	animation-delay: 0s;
	opacity: 1;
}
section.top-image .img-wrap .slide:nth-of-type(2) {
	background-image: url("../images/img_top2.jpg");
	animation-delay: 5s;
}
section.top-image .img-wrap .slide:nth-of-type(3) {
	background-image: url("../images/img_top3.jpg");
	animation-delay: 10s;
}
section.top-image .img-wrap .logo {
	background-image: url("../images/logo_slide.png");
	background-size: 22.7% auto;
	background-position: center 12vw;
	z-index: 2;
}

@keyframes slideFadeIn {
  0% {
    opacity: 0;
  }

  16% {
    opacity: 1;
  }

  33% {
    opacity: 1;
  }

  49% {
    opacity: 0;
  }

  100% {
    opacity: 0;
  }
}

section.top-1 {
	position: relative;
}
section.top-1 .img-wrap {
	background-image: url("../images/img_top_mask.png");
	background-position: bottom center;
}

section#machines .container {
	background: url("../images/icon_ufb.png") no-repeat;
	background-position: left 70vw top 14vw;
	background-size: 100px auto;
}
section#machines h5 {
	font-size: clamp(1.6rem, 2.4vw, 2.4rem);
    font-weight: 400;
    color: #FFF;
    background-color: #CCA8B2;
    margin-top: 20px;
    padding: 0px 30px;
    border-radius: 30px;
    display: inline-block;
}
section#machines .machines {
	padding: 80px 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	column-gap: 20px; 
}
section#machines .machines .machine1,
section#machines .machines .machine2,
section#machines .machines .machine3 {
	width: min-content;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
section#machines .machines .machine2 {
	background-repeat: no-repeat;
	background-position: right 5px top 50px;
	background-size: 100px;
}
section#machines .machines h4 {
	font-family: 'Fredoka', sans-serif;
	text-align: center;
}
section#machines .machines .line {
	width: 100%;
	height: 10px;
	border: 0.5px solid #48361E;
	border-bottom: none;
	margin: 10px 0;
}
section#machines .machines img {
	height: 32vw;
	max-height: 350px; 
	display: block;
}
section#machines .machines img.m1 {
	display: block;
}
section#machines .machines img.m2 {
	display: none;
}
section#machines .machines .detail {
	display: flex;
	flex-wrap: wrap;
	text-align: left;
	padding: 15px 0;
}
section#machines .machines .detail .row {
	width: 100%;
	padding: 10px 0;
}
section#machines .machines .detail .row {
	display: flex;
	column-gap: 10px;
}
section#machines .machines .detail .d1 > .row:nth-child(1),
section#machines .machines .detail .d2 > .row:nth-child(1){
	justify-content: space-between;
	border-bottom: 1px solid #48361E;
}
section#machines .machines .machine1 .d1 {
	width: 41%;
	margin-right: 5%;
}
section#machines .machines .machine2 .d1 {
	width: 51%;
	margin-right: 5%;
}
section#machines .machines .machine1 .d2,
section#machines .machines .machine2 .d2,
section#machines .machines .machine3 .d2,
section#machines .machines .machine3 .d1 {
	flex-grow: 1;
}
section#machines .machines .detail > div:last-child {
	width: 100%;
	font-size: 1.3rem;
	border-top: 1px solid #48361E;
	padding: 10px 0;
}
section#machines .machines .detail span {
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-size: clamp(2.4rem, 3.5vw, 3.2rem);
	line-height: 1.2em;
}

section#features {
	background-color: #e5d3d8;
}
section#features::before,
section#features::after {
	content: " ";
	width: 100%;
	height: 60px;
	background-color: #FFF;
	position: absolute;
	left: 0;
	top: 0;
}
section#features::after {
	height: 60px;
	top: inherit;
	bottom: 0;
}
section#features .features {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	column-gap: 40px;
	row-gap: 40px;
	position: relative;
	z-index: 3;
}
section#features .features > div {
	width: calc(50% - 20px);
	background-color: #FFF;
	border: 2px solid #CCA8B2;
	border-radius: 20px;
	padding: 60px 10px 30px;
	position: relative;
}
section#features .features > .feature-5 {
	background-image: url("../images/logo_egao.png");
	background-size: 80px auto;
	background-position: right 15px bottom 15px;
	background-repeat: no-repeat;
}
section#features .features > .feature-1 {
	background-image: url("../images/icon_ufb1.png");
	background-size: 74px auto;
	background-position: right 15px bottom 15px;
	background-repeat: no-repeat;
}
section#features .features > .feature-2 {
	background-image: url("../images/icon_microozone.png");
	background-size: 60px auto;
	background-position: right 15px bottom 15px;
	background-repeat: no-repeat;
}
section#features .features > .feature-3 {
	background-image: url("../images/icon_dani.png");
	background-size: 80px auto;
	background-position: right 15px bottom 15px;
	background-repeat: no-repeat;
}
section#features .features > div h5 span {
	font-weight: 500;
	color: #CCA8B2;
}
section#features .features a.btn {
	width: 160px;
	height: 36px;
	color: #FFF;
	line-height: 36px;
	background-color: #A6847B;
	border-radius: 18px;
	padding: 0 0;
	margin: 20px auto 0;
}
section#features .features .picto,
.modal-content .picto {
	width: 90px;
	height: 90px;
	background: #FFF no-repeat center;
	background-size: contain;
	border: 2px solid #CCA8B2;
	border-radius: 45px;
	position: absolute;
	right: 28px;
	top: -28px;
}
section#features .features > .feature-5 .picto,
.modal-content.feature5 .picto {
	background-image: url("../images/icon_feature5.png");
}
section#features .features > .feature-6 .picto,
.modal-content.feature6 .picto {
	background-image: url("../images/icon_feature6.png");
}
section#features .features > .feature-1 .picto,
.modal-content.feature2 .picto {
	background-image: url("../images/icon_feature2.png");
}
section#features .features > .feature-2 .picto,
.modal-content.feature1 .picto {
	background-image: url("../images/icon_feature1.png");
}
section#features .features > .feature-3 .picto,
.modal-content.feature3 .picto {
	background-image: url("../images/icon_feature3.png");
}
section#features .features > .feature-4 .picto,
.modal-content.feature4 .picto {
	background-image: url("../images/icon_feature4.png");
}
.modal-content {
	max-width: 1000px;
	text-align: center;
	padding: 30px 15px;
	margin: 0 auto;
}
body.modal .modal-content {
	max-width: inherit;
    padding-left: 0;
    padding-right: 0;
}
.modal-content.feature1 {
	background: url("../images/icon_microozone.png") no-repeat top 30px right;
	background-size: 80px auto;
}
.modal-content.feature3 {
	background: url("../images/icon_dani.png") no-repeat top 30px right;
	background-size: 120px auto;
}
.modal-content .picto {
	position: relative;
	right: inherit;
	top: inherit;
	margin: 0 auto ;
}
.modal-content h5 {
	margin: 20px 0;
	position: relative;
}
.modal-content .img {
	max-width: fit-content;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 30px auto;
}
.modal-content .img > div:nth-child(1) {
	width: 100%;
}
.modal-content .img p.caption {
	width: 200px;
	text-align: center;
	margin-bottom: 15px;
}


.accordion {
	width: 100%;
}
.accordion .toggle {
	display: none;
}
.accordion .title,
.accordion .content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.accordion .title {
	font-size: 2.6rem;
	border: solid 1px #A6847B;
	padding: 20px;
	display: block;
}
.accordion .title::after,
.accordion .title::before {
	content: "";
	position: absolute;
	right: 30px;
	top: calc(50% - 0.375em);
	width: 2px;
	height: 0.75em;
	background-color: #CCA8B2;
	transition: all 0.3s;
}
.accordion .title::after {
	transform: rotate(90deg);
}
.accordion .content {
	max-height: 0;
	overflow: hidden;
}
.accordion .toggle:checked + .title + .content {
	max-height: fit-content;
	padding: 20px 0;
	transition: all 1.5s;
}
.accordion .toggle:checked + .title::before {
	transform: rotate(90deg) !important;
}

.faq .accordion .title {
	font-size: 2.0rem;
    line-height: 1.3em;
    text-align: left;
    background-color: #e5d3d8;
    border: none;
    border-radius: 16px;
    padding: 20px 70px;
}
.faq .accordion .title span {
	font-size: 4.0rem;
    vertical-align: -6px;
    margin-right: 10px;
    margin-left: -50px;
}
.faq .accordion .title::after,
.faq .accordion .title::before {
	top: calc(50% - 0.75em);
	height: 1.5em;
}
.faq .accordion .content {
	margin-bottom: 30px;
}
.faq .accordion .toggle:checked + .title + .content {
	padding-bottom: 0px;
	transition: all 0.5s;
}
.faq .accordion .content p {
	width: calc(100% - 100px);
	font-size: 1.8rem;
	margin-left: 70px;
	position: relative;
}
.faq .accordion .content p::before {
	content: "A.";
	font-size: 4.0rem;
	color: #CCA8B2;
	vertical-align: middle;
	margin-right: 10px;
	position: absolute;
    left: -48px;
}
.faq .accordion .content a {
	font-weight: 500;
	color: #CCA8B2;
	display: inline-block;
}
.faq .accordion .content a:hover {
	color: #e5d3d8;
}

section#price-list .content,
section#washable-list .content {
	max-width: 738px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}
section#price-list .content h4 {
	width: 100%;
	margin-bottom: 15px;
}
section#price-list .content h6 {
	width: 100%;
	font-size: 1.8rem;
	font-weight: 400;
	text-align: left;
}
section#price-list .content h6 span {
	font-size: 1.4rem;
	font-weight: 400;
	
}
section#price-list .content h6 img {
	vertical-align: middle;
}
section#price-list .content .row,
section#washable-list .content .row {
	width: 100%;
	display: flex;
	align-items: center;
	column-gap: 15px;
	border-bottom: solid 1px #A6847B;
	padding: 15px 0;
}
section#price-list .content .row {
	text-align: left;
	justify-content: space-between;
}
section#price-list .content .row.last {
	margin-bottom: 30px;
}
section#price-list .content .row .col-1 {
	flex-grow: 1;
}
section#price-list .content .row .col-2 {
	width: 150px;
}
section#price-list .content .row .col-2.sneaker {
	width: 280px;
}
section#price-list .content .row .col-3 {
	width: 60px;
}
section#price-list .content .row p {
	line-height: 1.5em;
	vertical-align: middle;
}
section#price-list .content .row .col-1 p:first-of-type {
	width: 300px;
}
section#price-list .content .row .col-1 p span:not(.machine) {
	font-size: 1.3rem;
	font-weight: 400;
    color: #FFF;
    background-color: #CCA8B2;
    border-radius: 50%;
    padding: 2px 4px;
}
section#price-list .content .row .col-1 p span.dry {
    background-color: #a6847b;
}
section#price-list .content .row .col-1 p span.machine {
	font-size: 1.4rem;
}
section#price-list .content .row .col-1 p img {
	vertical-align: -6px;
	margin-left: 4px;
}
section#price-list .content .row .col-1 p,
section#price-list .content .row .col-2 p {
	display: inline-block;
}
section#price-list .content .row .col-2 p:first-of-type {
	margin-right: 20px;
} 
section#price-list .content .row .col-3 p {
	text-align: right;
}


section#washable-list .content > div:last-child {
	text-align: left;
	border-bottom: none;
	padding-top: 30px;
}
section#washable-list .content .row .col-1 {
	width: calc(50% - 30px);
	text-align: left;
	flex-grow: 1;
}
section#washable-list .content .row .col-2,
section#washable-list .content .row .col-3 {
	width: 25%;
}
section#washable-list .content .row:nth-child(1) .col-2 p,
section#washable-list .content .row:nth-child(1) .col-3 p {
	max-width: 120px;
	text-align: center;
	color: #FFF;
	background-color: #CCA8B2;
	border-radius: 16px;
	padding: 2px 10px;
	margin: 0 auto;
	display: block;
}
section#washable-list .content .row:nth-child(1) .col-3 p {
	background-color: #a6847b;
}
section#washable-list .content .row .col-2 span,
section#washable-list .content .row .col-3 span {
	font-size: 1.3rem;
	display: block;
}

section#services {
	background: url("../images/bg_bulls.png") no-repeat center top #FFF;
	padding-top: 60px;
}
section#services .services {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
section#services .services > div {
	width: 30%;
	background: url("../images/bull_pink.png") no-repeat center top;
	background-size: contain;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	padding-top: 80px;
}
section#services .services > div h5 {
	width: 100%;
	height: calc(20vw - 30px);
	max-height: 140px;
	font-size: clamp(1.5rem, 2.8vw, 2.2rem);
	color: #FFF;
}
section#services .services > div h5 a {
	color: #FFF;
}
section#services .services > div img {
	width: 10vw;
	max-width: 100px;
	max-height: 100px;
}
section#services .services > div p {
	height: 150px;
	flex-grow: 1;
	align-items: stretch;
}
section#services .services > div:nth-child(3) h5 {
    line-height: 1.3em;
}
section#services .services > div:nth-child(3) h5 a {
    font-size: 2.4rem;
    margin-bottom: 4px;
}
section#services .services > div:nth-child(3) h5 span {
    font-size: 1.3rem;
    line-height: 1.2em;
    display: block;
}

section#faq {
	padding-top: 60px;
}
section#faq .btn {
	width: 100%;
	font-size: 2.4rem;
	color: #FFF;
	background-color: #88807b;
	border-radius: 10px;
	padding: 20px 0;
	display: block;
	position: relative;
}
section#faq .btn::after {
	content: "";
	width: 100px;
	height: 90px;
	background: url("../images/icon_faq.png") no-repeat center center;
	background-size: contain;
	position: absolute;
	top: -40px;
	left: calc(50% + 100px);
}

section#howto .video {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	column-gap: 20px;
	row-gap: 15px;
}
.iframe-wrap {
	width: calc(50% - 20px);
	max-width: 470px;
	position: relative;
}
.iframe-wrap::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}
.iframe-wrap iframe {
    width: 100%;
    height: 100%;
	position: absolute;
    top: 0;
    left: 0;
}

section#access .img-laundry {
	width: 100%;
	height: calc((100vw - 30px) * 0.25);
	max-height: 242.5px;
	background: url("../images/img_access.jpg?ver=1.1") no-repeat center top;
	background-size: contain;
	margin-top: 30px;
}
section#access .map {
	position: relative;
}
section#access .map .iframe-wrap {
	width: 100%;
	max-width: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}
section#access .map .iframe-wrap::before {
	padding-top: 35%;
}
section#access .map .detail {
	background: url("../images/img_top_mask.png") no-repeat;
	background-position: center 190.12px;
	background-size: contain;
	padding-top: 32%;
	position: relative;
	z-index: 2;
}
section#access .map .detail h5 {
    font-size: 1.4rem;
    font-weight: 500;
}
section#access .map .detail > div {
	padding: 15px 0;
}
section#access .map .detail > div p {
	text-align: center;
	margin-bottom: 5px;
}
section#access .map .detail > div p.tel {
	margin-bottom: 0;
}
section#access .map .detail > div p.tel + p {
	font-size: 1.3rem;
}
section#access .detail p a {
	font-size: 2.6rem;
	display: inline;
}

.content h4 {
	margin-bottom: 30px;
}

[data-modals-element=modal][data-modals-theme=dark] [data-modals-element=overlay] {
	background-color: rgba(0,0,0,0.8);
}
[data-modals-element=modal][data-modals-theme=dark] [data-modals-element=overlay] {
	backdrop-filter: none;
}
[data-modals-element=modal][data-modals-theme=dark] [data-modals-element=close]{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 32 32' stroke='pink'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M2 2L30 30M30 2L2 30' /%3E%3C/svg%3E");}
[data-modals-element=modal][data-modals-theme=dark] [data-modals-element=close] {
	filter: none;
}

footer {
	background-color: #CCA8B2;
	padding: 20px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
footer nav {
	background-color: transparent;
	padding: 0;
	flex-grow: 1;
}
footer nav ul.mod-menu {
	height: auto;
	justify-content: flex-start;
}
footer nav ul.mod-menu > li {
    max-width: 200px;
}
footer nav ul.mod-menu > li a, nav ul.mod-menu > li span.nav-header {
    font-size: 1.6rem;
    color: #48361E;
    border-bottom: 1px solid #48361E;
    padding-bottom: 3px;
}
footer nav ul.mod-menu li > ul {
    padding-top: 5px;
}
footer nav ul.mod-menu li > ul li a {
    font-size: 1.4rem;
    color: #48361E;
    padding: 0;
}
footer .credit {
	display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}
footer .credit p {
	font-size: 1.2rem;
	text-align: right;
    white-space: nowrap;
}


@media screen and (min-width: 1000px) {
	section#machines .container {
		background-position: left 81% top 125px;
		background-size: 120px auto;
	}
	section#services .services > div p {
    	height: 200px;
	}
}

@media screen and (max-width: 1000px) {
	section#services .services > div {
		padding-top: calc(10vw - 30px);
	}
	section#access .map .detail {
		background-position: center calc((100vw - 30px) *0.196);
	}
  section#services .services > div p {
    height: 200px;
  }
}

@media screen and (max-width: 768px) {
	h1 {
		font-size: clamp(2.0rem, 5.0vw, 5.0rem);
		margin-bottom: 12px;
	}
	h2 {
		font-size: clamp(1.5rem, 3.6vw, 3.6rem);
	}
	
	.itemid-101 .toggle_btn {
		top: 20px;
		right: 30px;
	}
	
	section.top-image,
	section.top-1 {
		height: 47.272727vw;
		padding: 0;
	}
	section#machines h5 {
		margin-top: 15px;
	}
	section#features .features {
		column-gap: 10px;
	}
	section#features .features > div {
		width: calc(50% - 5px);
    }
}

@media screen and (max-width: 600px) {
	h1 {
		font-size: clamp(2.0rem, 6.5vw, 5.0rem);
		margin-bottom: 12px;
	}
	h2 {
		font-size: clamp(1.5rem, 4.7vw, 3.6rem);
	}
	section#machines h5 {
		font-size: clamp(1.6rem, 3vw, 3rem);
		margin-top: 15px;
	}
	
	section#machines .container {
		background-position: left 70vw top 22vw;
		background-size: 90px auto;
	}
	section#machines .machines .machine1,
	section#machines .machines .machine2,
	section#machines .machines .machine3,
	section#machines .machines .machine3 .detail {
		width: 100%;
	}
	section#machines .machines .machine1,
	section#machines .machines .machine3 {
		order: 1;
	}
	section#machines .machines .machine2 {
		background-image: url("../images/icon_mo_ufb_dani.png");
	}
	section#machines .machines .detail .row > div {
		 width: auto;
	}
	section#machines .machines .detail .d1 > .row:nth-child(1),
	section#machines .machines .detail .d2 > .row:nth-child(1){
		flex-wrap: nowrap;
		justify-content: space-between
	}
	section#machines .machines .machine1 .d1,
	section#machines .machines .machine2 .d1 {
		width: 47%;
		margin-right: 6%;
	}
	section#machines .machines img.m1 {
		display: none;
	}
	section#machines .machines img.m2 {
		display: block;
	}
	
	section#price-list .content .row {
		flex-wrap: wrap;
		align-items: flex-end;
	}
	section#price-list .content .row .col-1 {
		width: 100%;
	}
	section#price-list .content .row .col-2.sneaker {
		width: 220px;
	}
	section#price-list .content .row .col-1 p {
		display: block;
	}
	section#price-list .content .row .col-1 p:first-of-type {
		width: fit-content;
	}
	section#price-list .content .row .col-1.dryer p {
		display: inline-block;
	}
	    
}

@media screen and (max-width: 480px) {
	h5 {
		font-size: 2.0rem;
	}
	
	header {
		top: -40px;
		background-size: auto 110px;
	}
	header.is-show {
		top: -40px;
	}
	header.open {
		top: 0;
	}
	header .logo {
		width: 80px;
    	height: 100px;
	}
    header .insta {
        width: 30px;
        height: 30px;
        top: 14px;
        right: 60px;
    }
    .toggle_btn {
        width: 32px;
    }
	.itemid-101 .toggle_btn {
		position: fixed;
  		top: 12px;
  		right: 15px;
	}
	.toggle_btn,
	header.is-show .toggle_btn {
		position: absolute;
  		top: 52px;
  		right: 15px;
	}
    
	.toggle_btn span:nth-child(2) {
		top: 16px;
	}
	.toggle_btn span:nth-child(3) {
		top: 27px;
	}
	header.open .toggle_btn {
		top: inherit;
		bottom: -90px;
	}
    header.open .toggle_btn span:nth-child(1) {
        top: 9px;
    }
	header.open .toggle_btn span:nth-child(3) {
		transform: translate(0, -7.5px) rotate(45deg);
	}
	
	.wrapper {
		padding-top: 90px;
	}
	section {
		padding: 20px 0;
	}
	
	.live {
		top: 34vh;
	}
	.live.fixed {
		top: 80px;
	}
	section.top-image, 
	section.top-1 {
		height: 46vh;
		padding: 0;
	}
	section.top-image .img-wrap div,
	section.top-image .img-wrap {
    	background-size: cover;
	}
	section.top-image .img-wrap .logo {
		background-size: 42% auto;
    	background-position: center center;
	}
	
	section#machines .container {
		background-position: right 10px top 22vw;
		background-size: 90px auto;
	}
	
	section#features .features > div {
		width: 100%;
		padding: 30px 10px;
	}
	section#features .features > div:nth-child(1) {
		background-size: 50px auto;
		background-position: right 15px bottom 10px;
    }
	section#features .features > div:nth-child(3) {
		background-size: 40px auto;
    }
	section#features .features > div:nth-child(4) {
		background-size: 30px auto;
    }
	section#features .features > div:nth-child(5) {
		background-size: 50px auto;
    }
	
	section#features .features a.btn {
		position: absolute;
		left: calc(50% - 80px);
		bottom: -18px;
	}
	section#features .features .picto {
		width: 60px;
		height: 60px;
		right: 10px;
	}
	.modal-content.feature3 {
		background-size: 90px auto;
	}
	.modal-content .img img {
		max-width: 100%;
	}
	.modal-content .img p.caption {
		width: 50%;
	}
	
	
	.accordion .title {
		font-size: 2.0rem;
		padding-right: 60px;
	}
	section#services .services > div {
		width: 100%;
		padding-top: 60px;
		background-size: 250px;
	}
	section#services .services > div h5 {
		width: 100%;
		height: 120px;
		font-size: 2.2rem;
		color: #FFF;
	}
	section#services .services > div img {
		width: 100px;
		height: 100px;
	}
	section#services .services > div p {
		height: fit-content;
		padding-bottom: 15px;
	}
	
	section#faq .btn::after {
		width: 80px;
		height: 70px;
		left: inherit;
		right: 0;
	}
	
	section#howto .iframe-wrap {
		width: 100%;
	}
	
	section#access .map .iframe-wrap::before {
		padding-top: 70%;
	}
	section#access .map .detail {
		padding-top: 68%;
		background-position: center calc((100vw - 30px) *0.556);
	}
	
	footer nav {
		display: none;
	}
	footer .credit {
		justify-content: center;
	}
	
}