/*******************************/
/********* General CSS *********/
/*******************************/
body {
    color: #797979;
    background: #ffffff;
    font-family: 'Open Sans', sans-serif;
}

h1,
h2, 
h3, 
h4,
h5, 
h6 {
    color: #343148;
}

a {
    color: #454545;
    transition: .3s;
}

a:hover,
a:active,
a:focus {
    color: #F7CAC9;
    outline: none;
    text-decoration: none;
}

p strong, li strong {
    font-weight: 500;
}

.btn:focus,
.form-control:focus {
    box-shadow: none;
}

.container-fluid {
    max-width: 1366px;
}

/*@media (min-width: 1025px) and (max-width: 1200px) {*/
/*    .container-fluid {*/
/*        width: 1166px;*/
/*    }*/
    
/*    .new_footer .footer-info {*/
/*        margin-bottom: 2rem;*/
/*    }*/
/*}*/

.language_switcher {
    position: fixed;
    top: 0;
    right: 5rem;
    z-index: 999;
}

.language_switcher img {
    max-width: 30px;
    margin-top: -3px;
    margin-right: 5px;
}

.language_switcher span {
    font-size: 16px;
}

.navbar .btn, 
.btn:visited {
  color: #fff;
  /* background: #ffffff27; */
  padding: 7.2px 10px;
  font-size: 18px;
  line-height: 100%;
  color: #fff;
  display:inline-block;
  vertical-align: middle;
  text-align: center;
  cursor: pointer;
  font-weight: 300;
  transition: background 0.1s ease-in-out;
  -webkit-transition: background 0.1s ease-in-out;
  -moz-transition: background 0.1s ease-in-out;
  -ms-transition: background 0.1s ease-in-out;
  -o-transition: background 0.1s ease-in-out;
  color: #fff;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  
}

.btn:hover, 
.btn:visited:hover,
.btn:focus, 
.btn:visited:focus {
  background: rgba(225, 225, 225, .3);
}

.btn:active, 
.btn:visited:active {
  box-shadow: 0px 1px 0px 0px #01192e;
}


.back-to-top {
    position: fixed;
    display: none;
    background: #F7CAC9;
    width: 44px;
    height: 44px;
    text-align: center;
    line-height: 1;
    font-size: 22px;
    right: 15px;
    bottom: 15px;
    transition: background 0.5s;
    z-index: 9;
}

.back-to-top:hover {
    background: #343148;
}

.back-to-top:hover i {
    color: #F7CAC9;
}

.back-to-top i {
    color: #343148;
    padding-top: 10px;
}


/**********************************/
/********** Top Bar CSS ***********/
/**********************************/
.top-bar {
    position: relative;
    height: 35px;
    background: #343148;
}

.top-bar .top-bar-left {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.top-bar .top-bar-right {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.top-bar .text {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
    height: 35px;
    padding: 0 10px;
    text-align: center;
    border-left: 1px solid rgba(255, 255, 255, .15);
}

.top-bar .text:last-child {
    border-right: 1px solid rgba(255, 255, 255, .15);
}

.top-bar .text i {
    font-size: 13px;
    color: #ffffff;
    margin-right: 5px;
}

.top-bar .text h2 {
    color: #eeeeee;
    font-weight: 400;
    font-size: 13px;
    letter-spacing: 1px;
    margin: 0;
}

.top-bar .text p {
    color: #eeeeee;
    font-size: 14px;
    font-weight: 400;
    margin: 0 0 0 5px;
}

.top-bar .social {
    display: flex;
    height: 35px;
    font-size: 0;
    justify-content: flex-end;
}

.top-bar .social a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 35px;
    height: 100%;
    font-size: 16px;
    color: #ffffff;
    border-right: 1px solid rgba(255, 255, 255, .15);
}

.top-bar .social a:first-child {
    border-left: 1px solid rgba(255, 255, 255, .15);
}

.top-bar .social a:hover {
    color: #092a49;
    background: #ffffff;
}

@media (min-width: 992px) {
    .top-bar {
        padding: 0 60px;
    }
}


/**********************************/
/*********** Nav Bar CSS **********/
/**********************************/
.navbar {
    position: relative;
    transition: .5s;
    z-index: 999;
}

.navbar.nav-sticky {
    position: fixed;
    top: 0;
    width: 100%;
    box-shadow: 0 2px 5px rgba(0, 0, 0, .3);
}

.navbar .navbar-brand {
    margin: 0;
    color: #ffffff;
    font-size: 45px;
    line-height: 0px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    transition: .5s;
    
}

.navbar .navbar-brand span {
    color: #343148;
    text-transform: lowercase;
    transition: .5s;
}

.navbar.nav-sticky .navbar-brand span {
    color: #ffffff;
}

.navbar .navbar-brand img {
    max-width: 100%;
    width: 98px;
    /* max-height: 40px; */
    transition: .5s ease;
}

.navbar-dark .navbar-nav .nav-link,
.navbar-dark .navbar-nav .nav-link:focus,
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link.active {
    padding: 10px 10px 8px 10px;
    color: #ffffff;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link.active {
    background: rgba(256, 256, 256, .2);
    transition: none;
}

.navbar .dropdown-menu {
    margin-top: 0;
    border: 0;
    border-radius: 0;
    background: #f8f9fa;
}

@media (max-width: 767.98px) {
    .navbar .navbar-brand img {
        width: 70px;
    }
}

@media (min-width: 992px) {
    .navbar {
        position: absolute;
        width: 100%;
        top: 35px;
        padding: 8px 10px;
        background: rgba(0, 0, 0, .2) !important;
        z-index: 9;
    }
    
    .navbar.nav-sticky {
        padding: 10px 26px;
        background: #343148 !important;
    }

    .navbar.nav-sticky .navbar-brand img {
        max-width: 100%;
        width: 80px;
        transition: .5s ease;
    }
    
    .navbar a.nav-link {
        padding: 8px 15px;
        font-size: 14px;
        letter-spacing: 1px;
        text-transform: uppercase;
    }
}

@media (max-width: 991.98px) {   
    .navbar {
        padding: 15px;
        background: #343148 !important;
    }
    
    .navbar .navbar-brand span {
        color: #ffffff;
    }
    
    .navbar a.nav-link {
        padding: 5px;
    }
    
    .navbar .dropdown-menu {
        box-shadow: none;
    }
}


/*******************************/
/********** Hero CSS ***********/
/*******************************/
.hero {
    position: relative;
    width: 100%;
    height: 80vh;
    margin-bottom: 45px;
    padding: 90px 0;
    /* background: linear-gradient(to bottom, rgba(247, 202, 201, 0.8), rgba(247 202, 201, 0.5)), url(../img/bg-hero1.png); */
    display: flex;
    align-items: center;
    overflow: hidden;
}

.hero #carousel {
    width: 100%;
    height: 80vh;
    position: absolute;
}

