*
{
	font-family:  Camphor, helvetica,  Open Sans, Segoe UI, calibri, Arial, sans-serif;
}

em,strong,mark
{
	font-style : normal;
	font-weight: normal;
}
 
body
{
	margin:0px;
	padding: 0px;
}

@media (max-width: 640px) {
	* {
		box-sizing: border-box;
	}

	.top_right_block, .vision, .vision_pro
	{
		display: none !important;
	}

	.logo_block
	{
		padding-left: 0px!important;
	}

	.searchblock_back_back
	{
		height: auto!important;
		padding: 0px; 
		margin-top:60px!important; 
	}

	.login_content
	{
		width: auto;
		min-width: 80%!important;
	}


	.searchblock_top
	{
		width: 100% !important;
		height: 105%;
	}

.locationsearch_wrapper div
{
	box-sizing: content-box;
	height: 47px!important;
	width: 47px!important;
}

.mainsearch_wrapper div
{
	box-sizing: content-box;
	height: 47px!important;
	width: 47px!important;
}



.locationsearch_wrapper label
{
	box-sizing: content-box;
	height: 43px!important;
	width: 43px!important;

}
.mainsearch_wrapper label
{
	box-sizing: content-box;
	height: 43px!important;
	width: 43px!important;
}

#mainsearch
{
	box-sizing: content-box;
	font-size: 15px!important;
}

#locationsearch
{
box-sizing: content-box;
font-size: 15px!important;
}

.menu_block * 
{
	font-size: 3vh!important;
}

.myprofile_content div > a > div> img
{

		max-height: 15px;
		width: auto;
}

.myprofile_content > div
{
	height: 5vh;
	margin:15px;
	font-size: 0.6em;
}

.global_pro
{
	margin-top: 61px!important;
}


}

@media (max-device-width:768px) and (orientation: landscape) {
  html {
   -webkit-text-size-adjust: 100%;
   -ms-text-size-adjust: 100%;
  }
}

@media (max-width: 860px) {
.vision h1,.vision strong, .vision_pro h1, .vision_pro strong
{
	font-size: 15px!important;
	}

.deconnexion_popup
{
	position:fixed;
	top:50PX;
	right:11%!important;
}

}


html{
overscroll-behavior-y: contain;
overflow-x: hidden;
}

.header_fixed
{
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	background: white;
}


.hide_show
{
	display:none;
}

.show_hide:hover + .hide_show
{
	display: block;
}

.hide_show:hover
{
	display: block;
}

