html, body {
  font-family: 'Montserrat Alternates', sans-serif;
  font-size:14px;
  color:#3e3e3e;
  position: relative;
  margin:0px;
  padding:0px;
}
a {
  text-decoration:none;
  color:#0057a4;
  border-bottom: 4px solid transparent;
  text-decoration: none;
}
a:hover {
  color:#0057a4;
  border-bottom: 4px solid #0057a4;
  text-decoration: none;
}
a.onblue {
	font-size: 1.0em;
	font-weight: 200;
	text-decoration: none;
  color:#fff;
	border-bottom: 4px solid transparent;
}

a.onblue:hover {
	font-size: 1.0em;
	font-weight: 200;
	text-decoration: none;
	border-bottom: 4px solid #fff;
}

.navmain .menu a:hover{
	background: #798DA3;
	color: #fff;
}

h2 {
  padding:0px 0px 12px 0px;
  font-size:1.2em;
}
h2.title {
  padding:12px 0px;
  font-size:1.2em;
  text-align: center;
}
h6 {
  font-style:italic;
  font-size:1em;
}

.spoblig {
  color:#ff0000;
  display: inline-block;
  font-size:1.2em;
  padding:0px 4px;
}
.mainpart {
  width:100%;max-width:1170px;margin:auto;padding-bottom:0px;
}
.partheader {
  width:100%;
  margin:auto;
  padding:0px 24px;
}
.fcc-btn, #divmainnmenu ul li a.fcc-btn {
  background-color: #ee2d24;
  color: white;
  padding: 4px 20px;
  text-decoration: none;
  cursor: pointer;
  border: 2px solid #ee2d24;
  border-radius: 24px;
}
.fcc-btn:hover, #divmainnmenu ul li a.fcc-btn:hover {
  border: 2px solid #0057a4;
  background-color:#0057a4;
  text-decoration:none;
  color:#ffffff;
}
.forbtndetails, .forbtndetails:hover, .forbtndetails:active, .forbtndetails:focus {
  background-image: url("/css/images/plus.png");
}
.forbtndetails:hover {
  background-image: url("/css/images/plus-on.png");
}
#divinfoscontact p, #divinfoscontacth p {
  font-weight:400;
  display:inline-block;
  width: calc(49% - 32px);
  font-size:1.143em;
  padding-left: 16px;
  padding-right:16px;
  margin:0px;
  margin-top:11px;
}

#divinfosmenuh div {
  display:inline-block;
  margin:0px;
  padding:0px;
  vertical-align: middle;
}
#pmainlogo {
  max-width:278px;
  width:100%;
}
#divmain {
  padding-top:0px;
  padding-bottom:64px;
  /*padding-bottom:64px;
  height: 100vh;*/
  position:relative;
  min-height: 900px;
}
h1 {
  font-family: 'Raleway', sans-serif;
  font-weight:700;
  font-size: 2.7em;
  text-transform: uppercase;
  text-align:center;
  color:#0057a4;
  margin:24px auto;
}
.spwhite {
  color:#ffffff;
}
.nomargintop {
  margin-top:0px;
  padding-top:12px;
}
.psubtext {
  text-align: center;
  color: #0057a4;
  font-size: 1.39em;
  padding: 0 24px;
}
a.awhite {
  text-decoration:none;
  color:#ffffff;
}
#divinfoscontact a.awhite:hover, #divinfoscontacth a.awhite:hover {
  text-decoration:none;
  border-bottom: 4px solid #fff;
}
p.pforbtn {
  position: relative;
  text-align: center;
  top: 40px;
}
div.divforbtn {
  text-align: center;
  margin-bottom: 32px;
}
.forbtn {
  background-color: #f04239;
  max-width: 450px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 8px;
  padding-bottom: 8px;
  border-radius: 32px;
  font-size: 1.1em;
  font-weight: 600;
  display: inline-block;
  color: #fff;
  min-width: 130px;
  cursor: pointer;
  font-family: 'Montserrat Alternates';
  border: none;
}
.forbtn:hover {
  background-color:#0057a4;
}
p.txt {
  margin:8px 0px;
}
.txtgeninputH {
  background:none;      
  border: none;
  border-bottom: 1px solid white;
  color:#ffffff;
  font-size: 1em;
  letter-spacing: 1px;
  line-height: 26px;
  padding-bottom: 8px;
  padding-top: 8px;
  text-align:center;
  width: 428px;
}
.txtgeninputH::placeholder {
  color:white;
  opacity:0.5;
}

footer {
  width:100%;
  background-color:#0057a4;
  color:#ffffff;
  height:40px;
  position:fixed;
  bottom:0px;
}