.hero #carousel img {
    width: 100%;
    height: 80vh;
    object-fit: cover;
}

.hero::after {
    content: '';
    background: linear-gradient(to bottom, rgba(247, 202, 201, 0.8), rgba(247 202, 201, 0.5));
    width: 100%;
    height: 80vh;
    position: absolute;
    z-index: 2;
}

/*.hero .container-fluid {*/
/*    padding: 0;*/
/*}*/

/* .hero .hero-image {
    position: relative;
    text-align: right;
}

.hero .hero-image img {
    max-width: 80%;
    max-height: 80%;
} */

.hero .hero-text {
    position: relative;
    /* padding-left: 75px; */
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-direction: column;
    z-index: 3;
}

.hero .hero-text h1 {
    color: #343148;
    font-size: 55px;
    font-weight: 700;
    width: 1200px;
    margin-bottom: 25px;
}

.hero .hero-text h2 {
    color: #1e1e1e;
    font-size: 2.2rem;
    font-family: 'Open Sans', sans-serif;
    margin-bottom: 20px;
}

.hero .hero-text p {
    color: #343148;
    font-size: 18px;
    margin-bottom: 25px;
}

.hero .hero-btn .btn {
    padding: 12px 20px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #F7CAC9;
    background: #343148;
    border-radius: 0;
    transition: .3s;
}

.hero .hero-btn .btn:hover {
    color: #343148;
    background: #ffffff;
}

.hero .hero-btn .btn:first-child {
    margin-right: 10px;
}

@media (max-width: 991.98px) {
    .hero .hero-text {
        padding: 0 15px;
    }
    
    .hero .hero-text h1 {
        font-size: 40px;
        width: 650px;
    }
    
    .hero .hero-text h2 {
        font-size: 2.1rem;
    }
    
    .hero .hero-text p {
        font-size: 16px;
    }
    
    .hero .hero-text .btn {
        padding: 12px 30px;
        letter-spacing: 1px;
    }
}

@media (max-width: 767.98px) {
    
    .hero .hero-text h1 {
        font-size: 30px;
        font-weight: 600;
    }
    
    .hero .hero-text p {
        font-size: 14px;
    }
    
    .hero .hero-text .btn {
        padding: 10px 15px;
        font-weight: 400;
        letter-spacing: 1px;
    }
	
	.hero .hero-image {
		text-align: left;
		margin-top: 30px;
	}
	
	.hero .hero-image img {
		max-width: 100%;
		max-height: 100%;
	}
}

