body {
  background-color: #fff;    
  background-image: url("/img/1.png"); background-size: 100%;
  background-position:top center;
  background-repeat:no-repeat;
  font-family: Tahoma, Verdana, Helvetica, sans-serif;
}
.top {
  height: 69vw;
  position:relative;
}
.logo {
  position: absolute;
  top: 2.05vw;
  left: 2.15vw;
  z-index: 2;
  width: 33vw;
}
.top_menu {
  position: absolute;
  top: 0vw;
  right: 2.15vw;
  z-index: 2;
}
.top_menu a {
  display: inline-block;
  padding: 2.01vw 1.32vw 1.75vw;
  color: #fff;
  text-decoration: none;
  font-size: 2.5vw;
  margin-right: 0.65vw;
  margin-left: 1.29vw;
}
.top_menu a:hover {
  color: #fff;
  text-decoration: none;
  background-color: #9F4B86;
}
.mascott {
  position: absolute;
  top: 7.60vw;
  left: 5vw;
  z-index: 1;
  width: 91vw;
}
.top_text {
  position: absolute;
  top: 56.20vw;
  left: 33.8vw;
  z-index: 1;
  width: 58.15vw;
  color: #fff;
  font-size: 2.0vw;
  text-align: center;
  padding: 0.55vw 0.5vw 0.65vw;
  line-height: 1.3em;
}
.button_A {
  background-color: #52016A;
  border-radius: 0.2vw;
  color: #fff;
  font-size: 2.1vw;
  text-align: center;
  text-decoration: none;
  border: 0.15vw solid #fff;
  padding: 0.5vw 0.5vw 0.85vw;
}
.button_A:hover {
  border-width:0.25vw;
  padding: 0.4vw 0.4vw 0.75vw;
  text-decoration: none;
  color:#fff;
}
.top_button,
.top_button img {
  width: 19.15vw;
}
.top_button {
  position: absolute;
  top: 63.7vw;
  left: 54.9vw;
  color:#fff;
}
.main {
  margin: 0 6.6vw;
  color: #292929;
  font-size: 2.1vw;
  line-height: 1.3em;
}
.main h4 {
    border: 0.45vw solid #87236C;
    border-radius: 0.2vw;
    color: #53006A;
    padding: 0.85vw 3.1vw 1.15vw;
    margin-bottom: 2.2vw;
    font-size: 2.8vw;
    display: none;
    display: inline-block;
}
.section_text {
    color: #292929;
    font-size: 2.3vw;
    line-height: 1.23em;
    margin-bottom: 3.5vw;
}
.flex_container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
}
.photos {
  margin-bottom: 4.5vw;
}
.photo {
  width: 18.87vw;
  height: 25.48vw;
}
a.photo_link { margin: 0 1vw 2vw; }
.photo_link {
  width:14.54vw;
  display:block;
}
.slide1 {
   position:relative;
   height:0px;
   width:100%;
}
.slide2 {
  position:absolute;
  background: url(/img/text_box.png);
  top:1.06vw;
  width:0;
  transition-property: width;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  transition-delay: 0s;
  background-color: #A41B69;
  overflow: hidden;
}
.slide_2_L { left:0; }
.slide_2_R { right:0; }
.photo:hover .slide2,
.slide3 {
  width: 64.16vw;
}
.slide4 {
  margin: 2vw 2vw 0;
}
.popup_txt {
  color: #fff;
  margin-bottom: 2vw;
  text-align: center;
}
.popup_butons {
  justify-content: center;
}
.footer_1 {
  height: 29.14vw;
  background-size: cover;
  background-image: url(/img/5.png);
}
.footer_2_spacer { height: 4.95vw; }
.links {
    width: 82vw;
    margin: 0 auto -0.85vw;
}
.link img, .link {
    width: 23.41vw;
}
.footer_4_newsletter {
    color: #fff;
    font-size: 2.45vw;
    line-height: 1.23em;
    margin: 3vw auto 1.95vw;
    text-align: center;
    font-weight: bold;
}
#sign_up_button {
    margin-left:40vw;
    margin-left:0 auto;
}
#sign_up_button img {
    width: 19.06vw;
}
.contact_us {
  display: block;
  width: 100%;
}
.footer_5_social_address {
  width: 100%;
  height: 15.2vw;
  position: relative;
}

.social_link,
.social_link img {
  display: block;
  width: 7.96vw;
}
.footer_6_social {
    display: inline-flex;
    width: 29.7vw;
    position: absolute;
    top: 3.4vw;
    left: 17.8vw;
}
.footer_7_address {
    position: absolute;
    top: 4.1vw;
    left: 54.5vw;
    width: 33vw;
    color: #251B3D;
    font-size: 2.5vw;
    line-height: 1.25em;
    font-weight: bold;
}
.footer_8_bar {
    position: absolute;
    top: 3.6vw;
    left: 50.9vw;
    display: block;
    background: #53006A;
    width: 0.30vw;
    height: 7.5vw;
}
