@charset "UTF-8";
/* ヘッダー、フッター
 ***********************************************/
html {
  overflow-y: scroll;
  position: relative;
  font-size: 10px;
  margin: 0;
  padding: 0;
}

body {
  min-width: 992px;
  font-size: 1.4rem;
  margin: 0;
  padding: 0;
}

footer {
  margin-top: initial;
  padding: 0;
  width: initial;
  text-align: initial;
  font-size: inherit;
  line-height: inherit;
  font-family: 'じゅん 501', 'Jun 501', sans-serif;
}

@media screen and (max-width: 767px) {
  body {
    min-width: 320px;
    position: relative;
    overflow: hidden;
  }
}

#headerArea,
#footerArea {
  font-family: 'じゅん 501', 'Jun 501', sans-serif;
  color: #f68ca2;
  font-size: 1.4rem;
  line-height: 1.75;
  text-align: left;
}

#headerArea h1,
#footerArea h1 {
  line-height: 1.4;
  margin: 0;
}

#headerArea div,
#footerArea div {
  box-sizing: border-box;
}

#headerArea a,
#footerArea a {
  color: #f68ca2;
  text-decoration: none;
  display: block;
}

#headerArea a img,
#footerArea a img {
  border: none;
}

@media screen and (min-width: 768px) {
  #headerArea a:hover img,
  #footerArea a:hover img {
    opacity: 0.7;
  }
}

#headerArea p,
#footerArea p {
  word-wrap: break-word;
  margin: 0;
}

#headerArea ul,
#headerArea ol,
#headerArea li,
#footerArea ul, #footerArea ol, #footerArea li {
  margin: 0;
  padding: 0;
}

#headerArea ul,
#footerArea ul {
  list-style: none;
}

#headerArea dl,
#headerArea dt,
#headerArea dd,
#footerArea dl, #footerArea dt, #footerArea dd {
  margin: 0;
}

#headerArea img,
#footerArea img {
  vertical-align: top;
}

@media screen and (max-width: 767px) {
  #headerArea img,
  #footerArea img {
    width: 100%;
  }
}

#headerArea sup,
#footerArea sup {
  line-height: 1.0;
  vertical-align: top;
}

#headerArea sub,
#footerArea sub {
  line-height: 1.0;
  vertical-align: bottom;
}

#headerArea em,
#footerArea em {
  font-style: normal;
}

#headerArea input,
#footerArea input {
  font-size: 1.4rem;
  padding: 0;
  display: block;
  border-radius: 7px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  box-sizing: border-box;
}

#headerArea input::-webkit-input-placeholder,
#footerArea input::-webkit-input-placeholder {
  font-family: 'ＭＳ Ｐゴシック', 'Lucida Sans Unicode', sans-serif;
  color: #f68ca2;
}

#headerArea input::-moz-placeholder,
#footerArea input::-moz-placeholder {
  font-family: 'ＭＳ Ｐゴシック', 'Lucida Sans Unicode', sans-serif;
  color: #f68ca2;
}

#headerArea input:-ms-input-placeholder,
#footerArea input:-ms-input-placeholder {
  font-family: 'ＭＳ Ｐゴシック', 'Lucida Sans Unicode', sans-serif;
  color: #f68ca2;
}

#headerArea input::-ms-clear,
#footerArea input::-ms-clear {
  visibility: hidden;
}

#headerArea input[type="text"],
#headerArea input[type="password"],
#footerArea input[type="text"],
#footerArea input[type="password"] {
  font-family: 'ＭＳ Ｐゴシック', 'Lucida Sans Unicode', sans-serif;
}

#headerArea input[type="text"]:focus,
#headerArea input[type="password"]:focus,
#footerArea input[type="text"]:focus,
#footerArea input[type="password"]:focus {
  background: #fff !important;
}

#headerArea input,
#footerArea input {
  font-family: inherit;
}

#headerArea input,
#headerArea select,
#footerArea input,
#footerArea select {
  box-sizing: border-box;
}

#headerArea input:focus,
#headerArea select:focus,
#footerArea input:focus,
#footerArea select:focus {
  outline: none;
}

#headerArea button,
#footerArea button {
  box-sizing: border-box;
  border: none;
}

#headerArea .clearfix:before,
#headerArea .clearfix:after,
#footerArea .clearfix:before,
#footerArea .clearfix:after {
  content: "";
  display: table;
}

#headerArea .clearfix:after,
#footerArea .clearfix:after {
  clear: both;
}

@media screen and (max-width: 767px) {
  #footerArea .goBackTop {
    margin-bottom: 9%;
  }
}

/* headerArea */
#headerArea {
  position: relative;
}

@media screen and (min-width: 768px) {
  #headerArea .logo {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  #headerArea {
    z-index: 5200;
  }
  #headerArea .logo {
    position: relative;
    top: 0;
    left: 0;
    box-sizing: border-box;
    padding: 5.4% 0 5.4% 0;
    text-align: center;
  }
  #headerArea .logo img {
    width: 90%;
  }
}

#headerArea .pointBtn,
#headerArea .subBtn {
  background: #fff;
  text-align: center;
  border-radius: 7px;
  box-sizing: border-box;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  #headerArea .pointBtn,
  #headerArea .subBtn {
    padding: 14px 10px 8px 10px;
    min-height: 41px;
  }
}

@media screen and (max-width: 767px) {
  #headerArea .pointBtn,
  #headerArea .subBtn {
    padding: 5%;
  }
}

@media screen and (min-width: 768px) {
  #headerArea .subBtn:hover {
    background: #dcedfa;
  }
  #headerArea .pointBtn:hover {
    background: #fcdde3;
  }
}

