@charset "UTF-8";
body {
  margin: 0;
  overflow-y: scroll;
  width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

/** foundation
===================================*/
/*
 * config
 */
@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium");
}
@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}
/** layout
===================================*/
/**
 * footer
 */
@media print, screen and (max-width: 575px) {
  .footer .inner .boxFooterMuseum .boxFooterMuseumAddress {
    padding-top: 15px;
    text-align: center;
  }
}
@media print, screen and (min-width: 576px) and (max-width: 767px) {
  .footer .inner .boxFooterMuseum {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px 15px;
  }
}
@media print, screen and (max-width: 767px) {
  .footer .inner {
    width: auto;
  }
  .footer .inner .boxFooterMuseum {
    width: auto;
    float: none;
    padding: 15px;
  }
  .footer .inner .boxFooterMuseum img {
    width: 100%;
    height: auto;
  }
  .footer .inner .boxFooterMuseum .boxFooterMuseumAddress {
    width: auto;
    float: none;
  }
  .footer .inner .boxFooterLink {
    width: auto;
    float: none;
    padding: 15px;
  }
  .footer .inner .boxFooterLink .boxFooterLinkList {
    margin: 0;
    padding: 0;
    list-style: none;
    list-style-type: none;
  }
  .footer .inner .boxFooterLink .boxFooterLinkList li:first-child a {
    border-top: 1px solid #fff;
  }
  .footer .inner .boxFooterLink .boxFooterLinkList li a {
    display: block;
    text-decoration: none;
    border-bottom: 1px solid #fff;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .footer .inner .boxFooterLink .boxFooterLinkList li a.link02 {
    background-position: left center;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 991px) {
  .footer .inner {
    padding: 15px;
    width: auto;
  }
  .footer .inner .boxFooterMuseum {
    width: 100%;
    max-width: 460px;
  }
  .footer .inner .boxFooterMuseum .boxFooterMuseumAddress {
    width: 100%;
    max-width: 240px;
  }
  .footer .inner .boxFooterLink {
    width: 240px;
  }
}
.footer .copy {
  clear: both;
  text-align: center;
  padding-top: 30px;
}

/**
 * header
 */
@media print, screen and (max-width: 991px) {
  .header .inner {
    width: auto;
  }
  .header .inner .gnavMenu {
    display: none;
  }
}

@media print, screen and (max-width: 991px) {
  .main {
    word-break: break-all;
    margin-bottom: 50px;
  }
}

@media print, screen and (max-width: 991px) {
  .wrapper {
    padding-bottom: 30px;
  }
  .wrapper .inner {
    width: auto;
  }
  .wrapper .inner .main {
    width: auto;
    float: none;
    padding: 15px;
  }
  .wrapper .inner .lnav {
    width: auto;
    float: none;
    padding: 15px;
  }
}

/** object
===================================*/
@media print, screen and (max-width: 575px) {
  .breadcrumb {
    border-bottom: 1px solid #e8e8e8;
  }
  .breadcrumb .inner {
    display: none;
  }
}
@media print, screen and (min-width: 576px) and (max-width: 991px) {
  .breadcrumb {
    padding-left: 15px;
    padding-right: 15px;
  }
}

/** drawer
===================================*/
.p-drawer-trigger {
  box-sizing: border-box;
  font-display: swap;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  letter-spacing: 0;
  line-height: 1.8;
  position: fixed;
  right: 9px;
  z-index: 1900;
  transition: all 0.5s;
}
@media print, screen and (min-width: 992px) {
  .p-drawer-trigger {
    display: none;
  }
}
@media print, screen and (max-width: 575px) {
  .p-drawer-trigger {
    top: 5px;
  }
}
@media print, screen and (min-width: 576px) and (max-width: 991px) {
  .p-drawer-trigger {
    top: 21px;
  }
}
.p-drawer-trigger .bars {
  position: relative;
  background: transparent;
  border-radius: 0px;
  border: 1px solid transparent;
  width: 40px;
  height: 38px;
  cursor: pointer;
  overflow: hidden;
  opacity: 1;
  transition: all 0.5s;
}
.p-drawer-trigger .bars .bar {
  position: absolute;
  display: block;
  left: 6px;
  width: 26px;
  height: 2px;
  border-radius: 0px;
  background: #000;
  transition: all 0.5s;
  z-index: 10;
}
.p-drawer-trigger .bars .bar:nth-of-type(1) {
  top: 8px;
  width: 26px;
}
.p-drawer-trigger .bars .bar:nth-of-type(2) {
  top: 17px;
  width: 26px;
}
.p-drawer-trigger .bars .bar:nth-of-type(3) {
  top: 26px;
  width: 26px;
}
.p-drawer-trigger .bars .menu {
  transition: all 0.5s;
  position: absolute;
  width: 100%;
  left: 0px;
  top: 33px;
  color: #333;
  text-align: center;
  font-size: 1rem;
  line-height: 1;
  letter-spacing: 0;
  z-index: 5;
  display: none;
}
.p-drawer-trigger .bars:hover .bar {
  width: 26px;
}

.p-drawer-overlay {
  box-sizing: border-box;
  transition: all 0.5s;
}

.p-drawer-content {
  box-sizing: border-box;
  font-display: swap;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  letter-spacing: 0;
  line-height: 1.8;
  transition: all 0.5s;
  position: fixed;
  top: 0;
  max-width: 100%;
  height: 100%;
  z-index: 1800;
  overflow-y: auto;
  padding: 60px 20px 20px 20px;
  background: #1D8772;
}
@media print, screen and (max-width: 575px) {
  .p-drawer-content {
    width: 100%;
    right: -100%;
  }
}
@media print, screen and (min-width: 576px) and (max-width: 767px) {
  .p-drawer-content {
    width: 66%;
    right: -66%;
  }
}
@media print, screen and (min-width: 768px) {
  .p-drawer-content {
    width: 33%;
    right: -33%;
  }
}
.p-drawer-content__navi {
  margin: 0;
  padding: 0;
  list-style: none;
  list-style-type: none;
  margin-bottom: 15px;
}
.p-drawer-content__navi__item {
  margin-bottom: 0px;
}
.p-drawer-content__navi__item a {
  display: block;
  padding: 10px 0;
  border-bottom: 1px solid #fff;
  font-size: 16px;
  color: #fff;
  text-decoration: none;
}
.p-drawer-content__sub-navi {
  margin: 0;
  padding: 0;
  list-style: none;
  list-style-type: none;
}
.p-drawer-content__sub-navi__item {
  margin-bottom: 0px;
}
.p-drawer-content__sub-navi__item a {
  position: relative;
  display: block;
  padding: 5px 0;
  font-size: 14px;
  color: #fff;
  text-decoration: none;
  padding-left: 14px;
}
.p-drawer-content__sub-navi__item a:before {
  position: absolute;
  display: block;
  content: "";
  width: 0px;
  height: 0px;
  top: 50%;
  left: 0;
  border-top: 3px solid transparent;
  border-left: 5px solid #fff;
  border-bottom: 3px solid transparent;
  transform: translate3d(0, -50%, 0);
}

.js-drawer--is-opened .p-drawer-trigger .bars {
  border: 1px solid transparent;
}
.js-drawer--is-opened .p-drawer-trigger .bars .bar {
  background: #fff;
  width: 26px;
}
.js-drawer--is-opened .p-drawer-trigger .bars .bar:nth-of-type(1) {
  transform: rotate(45deg);
  top: 17px;
}
.js-drawer--is-opened .p-drawer-trigger .bars .bar:nth-of-type(2) {
  left: 260px;
  opacity: 0;
}
.js-drawer--is-opened .p-drawer-trigger .bars .bar:nth-of-type(3) {
  transform: rotate(-45deg);
  top: 17px;
}
.js-drawer--is-opened .p-drawer-trigger .menu {
  color: #333;
}
.js-drawer--is-opened .p-drawer-overlay {
  cursor: pointer;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  z-index: 1700;
}
.js-drawer--is-opened .p-drawer-content {
  right: 0;
}
@media print, screen and (max-width: 575px) {
  .js-drawer--is-opened .p-drawer-content {
    width: 100%;
  }
}
@media print, screen and (min-width: 576px) and (max-width: 767px) {
  .js-drawer--is-opened .p-drawer-content {
    width: 66%;
  }
}
@media print, screen and (min-width: 768px) {
  .js-drawer--is-opened .p-drawer-content {
    width: 33%;
  }
}

@media print, screen and (max-width: 575px) {
  .gnavLogo {
    width: 180px;
    padding-top: 8px;
    padding-bottom: 12px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .gnavLogo a {
    display: block;
  }
  .gnavLogo img {
    width: 100%;
    height: auto;
  }
}
@media print, screen and (min-width: 576px) and (max-width: 991px) {
  .gnavLogo {
    float: none;
    padding-bottom: 20px;
    padding-left: 15px;
    padding-right: 15px;
  }
}

@media print, screen and (max-width: 575px) {
  .title01 {
    margin-top: 30px;
    margin-bottom: 15px;
    font-size: 171%;
  }

  .title02 {
    font-size: 129%;
  }
}
@media print, screen and (min-width: 576px) and (max-width: 767px) {
  .title01 {
    margin-top: 45px;
    margin-bottom: 20px;
    font-size: 179%;
  }

  .title02 {
    font-size: 129%;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 991px) {
  .title01 {
    margin-top: 45px;
    margin-bottom: 25px;
    font-size: 214%;
  }

  .title02 {
    font-size: 129%;
  }
}
@media print, screen and (max-width: 575px) {
  .titleHome01 {
    font-size: 171%;
  }

  .titleHome02 {
    font-size: 143%;
  }

  .titleHome03 {
    font-size: 129%;
  }

  .titleHome04 {
    font-size: 114%;
  }

  .titleHome05 {
    font-size: 100%;
  }
}
@media print, screen and (max-width: 767px) {
  .titleHome01 {
    font-size: 179%;
  }

  .titleHome02 {
    font-size: 171%;
  }

  .titleHome03 {
    font-size: 143%;
  }

  .titleHome04 {
    font-size: 129%;
  }

  .titleHome05 {
    font-size: 100%;
  }
}
@media print, screen and (min-width: 768px) and (max-width: 991px) {
  .titleHome01 {
    font-size: 214%;
  }

  .titleHome02 {
    font-size: 179%;
  }

  .titleHome03 {
    font-size: 171%;
  }

  .titleHome04 {
    font-size: 143%;
  }

  .titleHome05 {
    font-size: 100%;
  }
}
@media print, screen and (max-width: 991px) {
  .headMenu {
    display: none;
  }
}

@media print, screen and (max-width: 575px) {
  .boxHomeMovieListWrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 30px 0px;
  }
}

@media print, screen and (max-width: 575px) {
  .boxMovieListWrap {
    grid-template-columns: repeat(1, 1fr);
    gap: 30px 0px;
  }
}

@media print, screen and (max-width: 575px) {
  .boxNewsListText .boxNewsListImg {
    float: none;
    text-align: center;
    width: auto;
    margin-left: 0;
  }
  .boxNewsListText .boxNewsListImg img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
}

/** page
===================================*/
/* CSS Document */
.wrapperHome .boxHomeCopy {
  box-sizing: border-box;
}
.wrapperHome .boxHomeCopy .boxHomeCopyMain {
  min-height: 410px;
}
.wrapperHome .boxHomeCopy .boxHomeCopyMain .boxHomeCopyMainCopy {
  padding: 15px;
  max-width: 960px;
  padding-top: 20px;
  margin-left: auto;
  margin-right: auto;
}
.wrapperHome .boxHomeCopy .boxHomeCopyMain .boxHomeCopyMainCopy img {
  width: 420px;
  height: auto;
}
@media print, screen and (max-width: 767px) {
  .wrapperHome .boxHomeCopy .boxHomeCopyMain {
    position: relative;
    overflow: hidden;
  }
  .wrapperHome .boxHomeCopy .boxHomeCopyMain .boxHomeCopyMainCopy {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 90%;
    transform: translate3d(-50%, -50%, 0);
    z-index: 20;
  }
  .wrapperHome .boxHomeCopy .boxHomeCopyMain .boxHomeCopyMainCopy img {
    width: 100%;
    height: auto;
  }
  .wrapperHome .boxHomeCopy .boxHomeCopyMain::after {
    position: absolute;
    left: 0;
    top: 0;
    height: 100vh;
    width: 100vw;
    background: rgba(0, 0, 0, 0.4);
    content: "";
    display: block;
    z-index: 10;
  }
}
@media print, screen and (max-width: 575px) {
  .wrapperHome .boxHomeCopy .boxHomeCopyAbout {
    padding-left: 15px;
    padding-right: 15px;
  }
  .wrapperHome .boxHomeCopy .boxHomeCopyAbout p {
    width: auto;
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
    font-size: 15px;
  }
}
@media print, screen and (max-width: 575px) {
  .wrapperHome .boxHomeVr {
    padding-left: 15px;
    padding-right: 15px;
  }
  .wrapperHome .boxHomeVr p {
    width: auto;
    max-width: 640px;
    margin-left: auto;
    margin-right: auto;
    font-size: 15px;
  }
}
@media print, screen and (max-width: 991px) {
  .wrapperHome .boxHomeNews {
    margin-bottom: 30px;
    padding-top: 0;
    padding-bottom: 0;
    padding: 15px;
  }
  .wrapperHome .boxHomeNews .boxHomeNewsMore {
    float: none;
    width: auto;
    height: auto;
    margin-bottom: 15px;
    padding: 0 0 15px 0;
    border-bottom: 1px solid #fff;
    text-align: left;
    border-right: none;
    position: relative;
  }
  .wrapperHome .boxHomeNews .boxHomeNewsMore .link02 {
    position: absolute;
    right: 0;
    top: 0;
    background-position: left center;
  }
  .wrapperHome .boxHomeNews .boxHomeNewsList {
    float: none;
    padding: 0;
    width: auto;
  }
  .wrapperHome .boxHomeNews .boxHomeNewsList li:not(:last-child) {
    margin-bottom: 5px;
  }
  .wrapperHome .boxHomeNews .boxHomeNewsList li .date {
    font-size: 100%;
  }
  .wrapperHome .boxHomeNews .boxHomeNewsList li .entryTitle {
    width: auto;
    font-size: 100%;
    padding-top: 5px;
    padding-bottom: 5px;
    display: block;
  }
}
@media print, screen and (max-width: 575px) {
  .wrapperHome .boxHomeMovieNavi ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px 10px;
  }
}
@media print, screen and (max-width: 575px) {
  .wrapperHome .boxHomeBanner .boxHomeBannerList ul {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px 10px;
  }
}
@media print, screen and (max-width: 575px) {
  .wrapperHome .boxHomeGuide .boxHomeGuideInner .wrapper {
    grid-template-columns: repeat(1, 1fr);
    gap: 10px 10px;
  }
}
@media print, screen and (max-width: 575px) {
  .wrapperHome .boxHomeContact .inner .boxHomeContactTime dl {
    margin-bottom: 15px;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTime dl dt {
    font-weight: bold;
    display: block;
    width: 100%;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTime dl dt .free {
    font-size: 100%;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTime dl dd {
    display: block;
    width: 100%;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTel {
    float: none;
    width: auto;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTel .clearfix {
    text-align: center;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTel .clearfix .info {
    width: 107px;
    float: none;
    margin-top: 10px;
    margin-left: auto;
    margin-right: auto;
    display: block;
  }
}
@media print, screen and (max-width: 991px) {
  .wrapperHome .boxHomeContact .inner {
    width: auto;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTime {
    float: none;
    width: auto;
    padding-right: 0px;
    border-right: none;
    margin-bottom: 30px;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTel {
    max-width: 460px;
    margin-left: auto;
    margin-right: auto;
    float: none;
    width: auto;
  }
  .wrapperHome .boxHomeContact .inner .boxHomeContactTel .clearfix img {
    width: 100%;
    max-width: 337px;
    height: auto;
  }
}
@media print, screen and (max-width: 991px) {
  .wrapperHome div .inner {
    width: auto;
  }
  .wrapperHome div .inner img {
    width: auto;
    max-width: 100%;
    height: auto;
  }
}