@charset "utf-8";
/* CSS Document */
/** mv *****************************************
***********************************************/

.p15vw {
	padding: 0 15vw;
	text-align: center;
}
.p20vw {
	padding: 0 20vw;
	text-align: center;
}
.mt70 {
	margin-top: 70px!important;
}
.main_img {
	text-align: center;
	margin-bottom: 20px;
}
.sub_img {
	text-align: center;
	margin: 0 auto 20px;
	max-width: 1080px;
}
img {
	max-height: 90vh;
}

.mv_cont.event {
    margin-top: calc(24px + 20vw);
}
.mv_cont.event h2 {
    position: relative;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto 40px;
    z-index: 2;
    color: #111;
    text-align: center;
    font-size: 40px;
    font-weight: 400;
    line-height: 0.75;
	width: 270px;
}
.mv_cont h2 span {
    display: block;
    font-size: 3.4vw;
    padding-bottom: 20px;
    font-weight: 300;
}
.mv_cont.mv_cont h2 span:last-child {
    font-size: 13vw;
    padding-top: 0;
}
.mv_cont.event p.event_date {
    font-size: 3.8vw;
    text-align: center;
    line-height: 1.7;
    padding: 20px 0 60px;
    letter-spacing: 0;
}
.mv_cont.event p {
    position: relative;
    padding: 0 7vw 40px;
    font-size: 13px;
    letter-spacing: 1px;
    line-height: 1.8;
    margin: 0;
}
.mv_cont.event p:last-of-type {
    margin-bottom: 40px;
}
.mv_cont.event p:last-of-type:after {
    content: "";
    width: 48vw;
    border-top: 1px solid #ccc;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
@media screen and (min-width: 813px) {
    .mv_cont.event {
		margin-top: 120px;
		margin-bottom: 50px;
		height: auto;
        max-height: initial;
    }
    .mv_cont.event h2 {
        position: relative;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 2;
        color: #111;
        text-align: center;
        font-size: 40px;
        font-weight: 400;
        line-height: 0.9;
    }
    .mv_cont h2 span {
        display: block;
        font-size: 18px;
        padding-bottom: 40px;
        font-weight: 300;
    }
    .mv_cont.mv_cont h2 span:last-child {
        font-size: 50px;
        padding-top: 0;
    }
    .mv_cont.event p.event_date {
        font-size: 18px;
        text-align: center;
        line-height: 1.8;
        padding: 44px 0 60px;
        letter-spacing: 0;
    }
    .mv_cont.event p {
        position: relative;
        padding: 0 0 50px;
        font-size: 13px;
        letter-spacing: 1px;
        line-height: 1.6;
        margin: 0 auto;
        text-align: center;
        width: 100%;
        max-width: 570px;
    }
    .mv_cont.event p:last-of-type {
		margin-bottom: 40px;
    }
    .mv_cont.event p:last-of-type:after {
        content: "";
        width: 225px;
        border-top: 1px solid #ccc;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        margin: auto;
    }
    .mv_cont.event .fs-pt-carousel {
        max-height: initial;
        overflow: hidden;
    }
    .mv_cont.event .fs-c-slick .slick-dots {
        top: auto;
        bottom: 20px;
    }
}


/** event_topics *******************************
***********************************************/
.event_topics {
    position: relative;
    margin-bottom: 50px;
}
.event_topics + .event_topics {
    padding-top: 50px;
}
.event_topics + .event_topics:before {
    content: "";
    width: 50vw;
    border-top: 1px solid #ccc;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
}
.event_topics:last-of-type {
    margin-bottom: 80px;
}
.event_topics h3 {
    font-size: 16px;
    margin: 30px 0 10px;
    letter-spacing: 0px;
}
.event_topics h3 span {
    display: block;
    font-size: 3.6vw;
    padding-bottom: 8px;
    font-weight: 300;
}
.event_topics h3.center {
    text-align: center;
}
.event_topics h3 img {
	width: 130px;
}

.event_topics > p {
    margin: 0 0 80px;
    padding: 0 8vw;
    font-size: 13px;
    letter-spacing: 0.7px;
    line-height: 1.8;
}

.event_topics .topics_item {
    padding: 0 4.6vw;
    margin: 0 auto 40px;
}
.event_topics .topics_item .topics_description {
    padding: 10px 5.4vw;
    font-size: 3.4vw;
    letter-spacing: 1.4px;
    line-height: 1.5;
}

.event_topics h4 {
    position: relative;
    color: #222;
    text-align: center;
    font-size: 5.4vw;
    font-weight: 400;
    line-height: 1.4;
    margin: 0 auto 20px;
}
.event_topics h4:after {
    content: "";
    width: 64vw;
    border-bottom: 1px solid #ccc;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}

.event_link {
    text-align: center;
    margin: -40px 0 0;
}
.event_link a {
    color: #666;
    font-size: 4.2vw;
    letter-spacing: 1.2px;
}

.paule270 {
	width:270px;
	margin: auto;
}

.slick_cont {
    margin: 0 auto 130px!important;
}

@media screen and (min-width: 813px) {
  .event_topics {
      position: relative;
      margin-bottom: 60px;
  }
  .event_topics + .event_topics {
      padding-top: 40px;
  }
  .event_topics + .event_topics:before {
      content: "";
      width: 225px;
	  border-top: 1px solid #ccc;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      margin: auto;
  }
  .event_topics:last-of-type {
      margin-bottom: 180px;
  }
  .event_topics h3 {
		font-size: 17px;
		letter-spacing: 0px;
  }
  .event_topics h3 span {
      display: block;
      font-size: 18px;
      padding-bottom: 16px;
      font-weight: 300;
  }

  .event_topics > p {
      padding: 0;
      font-size: 13px;
      letter-spacing: 0.6px;
      line-height: 1.8;
	  margin: 0px auto 80px;
      width: 100%;
      max-width: 660px;
  }

  .event_topics .topics_item {
      width: 100%;
	  max-width: 540px;
      padding: 0;
      margin: 0 auto 0px;
  }
  .event_topics .topics_item .topics_description {
      padding: 20px 120px;
      font-size: 16px;
      letter-spacing: 1px;
      line-height: 1.7;
  }

  .event_topics h4 {
      position: relative;
      color: #222;
      text-align: center;
      font-size: 40px;
      font-weight: 400;
      line-height: 1.4;
      margin: 130px auto 20px;
  }
  .event_topics h4:after {
      content: "";
      width: 420px;
      border-bottom: 1px solid #ccc;
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      margin: auto;
  }

  .event_link {
      text-align: center;
      margin: 0;
  }
  .event_link a {
      color: #666;
      font-size: 16px;
      letter-spacing: 1.2px;
  }

  .event_topics > span {
      display: block;
      padding-bottom: 40px;
      width: 100%;
      text-align: center;
  }
  .event_topics > span img {
      width: 100%;
  }
}