#headerArea .overlay {
  background-color: #fff;
  display: none;
  height: 100%;
  left: 0;
  opacity: 0.9;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 5500;
}

#headerArea.siteTop h1.logo {
  display: block;
}

#headerArea.siteTop .operation .ticket {
  display: none;
}

#headerArea .operation {
  z-index: 5200;
  margin: 0 auto;
  width: 100%;
  position: absolute;
}

@media screen and (min-width: 768px) {
  #headerArea .operation {
    min-height: 80px;
    width: 960px;
    padding-top: 10px;
    left: 50%;
    margin-left: -480px;
    background-position: 50% 100%;
  }
  #headerArea .operation div {
    width: 100%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  #headerArea .operation {
    background: none;
    padding: 0 3.8% 0 0;
    height: 57px;
    top: 100%;
  }
}

#headerArea .operation img {
  width: 100%;
}

#headerArea .operation .homeLink {
  position: absolute;
  background-image: url(/common_v2/img/bg_header.png);
  background-repeat: no-repeat;
  display: none;
  float: left;
}

@media screen and (min-width: 768px) {
  #headerArea .operation .homeLink {
    background-image: url(/common_v2/img/bg_header.png);
    display: block;
    width: 322px;
    height: 87px;
    margin-top: -10px;
    padding-left: 260px;
    padding-right: 718px;
    left: 50%;
    margin-left: -740px;
    background-position: 50% 100%;
  }
  #headerArea .operation .homeLink a {
    position: relative;
    top: 20px;
    left: 0;
    height: 38px;
  }
  #headerArea .operation .homeLink a img {
    height: 38px;
  }
}

@media screen and (max-width: 767px) {
  #headerArea .operation .homeLink {
    display: none;
    background-image: url(/common_v2/img/bg_header_sp.png);
    background-size: contain;
    padding-top: 4.4%;
    padding-left: 3.8%;
    padding-right: 45.6%;
    padding-bottom: 4.4%;
    width: 50%;
  }
}

#headerArea .operation .toggle {
  cursor: pointer;
  position: relative;
  width: 57px;
  height: 57px;
  display: block;
  border-radius: 57px;
  float: right;
  background: url('/common_v2/img/btn_menu.png') #f68ca2 no-repeat;
  background-size: 57px;
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

#headerArea .operation .ticket {
  position: relative;
  float: right;
  padding: 0 2%;
}

#headerArea .operation .ticket a {
  margin-top: 20%;
  height: 34.2px;
  background: #fff;
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
  display: block;
  border-radius: 7px;
}

#headerArea .operation .ticket img {
  width: auto;
  height: 100%;
}

#headerArea .operation.close .toggle::after {
  top: 18.81px;
  left: 17.1px;
  width: 23px;
  height: 3px;
  display: block;
  border-radius: 7px;
  box-shadow: 0 8px #fff, 0 16px #fff;
}

#headerArea .operation.linkage {
  position: fixed;
  top: 0;
}

#headerArea .operation.linkage.open {
  position: relative;
}

#headerArea .operation.linkage .logo {
  display: none;
}

@media screen and (max-width: 767px) {
  #headerArea .operation.linkage {
    height: 0;
    padding: 0 3.8% 15.2% 0;
  }
  #headerArea .operation.linkage.close .homeLink {
    display: block;
  }
}

#headerArea .operation.open {
  background: none;
  display: none;
}

@media screen and (max-width: 767px) {
  #headerArea .operation.open {
    margin-left: auto;
    margin-right: auto;
    width: 92%;
    padding: 0;
  }
}

#headerArea .operation.open .toggle::before,
#headerArea .operation.open .toggle::after {
  top: 27.36px;
  left: 14.25px;
  width: 30px;
  height: 4px;
  display: block;
  border-radius: 7px;
}

#headerArea .operation.open .toggle::before {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

#headerArea .operation.open .toggle::after {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

#headerArea .operation.open .ticket {
  display: none;
}

#globalMenu {
  z-index: 5800;
}

#globalMenu:before,
#globalMenu:after {
  content: "";
  display: table;
}

#globalMenu:after {
  clear: both;
}

#globalMenu .toggle {
  cursor: pointer;
  position: absolute;
  float: right;
  width: 57px;
  height: 57px;
  display: block;
  border-radius: 57px;
  background: #f68ca2;
  box-shadow: 2px 2px 2px 0px rgba(0, 0, 0, 0.1);
}

#globalMenu .toggle::before,
#globalMenu .toggle::after {
  display: block;
  position: absolute;
  content: "";
  background: #fff;
}

@media screen and (max-width: 767px) {
  #globalMenu.open {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

#globalMenu.open .toggle::before,
#globalMenu.open .toggle::after {
  top: 27px;
  left: 14px;
  width: 30px;
  height: 4px;
  display: block;
  border-radius: 7px;
}

#globalMenu.open .toggle::before {
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

#globalMenu.open .toggle::after {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (min-width: 768px) {
  #globalMenu {
    position: fixed;
    top: 0;
    left: 50%;
    margin-left: -496px;
  }
  #globalMenu .toggle {
    top: 10px;
    right: 16px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu {
    position: fixed;
    top: 0;
  }
  #globalMenu .toggle {
    right: 4%;
  }
}

#globalMenu img {
  width: 100%;
}

#globalMenu.open {
  display: block;
}

#globalMenu.close {
  display: none;
}

@media screen and (max-width: 767px) {
  #globalMenu.close {
    padding-bottom: 10%;
  }
}

#globalMenu.linkage {
  position: fixed;
}

#globalMenu.linkage .menuContent {
  padding-top: 8rem;
}