@media (max-width: 575.98px) {
    .hero .hero-text h1 {
        font-size: 27px;
        font-weight: 600;
        width: 345px;
        margin-bottom: 20px;
    }
    
    .hero .hero-text h2 {
        font-size: 1.4rem;
    }
    
    .hero .hero-text p {
        font-size: 14px;
    }
    
    .hero .hero-text .btn {
        padding: 8px 10px;
        font-size: 12px;
        font-weight: 400;
        letter-spacing: 0;
    }
    
}


/*******************************/
/******* Page Header CSS *******/
/*******************************/
.page-header {
    position: relative;
    margin-bottom: 45px;
    padding: 170px 0 230px;
    height: 40vh;
    text-align: center;
    background: linear-gradient(to bottom, rgba(247 202, 201, 0.7), rgba(247 202, 201, 0.8)), url(../img/bg-contact-final2.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center bottom 20%;
}

.page-header h1 {
    position: relative;
    color: #343148;
    font-size: 60px;
    font-weight: 700;
}

.page-header .breadcrumbs a:hover {
    color: #343148;
}

.page-header a {
    position: relative;
    padding: 0 12px;
    font-size: 20px;
    color: rgba(225, 225, 225, .9995);
}

.page-header .active {
    color: #ffffff;
}


.page-header a::after {
    position: absolute;
    content: "/";
    width: 8px;
    height: 8px;
    top: -2px;
    right: -7px;
    text-align: center;
    color: rgba(225, 225, 225, .9995);
}

.page-header a:last-child::after {
    display: none;
}


@media (max-width: 767.98px) {
    .page-header {
        padding: 90px 0 90px 0;
        height: 30vh;
    }

    .page-header h1 {
        font-size: 38px;
    }

    .page-header h2 {
        font-size: 35px;
    }
    
    .page-header a {
        font-size: 18px;
    }
}


/*******************************/
/******* Section Header ********/
/*******************************/
.section-header {
    position: relative;
    max-width: 600px;
    margin: 0 auto;
    margin-bottom: 45px;
}

.section-header p {
    display: inline-block;
    margin: 0 30px;
    margin-bottom: 5px;
    padding: 0 10px;
    position: relative;
    font-size: 16px;
    font-weight: 600;
    background: #ffffff;
}

.section-header p::after {
    position: absolute;
    content: "";
    height: 2px;
    top: 11px;
    right: -30px;
    left: -30px;
    background: #F7CAC9;
    z-index: -1;
}

.section-header h2 {
    margin: 0;
    position: relative;
    font-size: 40px;
    font-weight: 700;
}

@media (max-width: 767.98px) {
    .section-header h2 {
        font-size: 30px;
    }
}


/***************************************/
/********** Section About CSS **********/
/***************************************/
.about {
    position: relative;
    width: 100%;
    padding: 45px 0;
}

.about .section-header {
    margin-bottom: 30px;
    margin-left: 0;
}

.about .about-img {
    position: relative;
    height: 100%;
}

.about .about-img img {
    position: relative;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.about .about-text p {
    font-size: 16px;
}

.about .about-text a.btn {
    position: relative;
    margin-top: 15px;
    padding: 12px 20px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #F7CAC9;
    background: #343148;
    border-radius: 0;
    transition: .3s;
}

.about .about-text a.btn:hover {
    color: #343148;
    background: #F7CAC9;
}

@media (max-width: 767.98px) {
    .about .about-img {
        margin-bottom: 30px;
        height: auto;
    }
}


/***********************************************/
/************* Section Services CSS ************/
/***********************************************/
.service {
    position: relative;
    width: 100%;
    padding: 45px 0 15px 0;
}

.service .service-item {
    position: relative;
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
    padding: 30px;
    border: 1px solid rgba(0, 0, 0, .07);
    transition: .3s;
}

.service .service-item:hover,
.service .service-item.active {
    background: #343148;
    color: #ffffff;
}

.service .service-icon {
    position: relative;
    margin: 0 auto 25px auto;
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

.service .service-icon i {
    position: relative;
    font-size: 46px;
    color: #343148;
    z-index: 3;
}

.service .service-icon:before {
    content: "";
    position: absolute;
    z-index: 0;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    display: block;
    width: 80px;
    height: 80px;
    background: #F7CAC9;
    border-radius: 50%;
    animation: pulse-border 2000ms ease-out infinite;
}

.service .service-icon:after {
    content: "";
    position: absolute;
    z-index: 1;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
    display: block;
    width: 80px;
    height: 80px;
    background: #F7CAC9;
    border-radius: 50%;
    transition: all 200ms;
}

@keyframes pulse-border {
  0% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1);
    opacity: 1;
  }
  100% {
    transform: translateX(-50%) translateY(-50%) translateZ(0) scale(1.3);
    opacity: 0;
  }
}

.service .service-item h3 {
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 600;
    transition: .3s;
}

.service .service-item:hover h3,
.service .service-item.active h3 {
    color: #F7CAC9;
}

.service .service-item p {
    margin: 0;
    font-size: 16px;
}


/**************************************/
/********* Section Tarifs CSS *********/
/**************************************/
.price {
    position: relative;
    width: 100%;
    padding: 45px 0 15px 0;
}

.price .price-item {
    position: relative;
    margin-bottom: 30px;
    transition: .1s ease-in-out;
}

.price .price-item:hover {
    transform: translateY(-10px);
    transition: .1s ease-in-out;
}

.price .price-header,
.price .price-body,
.price .price-footer {
    position: relative;
    width: 100%;
    text-align: center;
    background: #ffffff;
    overflow: hidden;
}

.price .price-header {
    padding: 30px;
    background: #F7CAC9;
    color: #343148;
}

.price .price-item.featured-item .price-header {
    background: #343148;
    color: #F7CAC9;
}

.price .price-status {
    margin-top: -30px;
    text-align: right;
}

.price .price-status span {
    position: relative;
    display: inline-block;
    height: 30px;
    right: -30px;
    padding: 7px 10px;
    text-align: center;
    color: #343148;
    font-size: 14px;
    line-height: 14px;
    background: #F7CAC9;
}

.price .price-title h2 {
    font-size: 21px;
    font-weight: 700;
    text-transform: uppercase;
}

.price .price-prices h2 {
    font-size: 45px;
    font-weight: 700;
    margin-left: 10px;
}

.price .price-prices h2 small {
    position: absolute;
    font-size: 18px;
    font-weight: 400;
    margin-top: 9px;
    margin-left: -12px;
}

.price .price-prices h2 span {
    margin-left: 1px;
    font-size: 18px;
    font-weight: 400;
}

.price .price-item.featured-item h2 {
    color: #F7CAC9;
}

.price .price-body {
    padding: 25px 0 20px 0;
    border: 1px solid rgba(0, 0, 0, .07);
    border-bottom: none;
}

.price .price-description ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.price .price-description ul li span {
    font-weight: 600;
    color: #343148;
}

.price .price-description ul li {
    padding: 7px;
    border-bottom: 1px solid rgba(0, 0, 0, .07) !important;
}

.price .price-description ul li:last-child {
    border: none;
}

.price .price-action {
    border: 1px solid rgba(0, 0, 0, .07);
    border-top: none;
}

.price .price-action a.btn {
    margin-bottom: 30px;
    padding: 12px 20px;
    color: #343148;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    border-radius: 0;
    background: #F7CAC9;
    transition: .3s;
}

.price .price-action a:hover,
.price .price-item.featured-item .price-action a {
    color: #F7CAC9;
    background: #343148;
}

.price .price-item.featured-item .price-action a:hover {
    color: #343148;
    background: #F7CAC9;
}


/********************************************/
/********** Section Formations CSS **********/
/********************************************/
.class {
    position: relative;
    padding: 45px 0 15px 0;
}

.class #class-filter {
    padding: 0;
    margin: -15px 0 25px 0;
    list-style: none;
    font-size: 0;
    text-align: center;
}

