@charset "UTF-8";

div.story, .column3.left, .column3.right {
  overflow: auto !important;
}

/* N add 130105 */
div.column3.right.events .workshops {
  padding-top: 10px;
  background: url("/_img/parts/lines/workshop.gif") no-repeat scroll right top transparent;
}

div#contents div.story div.workshop {
  /* common1210.css の734行目からとる */
  background: none;
}

.workshop h3 {
  height: auto !important;
  padding-top: 0 !important;
}

.bnnr {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 448px;
}

.bnnr a {
  box-sizing: border-box;
  width: 216px;
  margin-bottom: 16px;
  border-radius: 5px;
  text-decoration: none;
}

.bnnr a.newsletter {
  display: flex;
  align-content: center;
  padding: 10px 0;
  border: 2px #000 solid;
  text-decoration: none;
  font-size: 14px;
  color: #231815;
}
.bnnr a.newsletter div {
    display: flex;
    flex-direction: column;
    margin: auto;
}

.bnnr a.newsletter div > span {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  white-space: nowrap;
}
.bnnr a.newsletter div > span > span {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
}
.bnnr a.newsletter div > span > span .fa-angle-double-right {
  padding-left: 2px;
}

.bnnr a.youtube {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  border: 2px #ff0000 solid;
}

.bnnr a.youtube div {
  display: flex;
  justify-content: center;
  align-items: center;
}

.bnnr a.youtube div img {
  height: 23px;
}

.bnnr a.twitter {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  padding: 10px 0;
  border: 2px #55acee solid;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  color: #55acee;
}

.bnnr a.twitter div {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 160px;
  margin: auto;
  line-height: 1.2;
}

.bnnr a.twitter div span span {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.bnnr a.twitter div img {
  width: 33px;
  height: 33px;
  margin-right: 10px;
}

.bnnr a.facebook {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: center;
  padding: 10px 0;
  border: 2px #3b5998 solid;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  color: #3b5998;
}

.bnnr a.facebook div {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 160px;
  margin: auto;
  line-height: 1.2;
}

.bnnr a.facebook div span span {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.bnnr a.facebook div img {
  width: 33px;
  height: 33px;
  margin-right: 10px;
}

.bnnr.bnnr-en {
  width: 100%;
}

.bnnr.bnnr-en a {
  width: 142px;
}

.bnnr.bnnr-en a.youtube div img {
    height: 20px;
}

.bnnr.bnnr-en a.twitter {
  font-size: 13px;
}

.bnnr.bnnr-en a.twitter div {
  justify-content: space-between;
  width: 98px;
}

.bnnr.bnnr-en a.twitter div img {
    width: 30px;
    height: 30px;
    margin-right: 0;
}

.bnnr.bnnr-en a.facebook   {
  font-size: 13px;
}

.bnnr.bnnr-en a.facebook div {
  justify-content: space-between;
  width: 101px;
}

.bnnr.bnnr-en a.facebook div img {
    width: 30px;
    height: 30px;
    margin-left: 0;
}


/* N add 140207 */
.names {
  width: 372px;
  margin-bottom: 30px;
  padding: 21px 36px 28px 36px;
  border: 2px #2361b3 solid;
  border-radius: 5px;
}

.names h2 {
  margin-bottom: 13px;
  padding-bottom: 15px;
  border-bottom: 1px #2361b3 solid;
  text-align: center;
}

.names .WYSIWYG {
  font-size: 14px;
  line-height: 1.9em;
}

.names .WYSIWYG p {
  text-align: center;
  margin-bottom: 18px;
}

.enter {
  text-align: center;
}

.events h3 span, .workshops h3 span {
  color: #1e50a2;
}

.story--bnnr_large {
  margin: 0 0 25px 0 !important;
}

div#contents div.story div h2 .title i {
  display: none;
}

div#contents div.story div h2 span.title__upcoming {
  display: inline;
  padding: 1px 2px;
  vertical-align: middle;
  font-size: 11px;
  background: #cf0000;
  color: #fff;
}

/* -----------------------------------------------------
Slideshow
----------------------------------------------------- */
.section-home-slideshow .carousel-slideshow {
  width: 948px;
  height: 540px;
  overflow: hidden;
}
.section-home-slideshow .carousel-slideshow .item {
  display: block;
  width: 100%;
  height: 540px;
  overflow: hidden;
  text-decoration: none;
  cursor: pointer !important;
}

.section-home-slideshow .carousel-slideshow .item .img {
  width: 100%;
  /* 540 x 75% */
  height: 405px;
  position: relative;
  overflow: hidden;
  background-color: #ddd;
}

.section-home-slideshow .carousel-slideshow .item img {
  position: absolute;
  top: -100%;
  right: -100%;
  bottom: -100%;
  left: -100%;
  width: 100%;
  height: auto;
  margin: auto;
}

.section-home-slideshow .carousel-slideshow .item img.img--trim.img--landscape-wide {
  width: auto;
  height: 100%;
}

.section-home-slideshow .carousel-slideshow .item img.img--untrim {
  width: auto;
  height: 100%;
}

.section-home-slideshow .carousel-slideshow .item img.img--untrim.img--landscape-wide {
  width: auto;
  height: 80%;
  /*
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 90%;
  */
}

