#footer {
  background-color:#ffffff;
  z-index:1;
  position:relative;
}
#footer .background {
  display:block;
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  -webkit-transition:right 1s ease-out;
  transition:right 1s ease-out;
}
#footer .background-upper { background-color:#eeeeee; }
#footer .background-middle {
  top:210px;
  background-color:#ffffff;
}
#footer .background-bottom {
  top:300px;
  background-color:#0e233b;
}
.footer-upper-line {
  width:100%;
  height:210px;
}
.footer-upper-line > .inner {
  width:100%;
  max-width:1180px;
  margin:0 auto;
  display:flex;
  padding:60px 0 30px;
}
.footer-upper-line h3 {
  font-size:20px;
  line-height:25px;
  color:#0e233b;
  font-weight:600;
  margin:0 0 1px 0;
}
.footer-upper-line .bloc {
  height:120px;
  border-right:1px solid #1db8ca;
  padding-top:16px;
}
.footer-upper-line .bloc-address {
  width:29.6610%;
  padding-left:120px;
  font-size:18px;
  line-height:25px;
}
.footer-upper-line .bloc-newsletter {
  width:39.8300%;
  padding-left:80px;
}
.footer-upper-line .bloc-newsletter h3 { margin-bottom:9px; }
.footer-upper-line .bloc-partner {
  width:39.8300%;
  padding-left:80px;
}
.footer-upper-line .bloc-partner h3 { margin-bottom:9px; }
.footer-upper-line .bloc-partner .partner-list { display:flex; }
.footer-upper-line .bloc-partner .partner-list .element {
  position:relative;
  display:flex;
}
.footer-upper-line .bloc-partner .partner-list .element:first-child { margin-right:70px; }
.footer-upper-line .bloc-partner .partner-list .element:first-child img { max-height:40px; }
.footer-upper-line .bloc-partner .partner-list .element:last-child img { max-height:60px; }
.footer-upper-line .bloc-partner .partner-list .element .inset {
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
.footer-upper-line .bloc-partner .partner-list .element img {
  max-height:45px;
  width:auto;
  height:auto;
  align-self:center;
}
.footer-upper-line .bloc-social-links {
  width:30.5090%;
  border-right:none;
  padding-left:70px;
}
.footer-upper-line .bloc-social-links h3 { margin-bottom:7px; }
.footer-upper-line .social-link {
  display:inline-block;
  width:45px;
  height:45px;
  background-color:#ffffff;
  border-radius:50%;
  margin-right:11px;
  position:relative;
  overflow:hidden;
}
.footer-upper-line .social-link .text {
  position:absolute;
  top:0;
  left:100%;
}
.footer-upper-line .social-link .icon {
  display:block;
  position:absolute;
  width:40px;
  height:40px;
  top:3px;
  left:3px;
}
.footer-upper-line .social-link .icon * {
  fill:#0e233b;
  -webkit-transition:fill 0.2s ease-out;
  transition:fill 0.2s ease-out;
}
.footer-upper-line .social-link .icon.icon-youtube {
  width:27px;
  height:27px;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
}
.footer-upper-line .social-link:hover .icon * { fill:#1db8ca; }
.footer-middle-line {
  width:100%;
  height:90px;
}
.footer-middle-line > .inner {
  width:100%;
  max-width:1180px;
  height:100%;
  margin:0 auto;
  position:relative;
  padding:30px 0 0;
}
.footer-middle-line #footer-menu-container {
  width:100%;
  height:100%;
  max-width:940px;
  margin:0 auto;
}
.footer-middle-line #footer-menu.main-menu {
  width:100%;
  list-style:none;
  display:flex;
  justify-content:space-around;
  flex-wrap:nowrap;
}
.footer-middle-line #footer-menu.main-menu li a {
  height:56px;
  padding:0;
}
.footer-middle-line .totop {
  display:block;
  width:100px;
  height:90px;
  position:absolute;
  top:0;
  right:0;
  overflow:hidden;
}
.footer-middle-line .totop .text {
  position:absolute;
  top:0;
  left:100%;
}
.footer-middle-line .totop .icon {
  position:absolute;
  top:50%;
  left:50%;
  margin-top:-6px;
  margin-left:-8px;
  width:16px;
  height:15px;
  -webkit-transform:rotate(-90deg);
  transform:rotate(-90deg);
}
.footer-middle-line .totop .icon * {
  fill:#1db8ca;
  -webkit-transition:fill 0.2s ease-out;
  transition:fill 0.2s ease-out;
}
.footer-middle-line .totop:hover .icon * { fill:#0e233b; }
.footer-bottom-line {
  width:100%;
  height:80px;
}
#footer-bottom-menu-container {
  display:block;
  width:100%;
  height:100%;
}
#footer-bottom-menu {
  display:flex;
  width:100%;
  max-width:1180px;
  height:100%;
  margin:0 auto;
  justify-content:center;
  align-items:center;
}
#footer-bottom-menu li, #footer-bottom-menu li a {
  display:block;
  height:100%;
}
#footer-bottom-menu li a {
  font-size:15px;
  font-weight:400;
  line-height:80px;
  letter-spacing:0.035em;
  color:#ffffff;
  padding:0 15px;
}
#footer-bottom-menu li a:hover { color:#1db8ca; }
@media only screen and (max-width: 1200px) {
  .footer-upper-line .bloc-address { padding-left:60px; }
  .footer-upper-line .bloc-newsletter { padding-left:30px; }
  .footer-upper-line .bloc-social-links { padding-left:30px; }
  .footer-middle-line .totop { width:60px; }
  .footer-middle-line #footer-menu-container { max-width:800px; }
  .footer-middle-line #footer-menu.main-menu li a { font-size:16px; }
}
@media only screen and (max-width: 960px) {
  #footer .background { display:none; }
  .footer-upper-line {
    height:auto;
    position:relative;
  }
  .footer-upper-line:before {
    content:'';
    display:block;
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background-color:#eeeeee;
    -webkit-transition:right 1s ease-out;
    transition:right 1s ease-out;
  }
  .wf-loading .footer-upper-line:before { right:100%; }
  .footer-upper-line > .inner {
    display:block;
    position:relative;
  }
  .footer-upper-line .bloc {
    width:100%;
    height:auto;
    max-width:320px;
    padding:30px 0;
    margin:0 auto;
    border-right:none;
    border-bottom:1px solid #1db8ca;
  }
  .footer-upper-line .bloc:last-child { border-bottom:none; }
  #footer-menu-container { display:none; }
  .footer-middle-line .totop { width:100%; }
  .footer-bottom-line { display:none; }
}
@media only screen and (max-width: 690px) {
  .footer-upper-line > .inner { padding:60px 20px 30px; }
}