table {
	border-spacing: 0;
  border-collapse: collapse;
  border-radius: 1em;
  overflow: hidden;
  font-size:1.1em;
  table-layout:fixed;
}

thead.tabheader {
	background-color: #0057a4;
	text-transform: uppercase;
}

table td, table th {
	padding: 4px 8px 4px 8px;
	height: 32px;
	font-size: 0.9em;
	color: #fff;
	text-align: left;
	font-weight: normal;
  padding: 12px 4px;
/*  background-color: #99d5ec;*/
  line-height:1.5em;
/*  border-bottom: 2px solid white;*/
}

table th {
  background-color: #0057a4;
}

table td {
	color: #353535;
	padding-top: 8px;
	padding-bottom: 8px;
}

table td.principalpair {
  background-color: #b3e0f7;
}

table tr.principalpair {
  background-color: #b3e0f7;
}

table td.principal {
  background-color: #99d5ec;
}

table tr.principal {
  background-color: #99d5ec;
}

.center {
  text-align: center;
}

.forright {
    text-align: right;
}

input[type=text].txt_input, textarea.txt_input, select.txt_input, input[type=text].txt_fixe, input[type=password].txt_input  {
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  border: 1px solid #2d9fd9;
  height: 30px;
  padding: 0px 10px;
  font-size:1em;
  color:#616161;
  letter-spacing:0.05em;
}    

textarea.txt_input {
  padding: 8px 10px;
}

select.txt_input {
  background-color: white;
}

input[type=text].txt_fixe {
  border: 1px solid transparent;
  max-width:440px;
  width:100%;
  font-style:italic;
}

input[type=button], button[type=button] {
  background-color: #ee2d24;
  color: white;
  padding: 4px 20px;
  text-decoration: none;
  cursor: pointer;
  border: 2px solid #ee2d24;
  border-radius: 24px;
  font-size: 1em;
  font-family: 'Montserrat Alternates';
}
input[type=button]:hover, button[type=button]:hover {
  border: 2px solid #0057a4;
  background-color:#0057a4;
  text-decoration:none;
}
/*
Begin
only for front menu
*/
*{
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

header #button-menu{
	font-size: 2.1em;
	color: #fff;
	cursor: pointer;
}
#menubar #libmenu {
	font-size: 1.5em;
	padding-left: 12px;
	display: inline-block; 
	vertical-align: top;
	color: white;
}
.navmain {
	position: absolute;
	top: 179px;
	left: 0;
	width: 0%;
	height: 100vh;
	background: rgba(0,0,0,.0);
}
.navmain ul{
	width: 320px;
	height: 100%;
	background: #fff;
	list-style: none;

	position: absolute;
	top: 0;
	left: -320px;

	transition: left .3s;
}

.navmain .menu li.title-menu{
	padding: 20px;
	background: #5F6F81;
	color: #fff;
	text-align: center;
	font-size: 1.0em;
}

.navmain .menu a {
	display: block;
	padding: 20px;
	border-bottom: 1px solid #C6D0DA;

	font-size: 1.0em;
	font-weight: 200;
	text-decoration: none;
	color: #575D69;
}

.navmain .menu a:hover{
	background: #798DA3;
	color: #fff;
}

.navmain .menu li span.icon-menu{
	margin-right: 12px;
}

.navmain .menu .item-submenu > a::after, .navmain .menu .item-subsubmenu > a::after{
	font: normal normal normal 14px/1 FontAwesome;
  	font-size: inherit;
  	text-rendering: auto;
  	-webkit-font-smoothing: antialiased;
  	-moz-osx-font-smoothing: grayscale;
	content: '\f105';

	float: right;
	color: #C5C5C5;
}

/* Submenu ============*/

.navmain .submenu li.title-menu{
	background: #fff;
	color: #575D69;
}

.navmain .submenu li.go-back{
	padding: 10px 20px;
	background: #5F6F81;
	color: #fff;
	font-size: 18px;
	cursor: pointer;
}

.navmain .submenu li.go-back::before{
	font: normal normal normal 14px/1 FontAwesome;
  	font-size: inherit;
  	text-rendering: auto;
  	-webkit-font-smoothing: antialiased;
  	-moz-osx-font-smoothing: grayscale;
	content: '\f0d9';
	margin-right: 10px;
}

@media screen and (max-width: 320px){
	.navmain ul{
		width: 100%;
	}
}
/*
End
only for front menu
*/

/*
#aforpanier, #ancToSup, #ancWaitForSup {
  position:relative;
  top:-64px;
}
#ancToSup {
  top:-44px;
  margin-left: 12px;
}
#ancWaitForSup {
  top:-62px;
  right: 248px;
}
*/
/*#ancToSup {
  margin-right: 12px;
}*/
#ancWaitForSup {
  margin-left: 12px;
}
.ancNotToSup {
  right:0px;
}

