.GridSet {
  width: 100%;
}

.Section {
  width: 100%;
  max-width: 1275px;
  margin: 0 auto;
  padding: 0;
}

#TopicPath {
    position: relative;
    background-color: transparent;
}
.PageTitleStyle1, .PageTitleStyle2 {
    width: 100%;
    max-width: 1275px;
    padding: 0 0 25px;
    margin: 0 auto;
    position: relative;
    box-sizing: border-box;
}

.headerArea {
  margin: 0 auto 50px;
  overflow: hidden;
}
.headerArea .swiper-wrapper {
  z-index: 0;
}
.headerArea .swiper-pagination {
  width: 100%;
  margin: 10px auto 0;
}
.headerArea .swiper-pagination span {
  margin: 0 5px;
}

#eventsMain {
  background: url(../image/bg.jpg) top center no-repeat;
  background-size: 100%;
}

#eventsMain .WideSection {
  margin-bottom: 30px;
}

#eventSlider {
  margin-bottom: 20px;
}
#eventList {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content:left;
  margin-bottom: 30px;
}

#eventList h2 {
  width: 100%;
  font-size: 120%;
  font-weight: 900;
  clear: both;
  background: none;
  margin: 30px 20px 0;
}


#eventList .eventBlock {
  display: inline-block;
  width: calc(100% / 3);
}
#eventList .eventBlock > * {
  transition: all 300ms;
}
.eventBlock .item {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  box-sizing: border-box;
  width: auto;
  height: auto;
  margin: 20px;
  background: rgba(255, 255, 255, 0.5);
  box-shadow: 0 0 3px rgba(0, 0, 0, .3);
  border-radius: 20px;
  backdrop-filter: blur(1px);
}
.eventBlock .item:hover {
  box-shadow: 0 0 80px rgba(0, 0, 0, .3);
  background: rgba(255, 255, 255, 0.3);
  /* backdrop-filter: blur(15px); */
  margin: 18px 20px 22px;
}
.eventBlock .item:active {
  transition: all 100ms;
  box-shadow: 0 0 30px rgba(0, 0, 0, .3), 0 0 10px rgba(0, 119, 255, 0.8);
  margin:20px;
}

.eventBlock .panel {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
  padding: 15px;
  transition: all 300ms;
}




.eventBlock .item div.Img {
  display: block;
  position: relative;
  width: 100%;
  max-height: 205px;
  margin: 0;
  overflow: hidden;
  background: #eee;
  transition: all 300ms;
}

.eventBlock .item div.Img a {
  display: block;
}
.eventBlock .item div.Img img {
    width: 100%;
    transition: all 300ms;
    transform: scale(1);
  }
  .eventBlock .item:hover div.Img img {
    transform: scale(1.05);
  }
  .eventBlock .item div.Img:hover img {
    opacity: .85;
  }
.eventBlock .item ul.typeList {
  text-align: right;
  padding: 10px 5px;
}

.eventBlock .item ul.typeList li {
  display: inline;
  font-size: 83%;
  border-radius: 20px;
  border: 1px solid #707070;
  padding: 2px 15px;
  margin: 0 5px;
  color: #707070;
}


.eventBlock .item ul.info {
  margin: 0 0 20px;
}
.eventBlock .item ul.info li {
  padding-left: 28px;
  margin-bottom: 5px;
  font-size: 83%;
  color: #666;
}