.deconnexion_popup
{
	position:fixed;
	top:50PX;
	right:8.7%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

 .deconnexion_popup > div
 {
 	width: 210px;
 	height: auto;
 	background: rgb(225,225,225);
 	border-radius: 4px;
 	display: flex;
 	flex-direction: column;
 	justify-content: center;
 	align-items: center;
 }

 .deconnexion_popup a div
 {
 	width: 180PX;
 	height:50px;
 	border-radius: 4px;
 	display: inline-flex;
 	justify-content: center;
 	align-items: center;
 	background:rgb(0,129,80);	
	color: white;
	margin-top: 15px;
 }

  .deconnexion_popup a div:hover
 {
 	background: rgb(0,168,104);
 }

 .sidebar_subtitle2
 {
 	background: rgb(180,180,180)!important;
 	margin-bottom: 15px;
 	align-items: center;
 }

  .sidebar_subtitle2:hover
 {
 	background: rgb(190,190,190)!important;
 }




h1,h2,h3
{
color: rgb(1,70,8);
font-weight:bold;
}

h1
{
	font-size: 1.5em;
	text-align: center;
}

h1 strong
{
	font-weight: bold;
}

h2
{
	font-size: 1.2em;
	text-align: center;
}

h3
{
	font-size: 1em;
}

p
{
	text-align: left;
	color:black;
	font-size: 1em;
}

ul
{
	text-align: left;
	color:black;
	font-size: 1em;
	list-style-type: none;
}

a
{
	color: rgb(1,70,8);
	text-decoration: none;
}

a:hover
{
	color:rgb(0,129,80);
}

/*centrer le contenu*/
.wrapper
{
width: 95%;
margin:auto;
}

/*taille img bmenu*/
.menu_block img
{
	max-height: 20px;
	width:auto;
}

/*Taille img close bmenu*/
.menu_close img
{
	max-height: 20px;
	width:auto;
}

/*taille img logo*/
.logo_block img
{	
	max-height: 50px;
	width: auto;
	max-width: 100%;
}



/*taille img login, cart & fav*/
.top_right_block img
{
	max-height: 25px;
	margin-top: 5px;
	width: auto;
}



/*taille texte login, cart & fav*/
.top_right_block p
{
	font-size:10px;
	text-align: center;
}


.header_block
{
	/*disposition de la bannière*/
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;

	/*hauteur fixe*/
	height: 60px;

	/*marge */
	margin-left:5%;
	margin-right: 5%;

	/*bordure du bas*/
	border-bottom: rgb(230,230,230) solid 1px;
	background: white;

}

.menu_block
{
	/* disposition du burgermenu*/
	display: flex;	
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;

	
	/* proportion du block menu*/
	flex:0.5;
	
}

.logo_block
{
	
	/* disposition du logo*/
	display: flex;	
	flex-direction: row;
	justify-content: center;
	align-items: center;


/* proportion du block menu*/
	flex:4;

/*Décalage logo*/
	padding-left : 13%;

}

.top_right_block
{
	/*disposition des boutons login, cart et fav */
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;

	/* proportion du block des boutons login etc.*/
	flex: 1.5;



	
}

.lang_block img
{
	/*Taille est disposition img langblock*/
	width: 10px;
	height: auto;

	margin-right: 5px;
	margin-bottom: 12px;
}


.lang_block
{
	/*disposition du bouton langue*/
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: flex-end;


	/* proportion du block menu*/
	flex:1.2;
	min-width: 60px;
}

.login_block
{
	/*disposition du bouton login*/
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;

	/* proportion du block menu*/
	flex:1;
	min-width: 60px;
}

.cart_block
{
	/*disposition du bouton panier*/
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;

	/* proportion du block menu*/
	flex:1;
	min-width: 60px;
}

.fav_block
{
	/*disposition du bouton fav*/
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;

	/* proportion du block menu*/
	flex:1;
	min-width: 60px;
}


.vision, .vision_pro
{
	/* disposition de vision */
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;


	/* Proportion de vision*/
	height : 6em;
	margin-top:61px;

}


.homepage_content
{
	/*disposition verticale du contenu de la page*/
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;

	padding-top: 5vh;
	padding-bottom: 5vh;
}
.login_title
{
	margin-top: 50px;
}

	.login_content
	{
		width: auto;
		min-width: 40%;
		background:rgb(240,240,240);
		border-radius: 4px;
	}

	.login_block_field
	{
	
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: center;
	}

	.login_block_field form
	{
		width: 90%;
		height: 90%;
		padding: 10px;
		display: inline-flex;
		flex-direction: column;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: flex-start;

	}


		.login_block_field label
	{
		margin-bottom: 3px;
		color: rgb(1,70,8);

	}

	.login_block_field form input[type='text'],.login_block_field form input[type='password']
	{
		background: white;
		border-radius: 4px;
		min-height: 40px;
		width: 98%;
		padding-left:10px;
		font-size: 1em;
		margin-bottom: 20px;
		border:0.5px solid rgb(1,70,8);
	}

	.login_block_field form input[type='text']:focus,.login_block_field form input[type='password']:focus,.login_block_field form textarea:focus
	{
		border:1px solid rgb(0,168,104);
		outline: none;
	}

	.login_block_field form input[type='file']
	{
		background: white;
		min-height: 30px;
		width: 98%;
		padding-left:10px;
		font-size: 0.7rem;
	}

	input[type="file"]::-webkit-file-upload-button{
    height:30px;
    }

	.login_block_field form textarea
	{
		background: white;
		min-height: 80px;
		width: 98%;
		font-size: 1em;
		padding:10px;
		border:0.5px solid rgb(1,70,8);
		border-radius: 4px;
		margin-bottom: 20px;
		resize: none;
	}

	.login_block_field span
	{
		display: inline-flex;
		flex-direction: row-reverse;
		align-items: center;
	}


.joinus
{
	background: rgb(1,70,8);
	border-radius: 4px;
	color: white;
	height: 10vh;
	padding: 5px;	

	display: inline-flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}

.mainbutton
{
	background:rgb(0,129,80);	
	color: white;
	border-radius: 4px;
	font-size: 1em;
	min-height: 50px;
	min-width: 60%;
	padding: 5px;	
	border-style:none;

	align-self: center;

	display: inline-flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}

.mainbutton:hover
{
	color: white;
	background: rgb(0,168,104);
	cursor: pointer;
}

.secbutton
{
	color: rgb(0,129,80);
	background: white;
	border: 1px solid rgb(0,129,80);
	border-radius: 4px;
	font-size: 1em;
	min-height: 50px;
	min-width: 60%;
	padding: 5px;	
	
	align-self: center;


	display: inline-flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}

.secbutton:hover
{
	background:rgb(0,129,80);	
	color: white;
	cursor: pointer;
}

.selectme
{
	max-height: 17vh; 
	max-width: 20vw;
}

.probutton
{
	margin-right: 18%;
}

.joinus:hover
{
	background:rgb(0,129,80);
}



.categories_blocks
{
	/*disposition des blocks de catégories*/
	display: flex;
	flex-wrap: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items:center;
	align-content: space-around;
}

.categories_blocks div
{
	/*Gestion de la taille des blocs*/
	border-radius: 3px;
	min-height: 108px;
	min-width:192px;
	width: 25%;
	height:15vw;
	
	
	/*espacement*/
	margin:10px;

	/*centrage du texte */
	display:inline-flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-end;	
}

.categories_blocks div div
{
	/* Filtre léger sur les images */
	background-color: rgba(150,150,150,0.2);

	/*Gestion de la taille des sous-blocs*/
	min-height: 108px;
	min-width:192px;
	width: 100%;
	height:100%;

	/*Suppression des marges des sous-blocs*/
	padding: 0px;
	margin: 0px;

	/*traitement du texte*/
	color:white;
	font-size: 1.5rem;
	font-weight: bold;
}

/*application des fonds*/
.cat_bio
{
	background: no-repeat url("../images/illustrations/cat_bio.jpg");
	background-size: cover; 

}

.cat_boucheries
{
	background: no-repeat url("../images/illustrations/cat_boucheries.jpg");
	background-size: cover;
}

.cat_boulangeries
{
	background: no-repeat url("../images/illustrations/cat_boulangeries.jpg");
	background-size: cover;
}

.cat_producteurs
{
	background: no-repeat url("../images/illustrations/cat_producteurs.jpg");
	background-size: cover;
}

.cat_epiceries
{
	background: no-repeat url("../images/illustrations/cat_epiceries.jpg");
	background-size: cover;
}


.cat_fleuristes
{
	background: no-repeat url("../images/illustrations/cat_fleuristes.jpg");
	background-size: cover;
}

.cat_fromageries
{
	background: no-repeat url("../images/illustrations/cat_fromageries.jpg");
	background-size: cover;
}

.cat_marches
{
	background: no-repeat url("../images/illustrations/cat_marches.jpg");
	background-size: cover;
}


.cat_librairies
{
	background: no-repeat url("../images/illustrations/cat_librairies.jpg");
	background-size: cover;
}

.cat_poissonneries
{
	background: no-repeat url("../images/illustrations/cat_poissonneries.jpg");
	background-size: cover;
}


.cat_primeurs
{
	background: no-repeat url("../images/illustrations/cat_primeurs.jpg");
	background-size: cover;
}


.cat_patisseries
{
	background: no-repeat url("../images/illustrations/cat_patisseries.jpg");
	background-size: cover;
}

footer
{
	display: flex;
	flex-direction: column;
	flex-wrap:nowrap;
	justify-content: space-around;
	align-items: center;


	/*couleur de fond*/
	background: rgb(242,242,242);
	min-height: auto;
	padding: 10px;
}

.footer_block
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch;

	width: 100%;
}