.section-home-slideshow .carousel-slideshow .item .txt {
  width: 100%;
  /* 540 x 25% */
  height: 135px;
  padding: 10px 15px;
  overflow: hidden;
  background-color: #444;
  box-sizing: border-box;
}

.section-home-slideshow .carousel-slideshow .item .txt * {
  color: #fff;
}

.section-home-slideshow .carousel-slideshow .item .txt p {
  line-height: 1.5;
  margin-bottom: 5px;
}

.section-home-slideshow .carousel-slideshow .item .txt *:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

.section-home-slideshow .carousel-nav {
  display: flex;
  justify-content: flex-end;
  padding: 15px 0;
}

.section-home-slideshow .carousel-nav a {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 10px;
  text-indent: -9999px;
  border-radius: 5px;
  background-color: #8e9fc7;
  cursor: pointer;
}

.section-home-slideshow .carousel-nav a.activeSlide {
  background-color: #1e50a2;
}

/* -----------------------------------------------------
Calendar
----------------------------------------------------- */
.calendar {
  position: relative;
}

.calendar__nav {
  display: table-cell;
  position: absolute;
  right: 0;
  z-index: 99;
  /* スライド数より多くする */
}

.calendar__nav .chunk {
  display: table-cell;
  width: 50%;
  height: 43px;
  padding-left: 10px;
  vertical-align: middle;
}

.calendar__nav a {
  display: inline-block;
  text-decoration: none;
  font-size: 18px;
  color: #1e50a2;
}

.calendar__nav a:hover {
  color: #8e9fc7;
}

.calendar__nav a.disabled {
  color: #8e9fc7;
  pointer-events: none;
  /* aタグのリンクを無効にする */
  cursor: default;
  /* マウスオーバー時のカーソルをdefaultに固定 */
}

.calendar__nav .calendar__prev i {
  transform: scale(-1, 1);
}

.carousel-calendar {
  width: 948px !important;
  height: 249px !important;
  /* 画像の高さ ＋ 画像の枠線（2px） + 日付の高さ（40px）*/
  border-top: 3px #666 solid;
  box-sizing: border-box;
}

.calendar .carousel-calendar .item .time {
  height: 40px;
  line-height: 40px;
  font-weight: bold;
  font-size: 13px;
}

.calendar .carousel-calendar .item img {
  display: block;
  border-top: 1px #666 solid;
  border-bottom: 1px #666 solid;
}

/* -----------------------------------------------------
Movies
----------------------------------------------------- */
.section-home-movies {
  margin: 50px 0;
  overflow: hidden;
  background: url(/_img/parts/lines/exhibitions.gif) right top no-repeat;
}

.section-home-movies h2 {
  padding: 15px 0 30px 0;
}

.section-home-movies h2 a {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  text-decoration: none;
}

.section-home-movies h2 a:hover {
  color: #1e50a2;
}

.section-home-movies h2 a span.title {
  display: flex !important;
  justify-content: center;
  margin-top: 0 !important;
  margin-bottom: 5px!important;
  padding-left: 0 !important;
  font-size: 20px;
}

.section-home-movies h2 a span:last-of-type {
  display: inline-flex !important;
  align-items: center;
}

.section-home-movies h2 a span img {
  margin-right: 5px;
}

.section-home-movies .movies {
  width: 100%;
  height: 265px;
  overflow: hidden;
  margin-bottom: 10px;
}

.section-home-movies .movies .item {
  position: relative;
  width: 100%;
  height: auto;
  padding-top: 56.25%;
}

.section-home-movies .movies .item iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.section-home-movies .excerpt {
  margin-bottom: 30px;
}

.section-home-movies .excerpt .item {
  display: none;
}

.section-home-movies .excerpt .item.active {
  display: block;
}

.section-home-movies .excerpt .item>*:last-child {
  display: block;
}

.section-home-movies .thumbs {
  cursor: grab;
}

.section-home-movies .thumbs:active {
  cursor: grabbing;
}

.section-home-movies .thumbs .item-wrapper {
  display: flex;
  justify-content: space-between;
}

.section-home-movies .thumbs .item-wrapper *[class*="item"] {
  width: 138px;
  height: 77px;
  box-sizing: border-box;
}

.section-home-movies .thumbs .item-wrapper .item:hover,
.section-home-movies .thumbs .item-wrapper .item.active {
  border: 3px #1e50a2 solid;
}

.section-home-movies .thumbs .item-wrapper .item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: pointer;
}

.section-home-movies .navigation {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  position: relative;
  margin-top: 15px;
}

.section-home-movies .navigation .slide-button {
  outline: none;
}

.section-home-movies .navigation .slide-button i {
  display: inline-block;
  text-decoration: none;
  font-size: 18px;
  color: #1e50a2;
  cursor: pointer;
}

.section-home-movies .navigation .slide-button.swiper-button-disabled i {
  color: #8e9fc7;
  pointer-events: none;
}

.section-home-movies .navigation .slide-button.slide-button-prev i {
  transform: scale(-1, 1);
}

.section-home-movies .navigation .slide-button.slide-button-next {
  margin-left: 10px;
}