.class #class-filter li {
    cursor: pointer;
    display: inline-block;
    margin: 5px;
    padding: 6px 12px;
    color: #343148;
    font-size: 15px;
    font-weight: 500;
    border-radius: 0;
    background: none;
    border: 1px solid #343148;
    transition: .3s;
}

.class #class-filter li:hover,
.class #class-filter li.filter-active {
    background: #343148;
    color: #F7CAC9;
}

.class .class-item {
    position: relative;
    margin-bottom: 30px;
    overflow: hidden;
    transition: .3s;
}

.class .blog-post {
  transition: .2s ease;
  margin-bottom: 30px;
}

.class .blog-post .post-thumb figure {
  margin: 0;
}

@media (max-width: 767px) {
  .class .blog-post .post-thumb img {
    width: 100%;
  }
}

.class .blog-post .post-content {
  position: relative;
  padding: 30px 30px 25px 30px;
  border-width: 0 1px 1px 1px;
  border-style: solid;
  border-color: #e5e5e5;
}

.class .blog-post .post-content .date {
  position: absolute;
  top: -32px;
  left: 30px;
  width: 65px;
  height: 65px;
  text-align: center;
  background: #343148;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.class .blog-post .post-content .date h3 {
    font-size: 24px;
    color: #fff;
}

.class .blog-post .post-content .date h3 time {
  display: block;
  font-size: 1rem;
  font-weight: 400;
  font-style:normal;
}

.class .blog-post .post-content .post-title {
  padding-bottom: 5px;
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 15px;
}

.class .blog-post .post-content .post-title h3 {
  margin-top: 18px;
  font-size: 19px;
  font-weight: 600;
}

.class .blog-post .post-content .post-meta ul li {
    margin-bottom: 0.3rem;
}

.class .blog-post .post-content .post-meta ul li span {
    font-size: 0.9rem;
}

