html, body{
	scroll-behavior: smooth;
	font-family: 'M PLUS 2', sans-serif;
	max-width: 100%;
    overflow-x: hidden;
	margin: 0;
}

input{	
	margin: 1% 0 1% 0;
}

*{
	box-sizing: border-box;
}

textarea{
	margin: 1% 0 1% 0;
	height: 20%;
	resize: none;
	box-sizing: border-box;
	padding-bottom: 80px;
	border: 1px solid gray;
}

input[type=email], input[type=text], textarea{
	font-size: min(max(5px, 4vw), 20px);
	font-family: 'M PLUS 2', sans-serif;
	width: 70%;
	border: 1px solid gray;
	border-style: hidden;
	border-bottom-style: groove;
}

input:focus::placeholder, textarea:focus::placeholder{
	color: transparent;
}

input:focus, textarea:focus{
	outline: none;
}

input:hover, textarea:hover{
	border: 1px solid #2d7572;
	border-style: hidden;
	border-bottom-style: groove;
}

input[type=submit]{
	width: 20%;
	height: 80px;
	text-align: center;
	vertical-align: middle;
	font-size: min(max(5px, 4vw), 20px);
	font-family: 'M PLUS 2', sans-serif;
	background-color: #126161;
	border-radius: 20px;
	border: none;
	color: white;
	transition-property: background-color;
	transition-duration: 0.3s;
}

input[type=submit]:hover{
	background-color: #76162e;
}

input[type=submit]:active{
	background-color: #d3d3d3;
}

form{
	max-width: 100%;
	margin: auto;
	text-align: center;
	align-items: center;
}

header{
	width: 100%;
	height: 100px;
	background-color: #f4f9f8;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10;
}

.headerList, .newList{
	width: 20%;
	text-align: center;
	text-decoration: none;
	color: black;
	transition-property: color;
	transition-duration: 0.5s;
	align-items: center;
	justify-content: space-around;
}

.newList, .hiddenTxt{
    font-size: min(max(6px, 3vw), 17px);
	cursor: pointer;
}

.headerList:hover, .newList:hover{
	color: #2d7572;
}

.headerList:active, .newList:active{
	color: #76162e;
}

#bgImage{
	width: 100%;
	min-height: 300px;
	position: absolute;
	object-fit: cover;
	z-index: -1;
}

.imgEffect{
	background-color: black;
	opacity: 70%;
	width: 100%;
	height: 100%;
	position: absolute;
}

.box{
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

.txtTitle{	
	width: 100%;
	vertical-align: middle;
	text-align: center;
	font-size: min(max(15px, 4vw), 70px);
	z-index: 1;
	white-space: normal;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: keep-all;
	word-wrap: break-word;
}

.items{
	width: 200px;
	height: 200px;
	font-size: min(max(11px, 4vw), 22px);
	display: inline;
	text-align: center;
	align-items: center;
	margin-left: 50px;
	margin-right: 50px;
	margin-bottom: 100px;
}

.items:hover{
	width: 250px;
	height: 250px;
	font-size: min(max(15px, 4vw), 28px);
}

.items, .hiddenTxt{
	transition-property: width, min-width, max-width, height, font-size, opacity;
	transition-duration: 0.5s;
}

.contactSpan{
    font-size: min(max(6px, 3vw), 17px);
    max-width: 500px;
    margin-left: 10%;
    margin-right: 10%;
}

.imgProducts{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 20px;
}

footer{
	position: static;
	bottom: 0;
	width: 100%;
	height: 200px;
	background-color: #27282b;
	text-align: center;
	vertical-align: middle;
	color: white;
}

.hiddenTxt{
	position: relative;
	opacity: 0;
	width: 0px;
	height: 0px;
	text-align: justify;
	overflow: hidden;
}

.space{
	width: 96%;
	margin: auto; 
	min-height: 300px;
}

#arrow{
     position: fixed;
     z-index: 10;
     width: 50px;
     right: 50px;
     bottom: 50px;
     -webkit-filter: contrast(1.6) invert(0%);
     cursor: pointer;
     -webkit-transition-property: -webkit-filter;
     -webkit-transition-duration: 0.2s;
}

#arrow:hover{
    -webkit-filter: contrast(1.6) invert(20%);
}


.txt{	
    width: 100%;
	height: 50%;
	text-align: center;
	font-size: min(max(10px, 4vw), 27px);
	z-index: 1;
	white-space: normal;
	overflow: hidden;
	text-overflow: ellipsis;
	word-break: keep-all;
	word-wrap: break-word;
}

@media (min-width: 601px) {
    .O3{
        width: 100%; 
        min-height: 700px; 
        background-color: #126161; 
        color: white;
    }
    #logo{
	width: min(max(1000px, 4vw), 200px);
    }
    .headerList{
	font-size: min(max(50px, 4vw), 15px);
    }
    .selected{
    	opacity: 1;
    	width: 18%;
    	height: 200px;
    	margin-left: 50px;
    	margin-right: 50px;
    	margin-bottom: 100px;
    }
    .wall{
    	width: 100%;
    	height: 120px;
    }
}

@media (max-width: 600px) {
    .txt{
        font-size: min(max(8px, 4vw), 18px);
    }
    .O3{
        width: 100%; 
        min-height: 200px; 
        background-color: #126161; 
        color: white;
    }
    #logo{
	    width: min(max(1000px, 4vw), 100px);
    }
    .headerList{
	    font-size: min(max(50px, 4vw), 10px);
    }
    .selected{
    	opacity: 1;
    	width: 30%;
    	height: 200px;
    	margin-left: 5px;
    	margin-right: 5px;
    }
    .wall{
    	width: 100%;
    	height: 30px;
    }
    .items{
    	width: 80px;
    	height: 80px;
    	margin-left: 25px;
    	margin-right: 25px;
    	margin-bottom: 20%;
    }
    
    .items:hover{
    	width: 110px;
    	height: 110px;
    	font-size: min(max(15px, 4vw), 20px);
    }
    .newList, .hiddenTxt, .contactSpan{
	    font-size: min(max(8px, 4vw), 11px);
    }
    .contactSpan{
        max-height: 200px;
    }
    .space{
    	width: 96%;
    	margin: auto; 
    	min-height: 200px;
    }
    input[type=submit]{
    	width: 30%;
    	height: 40px;
    	font-size: min(max(5px, 4vw), 15px);
    }
}