
@font-face {
    font-family: 'alegreya_sansregular';
    src: url('fonts/alegreyasans-regular-webfont.eot');
    src: url('fonts/alegreyasans-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/alegreyasans-regular-webfont.woff2') format('woff2'),
         url('fonts/alegreyasans-regular-webfont.woff') format('woff'),
         url('fonts/alegreyasans-regular-webfont.ttf') format('truetype'),
         url('fonts/alegreyasans-regular-webfont.svg#alegreya_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'alegreya_sansbold';
    src: url('fonts/alegreyasans-bold-webfont.eot');
    src: url('fonts/alegreyasans-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('fonts/alegreyasans-bold-webfont.woff2') format('woff2'),
         url('fonts/alegreyasans-bold-webfont.woff') format('woff'),
         url('fonts/alegreyasans-bold-webfont.ttf') format('truetype'),
         url('fonts/alegreyasans-bold-webfont.svg#alegreya_sansbold') format('svg');
    font-weight: normal;
    font-style: normal;

}

/* Style the index */

body
{
	margin: 0;
	padding: 0;
	font-family: 'alegreya_sansregular', Arial, sans-serif;
}

#bloc_page
{
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0;
	padding: 0;
}

header
{
	width: 100%;
}

#PC_menu
{
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	height: 100px;
	align-items: flex-end;
}

#logo
{
	text-align: center;
	vertical-align: middle;
	padding: 0px 5%;
}

#main_nav
{
	display: flex;
	justify-content: flex-end;
}

#main_nav a
{
	margin-right: 30px;
	border-bottom: 6px solid white;
	font-size: 1.5em;
}

#main_nav a:hover
{
	border-bottom: 6px solid #ddffdd;
	transition: border-bottom-color ease-in-out 300ms;
}

.nav_link
{
	display: block;
	padding: 10px 8px;
	text-decoration:none;
	color:inherit;
	background-color:inherit;
	text-align:center;
	font-weight: bold;
	font-size: 1.2em;
}

#bandeau_image
{
	width: 100%;
	height: 48vw;
	margin-bottom: 50px;
	background: blue;
}

#bandeau_image p
{
	text-align: center;
	padding: 0px;
	margin-top: 0px;
}

.sec_pics, .sec_pics_l, .sec_pics_r
{
	width: 100%;
	display: flex;
	justify-content: center;
	margin-bottom: 110px;
	align-items: center;
}

.img
{
	background: none;
	width: 40%;
	text-align: center;
	height: 200px;
}

.img_nofile
{
	background: rgba(127,226,162,0.7);
	width: 40%;
	text-align: center;
	height: 200px;
}

.img_l
{
	margin-left: 10%;
	margin-right: 5%;
}

.img_r
{
	margin-right: 10%;
	margin-left: 5%;
}

#img1
{
	position: relative;
	top: -100px;
}

#img2
{
	position: relative;
	top: -200px;
}

#img3
{
	position: relative;
	top: -200px;
}

.im450
{
	width: 450px;
	height: auto;
}

.im400
{
	width: 400px;
	height: auto;
}

.text
{
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.text_r
{
	margin-right: 10%;
	margin-left: 5%;
}

.text_l
{
	margin-left: 10%;
	margin-right: 5%;
}

.text h1
{
	text-align: left;
	font-size: 2em;
	font-weight: bold;
	font-family: 'alegreya_sansbold', Arial, sans-serif;
}

.text p, .text ul 
{
	width: 450px;
	padding: 10px 10px;
	text-align: left;
	font-size: 1.5em;
}

.text ul 
{
	margin: 0px 0px 10px 20px;
	padding-top: 0px;
	padding-bottom: 0px;
	list-style-type: none;
}

.text li
{
	margin-bottom: 15px;
	position: relative;
}

.text li::before
{
	content: "ㅍ";
	position: absolute;
  left: -1.5em; 
  top: 0.2em;        
  font-size: 0.8em;
  font-weight: bold;
}

.bouton {
  background-color: #04AA6D;
  color: white;
  padding: 12px 20px;
  border: none;
  border-radius: 20px;
  cursor: pointer;
  text-decoration: none;
  text-align:center;
	font-weight: bold;
	font-size: 1.4em;
	width: auto;
	margin: auto;
}

/* When moving the mouse over the button, add a darker green color */
.bouton:hover {
  background-color: #45a049;
}

#tarifs
{
	padding: 20px 0px;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
	background: rgba(255, 255, 204, 0.7);
}

#tarifs h1
{
	font-size: 1.8em;
	font-weight: bold;
}

#tarifs h2
{
	font-size: 1.4em;
	font-weight: bold;
}

#tarifs a 
{
	margin: 0px 50px;
}

.sep_fleur
{
	display: flex;
	flex-direction: row;
	justify-content: center;
	margin-top: 40px;
	width: 100%;
}

.small_green_line
{
	background: rgba(127,226,162,1);
	width: 15%;
	height: 2px;
	margin: 40px 2.5%;
}

.fa-leaf
{
	padding: 20px;
  font-size: 30px;
  width: 30px;
	text-align: center;
  color: rgba(127,226,162,1);
}

#formats
{
	display: flex;
	flex-direction: row;
	justify-content: center;
	text-align: center;
	width: 100%;
}

.format
{
	margin: 50px 5% 100px 5%;
	width: 250px;
}

#perso

{
	padding-right: 0px;
}

.fa-facebook, .fa-instagram 
{
  padding: 20px;
  font-size: 30px;
  width: 30px;
  text-align: center;
  text-decoration: none;
  border-radius: 50%;
  color: black;
  border: 2px solid black;
  margin: 0px 20px;
}

/* Set a specific color for each brand */

/* Facebook */
.fa-facebook:hover {
  background: #3B5998;
  color: white;
  border: 2px solid #3B5998;
}

/* Instagram */
.fa-instagram:hover {
  background: url(images/insta_color_s.jpg) center;
  color: white;
  border: 2px solid rgba(0,0,0,0);
}

footer
{
	background: rgba(127,226,162,1);
	width: 100%;
	height: 230px;
	padding-top: 40px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#SNS, .deux_boutons
{
	display: flex;
	flex-direction: row;
	justify-content: center;
	margin-bottom: 35px;
}

.pale_yellow_line
{
	background: #ffffcc;
	width: 80%;
	height: 2px;
	margin-bottom: 30px;
}

#contact_FAQ
{
	color: white;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

#contact_FAQ a 
{
	text-decoration: none;
	color: inherit;
	font-size: 1.2em;
	width: 60px;
}

#contact_link
{
	text-align: right;
}

#FAQ_link
{
	text-align: left;
}

#contact_FAQ a:hover
{
	text-decoration: underline;
}

#contact_FAQ p 
{
	margin: 0px 20px;
}

#credits
{
	color: white;
	display: flex;
	flex-direction: row;
	justify-content: center;
}

#credits p 
{
	margin: 20px 4%;
	margin-bottom: 0px;
	font-size: 1em;
	width: 300px;
}

#concep
{
	text-align: right;
}

#illus
{
	text-align: left;
}

/* Menu mobile */

#mobile_menu
{
	display: none;
}

.hamburger
{
	display: flex;
	justify-content: space-between;
	align-items: center;
	overflow: hidden;
  position: relative;
  width: 100%;
}


/* Style the hamburger menu */
.hamburger a {
  display: block;
  font-size: 4.5em;
  color: black;
  padding: 14px 10%;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(255,255,255,0.4);
}

/* Style navigation menu links */
#myLinks a {
  color: black;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 2em;
  display: block;
}

/* Hide the links inside the navigation menu (except for logo) */

#myLinks
{
	width: 100%;
	display: flex;
	height: 0px;
	justify-content: flex-end;
	transition: 0.5s;
	overflow: hidden;
}

/* Add a green background color on active */

#myLinks a:active {
  background-color: #ddffdd;
}

@media all and (max-device-width: 480px)
{
    #PC_menu
		{
			display: none;
		}

		#mobile_menu
		{
			display: flex;
			flex-direction: column;
			align-items: center;
		}

		.sec_pics_l
		{
			flex-direction: column-reverse;
			align-items: center;
			margin-bottom: 600px;

		}

		.sec_pics_r
		{
			flex-direction: column;
			align-items: center;
			margin-bottom: 600px;
		}

		.img
		{
			width: 100%;
		}

		.img_l, .img_r
		{
			margin-left: 0px;
			margin-right: 0px;
		}

    .im450
		{
			width: 80%;
			height: auto;
		}

		.im400
		{
			width: 80%;
			height: auto;
		}

		.text_l, .text_r
		{
			margin: 0px;
		}

		.text
		{
			width: 100%;
			align-items: center;
			margin: 0px 0px 200px 0px;
		}

		.text p, .text ul 
		{
			width: 70%;
			font-size: 2.8em;
		}

		.text h1
		{
			text-align: center;
			font-size: 4em;
			width: 80%;
		}
		

		.bouton
		{
			font-size: 2.5em;
		}

		#tarifs h1
		{
			font-size: 3.5em;
		}

		#tarifs h2
		{
			font-size: 2em;
		}

		.small_green_line
		{
			width: 30%;
		}

		footer
		{
			height: 300px;
		}

		#contact_FAQ a, #contact_FAQ p
		{
			font-size: 2em;
		}

		#contact_FAQ
		{
			width: 100%;
		}

		#contact_FAQ p
		{
			margin: 0px 10%;
		}

		#credits
		{
			width: 100%;
		}

		#credits p 
		{
			font-size: 1.8em;
			width: 35%;
		}


}

/*////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

/* Style the 'Cours' section */

#cours_pic
{
	margin: 0px;
}

.page_title
{
	font-size: 3em;
	margin-bottom: 100px;
	font-weight: bold;
}

#cours_titre
{
	margin-top: 10px;
}

.sec_pics_cours_l, .sec_pics_cours_r
{
	width: 100%;
	display: flex;
	align-items: center;
	margin-bottom: 110px;
}

.imgc_l
{
	margin-left: 5%;
	margin-right: 3%;
	width: 400px;
}

.imgc_r
{
	margin-right: 15%;
	margin-left: 3%;
	width: 400px;
}

.textc_r
{
	margin-right: 15%;
	margin-left: 3%;
}

.textc_l
{
	margin-left: 5%;
	margin-right: 3%;
}

#imgc1_box
{
	position: relative;
	background: rgba(255, 255, 204, 0.7);
	height: 438px;
	width: 400px;
}

#imgc1
{
	position: relative;
	top: 20px;
	left: 20px;
}

#imgc2_box
{
	position: relative;
	background: rgba(255, 255, 204, 0.7);
	height: 250px;
	width: 400px;
}

#imgc2
{
	position: relative;
	top: -40px;
	right: 20px;
}

#imgc3_box
{
	position: relative;
	background: rgba(255, 255, 204, 0.7);
	height: 250px;
	width: 400px;
}

#imgc3
{
	position: relative;
	top: -50px;
	left: 20px;
}

.menu_r
{
	background: rgba(127,226,162,1);
	border-radius: 0.5em;
	padding: 15px;
	box-shadow: 0px 5px 10px darkgray;
	display: flex;
	flex-direction: column;
	height: 90px;
	position: fixed;
	top: 150px;
	right: 3%;
	z-index: 1;
}

.cours_link
{
	font-size: 1em;
	color: black;
	font-weight: normal;
	text-decoration: none;
	margin-bottom: 10px;
}

.cours_link::before
{
	content: "ㅇ";
	position: relative;
  left: -0.3em; 
  top: 0.05em;        
  font-size: 1em;
  font-weight: bold;
  text-shadow: none;
}

.cours_link:hover
{
	color: white;
	font-weight: bold;
	text-shadow: 0px 0px 1px black;
	transition: all ease-in-out 100ms;
	/*transition: font-weight ease-in-out 1000ms;*/
}

#cal, #infos, #cal_vac
{
	padding: 20px 0px;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}

#cal h1, #infos h1, #cal_vac h1
{
	font-size: 2em;
	font-weight: bold;
}

#cal .sep_fleur, #infos .sep_fleur, #cal_vac .sep_fleur
{
	margin: 10px 0px;
}

table
{
	border-collapse: collapse;
	margin-bottom: 20px;
	font-size: 1.3em;
}

td 
{
	border: 0.8px solid black;
	padding: 10px;
	text-align: center;
}

.ibox
{
	font-size: 1.2em;
	background: rgba(255, 255, 204, 0.7);
	border-radius: 0.4em;
	padding: 15px;
	box-shadow: 0px 0px 2px lightgray;
}

#horaires 
{
	width: 40%;
	text-align: center;
}


#lieu p
{
	font-size: 1.2em;
	margin: 0px;
	
}

#lieu h2
{
	margin: 0px;
	
}

.note
{
	font-style: italic;
}

.metro
{
	position: relative;
	top: 0.4em;
}

#b42
{
	position: relative;
	top: 0.06em;
}

#map 
{
	background: none;
	margin-left: 0%;
}


@media all and (max-device-width: 480px)
{
	#cours_pic
	{
		text-align: center;
		margin-top: 100px;
	}

	.page_title
	{
		font-size: 5em;
		width: 80%;
		text-align: center;
		margin-top: 50px;
	}
	
	.sec_pics_cours_l
	{
		width: 100%;
		display: flex;
		flex-direction: column-reverse;
		align-items: center;
		margin-bottom: 150px;
	}

	.sec_pics_cours_r
	{
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		margin-bottom: 200px;
	}

	#sc1
	{
		margin-bottom: 250px;
	}

	.imgc_l, .imgc_r
	{
		margin-left: 0px;
		margin-right: 0px;
	}

	#imgc1_box, #imgc2_box, #imgc3_box
	{
		width: 70%;
	}

	#imgc1_box
	{
		height: 880px;
	}

	#imgc2_box, #imgc3_box
	{
		height: 480px;
	}

	.imgc 
	{
		width: 100%;
		height: auto;
	}

	.textc_r, .textc_l
	{
		margin-right: 0px;
		margin-left: 0px;
		margin-bottom: 100px;
	}

	.textc_l .deux_boutons a , .textc_r .deux_boutons a 
	{
		margin: 0px 50px;
	}

	#imgc1
	{
		width: 100%;
	}

	.menu_r
	{
		display: none;
	}

	#cal h1, #infos h1, #cal_vac h1
	{
		font-size: 4em;
		width: 80%;
		text-align: center;
	}

	#lieu 
	{
		width: 80%;
	}

	#lieu h2
	{
		margin-top: 50px;
		margin-bottom: 30px;
	}

	#lieu p 
	{
		width: 100%;
	}

	#lignes 
	{
		padding-left: 20%;
	}

	#bus_p
	{
		text-align: center;
	} 

	.metro, #b42, #b70, #b88
	{
		width: 50px;
	}

	table
	{
		font-size: 1.8em;
	}

	.ibox
	{
		font-size: 2em;
	}

	#horaires
	{
		width: 80%;
		text-align: center;
	}

	#map
	{
		width: 80%;
		margin-bottom: 200px;
	}

	#mapi
	{
		width: 100%;
		height: 500px;
	}
}

/*////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

/* Style the Activities */

#act_pic
{
	margin: 0px;
}

#act_titre
{
	margin-top: 10px;
}

#imga1_box
{
	position: relative;
	background: rgba(127,226,162,0.7);
	height: 438px;
	width: 400px;
}

#imga1
{
	position: relative;
	top: 20px;
	left: 20px;
}

@media all and (max-device-width: 480px)
{
	#imga1_box
	{
		width: 38%;
		height: 400px;
	}

	#imga1
	{
		width: 100%;
		height: auto;
	}
}

#imga2_box
{
	position: relative;
	background: none;
	height: 380px;
}

#imga2
{
	position: relative;
	top: -10px;
	right: 20px;
}

/*#imga3_box
{
	position: relative;
	background: rgba(127,226,162,0.7);
	height: 250px;
}

#imga3
{
	position: relative;
	top: -50px;
	left: 20px;
}*/

#i_saisons
{
	width: 50%;
	margin-bottom: 40px;
}

#saisons table
{
	border-collapse: separate;
	border-spacing: 0px;
	border-radius: 13px;
	box-shadow: 0px 5px 10px darkgray;
}

#saisons td 
{
	font-weight: bold;
	padding: 20px;
	cursor: pointer;
}

#saisons td:hover, .active
{
	background: rgba(209,41,41,0.7);
	transition: all ease-in-out 300ms;
}

.top_left_td
{
  border-top-left-radius : 10px;
}

.top_right_td
{
  border-top-right-radius : 10px;
}

.bottom_right_td
{
  border-bottom-right-radius : 10px;
}

.bottom_left_td
{
  border-bottom-left-radius : 10px;
}

.mySlides
{
	display: none;
	width: 100%;
	margin-bottom: 80px;
}

.slide_title
{
	font-size: 2.6em;
	margin-bottom: 50px;
	font-weight: bold;
	text-align: center;
}

#seollal, #bom
{
	position: relative;
	top: -80px;
}

#ete
{
	position: relative;
	top: -40px;
}

#text_jan
{
	margin-bottom: 150px;
}

#text_mar 
{
	margin-top: 100px;
	margin-bottom: 300px;
}

#hangeul
{
	position: relative;
	top: -80px;
}

#kimchi
{
	position: relative;
	top: -20px;
}

#noel
{
	position: relative;
	top: -20px;
}

/*///// Style the Slideshow ////*/

/* Slideshow container */
.slideshow-container 
{
  max-width: 1000px;
  position: relative;
  margin: auto;
  margin-top: 50px;
  background: none;
  text-align: center;
}

.pic_v
{
	height: min(750px,75vw);
	width: auto;
}

/* Hide the images by default */
.slidesPic 
{
  display: none;
}

/* Next & previous buttons */
.prev, .next 
{
  cursor: pointer;
  position: absolute;
  top: 50%;
  width: auto;
  margin-top: -22px;
  padding: 16px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  border-radius: 0 3px 3px 0;
  user-select: none;
  background-color: rgba(0,0,0,0.4);
  transition: 0.6s ease;
}

.prev
{
	left: 0;
}

/* Position the "next button" to the right */
.next 
{
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover 
{
  background-color: rgba(0,0,0,0.8);
}

/* The dots/bullets/indicators */
.dot 
{
  cursor: pointer;
  height: 15px;
  width: 15px;
  margin: 0 2px;
  background-color: #bbb;
  border-radius: 50%;
  display: inline-block;
  transition: background-color 0.6s ease;
}

.active_dot, .dot:hover 
{
  background-color: #717171;
}


/* Fading animation */
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

@media all and (max-device-width: 480px)
{
	#act_pic p 
	{
		text-align: center;
	}

	#sa1 .text_r, #sa2 .text_l 
	{
		margin-bottom: 100px;
	}

	#sa1 
	{
		margin-bottom: 150px;
	}

	#sa2
	{
		margin-bottom: 350px;
	}

	#sa2 .deux_boutons a
	{
		margin: 0px 50px;
	}

	#imga1_box
	{
		height: 880px;
		width: 70%;
	}

	#imga1 
	{
		width: 100%;
		height: auto;
	}

	#i_saisons
	{
		width: 70%;
		margin-bottom: 80px;
	}

	#saisons table
	{
		font-size: 2.5em;
	}

	#saisons h1
	{
		width: 70%;
		text-align: center;
	}

	.mySlides h1
	{
		font-size: 3.5em;
	}

	.mySlides .text_l
	{
		margin-bottom: 80px;
	}

	.mySlides .sec_pics_r 
	{
		margin-bottom: 450px;
	}

	#text_jan
	{
		margin-bottom: 500px;
	}

	#text_mar
	{
		margin-bottom: 700px;
	}

	.prev, .next 
	{
  	top: 45%;
  	padding: 50px;
  	color: white;
  	font-weight: bold;
  	font-size: 50px;
  	transition: 0.6s ease;
  	border-radius: 0 3px 3px 0;
  	user-select: none;
	}

	.dot 
	{
	  height: 45px;
	  width: 45px;
	  margin: 0 3px;
	}
}


/*////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

/* Style the Tarifs  */

.sec_sep
{
	padding: 20px 0px;
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}

.sec_sep h1
{
	font-size: 2em;
	font-weight: bold;
}

.sec_sep .sep_fleur
{
	margin: 10px 0px;
}

#tarifs_cours_a
	{
		margin-bottom: 300px;
	}

@media all and (max-device-width: 480px) 
{
	.sec_sep h1
	{
		font-size: 4em;
	}

	#tarifs_cours_a
	{
		margin-bottom: 500px;
	}
}

/*////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

/* Style the form */

/* Style inputs with type="text", select elements and textareas */
input[type=text], input[type=email], select, textarea {
  width: 100%; /* Full width */
  padding: 12px; /* Some padding */ 
  border: 1px solid #ccc; /* Gray border */
  border-radius: 5px; /* Rounded borders */
  box-sizing: border-box; /* Make sure that padding and width stays in place */
  margin-top: 6px; /* Add a top margin */
  margin-bottom: 16px; /* Bottom margin */
  resize: vertical /* Allow the user to vertically resize the textarea (not horizontally) */
}

/* Style the submit button with a specific background color etc */
input[type=submit] {
  background-color: #04AA6D;
  color: white;
  padding: 12px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

/* When moving the mouse over the submit button, add a darker green color */
input[type=submit]:hover {
  background-color: #45a049;
}

/* Add a background color and some padding around the form */
.formulaire {
	width: 50%;
  border-radius: 5px;
  background-color: #f2f2f2;
  padding: 20px;
  margin: 100px 0px;
}

.required:after
{
	color: red;
	display: inline;
	content: " *";
}

#msg 
{
	height: 200px;
}

.popup_g
{
	background: rgba(0,252,25,1) ;
	color: white;
	text-align: center;
	padding: 12px 20px;
	font-size: 1.3em;
	margin: auto;
	margin-bottom: 30px;
	margin-top: 50px;
}

.popup_r
{
	background: red ;
	color: black;
	text-align: center;
	padding: 12px 20px;
	font-size: 1.3em;
	margin: auto;
	margin-bottom: 30px;
	margin-top: 50px;
}

@media all and (max-device-width: 480px) 
{
	.formulaire
	{
		width: 70%;
		font-size: 2em;
		margin: 250px 0px 400px 0px;
	}

	.popup_r, .popup_g
	{
		font-size: 2em;
	}

	#msg 
	{
		height: 300px;
	}

	#envoi
	{
		font-size: 1em;
	}
}