#globalMenu.linkage .linkLogo {
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  #globalMenu.linkage .linkLogo img {
    width: 38%;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu.linkage .linkLogo {
    text-align: center;
  }
  #globalMenu.linkage .linkLogo img {
    width: 92%;
  }
}

@media screen and (min-width: 768px) {
  #globalMenu .menuContent {
    margin: 0 auto;
    width: 992px;
    position: relative;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .menuContent {
    padding-top: 20%;
    width: 92%;
    margin: 0 auto;
  }
}

#globalMenu .language {
  color: #fff;
  font-size: 1.2rem;
}

@media screen and (min-width: 768px) {
  #globalMenu .language dt,
  #globalMenu .language dd {
    float: left;
  }
}

#globalMenu .language li {
  float: left;
  padding-left: 10px;
}

#globalMenu .language li a {
  display: inline-block;
}

#globalMenu .language li:first-child {
  padding-left: 0;
}

#globalMenu .language li:first-child::before {
  content: "";
  padding-right: 0;
}

#globalMenu .language li::before {
  content: "/";
  padding-right: 10px;
}

@media screen and (min-width: 768px) {
  #globalMenu .language {
    position: absolute;
    top: -65px;
    right: -400px;
    width: 400px;
    background: #fff;
    color: #f68ca2;
    display: block;
    border-radius: 7px;
    padding: 10px 20px;
  }
  #globalMenu .language a {
    color: #f68ca2;
  }
  #globalMenu .language a:hover {
    text-decoration: underline;
  }
  #globalMenu .language dt {
    margin-right: 20px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .language li a {
    color: #fff;
  }
}

@media screen and (min-width: 768px) {
  #globalMenu .linkLogo {
    display: block;
    margin: 20px auto 20px 16px;
  }
  #globalMenu .linkLogo a {
    box-sizing: border-box;
    width: 290px;
    height: 46px;
  }
  #globalMenu .linkLogo a img {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .linkLogo {
    margin: 5.4% 0 5.4% 0;
    text-align: center;
  }
  #globalMenu .linkLogo a img {
    width: 90%;
  }
}

#globalMenu .menuBlock {
  background: #f68ca2;
  display: block;
  border-radius: 7px;
  position: relative;
}

#globalMenu .menuBlock::before {
  content: "";
  position: absolute;
  background-image: url(/common_v2/img/img_gnav.png);
  background-size: 100%;
  background-repeat: no-repeat;
}

#globalMenu .menuBlock .access {
  color: #b296ca;
}

#globalMenu .menuBlock .access a {
  color: #b296ca;
}

#globalMenu .menuBlock .access a:hover {
  color: #cdbbdc;
}

#globalMenu .menuBlock .attraction {
  color: #f58ca2;
}

#globalMenu .menuBlock .attraction a {
  color: #f58ca2;
}

#globalMenu .menuBlock .attraction a:hover {
  color: #f9c6d0;
}

#globalMenu .menuBlock .character {
  color: #97cfb8;
}

#globalMenu .menuBlock .character a {
  color: #97cfb8;
}

#globalMenu .menuBlock .character a:hover {
  color: #cbe6db;
}

#globalMenu .menuBlock .decoration a {
  color: #ee9434;
}

#globalMenu .menuBlock .decoration a:hover {
  color: #ffcd7b;
}

#globalMenu .menuBlock .enjoy {
  color: #b18aca;
}

#globalMenu .menuBlock .enjoy a {
  color: #b18aca;
}

#globalMenu .menuBlock .enjoy a:hover {
  color: #c9adda;
}

#globalMenu .menuBlock .facility {
  color: #f58ca2;
}

#globalMenu .menuBlock .facility a {
  color: #f58ca2;
}

#globalMenu .menuBlock .facility a:hover {
  color: #f9c0cb;
}

#globalMenu .menuBlock .floorguide {
  color: #8ac4ee;
}

#globalMenu .menuBlock .floorguide a {
  color: #8ac4ee;
}

#globalMenu .menuBlock .floorguide a:hover {
  color: #b9dbf5;
}

#globalMenu .menuBlock .food {
  color: #c6aa8b;
}

#globalMenu .menuBlock .food a {
  color: #c6aa8b;
}

#globalMenu .menuBlock .food a:hover {
  color: #d7c4ae;
}

#globalMenu .menuBlock .goods {
  color: #9dca74;
}

#globalMenu .menuBlock .goods a {
  color: #9dca74;
}

#globalMenu .menuBlock .goods a:hover {
  color: #bbda9e;
}

#globalMenu .menuBlock .information {
  color: #8ac4ee;
}

#globalMenu .menuBlock .information a {
  color: #8ac4ee;
}

#globalMenu .menuBlock .information a:hover {
  color: #add6f3;
}

#globalMenu .menuBlock .liveshow {
  color: #ffb742;
}

#globalMenu .menuBlock .liveshow a {
  color: #ffb742;
}

#globalMenu .menuBlock .liveshow a:hover {
  color: #ffcd7b;
}

#globalMenu .menuBlock .qa {
  color: #aaaaaa;
}

#globalMenu .menuBlock .qa a {
  color: #aaaaaa;
}

#globalMenu .menuBlock .qa a:hover {
  color: #c4c4c4;
}

@media screen and (min-width: 768px) {
  #globalMenu .menuBlock {
    width: 474px;
    margin-left: 16px;
    padding: 13px;
    position: absolute;
  }
  #globalMenu .menuBlock::before {
    top: -35px;
    left: 275px;
    width: 135px;
    height: 81px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .menuBlock {
    padding: 6%;
  }
  #globalMenu .menuBlock::before {
    top: -60px;
    left: 35px;
    width: 120px;
    height: 72px;
  }
}

#globalMenu .menuBlock form.searchForm {
  position: relative;
  width: 204px;
  height: 36px;
}

@media screen and (max-width: 767px) {
  #globalMenu .menuBlock form.searchForm {
    width: 100%;
    height: 3.8rem;
  }
}

#globalMenu .menuBlock form.searchForm input.keywords {
  width: 100%;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  height: 36px;
  background: #fff;
  color: #f68ca2;
  padding-left: 10px;
}

#globalMenu .menuBlock form.searchForm .searchBtn {
  position: absolute;
  top: 8px;
  right: 10px;
  padding: 0;
  background: #fff;
}

#globalMenu .menuBlock form.searchForm .searchBtn img {
  width: 22px;
  height: 22px;
}

#globalMenu .menuBlock .menuList ul {
  margin-top: -4px;
  margin-left: -4px;
}

#globalMenu .menuBlock .menuList li {
  float: left;
  margin-top: 4px;
  margin-left: 4px;
  line-height: 1.25;
}

#globalMenu .menuBlock .menuList li a {
  box-sizing: border-box;
  overflow: hidden;
  background: #fff;
  text-align: center;
  display: block;
  border-radius: 7px;
}

#globalMenu .menuBlock .menuList li a span {
  display: block;
  margin: 0 -15%;
}

@media screen and (min-width: 768px) {
  #globalMenu .menuBlock .menuList {
    margin-top: 10px;
  }
  #globalMenu .menuBlock .menuList .mainMenu {
    width: 312px;
    float: left;
  }
  #globalMenu .menuBlock .menuList .mainMenu a {
    width: 100px;
    height: 107px;
    padding: 6px 12px;
  }
  #globalMenu .menuBlock .menuList .subMenu {
    width: 140px;
    float: right;
  }
  #globalMenu .menuBlock .menuList .subMenu a {
    width: 66px;
    height: 70px;
    padding: 5px 6px;
    font-size: 1rem;
  }
  #globalMenu .menuBlock .menuList .subMenu .decoration {
    width: 60px;
    height: 64px;
    padding: 1px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .menuBlock .menuList ul {
    margin-top: 0;
    margin-left: -1.8%;
  }
  #globalMenu .menuBlock .menuList li {
    margin-top: 1.8%;
    margin-left: 1.8%;
    width: 31.4%;
  }
  #globalMenu .menuBlock .menuList li a {
    width: 100%;
    padding: 10% 14%;
    height: 0;
    padding-bottom: 95%;
    font-size: 1.2rem;
  }
}

#globalMenu .bannerBlock {
  display: block;
  border-radius: 7px;
  overflow: hidden;
}

@media screen and (min-width: 768px) {
  #globalMenu .bannerBlock {
    width: 231px;
    position: relative;
    left: 502px;
    margin-top: 12px;
  }

  #globalMenu .bannerBlock:nth-child(2) {
    margin-top: 0;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .bannerBlock {
    margin-top: 5%;
  }
}

#globalMenu .hoursBlock {
  background: #8ac4ee;
  color: #fff;
  display: block;
  border-radius: 7px;
}

@media screen and (min-width: 768px) {
  #globalMenu .hoursBlock {
    width: 231px;
    padding: 13px;
    position: relative;
    left: 502px;
    margin-top: 12px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .hoursBlock {
    margin-top: 5%;
    padding: 6%;
  }
}

#globalMenu .hoursBlock .today {
  text-align: center;
  line-height: 1;
}

@media screen and (min-width: 768px) {
  #globalMenu .hoursBlock .today {
    font-size: 1.6rem;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .hoursBlock .today {
    font-size: 2.2rem;
  }
}

#globalMenu .hoursBlock .hours {
  text-align: center;
  line-height: 1;
  margin-top: 10px;
}

@media screen and (min-width: 768px) {
  #globalMenu .hoursBlock .hours {
    font-size: 3.0rem;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .hoursBlock .hours {
    font-size: 3.7rem;
  }
}

#globalMenu .hoursBlock .linkList {
  margin-top: 15px;
}

#globalMenu .hoursBlock .linkList li {
  float: left;
  margin-top: 3px;
  margin-left: 3px;
  width: 66px;
  line-height: 1.25;
}

#globalMenu .hoursBlock .linkList li a {
  display: block;
  color: #fff;
  text-align: center;
  font-size: 0.9rem;
}

#globalMenu .hoursBlock .linkList li a span {
  padding: 10% 14%;
  margin-bottom: 0.5rem;
  box-sizing: border-box;
  overflow: hidden;
  background: #fff;
  display: block;
  border-radius: 7px;
}

#globalMenu .hoursBlock .linkList li a:hover {
  text-decoration: underline;
}

#globalMenu .hoursBlock .linkList li.latency a,
#globalMenu .hoursBlock .linkList li.stoplist a,
#globalMenu .hoursBlock .linkList li.reservationList a {
  color: #8ac4ee;
}

#globalMenu .hoursBlock .linkList li.latency a:hover,
#globalMenu .hoursBlock .linkList li.stoplist a:hover,
#globalMenu .hoursBlock .linkList li.reservationList a:hover {
  text-decoration: none;
}

@media screen and (min-width: 768px) {
  #globalMenu .hoursBlock .linkList li {
    letter-spacing: -1px;
  }
  #globalMenu .hoursBlock .linkList li.latency {
    padding-top: 15px;
    letter-spacing: 0px;
  }
  #globalMenu .hoursBlock .linkList li.stoplist,
  #globalMenu .hoursBlock .linkList li.reservationList {
    letter-spacing: 0px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .hoursBlock .linkList ul {
    margin-top: 0;
    margin-left: -1.8%;
  }
  #globalMenu .hoursBlock .linkList li {
    margin-top: 1.8%;
    margin-left: 1.8%;
    width: 32%;
  }
  #globalMenu .hoursBlock .linkList li.latency {
    padding-top: 5%;
  }
  #globalMenu .hoursBlock .linkList li a {
    font-size: 1rem;
  }
  #globalMenu .hoursBlock .linkList li span {
    width: 100%;
  }
}

#globalMenu .hoursBlock .linkList li:first-child {
  margin-left: 0;
}

#globalMenu .hoursBlock .linkList li.latency,
#globalMenu .hoursBlock .linkList li.stoplist,
#globalMenu .hoursBlock .linkList li.reservationList {
  clear: both;
  float: none;
  width: 100%;
  margin-left: 0;
}

#globalMenu .hoursBlock .linkList li.latency a,
#globalMenu .hoursBlock .linkList li.stoplist a,
#globalMenu .hoursBlock .linkList li.reservationList a {
  font-size: 1.4rem;
}

#globalMenu .ticketBlock {
  background: #f68ca2;
  color: #fff;
  position: relative;
  display: block;
  border-radius: 7px;
}

#globalMenu .ticketBlock::before {
  content: "";
  position: absolute;
  background-image: url(/common_v2/img/btn_ticket.png);
  background-size: 100%;
  background-repeat: no-repeat;
  -webkit-transform: rotate(-20deg);
      -ms-transform: rotate(-20deg);
          transform: rotate(-20deg);
  /*
   * bnr1つのとき
   * top: -10%;
   */
  top: -10.5%;
  left: -4.8%;
  width: 60px;
  height: 33px;
}

@media screen and (min-width: 768px) {
  #globalMenu .ticketBlock {
    clear: both;
    width: 231px;
    margin-left: 16px;
    padding: 13px;
    /*
     * bnr1つのとき
     * top: -80px;
     */
    top: -222px;
  }
  #globalMenu .ticketBlock dd {
    margin-top: 3px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .ticketBlock {
    margin-top: 5%;
    padding: 6%;
  }
  #globalMenu .ticketBlock dd {
    margin-top: 1.8%;
  }
}

#globalMenu .fanClubBlock {
  background: #f68ca2;
  color: #fff;
  display: block;
  border-radius: 7px;
}

#globalMenu .fanClubBlock::before {
  content: "";
  position: absolute;
  background-image: url(/common_v2/img/img_fanclub.png);
  background-size: 100%;
  background-repeat: no-repeat;
  top: -3%;
  left: -3.6%;
  width: 135px;
  height: 81px;
}

@media screen and (min-width: 768px) {
  #globalMenu .fanClubBlock {
    position: absolute;
    top: 0;
    right: 0;
    width: 231px;
    padding: 13px;
    margin-right: 16px;
  }
  #globalMenu .fanClubBlock::before {
    width: 58px;
    height: 58px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .fanClubBlock {
    margin-top: 5%;
    padding: 6%;
    position: relative;
  }
  #globalMenu .fanClubBlock::before {
    width: 66px;
    height: 66px;
  }
}

@media screen and (min-width: 768px) {
  #globalMenu .fanClubBlock p {
    margin-top: 3px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .fanClubBlock p {
    margin-top: 1.8%;
  }
}

#globalMenu .fanClubBlock dd dt {
  margin-top: 10px;
  text-align: center;
  font-size: 1.6rem;
}

@media screen and (max-width: 767px) {
  #globalMenu .fanClubBlock dd dd {
    font-size: 1.6rem;
  }
}

#globalMenu .fanClubBlock input {
  width: 100%;
  background: #fcdde3;
  color: #f58ca2;
}

@media screen and (min-width: 768px) {
  #globalMenu .fanClubBlock input {
    padding: 10px;
    min-height: 41px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .fanClubBlock input {
    padding: 5%;
  }
}

#globalMenu .fanClubBlock input.login {
  text-align: center;
  background: #fff;
  color: #f68ca2;
}

@media screen and (min-width: 768px) {
  #globalMenu .fanClubBlock input.login:hover {
    opacity: 0.7;
  }
}

@media screen and (min-width: 768px) {
  #globalMenu .fanClubBlock input {
    margin-top: 3px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .fanClubBlock input {
    margin-top: 1.8%;
  }
}

#globalMenu .fanClubBlock p.notes {
  margin-top: 5%;
  text-align: center;
}

#globalMenu .fanClubBlock p.notes a {
  color: #fff;
}

#globalMenu .topicKeywordBlock {
  background: #f68ca2;
  color: #fff;
  display: block;
  border-radius: 7px;
}

@media screen and (min-width: 768px) {
  #globalMenu .topicKeywordBlock {
    width: 231px;
    padding: 13px;
    position: relative;
    /*
     * bnr1つのとき
     * top: -224px;
     */
    top: -366px;
    left: 259px;
  }
  #globalMenu .topicKeywordBlock a:hover {
    text-decoration: underline;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .topicKeywordBlock {
    margin-top: 5%;
    padding: 6%;
  }
}

#globalMenu .topicKeywordBlock dt.Stit {
  position: relative;
}

#globalMenu .topicKeywordBlock dt.Stit::after {
  content: "";
  position: absolute;
  top: 3rem;
  left: 0;
  border: 1px solid #fcdde3;
  display: block;
  border-radius: 7px;
  height: 0;
  width: 100%;
}

@media screen and (min-width: 768px) {
  #globalMenu .topicKeywordBlock dt.Stit {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .topicKeywordBlock dt.Stit {
    margin-bottom: 5%;
  }
}

#globalMenu .topicKeywordBlock .keywordList li {
  float: left;
  margin-right: 5%;
}

@media screen and (min-width: 768px) {
  #globalMenu .topicKeywordBlock .keywordList li {
    font-size: 1.2rem;
  }
}

#globalMenu .topicKeywordBlock .keywordList li a {
  color: #fff;
}

#globalMenu .SNSBlock {
  background: #f68ca2;
  color: #fff;
  display: block;
  border-radius: 7px;
}

@media screen and (min-width: 768px) {
  #globalMenu .SNSBlock {
    width: 231px;
    padding: 13px;
    position: relative;
    top: -236px;
    left: 502px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu .SNSBlock {
    margin-top: 5%;
    padding: 6%;
  }
}

#globalMenu .SNSBlock li {
  width: 20%;
  float: left;
  padding: 5% 0 5% 10%;
}

#globalMenu .SNSBlock dd p {
  margin-top: 5%;
}

#globalMenu dt.tit {
  font-size: 2.0rem;
  line-height: 1.2;
  text-align: center;
}

@media screen and (min-width: 768px) {
  #globalMenu dt.tit {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 767px) {
  #globalMenu dt.tit {
    margin-bottom: 5%;
  }
}

@media screen and (min-width: 768px) {
  .forSPFoot {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .forSPFoot {
    position: relative;
    width: 92%;
    margin: 5px auto;
  }
  .forSPFoot .toggle {
    cursor: pointer;
    position: relative;
    top: 20px;
    float: right;
    width: 57px;
    height: 57px;
    display: block;
    border-radius: 57px;
    background: #f68ca2;
  }
  .forSPFoot .toggle::before,
  .forSPFoot .toggle::after {
    display: block;
    position: absolute;
    content: "";
    background: #fff;
  }
  .forSPFoot.open .toggle::before,
  .forSPFoot.open .toggle::after {
    top: 27.36px;
    left: 14.25px;
    width: 30px;
    height: 4px;
    display: block;
    border-radius: 7px;
  }
  .forSPFoot.open .toggle::before {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  .forSPFoot.open .toggle::after {
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
}

@media screen and (min-width: 768px) {
  #footerArea a:hover {
    text-decoration: underline;
  }
  #footerArea .action {
    width: 960px;
    margin: 0 auto;
  }
}

#footerArea .snsBlock li {
  float: left;
}

#footerArea .snsBlock li:first-child {
  margin-left: 0;
}

#footerArea .snsBlock li a {
  display: block;
  border-radius: 7px;
  color: #fff;
  background-repeat: no-repeat;
  background-size: auto 60%;
  background-position: 10% 50%;
}

@media screen and (min-width: 768px) {
  #footerArea .snsBlock {
    padding-top: 57px;
    float: left;
  }
  #footerArea .snsBlock li {
    width: 90px;
    margin-left: 10px;
  }
  #footerArea .snsBlock li a {
    padding: 5px 5px 5px 30px;
  }
  #footerArea .snsBlock li a:hover {
    opacity: 0.7;
  }
}

@media screen and (max-width: 767px) {
  #footerArea .snsBlock {
    padding: 3.8%;
  }
  #footerArea .snsBlock li {
    width: 32%;
    margin-left: 2%;
  }
  #footerArea .snsBlock li a {
    padding: 12% 8% 12% 40%;
  }
}

#footerArea .snsBlock .twitter a {
  background-color: #08aae1;
  background-image: url(/common_v2/img/foot_icon_twitter.png);
}

#footerArea .snsBlock .facebook a {
  background-color: #315b98;
  background-image: url(/common_v2/img/foot_icon_facebook.png);
}

#footerArea .snsBlock .line a {
  background-color: #00c300;
  background-image: url(/common_v2/img/foot_icon_line.png);
}

@media screen and (max-width: 767px) {
  #footerArea .action .goBackTop:first-child {
    margin: 9% 0;
  }
}

@media screen and (max-width: 767px) {
  #footerArea .goBackTop {
    padding: 0 10%;
  }
  #footerArea .goBackTop a {
    display: block;
    border-radius: 7px;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    padding: 7% 0;
    background: #f68ca2;
    color: #fff;
  }
  #footerArea .goBackTop a::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 13%;
    background: #fff;
    height: 24px;
    width: 24px;
    margin-top: -12px;
    display: block;
    border-radius: 24px;
  }
  #footerArea .goBackTop span {
    display: block;
    position: absolute;
    top: 50%;
    left: 13%;
    margin-top: -12px;
    z-index: 3030;
    padding-left: 20%;
  }
  #footerArea .goBackTop span::before,
  #footerArea .goBackTop span::after {
    position: absolute;
    display: block;
    content: "";
    width: 10px;
    height: 2px;
    background-color: #f68ca2;
    display: block;
    border-radius: 7px;
    top: 40%;
    left: 3.4%;
  }
  #footerArea .goBackTop span::before {
    margin-left: 4px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  #footerArea .goBackTop span::after {
    margin-left: -2px;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}

@media screen and (min-width: 768px) {
  #footerArea .goBackTop {
    float: right;
  }
  #footerArea .goBackTop:before,
  #footerArea .goBackTop:after {
    content: "";
    display: table;
  }
  #footerArea .goBackTop:after {
    clear: both;
  }
  #footerArea .goBackTop p {
    position: relative;
    top: 0;
    left: 0;
    height: 113px;
    width: 100%;
  }
  #footerArea .goBackTop p:hover {
    background: none;
  }
  #footerArea .goBackTop p a {
    padding: 0;
    position: absolute;
    top: 0;
    right: 0;
    width: 68px;
    height: 113px;
    background-image: url(/common_v2/img/img_top_kitty.png);
    background-repeat: no-repeat;
  }
  #footerArea .goBackTop p a:hover {
    background-image: url(/common_v2/img/img_top_kitty.png);
  }
  #footerArea .goBackTop p a span {
    display: none;
  }
}

#footerArea .sponsorBnr {
  width: 100%;
}

@media screen and (min-width: 768px) {
  #footerArea .sponsorBnr {
    padding: 15px 0;
    background: #f3f0ed;
  }
  #footerArea .sponsorBnr ul {
    width: 960px;
    margin: 0 auto;
    height: 80px;
    overflow: hidden;
  }
  #footerArea .sponsorBnr li {
    float: left;
    margin-left: 13px;
  }
  #footerArea .sponsorBnr li:first-child {
    margin: 0;
  }
  #footerArea .sponsorBnr img {
    width: 230px;
  }
}

@media screen and (max-width: 767px) {
  #footerArea .sponsorBnr {
    margin-top: 3rem;
    padding: 4.2% 3.8% 0 3.8%;
    background: #f68ca2;
  }
  #footerArea .sponsorBnr li {
    display: none;
  }
  #footerArea .sponsorBnr li:first-child {
    display: block;
  }
}

@media screen and (min-width: 768px) {
  #footerArea .relationBnr {
    padding: 15px 0;
    background: #f3f0ed;
  }
  #footerArea .relationBnr ul {
    width: 960px;
    margin: 0 auto;
    height: 80px;
    overflow: hidden;
  }
  #footerArea .relationBnr li {
    float: left;
    margin-left: 13px;
  }
  #footerArea .relationBnr li:first-child {
    margin: 0;
  }
  #footerArea .relationBnr img {
    width: 230px;
  }
}

@media screen and (max-width: 767px) {
  #footerArea .relationBnr {
    padding: 4.2% 3.8%;
    background: #f68ca2;
  }
  #footerArea .relationBnr li {
    display: none;
  }
  #footerArea .relationBnr li:first-child {
    display: block;
  }
}

#footerArea .linkBlock {
  background: #f68ca2;
}

#footerArea .linkBlock li {
  float: left;
}

@media screen and (min-width: 768px) {
  #footerArea .linkBlock {
    padding: 30px 0;
  }
  #footerArea .linkBlock .siteLink {
    width: 960px;
    margin: 0 auto;
    color: #fff;
  }
  #footerArea .linkBlock .siteLink dt {
    margin-top: 13px;
    position: static;
  }
  #footerArea .linkBlock .siteLink dt::before {
    position: static;
    content: "●";
    padding-right: 3px;
    height: auto;
    width: auto;
    border-radius: 0;
    display: inline;
  }
  #footerArea .linkBlock .siteLink dt::after {
    position: static;
    content: "";
    height: auto;
    width: auto;
    border-radius: 0;
    display: inline;
  }
  #footerArea .linkBlock .siteLink dt,
  #footerArea .linkBlock .siteLink dd {
    float: none;
  }
  #footerArea .linkBlock li {
    margin-top: 5px;
    padding-right: 10px;
    font-size: 1.2rem;
  }
  #footerArea .linkBlock li:last-child {
    padding-left: 0;
  }
  #footerArea .linkBlock li:last-child::after {
    content: "";
    padding-left: 0;
  }
  #footerArea .linkBlock li::after {
    content: "/";
    padding-left: 10px;
  }
  #footerArea .linkBlock .language {
    color: #fff;
    font-size: 1.2rem;
  }
  #footerArea .linkBlock .language dt,
  #footerArea .linkBlock .language dd {
    float: left;
  }
  #footerArea .linkBlock .language li {
    float: left;
    padding: 0;
  }
  #footerArea .linkBlock .language li a {
    color: #fff;
    display: inline-block;
  }
  #footerArea .linkBlock .language li:first-child {
    padding-left: 0;
  }
  #footerArea .linkBlock .language li:first-child::before {
    content: "";
    padding-right: 0;
  }
  #footerArea .linkBlock .language li::before {
    content: "/";
    padding-right: 10px;
  }
  #footerArea .linkBlock .language li::after {
    content: "";
  }
  #footerArea .linkBlock a {
    color: #fff;
    display: inline;
  }
  #footerArea .linkBlock .mainLink {
    width: 530px;
    float: left;
  }
  #footerArea .linkBlock .mainLink .accordion .accordionToggle {
    cursor: default;
  }
  #footerArea .linkBlock .mainLink dl.about dt {
    margin-top: 0;
  }
  #footerArea .linkBlock .subLink {
    width: 335px;
    float: right;
  }
  #footerArea .linkBlock .subLink .accordion .accordionToggle {
    cursor: default;
  }
}