.class .blog-post .post-content .post-meta ul {
    margin-bottom: 0;
}

.class .blog-post .post-content .post-meta ul li i {
    margin-right: 7px;
}

.class .blog-post .post-content .post-meta ul li .btn_registration {
    color: #343148;
    text-transform: uppercase;
    font-weight: 600;
}

.class .blog-post .post-content .post-meta ul li .btn_registration:hover {
    color: #F7CAC9 !important;
}

.class .blog-post .post-content .post-meta ul li a {
  display: inline-block;
  padding-right: 25px;
  font-size: 0.875rem;
}

.class .blog-post:hover {
  box-shadow: 0px 0px 30px 0px rgba(11, 29, 66, 0.15);
}

@media (max-width: 797.98px) {
    
    .class .blog-post .post-content {
        padding: 30px 20px 25px 20px;
    }
    
    .class .blog-post .post-content .post-title h3 {
        font-size: 1.05186rem !important;
    }
}



/****************************************/
/********* Section Discount CSS *********/
/****************************************/
.discount {
    position: relative;
    width: 100%;
    margin: 45px 0;
    padding: 90px 0;
    background: linear-gradient(rgba(247, 202, 201, .8150), rgba(247, 202, 201, .9)), url(../img/bg_sakura_flower-min.jpg);
    background-attachment: fixed;
    background-position: top 10% center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* .discount {
    position: relative;
    width: 100%;
    margin: 45px 0;
    padding: 90px 0;
    background: linear-gradient(rgba(247, 202, 201, .8150), rgba(247, 202, 201, .9)), url(../img/bg_japanese_maple.jpg);
    background-attachment: fixed;
    background-position: top 10% center;
    background-repeat: no-repeat;
    background-size: cover;
} */

.discount .container {
    max-width: 750px;
    text-align: center;
}

.discount .section-header {
    margin-bottom: 20px;
    max-width: 600px;
}

.discount .section-header p {
    color: #343148;
    background: transparent;
}

.discount .section-header p::after {
    display: none;
}

.discount .section-header h2 strong {
    font-size: 40px;
    font-weight: 700;
}

.discount .section-header h2 span {
    color: #F32B56;
    font-size: 45px;
}


.discount .discount-text p {
    color: #454545;
    font-size: 28px;
    font-style: italic;
}

.discount .discount-text .btn {
    margin-top: 10px;
    padding: 12px 20px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #F7CAC9;
    background: #343148;
    border-radius: 0;
    transition: .3s;
}

.discount .discount-text .btn:hover {
    color: #343148;
    background: #ffffff;
}



/***************************************/
/******* Section Testimonial CSS *******/
/***************************************/
.testimonial {
    position: relative;
    padding: 45px 0;
}

.testimonial .container {
    padding: 0;
}

.testimonial .testimonial-item {
    position: relative;
    margin: 0;
    text-align: center;
}

.testimonial .testimonial-img {
    position: relative;
    margin-bottom: 15px;
    z-index: 1;
}

.testimonial .testimonial-item img {
    margin: 0 auto;
    width: 80px;
    padding: 13px;
    border-radius: 100px;
    border: 1px solid rgba(0, 0, 0, .07);
    background: #F7CAC9;
    transition: .5s;
}

.testimonial .testimonial-text {
    position: relative;
    margin-top: -70px;
    padding: 75px 25px 25px 25px;
    text-align: center;
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, .07);
}

.testimonial .testimonial-item p {
    font-size: 16px;
    color: #666666;
}

.testimonial .testimonial-text h3 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
}

.testimonial .testimonial-text h4 {
    color: #666666;
    font-size: 14px;
    margin-bottom: 0;
}

.testimonial .owl-item.center img {
    border-color: transparent;
}

.testimonial .owl-item.center .testimonial-text {
    background: #343148;
}

.testimonial .owl-item.center .testimonial-text h3 {
    color: #F7CAC9;
}

.testimonial .owl-item.center .testimonial-text p,
.testimonial .owl-item.center .testimonial-text h4 {
    color: #ffffff;
}

.testimonial .owl-dots {
    margin-top: 15px;
    text-align: center;
}

.testimonial .owl-dot {
    display: inline-block;
    margin: 0 5px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #F7CAC9;
}

.testimonial .owl-dot.active {
    background: #343148;
}


/****************************************/
/*********** Page À Propos CSS **********/
/****************************************/
.team {
    position: relative;
    width: 100%;
    padding: 45px 0 15px 0;
}

.team .team-item {
    position: relative;
    margin-bottom: 30px;
    padding: 15px;
    background: #ffffff;
    /*border: 1px solid rgba(0, 0, 0, .07);*/
}

.team .team-img {
    position: relative;
    overflow: hidden;
}

.team .team-img img {
    position: relative;
    width: 100%;
    /*height: 50vh;*/
    /*object-fit: cover;*/
}

