@charset "UTF-8";
/* wordpressネイティブ */
p {
  display: block;
  margin: 1em 0;
}

h1, h2, h3, h4, h5, h6, ul, li, img, table, tr, th, td, dl, dt, dd {
  font-weight: normal;
  margin: 0px;
  padding: 0px;
  border: none;
  list-style-type: none;
}

strong {
  font-weight: bold;
}

em {
  font-style: italic;
}

blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 40px;
  -webkit-margin-end: 40px;
}

/* oswald:700を400で上書き */
/* cyrillic */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  src: local("Oswald Regular"), local("Oswald-Regular"), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752HT8Ghe4.woff2) format("woff2");
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  src: local("Oswald Regular"), local("Oswald-Regular"), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752Fj8Ghe4.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  src: local("Oswald Regular"), local("Oswald-Regular"), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752Fz8Ghe4.woff2) format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Oswald';
  font-style: normal;
  font-weight: 700;
  src: local("Oswald Regular"), local("Oswald-Regular"), url(https://fonts.gstatic.com/s/oswald/v16/TK3iWkUHHAIjg752GT8G.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/*  base : img
/* ------------------------------------ */
.aligncenter {
  display: block;
  margin: 0 auto;
}

.alignright {
  float: right;
}

.alignleft {
  float: left;
}

img[class*="wp-image-"],
img[class*="attachment-"] {
  max-width: 100%;
  height: auto;
}

/*  base : clear
/* ------------------------------------ */
.clearfix {
  overflow: hidden;
  zoom: 1;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

/* 共通構造・パーツ */
html {
  font-size: 16px;
  color: #373737;
}

body {
  margin: 0;
  padding: 0;
  min-width: 1180px;
  font-family: YuGothic, "Yu Gothic Medium", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

.wrapper {
  text-align: center;
}

.box_inner {
  width: 1080px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  box-sizing: border-box;
}

a, span {
  color: inherit;
  font-size: 1em;
  font-weight: inherit;
}

a:hover {
  opacity: 0.85;
}
a[href^="tel:"] {
  pointer-events: none;
  cursor: default;
}

img {
  outline: none;
}

.hidden {
  display: none !important;
}

.sp_only {
  display: none;
}

.ll {
  font-size: 160%;
}

.l {
  font-size: 130%;
}

.s {
  font-size: 87%;
}

.bold {
  font-weight: 700;
}

.flex, .pc_flex {
  display: flex;
}
.flex.box_inner, .pc_flex.box_inner {
  display: inline-flex;
}
.between{
    justify-content: space-between;
}

.break:before, .pc_break:before {
  content: '\A';
  white-space: pre;
}

input.switch {
  display: none;
}

label.switch {
  cursor: pointer;
}
label.switch:hover {
  opacity: 0.85;
}

.editlink {
  font-size: 0.8rem;
  display: inline-block;
  padding-left: 1em;
}

.mb5 {
  margin-bottom: 0.3125rem;
}

.mb10 {
  margin-bottom: 0.625rem;
}

.mb15 {
  margin-bottom: 0.9375rem;
}

.mb20 {
  margin-bottom: 1.25rem;
}

.mb25 {
  margin-bottom: 1.5625rem;
}

.mb30 {
  margin-bottom: 1.875rem;
}

.mb35 {
  margin-bottom: 2.1875rem;
}

.mb40 {
  margin-bottom: 2.5rem;
}

.mb45 {
  margin-bottom: 2.8125rem;
}

.mb50 {
  margin-bottom: 3.125rem;
}

.mb55 {
  margin-bottom: 3.4375rem;
}

.mb60 {
  margin-bottom: 3.75rem;
}

.mb65 {
  margin-bottom: 4.0625rem;
}

.mb70 {
  margin-bottom: 4.375rem;
}

.mb75 {
  margin-bottom: 4.6875rem;
}

.mb80 {
  margin-bottom: 5rem;
}

.mb90 {
  margin-bottom: 5.625rem;
}

.mb100 {
  margin-bottom: 6.25rem;
}

.mb110 {
  margin-bottom: 6.875rem;
}

.mb120 {
  margin-bottom: 7.5rem;
}

@keyframes modal_show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
input.switch + .modal {
  display: none;
  position: fixed;
  flex-direction: column;
  top: 0;
  left: 0;
  background: rgba(0, 0, 0, 0.8);
  width: 100%;
  height: 100%;
  z-index: 100;
  align-items: center;
  justify-content: center;
  opacity: 0;
  animation: modal_show 0.3s ease 0s 1 reverse forwards;
}
input.switch + .modal > div {
  background: #fff;
  max-height: 80%;
/*  padding: 3.75rem 1.875rem;*/
  width: 80%;
  max-width: 1080px;
  box-sizing: border-box;
  position: relative;
	overflow: auto;
}
input.switch + .modal > div:before {
  content: '\00d7';
  position: absolute;
  top: -3rem;
  right: 0rem;
  margin: auto;
  color: #fff;
  font-size: 2.5rem;
  pointer-events: none;
}
input.switch + .modal .scrollframe {
	display: inline-flex;
  min-width: calc(100% - 3.75rem);
/*  height: 100%;*/
/*  overflow: auto;*/
  padding: 3.75rem 1.875rem;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-start;
  align-content: flex-start;
}
input.switch + .modal > label:first-child {
  display: flex;
  height: 100%;
  width: 100%;
  position: absolute;
  box-sizing: border-box;
  color: #fff;
  font-size: 1.5rem;
  font-family: "Oswald", sans-serif;
  cursor: pointer;
}
input.switch + .modal .btn_close {
  color: #fff;
  margin-top: 1.125rem;
  font-family: "Oswald", sans-serif;
  font-size: 1.5669225rem;
}

input.switch:checked + .modal {
  display: flex;
  animation: modal_show 0.3s ease 0s 1 normal forwards;
}

.flex, .pc_flex {
  display: flex;
}

.font_eng {
  font-family: "Oswald", sans-serif;
}

ul.sns {
  display: flex;
  justify-content: flex-end;
}
ul.sns li {
  margin-left: 4px;
}
ul.sns a {
  display: flex;
  width: 36px;
  height: 36px;
  border-radius: 50%;
}
ul.sns img {
  max-width: 100%;
  max-height: 100%;
}

.cat_label {
  color: #fff;
  background: #6f6f6f;
  font-family: "Oswald", sans-serif, YuGothic, "Yu Gothic Medium", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

/* ヘッダ */
.siteheader {
  position: fixed;
  background: #fff;
  width: 100%;
  top: 0;
  z-index: 50;
}
body.adminbar .siteheader {
  top: 32px;
}
.siteheader a {
  text-decoration: none;
}
.siteheader ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.siteheader .h_logo {
  margin-top: 0;
  margin-bottom: 0;
  display: inline-block;
}
.siteheader .line1 {
  padding: 18px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  box-sizing: border-box;
  height: 97px;
}
.siteheader .line1 .right {
  display: flex;
  align-items: center;
}
.siteheader .line1 ul {
  display: flex;
  align-items: center;
  margin-right: 23px;
}
.siteheader .line1 ul li {
  display: flex;
  align-items: center;
}
.siteheader .line1 ul li:nth-child(n+2):before {
  content: '';
  display: inline-block;
  width: 1px;
  height: 27px;
  background: #c9c9c9;
  margin: 0 12px 0 11px;
}
.siteheader .btn_gnav {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background: #ff951c;
  width: 61px;
  height: 61px;
}
.siteheader .btn_gnav:before, .siteheader .btn_gnav:after {
  content: '';
  width: 30px;
  display: block;
  border-color: #fff;
  border-style: solid;
  box-sizing: border-box;
}
.siteheader .btn_gnav:before {
  border-width: 3px 0;
  height: 14px;
  margin-bottom: 8px;
}
.siteheader .btn_gnav:after {
  border-width: 3px 0 0;
  height: 3px;
}
.siteheader + .line2 {
  background: #06044d;
  color: #fff;
  font-size: 0.875rem;
}
.siteheader + .line2 a {
  text-decoration: none;
}
.siteheader + .line2 .box_inner {
  display: flex;
  align-items: center;
  height: 52px;
  background: url("/images/common/ico-calendar.png") right center/20px no-repeat;
}
.siteheader + .line2 .box_inner > span:first-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.8);
  color: #06044d;
  margin-right: 11px;
  width: 84px;
  height: 26px;
  font-size: 0.75rem;
  flex-shrink: 0;
  flex-grow: 0;
}
.siteheader + .line2 ul {
  display: flex;
  align-items: center;
  flex-grow: 1;
  flex-shrink: 1;
}
.siteheader + .line2 ul li:nth-child(n+2) {
  display: flex;
  align-items: center;
}
.siteheader + .line2 ul li:nth-child(n+2):before {
  content: '/';
  display: inline-block;
  margin: 0 1em;
}

/* ナビ */
.gnav {
  position: fixed;
  right: 0;
  width: 100%;
  box-sizing: border-box;
  background: #fff;
  transition: max-height 0.5s ease;
  max-height: 0;
  overflow: hidden;
  display: flex;
  justify-content: center;
}
.gnav .menu {
  display: inline-flex;
  flex-wrap: wrap;
  width: 1060px;
  padding: 16px 0;
}
.gnav .menu > li {
  box-sizing: border-box;
  width: 14.2857142857%;
  flex-shrink: 0;
  flex-grow: 0;
  padding: 0 5px 5px 5px;
  height: 38px;
}
.gnav .menu > li:nth-child(n+9):nth-last-child(-n+14) {
  position: relative;
}
.gnav .menu > li:nth-child(n+9):nth-last-child(-n+14):before {
  content: '';
  display: block;
  width: 1px;
  height: 68px;
  background: #c9c9c9;
  position: absolute;
  left: 0;
  bottom: 5px;
}
.gnav .menu > li:nth-child(n+8) {
  border-top: solid 1px #c9c9c9;
  padding: 5px 5px 0 5px;
  height: 39px;
}
.gnav .menu > li a {
  display: flex;
  height: 100%;
  align-items: center;
  justify-content: center;
  color: #06044d;
  font-weight: 700;
  font-size: 0.875rem;
  position: relative;
}
.gnav .menu > li a:hover {
  background: #efefef;
  color: #ff951c;
}
.gnav .menu > li a:hover:after {
  content: '';
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  border-width: 16px;
  border-style: solid;
  border-color: transparent #ff951c #ff951c transparent;
}
.gnav .sns {
  display: none;
}

#switch_gnav:checked ~ .wrapper .siteheader .btn_gnav {
  display: flex;
  align-items: center;
  justify-content: center;
}
#switch_gnav:checked ~ .wrapper .siteheader .btn_gnav:before {
  content: '╋';
  height: 1em;
  width: 1em;
  border: none;
  transform: rotate(45deg);
  font-size: 34px;
  line-height: 1em;
  color: #fff;
  margin-top: 0.2em;
  margin-right: 0.1em;
}
#switch_gnav:checked ~ .wrapper .siteheader .btn_gnav:after {
  display: none;
}
#switch_gnav:checked ~ .wrapper .siteheader .gnav {
  transition: max-height 0.5s ease;
  max-height: 620px;
}