.eventBlock .extra {
  display: block;
  position: absolute;
  top: 0%;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  transform: scale(1.1);
  padding: 15px;
  z-index: 10;
  opacity: 0;
  transition: all 500ms;
}
.eventBlock div.Img:hover .extra {
  height: auto;
  overflow: hidden;
  opacity: 1;
  transform: scale(1);
  background: rgba(255,255,255,.9);
}
.eventBlock .item ul.extra {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.eventBlock .item ul.extra li {
  display: flex;
}
.eventBlock .item ul.extra li span {
  display: inline-block;
  font-size: 83%;
  width: 33%;
  padding-right: 1%;
}
.eventBlock .item ul.extra li a {
  display: inline-block;
  font-size: 83%;
  width: 66%;
}


.eventBlock .item ul.info li.date {
  background: url(../image/icon/calendar.svg) 0 0 no-repeat;
  background-size: 20px 20px;
}
.eventBlock .item ul.info li.location {
  background: url(../image/icon/location.svg) 0 0 no-repeat;
  background-size: 20px 20px;
}
.eventBlock .keywords {
  display: block;
  color: #c02;
  font-size: 75%;
}
.eventBlock .keywords span {
  display: inline-block;
  padding-right: 15px;
}



.toolBar {
  display: flex;
  justify-content: space-between;
  margin: 20px auto;
  padding: 0 20px;
  box-sizing: border-box;
}
.toolBar ul.buttonSet {
  display: flex;
  border-radius: 25px;
  margin-right: 50px;
}
.toolBar ul.buttonSet li {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 200px;
  min-height: 50px;
  text-align: center;
  font-size: 100%;
  color: #999;
  background: #F5F5F5;
  cursor: pointer;
  transition: all 300ms;
}

.toolBar ul.buttonSet li:hover {
  background: #E3E3E3;
}
.toolBar ul.buttonSet li.active {
  background:#b1000c;
  color: #FFF;
}
.toolBar ul.buttonSet li:first-child {
  border-radius: 25px 0 0 25px;
  border: 1px solid #ccc;
  border-right: 0;
}
ul.buttonSet li:last-child {
  border-radius: 0 25px 25px 0;
  border: 1px solid #ccc;
  border-left: 0;
}
.toolBar #searchSet {
  display: flex;
  justify-content: flex-end;
  flex-grow: 1;
  border-radius: 25px;
  transition: all 300ms;
}
.toolBar #searchSet:hover {
  box-shadow: 0 0 20px rgba(0, 0, 0, .2);
}
.toolBar #searchSet input:focus {
  outline: none;
}
.toolBar #searchSet .searchBox {
  width: calc(100% - 120px);
  padding-left: 25px;
  border-radius: 25px 0 0 25px;
  border: 1px solid #ccc;
  font-size: 100%;
}
.toolBar #searchSet .submit {
  width: 120px;
  background: #404040;
  border-radius: 0 25px 25px 0;
  border: 0;
  color: #FFF;
  font-size: 100%;
  cursor: pointer;
}

.searchInfo {
  display: block;
  margin: 20px auto;
  padding: 0 20px;
  box-sizing: border-box;
}
.searchInfo p {
  font-size: 120%;
  font-weight: 900;
  color: #999;
}
.searchInfo p span {
  display: inline-block;
  position: relative;
  font-size: 83%;
  font-weight: 100;
  color: #FFF;
  border: 2px solid #FFF;
  background: #b1000c;
  padding: 0px 40px 0 20px;
  border-radius: 20px;
  transition: all 300ms;

}
.searchInfo p span:hover,
.searchInfo p span:active {
  background: #E60000;
  box-shadow: 0 5px 15px rgba(0, 0, 0, .3);
}
.searchInfo p span::after {
  content: "×";
  position: absolute;
  right: 5px;
  font-size: 150%;
  line-height: 28px;
  cursor: pointer;
}


.swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  width: 100%;
  max-height: 560px;
  aspect-ratio: 192 / 80;
}
.swiper-slide > div {
  position: absolute;
}
.swiper-slide > img {
  position: absolute;
  width: 100%;
  height: 100%;
  min-width: 100%;
  min-height: 100%;
  max-width: unset;
  object-fit: cover;
  z-index: 1;
}
.swiper-slide .mask {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 2;
}
.swiper-slide .mask > img {
  width: 100%;
}
.swiper-slide div.title {
  width: 80%;
  max-width: 1000px;
  z-index: 3;
  text-align: left;
  font-size: 90%;
  margin: 0 auto 0 0;
}
.swiper-slide div.title.tiny {
  font-size: 70%;
}
.swiper-slide div.title * {
  display: block;
  color: #FFF;
  text-align: left;
  line-height: 1.5;
  text-shadow: 0 0 55px rgba(0, 0, 0, .8), 0 3px 15px rgba(0, 0, 0, .5), 0 3px 5px rgba(0, 0, 0, .8);
}
.swiper-slide div.title span {
  font-size: 200%;
}
.swiper-slide div.title strong {
  font-size: 250%;
  margin-bottom: 10px;
  letter-spacing: 3px;
}
.swiper-slide div.title strong span {
  margin-left: 30px;
  font-size: 100%;
}
.swiper-slide div.title small {
  display: inline-block;
  font-family: Arial, sans-serif;
  border-top: 1px solid #FFF;
  font-size: 150%;
  margin-bottom: 25px;
  line-height: 2;
}