.team .team-social {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .5s;
}

.team .team-social a {
    position: relative;
    margin: 0 3px;
    margin-top: 100px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 40px;
    font-size: 16px;
    color: #F7CAC9;
    background: #343148;
    opacity: 0;
}

.team .team-social a:hover {
    color: #343148;
    background: #F7CAC9;
}


.team .team-item:hover .team-social {
    background: rgba(256, 256, 256, .5);
}

.team .team-item:hover .team-social a:first-child {
    opacity: 1;
    margin-top: 0;
    transition: .3s 0s;
}

.team .team-item:hover .team-social a:nth-child(2) {
    opacity: 1;
    margin-top: 0;
    transition: .3s .1s;
}

.team .team-item:hover .team-social a:nth-child(3) {
    opacity: 1;
    margin-top: 0;
    transition: .3s .2s;
}

.team .team-item:hover .team-social a:nth-child(4) {
    opacity: 1;
    margin-top: 0;
    transition: .3s .3s;
}

.team .team-text {
    position: relative;
    padding: 25px 15px 10px 15px;
    text-align: center;
    background: #ffffff;
}

.team .team-text h3 {
    font-size: 1.35rem;
    font-weight: 600;
}

.team .team-text h4 strong {
    font-size: 18px;
    font-weight: 400 !important;
    color: #797979;
}

.team .team-text p {
    margin: 0;
}


/***************************************/
/********** Page Services CSS **********/
/***************************************/

.reiki_session .subtitle {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    padding: 1rem 0;
}

.reiki_session img {
    width: 100%;
    max-width: 700px;
}

.benefits .benefit .benefit_icon {
    margin-right: 1rem;
}

.benefits .benefit .benefit_icon img {
    width: 65px;
    padding: 13px;
    border-radius: 100px;
    border: 1px solid rgba(0, 0, 0, .07);
    background: #F7CAC9;
    transition: .5s;
}

.info_session ul {
    line-height: 2;
    font-size: 17px;
}

.info_session ul li {
    border-bottom: 1px dotted #000000;
    display: flex;
    justify-content: space-between;
}

.info_session ul li .price_session {
    font-weight: 600;
    color: #343148;
}

.info_session .caption_payment {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.reiki_session .info_session {
    font-size: 17px;
}

/* .info_session .img_interac_container {
    padding-left: 10px !important;
} */

.info_session .img_interac {
    width: 100%;
    max-width: 90px;
}

@media (max-width: 767.98px) {
    .payment_container {
        flex-direction: column;
    }

    .img_interac_container {
        margin-right: auto;
    }
}



/********************************************/
/************** Page Class CSS **************/
/********************************************/

.padding_section {
    padding: 60px 0;
}

.padding_section_session {
    padding: 60px 0 10px;
}

.padding_section_class {
    padding: 90px 0;
}

.page-header-course {
    margin-bottom: 0;
}


.class img {
    width: 100%;
    max-width: 700px;
}

.class .subtitle {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    padding: 1rem 0;
}

.heading-course h2 {
    margin: 0;
}

.course {
    margin-top: 3rem;
}

.japanese_character {
    font-size: 1.5rem;
    margin-top: -7px;
    margin-left: 0.8rem;
    color: #607253;
    font-weight: 600;
}

.reiki_usui_class .course {
    margin-top: 3.5rem !important;
}

.course h4, 
.course h5 {
    color: #060702;
    font-size: 1.2575rem;
    font-weight: 500;
}

.course .title_cursus {
    font-size: 1.75rem;
    font-weight: normal;
}

.course .details_course {
    background: #ffffff;
    border: none;
    border-radius: 0;
    padding: 1.5rem;
}

.course .card .card-header {
    background: #ffffff;
    border: none;
    border-radius: 0;
}


.course h3 {
    font-size: 25px;
    font-weight: 500;
    margin: 1rem 0;
}


.course .tjr {
    color: #000000;
    font-weight: 500;
}

.course ul li {
    line-height: 1.7;
}


.course ul li strong {
    font-weight: normal;
}

.course .rate {
    font-size: 1.3575rem;
    font-weight: 500;
}

.course .deposite {
    font-size: 1.1rem;
    font-weight: 600;
}

.benefit_icon img {
    width: 50px;
    padding: 8px;
    border-radius: 100px;
    border: 1px solid rgba(0, 0, 0, .07);
    background: #F7CAC9;
    margin-right: 0.8rem;
}

.course .img_interac {
    width: 100%;
    max-width: 90px;
}

/* Registration btn link */
.btn-registration-2 {
    margin: 2rem 0;
	padding: 0.5rem 2rem 0.5rem 2rem;
    border-radius: 0;
    background: #343148 !important;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
    color: #ffffff !important;
}

.btn-registration-2:hover  {
    background: #F7CAC9 !important;
    color: #343148 !important;
}

 .btn-arrow {
	 position: relative;
	 transition: background-color 300ms ease-out;
}
 .btn-arrow span {
	 display: inline-block;
	 position: relative;
	 transition: all 300ms ease-out;
	 will-change: transform;
}
 .btn-arrow:hover span {
	 transform: translate3d(-1rem, 0, 0);
}
 .btn-arrow .fas {
	 position: absolute;
	 width: 1.1em;
	 right: 0px;
	 right: 0rem;
	 opacity: 0;
	 top: 50%;
	 transform: translateY(-50%);
	 transition: all 300ms ease-out;
	 will-change: right, opacity;
}
 .btn-arrow .fas * {
	 stroke-width: 3;
	 stroke-color: #F7CAC9;
     color: #343148 !important;
}
 
 .btn-arrow:hover .fas {
    background: transparent;
	 opacity: 1;
	 right: -2rem;
     color: #343148 !important;
}



/************************************/
/********* Page Contact CSS *********/
/************************************/

/*.map_container iframe {*/
/*  width: 100%;*/
/*  border: none;*/
/*   filter: invert(3) sepia(100%) contrast(100%); */
/*   filter: grayscale(100%) contrast(100%) brightness(95%); */
/*}*/

/*.map_container {*/
/*  position: relative;*/
/*  margin-bottom: 50px;*/
/*}*/

/*.map_container::after {*/
/*  content: "";*/
/*  position: absolute;*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  max-height: 370px;*/
/*  display: block;*/
/*  background-color: #F7CAC9; */
/*  position: absolute;*/
/*  top: 0;*/
/*  left: 0;*/
/*  mix-blend-mode: color;*/
/*  pointer-events: none;*/
/*}*/

.map_container iframe {
  width: 100%;
  border: none;
  /* filter: invert(3) sepia(100%) contrast(100%); */
  /* filter: grayscale(100%) contrast(100%) brightness(95%); */
}

.map_container {
  position: relative;
  margin: 0;
}

.map_container::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  max-height: 370px;
  display: block;
  /* background-color: #F7CAC9; */
  position: absolute;
  top: 0;
  left: 0;
  mix-blend-mode: color;
  pointer-events: none;
}