#windialog {
  position:fixed;
  top:0px;
  left:0px;
  background-color:#ffffff;
  opacity:0.8 ;
  background-image:url(/css/images/Loading_icon.gif);
  background-position: 50% 250px;
  background-repeat: no-repeat;
  z-index:2000;
}

.spblue {
  color: #0057a4;
}

p.pheader {
  margin: 12px auto;
  background-color: grey;
  color: #fff;
  border-radius: 24px;
  padding: 12px 0px;
  width: 960px;
  text-align: center;
  font-size:1.3em;
}

h2.pageheader {
  text-align:center;
  margin-top:32px;
}

p.aligncenter, h2.aligncenter {
  text-align:center;
}

.bold {
  font-weight:700;
}

p.ptext {
  padding:4px;
}
div.divcontent {
  width: 960px;
  margin: auto;
}
div.divcontent p {
  margin: 12px 0px;
}
div.divcontent label {
  display:inline-block;
  width:190px;
}
div.divpartfilters {
  width:48%;
  display:inline-block;
}
div.divcontent p.ptext, div.divcontent h2, p.ptext {
  font-size:1.2em;
}
input[type="button"].smallbutton, button.smallbutton {
  padding:2px 7px;
}
[class^="forbtn"] {
	width: 24px;
	height: 24px;
	display: inline-block;
	border-bottom: none;
	text-decoration: none;
	margin: 0 4px;
}

[class^="forbtn"]:hover {
  border-bottom: none;
  text-decoration: none;
}
p.pforbtn-lnk {
  line-height:32px;
}

figure.zoom {
  & img:hover {
    opacity: 0;
  }
  img {
    transition: opacity .5s;
    display: block;
    width: 100%;
  }
  background-position: 50% 50%;
  position: relative;
/*  width: 500px;*/
  overflow: hidden;
  cursor: zoom-in;
}



button[type=button].unmask, button[type=button].unmaskW  {
	cursor: pointer;
	background-size: 28px 18px;
	width: 30px;
	height: 20px;
	border: none;

  background-color: transparent;
}
button[type=button].unmask {
	background: url(images/eye-password.png);
	background-size: 28px 18px;
	background-repeat: no-repeat;
}
button[type=button].unmaskW {
	background: url(images/eye-password-w.png);
	background-size: 28px 18px;
	background-repeat: no-repeat;
}

button[type=button].unmask:hover, button[type=button].unmaskW:hover {
  border: none;
  background-color:transparent;
  text-decoration:none;
}


button[type=button].unmask {
	position: relative;
	bottom: 4px;
	right: 35 px;
  left:-35px;
}

button[type=button].ushow {
	background: url(images/no-eye-password.png);
	background-size: 28px 18px;
	background-repeat: no-repeat;
}

button[type="button"].unmaskW {
	position: absolute;
	bottom: 10px;
	right: -10px;
}

button[type=button].ushowW {
	background: url(images/no-eye-password-w.png);
	background-size: 28px 18px;
	background-repeat: no-repeat;
}
#divbodypopupContainer ul {
  padding-left:12px;
}
#divbodypopupContainer ul li {
  list-style-type: none;
}
#divbodypopupContainer ul li::before{
  content: url("images/puce.png");
  padding-right: 8px;
}#divbodypopupContainer ul li:first-child::before {
  content: none;
}

@media (max-width: 1280px) {
}
@media (max-width: 1024px) {
  h1 {
    font-size: 2.16em;
  }
  .psubtext {
    font-size: 1.112em;
  }
  #divinfoscontact p, #divinfoscontacth p {
    font-size: 0.9144em;
    width: calc(53% - 34px);
    vertical-align: middle;
  }
}
@media (max-width: 768px) {
  h1 {
    font-size: 1.296em;
  }
  .psubtext {
    font-size: 1em;
  }
  .txtgeninputH {
    font-size: 0.8em;
    width:400px;
  }
  .forbtn {
    background-color: #f04239;
    max-width: 400px;
    font-size: 0.8em;
  }
}

@media (max-width: 614px) {
  #divinfoscontacth p {
    margin-top:4px;
  }
    
  #divinfoscontacth p .sp-forcereturn::after {
    content: "\A";
    white-space: pre;
  }
}
@media (max-width: 412px) {
  #divinfoscontact p {
    margin-top: 2px;
  }  
}
@media (max-width: 384px) {
}
@media (max-width: 360px) {
  #divinfoscontacth p {
    padding-right:0px;
    width:calc(53% - 20px);
  }
}
@media (max-width: 320px) {
  #divinfoscontacth p:last-child .sp-forcereturn::after {
    content: "\A";
    white-space: pre;
  }
}