.swiper-slide div.title strong.mleft {
  margin-left: -30px;
}

.swiper-slide div.title strong.tiny {
  letter-spacing: 0;
  font-size: 240%;
}
.swiper-slide div.title small.tiny { 
  font-size: 125%;
}


.swiper-slide div.title a.button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 160px;
  height: 40px;
  border: none;
  text-align: center;
  text-shadow: none;
  background-color: #FFF;
  cursor: pointer;
  box-shadow: 0 3px 15px rgba(0, 0, 0, .5);
  box-sizing: border-box;
  text-decoration: none;
  transition: all 300ms;
}
.swiper-slide div.title a.button span {
  font-size: 100%;
  text-shadow: none;
}
.swiper-slide div.title a.button:hover {
  border: 1px solid #FFF;
}
.swiper-slide div.title a.button.red span {
  color: #b1000e
}
.swiper-slide div.title a.button.blue span {
  color: #003474
}
.swiper-slide div.title a.button.red:hover {
  background: rgba(177, 0, 14, .8);
}
.swiper-slide div.title a.button.blue:hover {
  background: rgba(0, 52, 116, .8);
}
.swiper-slide div.title a.button:hover span {
  color: #FFF;
}
.headerArea .swiper-pagination {
  position:relative;
}

/* for - 1304-995px
=========================================================================================== */
@media screen and (min-width: 995px) and (max-width: 1304px) {
  .swiper-slide div.title {
    font-size: 75%;
  }
  
  .PageTitleStyle1, .PageTitleStyle2 {
    padding: 0 15px 25px;
  }
}

/* for - 1304-995px
=========================================================================================== */
@media screen and (max-width: 994px) {
  #TopicPath {
    background-color: #FFF;
  }
  .headerArea {
    margin-bottom: 20px;
  }
  .swiper-slide div.title span {
    font-size: 90%;
  }
  .swiper-slide div.title strong {
    font-size: 140%;
  }
  .swiper-slide div.title small {
    font-size: 90%;
    margin-bottom: 15px;
  }
  .swiper-slide div.title strong span {
    margin-left: 18px;
  }
  .swiper-slide div.title strong.mleft {
    margin-left: -18px;
  }
  .swiper-slide div.title a.button {
    width: 120px;
    height: 30px;
    font-size: 83%;
  }
  .toolBar {
    margin: 0 auto;
    padding: 0;
  }
  .toolBar ul.buttonSet {
    margin-right: 30px;
  }
  .toolBar ul.buttonSet li {
    width: 120px;
    font-size: 90%;
    min-height: 40px;
  }
  .toolBar #searchSet .searchBox {
    font-size: 90%;
  }
}

/* for - 965px
=========================================================================================== */

@media screen and (max-width: 965px) {
  #eventList .eventBlock {
    width: 50%;
  }
  #eventList .eventBlock .item {
    width: auto;
  }
}

/* for - 579px
=========================================================================================== */

@media screen and (max-width: 579px) {
  #eventList .eventBlock p.Img {
    margin: 0 0 20px;
  }
  .JS #eventList .eventBlock {
    width: 100%;
    flex-direction: column;
  }
  .JS #eventList .eventBlock p.Img,
  .JS #eventList .eventBlock div {
    width: auto;
  }

  .toolBar {
    flex-direction: column;
  }
  .toolBar ul.buttonSet {
    margin-right: 0;
    margin-bottom: 20px;
  }
  .toolBar #searchSet {
    height: 40px;
  }
  .toolBar ul.buttonSet li {
    width: 50%;
  }
  .swiper-slide div.title > span,
  .swiper-slide div.title small {
    display: none;
  }
  .swiper-slide div.title > strong {
    font-size: 14px;
    letter-spacing: 0;
  }
  
  .swiper-slide div.title strong span {
    margin-left: 14px;
  }
  .swiper-slide div.title strong.mleft {
    margin-left: -14px;
  }

  .swiper-slide div.title a.button {
    width: 80px;
    height: 26px;
  }

}