/* /////////////////////////////////////// */

.contact {
    position: relative;
    width: 100%;
    padding: 45px 0;
}

.contact .container {
    max-width: 900px;
}

.contact .contact-item {
    text-align: center;
    margin-bottom: 30px;
}

.contact .contact-item i {
    width: 50px;
    height: 50px;
    padding: 12px 0;
    font-size: 25px;
    color: #343148;
    margin-bottom: 15px;
    border: 1px solid #F7CAC9;
    border-radius: 50px;
}

.contact .contact-item h2 {
    font-size: 25px;
    font-weight: 700;
}

.contact .contact-form {
    position: relative;
}

.contact .contact-form input {
    height: 45px;
    padding: 15px;
    background: none;
    border-radius: 0;
}

.contact .contact-form textarea {
    height: 150px !important;
    padding: 15px;
    background: none;
    border-radius: 0;
}

.contact .contact-form .btn {
    padding: 12px 25px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
    color: #F7CAC9;
    background: #343148;
    border-radius: 0;
    transition: .3s;
}

.contact .contact-form .btn:hover {
    color: #343148;
    background: #F7CAC9;
}

.contact .help-block ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}

.contact table thead {
    border: 1px solid #ced4da;
    background: #343148;
}

.contact table th {
    border: 1px solid #ced4da;
    background: #343148;
    border-color: #343148;
}

.contact table tr { 
    background: #f7cac9 !important;
}

.contact table td { 
    /*font-weight: 600;*/
    color: #252525;
}

.contact .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(225, 225, 225, 0.0) !important;
}

/* error message */
.contact .contact-form p.comments {
  font-size: 0.9rem;
  font-weight: 600;
  color: #c60505 !important;
}

p.thank-you {
  text-align: center !important;
  margin-top: 1rem !important;
  color: #173b6c;
}

.swal-button {
  background: #343148;
  color: #ffffff;
}

.swal-button:not([disabled]):hover {
    background: #F7CAC9;
    color: #343148;
}

@media (max-width: 767.98px) {
    .contact .contact-form {
        margin-bottom: 30px;
    }
}



/*******************************/
/********* Footer CSS **********/
/*******************************/
.footer {
    position: relative;
    margin-top: 45px;
    background: #000000;
}