/* ページフッタ */
.box_f_banner {
  background: url(/images/common/f-ban-bg.jpg) center no-repeat;
  height: 247px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.box_f_banner #f_ban_swiper {
  height: 104px;
}
.box_f_banner.no_swipe{
	margin-left: -20px;
	margin-right: -20px;
} 
.box_f_banner.no_swipe li{
	width: auto;
	margin-left: 10px;
	margin-right: 10px;
}
.box_f_banner.no_swipe .swiper-prev,
.box_f_banner.no_swipe .swiper-next{
	display: none;
}
.box_f_banner .swiper-wrapper {
  margin: 0;
  padding: 0;
  list-style: none;
}
.box_f_banner .swiper-prev, .box_f_banner .swiper-next {
  display: block;
  width: 18px;
  height: 18px;
  border-style: solid;
  border-color: #fff;
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
}
.box_f_banner .swiper-prev {
  left: calc(50% - 570px);
  border-width: 2px 0 0  2px;
  transform: rotate(-45deg);
}
.box_f_banner .swiper-next {
  right: calc(50% - 570px);
  border-width: 2px 2px 0 0;
  transform: rotate(45deg);
}

/* サイトフッタ */
#fbtn_ticket{
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 2;
}
#btn_pagetop {
  position: fixed;
  bottom: -126px;
  right: 1.5rem;
  transition: bottom 0.2s ease;
  z-index: 2;
}
#btn_pagetop.show {
  bottom: 0;
  transition: bottom 0.2s ease;
}