/** VARIABLES
===================================*/
/** RESET AND LAYOUT
===================================*/
.bx-wrapper {
  position: relative;
  margin-bottom: 60px;
  padding: 0;
  *zoom: 1;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}
.bx-wrapper img {
  max-width: 100%;
  display: block;
}
.bxslider {
  margin: 0;
  padding: 0;
}
ul.bxslider {
  list-style: none;
}
.bx-viewport {
  /*fix other elements on the page moving (on Chrome)*/
  -webkit-transform: translatez(0);
}
/** THEME
===================================*/
.bx-wrapper {
  -moz-box-shadow: 0 0 5px #ccc;
  -webkit-box-shadow: 0 0 5px #ccc;
  box-shadow: 0 0 5px #ccc;
  border: 5px solid #fff;
  background: #fff;
}
.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
  position: absolute;
  bottom: -30px;
  width: 100%;
}
/* LOADER */
.bx-wrapper .bx-loading {
  min-height: 50px;
  background: url('images/bx_loader.gif') center center no-repeat #ffffff;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2000;
}
/* PAGER */
.bx-wrapper .bx-pager {
  text-align: center;
  font-size: .85em;
  font-family: Arial;
  font-weight: bold;
  color: #666;
  padding-top: 20px;
}
.bx-wrapper .bx-pager.bx-default-pager a {
  background: #666;
  text-indent: -9999px;
  display: block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  outline: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active,
.bx-wrapper .bx-pager.bx-default-pager a:focus {
  background: #000;
}
.bx-wrapper .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
  display: inline-block;
  vertical-align: bottom;
  *zoom: 1;
  *display: inline;
}
.bx-wrapper .bx-pager-item {
  font-size: 0;
  line-height: 0;
}
/* DIRECTION CONTROLS (NEXT / PREV) */
.bx-wrapper .bx-prev {
  left: 10px;
  background: url('/image/ml_portal/new_version/slider/controls.png') no-repeat 0 -32px;
}
.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-prev:focus {
  background-position: 0 0;
}
.bx-wrapper .bx-next {
  right: 10px;
  background: url('/image/ml_portal/new_version/slider/controls.png') no-repeat -43px -32px;
}
.bx-wrapper .bx-next:hover,
.bx-wrapper .bx-next:focus {
  background-position: -43px 0;
}
.bx-wrapper .bx-controls-direction a {
  position: absolute;
  top: 50%;
  margin-top: -16px;
  outline: 0;
  width: 32px;
  height: 32px;
  text-indent: -9999px;
  z-index: 9999;
}
.bx-wrapper .bx-controls-direction a.disabled {
  display: none;
}
/* AUTO CONTROLS (START / STOP) */
.bx-wrapper .bx-controls-auto {
  text-align: center;
}
.bx-wrapper .bx-controls-auto .bx-start {
  display: block;
  text-indent: -9999px;
  width: 10px;
  height: 11px;
  outline: 0;
  background: url('/image/ml_portal/new_version/slider/controls.png') -86px -11px no-repeat;
  margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active,
.bx-wrapper .bx-controls-auto .bx-start:focus {
  background-position: -86px 0;
}
.bx-wrapper .bx-controls-auto .bx-stop {
  display: block;
  text-indent: -9999px;
  width: 9px;
  height: 11px;
  outline: 0;
  background: url('/image/ml_portal/new_version/slider/controls.png') -86px -44px no-repeat;
  margin: 0 3px;
}
.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active,
.bx-wrapper .bx-controls-auto .bx-stop:focus {
  background-position: -86px -33px;
}
/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
  text-align: left;
  width: 80%;
}
.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
  right: 0;
  width: 35px;
}
/* IMAGE CAPTIONS */
.bx-wrapper .bx-caption {
  position: absolute;
  bottom: 0;
  left: 0;
  background: #666;
  background: rgba(80, 80, 80, 0.75);
  width: 100%;
}
.bx-wrapper .bx-caption span {
  color: #fff;
  font-family: Arial;
  display: block;
  font-size: .85em;
  padding: 10px;
}