.reseaux
{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	width: 40%;
	margin-top: 1em;
}

.reseaux div
{
	flex:1;

	display: flex;
	flex-direction: column;
	justify-content: center;
	margin-left: 10px;
	margin-right: 10px;
	width: 15%;
}

.reseaux  div *
{
	max-height:30vh;
	height: 2em;
	width: auto;
	fill: rgb(1,70,8);
}

.copyright
{
	margin:20px;
	align-self: flex-start;
}

.activation_content
{
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-wrap: nowrap;
	align-items: center;
	height: 100vh;
	border:1px solid white;
}

.sidebar
{
	width: 20vw;
	min-width: 150px;
	padding-top: 0px;
	padding-right: 0px;
	border-right: rgb(230,230,230) solid 2px;

	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;
}

.sidebar h2, .sidebar>div
{
	border-bottom: 1px solid rgb(240,240,240);
}

.myprofiletitle
{
	background: rgb(240,240,240);
	margin: 0;
	width: 100%;
	height: 73.5px;

	display:flex;
	justify-content: center;
	align-items: center;

}

.sidebar h2
{
	margin: 0;
}

.sidebar .button_pros
{
	background:rgb(0,129,80);	
	color: white!important;
	height: 45px;
	font-size: 0.8em;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.sidebar .button_pros:hover
{
	background: rgb(0,168,104);
	cursor: pointer;
}

.sidebar .sidebar_subtitle
{
	height: 45px;
	font-size: 1em;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding-left: 5px;
	font-weight: bold;
	background: rgb(250,250,250);
	color: rgb(1,70,8);
}
.sidebar ul
{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: stretch;
}

.sidebar ul a li
{
	font-size: 0.8em;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	padding-left: 5px;
	margin-bottom: 6px;
}

.sidebar a div img
{
	max-width: 15px;
	height: auto;
}

.sidebar a .sidebar_subtitle
{
	display: flex;
	justify-content: center;
	align-items: center;
	background:rgb(230,230,230);	
}

.sidebar a .sidebar_subtitle:hover
{
	background: rgb(0,168,104);
	cursor: pointer;
}

.sidebar_subtitle span
{
	margin-left: 5px;
	margin-right: 5px;
}

.sidebar_subtitle2 span
{
	margin-left: 5px;
	margin-right: 5px;
}

.globalarea
{
	width: 100%;
	height: 100%;
	margin-top: 60px;

	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: stretch;
}

.mainarea
{
width: 80vw;
/*margin-right: 5%;*/
display: flex;
flex-direction: column;
flex-wrap: nowrap;
justify-content: flex-start;
align-items: center;
}

.welcome_message
{
	width: 100%;
	padding-bottom: 10px;
	padding-top: 10px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	background:rgb(240,240,240);
}

.welcome_message h2
{
flex:1;
margin-right: 2px;
min-width: 300px;
margin-bottom: 0px;
margin-top: 0px;
}
.welcome_message input[type="search"]
{
	max-width: 70%;
	margin: 0px;
}

.welcome_message input[type="submit"]
{
	display: none;
}

.welcome_message form
{
background: none;
padding: 0;
flex:1.5;
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: center;
align-items: center;
margin-top: 10px;
margin-bottom: 10px;
}


.middle_area
{
	width: 80%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	margin-top:30px;
	height: auto;
}
.middle_area_header
{
	width: 90%;
	border:1px solid;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	align-self: center;
}

.middle_area .login_block_field
{
	padding-top:10px;
	padding-bottom: 10px;
	width: 80%;
	height: 100%;
	background: rgb(240,240,240);
	border-radius: 4px;
	margin-bottom: 30px;
	display: flex;
}

.middle_area .login_block_field form
{
	width: 90%;
	margin: auto;
}
.address_block
{
	display: flex;
	flex-direction:row; 
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;

	width: 100%;
}

.full_address_block
{
	margin: auto;
	width: 100%;
}
.address_block .child1
{
flex:1.1;
min-width: 120px;
width:25%;
margin-right: 10px;
}

.address_block .child1 input
{
max-width: 105px;
padding-left: 4px;
}


.address_block .child2
{
flex:6;
min-width: 60%;
}

.address_block2
{
	display: flex;
	flex-direction:row; 
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;

	width: 100%;
}

.address_block2 .child1
{
flex:1.1;
min-width: 130px;
width:25%;
margin-right: 10px;
}

.address_block2 .child1 input
{
max-width: 105px;
padding-left: 4px;
}


.address_block2 .child2
{
flex:6;
min-width: 60%;
}

.myprofile_content
{
	width: 100%;
	height: 70%;

	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
}

.myprofile_content > div
{
	min-width: 180px;
	width: 25%;
	height: 25vh;
	background: rgb(240,240,240);
	margin:15px;
	border-radius: 4px;
	color: rgb(1,70,8);
	font-weight: bold;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	padding: 0;
	font-size: 0.8em;
}

.myprofile_content > div:hover
{
	background: rgb(230,230,230);

}

.myprofile_content > div > a > div
{
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		text-align: center;
}

.myprofile_content > div *:hover
{
	color: rgb(1,70,8);
}


.myprofile_content div > a > div> img
{

		max-height: 50px;
		width: auto;
}

.myprofile_content a
{
	display: block;
	height: 100%;
}
.myprofile_content .picto
{
	height: 70%;
}

.myprofile_content .libelle
{
	height: 30%;
}

.presentation_content
{
	width: 100%;
	height: 70%;

	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
}

.presentation_content > div
{
	min-width: 180px;
	width: 20%;
	min-height: 30vh;
	margin:15px;
	border-radius: 4px;
	color: rgb(1,70,8);

	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: stretch;
	padding: 2px;
	font-size: 0.9em;
}

/*.presentation_content > div > div
{
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	text-align: center;
}*/


.presentation_content div > div> img
{

	max-height: 60px;
	width: auto;
}

.picto2
{

	max-height: 80px!important;
	width: auto;
}

.presentation_content .picto
{
	height: 70%;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	text-align: center;
	flex: 4;
}

.presentation_content .libelle
{
	height: 20%;
	text-align: center;
	margin: auto;
	flex: 1;
}

.presentation_content .libelle, .presentation_content .libelle strong
{
	font-weight: bold;
}


.vision_pro
{
	margin-left: 0;
	margin-right: 0;
	height: 20vh;
}

.vision_pro >div
{
		/* Filtre léger sur les images */
	
		background: no-repeat url("../images/illustrations/backback.jpg");
	background-size: cover; 
	height: 100%;
	width:100%;
}

.vision_pro >div >div
{
	background-color: rgba(150,150,150,0.5);
	height: 100%;
	width:100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.vision_pro h1
{
		color: white;
}

.global_pro
{
	width: 100%;
	min-height: 100%;
	margin-bottom: 30px;

	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;

}

.whyus
{
	width: 95%; 
	min-height: 65vh;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	margin-top: 10px;


}


.smallform
{
	min-width: 350px;
	align-self: flex-start;
	margin-top: 0;
	flex:2;
}

.smallform .login_block_field
{
	width: 100%;
}

.smallform .login_block_field .secbutton a:hover
{
	color: white!important;
}

.smallform .login_block_field .secbutton:hover > a
{
	color: white!important;
}


.sub_whyus
{
	flex:4;
	min-width: 400px;
	min-height: 100%;

}

.whyus div ul
{
	display: inline-flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: flex-start;

	min-height: 18rem;
	margin-left: 25px;
	color: rgb(1,70,8);
	font-weight: bold;
}

.sub_whyus ul div
{
	display: inline-flex;
	flex-wrap: nowrap;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 10px; 
}

.sub_whyus ul div li span
{
margin-left: 15px;
text-decoration: underline;
font-size: 0.7em;
}

.sub_whyus ul div img
{
	max-height:55px;
	margin-right: 20px;
}


.whyus h2
{
	text-align: left;
	text-indent: 10px;
}

.advantages
{
	width: 100%;
}

.advantages >h1
{
	width: 100%;
	height: 20vh;
	background: rgb(240,240,240);
	display: flex;
	justify-content: center;
	align-items: center;
}

.advantages ol
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;

	list-style: none;
	 counter-reset: my-awesome-counter;

}

.advantages ol>div
{
	max-width: 25%;
	min-width: 300px;

}

.advantages ol li {
	
  counter-increment: my-awesome-counter;
}

ol li:before {
  content: counter(my-awesome-counter) ". ";
  color: rgb(1,70,8);
  font-weight: bold;
}


 .advantages ol h2
 {
 	text-align: left;

 	font-size: 1.3em;
 	min-height: 80px;
 }

 .advantages ol h2 + div
 {
 	font-size: 0.9em;
 	min-height: 40px;
 	line-height: 200%;
 	text-align: justify;
 }

.advantages ol img
{
	max-height: 120px;
}

.img_center
{
	display: flex;
	justify-content: center;
	align-items: center;
}

.tarifs >h1
{
	width: 100%;
	height: 20vh;
	background: rgb(1,70,8);
	display: flex;
	justify-content: center;
	align-items: center;
	color: white;
}

.tarifs
{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.tarifs>div
{

	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	width: 100%;
}

.tarifs > div > h2:nth-child(2)
{
	font-size: 1.5rem;
}

.tarifs_table
{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;

	min-height: 10rem;
	width: 30%;
	min-width: 300px;

	background:rgb(250,250,250);
	border-radius: 4px;
	border:0.5px solid rgb(230,230,230);
}

.tarifs_table h3
{
	border-bottom: 0.5px solid rgb(230,230,230);

	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	margin:0;
	padding-top: 16px;
	padding-bottom: 16px;
}

.tarifs_table .desc
{
	max-width: 60%;
	text-align: center;
	line-height: 150%;
	min-height: 6rem;
	display: flex;
	justify-content: center;
	align-items: center;
}

.tarifs_amount
{
	font-weight: bold;
	color: rgb(1,70,8);
	min-height: 4rem;
}

.tarifs_amount .currency
{
	font-size: 0.9em;
	flex: 1;
}

.tarifs_amount .frequency
{
	font-size: 1.3em;
	flex:2;
}

.tarifs_amount .flex_cur_freq
{
	display: inline-flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
}

.tarifs_amount .whole_tarif
{
	display: inline-flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	font-family: Camphor, Open Sans, Segoe UI, sans-serif;
}

.tarifs_amount .number
{
	font-size: 3em;
}

.tarifs_amount .plus_sign
{
	margin-left: 15px;
	margin-right: 15px;
	font-size: 1.5em;
}

.tarifs_amount .number2
{
	font-size: 2em;
	font-family: Camphor, Open Sans, Segoe UI, sans-serif;
}

.tarifs_amount .percent
{
	font-size: 0.9em;

}

.tarifs_table ul
{
	min-height: 6rem;
	width: 70%;
	padding-left: 0;

	text-align: center;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	font-size: 0.9em;
}

.tarifs_table ul li
{
	text-indent: 0px;
	width: 100%;
	margin-bottom: 20px;
	line-height: 150%;

}

.tarifs_table .bottom_tarifs
{
	background: rgb(240,240,240);
	border-top: rgb(230,230,230);

	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	margin:0;
	padding-top: 16px;
	padding-bottom: 16px;

	color:rgb(1,70,8);
}

.tarifs_table .a_bottom_tarifs
{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.tarifs_table .bottom_tarifs:hover
{
	background: rgb(230,230,230);
	cursor:pointer;
}


.first_page_element
{
	width: 100%;
	margin-top: 61px;

}

.global_area
{
	border: 1px solid;
}

.header_edit_shop
{
	background: rgb(240,240,240);
	margin: 0;
	width: 100%;
	height: 15vh;

	display:flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;

}

.header_edit_shop h1
{
	flex:10;
}

.header_edit_shop div
{
	flex:4;
}

.header_edit_shop img
{
	max-width: 150px;
	margin-right: 50px;
}



.global_shop
{
	width: 100%;
	min-height: 100%;

	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
}

.shop_description_block
{
	width: 90%;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
	margin-top: 30px;
	padding: 15px;
}


.modification
{
	align-self: flex-end;
	margin-right: 50px;
}

.modification > label > img
{
	max-height: 60px;
}

.shop_description_main
{
	width: 100%;

	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: stretch;
	padding: 5px;
}

.shop_description_main > :nth-child(2)
{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;

	flex: 4;

	min-width: 300px;
	margin-right: 10px;
	margin-left: 10px;	

}

.shop_description_main > :nth-child(3)
{
	display:flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: stretch;

	flex: 2;
}

.shop_description_block .shop_name
{
	margin-bottom: 40px;
	margin-top: 0px;
}

.shop_photo
{
	width: 300px;
	height: 200px;
	border: 1px solid rgb(230,230,230);
	border-radius: 4px;

	display: inline-flex;
	justify-content: center;
	align-items: center;
}


.shop_description
{
	height: 100%;
	margin-top: 5px;
	display: inline-flex;
	justify-content: flex-start;
	align-items: flex-start;
	padding: 10px;
	font-size: 0.9rem;
	text-align: justify;
}

.shop_horaires
{
	margin-top: 5px;
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: flex-start;
	align-items: center;
}

.shop_horaires h3
{
	margin: 6px;	
}


.shop_horaires > div
{
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start; 
}

.shop_horaires table *
{
  vertical-align: top;
  font-size: 0.7rem;
  text-align: left;
  white-space: nowrap;
}

.shop_horaires table
{
	
	margin-left: 4px;
	margin-right:4px;
}


.shop_horaires_time
{
	min-width: 70px;
}

.shop_address
{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}

.shop_address a
{
	font-size: 0.8rem;
	text-decoration: underline;	
		
}

.shop_address div
{
	font-size: 0.8rem;
		
}

.shop_address .shop_address_sub
{
	font-weight: bold;
	min-width: 75px;
	text-align: left;
}

.shop_address .shop_address_info
{
	width: 150px;
	overflow-wrap: break-word;
}

.shop_address h3
{
	margin: 4px;	
	align-self: center;
}

.shop_address > div
{
	display: flex;
	flex-direction: row;
	justify-content:flex-start;
	align-items: flex-start;

	margin-bottom: 3px;
	margin-top: 3px;
}


.shop_categories
{
	display: flex;
	flex-wrap: wrap-reverse;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	padding-left: 8px;
}

.shop_categories h3
{
	margin: 4px;
}

.departments_bar_title
{
	background: rgb(240,240,240);
	margin: 0;
	width: 100%;
	height: 85px;

	display:flex;
	justify-content: center;
	align-items: center;
}

.global_shop .middle_area
{
	width: 95%;
	margin-bottom: 30px;
	min-height: 1100px;
	justify-content: flex-start;
}

.resultsdisplay
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	align-content: space-around;
}

.global_shop .resultcontainer
{
	border: 0.5px solid rgb(230,230,230);
	border-radius:4px;
	margin: 15px;
	max-width: 250px;
}

.global_shop .resultcontainer .product_photo img
{
	max-width: 250px;
}

.global_shop .resultcontainer
{
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
}

.global_shop .resultcontainer .product_description_block
{
	font-size: 0.8rem;
	width: 95%;
	text-align: justify;
	margin:4px;
}

.global_shop .resultcontainer .product_description_block *
{
	margin:4px;
}

.global_shop .resultcontainer .product_origine
{
	margin-left:0;

	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.global_shop .resultcontainer .product_footer
{
	align-self: flex-end;

	width: 95%;
	margin: 4px;

	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}

.product_price
{
	color: rgb(1,70,8);
	font-weight: bold;
}

.add_to_cart img
{
	max-height: 40px;
}

.shop_description_block:hover
{
	background: rgb(250,250,250);
	border-radius: 4px;
}

.mini_button
{
	padding: 6px;
	margin-bottom:10px;
	background:rgb(0,129,80);
	border-radius: 4px;
	color: white; 
	border: none;
	outline: none;
}

.mini_button:hover
{
	background: rgb(0,168,104);
	cursor: pointer;
}

.switch {
  position: relative;
  display: inline-block;
  width: 60px;
  height: 34px;
}

.switch input { 
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  -webkit-transition: .4s;
  transition: .4s;
}

.slider:before {
  position: absolute;
  content: "";
  height: 26px;
  width: 26px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  -webkit-transition: .4s;
  transition: .4s;
}

input:checked + .slider {
  background-color: rgb(0,129,80);
}

input:focus + .slider {
  box-shadow: 0 0 1px rgb(0,129,80);
}

input:checked + .slider:before {
  -webkit-transform: translateX(26px);
  -ms-transform: translateX(26px);
  transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
  border-radius: 34px;
}

.slider.round:before {
  border-radius: 50%;
}