.footer .container-fluid {
    padding: 50px 0 0 0;
    background: linear-gradient(rgba(52, 49, 72, .7), rgba(52, 49, 72, .8550)), url(../img/img_footer.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
}

.footer .footer-info {
    position: relative;
    width: 100%;
}

/*.footer .footer-info .footer-logo {*/
/*    display: inline-block;*/
/*    color: #F7CAC9;*/
/*    font-size: 60px;*/
/*    line-height: 60px;*/
/*    font-weight: 700;*/
/*    text-transform: uppercase;*/
/*    letter-spacing: 2px;*/
/*    margin-bottom: 45px;*/
/*}*/

/*.footer .footer-info .footer-logo img {*/
/*    max-width: 100%;*/
/*    width: 140px;*/
/*    opacity: 0.5;*/
/*}*/

.footer .footer-info h3 {
    margin-bottom: 15px;
    font-size: 20px;
    font-weight: 600;
    color: #ffffff;
}

.footer .footer-menu {
    width: 100%;
    display: flex;
    justify-content: center;
}

.footer .footer-menu p {
    color: #ffffff;
    font-size: 20px;
    font-weight: 600;
    line-height: 20px;
    padding: 0 10px;
    border-right: 1px solid #ffffff;
}

.footer .footer-menu p:last-child {
    border: none;
}

.footer .footer-social {
    position: relative;
    margin-top: 5px;
}

.footer .footer-social a {
    display: inline-block;
}

.footer .footer-social a i {
    margin-right: 15px;
    font-size: 20px;
    color: #ffffff;
    transition: .3s;
}

.footer .footer-social a:last-child i {
    margin: 0;
}

.footer .footer-social a:hover i {
    color: #F7CAC9;
}

.footer .copyright {
    margin-top: 60px;
    padding: 0 30px;
}

.footer .copyright .row {
    padding-top: 25px;
    padding-bottom: 25px;
    border-top: 1px solid rgba(256, 256, 256, .1);
}

.footer .copyright p {
    margin: 0;
    color: #ffffff;
}

.footer .copyright .col-md-6:last-child p {
    text-align: right;
}

.footer .copyright p a {
    color: #ffffff;
    font-weight: 500;
}

.footer .copyright p a:hover {
    color: #F7CAC9;
}

@media (max-width: 767.98px) {
    .footer .footer-info .footer-logo img {
        width: 115px;
    }

    .footer .footer-info h3 {
        font-size: 18px;
        margin-bottom: 10px;
    }

    .footer .footer-menu p {
        font-size: 16.65px;
    }
    
    .footer .copyright p,
    .footer .copyright .col-md-6:last-child p {
        margin: 5px 0;font-size: 14.15px;
        font-size: 14.15px;
        text-align: center;
    }

}


/* Nouveau Footer */

.footer {
    background: #000000;
}

.footer a {
    color: #ffffff;
}

.footer a:hover {
    color: #F7CAC9;
}

.new_footer .container-fluid {
    padding: 90px 0 0 0;
    background: linear-gradient(rgba(52, 49, 72, .7), rgba(52, 49, 72, .8550)), url(../img/img_footer.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
}

.new_footer .footer-info p,
.new_footer .footer-info ul li {
    margin-bottom: 0.3rem !important;
}

/* .footer-info ul li a {
    color: #ffffff;
} */

/* .footer-info ul li a:hover {
    color: #F7CAC9;
} */

.new_footer h5 {
    color: #ffffff;
    text-align: left;
    letter-spacing: 2px;
    text-transform: uppercase;
    font-weight: 600;
    margin-bottom: 1.3rem;
}

/* .new_footer .footer-info .footer-logo {
    display: inline-block;
    color: #F7CAC9;
    font-size: 60px;
    line-height: 60px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 30px;
    width: 100px;
} */

/*.new_footer .footer-info {*/
/*    margin-bottom: 2rem;*/
/*}*/


.new_footer .new-footer-menu p {
    color: #ffffff;
    font-size: 1rem;
    font-weight: normal;
    padding: 0;
    text-align: left;
}

.new_footer .new-footer-menu p:first-child {
    font-weight: 600;
}

/* .new_footer .new-footer-menu p:nth-child(2) a {
    color: #ffffff;
} */

.new_footer .footer-social {
    color: #ffffff;
}

.new_footer .footer-social a i {
    margin-right: 6px;
    font-size: 16px;
    color: #ffffff;
    transition: .3s; 
}

.footer .table {
    color: #ffffff;
}

/*.footer .table tr {*/
/*    background: rgb(52, 49, 72, 0.8);*/
/*}*/

.footer .table tr td {
    padding: .75rem 0 .75rem 0;
    border-bottom: 1px solid rgba(256, 256, 256, .2) !important;
    border-top: 0;
}

@media (max-width: 767.98px) {
    .footer .container-fluid {
        padding: 50px 0 0 0;
        background: linear-gradient(rgba(52, 49, 72, .7), rgba(52, 49, 72, .8550)), url(../img/img_footer.png);
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        width: 100%;
    }
    
    .new_footer .footer-info {
        margin-bottom: 2rem;
    }
}