@media screen and (max-width: 767px) {
  #footerArea .linkBlock {
    padding: 2rem 3.8% 6rem 3.8%;
    background: #f68ca2;
    font-size: 1.2rem;
  }
  #footerArea .linkBlock .siteLink {
    position: relative;
    padding: 5.8%;
    background: #fff;
    display: block;
    border-radius: 7px;
  }
  #footerArea .linkBlock .siteLink dt {
    position: relative;
    padding: 15px 25px 15px 15px;
    border-bottom: 1px solid #fcdde3;
  }
  #footerArea .linkBlock .siteLink dt::before,
  #footerArea .linkBlock .siteLink dt::after {
    content: "";
    display: block;
    background: #f68ca2;
    display: block;
    border-radius: 7px;
    position: absolute;
  }
  #footerArea .linkBlock .siteLink dt::before {
    height: 2px;
    width: 18px;
    top: 24px;
    right: 8px;
  }
  #footerArea .linkBlock .siteLink dt::after {
    height: 18px;
    width: 2px;
    top: 16px;
    right: 16px;
  }
  #footerArea .linkBlock .siteLink dt.active::after {
    display: none !important;
  }
  #footerArea .linkBlock .siteLink li {
    width: 100%;
    box-sizing: border-box;
    position: relative;
    border-bottom: 1px solid #fcdde3;
    padding-left: 15px;
  }
  #footerArea .linkBlock .siteLink .accordion li a {
    display: block;
    padding: 15px 20px 15px 15px;
    position: relative;
  }
  #footerArea .linkBlock .siteLink .accordion a::before,
  #footerArea .linkBlock .siteLink .accordion a::after {
    position: absolute;
    display: block;
    content: "";
    width: 10px;
    height: 2px;
    background-color: #f68ca2;
    display: block;
    border-radius: 7px;
    top: 50%;
    right: 11px;
  }
  #footerArea .linkBlock .siteLink .accordion a::before {
    margin-top: -4px;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  #footerArea .linkBlock .siteLink .accordion a::after {
    margin-top: 2px;
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
  #footerArea .linkBlock .siteLink .about ul {
    font-size: 0px;
  }
  #footerArea .linkBlock .siteLink .about li {
    width: 50%;
    padding-left: 0;
    display: inline-block;
    font-size: 1.2rem;
    float: none !important;
    vertical-align: middle;
  }
  #footerArea .linkBlock .siteLink .about li:nth-child(odd) {
    border-right: 1px solid #fcdde3;
  }
  #footerArea .linkBlock .siteLink .about li:nth-child(14) {
    letter-spacing: -0.2rem;
  }
  #footerArea .linkBlock .siteLink .about li.info {
    letter-spacing: -0.2rem;
  }
  #footerArea .linkBlock .siteLink .language {
    position: absolute;
    bottom: -6rem;
    left: 0;
    width: 100%;
    color: #fff;
  }
  #footerArea .linkBlock .siteLink .language dt {
    padding: 0;
    border-bottom: none;
  }
  #footerArea .linkBlock .siteLink .language dt::before,
  #footerArea .linkBlock .siteLink .language dt::after {
    content: '';
    height: 0;
    width: 0;
    display: block;
    background: none;
    border-radius: 0;
    position: relative;
    top: 0;
    right: 0;
  }
  #footerArea .linkBlock .siteLink .language ul {
    display: table;
  }
  #footerArea .linkBlock .siteLink .language li {
    display: table-cell;
    float: none;
    width: auto;
    white-space: nowrap;
    border-bottom: none;
    padding: 0 7px 0 0;
  }
  #footerArea .linkBlock .siteLink .language li::before {
    content: "/";
    padding-right: 7px;
  }
  #footerArea .linkBlock .siteLink .language li:first-child::before {
    content: "";
    padding-right: 0;
  }
  #footerArea .linkBlock .siteLink .language li a {
    color: #fff;
    display: inline-block;
  }
  #footerArea .linkBlock .siteLink .language li a::after {
    position: relative;
    top: 0;
    right: 0;
    content: "";
  }
}

@media screen and (min-width: 768px) {
  #footerArea .linkBlock + footer {
    margin-top: -30px;
  }
}

#footerArea footer {
  background: #f68ca2;
}

@media screen and (max-width: 767px) {
  br.forPCBr {
    display: none;
  }
  #footerArea footer a.forSPTelLink {
    color: #fff;
    display: inline-block;
  }
}

#footerArea footer p {
  color: #fff;
}

@media screen and (min-width: 768px) {
  br.forSPBr {
    display: none;
  }
  #footerArea footer .footerBG {
    margin: 0 auto;
    width: 960px;
    min-height: 140px;
    padding-top: 15px;
    background: url(/common_v2/img/bg_footer.png) no-repeat 732px 66px;
  }
  #footerArea footer .footLink li {
    float: left;
    padding-right: 9px;
    font-size: 1.2rem;
  }
  #footerArea footer .footLink li::before {
    content: "/";
    padding-right: 9px;
    color: #fff;
  }
  #footerArea footer .footLink li a {
    display: inline;
  }
  #footerArea footer .footLink li:first-child::before {
    content: "";
    padding-right: 0;
  }
  #footerArea footer .footLink a {
    color: #fff;
    font-size: 1.2rem;
  }
  #footerArea footer .contact {
    font-size: 1.2rem;
  }
  #footerArea footer .contact br {
    display: none;
  }
  #footerArea footer .annotation,
  #footerArea footer .warning,
  #footerArea footer .copyright {
    margin-top: 5px;
    font-size: 1rem;
  }
  #footerArea footer .warning {
    margin-top: 15px;
  }
}

@media screen and (max-width: 767px) {
  #footerArea footer {
    padding: 1.3rem 3.8% 0 3.8%;
  }
  #footerArea footer .footLink {
    background: #fff;
    display: block;
    border-radius: 7px;
  }
  #footerArea footer .footLink li {
    box-sizing: border-box;
    padding: 0 7%;
  }
  #footerArea footer .footLink li a {
    padding: 3.6% 0;
    border-top: 1px solid #fcdde3;
  }
  #footerArea footer .footLink li:first-child a {
    border-top: none;
  }
  #footerArea footer .contact {
    margin-top: 2.5rem;
    padding: 0 7%;
  }
  #footerArea footer .contact .annotation {
    font-size: 1.2rem;
    text-indent: -1.2rem;
    padding-left: 1.2rem;
  }
  #footerArea footer .warning {
    margin-top: 2.5rem;
    padding: 0 7%;
  }
  #footerArea footer .copyright {
    padding: 0 7% 7% 7%;
    margin-top: 1rem;
  }
  #footerArea footer .copyright span {
    display: block;
    word-wrap: break-word;
  }
}