.sitefooter {
  text-align: center;
}
.sitefooter ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.sitefooter a {
  text-decoration: none;
}
.sitefooter .block1 {
  background: #efefef;
  margin-bottom: 47px;
  text-align: center;
}
.sitefooter .block1 .box_inner {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  height: 98px;
}
.sitefooter .block1 .left {
  font-size: 0.875rem;
}
.sitefooter .block1 .left > span:first-child {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #ff951c;
  width: 73px;
  height: 24px;
  margin-right: 18px;
}
.sitefooter .block2 {
  justify-content: space-between;
  margin-bottom: 42px;
}
.sitefooter .block2 .ttl {
  font-family: "Oswald", sans-serif;
  font-size: 1.1241825rem;
  line-height: 1em;
  margin-bottom: 39px;
}
.sitefooter .block2 .ttl:before {
  content: '';
  display: block;
  height: 1px;
  background: rgba(75, 75, 75, 0.5);
  position: relative;
  z-index: -1;
  top: 0.5em;
}
.sitefooter .block2 .ttl span {
  display: inline-block;
  padding-right: 20px;
  background: #fff;
  color: #060f16;
}
.sitefooter .block2 .left {
  width: 40%;
  flex-grow: 1;
  flex-shrink: 1;
}
.sitefooter .block2 .left ul {
  column-count: 2;
}
.sitefooter .block2 .left li {
  margin-bottom: 19px;
}
.sitefooter .block2 .left a {
  display: flex;
  align-items: center;
  line-height: 1em;
}
.sitefooter .block2 .left a:before {
  content: '';
  display: inline-block;
  width: 3px;
  height: 7px;
  background: #ff951c;
  margin-right: 11px;
}
.sitefooter .block2 .left.wide ul {
  display: flex;
  flex-wrap: wrap;
  margin-right: -2em;
}
.sitefooter .block2 .left.wide li {
  padding-right: 3em;
}
.sitefooter .block2 .right {
  width: 598px;
  margin-left: 39px;
}
#f_site_swiper ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#f_site_swiper li{
	width: 193px;
}
#f_site_swiper ul:before, #f_site_swiper ul:after {
  content: '';
  display: block;
  width: 193px;
  order: 1;
}

