#wrapper {
  overflow: hidden;
}

#container_wrapper {
  position: relative;
  width: 100%;
  display: table;
  table-layout: fixed;
  padding: 10px 0 ;
}

/* Main contents  */

#main {
  position: relative;
  width: 100%;
  display: table-cell;
  height: auto;
}

#ttl {
  margin: 15px 0 ;
  padding: 0 64px;
}
h1 {
  font-size: 2.4em;
}
h2 {
  font-size: 21px;
}

#highlight_container {
}
#top_cont {
  position: relative;
  padding: 0 44px;
  margin: 0 0 60px;
  width: 100%;
}
.block_l {
  position: relative;
  width: 49%;
}
.block_l .spot_ttl {
  padding: 5px 20px 5px;
}
.top_feature {
  position: absolute;
  top: 10px;
  left: -5px;
  padding: 5px 10px;
  color: #fff;
  background: rgba(201, 23, 30, 0.8);
  z-index: 1;
}
.spot_block {
	position: relative;
  width: 43.5%;
  padding-top: 32.8%;
  margin: 0 2.9% 0 0;
	background-color: #fff;
	float: left;
}
.spot_block a, #carousel_area a {
  display: block;
}
.spot_ttl {
	position: absolute;
	width : 100%;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px 15px;
	line-height: 1.5;
	background: rgba(0,0,0,0.1);
	background: -webkit-gradient(top, rgba(0,0,0,0.3), rgba(0,0,0,1.0)),
to(rgba(0,0,0,1.0)));
	background: -moz-linear-gradient(top, rgba(0,0,0,0.3), rgba(0,0,0,1.0));
  background: -ms-linear-gradient(top, rgba(0,0,0,0.3), rgba(0,0,0,1.0));
  background: -o-linear-gradient(top, rgba(0,0,0,0.3), rgba(0,0,0,1.0));
  background: linear-gradient(to bottom, rgba(0,0,0,0.3), rgba(0,0,0,1.0));
  filter: progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorStr=#22000000, endColorStr=#FF000000);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(gradientType=0, startColorStr=#22000000, endColorStr=#FF000000)";
}
.spot_ttl h3 {
  margin: 0 0 5px;
}
.spot_ttl p {
  padding: 0 0 5px;
}
.feature_ttl {
  position: absolute;
  top: 10px;
  left: 0;
  color: #fff;
  background: #d7003a;
  padding: 5px 20px;
}
#carousel_area {
  width: 100%;
}
#carousel_area h3 {
  padding: 0 5%;
  margin: 0 0 10px;
}
.item_list {
  position: relative;
  padding: 0 5% 60px;
  width: 100%;
  overflow: hidden;
}
#carousel_area ul {
  position: relative;
}
.carousel {
  position: relative;
  padding: 0 0 4px;
  width: 100%;
}
.load {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  text-align: center;
}
.load:before {
  position: relative;
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}
.load img {
  position: relative;
  left: 0;
  width: 48px;
  height: 48px;
  vertical-align: middle;
  display: inline-block;
}
.link_arrow {
  width: 44px;
  vertical-align: middle;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity 200ms;
}
.link_arrow:hover {
  opacity: 1;
  transition: opacity 200ms;
}
.link_arrow img {
  display: inline-block;
  width: 14px;
  margin: 0 8px;
}
.prev {
  text-align: right;
}
.next {
  text-align: left;
}
.carousel_list {
  width: 100%;
  overflow: hidden;
}
.noflip {
  width: 100%;
  padding: 0 44px;
  margin: 0 auto 58px;
}
.carousel_list ul {
  width: 1020%;
}
.carousel_list li {
  position: relative;
  float: left;
  width: 3.137%;
  margin: 0 0.196% 0 0;
  overflow: hidden;
}
.item_list li:last-child, .carousel_list li:last-child {
  margin: 0;
}
.pointer {
  width: 100%;
  margin: 0 auto 30px;
  text-align: center;
}
.pointer li {
  display: inline-block;
  margin: 0 5px;
  font-size: 15px;
  color: #624A69;
  opacity: 0.4;
  cursor: pointer;
}
.pointer .cur {
  opacity: 0.8;
}
.cont_txt_area h3 {
  background-color: #624A69;
  color: #fff;
  font-size: 1.6em;
  padding: 2px 2%;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-radius-topleft: 10px;
  -moz-border-radius-topright: 10px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  z-index: 9800;
}



@media (max-width: 1048px) {
  h2 {
    font-size: 1.6em;
  }
	#left_side_menu {
	 width: 20px;
	}
	#index_wrapper {
	 left: -270px;
	}
	#index_bar {
	 display: block;
	}
 	#center_main_container {
  	margin-left: 40px;
 	}
  .block_wrapper:hover {
    opacity: 1;
  }
  .spot_ttl p {
    position: relative;
    max-height: 0;
    padding: 0;
    overflow: hidden;
    transition: 0.4s;
  }
  .spot_ttl:hover p {
    max-height: 100px;
    padding: 0 0 5px ;
    transition: 0.4s;
  }
}

.fixed  {
  position:fixed !important;
  top:10px;
}
.fixedb {
  top: auto !important;
  bottom: 0;
}
.lazyload, .lazyloading {
  opacity: 0;
}
.lazyloaded {
  opacity: 1;
  transition: opacity 200ms;
}