.copyright {
  background: #06044d;
  color: #fff;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.75rem;
}

@media (max-width: 600px) {
  /* 共通構造・パーツ */
  #wpadminbar {
    position: fixed;
  }

  html {
    font-size: 20px;
  }

  body {
    min-width: inherit;
    width: 500px;
  }

  .wrapper {
    overflow: hidden;
    width: 100%;
    padding-top: 46px;
    box-sizing: border-box;
  }
  body.adminbar .wrapper {
    padding-top: 92px;
  }

  .box_inner {
    width: 450px;
  }

  a:hover {
    opacity: 1;
  }
  a[href^="tel:"] {
    pointer-events: auto;
    cursor: pointer;
  }

  .sitemain img {
    max-width: 100%;
      height: auto;
  }

  .pc_only {
    display: none !important;
  }

  .sp_only {
    display: inline-block;
  }

  .pc_flex {
    display: block;
  }
  .pc_flex.box_inner {
    display: inline-block;
  }

  .pc_break:before {
    content: none;
  }

  .sp_break:before {
    content: '\A';
    white-space: pre;
  }

  .switch:hover {
    opacity: 1;
  }

  .pc_flex {
    display: block;
  }
  .pc_flex > * {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  ul.sns li {
    margin-left: 31px;
  }
  ul.sns a {
    width: 65px;
    height: 65px;
  }
  ul.sns img {
    max-width: inherit;
    max-height: inherit;
    width: 65px;
    height: 65px;
  }

  /* ヘッダ */

  .siteheader {
    border-top-width: 6px;
  }
  .siteheader .line1 {
    padding: 20px 0;
    height: 93px;
  }
  .siteheader .line1 ul {
    margin-right: 0;
    height: 100%;
  }
  .siteheader .line1 ul li {
    margin: auto 14px auto 0 !important;
    font-size: 0%;
    height: 100%;
  }
  .siteheader .line1 ul li:before {
    content: none !important;
  }
  .siteheader .line1 ul a {
    display: inline-block;
    box-sizing: border-box;
    height: 57px;
  }
  .siteheader .line1 ul li:first-child a {
    width: 46px;
    background: url(/images_sp/common/h-btn-match.png) center bottom/contain no-repeat;
  }
  .siteheader .line1 ul li:nth-child(2) a {
    width: 47px;
    background: url(/images_sp/common/h-btn-ticket.png) center bottom/contain no-repeat;
  }
  .siteheader .line1 ul li:nth-child(3) a {
    width: 46px;
    background: url(/images_sp/common/h-btn-ladies.png) center bottom/contain no-repeat;
  }
	
	
  .siteheader .h_logo {
    height: 60px;
  }
  .siteheader .h_logo img {
    height: 60px;
    width: auto;
  }
  .siteheader .btn_gnav {
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #ff951c;
    width: 54px;
    height: 54px;
  }
  .siteheader .btn_gnav:before, .siteheader .btn_gnav:after {
    content: '';
    width: 30px;
    display: block;
    border-color: #fff;
    border-style: solid;
    box-sizing: border-box;
  }
  .siteheader .btn_gnav:before {
    border-width: 3px 0;
    height: 14px;
    margin-bottom: 8px;
  }
  .siteheader .btn_gnav:after {
    border-width: 3px 0 0;
    height: 3px;
  }
  .siteheader + .line2 {
    font-size: 0.875rem;
    height: 60px;
  }
  .siteheader + .line2 .box_inner {
    width: auto;
    background-image: none;
    position: relative;
  }
  .siteheader + .line2 .box_inner > span:first-child {
    display: none;
  }
  .siteheader + .line2 ul {
    display: inline-flex;
    margin: 0;
    padding: 0;
    width: auto;
    height: 60px;
    overflow: visible;
    position: relative;
    left: 500px;
    animation: floatingtext 12s linear infinite normal;
  }
  .siteheader + .line2 ul li {
    background: none;
    font-size: 0.875rem;
    height: 100%;
    flex-shrink: 0;
    flex-grow: 0;
    display: flex;
    align-items: center;
    padding: 0 25px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .siteheader + .line2 ul li:nth-child(n+2) {
    animation-delay: 5s;
  }
  .siteheader + .line2 ul li:nth-child(n+2):before {
    content: none;
  }
  .siteheader + .line2 .box_inner > a {
    display: inline-flex;
    justify-content: center;
    width: 61px;
    flex-shrink: 0;
    flex-grow: 0;
  }
  .siteheader + .line2 .box_inner > a img {
    width: 20px;
    height: 22px;
  }

  /* ナビ */
  .gnav {
    width: 100%;
    border: none;
    background: #efeff4;
    z-index: 10;
    flex-direction: column;
    display: block;
  }
  .gnav .menu {
    padding-top: 0;
    padding-bottom: 0;
    position: relative;
    width: 100%;
  }
  .gnav .menu:after {
    content: '';
    display: block;
    width: 1px;
    top: 246px;
    bottom: 0;
    margin: auto;
    background: #06044d;
    left: 0;
    right: 0;
    z-index: 11;
    position: absolute;
  }
  .gnav .menu > li {
    height: auto !important;
  }
  .gnav .menu > li a {
    height: 75px !important;
    font-weight: 700;
  }
  .gnav .menu > li.wide {
    width: 100% !important;
    background: #ff951c;
    order: -1;
    background-repeat: no-repeat;
  }
  .gnav .menu > li.wide a {
    padding-left: 70px;
    justify-content: space-between;
    color: #fff !important;
  }
  .gnav .menu > li.wide a:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    border-style: solid;
    border-color: #fff;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
    margin-right: 25px;
  }
  .gnav .menu > li.wide:nth-of-type(1) {
    background-image: url(/images_sp/common/ico-ball-wh.png);
    background-size: 34px;
    background-position: 24px center;
    border-bottom: solid 2px #fff;
  }
  .gnav .menu > li.wide:nth-child(9) {
    background-image: url(/images_sp/common/ico-ticket-wh.png);
    background-position: 25px center;
    background-size: 30px;
    border-bottom: solid 2px #fff;
  }
  .gnav .menu > li.wide:last-child {
    background-image: url("/images/common/ico-calendar.png");
    background-size: 30px;
    background-position: 24px center;
  }
  .gnav .menu > li:not(.wide) {
    min-width: 50%;
    border-bottom: solid 1px #06044d;
    padding: 0;
  }
  .gnav .menu > li:not(.wide) a {
    justify-content: center;
  }
  .gnav ul.sns {
    display: flex;
    padding: 38px 25px;
    justify-content: space-between;
    border-bottom: solid 11px #06044d;
  }
  .gnav ul.sns li {
    margin-left: 0;
  }

  #switch_gnav:checked ~ .wrapper .siteheader .gnav {
    max-height: calc(100% - 160px);
    overflow: auto;
    transition: max-height 0.5s ease;
  }
  #switch_gnav:checked ~ .wrapper .siteheader .btn_gnav:before {
    margin-top: 0.3em;
    margin-right: 0.1em;
  }
  #switch_gnav:checked ~ .wrapper .siteheader .btn_gnav:after {
    display: none;
  }

  body.adminbar .siteheader {
    top: 46px;
  }
  body.adminbar #switch_gnav:checked ~ .wrapper .siteheader .gnav {
    max-height: calc(100% - 200px);
  }

  body.page_front #switch_gnav:checked ~ .wrapper .siteheader .gnav {
    max-height: calc(100% - 290px);
  }

  /* ページフッタ */
  .box_f_banner {
    background: url(/images_sp/common/f-ban-bg.jpg) center/100% no-repeat;
  }
  .box_f_banner #f_ban_swiper {
    height: 144px;
    width: 351px;
  }
  .box_f_banner .swiper-slide img {
    width: 100%;
  }
  .box_f_banner .swiper-prev {
    left: 25px;
  }
  .box_f_banner .swiper-next {
    right: 25px;
  }

  /* サイトフッタ */
  .sitefooter .block1 {
    margin-bottom: 75px;
  }
  .sitefooter .block1 .box_inner {
    display: block;
    height: auto;
    padding: 62px 0;
  }
  .sitefooter .block1 .left {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 28px;
    margin-right: -1em;
  }
  .sitefooter .block1 .left > span:first-child {
    display: flex;
    font-size: 17px;
    width: 82px;
    height: 27px;
    margin-bottom: 11px;
  }
  .sitefooter .block2 {
    margin-bottom: 50px;
  }
  .sitefooter .block2 .right {
	  padding-left: 20px;
	  padding-right: 20px;
	  -webkit-box-sizing: border-box;
	  -moz-box-sizing: border-box;
	  box-sizing: border-box;
	  position: relative;
  }
  .sitefooter .block2 .ttl {
    font-size: 1.2500385rem;
  }
  .sitefooter .block2 .right .ttl{
		margin-left: -20px;
		width: 450px;
	}
  .sitefooter .block2 .left {
    width: 100% !important;
  }
  .sitefooter .block2 .left ul {
    height: 388px;
  }
  .sitefooter .block2 .left li {
    margin-bottom: 20px;
  }
  .sitefooter .block2 .left a:before {
    height: 8px;
    margin-right: 12px;
  }
  .sitefooter .block2 .left.wide ul {
    flex-direction: row;
    margin-right: -2em;
    height: auto;
  }
  .sitefooter .block2 .left.wide li {
    padding-right: 3em;
  }

	#f_site_swiper{
		width: 100%;
	}
	#f_site_swiper ul{
		flex-wrap: nowrap;
	}
  #f_site_swiper ul:before, #f_site_swiper ul:after {
    content: none;
  }
	#f_site_swiper~.navbtn{
		border-style: solid;
		border-color: #666;
		display: block;
		width: 1rem;
		height: 1rem;
		position: absolute;
		bottom: 48px;
		cursor: pointer;
	}
	#f_site_swiper~.navbtn.prev{
		border-width: 1px 0 0 1px;
		transform: rotate(-45deg);
		left: 0;
	}
	#f_site_swiper~.navbtn.next{
		border-width: 1px 1px 0 0;
		transform: rotate(45deg);
		right: 0;
	}
  .copyright {
    background: #06044d;
    color: #fff;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.75rem;
  }

  #btn_pagetop {
    right: 0;
  }
  #btn_pagetop img {
    width: 140px;
    height: auto;
  }
  #fbtn_ticket img {
    width: 120px;
    height: auto;
  }
}

@keyframes floatingtext {
    0% {
      left: 500px;
    }
    97% {
      left: -100%;
      opacity: 1;
    }
    98% {
      left: -100%;
      opacity: 0;
    }
    99% {
      left: 500px;
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }