/*
Theme Name:		 habakiri_child
Author:			 nijigennomori
Template:		 habakiri
Version:		 1.0.0
Text Domain:	 habakiri-child
*/

/* 230605 鬼滅 緊急 */
body > div.footer-fixed-btn.sp {
  display: none !important;
}

/* global */
html {
  height: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: 80px;
}
body {
  font-family:
    "Roboto Condensed",
    "Original Yu Gothic",
    "Yu Gothic",
    YuGothic,
    Verdana,
    Meiryo,
    "M+ 1p",
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    sans-serif;
  letter-spacing: 0.05em;
  line-height: 1.8em;
  position: relative;
  height: 100%;
}
h1.entry__title {
  display: none;
}
h2 {
  text-align: center;
  margin: 0;
}
p a {
  color: #ff0198;
  text-decoration: underline;
  cursor: pointer;
}
a:hover,
.link-box:hover,
ul.list_box.column-2 li:hover {
  transition: all 0.4s ease !important;
}
ul.list_box.column-3.gray li:hover {
  opacity: 0.8;
  transition: all 0.4s ease !important;
}
ul.list_box.column-2.green li:hover {
  opacity: 1;
}
a:hover img {
  opacity: 0.7;
  -webkit-opacity: 0.7;
  -moz-opacity: 0.7;
  transition: 0.6s;
}
#contents {
  position: relative;
}
img.attachment-post-thumbnail.size-post-thumbnail.wp-post-image {
  width: 100%;
}
span.indent {
  padding-left: 9em;
}
.event_list li:hover > a > img.attachment-post-thumbnail.size-post-thumbnail.wp-post-image {
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  transform: scale(1.05);
}
.link-box:hover img {
  opacity: 0.7;
  -webkit-opacity: 0.7;
  -moz-opacity: 0.7;
  transition: 0.6s;
}
.relation .link-box:hover > p > img {
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  transform: scale(1.05);
}
.relation .link-box p {
  overflow: hidden;
  margin: 0px;
}
.sub-page-contents {
  padding-top: 165px;
}
.page .sub-page-contents {
  padding-top: 40px;
}
.text-danger {
  color: #ff1100;
}

#container {
  height: auto;
}
.leaf_bg {
  background-image: url(img/main_bg_l.png), url(img/main_bg_r.png);
  background-repeat: repeat-y, repeat-y;
  background-position:
    left top,
    right top;
  pointer-events: none;
  z-index: 1;
  position: absolute;
  height: 100%;
  /*min-height: 100%;*/
  width: 100%;
}
.mx-3 {
  margin-top: 1rem;
  margin-bottom: 1rem;
}

/* header */
.header {
  height: 52px;
}
header .container {
  width: 100%;
  height: 52px;
  position: fixed;
  background: #000;
}
.site-branding {
  padding: 0 !important;
}
#header h1.site-branding__heading a img {
  width: 200px;
  position: absolute;
  top: 0;
}
.col-xs-2.col-md-9.header__col.global-nav-wrapper.clearfix .col-md-7 {
  padding: 0;
}
.col-md-5.header-lightarea,
.col-md-5.header-lightarea .col-md-7 {
  padding: 0;
  text-align: right;
}
.menu-primary-menu-container {
  position: relative;
}
.header--default .global-nav .menu {
  position: absolute;
  top: 10px;
  right: 5px;
}
.responsive-nav .menu > li.menu-item > a {
  font-weight: bold;
  padding: 5px;
}
.responsive-nav .menu > .menu-item > a:hover {
  color: #ff0198 !important;
  transition: all 0.4s ease;
}
.responsive-nav .menu > li.menu-item > a i {
  margin-right: 3px;
}
.col-md-5.header-lightarea .col-md-5 {
  padding: 10px;
}
.col-md-5.header-lightarea .col-md-5 .btn {
  background: #fff;
  color: #000;
  font-style: italic;
  font-size: 11.48pt;
  border-radius: 0;
}
.col-md-5.header-lightarea .col-md-7 a {
  padding-right: 15px;
}
.header_nav_ticket {
  background: #000;
  display: inline-block;
}

/* slider */
ul.mainslider img {
  object-fit: contain;
}
.bx-wrapper .bx-controls-direction a {
  z-index: 1 !important;
}
.bx-wrapper img.slider_img {
  max-width: 100% !important;
  height: 90vh !important;
  display: inline-block;
  max-height: 100%;
}
.bx-wrapper video {
  height: 90vh;
  display: block;
  margin: 0 auto;
}
.top-slider.vegas-container {
  height: 90vh !important;
  background: #000;
}
#previous img {
  position: absolute;
  top: 50%;
}
#next img {
  position: absolute;
  top: 50%;
  right: 0px;
}
.slider_h_l {
  background-color: #000;
}
.slider_h_l_inner {
  text-align: left;
  max-width: 1026px;
  width: 90.33333%;
  height: 186px;
  margin: 0 auto;
  color: #fff;
  padding: 30px 0;
}
.slider_h_l_inner h2 {
  text-align: left;
  margin-bottom: 14px;
}

.slider_h_l_inner p {
  margin-bottom: 0;
}

p.scrol {
  margin: 0;
  padding-right: 65px;
}
p.scrol img {
  position: absolute;
  bottom: 50px;
  right: 50px;
}
.bxslider li {
  display: none;
}
.bx-viewport .bxslider li {
  display: block !important;
}
.spslider li,
.spmainslider li {
  display: none;
}
.bx-viewport .spslider li,
.bx-viewport .spmainslider li {
  display: block !important;
}

@media (min-width: 1270px) {
  .pc_top_slider .bx-wrapper {
    height: 90vh;
  }
  .pc_top_slider {
    height: 90vh !important;
    position: relative;
  }
  .pc_top_slider .bx-wrapper {
    border: none !important;
    background: #000;
    padding: 0 !important;
    margin: 0;
    position: fixed;
  }
  .pc_top_slider .bx-wrapper .bx-pager,
  .pc_top_slider .bx-wrapper .bx-controls-auto {
    bottom: 25px !important;
  }
  .pc_top_slider .bx-wrapper li {
    text-align: center;
  }
  .pc_top_slider .bx-wrapper .bx-prev {
    background: url(img/movie_previous.png) no-repeat;
    left: 0 !important;
    width: 80px;
    height: 80px;
  }
  .pc_top_slider .bx-wrapper .bx-next {
    background: url(img/movie_next.png) no-repeat;
    right: 0 !important;
    width: 80px;
    height: 80px;
  }
  .pc_top_slider .bx-wrapper img {
    height: 90vh;
    display: inline-block;
    max-height: initial;
    object-fit: contain;
  }
  .pc_top_slider a:hover {
    text-decoration: none;
  }
}
@media (max-width: 1269px) {
  .sp_top_slider {
    height: calc(30vh + 288px);
    overflow: hidden;
  }
  .sp_top_slider .bx-wrapper video {
    max-height: 45vh;
    width: 100%;
  }
  .top_slider.sp_top_slider .bx-wrapper video {
    max-height: 30vh;
  }
  .top_slider.sp_top_slider .slider_sp_img_wrap:before {
    padding-top: 30vh;
  }
}

/* menu */
.title {
  text-align: center;
  z-index: 1;
  position: relative;
}
.main-menu {
  background-color: #fff;
}
.main-menu .container .col-md-10.col-md-offset-1 {
  padding: 0;
}
.main-menu ul {
  padding: 0;
  height: 90px;
  margin: 0;
}
.main-menu ul li {
  list-style: none;
  display: inline-block;
  border-right: 2px #ececec solid;
  width: 14.2%;
  height: 90px;
  padding: 14px 0;
  text-align: center;
  float: left;
}
.main-menu ul li:hover {
  background-color: #ececec;
  transition: 1s;
}
.main-menu ul li:first-child {
  border-left: 2px #ececec solid;
}
.main-menu ul li a {
  display: block;
}
/* 固定メニュー */
.custom-menu {
  height: 90px;
  width: 100%;
  background: #fff;
  position: fixed;
  top: 0;
  z-index: 3;
}
.custom-menu .container {
  width: 100%;
  padding-right: 0;
}
.custom-menu .site-branding {
  margin-top: 18px;
}
img.site-branding__logo {
  width: 245px;
}
.custom-menu .col-xs-12 {
  padding: 0;
}
.custom-menu .header__content .header__col {
  vertical-align: baseline;
}
.custom-menu .responsive-nav a {
  color: #000;
  font-weight: bold;
}
a.custom_menu_language {
  padding: 7px 0 0;
}
ul#custom-primary-menu li a {
  padding-left: 0;
}
ul#custom-primary-menu li a:hover {
  color: #ff0198;
}
ul#custom-primary-menu li a i {
  margin-right: 5px;
}
ul.custom_menu_main_nav {
  padding: 0;
}
ul.custom_menu_main_nav li {
  display: inline-block;
  list-style: none;
  vertical-align: top;
  padding-top: 5px;
  margin-left: 5px;
}
ul.custom_menu_main_nav li.custom_menu_ticket {
  padding-top: 0;
}
ul.custom_menu_main_nav li.custom_menu_ticket a {
  display: inline-flex;
}
a.attraction_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}
a.event_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}
a.shop_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}
a.stay_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}
a.plan_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}
a.map_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}
a.onlineshop_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}

/* footer */
footer#footer {
  background-color: transparent;
  background-image: url(img/footer_bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
footer#footer .col-md-6 {
  padding: 0;
}
.footer_link{
  margin: 40px auto;
}
.btn_area {
  margin: 0;
}
footer .btn_area {
  padding: 20px 0;
}
.btn_area .anchor-attraction.top-anchor-attraction ul {
  margin: 0 0 10px;
  padding: 20px 0 70px;
}
.footer_content {
  margin: 80px 161px 45px;
}
.footer_content ul {
  padding: 0;
  margin: 0;
}
.footer_content ul li {
  list-style: none;
  padding: 2px 0;
}
.footer_content ul li a {
  color: #fff;
}
.footer_content ul li a:hover {
  text-decoration: none;
}
.footer_link .row {
  margin: 0px;
  padding-left: 15px;
}
.footer_link .row .col-xs-6 {
  padding: 0px;
}
.social_btn ul {
  text-align: center;
  margin: 0 auto 40px;
}
.social_btn ul li {
  display: inline-block;
  margin: 0 7px;
}
.sponsor {
  text-align: center;
  color: #fff;
  margin-bottom: 25px;
}
.copyright {
  background: transparent;
  color: #fff;
  line-height: 1.2;
  text-align: center;
}
.ranking-banner {
  margin-bottom: 25px;
}

/* top */
.home .sub-page-contents {
  padding-top: 0;
  background: #e8e8e8 url(img/bg.png);
}
.event_list {
  padding: 0;
}
.event_list li {
  list-style: none;
  /* text-align: center; */
  display: inline-block;
  width: 31.3%;
  margin: 15px;
  background: #fff;
  float: left;
  box-shadow: 0 0 7px #afafaf;
}
.event_list li:nth-child(1),
.event_list li:nth-child(4),
.event_list li:nth-child(7) {
  margin-left: 0;
}
.event_list li:nth-child(3),
.event_list li:nth-child(6),
.event_list li:nth-child(9) {
  margin-right: 0;
}
.event_list li .event_caption {
  padding: 20px;
}
.event_list li .event_caption:hover {
  opacity: 0.7;
}
.event_list li a {
  display: block;
  overflow: hidden;
}
.event_list li a:hover {
  text-decoration: none;
}
.event_list li .event_title,
.event_list li .deta {
  display: block;
}
.event_list li .event_title {
  color: #000;
  font-weight: bold;
}
.event_list li .deta {
  color: #6f6f6f;
  font-family: Lato, sans-serif;
}
.event_title {
  word-wrap: break-word;
}
.news_list {
  background: #fff;
  max-height: 459px;
  padding: 30px 30px 0;
  overflow: auto;
  border: 1px solid #e8e8e8;
}
.home .news_list {
  box-shadow: 0 0 7px #afafaf;
}
.news_list li {
  list-style: none;
  padding: 15px 0;
  border-bottom: 1px solid #eee;
}
.news_list li:first-child {
  padding-top: 0;
}
.news_list li a.news_item {
  display: block;
}
.news_list li a.news_item:hover {
  text-decoration: none;
  opacity: 0.7;
}
.news_list li .date {
  color: #6f6f6f;
  font-family: Lato, sans-serif;
}
.news_list li .news_title {
  color: #000;
  font-weight: bold;
}
.page-template-default .news_list {
  max-height: 460px;
}

.bg_butterfly {
  position: absolute;
  top: 176px;
  right: 70px;
}
.bg_butterfly_4 {
  position: absolute;
  top: 1336px;
  left: 460px;
  z-index: 1;
}
.bg_butterfly_5 {
  position: absolute;
  top: 1980px;
  left: 50px;
  z-index: 1;
}
.bg_butterfly_6 {
  position: absolute;
  top: 2292px;
  left: -80px;
  z-index: 1;
}
.bg_leaf_1 {
  position: absolute;
  top: 159px;
  left: 53px;
}
.bg_leaf_5 {
  position: absolute;
  top: 1295px;
  right: -150px;
  z-index: 1;
}
.bg_leaf_7 {
  position: absolute;
  top: 2000px;
  right: 100px;
  z-index: 1;
}
.bg_leaf_8 {
  position: absolute;
  top: 2388px;
  right: 402px;
}
.bg_leaf_9 {
  position: absolute;
  top: 2921px;
  left: 100px;
}
.bg_leaf_10 {
  position: absolute;
  top: 2322px;
  right: -100px;
  z-index: 1;
}
/* SNS */
.relative {
  position: relative;
}
p.shadow_box iframe,
.fb-page.shadow_box {
  box-shadow: 0 0 7px #afafaf;
}
#news h2.title {
  top: 13px;
}
#information h2.title {
  top: 7px;
  margin-bottom: -13px;
}
.fb-page.fb_iframe_widget {
  top: -15px;
}
span.timeline-Header-byline {
  display: none !important;
}
#information #twitter-widget-0,
#twitter #twitter-widget-2 {
  position: absolute !important;
  top: 115px;
}
#instagram {
  margin-bottom: 45px;
}
#instagram h2.title {
  position: relative;
  top: 6px;
}
.bx-wrapper {
  border-top: 5px solid #fff !important;
  border-bottom: 20px solid #fff !important;
  border-right: 50px solid #fff !important;
  border-left: 60px solid #fff !important;
  padding: 10px 10px 10px 12px !important;
}
.bx-wrapper img {
  max-height: 173px;
  margin: auto;
}
.bx-wrapper .bx-prev {
  left: -60px !important;
  background-position: 0 0;
}
.bx-wrapper .bx-next {
  right: -50px !important;
  background-position: 0 0;
}
.bx-wrapper .bx-controls-direction a:hover {
  opacity: 0.8;
}
#sb_instagram {
  background: #fff;
  /* box-shadow: 0 0 7px #afafaf; */
  padding-bottom: 20px !important;
}

/* event 一覧 */
.category-event .sub-page-contents {
  padding-top: 85px;
}

/* news 一覧 */
.category_news_list_bg {
  background: #fff;
  padding: 70px 50px 50px;
}
.category_news_list_bg li {
  list-style: none;
}
.category_news_list_bg.accordion > li > p {
  padding: 20px;
}
.category_news_list_bg.accordion > li > p:after {
  content: url(img/accordion_open.png);
  position: absolute;
  right: 85px;
}
.category_news_list_bg.accordion > li > p.open-set:after {
  content: url(img/accordion_close.png);
  position: absolute;
  right: 85px;
}
.category_news_list_bg li .deta {
  display: block;
  color: #6f6f6f;
  font-family: Lato, sans-serif;
}
.category_news_list_bg .news_content {
  background: #fff;
  padding: 20px;
}
.category_news_list_bg .news_content p {
  background: #fff;
  line-height: 2;
  margin-bottom: 5px;
}
#category_news_list h2.title {
  position: absolute;
  top: -73px;
  left: 38%;
}
.news_title {
  word-wrap: break-word;
  padding-right: 10px;
}
.accordion p {
  cursor: pointer;
  margin: 0;
}
.accordion ul {
  display: none;
  padding: 0;
}
.accordion > li {
  background: #d7d6d6;
  margin-bottom: 20px;
}

/* event,news ページャー */
.cotegory_pager {
  text-align: center;
  margin-top: 35px;
  position: relative;
}
.cotegory_pager ul.page-numbers {
  padding: 0;
  display: inline;
}
ul.page-numbers li {
  list-style: none;
  display: inline-block;
  font-size: 20px;
  vertical-align: middle;
  margin: 0 10px;
}
ul.page-numbers li a {
  color: #7d7d7d;
}
ul.page-numbers li a:hover {
  text-decoration: none;
}
ul.page-numbers li .current {
  background: #ff0198;
  color: #fff;
  padding: 4px 13px;
}
a.prev.page-numbers {
  position: absolute;
  left: 0;
  top: 0;
}
a.next.page-numbers {
  position: absolute;
  right: 0;
  top: 0;
}

/* event 詳細 */
.post-template-default .bg_butterfly {
  top: 80px;
  right: -30px;
}
.post-template-default .bg_leaf_11 {
  position: absolute;
  top: 393px;
  left: -35px;
  z-index: -1;
}
.post-template-default .bg_leaf_12 {
  position: absolute;
  top: 600px;
  right: -73px;
}
h2.title.title_event {
  top: 40px;
}
.single-post .sub-page-contents,
.single-shop .sub-page-contents,
.single-food .sub-page-contents {
  padding-top: 50px;
}
.event_detail {
  background: #fff;
  padding: 40px;
}
.event_detail p.deta {
  color: #6f6f6f;
  font-family: Lato, sans-serif;
  font-size: 18px;
}
.event_detail h3.event_title {
  margin-bottom: 25px;
  background: transparent !important;
  color: #333 !important;
  font-size: 24px !important;
  text-align: left !important;
}
.event_detail p {
  line-height: 2;
}
.event_detail img {
  margin-bottom: 15px;
}
.event_detail_pager {
  margin-top: 50px;
}
.event_detail_pager .next > a:after {
  content: url(img/pager_next.png);
  margin-left: 5px;
  vertical-align: middle;
}
.event_detail_pager .col-xs-4.text-center > a:before {
  content: url(img/pager_next.png);
  margin-right: 5px;
  vertical-align: middle;
}
.event_detail_pager .next > a {
  float: right;
  color: #626262;
}
.event_detail_pager .next > a:hover,
.event_detail_pager .previous > a:hover,
.event_detail_pager .col-xs-4.text-center > a:hover {
  text-decoration: none;
  opacity: 0.7;
}
.event_detail_pager .previous > a,
.event_detail_pager .col-xs-4.text-center > a {
  color: #626262;
}
.previous:before {
  content: url(img/pager_previous.png);
  margin-right: 5px;
  vertical-align: middle;
}

/* news 詳細 */
h2.title.title_news {
  top: 50px;
}
.news_detail {
  background: #fff;
  padding: 70px 50px 50px;
}
.news_detail .deta {
  color: #6f6f6f;
  font-family: Lato, sans-serif;
  font-size: 17px;
  margin: 0;
}
.news_detail h3.news_title {
  margin-top: 5px;
  margin-bottom: 0;
}
.news_detail .title_bg {
  background: #d7d6d6;
  padding: 20px;
  margin-bottom: 30px;
}
.news_detail .news_content {
  padding: 0 20px;
}
.news_top {
  margin-top: 50px;
}
.news_top > a {
  color: #626262;
}
.news_top > a:hover {
  text-decoration: none;
}
.news_top > a:before {
  content: url(img/pager_next.png);
  margin-right: 8px;
  vertical-align: middle;
}
@media (max-width: 767px) {
  h2.title.title_news {
    top: 40px;
  }
  .news_detail .title_bg {
    padding: 40px 20px 20px;
  }
}

/* ニジゲンノモリとは？ */
.page-id-18 .sub-page-contents {
  padding-top: 50px;
}
.page-id-18 img.bg_butterfly_2 {
  position: absolute;
  right: 0;
  top: 40px;
}
.page-id-18 img.bg_leaf_2 {
  position: absolute;
  top: 255px;
  left: 145px;
  z-index: 1;
}
.page-id-18 img.bg_leaf_3 {
  position: absolute;
  top: 608px;
  right: 70px;
}
.page-id-18 img.bg_butterfly_3 {
  position: absolute;
  top: 1030px;
  left: 109px;
  z-index: 1;
}
#about h2.title {
  position: relative;
  top: 45px;
}
#about h3 {
  text-align: center;
  margin: 55px 0 30px;
}
#about .about_content {
  background: #fff;
  padding: 40px;
}
p.well {
  background: #fff;
  border: #373a49 1px solid;
  border-radius: 0;
  padding: 15px;
}

/* 利用規約、プライバシーポリシー、法令に基づく表記 */
.entry__content.simple_single {
  padding: 120px 20px 0;
}
.entry__content.simple_single h2 {
  margin-bottom: 40px;
}
.entry__content.simple_single h3 {
  font-size: 15px;
  margin-top: 45px;
}
.entry__content.simple_single h4 {
  font-size: 15px;
  margin-top: 25px;
}

/* 交通アクセス */
#car_parking {
  width: 100%;
  height: 500px;
}
.shuttle_map {
  width: 100%;
  height: 400px;
}
.mapStyle {
  width: 100%;
  height: 400px;
}
#access h2.title {
  top: 65px;
}
.access_content h3 {
  font-size: 18px;
  margin: 0 0 10px;
}
.access_content {
  background: #fff;
  padding: 90px 50px 40px;
}
.access_item {
  padding: 30px 30px 20px;
  border-bottom: 1px solid #e8e8e8;
  border-left: 1px solid #e8e8e8;
  border-top: 1px solid #e8e8e8;
}
.access_item:last-child {
  border-right: 1px solid #e8e8e8;
}
.access_item img {
  margin-right: 10px;
}
.access_item p {
  margin-left: 45px;
}
#access .row.fixBox.guide_detail {
  margin: 0;
}
#access .guide_item {
  margin-top: 30px;
  border-top: 1px solid #e8e8e8;
}
#access .guide_item .row:nth-of-type(2) {
  border-left: none;
  border-right: none;
}
#access .guide_item .col-md-6:first-child {
  border-right: 1px solid #e8e8e8;
}
#access a {
  font-weight: bold;
}
#access .guide_item .col-md-6,
#access .guide_item .col-xs-12 {
  padding: 20px;
}
.access_content > .row {
  margin: 0 0 30px;
}
#access .col-md-5 a {
  text-decoration: underline;
}
ul.nav.nav-pills.nav-justified li.changeMap:last-child {
  border-right: 1px solid #e8e8e8;
}
ul.nav.nav-pills.nav-justified li.changeMap a {
  border-radius: 0;
  font-size: 18px;
  font-weight: bold;
  padding: 15px;
  color: #4b4b4b;
  border-top: 1px solid #e8e8e8;
  border-left: 1px solid #e8e8e8;
}
ul.nav.nav-pills.nav-justified li.changeMap.active a {
  background: #ff0198;
  color: #fff;
  position: relative;
}
ul.nav.nav-pills.nav-justified li.changeMap.active a:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -13px;
  border: 13px solid transparent;
  border-top: 13px solid #ff0198;
  z-index: 1;
}
ul.nav.nav-pills.nav-justified li.changeMap a img {
  margin-right: 10px;
}
.tab-content h3 {
  margin-bottom: 25px;
}
.tab-content h3 img {
  margin-right: 10px;
  vertical-align: bottom;
}
.access_tab > .tab-content {
  padding: 30px;
  border: 1px solid #e8e8e8;
}
.gm-style-iw {
  left: 25px !important;
}
.route {
  margin: 40px 0;
}
a.shuttleLink {
  color: #fff;
  background: #ff0198;
  padding: 30px 0;
  width: 100%;
  display: block;
  margin-top: 10px;
  font-size: 25px;
  font-weight: bold;
  text-decoration: none;
  letter-spacing: 0.1em;
}
a.shuttleLink:hover {
  opacity: 0.8;
  color: #fff;
}
#map {
  width: 100%;
  height: 333px;
  margin-bottom: 10px;
}
.map-widget {
  box-shadow: rgba(0, 0, 0, 0.298039) 0px 1px 4px -1px;
  background-color: white;
  font-size: 12.5px;
  margin: 15px;
  padding: 6px 10px;
  border-radius: 2px;
}
ul.nav.nav-pills.nav-stacked a {
  color: #333;
}
.nav-pills > li.active > a,
.nav-pills > li.active > a:focus,
.nav-pills > li.active > a:hover {
  background-color: #eee;
}
.nav-pills > li > a {
  border-radius: 2px;
}

/* よくある質問 */
h2.title.faq_title {
  top: 50px;
}
.faq_content {
  background: #fff;
  padding: 60px 40px 40px;
  margin-top: 20px;
}
.faq_nav {
  border-left: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
  border-top: 1px solid #e8e8e8;
}
.faq_nav .row {
  margin: 0;
}
.faq_nav .row + p {
  display: none;
}
.faq_nav .row:first-of-type {
  border-bottom: 1px solid #e8e8e8;
}
.faq_nav .col-md-6:nth-of-type(odd) {
  border-right: 1px solid #e8e8e8;
}
.faq_nav .col-md-6 a {
  display: block;
  padding: 20px 50px;
  color: #000;
}
.faq_nav .col-md-6 a:hover {
  text-decoration: none;
}
.faq_nav .col-md-6 a:before {
  content: url(img/pager_next.png);
  position: absolute;
  left: 35px;
  transform: rotate(90deg);
}
.faq_item_wrapper {
  border: 1px solid #e8e8e8;
}
.faq_item {
  border-bottom: 1px solid #e8e8e8;
  padding: 40px 40px 70px;
}
.faq_content h3 {
  padding: 10px 47px;
  background-image: url(img/faq_h.png);
  background-repeat: no-repeat;
  background-position: left 12px top 15px;
}
#faq_overall + p {
  display: none;
}
ul.faq_list.accordion {
  padding: 0;
}
ul.faq_list.accordion li {
  list-style: none;
  position: relative;
}
ul.faq_list.accordion li ul {
  background: #fff;
  border-left: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
  border-bottom: 1px solid #e8e8e8;
  padding: 20px 30px 10px 50px;
  background-image: url(img/a.png);
  background-repeat: no-repeat;
  background-position: left 12px top 20px;
}
ul.faq_list.accordion li p {
  padding: 10px 50px;
  background-color: #f6f5f5;
  background-image: url(img/q.png);
  border: 1px solid #e8e8e8;
  background-repeat: no-repeat;
  background-position: left 12px top 9px;
}
ul.faq_list.accordion li p:after {
  content: url(img/accordion_open3.png);
  position: absolute;
  right: 20px;
  top: 10px;
}
ul.faq_list.accordion li ul li p {
  padding: 0;
  margin-bottom: 10px;
  background: #fff;
  border: none;
}
ul.faq_list.accordion li ul li p:after {
  content: "";
}

/* アトラクション一覧 */
#attraction h2.title {
  position: relative;
  top: 55px;
}
.attraction_content {
  background: #fff;
  padding: 25px 40px 40px;
  margin-bottom: 85px;
  position: relative;
}
.attraction_content h3 {
  color: #fff;
  text-align: center;
  padding: 18px 0;
  font-size: 30px;
  letter-spacing: 0.1em;
}
.attraction_content h3.dqi {
  background: #387db6;
  font-size: 27px;
}
.attraction_content h3.godzilla {
  background: #c30d23;
}
.attraction_content h3.noon {
  background: #4eb2d1;
}
.attraction_content h3.special {
  background: #ec6c00;
}
.attraction_content h3.spy_family,
.limited-content .spy_family h3 {
  background: #5d7975;
}
.attraction_content h3.monsterhunter,
.limited-content .monsterhunter h3 {
  background: #b99b50;
}
.attraction_content h3.bleach {
  background: #000;
}
.attraction_content h3.kimetsu {
  background: #97d2a0;
}
.attraction_content h3.shingeki {
  background: #294023;
}

.attraction_item .col-md-7 p.text-center.special_btn {
  bottom: initial !important;
}
.attraction_content .line-15 {
  line-height: 1.5;
}
.attraction_content h3.night {
  background: #241a53;
}
.attraction_content h4 {
  text-align: center;
  font-size: 22px;
  margin: 40px 0;
}
.attraction_content h5 {
  font-size: 20px;
}
.attraction_summary {
  text-align: center;
  font-size: 15.5px;
  letter-spacing: 0.1em;
  position: relative;
}
.attraction_item {
  border: 1px solid #e8e8e8;
  padding: 20px;
  margin-bottom: 35px;
}
.attraction_item:last-child {
  margin-bottom: 0;
}
.attraction_detail {
  margin-top: 40px;
}
.attraction_item p a.more,
#plan .item-list .item p a.more {
  background: #ff0198;
  color: #fff;
  padding: 6px 62px;
  text-decoration: none;
  font-weight: bold;
  display: inline-block;
}
.attraction_item .col-md-7 {
  min-height: 220px;
  position: relative;
}
.attraction_item .col-md-7 p.text-center {
  /* position: absolute; */
  bottom: 0;
  left: 28%;
  margin-bottom: 0;
}
#attraction .shinchan1 {
  position: absolute;
  right: -115px;
  top: -170px;
}
#attraction .shinchan2 {
  position: absolute;
  top: -160px;
  left: -90px;
}
#attraction .hinotori1 {
  position: absolute;
  top: -130px;
  left: -60px;
}
#attraction .hinotori2 {
  position: absolute;
  top: 0px;
  right: 10px;
}
#attraction .bg_leaf_4 {
  position: absolute;
  top: 475px;
  left: 0px;
  z-index: 1;
}
#attraction .bg_leaf_1 {
  left: 53px;
  top: 66px;
}
#attraction .bg_leaf_5 {
  position: absolute;
  top: 1676px;
  right: -85px;
}
#attraction .bg_leaf_6 {
  position: absolute;
  bottom: 40px;
  left: 170px;
  z-index: 1;
}
#attraction .bg_leaf_13 {
  position: absolute;
  top: 1100px;
  right: -115px;
  z-index: 1;
}
.link-box:hover {
  opacity: 0.8;
}
@media screen and (max-width: 500px) {
  .attraction_content h3.spy_family {
    font-size: 16px;
  }
}

/* アトラクション 詳細ページ */
.attraction a.gray_btn.link {
  margin-bottom: 25px;
}
.guide_hinotori {
  position: relative;
}
#hinotori_map {
  width: 100%;
  height: 640px;
}
#hinotori_map .leaflet-clickable {
  cursor: pointer !important;
}
#hinotori_map .leaflet-popup-content p {
  color: #333333;
  text-decoration: none;
}
#hinotori .balloon h4 {
  font-size: 18px;
  border-bottom: 1px solid #333;
  padding-bottom: 8px;
  margin-top: 5px;
}
.balloon {
  position: relative;
  display: inline-block;
}
.balloon.hinotori1_balloon:before {
  content: "";
  position: absolute;
  top: 7%;
  left: -42px;
  margin-top: -15px;
  border: 10px solid transparent;
  border-right: 12px solid #ffffff;
}
.balloon.hinotori2_balloon:before {
  content: "";
  position: absolute;
  top: 13%;
  left: -45px;
  margin-top: -15px;
  border: 11px solid transparent;
  border-right: 15px solid #ffffff;
}
.balloon.hinotori3_balloon:before {
  content: "";
  position: absolute;
  top: 45%;
  left: -45px;
  margin-top: -15px;
  border: 11px solid transparent;
  border-right: 15px solid #ffffff;
}
.balloon.hinotori4_balloon:before {
  content: "";
  position: absolute;
  top: 41%;
  left: -44px;
  margin-top: -15px;
  border: 10px solid transparent;
  border-right: 15px solid #ffffff;
}

.balloon.default_balloon:before {
  content: "";
  position: absolute;
  top: 104%;
  left: 50%;
  margin-left: -15px;
  border: 11px solid transparent;
  border-top: 15px solid #ffffff;
}
.balloon.hinotori9_balloon:before {
  content: "";
  position: absolute;
  top: 46%;
  left: -45px;
  margin-top: -15px;
  border: 11px solid transparent;
  border-right: 15px solid #ffffff;
}
.leaflet-popup-tip-container {
  display: none;
}
#hinotori .bg_leaf_5 {
  position: absolute;
  top: 1800px;
  right: 100px;
  z-index: 1;
}
#hinotori .bg_leaf_6_1 {
  position: absolute;
  top: 1000px;
  left: 150px;
  z-index: 1;
  transform: rotate(-10deg);
}
#hinotori .bg_leaf_6_2 {
  position: absolute;
  top: 2150px;
  left: 100px;
  z-index: 1;
  transform: rotate(-10deg);
}
.guide_hinotori ul.icon_list li {
  margin: 0 0px 0 10px;
}
.guide_hinotori ul.icon_list.icon_l {
  padding: 50px 0 0 18px;
}
.guide_hinotori .bg_leaf_9 {
  position: absolute;
  top: 2000px;
  left: 200px;
  z-index: 1;
}
#hinotori .bg_leaf_12 {
  position: absolute;
  top: 1100px;
  left: 300px;
  z-index: 1;
}
.guide_hinotori .bg_leaf_14_1 {
  position: absolute;
  top: -150px;
  right: 100px;
  z-index: 1;
}
.guide_hinotori .bg_leaf_14_2 {
  position: absolute;
  top: 1750px;
  right: 150px;
  z-index: 1;
}
.guide_hinotori .bg_leaf_15_1 {
  position: absolute;
  top: 40px;
  right: 250px;
  z-index: 1;
}
.guide_hinotori .bg_leaf_15_2 {
  position: absolute;
  top: 1900px;
  left: 280px;
  z-index: 1;
}
.guide_hinotori .bg_leaf_16 {
  position: absolute;
  top: -50px;
  left: 250px;
  z-index: 1;
}
#hinotori .attraction_hinotori1 {
  position: absolute;
  top: 180px;
  left: 0px;
  z-index: 1;
}
#hinotori .attraction_hinotori2.pc_only {
  position: absolute;
  top: 1850px;
  left: 100px;
  z-index: 1;
}
#hinotori .attraction_hinotori3 {
  position: absolute;
  top: 950px;
  right: 100px;
  z-index: 1;
}
#hinotori {
  margin-top: 15px;
}
#hinotori h2.title,
#shinchan h2.title {
  top: 25px;
}
#hinotori h3 {
  color: #fff;
  text-align: center;
  padding: 25px;
  letter-spacing: 4px;
  font-size: 36px;
}
#hinotori h4 {
  text-align: center;
  font-size: 23px;
  letter-spacing: 2px;
}
#hinotori .container + p {
  display: none;
}
#hinotori .coursemap h3 {
  text-align: left;
  padding: 10px 0px 25px;
  font-size: 30px;
}
.attraction_info {
  background-color: #fff;
  padding: 40px 100px;
}
.attraction_info_inner {
  margin: auto;
  display: block;
  padding-left: 100px;
  background-image: url(img/attraction_info.png);
  background-repeat: no-repeat;
  background-position: center left 20px;
}
.attraction_info_inner p {
  margin-bottom: 0;
}
.attraction_info_inner + p {
  display: none;
}
.hinotori_content {
  padding: 50px 0px 100px;
  background: #0d0923;
}
.hinotori_bg_1 {
  background: #241a53;
  padding-bottom: 25px;
  padding-top: 30px;
}
.video {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.video iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.hinotori_item {
  background: #120d2e;
  padding: 20px 80px 40px;
  color: #fff;
}
.hinotori_course {
  margin-top: 40px;
  background-color: #1a123d;
  border: 1px solid #493d7c;
  padding: 0 30px 30px;
}
.shinchan_item {
  padding: 20px 80px 1px;
  position: relative;
}
.shinchan_1_bg {
  position: absolute;
  left: -117px;
  top: -60px;
  pointer-events: none;
}
#shinchan .howto h3 {
  text-align: left;
  letter-spacing: 1px;
  position: relative;
  background: #e7141b;
  padding: 10px 5px 10px 55px;
  font-size: 20px;
  color: #fff;
  border-radius: 30px;
}
#shinchan .howto h3:before {
  content: "";
  display: inline-block;
  position: absolute;
  padding: 0em;
  color: #e7141b;
  background: #ffffff;
  font-weight: normal;
  width: 40px;
  text-align: center;
  height: 40px;
  line-height: 50px;
  left: 3px;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  border-radius: 50%;
}
#shinchan .howto h3.howto1:before {
  content: url(img/1.png);
}
#shinchan .howto h3.howto2:before {
  content: url(img/2.png);
}
#shinchan .howto h3.howto3:before {
  content: url(img/3.png);
}
#shinchan .howto h3.howto4:before {
  content: url(img/4.png);
}
#shinchan .howto h3.howto5:before {
  content: url(img/5.png);
}
#shinchan .howto h3.howto6:before {
  content: url(img/6.png);
}
#shinchan .howto h3.howto7:before {
  content: url(img/7.png);
}
.guide_content.howto .row p {
  text-align: left;
}
.guide_content.howto .row p img {
  text-align: center;
  margin: auto;
  display: block;
  padding: 0 10px;
}
.top_img {
  margin: 40px auto 0;
  padding: 30px;
  background: #b7edfe;
}
.hinotori_item .well {
  margin-top: 40px;
  background-color: #1a123d;
  border: 1px solid #493d7c;
}
.team {
  background: #fff;
  margin-top: 70px;
}
#hinotori .team h3 {
  background: #584f86;
  font-size: 28px;
}
#hinotori .bx-wrapper {
  margin: 0;
  background: #0d0923;
  border-color: #0d0923 !important;
  box-shadow: none;
}
#hinotori .bx-wrapper:nth-of-type(2) {
  background: #fff;
  border-color: #fff !important;
}
.team .small {
  line-height: 1.5;
  padding: 0;
  font-size: 79%;
}
.team ul.accordion li {
  list-style: none;
}
.team ul.accordion {
  padding: 0;
}
.team ul.accordion li ul {
  display: none;
}
.team .row {
  padding: 10px 10px 25px;
  margin: 0;
  color: #000;
}
.team .row .col-md-6 .row {
  background: #d7d0f6;
  margin-left: 0;
  margin-right: 0;
  border: 1px solid #e8e8e8;
  padding: 15px;
}
.team .row .col-md-6 .row .col-sm-5 {
  padding-left: 0;
}
.team .comment {
  padding: 10px 20px;
  background: #e2dff2;
  margin: 0;
}
.team .comment:after {
  content: url(img/accordion_open3.png);
  position: absolute;
  right: 40px;
}
.team .comment_content {
  border: 1px solid #e8e8e8;
  background: #f0eefb;
  padding: 18px;
}
.guide {
  padding-top: 15px;
}
.guide h2 {
  top: 50px;
}
.guide_inner h4 {
  font-size: 17px;
}
.guide_content {
  background: #fff;
  padding: 60px 40px 25px;
  text-align: center;
}
.guide_item:first-of-type {
  background: #f6f4f5;
  margin-bottom: 35px;
}
.guide_item {
  border-bottom: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
  border-left: 1px solid #e8e8e8;
}
.guide_item .row {
  margin: 0;
  display: flex;
}
.guide_item .row:nth-of-type(2) {
  border: 1px solid #e8e8e8;
}
.guide_item .row:nth-of-type(2) .col-md-4 {
  border: none;
}
.guide_item .row + p,
.guide_item .row .col-md-4 + p {
  display: none;
}
.guide_item .row .col-md-4 {
  border: 1px solid #e8e8e8;
  padding: 0;
}
.guide_item .row .col-md-8 {
  display: table;
  padding: 0;
}
.guide_item h5 {
  font-size: 15px;
}
.guide .col-md-6.fixItem,
.guide .col-md-6.fixItem .col-xs-12 {
  padding: 0;
}
.guide .col-md-6.fixItem .col-xs-12 {
  border-top: 1px solid #e8e8e8;
}
.guide .col-md-6.fixItem:first-child {
  border-right: 1px solid #e8e8e8;
}
.guide_inner {
  padding: 15px 15px 15px 50px;
}
.guide_inner h4 img {
  margin: 0 10px 0 -35px;
}
.guide_inner h5 {
  font-size: 17px;
  line-height: 1.5;
}
.guide_inner a.pink_btn {
  width: 100%;
}
.guide_inner a.pink_btn img {
  vertical-align: sub;
  margin-right: 5px;
}
p.twitter_box {
  border: 1px solid #e8e8e8;
}
p.twitter_box iframe {
  max-height: 417px;
}
.attraction a.gray_btn {
  margin: 30px auto 50px;
  width: 50%;
  padding: 15px;
  font-weight: bold;
}
ul.caution.accordion {
  padding: 0;
  text-align: left;
  border: 1px solid #e8e8e8;
  margin: 0;
}
ul.caution.accordion li {
  list-style: none;
  background: #fff;
}
ul.caution.accordion p {
  padding: 10px;
  border-bottom: 1px solid #e8e8e8;
  position: relative;
  font-size: 17px;
}
ul.caution.accordion p:after {
  content: url(img/accordion_open3.png);
  right: 15px;
  position: absolute;
}
ul.caution.accordion p img {
  margin-right: 5px;
}
ul.caution.accordion > li {
  margin: 0;
}
ul.caution.accordion li ul li ul {
  display: block;
  padding: 15px 20px 15px 40px;
}
ul.caution.accordion li ul li ul li {
  list-style: disc;
}
ul.guide_btn {
  padding: 0;
  margin: 30px auto 10px;
}
ul.guide_btn li {
  list-style: none;
  display: inline-block;
  background: #8b8b8b;
  color: #fff;
  font-weight: bold;
  width: 20%;
}
ul.guide_btn li:hover {
  opacity: 0.8;
  transition: all 0.4s ease !important;
}
ul.guide_btn li a:hover {
  text-decoration: none;
}
ul.guide_btn li a {
  color: #fff;
  padding: 15px 20px;
  display: inline-block;
}
ul.guide_btn li a img {
  margin-right: 10px;
}
ul.icon_list {
  padding: 10px 0 0;
  display: table-cell;
  vertical-align: middle;
}
ul.icon_list li {
  display: inline-block;
  margin: 0 10px;
}
.guide_inner.last_inner {
  padding: 15px;
}
#shinchan {
  margin-top: 30px;
}
.shinchan_bg {
  background: #d0f3fe;
  padding-top: 40px;
}
.shinchan_item,
.shinchan_slider .bx-wrapper {
  background: #b7edfe;
  border-color: #b7edfe !important;
  box-shadow: none;
}
#shinchan h3 {
  text-align: center;
  padding: 10px 0 5px;
  letter-spacing: 4px;
  font-size: 40px;
}
#shinchan .link-box img + p {
  display: none;
}
#shinchan .link-box h4 {
  background: #fff;
  text-align: center;
  margin: 0;
  padding: 15px 0;
  font-size: 15px;
}
@media screen and (min-width: 451px) and (max-width: 991px) {
  #shinchan .link-box h4 {
    width: 346px;
    margin: 0 auto;
  }
}
#shinchan .link-box h4 a {
  color: #000;
}
#shinchan .link-box h4 a:hover {
  text-decoration: none;
}
#shinchan .bg_leaf_5_1 {
  position: absolute;
  top: 3460px;
  left: 90px;
  z-index: 1;
}
#shinchan .bg_leaf_5_2 {
  position: absolute;
  top: 1700px;
  left: 100px;
  z-index: 1;
}
#shinchan .bg_leaf_6_1 {
  position: absolute;
  top: 953px;
  right: 110px;
  z-index: 1;
  transform: rotate(-15deg);
}
#shinchan .bg_leaf_6_2 {
  position: absolute;
  top: 2312px;
  right: 70px;
  z-index: 1;
  transform: rotate(-15deg);
}
#shinchan .bg_leaf_9 {
  position: absolute;
  top: 3950px;
  left: 100px;
  z-index: 1;
}
#shinchan .bg_leaf_10 {
  position: absolute;
  top: 3873px;
  right: 85px;
  z-index: 1;
}
#shinchan .bg_leaf_12 {
  position: absolute;
  top: 300px;
  right: 50px;
  z-index: 1;
}
#shinchan .bg_leaf_14 {
  position: absolute;
  top: 3257px;
  right: 60px;
  z-index: 1;
}
#shinchan .shinchan_2_bg {
  position: absolute;
  top: -87px;
  left: -70px;
  z-index: 1;
  pointer-events: none;
}
#kantam .shinchan_3_bg {
  position: absolute;
  top: -75px;
  left: -70px;
  z-index: 1;
}
#kantam .bg_leaf_5 {
  position: absolute;
  top: 1550px;
  left: 320px;
  z-index: 1;
}
#kantam .bg_leaf_6_1 {
  position: absolute;
  top: 990px;
  right: 210px;
  z-index: 1;
  transform: rotate(-15deg);
}
#kantam .bg_leaf_6_2 {
  position: absolute;
  top: 2150px;
  right: 60px;
  z-index: 1;
  transform: rotate(-15deg);
}
#kantam .bg_leaf_9 {
  position: absolute;
  top: 3875px;
  left: 230px;
  z-index: 1;
}
#kantam .bg_leaf_12 {
  position: absolute;
  top: 1080px;
  right: 150px;
  z-index: 1;
}
#kantam .bg_leaf_14 {
  position: absolute;
  top: 3330px;
  right: 50px;
  z-index: 1;
}
#kantam .bg_leaf_15 {
  position: absolute;
  top: 3300px;
  left: 103px;
  z-index: 1;
}
#ar {
  position: relative;
}
#ar .attraction_shinchan2 {
  position: absolute;
  top: -25px;
  left: -85px;
  z-index: 1;
}
#ar .bg_leaf_5_1 {
  position: absolute;
  top: 2710px;
  left: 250px;
  z-index: 1;
}
#ar .bg_leaf_5_2 {
  position: absolute;
  top: 4500px;
  left: 200px;
  z-index: 1;
}
#ar .bg_leaf_6_1 {
  position: absolute;
  top: 660px;
  right: 140px;
  z-index: 1;
  transform: rotate(-15deg);
}
#ar .bg_leaf_6_2 {
  position: absolute;
  top: 2850px;
  right: 180px;
  z-index: 1;
  transform: rotate(-15deg);
}
#ar .bg_leaf_9 {
  position: absolute;
  top: 5500px;
  left: 280px;
  z-index: 1;
}
#ar .bg_leaf_12 {
  position: absolute;
  top: 770px;
  right: 100px;
  z-index: 1;
}
#ar .bg_leaf_14 {
  position: absolute;
  top: 4350px;
  right: 150px;
  z-index: 1;
}
#ar .bg_leaf_15 {
  position: absolute;
  top: 5440px;
  left: 400px;
  z-index: 1;
}

.application {
  padding-top: 30px;
}
.application a img {
  margin: 15px;
}
.guide_content.howto {
  margin-bottom: 80px;
}
.guide_content.howto h2 {
  position: absolute;
  margin: auto;
  top: -30px;
  display: block;
  text-align: center;
  left: 40%;
}
table.open_table th {
  background: #e4e4e4;
}
table.open_table tr td:first-child {
  width: 190px;
}
table.open_table tr td:nth-of-type(2) {
  text-align: center;
}
table.table.table-bordered.open_table th,
table.table.table-bordered.open_table td {
  padding: 10px;
}
.course_guide_content {
  background: #fff;
  padding: 30px;
  margin-bottom: 30px;
  position: relative;
}
.course_guide_content p {
  margin-bottom: 0;
}
#shinchan .course_guide_content h2.title {
  top: 15px;
}
#shinchan .course_guide_content h3 {
  text-align: left;
  border-bottom: 2px solid #ff0198;
  padding-bottom: 12px;
  font-size: 27px;
  margin-bottom: 20px;
  margin-top: 65px;
}
#shinchan .course_guide_content.text-center h4 {
  position: relative;
  display: inline-block;
  padding: 0px 220px;
  font-size: 27px;
  letter-spacing: 0.2em;
  margin-top: 0;
}
#shinchan .course_guide_content.text-center h4:before,
#shinchan .course_guide_content.text-center h4:after {
  content: "";
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 195px;
  height: 1px;
  background-color: black;
}
#shinchan .course_guide_content.text-center h4:before {
  left: 0;
}
#shinchan .course_guide_content.text-center h4:after {
  right: 0;
}
.difficulty {
  position: absolute;
  background: #ff0198;
  color: #fff;
  padding: 10px 30px;
  font-size: 20px;
  font-weight: bold;
  left: 0;
  width: 245px;
}
.course_guide_content i.fas.fa-star:first-of-type {
  margin-left: 15px;
}
.course_guide_content i.fas.fa-star {
  margin-left: 5px;
}
ul.limit {
  list-style: none;
  font-weight: bold;
  font-size: 18px;
  padding: 0;
  margin-bottom: 25px;
}
ul.limit li {
  border-bottom: 1px solid #bfbfbf;
  padding-bottom: 12px;
  padding-left: 50px;
  padding-top: 12px;
  background-repeat: no-repeat;
}
ul.limit li:nth-of-type(1) {
  background-image: url(img/icon_clock.png);
  background-position: 10px 7px;
}
ul.limit li:nth-of-type(2) {
  background-image: url(img/icon_scale.png);
  background-position: 17px 7px;
}
ul.limit li:nth-of-type(3) {
  background-image: url(img/icon_people.png);
  background-position: 16px 7px;
}
.new {
  position: relative;
  top: 65px;
  color: #f08300;
  font-size: 17px;
  font-weight: bold;
  border-radius: 6px;
  padding: 0px 9px;
  border: 3px solid #f08300;
}
.course_guide .pink_btn {
  font-size: 22px;
  font-weight: bold;
  padding: 20px 0;
  letter-spacing: 0.1em;
  width: 100%;
  margin: 50px auto;
}

/* ショップ＆フード */

#shop h2.title {
  top: 65px;
}
.photo_container.fade {
  background: #000;
  margin: 0 auto;
  overflow: hidden;
  position: relative;
  opacity: 1;
}
.photo_container.fade * {
  -moz-transition: all 0.5s ease;
  -ms-transition: all 0.5s ease;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}
.photo_container.fade img {
  margin: 0;
  width: 100%;
}
.photo_container.fade.hover .photo img,
.photo_container.fade:hover .photo img {
  margin: 0;
  opacity: 0.5;
}
.photo_container.fade .description {
  width: 100%;
  color: #fff;
  left: 0;
  opacity: 0;
  position: absolute;
  -moz-transform: scale(0.95);
  -ms-transform: scale(0.95);
  -webkit-transform: scale(0.95);
  text-align: center;
  top: 50%;
  margin-top: -20%;
  transform: scale(0.95);
}
.photo_container.fade.hover .description,
.photo_container.fade:hover .description {
  opacity: 1;
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -webkit-transform: scale(1);
  transform: scale(1);
}
.photo_container.fade .description p {
  font-size: 19px;
  margin: 0;
  line-height: 1.7em;
  font-weight: bold;
}
.description + p {
  display: none;
}
#shop table th {
  background: #d2d2d2;
}
#shop table th,
#shop table td {
  padding: 1.5rem;
}
#shop #home tr td:nth-of-type(1) {
  font-weight: bold;
}
#shop h3,
#plan h3 {
  font-size: 21px;
  letter-spacing: 4px;
  padding: 15px 20px;
  color: #fff;
  margin-top: 2.5rem;
}
#shop ul.nav.nav-pills.nav-justified li.active a {
  background: #ff0198;
  color: #fff;
  position: relative;
  border-color: #ff0198;
}
ul.nav.nav-pills.nav-justified li.active a:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -13px;
  border: 13px solid transparent;
  border-top: 13px solid #ff0198;
  z-index: 1;
}
#shop ul.nav.nav-pills.nav-justified li a {
  border-radius: 0;
  padding: 1.5rem 0;
  font-size: 18px;
  font-weight: bold;
  color: #555;
  border: 1px solid #e8e8e8;
}
#shop ul.nav.nav-pills.nav-justified li a i {
  margin-right: 1rem;
}
.item-list {
  display: flex;
  flex-wrap: wrap;
}
.item-list .item {
  border: 1px solid #e8e8e8;
  height: 100%;
  box-shadow: 2px 2px 5px #e8e8e8;
  padding: 2rem;
}
.item-list .col-md-6 {
  margin-bottom: 3rem;
}
.item-list .item-body h4 {
  border-bottom: 1.5px solid #ff0198;
  line-height: 1.6em;
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
}
.item-body p {
  position: relative;
  margin-bottom: 2rem;
  padding-bottom: 2rem;
}
.item-body p:after {
  content: "";
  background: #cccccc;
  height: 1px;
  width: 25%;
  position: absolute;
  bottom: 0;
  left: 0;
}
.shop_category,
.food_category {
  display: inline-block;
  padding: 0.5rem 1rem 0.3rem;
  margin-bottom: 0.5rem;
  margin-right: 0.5rem;
  position: relative;
  color: #fff;
  font-weight: bold;
  font-size: 0.65em;
  line-height: 1.5;
  border-radius: 2.5rem;
  font-family:
    "Roboto Condensed",
    "Original Yu Gothic",
    "Yu Gothic",
    YuGothic,
    Verdana,
    Meiryo,
    "M+ 1p",
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    sans-serif;
}
.shop_category:before {
  content: "\f07a";
  margin-right: 0.5rem;
  font-family: "Font Awesome 5 Free";
}
.shop_category.shop-shinchan {
  background: #4eb2d1;
}
.shop_category.shop-lawn {
  background: #4db848;
}
.shop_category.shop-tezuka {
  background: #241b54;
}
.shop_category.shop-morinoterrace {
  background: #ff0198;
}
.shop_category.shop-leaf {
  background: #da6d24;
}
.shop_category.shop-godzilla {
  background: #c30d23;
}
.shop_category.shop-ruida {
  background: #387db6;
}
.food_category:before {
  content: "\f2e7";
  margin-right: 0.5rem;
  font-family: "Font Awesome 5 Free";
}
.food_category.food-kichencar {
  background: #ffc107;
}
.food_category.food-morinoterrace {
  background: #ea5514;
}
.food_category.food-ramen {
  background: #ec0000;
}
.food_category.food-ruida {
  background: #387db6;
}
/* プラン */
#plan .item-list .item .col-md-6 {
  margin-bottom: 0;
}
#plan .item-list .item {
  margin-bottom: 2rem;
}
#plan .item-list .item p span {
  color: #ff0198;
}
#plan .item-list .row.item {
  position: relative;
}
#plan .item-list .item .item-number {
  position: absolute;
  color: white;
  font-size: 3rem;
  font-weight: bold;
  z-index: 1;
  margin: -2rem;
}
#plan .item-list .item .col-md-6 p.mt-15 {
  margin-top: 15%;
}
#plan .item-list .item p.text-center {
  margin-top: 2.5rem;
}
#plan h3 {
  width: 100%;
}
.sp-block {
  display: none;
}
#plan .item-list .item p.text-center a.more i {
  margin-right: 1rem;
}
@media (max-width: 768px) {
  .guide_item .row {
    display: block;
  }
  #plan .item-list .row.item {
    margin-left: 0;
    margin-right: 0;
  }
  .sp-none {
    display: none;
  }
  .sp-block {
    display: block;
  }
  .attraction_item p a.more,
  #plan .item-list .item p a.more {
    padding: 6px 10px;
  }
  #plan h3 {
    font-size: 19px;
  }
  #plan ul.nav.nav-pills.nav-justified li a {
    font-size: 14px;
  }
  #plan ul.nav.nav-pills.nav-justified {
    padding: 2rem 0 1rem;
  }
}
/* 料金＆営業案内 */
.price_open_hours #price,
#open_hours {
  background: #fff;
  padding: 70px 40px;
  margin-bottom: 75px;
  position: relative;
}
.price_open_hours table p {
  margin: 0;
}
.price_open_hours h2 {
  top: 50px;
}
.price_open_hours h3 {
  position: absolute;
  top: -55px;
  left: 40%;
}
.price_open_hours h4 {
  font-size: 25px;
  letter-spacing: 4px;
  padding: 15px 20px;
  color: #fff;
  margin-top: 50px;
}
.price_open_hours h5 {
  font-size: 18px;
  margin: 25px 0;
}
.price_open_hours table.small th {
  font-size: 85%;
  padding: 5px;
}
ul.list_box.column-3.gray.price,
ul.list_box.column-4.gray.price {
  margin: 0 auto;
  display: table;
  font-weight: bold;
}
ul.list_box.column-3.gray.price li,
ul.list_box.column-4.gray.price li {
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #fff;
  opacity: 1;
}

ul.list_box.column-4.gray.price li:hover {
  opacity: 0.7;
}

table.hinotori_table2 th:first-child,
table.food_table th:first-child {
  width: 250px;
}
table.hinotori_table2 th:nth-of-type(2),
table.hinotori_table2 th:nth-of-type(3) {
  width: 160px;
}
table.food_table th:nth-of-type(2) {
  width: 320px;
}
ul.list_box.column-2.gray {
  margin: 65px auto 85px;
  font-size: 140%;
}
ul.list_box.column-2 li:hover {
  opacity: 0.8;
}
ul.list_box.column-2.gray li a {
  padding: 3px;
}
ul.list_box {
  margin: 0 auto 50px;
  width: 100%;
  text-align: center;
  padding: 0;
}
ul.list_box li {
  display: inline-block;
}
ul.list_box li a {
  display: block;
}
ul.list_box li a:hover,
ul.list_box li a:focus,
ul.list_box li a:active {
  text-decoration: none;
}
ul.list_box.green li:first-of-type {
  background: #4db848;
  color: #fff;
  font-weight: bold;
  letter-spacing: 2px;
  border-right: none;
}
ul.list_box.green {
  display: table;
  font-size: 16px;
}
ul.list_box.green li {
  padding: 15px;
  border: 1px solid #ededed;
  display: table-cell;
}
ul.list_box.gray li {
  background: #8b8b8b;
  padding: 10px;
}
ul.list_box.gray li a {
  color: #fff;
}
ul.list_box.column-2 li {
  width: 48%;
  margin: 5px;
}
ul.list_box.column-4 li {
  width: 19.5%;
  margin-right: 5px;
}
ul.list_box.column-3 li {
  width: 31.6%;
  margin-right: 15px;
}
ul.list_box.column-3 li:last-child,
ul.list_box.column-4 li:last-child {
  margin: 0;
}
ul.list_box.column-3.gray {
  margin-bottom: 100px;
}
ul.list_box.column-3.green {
  margin-top: 80px;
}
ul.list_box.green {
  margin-top: 20px;
}
.pink_btn {
  display: block;
  text-align: center;
  background: #ff0198;
  width: 80%;
  margin: auto;
  color: #fff;
  padding: 15px;
  text-decoration: none;
}
.pink_btn:focus,
.pink_btn:active,
.pink_btn:hover {
  text-decoration: none;
  color: #fff;
}
.pink_btn:hover,
.gray_btn:hover {
  opacity: 0.8;
  text-decoration: none;
  color: #fff;
}
.gray_btn {
  background: #8b8b8b;
  color: #fff;
  text-decoration: none;
  margin: auto;
  display: block;
  text-align: center;
  width: 33%;
  padding: 10px;
}
.price_open_hours table {
  width: 100%;
  border-collapse: collapse;
  border: 2px solid #e8e8e8;
  font-size: medium;
}
.price_open_hours table.shinchan_table td:nth-of-type(1),
.price_open_hours table.shinchan_table td:nth-of-type(2),
.price_open_hours table.hinotori_table td:nth-of-type(1),
.price_open_hours table.hinotori_table td:nth-of-type(2) {
  width: 176px;
}
.price_open_hours table.shinchan_table td {
  width: 110px !important;
}
table.hinotori_table th:first-child {
  width: 367px;
}
.price_open_hours tr th,
.price_open_hours tr td {
  padding: 15px 15px;
  border: 2px solid #e8e8e8;
  vertical-align: middle;
}
.price_open_hours tr th {
  text-align: left;
  font-weight: bold;
  background: #f6f4f5;
}
.price_open_hours tr td.text-bold {
  font-weight: bold;
}
.price_open_hours thead th {
  background: #e4e5e6;
  border-right-color: #fff;
}
.price_open_hours thead th:last-child {
  border-right: #e4e5e6;
}
.price_open_hours .text-right {
  text-align: right;
}
.price_open_hours .sp_only tr th,
.price_open_hours .sp_only tr td {
  padding: 10px;
}
.price_open_hours .sp_only table {
  font-size: small;
}
.price_open_hours .sp_only tbody th {
  font-weight: normal;
}
.price_open_hours .sp_only tr td.text-bold {
  font-weight: bold;
}
.price_open_hours .sp_only thead th {
  font-weight: bold;
}
.price_open_hours .sp_only tbody th,
.price_open_hours .sp_only tbody td {
  text-align: center;
}
#price .img-margin-top {
  margin-top: 50px;
}
.sp_only .small-img {
  width: 80%;
}
.nowrap {
  white-space: nowrap;
}
.price_open_hours img.bg_leaf_5.pc_only {
  position: absolute;
  top: 2450px;
  z-index: 1;
}
.price_open_hours img.bg_leaf_6_1.pc_only {
  position: absolute;
  top: 295px;
  right: 59px;
  z-index: 1;
  transform: rotate(-15deg);
}
.price_open_hours img.bg_leaf_6_2.pc_only {
  position: absolute;
  top: 1000px;
  left: -45px;
  z-index: 1;
}
.price_open_hours img.bg_leaf_9.pc_only {
  position: absolute;
  top: 1500px;
  left: 10px;
  z-index: 1;
}
.price_open_hours img.bg_leaf_14_1.pc_only {
  position: absolute;
  top: 1000px;
  right: -125px;
  z-index: 1;
}
.price_open_hours img.bg_leaf_14_2.pc_only {
  position: absolute;
  top: 2000px;
  right: -100px;
  z-index: 1;
}
.price_open_hours img.bg_leaf_15.pc_only {
  position: absolute;
  top: 1860px;
  left: -70px;
  z-index: 1;
}
.price_open_hours img.bg_leaf_16.pc_only {
  position: absolute;
  top: 398px;
  left: -15px;
  z-index: 1;
}
.price_open_hours .news_list {
  max-height: 470px;
}
tr.border_dashed td {
  border-bottom: 3px dashed #e8e8e8;
}
@media (max-width: 768px) {
  ul.list_box.column-4 li {
    width: 50%;
    float: left;
    margin-right: 0;
    font-size: 12px;
    min-height: 62px;
  }

  ul.list_box.column-4.gray.price li {
    padding: 17px 5px;
  }
}
/* 会社概要 */
.entry__content.simple_single.company {
  padding-top: 75px;
}
.company_content {
  background: #fff;
  padding: 40px;
  margin-bottom: 30px;
}
.company_content {
  background: #fff;
  padding: 60px;
  margin-bottom: 30px;
  text-align: center;
}
.company_content table {
  margin: auto;
  text-align: left;
}
.company_content table td {
  padding: 7px 22px;
}
.company_content h2 {
  letter-spacing: 4px;
}
.entry__content.simple_single .company_content h3 {
  font-size: 20px;
  margin: 10px;
}
p.phone {
  font-size: 28px;
  font-weight: bold;
  margin: 20px;
  letter-spacing: 3px;
}
p.phone img {
  vertical-align: sub;
  margin-right: 10px;
}

/* お問い合わせ */
.entry__content.contact_contents #main {
  margin-bottom: 40px;
}
.entry__content.contact_contents {
  padding: 90px 110px 0;
}
.entry__content.contact_contents label,
#en_contact_area label,
#en_contact_area input,
#en_contact_area textarea,
#en_contact_area select {
  width: 100%;
}
#en_contact_area select {
  padding: 5px;
}
#en_contact_area .wpcf7-submit {
  width: 70px;
  border: none;
  padding: 5px;
}
.entry__content.contact_contents input,
.entry__content.contact_contents textarea {
  width: 100%;
  border: none;
  padding: 5px;
}
.entry__content.contact_contents input.wpcf7-submit,
input.wpcf7-submit {
  padding: 10px;
  background: #9b9b9b;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.1em;
  width: 200px !important;
  margin: 30px auto 0;
  display: block;
}
.entry__content.contact_contents input.wpcf7-submit:hover,
input.wpcf7-submit:hover {
  opacity: 0.9;
}
.float_l {
  float: left;
}
.guide_content .float_l {
  padding: 5px 0 5px 92px;
}
ul.icon_list.icon_l {
  padding: 36px 50px;
}
.white_box {
  background: #fff;
  padding: 40px;
}
.entry__content.simple_single .white_box h3 {
  text-align: center;
  font-size: 23px;
  margin: 5px auto 30px;
}
.default-bg-white {
  background-color: #fff;
  padding: 40px;
  margin-top: 100px;
}
#tayori-form2 {
  padding: 40px;
  margin-top: 100px;
}
.tayori-form form,
#tayori-form2 form {
  max-width: 700px;
  margin: 0 auto;
}
.default-bg-white h2,
#tayori-form2 h2 {
  margin-bottom: 30px;
}
.tayori-form .form-parts {
  margin-bottom: 20px;
}
.tayori-form .form-parts > div:first-child {
  font-weight: bold;
  font-size: 1.125em;
  margin-bottom: 5px;
}
#tayori-form2 .form-parts > div:first-child {
  font-weight: bold;
  font-size: 1em;
  margin-bottom: 0;
}
.tayori-form input[type="checkbox"] {
  appearance: auto;
  -webkit-appearance: auto;
  margin-right: 5px;
}
.tayori-form input[type="checkbox"] + label {
  display: inline;
}
.tayori-form input[type="text"],
.tayori-form textarea,
.tayori-form input[type="email"] {
  width: 100%;
  padding: 5px;
}
.tayori-form input[type="tel"] {
  padding: 5px;
}
.tayori-form input[type="text"],
.tayori-form textarea,
.tayori-form input[type="email"],
.tayori-form input[type="tel"] {
  border: 1px solid #767676;
  border-radius: 5px;
}
.tayori-form input[type="email"] {
  margin-bottom: 20px;
}
.tayori-form input[type="email"]:first-of-type {
  margin-bottom: 0;
}
.tayori-form textarea {
  min-height: 200px;
}
.tayori-form button.submit {
  padding: 10px;
  background: #9b9b9b;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.1em;
  width: 200px !important;
  margin: 30px auto 0;
  display: block;
  border: none;
}
.tayori-form .parts-error-message.validation-error,
.tayori-form .error-message.validation-error {
  color: #dc3232;
  font-weight: bold;
}
.tayori-form .parts-error-message.validation-error {
  margin-bottom: 20px;
}
#tayori-form2 input,
#tayori-form2 textarea {
  border: none;
  border-radius: 0;
}
@media (max-width: 991px) {
  .tayori-form form {
    max-width: 500px;
  }
  .default-bg-white,
  #tayori-form2 {
    margin-top: 60px;
  }
  .tayori-form input[type="tel"] {
    width: calc(100%/3 - 13px);
  }
}
@media (max-width: 767px) {
  .default-bg-white,
  #tayori-form2 {
    padding: 40px 20px;
  }
}

/* contact */
/* do not show success messages and success lines */
.wpcf7-mail-sent-ok {
  display: none !important;
}
.wpcf7-response-output {
  display: none !important;
}

/* Coming soon */
.coming-soon {
  padding-top: 100px;
}
.coming-soon .content {
  background: #fff;
  padding: 40px;
  margin-bottom: 50px;
}
.coming-soon .content h2 {
  font-size: 55px;
  font-style: italic;
  letter-spacing: 5px;
  margin-bottom: 20px;
}
.coming-soon .bg_butterfly {
  position: absolute;
  top: 77px;
  right: 84px;
  z-index: 1;
}
.coming-soon .bg_butterfly_4 {
  position: absolute;
  top: 303px;
  left: 48px;
  z-index: 1;
}
.coming-soon .bg_butterfly_9 {
  position: absolute;
  top: 923px;
  right: 111px;
  z-index: 1;
}
.coming-soon .bg_leaf_5 {
  position: absolute;
  top: 1014px;
  left: 79px;
  z-index: 1;
}
.coming-soon .bg_leaf_6 {
  position: absolute;
  top: 58px;
  left: 112px;
  z-index: 1;
}
.coming-soon .bg_leaf_7 {
  position: absolute;
  top: 1420px;
  right: 231px;
  z-index: 1;
  transform: rotate(-129deg);
}
.coming-soon .bg_leaf_11 {
  position: absolute;
  top: 473px;
  right: 447px;
}
.coming-soon .bg_leaf_12 {
  position: absolute;
  top: 134px;
  left: 210px;
  z-index: 1;
}
.coming-soon #twitter-widget-0 {
  position: relative !important;
  top: -17px;
}
.coming-soon .relative {
  text-align: center;
}
.coming-soon .relative h2.twitter {
  top: -7px;
}

/* 採用ページ */
.entry_info {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
  margin: 35px 0;
}
.entry_info th {
  width: 30%;
  padding: 30px;
  text-align: left;
  border: 1px solid #0094ff;
}
.entry_info tr {
  border: 1px solid #0094ff;
}
.entry_info td {
  padding: 30px;
}
.entry_info span {
  font-size: 12px;
}
.row.col-xs-12.col-sm-10.mg_ce.ps_mb40 {
  background: rgba(255, 255, 255, 0.7);
  width: 100%;
  margin: 30px auto;
  padding: 50px;
}
.w_bg {
  background: #fff;
  padding: 15px;
  margin: 10px auto;
}
#saiyo h3 {
  background: #0094ff;
  color: #fff;
  text-align: center;
  padding: 10px 0;
  margin-top: 0;
}
#saiyo h4 {
  margin: 20px 0;
}
.saiyo_pink_btn {
  background: #ff0198;
  color: #fff;
  font-weight: bold;
  font-size: 23px;
  text-align: center;
  display: block;
  padding: 35px 0;
  text-decoration: none;
}
.saiyo_pink_btn:hover,
.saiyo_pink_btn:visited {
  text-decoration: none;
  color: #fff;
  opacity: 0.8;
}
.en_contact_box_title img {
  height: 30px;
  width: auto;
}
.en_contact_box {
  padding: 0 60px 10px;
}
.position_top img {
  margin: auto;
}
.single-recruit {
  margin: 100px auto;
}
.single-recruit h2 {
  text-align: left;
  margin: 5px 0;
}
.single-recruit .news_detail {
  margin-bottom: 50px;
}
.single-recruit time {
  color: #6f6f6f;
  font-family: Lato, sans-serif;
  font-size: 17px;
  margin: 0;
}
ul.recruit_list {
  padding: 0;
}
ul.recruit_list li {
  list-style: none;
  border-bottom: 1px solid #eee;
  padding: 15px;
}
ul.recruit_list li:last-child {
  border: none;
  padding-bottom: 0;
}
ul.recruit_list li a {
  color: #333;
}
ul.recruit_list li a:hover {
  text-decoration: none;
  opacity: 0.6;
}
.recruit_title {
  font-size: 16px;
  font-weight: bold;
  text-decoration: underline;
}
.row.col-xs-12.col-sm-10.mg_ce.ps_mb40 p.text-center {
  margin: 25px 0;
}
.en_contact_box_title {
  position: relative;
}
.number {
  color: #0094ff;
  font-size: 31px;
  border: 1px solid #0094ff;
  margin-right: 15px;
  padding: 2px 12px;
  background: #fff;
  position: relative;
  top: 5px;
}
hr.gray {
  border-color: #9e9e9e;
}
.container.cast_container {
  margin: 70px auto;
}
.container.cast_container h2 {
  color: #0094ff;
}
.position_top {
  margin-top: 50px;
}

/* 園内マップ */
.entry__content .box {
  margin-top: 45px;
  padding: 4px;
}
#guidemap {
  width: 100%;
  height: 670px;
}
#guidemap .leaflet-popup-content p {
  margin: 10px 0;
}
.leaflet-clickable.attractionIcon,
.leaflet-clickable.fooda,
.leaflet-clickable.parking_f,
.leaflet-clickable.parking_a,
.leaflet-clickable.glamping,
.leaflet-clickable.locker_1 {
  cursor: pointer !important;
}
.leaflet-clickable {
  cursor: default !important;
}
.leaflet-popup-content .balloon a {
  color: #e4007f;
  text-decoration: underline;
}
.leaflet-bottom {
  z-index: 1 !important;
}
.box .row .col-sm-4 {
  width: 31.2%;
  margin: 10px;
  padding: 15px;
  font-size: 20px;
}
.box .row .col-sm-4 input {
  margin-right: 20px;
}
input[type="checkbox"] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.box label {
  position: relative;
  display: block;
  word-break: break-all;
  margin: 0;
}
.box label input[type="checkbox"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.box label input[type="checkbox"] + span {
  position: relative;
  padding: 0 30px 0 35px;
}
.box label input[type="checkbox"] + span::after {
  z-index: 1;
  margin: 5px 8px;
  width: 6px;
  height: 9px;
}
.box label input[type="checkbox"] + span::before,
.box label input[type="checkbox"] + span::after {
  position: absolute;
  top: 0;
  left: 0;
  display: inline-block;
  content: "";
  box-sizing: border-box;
}
.box label input[type="checkbox"] + span::after {
  z-index: 1;
  margin: 6px 8px;
  width: 7px;
  height: 13px;
}
.box label input[type="checkbox"]:checked + span::after {
  border: 2px solid #fff;
  border-width: 0px 3px 3px 0px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.attraction_check:nth-of-type(2) label input[type="checkbox"] + span::before {
  border-color: #ff0198;
}
.attraction_check:nth-of-type(2) label input[type="checkbox"]:checked + span::before {
  background-color: #ff0198;
}
.attraction_check label input[type="checkbox"] + span::before {
  z-index: 0;
  background-color: transparent;
  width: 22px;
  height: 22px;
  border: 2px #ff0198 solid;
  border-radius: 5px;
  margin-top: 3px;
}
.attraction_check label input[type="checkbox"]:checked + span::before {
  background-color: #ff0198;
}

.food_check:nth-of-type(2) label input[type="checkbox"] + span::before {
  border-color: #ea5514;
}
.food_check:nth-of-type(2) label input[type="checkbox"]:checked + span::before {
  background-color: #ea5514;
}
.food_check label input[type="checkbox"] + span::before {
  z-index: 0;
  background-color: transparent;
  width: 22px;
  height: 22px;
  border: 2px #ea5514 solid;
  border-radius: 5px;
  margin-top: 3px;
}
.food_check label input[type="checkbox"]:checked + span::before {
  background-color: #ea5514;
}

.other_check:nth-of-type(2) label input[type="checkbox"] + span::before {
  border-color: #02a0e8;
}
.other_check:nth-of-type(2) label input[type="checkbox"]:checked + span::before {
  background-color: #02a0e8;
}
.other_check label input[type="checkbox"] + span::before {
  z-index: 0;
  background-color: transparent;
  width: 22px;
  height: 22px;
  border: 2px #02a0e8 solid;
  border-radius: 5px;
  margin-top: 3px;
}
.other_check label input[type="checkbox"]:checked + span::before {
  background-color: #02a0e8;
}
.attraction_content .attraction_check {
  border: #ff0198 3px solid;
  color: #ff0198;
}
.attraction_content .food_check {
  border: 3px solid #ea5514;
  color: #ea5514;
}
.attraction_content .other_check {
  color: #02a0e8;
  border: 3px solid #02a0e8;
}
.leaflet-popup {
  width: 260px;
}
.guidelist h3 {
  font-size: 20px;
}
.guidelist h3 img {
  margin-right: 10px;
}
.guidelist ul {
  padding: 0;
}
.guidelist ul img {
  width: 42px;
  margin-right: 15px;
}
.guidelist ul li {
  list-style: none;
  font-weight: bold;
  font-size: 18px;
  padding: 1px;
}
.guidelist ul li a {
  color: #333;
}
.guidelist + p a.pink_btn {
  padding: 20px 0;
  font-size: 20px;
  font-weight: bold;
  margin-top: 25px;
}
.guidelist + p a.pink_btn img {
  margin-right: 15px;
}
i.fa-external-link-alt {
  color: #ff0198;
  margin-left: 10px;
}
.balloon.aparking_balloon:before {
  content: "";
  position: absolute;
  top: -38px;
  left: 50%;
  margin-left: -12px;
  border: 12px solid transparent;
  border-bottom: 15px solid #ffffff;
}
span.grandchariot {
  display: block;
  padding-left: 5rem;
}

.guidemap-crayonshinchan-3 {
  width: 100%;
  height: 400px;
}
.guidelist.guidelist-crayonshinchan-3 {
  margin-top: 20px;
}
.guidelist.guidelist-crayonshinchan-3 ul img {
  width: 32px;
  margin-right: 5px;
}
.guidelist.guidelist-crayonshinchan-3 ul li {
  font-size: 13px;
  padding: 1px;
  margin-right: 5px;
}
@media (min-width: 768px) {
  .guidemap-crayonshinchan-3 {
    height: 450px;
  }
  .guidelist.guidelist-crayonshinchan-3 ul {
    display: flex;
    flex-wrap: wrap;
  }
  .guidelist.guidelist-crayonshinchan-3 ul li {
    width: 48%;
  }
}
/* スマホ用ナビ */
.sp_nav {
  background: #000;
  padding: 15px;
  position: fixed;
  top: 0;
  z-index: 9999;
  width: 100%;
}
.sp_nav ul {
  padding: 0;
}
.sp_nav a {
  vertical-align: middle;
}
.sp_top_ticket {
  padding: 0px;
}
.sp_top_ticket a img {
  vertical-align: bottom;
}
/*----------ハンバーガーアイコン----------*/
.hamburger {
  position: absolute;
  display: block;
  width: 32px;
  height: 20px;
  z-index: 99999;
  box-sizing: border-box;
  top: 8px;
}
.hamburger span.sp_nav_open {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  margin: 0 auto;
}
.hamburger span.sp_nav_open:nth-of-type(1) {
  top: 0;
}
.hamburger span.sp_nav_open:nth-of-type(2) {
  top: 9px;
}
.hamburger span.sp_nav_open:nth-of-type(3) {
  bottom: 0;
}
/*----------中身----------*/
#navigation {
  position: fixed;
  display: none;
  width: 100%;
  top: 60px;
  left: 0;
  background-color: #fff;
  z-index: 99998;
}
#navigation .navigation_inner {
  width: 100%;
  height: 100%;
}
#navigation .navigation_inner .navigation_menu {
  vertical-align: middle;
  display: table;
  margin: 0;
}
#navigation .navigation_inner .navigation_menu li {
  width: 33.333333%;
  display: inline-block;
  height: 100%;
  padding: 15px 10px;
  text-align: center;
  border-bottom: 1px solid #e8e8e8;
  border-top: 1px solid transparent;
  border-right: 1px solid transparent;
  border-left: 1px solid transparent;
}
#navigation .navigation_inner .navigation_menu li:nth-of-type(13) {
  border-bottom: 1px solid transparent;
}
#navigation .navigation_inner .navigation_menu li:nth-of-type(2),
#navigation .navigation_inner .navigation_menu li:nth-of-type(5),
#navigation .navigation_inner .navigation_menu li:nth-of-type(8),
#navigation .navigation_inner .navigation_menu li:nth-of-type(11) {
  border-left: 1px solid #e8e8e8;
  border-right: 1px solid #e8e8e8;
}
#navigation .navigation_inner .navigation_menu li:nth-of-type(13) {
  border-right: 1px solid #e8e8e8;
}
@media (min-width: 480px) {
  .route img:last-of-type {
    display: none;
  }
}
@media (max-width: 479px) {
  #shop h2.title {
    width: 75%;
    left: 50%;
    margin-left: -35%;
  }
  #shop table th,
  #shop table td {
    padding: 0.5rem;
  }
  #shop h3 img {
    width: 75%;
    margin: auto;
  }
  #shop h3,
  #plan h3 {
    margin: 1rem 0;
  }
  .item-list .item-body h4 {
    font-size: 16px;
  }
  .guidelist ul img.kartroute {
    width: 55px !important;
    height: 3px !important;
  }
  span.indent {
    padding-left: 5em;
  }
  .route img:first-of-type {
    display: none;
  }
  .tab-content h3 {
    margin: 30px 0;
  }
  .attraction_content .guidelist h3 {
    font-size: 120%;
    margin-bottom: 10px;
  }
  .guidelist ul li {
    font-size: 100%;
  }
  #hinotori_map,
  #guidemap,
  #car_parking {
    height: 430px;
  }
  .hinotori_course {
    padding: 0 15px 15px;
  }
  .attraction_content {
    padding: 15px;
  }
  .box .row .col-sm-4 {
    width: 94.5% !important;
    margin: 0 10px 10px 10px;
  }
  .row.col-xs-12.col-sm-10.mg_ce.ps_mb40 {
    padding: 10px;
  }
}
@media (min-width: 992px) {
  .col-md-10 {
    width: 90.33333%;
  }
  .col-md-offset-1 {
    margin-left: 5.33333%;
  }
  footer hr {
    display: none;
  }
}

@media (max-width: 992px) {
  #map {
    height: 285px;
    margin-bottom: 15px;
  }
  .access_item:last-child {
    border-bottom: 1px solid #e8e8e8;
  }
  .access_item {
    border-right: 1px solid #e8e8e8;
    border-bottom: none;
  }
  .route {
    margin: 0;
  }
  .guidelist {
    margin-top: 25px;
  }
  .guidelist + p a.pink_btn {
    width: 100%;
    font-size: 18px;
  }
}
@media (min-width: 1270px) {
  .sp_only {
    display: none;
  }
  .pc_only {
    display: block;
  }
}

@media (max-width: 1269px) {
  .pc_only {
    display: none;
  }
  .sp_only {
    display: block;
    overflow-x: scroll;
  }
  body.custom-background {
    background-image: none !important;
  }
  .leaf_bg {
    background-image: none;
    z-index: -1;
  }
  .home .sub-page-contents {
    background: none;
  }
  #blind {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: 100;
    opacity: 0.5;
  }
  #main {
    margin-bottom: 0;
  }
  .img-responsive {
    margin: 0 auto 15px;
  }
  .bg_butterfly {
    position: absolute;
    top: 156px;
    right: 10px;
    z-index: 1;
    width: 90px;
  }
  .bg_butterfly_5 {
    position: absolute;
    top: 1205px;
    left: 0;
    z-index: 1;
    width: 90px;
  }
  .bg_butterfly_6 {
    position: absolute;
    top: 2228px;
    left: 584px;
    z-index: 1;
  }
  .bg_leaf_6 {
    position: absolute;
    top: -44px;
    left: 27px;
    z-index: -1;
    width: 90px;
  }
  .bg_leaf_7 {
    position: absolute;
    top: 1320px;
    right: 20px;
    z-index: 1;
    width: 55px;
  }
  .bg_leaf_8 {
    top: 1808px;
    left: 15px;
    width: 90px;
    z-index: -1;
  }
  .bg_leaf_1 {
    display: none;
  }
  #instagram h2.title {
    width: 230px;
    margin: auto;
  }
  #attraction h2.title {
    width: 200px;
    top: 30px;
    margin: auto;
  }
  .attraction_content h4 {
    font-size: 19px;
    margin: 25px 0;
  }
  .attraction_content h5 {
    text-align: center;
  }
  .attraction_content {
    padding: 20px 23px;
    margin-bottom: 50px;
  }
  .attraction_summary {
    text-align: left;
  }
  #attraction .shinchan1 {
    width: 80px;
    top: -175px;
    right: -15px;
  }
  .attraction_item {
    padding: 15px 0;
    margin-bottom: 15px;
  }
  #attraction .shinchan2 {
    width: 73px;
    top: -180px;
    left: -8px;
  }
  #attraction .hinotori1 {
    width: 103px;
    top: -20px;
    left: -10px;
  }
  #attraction .hinotori2 {
    width: 100px;
    top: 30px;
    right: -5px;
  }
  .attraction_item .col-md-7 {
    min-height: auto;
  }
  .attraction_item .col-md-7 p.text-center {
    position: static;
    margin: 15px 0;
  }
  .attraction_item p a.more {
    padding: 5px 50px;
  }
  .attraction_detail {
    margin-top: 25px;
  }
  #hinotori .bg_leaf_5 {
    position: absolute;
    width: 80px;
    top: 210px;
    right: -19px;
    z-index: 1;
  }
  #hinotori .bg_leaf_6 {
    position: absolute;
    transform: rotate(-15deg);
    top: -56px;
    left: 40px;
    z-index: 1;
  }
  #hinotori .attraction_hinotori1 {
    position: absolute;
    width: 123px;
    top: 80px;
    left: 0px;
    z-index: 1;
  }
  #hinotori .attraction_hinotori2.sp_only {
    position: absolute;
    width: 150px;
    top: -85px;
    right: 0px;
    z-index: 1;
  }
  p.phone {
    font-size: 24px;
    margin: 10px 0;
    letter-spacing: 2px;
  }
  p.phone img {
    width: 15px;
    vertical-align: bottom;
  }
  .entry__content + p {
    margin: 0;
  }
  .sub-page-contents {
    padding-top: 70px;
  }
  .sp_top_nav ul {
    padding: 0;
    margin: 0;
    background: #fff;
    display: table;
    width: 100%;
  }
  .sp_top_nav ul li {
    list-style: none;
    display: inline-block;
    text-align: center;
    width: 25%;
    background: #fff;
    padding: 15px 3px;
    border-right: 1px solid #e8e8e8;
    border-bottom: 1px solid #e8e8e8;
    letter-spacing: -1px;
  }
  .sp_top_nav ul li:nth-of-type(4),
  .sp_top_nav ul li:nth-of-type(8) {
    border-right: none;
  }
  .sp_top_nav ul li:nth-of-type(5),
  .sp_top_nav ul li:nth-of-type(6),
  .sp_top_nav ul li:nth-of-type(7),
  .sp_top_nav ul li:nth-of-type(8) {
    border-bottom: none;
  }
  .accordion > li {
    margin-bottom: 10px;
  }
  .cotegory_pager {
    margin: 30px 0;
  }
  .attraction_content h3,
  .attraction_content h3.dqi {
    font-size: 22px;
    margin: 0;
  }
  .attraction_twitter ul.accordion {
    padding: 0;
    margin: 0;
  }
  .attraction_twitter ul.accordion > li {
    color: #fff;
    text-align: center;
    font-weight: bold;
  }
  .attraction_twitter ul.accordion ul {
    padding: 20px;
    background: #fff;
  }
  .attraction_twitter ul.accordion ul li {
    border: 1px solid #e1e8ec;
  }
  .attraction_twitter ul.accordion p {
    padding: 10px 0px;
    background: #666;
    position: relative;
  }
  .attraction_twitter ul.accordion p:before {
    content: "";
    margin-right: 5px;
    background-image: url(img/sp_top_attraction.png);
    display: inline-block;
    width: 23px;
    height: 23px;
    background-size: contain;
    vertical-align: text-bottom;
    background-repeat: no-repeat;
  }
  .attraction_twitter ul.accordion p:after {
    content: "";
    background-image: url(img/accordion_open2.png);
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    top: 13px;
    right: 20px;
    position: absolute;
  }
  .attraction_twitter ul.accordion p.open-set:after {
    content: "";
    background-image: url(img/accordion_close2.png);
    width: 20px;
    height: 20px;
    display: inline-block;
    background-size: contain;
    background-repeat: no-repeat;
    top: 13px;
    right: 20px;
    position: absolute;
  }
  iframe#twitter-widget-2 {
    position: absolute;
    top: 114px;
  }
  h2.title {
    max-width: 200px;
    margin: auto;
  }
  #event h2.title {
    top: -5px;
    width: 160px;
    margin: auto;
  }
  .event_list li {
    width: 48.6%;
  }
  .event_list li:nth-child(odd) {
    margin: 0 8px 8px 0;
  }
  .event_list li:nth-child(even) {
    margin: 0 0 8px 0;
  }
  .event_list li:nth-child(9) {
    display: none;
  }
  .event_list li .event_caption {
    padding: 12px;
  }
  .category-event .sub-page-contents {
    padding-top: 70px;
  }
  .category-event .event_list li {
    width: 100%;
    margin-bottom: 15px;
  }
  #news h2.title {
    width: 150px;
    margin: auto;
    top: 8px;
  }
  .home #news.col-md-6 {
    width: 100%;
  }
  .news_list {
    max-height: min-content;
  }
  .news_list li:nth-child(5) {
    display: none;
  }
  .bx-wrapper {
    border-top: 25px solid #fff !important;
    border-bottom: 25px solid #fff !important;
    border-right: 0 !important;
    border-left: 0 !important;
    padding: 0 !important;
  }
  .bx-wrapper img {
    max-height: 168px;
    margin: auto;
  }
  .btn_area {
    padding: 20px 0;
  }
  .btn_area .anchor-attraction.top-anchor-attraction ul {
    padding: 0;
  }
  .btn_area .col-xs-6 {
    padding: 8px 5px;
  }
  .social_btn ul {
    padding: 0;
    margin-bottom: 20px;
  }
  footer .container .col-md-10.col-md-offset-1 {
    padding: 0 10px 0 10px;
  }
  .footer_content {
    margin: 40px 0 0 0;
  }
  .footer_content ul li {
    padding: 3px 0;
  }
  .footer_link {
    margin: 40px auto 25px;
    font-size: 13px;
  }
  .entry__content.contact_contents {
    padding: 0;
  }
  #category_news_list h2.title {
    position: relative;
    top: 0;
    left: 0;
    width: 150px;
    margin: auto;
  }
  .category_news_list_bg,
  .news_detail {
    padding: 5px;
  }
  .news_top {
    margin-top: 30px;
  }
  .category_news_list_bg.accordion > li > p:after,
  .category_news_list_bg.accordion > li > p.open-set:after {
    right: 40px;
  }
  .access_content {
    padding: 80px 20px 40px;
  }
  .access_detail {
    margin-top: 15px;
  }
  .access_item {
    padding: 15px;
  }
  #about .about_content {
    padding: 20px;
  }
  .faq_content {
    padding: 10px;
  }
  h2.title.faq_title {
    position: unset;
    margin-top: 50px;
  }
  .faq_nav .col-md-6 a {
    padding: 10px 0 10px 25px;
  }
  .faq_nav .col-md-6 a:before {
    left: 12px;
  }
  .faq_nav .col-md-6 {
    border-bottom: 1px solid #e8e8e8;
  }
  .faq_nav .col-md-6:nth-of-type(odd) {
    border-right: none;
  }
  .faq_nav .col-md-6 + p {
    display: none;
  }
  .faq_nav .row:first-of-type {
    border-bottom: none;
  }
  .faq_item {
    padding: 10px;
  }
  .faq_content h3 {
    padding-right: 0px;
    padding-left: 40px;
    background-position: left 5px top 15px;
    font-size: 20px;
  }
  ul.faq_list.accordion li ul {
    padding-right: 10px;
  }
  ul.faq_list.accordion li p {
    padding-right: 45px;
  }
  ul.icon_list li {
    width: 46.5%;
    margin: 5px;
    display: block;
    float: left;
  }
  .company_content {
    padding: 25px 10px;
  }
  .entry__content.simple_single.company {
    padding: 50px 0 0;
  }
  .company_content table td {
    padding: 5px 10px;
  }
  .entry__content.simple_single .company_content h3 {
    font-size: 17px;
  }
  .entry__content.simple_single h2 {
    margin-bottom: 25px;
    font-size: 24px;
  }
  .coming-soon {
    padding-top: 40px;
  }
  .coming-soon .content h2 {
    font-size: 31px;
    letter-spacing: 2px;
  }
  .coming-soon .content {
    padding: 20px;
    margin-bottom: 30px;
  }
  .coming-soon h2.title.twitter {
    top: -10px;
    width: 200px;
    margin: auto;
  }
  .team .row .col-md-6 .row .col-sm-5 {
    padding: 0;
  }
  .sp_top_slider .bx-wrapper {
    border: none !important;
    padding: 0 !important;
    margin-top: 58px;
    margin-bottom: 0px !important;
    background-color: #000;
  }
  .sp_top_slider .bx-wrapper img {
    max-height: 100%;
    width: auto;
    object-fit: contain;
  }
  .sp_top_slider .bx-wrapper .bx-pager,
  .sp_top_slider .bx-wrapper .bx-controls-auto {
    position: absolute;
    bottom: 7px;
    width: 100%;
  }
  .sp_top_slider .bx-wrapper .bx-prev {
    margin-left: 60px;
    background: url("/wp-content/themes/habakiri-child/img/sp_previous_30.png") no-repeat;
    background-position: 0 0;
  }
  .sp_top_slider .bx-wrapper .bx-next {
    margin-right: 50px;
    background: url("/wp-content/themes/habakiri-child/img/sp_next_30.png") no-repeat;
    background-position: 0 0;
  }
  .sp_top_slider .bx-wrapper .bx-controls-direction a {
    position: absolute;
    top: 50%;
    margin-top: -16px;
    outline: 0;
    width: 30px;
    height: 30px;
    text-indent: -9999px;
    z-index: 9998;
  }
  .sp_top_slider .bx-wrapper .bx-pager.bx-default-pager a {
    background: #fff;
    text-indent: -9999px;
    display: block;
    width: 10px;
    height: 10px;
    margin: 0 7.5px;
    outline: 0;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 7px;
  }
  .sp_top_slider .bx-wrapper .bx-pager.bx-default-pager a:hover,
  .sp_top_slider .bx-wrapper .bx-pager.bx-default-pager a.active,
  .sp_top_slider .bx-wrapper .bx-pager.bx-default-pager a:focus {
    background: #666;
  }
  .sp_top_slider .slider_sp_img_wrap {
    position: relative;
    width: 100%;
    background-color: #000;
  }
  .sp_top_slider .slider_sp_img_wrap:before {
    content: "";
    display: block;
    padding-top: 45vh;
  }
  .sp_top_slider .slider_sp_img_wrap.slider_h_l_none:before {
    padding-top: calc(45vh + 142px);
  }
  .sp_top_slider .slider_h_l_none:not(.slider_sp_img_wrap) {
    height: calc(45vh + 142px);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .sp_top_slider .slider_sp_img_wrap img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
  .sp_top_slider .slider_h_l_inner {
    padding: 15px 0;
    height: 142px;
  }
  .top_slider.sp_top_slider .slider_h_l_inner {
    padding: 15px 0;
    height: 230px;
  }
  .sp_top_slider .slider_h_l_inner h2 {
    margin-bottom: 10px;
    font-size: 20px;
  }
  .hinotori_slider .bx-wrapper .bx-prev,
  .shinchan_slider .bx-wrapper .bx-prev {
    margin-left: 60px;
    background: url("/wp-content/themes/habakiri-child/img/prev.png") no-repeat;
    background-position: 0 0;
  }
  .hinotori_slider .bx-wrapper .bx-next,
  .shinchan_slider .bx-wrapper .bx-next {
    margin-right: 50px;
    background: url("/wp-content/themes/habakiri-child/img/next.png") no-repeat;
    background-position: 0 0;
  }
  .price_open_hours h3 {
    position: relative;
    margin: auto;
    text-align: center;
    top: -35px;
    left: 0;
  }
  .price_open_hours h4 {
    font-size: 20px;
  }
  .price_open_hours #price,
  #open_hours {
    padding: 0 10px 20px;
  }
  ul.list_box.column-3 li {
    width: 30.9%;
    margin-right: 5px;
  }
  ul.list_box.column-3 li:last-child {
    margin: 0;
  }
  ul.list_box.column-3.green li {
    display: block;
    width: 100%;
  }
  ul.list_box {
    width: 100%;
  }
  ul.list_box.column-2.gray {
    margin-bottom: 60px;
  }
  ul.list_box.column-2.gray li:first-child {
    margin: 0 5px 0 0;
  }
  ul.list_box.column-2.gray li:last-child {
    margin: 0 0 0 5px;
  }
  .gray_btn {
    width: 80%;
  }
  .attraction_info {
    padding: 15px;
  }
  .attraction_info_inner {
    padding: 40px 0 0 0;
    background-image: url(img/attraction_info_sp.png);
    background-position: top center;
  }
  #hinotori h2.title {
    top: 0;
    width: 200px;
    margin: 10px auto;
  }
  #shinchan h2.title {
    top: 3px;
    width: 200px;
    margin: 10px auto;
  }
  .hinotori_item {
    padding: 0;
    position: relative;
  }
  #hinotori h3 {
    font-size: 25px;
    padding: 25px 5px;
  }
  #hinotori .bx-wrapper {
    border: none !important;
  }
  .hinotori_item .well p {
    text-align: left;
  }
  #hinotori .team h3 {
    font-size: 20px;
    padding: 25px 10px;
  }
  .hinotori_content {
    padding-bottom: 50px;
  }
  .guide {
    padding-top: 0;
  }
  .guide_content {
    padding: 60px 10px 5px;
  }
  .guide_inner {
    padding: 10px;
  }
  .guide_inner h4 img {
    margin: 0 10px 0 0;
  }
  ul.guide_btn li {
    width: 32%;
  }
  ul.guide_btn li a {
    padding: 5px;
    font-size: 12px;
  }
  ul.guide_btn li a img {
    margin-right: 0;
  }
  .attraction a.gray_btn {
    width: 100%;
  }
  .relation {
    text-align: center;
  }
  .relation .col-md-4 {
    margin-bottom: 15px;
  }
  .shinchan_item {
    padding: 15px 15px 0;
  }
  .top_img {
    margin-top: 15px;
    padding: 10px;
  }
  #shinchan h3 {
    padding: 0px;
    font-size: 21px;
    letter-spacing: 2px;
  }
  .shinchan_item p {
    margin: 0;
  }
  .shinchan_slider .bx-wrapper {
    margin-bottom: 0;
  }
  #shinchan .guide h2.title {
    top: 40px;
    margin: 0 auto;
  }
  .relation {
    padding: 0 15px;
  }
  .relation h3 {
    width: 250px;
    margin: 0 auto 10px;
  }
  #shinchan h3 img {
    width: 250px;
  }
  .bx-wrapper {
    margin-bottom: 0 !important;
  }
  .application {
    padding: 0;
  }
  .application a {
    display: inline-block;
    width: 43%;
    margin: 10px;
  }
  .guide_item .col-xs-12 {
    padding: 0;
  }
  .guide_content.howto h2 {
    position: relative;
    left: 0;
    top: -12px;
  }
  .guide_content.howto {
    padding-top: 0;
  }
  .row.fixBox.guide_detail .col-xs-12 {
    border-top: 1px solid #e8e8e8;
  }
  ul.guide_btn {
    margin: 10px auto 30px;
  }
  #facebook h2.title img {
    width: 200px;
  }
  .guide_item h5 {
    font-size: 20px;
  }
  .large {
    font-size: 25px !important;
  }

  table.open_table tr td:first-child {
    width: 150px;
  }
  ul.list_box.column-2 li {
    width: 47%;
    margin: 5px;
  }
  .application a img {
    margin: 0;
  }
  .guide_hinotori ul.icon_list {
    padding-top: 0px;
  }
  .guide_hinotori ul.icon_list li {
    margin: 5px;
  }
  .guide_content .float_l {
    float: none;
    padding: 0;
  }
  ul.icon_list.icon_l {
    padding: 0;
  }
  .guide_hinotori ul.icon_list.icon_l {
    padding: 0;
  }
  .white_box {
    padding: 15px;
  }
  .entry__content.simple_single.complete {
    padding: 0;
  }
  .entry__content.simple_single .white_box h3 {
    font-size: 16px;
    margin: 13px 0;
  }
  .en_contact_box .row .col-md-6:first-child {
    padding: 0 15px;
  }
  .en_contact_box h3 {
    font-size: 22px;
  }
  h3.noon.sp_m {
    margin-bottom: 10px;
  }
}
@media (max-width: 991px) {
  .new {
    top: 58px;
  }
  .metaslider-nivo {
    margin-top: 20px !important;
  }
  #shinchan .course_guide_content.text-center h4 {
    padding: 0 75px;
  }
  #shinchan .course_guide_content.text-center h4:before,
  #shinchan .course_guide_content.text-center h4:after {
    width: 65px;
  }
  .price_open_hours .sp_only tr th,
  .price_open_hours .sp_only tr td {
    padding: 10px 5px;
  }
  #about h3 {
    font-size: 14px;
  }
  .box .row .col-sm-4 {
    width: 96.5%;
  }
  ul.nav.nav-pills.nav-justified li.changeMap.active a:before {
    content: none;
  }
  .nav-justified > li {
    width: 49%;
    display: inline-block;
  }
  ul.nav.nav-pills.nav-justified li.changeMap a {
    border: 1px solid #e8e8e8;
    font-size: 15px;
    padding: 15px 0;
  }
  .nav-pills > li + li {
    margin-left: 0;
  }
  .access_content .row.fixBox {
    margin: 0 0 15px;
  }
  .nav-justified {
    margin-bottom: 15px;
  }
  ul.nav.nav-pills.nav-justified li.changeMap:last-child {
    border-right: none;
  }
  .access_content {
    padding: 80px 10px 40px;
  }
  .access_tab > .tab-content {
    padding: 10px;
  }
  #access .guide_item .col-md-6:first-child {
    border-right: none;
    border-bottom: 1px solid #e8e8e8;
  }
  a.shuttleLink {
    font-size: 16px;
    letter-spacing: 0;
    padding: 20px 0;
  }
  a.shuttleLink img {
    width: 35px;
    margin-right: 5px;
  }
}

/* 多言語対応 */
a.footer_btn {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 145%;
  padding: 22px 0;
  font-weight: 500;
  letter-spacing: 0.1em;
}
a.footer_btn i {
  margin-right: 10px;
}
a.footer_btn.orange {
  background: #f58345;
}
a.footer_btn.pink {
  background: #ff0198;
}
a.footer_btn:link,
a.footer_btn:visited,
a.footer_btn:hover,
a.footer_btn:active {
  text-decoration: none;
}
a.footer_btn:hover {
  color: #fff;
  opacity: 0.8;
}
.main-menu ul li a {
  color: #000;
  font-weight: bold;
}
.main-menu ul li a:hover {
  text-decoration: none;
}
ul.custom_menu_main_nav.pull-right li a {
  font-weight: bold;
  color: #000;
  font-size: 95%;
}
ul.custom_menu_main_nav.pull-right li.custom_menu_ticket a {
  color: #fff;
  font-size: 115%;
  display: block;
  padding: 21px 0;
  font-weight: 500;
}
ul.custom_menu_main_nav.pull-right li.custom_menu_ticket a:hover {
  color: #fff;
  opacity: 0.8;
}
ul.custom_menu_main_nav.pull-right li.custom_menu_ticket a i {
  margin-right: 8px;
}
ul.custom_menu_main_nav.pull-right li a:hover {
  color: #ff0198;
  text-decoration: none;
}
ul.custom_menu_main_nav li a img {
  margin-right: 5px;
}
ul.custom_menu_main_nav li.custom_menu_ticket a img {
  margin-right: 0;
}
.custom_menu_ticket {
  width: 215px;
  height: 68px;
  text-align: center;
  background-image: url(img/custom_menu_ticket.png);
}
a.header_nav_ticket {
  width: 229px;
  display: inline-block;
  color: #fff;
  background-image: url(img/ticket.png);
  background-repeat: no-repeat;
  padding: 30px 0;
  text-align: center;
  font-size: 115%;
  letter-spacing: 0.1em;
  font-weight: 500;
}
a.header_nav_ticket:hover {
  text-decoration: none;
  color: #fff;
  opacity: 0.9;
}
a.header_nav_ticket i {
  margin-right: 8px;
}
a.more {
  background: #ff0198;
  color: #fff;
  padding: 5px 10px;
  text-decoration: none;
  font-weight: 500;
  position: relative;
  z-index: 2;
}
a.more:hover {
  opacity: 0.8;
  color: #fff;
}
#navigation .navigation_inner .navigation_menu li a {
  font-size: 70%;
  color: #000;
  white-space: nowrap;
  font-weight: bold;
}
.sp_top_nav ul li a {
  font-size: 75%;
  color: #000;
  font-weight: bold;
}
a.sp_footer_btn.orange {
  background: #f58345;
  color: #fff;
  padding: 10px 20px;
  letter-spacing: 0.1em;
  display: inline-block;
  white-space: nowrap;
}
a.sp_footer_btn.pink {
  background: #ff0198;
  padding: 10px 20px;
  color: #fff;
  letter-spacing: 0.1em;
  display: inline-block;
  white-space: nowrap;
}
a.sp_footer_btn.orange i,
a.sp_footer_btn.pink i {
  margin-right: 5px;
}

/* edgeのみ */
@supports (-ms-ime-align: auto) {
  .custom-menu .site-branding__heading h1.site-branding__heading {
    position: relative;
  }
  /* .custom-menu img.site-branding__logo {
    position: relative;
    top: -87px;
} */
  .sub-page-contents {
    padding-top: 185px;
  }
  .category-event .sub-page-contents {
    padding-top: 110px;
  }
}

/* Firefoxのみ */
@-moz-document url-prefix() {
  .custom-menu .col-xs-2.col-md-9.header__col.global-nav-wrapper.clearfix {
    position: relative;
    top: -46px;
  }
}

/* safariのみ */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  .custom-menu .header__content .header__col {
    vertical-align: top;
  }
}

/* IEのみ */
@media all and (-ms-high-contrast: none) {
  /*media all*/
  p.scrol img {
    left: 47%;
  }
  .custom-menu .header__content .header__col {
    vertical-align: top;
  }
  .attraction_item .col-md-7 p.text-center.special_btn {
    bottom: auto !important;
  }
}

/* chromeのみ */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
  #shinchan {
    margin-top: 0;
  }
}

/*フェーズ２*/
.phase2 {
  display: none;
}

.custom-slider {
  height: 490px !important;
}

/* 投稿ページ */
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h1,
.single-post .entry .event_detail h1,
.single-post .entry .news_content h1 {
  color: #fff;
  text-align: center;
  padding: 18px 0;
  font-size: 30px;
  letter-spacing: 0.1em;
  background: #4eb2d1;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h2,
.single-post .entry .event_detail h2,
.single-post .entry .news_content h2 {
  color: #fff;
  padding: 15px 0;
  font-size: 25px;
  letter-spacing: 0.1em;
  background: #241a53;
  margin: 23px auto;
  position: relative;
  border-radius: 5px;
}
.single-post .entry .title_bg h2 {
  color: unset !important;
  padding: unset !important;
  background: transparent !important;
  margin: 0 !important;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h2:after,
.single-post .entry .event_detail h2:after,
.single-post .entry .news_content h2:after {
  position: absolute;
  top: 100%;
  left: 30px;
  content: "";
  width: 0;
  height: 0;
  border: 10px solid transparent;
  border-top: 15px solid #241a53;
}
.single-post .entry .title_bg h2:after {
  content: none !important;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h3,
.single-post .entry .event_detail h3,
.single-post .entry .news_content h3 {
  padding: 5px 15px;
  background: linear-gradient(transparent 60%, #ffeb3b 0%);
  margin-bottom: 23px;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h4,
.single-post .entry .event_detail h4,
.single-post .entry .news_content h4 {
  padding: 10px;
  color: #494949;
  background: #f4f4f4;
  border-left: solid 5px #7db4e6;
  font-size: 19px;
  margin-bottom: 20px;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h5,
.single-post .entry .event_detail h5,
.single-post .entry .news_content h5 {
  font-size: 17px;
  position: relative;
  padding-bottom: 0.5em;
  padding-left: 15px;
  border-bottom: 3px solid #cccccc;
  margin-bottom: 20px;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h5:after,
.single-post .entry .event_detail h5:after,
.single-post .entry .news_content h5:after {
  position: absolute;
  bottom: -3px;
  left: 0;
  z-index: 2;
  content: "";
  width: 20%;
  height: 3px;
  background-color: #ff0198;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) h6,
.single-post .entry .event_detail h6,
.single-post .entry .news_content h6 {
  border-bottom: 2px dotted #333;
  padding: 10px 15px;
  font-size: 15px;
  margin-bottom: 20px;
}
.single-post .entry [class*="_detail"]:not(.event_detail):not(.news_detail) pre,
.single-post .entry .event_detail pre,
.single-post .entry .news_content pre {
  background: #fff;
  border-radius: 0;
  font-family:
    "Roboto Condensed",
    "Original Yu Gothic",
    "Yu Gothic",
    YuGothic,
    Verdana,
    Meiryo,
    "M+ 1p",
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    sans-serif;
}
.single-post .entry [class*="_detail"] p {
  line-height: 2;
}
a.btn_lg {
  display: block;
  text-align: center;
  background: #ff0198;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  padding: 15px 0;
  font-size: 18px;
  width: 80%;
  margin: auto;
}
a.btn_md {
  width: 60%;
  background: #ff0198;
  color: #fff;
  font-weight: bold;
  padding: 15px 0;
  display: block;
  margin: auto;
  text-align: center;
  font-size: 15px;
  text-decoration: none;
}
a.btn_sm {
  background: #ff0198;
  color: #fff;
  font-weight: bold;
  padding: 15px 35px;
  display: inline-block;
  text-decoration: none;
}
a.btn_lg:hover,
a.btn_md:hover,
a.btn_sm:hover {
  opacity: 0.7;
  color: #fff;
}
.single-post table {
  border: 1px solid #ddd;
}
.single-post table tr td {
  padding: 8px;
}
.single-post .entry .event_detail img,
.single-post .entry .news_content img {
  width: 32.88888888%;
}
.single-post .entry .event_detail .pink_btn img,
.single-post .entry .news_content .pink_btn img {
  width: auto;
}
.single-post .entry .event_detail img.size-full,
.single-post .entry .news_content img.size-full,
.single-post .entry .event_detail img.aligncenter,
.single-post .entry .news_content img.aligncenter {
  width: 100%;
}
.single-post .entry .event_detail img:nth-of-type(2),
.single-post .entry .news_content img:nth-of-type(2) {
  margin: 0 5px;
}
@media (max-width: 991px) {
  .single-post .entry .event_detail img,
  .single-post .entry .news_content img {
    width: 100%;
  }
  .single-post .entry .event_detail h1,
  .single-post .entry .news_content h1,
  .single-post .entry .event_detail h2,
  .single-post .entry .news_content h2,
  .single-post .entry .event_detail h3,
  .single-post .entry .news_content h3 {
    font-size: 24px;
  }
  .single-post .entry .event_detail img:nth-of-type(2),
  .single-post .entry .news_content img:nth-of-type(2) {
    margin: 5px 0px;
  }
}

div.tool-container {
  padding: 10px;
  width: 135px;
  box-shadow: 0px 0px 15px #00000075;
  left: 20px !important;
}

div.tool-container > div.tool-items > a.tool-item {
  background: none !important;
  min-width: 100%;
  text-decoration: none;
  color: #333;
  margin: 0.8rem 0;
}
div.tool-container > div.tool-items > a.tool-item:after {
  display: block;
  white-space: nowrap;
  font-weight: bold;
}
div.tool-container > div.tool-items > a.tool-item[title="English"]:after {
  content: "ENGLISH";
}
div.tool-container > div.tool-items > a.tool-item[title="Chinese (Simplified)"]:after {
  content: "中文（简体）";
}
div.tool-container > div.tool-items > a.tool-item[title="Chinese (Traditional)"]:after {
  content: "中文（繁體）";
}
div.tool-container > div.tool-items > a.tool-item[title="Korean"]:after {
  content: "한국어";
}
div.tool-container > div.tool-items > a.tool-item[title="Japanese"]:after {
  content: "日本語";
}
div.tool-container > div.tool-items {
  display: flex;
  flex-wrap: wrap;
}
div.tool-container > div.tool-items > a[title="English"] {
  order: 1;
}
div.tool-container > div.tool-items > a[title="Chinese (Simplified)"] {
  order: 2;
}
div.tool-container > div.tool-items > a[title="Chinese (Traditional)"] {
  order: 3;
}
div.tool-container > div.tool-items > a[title="Korean"] {
  order: 4;
}
div.tool-container > div.tool-items > a[title="Japanese"] {
  order: 5;
}

/* アトラクション情報tweet */
.tw_attraction_info {
  max-height: 460px;
  background: #fff;
  box-shadow: 0 0 7px #afafaf;
  margin-top: 12px;
}
.tw_attraction_info .attraction_timeline-header {
  position: relative;
  padding: 10px;
}
.tw_attraction_info .timeline-header-infocircle {
  position: absolute;
  right: 12px;
  top: 23px;
}
.tw_attraction_info .timeline-header-infocircle .icon {
  width: 18px;
  height: 18px;
  background-image: url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20class%3D%22icon%22%20fill%3D%22%238899A6%22%20d%3D%22M12%2018.042c-.553%200-1-.447-1-1v-5.5c0-.553.447-1%201-1s1%20.447%201%201v5.5c0%20.553-.447%201-1%201z%22%2F%3E%3Ccircle%20class%3D%22icon%22%20fill%3D%22%238899A6%22%20cx%3D%2212%22%20cy%3D%228.042%22%20r%3D%221.25%22%2F%3E%3Cpath%20class%3D%22icon%22%20fill%3D%22%238899A6%22%20d%3D%22M12%2022.75C6.072%2022.75%201.25%2017.928%201.25%2012S6.072%201.25%2012%201.25%2022.75%206.072%2022.75%2012%2017.928%2022.75%2012%2022.75zm0-20C6.9%202.75%202.75%206.9%202.75%2012S6.9%2021.25%2012%2021.25s9.25-4.15%209.25-9.25S17.1%202.75%2012%202.75z%22%2F%3E%3C%2Fsvg%3E);
  background-repeat: no-repeat;
  display: inline-block;
  background-size: contain;
}
.tw_attraction_info .timeline-header-title {
  font-size: 16px;
  line-height: 36px;
  font-weight: 600;
  color: #292f33;
  display: inline-block;
  max-width: 100%;
  margin: 0;
  padding-left: 60px;
}
.timeline-body {
  position: relative;
  border-top: 1px solid rgba(15, 70, 100, 0.12);
  border-bottom: 1px solid rgba(15, 70, 100, 0.12);
  height: 380px;
  overflow-x: hidden;
  overflow-y: auto;
  padding: 0 15px;
}
.twitter-content {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding: 15px 5px;
  float: left;
  clear: both;
}
.timeline-footer {
  padding: 0 15px;
  font-size: 12px;
  text-align: right;
}
.timeline-footer a {
  color: #2b7bb9;
}
.timeline-footer a:hover {
  text-decoration: none;
}
.tweet-actions a.ctf-like,
.tweet-actions a.ctf-reply,
.tweet-actions a.ctf-retweet {
  color: #bbb;
  color: rgba(0, 0, 0, 0.3);
  text-decoration: none;
  border: none;
  -moz-transition: color 0.1s ease-in-out;
  -webkit-transition: color 0.1s ease-in-out;
  -o-transition: color 0.1s ease-in-out;
  transition: color 0.1s ease-in-out;
}
.svg-inline--fa {
  display: inline-block;
  font-size: inherit;
  height: 1em;
  overflow: visible;
  vertical-align: -0.125em;
}
.tweet-actions a {
  padding: 2px 10px 2px 5px;
  float: left;
}
.tweet-actions .ctf-reply:focus,
.tweet-actions .ctf-reply:hover {
  color: #e34f0e !important;
}
.tweet-actions .ctf-retweet:focus,
.tweet-actions .ctf-retweet:hover {
  color: #19cf86 !important;
}
.tweet-actions .ctf-like:focus,
.tweet-actions .ctf-like:hover {
  color: #e81c4f !important;
}
.subcontent-hashtags a {
  color: #ff0198;
  text-decoration: underline;
}
.subcontent-hashtags a:hover {
  color: #23527c;
}
.tw-header-generic-icon {
  position: absolute;
  top: 3.5px;
  color: #fff;
  background: #1b95e0;
  border-radius: 50%;
  padding: 12px 15px;
  font-size: 20px;
}
.attraction_twitter ul.accordion ul li .twitter-content {
  text-align: left;
  font-weight: normal;
  color: #333;
}
.attraction_twitter ul.accordion ul li .twitter-content p {
  background: #fff;
}
.attraction_twitter ul.accordion ul li h1.timeline-header-title {
  padding-left: 15px;
}

/* チケット購入 */
ul.list_box.column-3.va_m li {
  vertical-align: middle;
}
@media (max-width: 768px) {
  .ticket-pia {
    width: 50%;
  }
}

/* アクセスページ */
#access .access_info {
  background-color: #f0f0f0;
  margin-top: 3em;
  margin-bottom: 2em;
}
#access .access_map {
  border: 1px solid #e8e8e8;
  padding: 30px 30px 15px;
}
#access .access_map iframe {
  height: 400px;
}
#access .guide_item.bg_w {
  background: white;
}
#access .guide_item h5 {
  font-size: 18px;
}
#access .parking_mark {
  width: 40px;
  vertical-align: bottom;
}
#access ul.nav.nav-pills.access_area {
  border: 1px solid #e8e8e8;
}
#access ul.nav.nav-pills.access_area > li {
  width: 25%;
  margin-left: 0;
  text-align: center;
  font-size: 1.1em;
}
#access ul.nav.nav-pills.access_area > li:nth-of-type(2),
#access ul.nav.nav-pills.access_area > li:nth-of-type(3),
#access ul.nav.nav-pills.access_area > li:nth-of-type(4) {
  border-left: 1px solid #e8e8e8;
}
#access ul.nav.nav-pills.access_area > li > a {
  color: #333;
}
#access ul.nav.nav-pills.access_area > li > a > i {
  color: #ff0198;
}
#access ul.nav.nav-pills.access_area > li > a:hover {
  background: #ff0198;
  color: #fff;
}
#access ul.nav.nav-pills.access_area > li.active > a {
  background: #ff0198;
  color: #fff;
}
#access ul.nav.nav-pills.access_area > li > a:hover > i,
#access ul.nav.nav-pills.access_area > li.active > a > i {
  color: #fff;
}
#access ul.nav.nav-pills.access_area > li > ul.dropdown-menu {
  padding: 0;
  margin-top: 0;
  width: 100%;
  border: 1px solid #e8e8e8;
  box-shadow: none;
  border-radius: 0;
}
#access ul.nav.nav-pills.access_area > li > ul.dropdown-menu > li {
  text-align: center;
  font-size: 1.1em;
  border-top: 1px solid #e8e8e8;
}
#access ul.nav.nav-pills.access_area > li > ul.dropdown-menu > li:first-child {
  border-top: none;
}
#access ul.nav.nav-pills.access_area > li > ul.dropdown-menu > li > a {
  padding: 10px 5px;
}
#access ul.nav.nav-pills.access_area > li > ul.dropdown-menu > li > a:hover {
  background: #ff0198;
  color: #fff;
}
#access ul.nav.nav-pills.access_area > li > ul.dropdown-menu > li.active > a {
  background: #ff0198;
}
#access .tab-content.access_area_detail .access_area_gaiyo {
  background: #4eb2d1;
  margin-top: 4em;
}
#access .tab-content.access_area_detail .access_area_gaiyo h4 {
  color: #fff;
  font-size: 25px;
  margin: 0 20px;
  padding: 15px 0 10px;
  border-bottom: 2px solid #fff;
}
#access .tab-content.access_area_detail .access_area_gaiyo p {
  color: #fff;
  font-weight: 500;
  margin: 10px 20px 0;
  padding: 0 0 15px;
}

#access ul.list-inline.access_way {
  margin: 2em auto 0;
  max-width: 400px;
  text-align: center;
}
#access ul.list-inline.access_way li {
  text-align: center;
  border: 2px solid #ff0198;
  border-radius: 100px;
  width: 85px;
  height: 85px;
  padding: 10px;
  margin: 0 20px;
  font-size: 1.2em;
  background: #ff0198;
}
#access ul.list-inline.access_way li:hover {
  background: #fff;
}
#access ul.list-inline.access_way li:hover a {
  color: #ff0198;
}
#access ul.list-inline.access_way li a {
  color: #fff;
  display: block;
}
#access ul.list-inline.access_way li a:hover {
  text-decoration: none;
}

#access .tab-content.access_area_detail h5 {
  background: #241a53;
  padding: 15px 20px 15px 55px;
  border-radius: 10px;
  color: #fff;
  font-size: 22px;
  margin-bottom: 1em;
  margin-top: 1.8em;
  position: relative;
}
#access .tab-content.access_area_detail h5.bus_icon:before {
  font-family: "Font Awesome 5 Free";
  content: "\f207";
  position: absolute;
  left: 15px;
}
#access .tab-content.access_area_detail h5.train_icon:before {
  font-family: "Font Awesome 5 Free";
  content: "\f239";
  position: absolute;
  left: 15px;
}
#access .tab-content.access_area_detail h5.ship_icon:before {
  font-family: "Font Awesome 5 Free";
  content: "\f21a";
  position: absolute;
  left: 15px;
}
#access .tab-content.access_area_detail h5 small {
  color: #fff;
  font-weight: 700;
}
#access .row.access_timeline > .col-md-6 {
  margin-top: 1.5em;
}
#access .row.access_timeline > div {
  padding-top: 2.25rem;
}
#access .row.access_timeline table {
  border: 1px solid #e8e8e8;
}
#access .row.access_timeline table th {
  padding: 20px 15px;
  background: #e8e8e8;
}
#access .row.access_timeline table th img.recommended_mark {
  width: 65px;
  position: absolute;
  top: -1em;
  right: 0;
}
#access .row.access_timeline table td {
  padding: 20px 15px;
  position: relative;
}
#access .row.access_timeline table td .access_route_img {
  width: 100%;
}
#access .row.access_timeline table td .access_route_txt {
  position: absolute;
  line-height: 36px;
}
#access .row.access_timeline table td .access_route_txt_1-1 {
  top: 37%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_2-1 {
  top: 22%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_2-2 {
  top: 55.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_3-1 {
  top: 15%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_3-2 {
  top: 39.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_3-3 {
  top: 68.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_4-1 {
  top: 11%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_4-2 {
  top: 34.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_4-3 {
  top: 57.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_4-4 {
  top: 79%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_5-1 {
  top: 9.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_5-2 {
  top: 28.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_5-3 {
  top: 46.5%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_5-4 {
  top: 66%;
  right: 10%;
}
#access .row.access_timeline table td .access_route_txt_5-5 {
  top: 83%;
  right: 10%;
}
ul.nav.nav-pills.nav-justified.access_tab_bottom li.changeMap.active a:before {
  border-bottom: 13px solid #ff0198;
  top: -23%;
  border-top: none;
}
.access_bus_note {
  border: 2px solid #ff0198;
  margin-top: 20px;
  padding: 15px 15px 5px 15px;
}
p.to_access-top a {
  display: block;
  font-size: 18px;
  margin-top: 30px;
  padding: 15px;
  background: #4eb2d1;
  border-radius: 5px;
  border: 1px solid #e8e8e8;
}
/* ul.nav.nav-pills.access_tab_bottom li {
    width: 1%;
    float: none;
    display: table-cell;
}
ul.nav.nav-pills.access_tab_bottom .tab_bottom_ac {
    text-align: center;
    color: #fff;
    background: #ff0198;
    font-size: 18px;
    font-weight: 700;
    padding: 10px 15px;
}
ul.nav.nav-pills.access_tab_bottom .tab_bottom_to {
    text-align: center;
}
ul.nav.nav-pills.access_tab_bottom .tab_bottom_to a {
    color: #4b4b4b;
    font-size: 18px;
    border: 1px solid #e8e8e8;
}
ul.nav.nav-pills.access_tab_bottom .tab_bottom_to.active a {
    background: #fff;
}
ul.nav.nav-pills.access_tab_bottom .tab_bottom_to.active a:before {
    display: none;
} */

@media (max-width: 1269px) {
  #access .tab-content.access_area_detail h5.bus_icon:before,
  #access .tab-content.access_area_detail h5.train_icon:before,
  #access .tab-content.access_area_detail h5.ship_icon:before {
    top: 35%;
  }
  #access .tab-content.access_area_detail h5 {
    padding: 8px 20px 10px 55px;
  }
}
@media (min-width: 992px) {
  #access .row.access_timeline table th {
    height: 140px;
    vertical-align: top;
  }
}

@media (max-width: 991px) {
  #access .access_map {
    padding: 10px 10px 0px;
  }
  #access .access_map iframe {
    height: 150px;
  }
  ul.nav.nav-pills.nav-justified.access_tab_sp li {
    width: 100%;
  }
  #access ul.nav.nav-pills.access_area > li {
    width: 50%;
  }
  #access ul.nav.nav-pills.access_area > li:nth-of-type(3) {
    border-left: none;
  }
  #access ul.nav.nav-pills.access_area > li:nth-of-type(1),
  #access ul.nav.nav-pills.access_area > li:nth-of-type(2) {
    border-bottom: 1px solid #e8e8e8;
  }
}

@media (min-width: 768px) {
  #access .text-center_pc {
    text-align: center;
  }
}
@media (min-width: 480px) {
  .sp {
    display: none;
  }
}

@media (max-width: 460px) {
  #access ul.list-inline.access_way li {
    margin: 0 5px;
  }
}

/* オンラインショップバナー追加 */
.btn_area.pc_only.ec_logo img,
.btn_area.footer_banner img {
  width: 50%;
}
.sp_only .ec_logo {
  margin-top: 15px;
}
.sp_only .ec_logo img {
  width: 80%;
}
@media (max-width: 1269px) {
  .btn_area.footer_banner img {
    width: 100% !important;
  }
}

/* SPナビ */
.sp_top_nav ul li.sp_top_nav_logo {
  vertical-align: text-bottom;
  padding: 15px 10px !important;
}

/* 20211027追加 */
@media (max-width: 1269px) {
  .btn_area.sp_mb-20 {
    margin-bottom: 20px !important;
  }
}

.home .btn_area.footer_banner.text-center {
  display: block;
}
/* .btn_area.footer_banner.text-center {
    display: none;
} */
/* 202212追加　カテゴリー表示・ページ内リンク（アトラクション） */
.cat-group .cat-tag {
  color: #fff;
  background-color: #ff0198;
  padding: 6px 8px;
  margin: 0 5px 5px 0;
  display: inline-block;
  line-height: 1;
  font-size: 12px;
}
.cat-group .cat-tag.event,
.cat-group .cat-tag.news {
  display: none;
}
.anchor-attraction ul {
  list-style: none;
  padding-left: 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 80px;
  margin-bottom: 30px;
}
.anchor-attraction ul li {
  display: inline-block;
  width: calc(100% / 3);
}
.anchor-attraction ul li a {
  display: block;
  background-color: #387db6;
  color: #fff;
  text-align: center;
  padding: 10px 10px 35px;
  text-decoration: none;
  border: 1px solid #e8e8e8;
  position: relative;
}
.anchor-attraction ul li a:before {
  content: "\f13a";
  font-family: "Font Awesome 5 Free";
  display: inline-block;
  font-weight: bold;
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
}
.anchor-attraction ul li a.godzilla {
  background-color: #c30d23;
}
.anchor-attraction ul li a.naruto {
  background-color: #ec6c00;
}
.anchor-attraction ul li a.shinchan {
  background-color: #4eb2d1;
}
.anchor-attraction ul li a.kimetsu {
  background-color: #97d2a0;
}
.anchor-attraction ul li a.cityhunter {
  background-color: #0d1637;
}
.anchor-attraction ul li a.spy_family {
  background-color: #5d7975;
}
.anchor-attraction ul li a.monsterhunter {
  background-color: #b99b50;
  font-size: 85%;
}
.anchor-attraction ul li a.bleach {
  background-color: #000;
  line-height: 3.6;
}
.anchor-attraction ul li a.shingeki {
  background-color: #294023;
}
@media (max-width: 991px) {
  .anchor-attraction ul {
    margin-top: 50px;
  }
  .anchor-attraction ul li {
    width: 50%;
  }
}

.switcher a img {
  width: 16px;
}

/* 202303追加　アトラクション誘導リンク */
.submenu-01 {
  display: none;
  height: auto !important;
  width: 315px;
  background: #fff;
  z-index: 10;
  position: absolute;
  margin-top: 10px !important;
}
.submenu-02 {
  display: none;
  height: auto !important;
  width: 315px;
  background: #fff;
  z-index: 10;
  position: absolute;
  padding-left: 0;
  padding-top: 15px;
}
.submenu-03 {
  display: none;
  height: auto !important;
  width: 67%;
  background: #fff;
  z-index: 10;
  position: absolute;
  padding-left: 0;
  padding-top: 15px;
  right: 0;
  margin-top: 16px;
}
.submenu-04 {
  display: none !important;
  height: auto !important;
  width: 50vw !important;
  background: #fff;
  z-index: 10;
  position: absolute;
  padding-left: 0;
  padding-top: 15px;
  right: 0;
}
ul.custom_menu_main_nav.pull-right li > span {
  font-weight: bold;
  color: #000;
  font-size: 95%;
}
ul.custom_menu_main_nav li > span img {
  margin-right: 5px;
}
.main-menu ul li > span {
  color: #000;
  font-weight: bold;
}
.sp_top_nav ul li > span {
  font-size: 75%;
  color: #000;
  font-weight: bold;
}
#navigation .navigation_inner .navigation_menu li > span {
  font-size: 70%;
  color: #000;
  white-space: nowrap;
  font-weight: bold;
}
ul.custom_menu_main_nav.pull-right li:hover span {
  color: #ff0198;
  text-decoration: none;
}
span.shop_hover {
  display: block;
  background-position: bottom;
  background-repeat: no-repeat;
  height: 24px;
}
.submenu-02 a,
.submenu-03 a,
.submenu-04 a {
  display: block;
}
.submenu-01 li,
.submenu-02 li,
.submenu-03 li,
.submenu-04 li {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  padding: 15px !important;
  text-align: left !important;
  border-bottom: 2px #ececec solid;
  margin-left: 0 !important;
}
.main-menu ul li:hover .submenu-01,
.navigation_menu li:hover .submenu-03,
.sp_top_nav ul li:hover .submenu-04 {
  display: block !important;
}
.custom_menu_main_nav li:hover .submenu-02 {
  display: block !important;
}

.anchor-attraction.top-anchor-attraction ul {
  margin: 20px 0 50px;
}
.anchor-attraction.top-anchor-attraction ul li {
  width: calc(100% / 3);
}
.anchor-attraction.top-anchor-attraction ul li a {
  padding: 20px 35px 20px 10px;
}
.anchor-attraction.top-anchor-attraction ul li a:before {
  content: "\f138";
  transform: translateY(-50%);
  right: 15px;
  top: 50%;
  left: inherit;
  bottom: inherit;
}
@media (max-width: 991px) {
  .anchor-attraction.top-anchor-attraction ul li {
    width: 50%;
    font-size: 0.9em;
  }
  .anchor-attraction.top-anchor-attraction ul li a {
    padding: 20px 10px 20px 0;
  }
  .anchor-attraction.top-anchor-attraction ul li a:before {
    right: 5px;
  }
  /* SPY×FAMILY追加に伴い幅を変更　アトラクション入れ替え時に修正 */
  .anchor-attraction.top-anchor-attraction ul li:last-child {
    width: 50%;
  }
}
/* 20230404 本日の営業情報 */
.today-info-content {
  padding: 15px;
  margin-top: 15px !important;
  background-color: #fff;
  margin-bottom: 30px;
}
.today-info-item {
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
}
.today-info-item .today-info-title {
  font-weight: bold;
  width: 135px;
}
.today-info-item > *:not(.today-info-title) {
  font-weight: bold;
  width: 120px;
  font-size: 1.5em;
}
.today-btn-group {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.today-btn-group a {
  display: block;
  width: calc(50% - 10px);
  text-align: center;
  color: #fff;
  padding: 10px;
}
.today-btn-group a:hover {
  opacity: 0.8;
  color: #fff;
  text-decoration: none;
}
.today-btn-group a.today-btn-park {
  background-color: #4eb2d1;
}
.today-btn-group a.today-btn-ticket {
  background-color: #ff0198;
}
@media (min-width: 992px) {
  .today-info-content {
    font-size: 1.2em;
    padding: 30px;
    margin-top: 30px !important;
  }
  .today-info-item {
    font-size: 1em;
    margin-bottom: 20px;
  }
  .today-info-item .today-info-title {
    width: 155px;
  }
  .today-info-item > *:not(.today-info-title) {
    width: 160px;
  }
  .today-btn-group a {
    padding: 15px 10px;
  }
}
@media (min-width: 768px) {
  .today-info-content > .row {
    display: flex;
    align-items: center;
  }
  .today-info-item:last-child {
    margin-bottom: 0px;
  }
}
/* 202305 ショップ・フード single追加 */
.item-body .p-more {
  margin-bottom: 0;
  padding-bottom: 0;
}
.item-body .p-more:after {
  content: none;
}
a.more-link {
  background-color: #ff0198;
  color: #fff;
  text-decoration: none;
  padding: 0.5em 1.5em;
  display: inline-block;
}
a.more-link:hover {
  opacity: 0.8;
  color: #fff;
}

/* 202407 料金表変更 */
.ticket-table .bb_dashed {
  border-bottom: 3px dashed #e8e8e8;
}
@media screen and (max-width: 768px) {
  .ticket-table table {
    font-size: small;
  }
}
.ticket-table_note {
  /* background-color: #8b8b8b;
  padding: 4px 10px;
  color: #fff; */
  font-weight: bold;
  margin-bottom: 4px;
  display: none;
}
@media screen and (max-width: 1200px) {
  .ticket-table_note {
    display: block;
  }
}
@media screen and (min-width: 1201px) {
  .ticket-table {
    /*IE(Internet Explorer)・Microsoft Edgeへの対応*/
    -ms-overflow-style: none;
    /*Firefoxへの対応*/
    scrollbar-width: none;
  }
  /*Google Chrome、Safariへの対応*/
  .ticket-table::-webkit-scrollbar {
    display: none;
  }
}
/* 202408 期間限定アトラクション */
#limited {
  text-align: center;
  margin-top: 35px;
}

#limited .more {
  display: block;
}

#limited h2 {
  margin-bottom: 20px;
}

#limited h2 img {
  max-width: 80%;
}

.limited-item {
  background-color: #fff;
  padding: 15px;
  margin-bottom: 15px;
}

.limited-item h3 {
  color: #fff;
  padding: 15px 10px;
  margin-top: 0;
  display: flex;
  align-content: center;
  flex-wrap: wrap;
  font-size: 16px;
}

.limited-item h3 span {
  display: block;
  width: 100%;
}

.limited-item h3 span:first-child {
  margin-bottom: 10px;
}

.limited-img {
  display: none;
}

@media screen and (min-width: 768px) {
  #limited {
    margin-top: 55px;
  }

  .limited-content {
    display: flex;
    justify-content: space-between;
  }

  .limited-item {
    width: calc(100% / 2 - 10px);
    padding: 20px;
  }

  .limited-item h3 {
    min-height: 7em;
    font-size: 20px;
  }

  .limited-img {
    display: block;
    margin-top: 15px;
  }
}
/* TOP改修 */
.top-youtube {
  margin: 30px 0 !important;
}
.top-youtube iframe {
  aspect-ratio: 16 / 9;
  width: 100%;
  height: auto;
}
/* 202503 メディア掲載実績 */
.media-wrap {
  background-color: #fff;
  margin: 75px 0;
  padding: 70px;
}
.media-wrap h2 small {
  display: block;
  color: #333;
  font-weight: bold;
  margin-bottom: 50px;
  font-size: 14px;
  margin-top: 10px;
}
.media-post-list ul {
  list-style: none;
  margin: 50px 0 0;
  padding: 0;
  border-top: 1px solid #d7d6d6;
}
.media-post-list ul li {
  border-bottom: 1px solid #d7d6d6;
}
.media-post-list ul li a {
  color: #333;
  padding: 15px 0;
  display: flex;
}
.media-post-list ul li a:hover {
  opacity: 0.8;
  text-decoration: none;
}
span.media-date {
  display: inline-block;
  color: #6f6f6f;
  font-family: Lato, sans-serif;
  width: 112px;
  padding-right: 15px;
}
span.media-ttl {
  width: calc(100% - 112px);
}
.media_detail {
  margin-top: 75px !important;
  background: #fff;
  padding: 50px;
}
.media_detail .title_bg {
  background: #d7d6d6;
  padding: 20px;
  margin-bottom: 30px;
}
.media_detail .date {
  color: #6f6f6f;
  font-family: Lato, sans-serif;
  font-size: 17px;
  margin: 0;
}
h2.media_title {
  font-size: 24px;
  text-align: left;
  margin: 5px 0 0;
}
@media (max-width: 1269px) {
  .media-wrap {
    padding: 30px 15px;
    margin-top: 30px;
  }
  .media_detail {
    margin-top: 30px !important;
    padding: 15px;
  }
  .media_detail .title_bg {
    margin-bottom: 10px;
  }
  .media-wrap h2 small {
    margin-bottom: 30px;
  }
  .media-post-list ul {
    margin-top: 20px;
  }
}
@media (max-width: 767px) {
  .media-post-list ul li a {
    display: block;
  }
  span.media-date,
  span.media-ttl {
    display: block;
    width: 100%;
  }
  span.media-date {
    margin-bottom: 5px;
  }
}
/* アレルギー情報 */
.allergen-info {
  background-color: #fff;
  margin: 75px 0 !important;
  padding: 70px;
}
.allergen-info h2 small {
  display: block;
  color: #333;
  font-weight: bold;
  margin-bottom: 50px;
  font-size: 14px;
  margin-top: 10px;
}
.allergen-info h3 {
  margin-top: 50px;
  font-size: 18px;
}
.allergen-info .accordion label {
  font-size: 18px;
  text-align: center;
  margin: 0 0 23px;
  display: block;
}
.allergen-info .accordion {
  padding: 30px;
  background-color: #fcfcfc;
  border: 3px solid #d2d2d2;
  margin-bottom: 50px;
}
.allergen-info .accordion input {
  display: none;
}
.allergen-info .accordion .content,
.allergen-info .accordion ul {
  display: block;
  padding: 0;
}
.allergen-info .accordion ul {
  padding-left: 1.25em;
  margin-bottom: 0;
}
.allergen-info .accordion ul li:not(:last-child) {
  margin-bottom: 20px;
}
.allergen-info table {
  width: 100%;
}
.allergen-info table th,
.allergen-info table td {
  border: 1px solid #b3b3b3;
  padding: 15px;
}
.allergen-info table tr th:first-child {
  width: 300px;
}
.allergen-info table thead th {
  background-color: #333333;
  color: #fff;
}
@media (max-width: 1269px) {
  .allergen-info {
    padding: 30px 15px;
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .allergen-info h2 {
    font-size: 22px;
  }
  .allergen-info h3 {
    margin-top: 30px;
  }
  .allergen-info h2 small {
    margin-bottom: 30px;
  }
  .allergen-info table tr th:first-child {
    min-width: 250px;
  }
  .allergen-info table tr th:not(:first-child) {
    min-width: 430px;
  }
  .table-scroll {
    overflow-x: scroll;
  }
  .allergen-info .accordion .content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-in-out・padding 0.4s ease-in-out;
  }
  .allergen-info .accordion input:checked + label + .content {
    max-height: 700px;
  }
  .allergen-info .accordion label {
    margin-bottom: 0;
    text-align: left;
    font-size: 16px;
    position: relative;
  }
  .allergen-info .accordion {
    padding: 20px;
    margin-bottom: 1em;
  }
  .allergen-info .accordion ul {
    padding-top: 20px;
  }
  .allergen-info .accordion ul li:not(:last-child) {
    margin-bottom: 10px;
  }
  .allergen-info .accordion label::after {
    content: "\f078";
    position: absolute;
    right: 0;
    transition: transform 0.3s;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
  }
  .allergen-info .accordion input:checked + label::after {
    transform: rotate(180deg);
  }
}
/* シェアボタン */
.shre-btn {
  text-align: right;
  margin-bottom: 30px;
}
.shre-btn button {
  background: #45a9c6;
  border: none;
  padding: 5px 15px;
  border-radius: 3px;
  font-size: 16px;
  color: #fff;
}
.shre-btn button svg {
  fill: #fff;
  width: 18px;
  vertical-align: middle;
  margin-right: 10px;
}
.shre-btn-lp {
  text-align: center;
  margin-bottom: 60px;
}
.shre-btn-lp button {
  background: #45a9c6;
  border: none;
  padding: 15px;
  border-radius: 3px;
  font-size: 20px;
  min-width: 260px;
  color: #fff;
  font-family:
    "Roboto Condensed",
    "Original Yu Gothic",
    "Yu Gothic",
    YuGothic,
    Verdana,
    Meiryo,
    "M+ 1p",
    -apple-system,
    BlinkMacSystemFont,
    "Helvetica Neue",
    sans-serif;
  font-weight: normal;
}
.shre-btn-lp button svg {
  fill: #fff;
  width: 22px;
  vertical-align: middle;
  margin-right: 10px;
}
.shre-btn button:hover,
.shre-btn-lp button:hover {
  opacity: 0.9;
}
.shre-btn-lp.shre-btn-lp-dq,
.shre-btn-lp.shre-btn-lp-mh,
.shre-btn-lp.shre-btn-lp-dq,
.shre-btn-lp.shre-btn-lp-kimetsu {
  margin-top: 30px;
}
/* SP追従チケットボタン */
.sp-ticket-btn {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 2;
}
.sp-ticket-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ff0198;
  color: #fff;
  border-radius: 5em;
  aspect-ratio: 1 / 1;
  width: 100px;
  text-align: center;
  font-weight: bold;
  font-size: 0.9em;
}
.sp-ticket-btn a:hover {
  text-decoration: none;
  color: #fff;
}
@media screen and (max-width: 1269px) {
  .grecaptcha-badge {
    bottom: 125px !important;
  }
}

/* 202504 フード関連 */
.food-lead {
  margin-top: 10px;
  margin-bottom: 30px;
  font-size: 17px;
  line-height: 1.6;
}
.food-text {
  margin-top: 10px;
  font-size: 16px;
  line-height: 1.8;
}
.pink_btn.food-name {
  width: 100%;
  position: relative;
}
.food-name span {
  position: absolute;
  right: 14px;
  color: white;
  top: 50%;
  transform: translateY(-50%);
}
.food-time {
  border: 2px solid #e8e8e8;
  text-align: center;
  padding: 15px;
  margin-bottom: 20px;
}
.food-time span {
  font-size: 1.2em;
  margin-left: 10px;
}
.food-time .is-sp,
.food-child table .is-sp,
.food-anchor .is-sp {
  display: none;
}
.food-border {
  margin-top: 40px;
  margin-bottom: 40px;
}
.food-allergen,
.food-menu,
.kitchencar-list {
  margin: 30px auto;
}
#kitchencars .food-allergen {
  margin: 50px auto 80px;
}
.allergen-btn,
.menu-btn {
  position: relative;
}
.allergen-btn span,
.menu-btn span {
  position: absolute;
  right: 14px;
  color: white;
  top: 50%;
  transform: translateY(-50%);
}
.recommend-box {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
}

.food-child .food-h2 {
  font-size: 21px;
  letter-spacing: 4px;
  padding: 15px 20px;
  color: #fff;
  margin-top: 2.5rem;
  background: #4eb2d1;
  margin-bottom: 20px;
}
.food-child .food-h3 {
  text-align: center;
  padding: 15px 20px;
  margin-top: 2.5rem;
}
.food-content {
  background: #fff;
  /* padding: 90px 50px 40px; */
  padding: 40px 50px 40px;
  margin-top: 80px;
}
.food-table {
  border-collapse: collapse;
  border: 1px solid #ddd;
  width: 100%;
  margin-top: 30px;
  margin-bottom: 30px;
}
.food-table th,
.food-table td {
  border: 1px solid #ddd;
  padding: 1.5rem;
}
.food-table th {
  background: #d2d2d2;
  font-weight: bold;
}
.food-table .note {
  margin-left: 1rem;
}
.kitchencar-sub-ttl {
  padding: 14px 10px;
  color: #494949;
  background: #f4f4f4;
  border-left: solid 5px #7db4e6;
  font-size: 19px;
  margin-bottom: 20px;
}
.food-anchors {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding: 0;
  list-style: none;
}
.food-anchor a {
  display: block;
  background-color: #4eb2d1;
  color: #fff;
  text-align: center;
  padding: 10px 10px 35px;
  text-decoration: none;
  border: 1px solid #fff;
  position: relative;
}
.food-anchor a::before {
  content: "\f13a";
  font-family: "Font Awesome 5 Free";
  display: inline-block;
  font-weight: bold;
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 991px) {
  .food-content {
    /* padding: 80px 20px 40px; */
    padding: 20px 10px 40px;
    margin-top: 40px;
  }
}
@media (min-width: 992px) {
  .recommend-box {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
}
@media screen and (max-width: 767px) {
  .food-lead {
    font-size: 15px;
  }
  .food-text {
    font-size: 14px;
  }
  .food-time .is-sp,
  .food-child table .is-sp,
  .food-anchor .is-sp {
    display: block;
  }
  .food-border {
    margin-top: 25px;
    margin-bottom: 25px;
  }
  .food-allergen {
    margin: 15px auto;
  }
  .recommend-box .photo_container.fade:hover .description {
    display: flex;
    align-items: center;
    height: 100%;
    top: 0;
    margin-top: 0;
  }
  .food-anchor:nth-child(3) a {
    font-size: 0.84em;
  }
  #kitchencars .food-allergen {
    margin: 40px auto 60px;
  }
  .food-table .note {
    margin-left: 0;
  }
}
@media (max-width: 479px) {
  #shop h2.title {
    left: auto;
    margin-left: auto;
  }
  .food-child .food-h3 {
    margin: 1rem 0;
  }
  .food-child .food-h3 img {
    width: 75%;
    margin: auto;
  }
  .recommend-box .photo_container.fade:hover .description p {
    font-size: 13px;
  }
}
/* レストラン投稿 */
#shop h3.food-news-ttl,
h3.food-news-ttl {
  margin-top: 70px;
}
.restaurant-posts-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 1000px;
  margin: 0 auto 30px;
}
.naruto_shinobizato_food .restaurant-posts-list {
  padding: 0 15px;
}
.restaurant-posts-list > .restaurant-item {
  width: calc(100% / 2 - 10px);
  text-decoration: none;
  transition: opacity 0.5s ease;
  margin-bottom: 10px;
}
.restaurant-posts-list > .restaurant-item:hover * {
  opacity: 0.8;
}
.restaurant-posts-list .restaurant-thumb img {
  aspect-ratio: 4 / 3;
  object-fit: contain;
  object-position: center center;
}
.restaurant-posts-list .restaurant-info-line {
  margin-top: 10px;
}
.restaurant-posts-list .restaurant-date {
  color: #6f6f6f;
  font-family: Lato, sans-serif;
  margin: 0 10px 5px 0;
}
.restaurant-posts-list .restaurant-title {
  color: #000;
  font-weight: bold;
}
.restaurant-posts-list .restaurant-category-tag {
  color: #fff;
  background-color: #ff0198;
  padding: 5px 6px;
  margin: 0 5px 5px 0;
  display: inline-block;
  line-height: 1;
  font-size: 11px;
  font-family: Lato, sans-serif;
}
@media (min-width: 992px) {
  .restaurant-posts-list > .restaurant-item {
    width: calc(100% / 3 - 10px);
    margin-bottom: 20px;
  }
  .restaurant-posts-list:after {
    content: "";
    width: calc(100% / 3 - 10px);
  }
}

/* 202507 メニュー下層 */
#food-lower.food-lower {
  background-color: #fff;
  margin-top: 75px;
}
.food-lower > h2.food-h2 {
  margin: 0em;
  padding: 1em;
  background-color: #0cc;
  color: #fff;
  width: 100%;
}
.food-lower * {
  width: 100%;
}
.food-lower__contents {
  padding: 2em;
  max-width: 600px;
  margin: auto;
}
.food-lower ul li {
  padding: 0.5em;
}
.food-lower__gallery ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 0;
  list-style: none;
  background-color: #fafaff;
  padding: 0.5em;
  text-align: center;
}
.food-lower__gallery ul li h3 {
  font-size: 90%;
}
.food-lower__gallery {
  margin-bottom: 30px;
}
.food-lower__list ul {
  padding-left: 0;
}
.food-lower__list li {
  display: flex;
  border-bottom: dashed 1px #960;
}
.food-lower__list .item1 {
  width: 70%;
}
.food-lower__list .item2 {
  width: 30%;
  text-align: right;
}
.food-lower .annotation{
  max-width: 600px;
  margin: 24px auto 0;
}
.food-lower .annotation ol{
  padding-left: 1.5rem;
}
a.black_btn {
  display: block;
  text-align: center;
  background: #000;
  width: 80%;
  margin: auto;
  margin-top: 2em;
  color: #fff;
  padding: 15px;
  text-decoration: none;
}
.page-template-default #lightbox {
  position: fixed;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 1269px) {
  #food-lower.food-lower {
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  .food-lower__contents {
    padding: 1em;
  }
  .food-lower__gallery{
    margin-bottom: 0;
  }
  .food-lower__list {
    padding: 1em;
  }
  .food-lower .annotation{
    padding: 1em;
    margin-top: 0;
  }
  .food-lower > h2.food-h2 {
    font-size: 1.8em;
  }
}

/* 20250819 共通ギャラリー */
.common-gallery{
  margin: 50px 0;
}
.common-gallery ul,
.common-gallery li{
  padding: 0;
  margin: 0;
  list-style: none;
}
.common-gallery__list{
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 20px;
}
.common-gallery__item img{
  /* width: 100%; */
}

@media screen and (max-width: 959px) {
  .common-gallery__list{
    grid-template-columns: repeat(3,1fr);
  }
}
@media screen and (max-width: 599px) {
  .common-gallery{
    margin: 30px 0;
  }
  .common-gallery__list{
    grid-template-columns: repeat(2,1fr);
    gap: 10px;
  }
}
a.x-link-btn {
  background-color: #000;
  color: #fff;
  text-decoration: none;
  padding: 5px 12px;
  border-radius: 1em;
}
/* 1日のプラン　改修 */
#plan h2.title {
  top:65px;
}
#plan h3 {
  background-color: #4eb2d1;
}
#plan .default-bg-white h3:first-child {
  margin-top: 5.5rem;
}
#plan .default-bg-white {
  margin-top: 0;
}
ul.plan_post_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  list-style: none;
  padding: 0;
  margin-bottom: 30px;
}
ul.plan_post_list:after {
  content: "";
  width: calc(100%/3 - 20px);
}
ul.plan_post_list li {
  width: calc(100%/3 - 20px);
}
ul.plan_post_list li a {
  text-decoration: none;
  color: #333;
}
.plan_post_title {
  font-size: 1.125em;
  font-weight: 500;
  margin: 10px 0;
}
.plan_post_block_btn {
  text-align: center;
}
ul.plan_post_list li a .btn_link {
  display: inline-block;
  padding: 10px 20px 8px;
  width: 80%;
  color: #fff;
  background-color: #ff0198;
  font-weight: bold;
}
ul.plan_post_list li a:hover .btn_link {
  opacity: .8;
  transition: all 0.4s ease;
}
.plan_post_block_img img {
  aspect-ratio: 107 / 75;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  #plan h2.title {
    top:40px;
  }
  ul.plan_post_list li {
    width: calc(100%/3 - 10px);
  }
}
@media screen and (max-width: 599px) {
  ul.plan_post_list {
    display: block;
  }
  ul.plan_post_list li {
    width: 100%;
    margin-bottom: 20px;
  }
}


/*202511*/
/* WPML言語スイッチャー - アコーディオンスタイル */

.wpml-ls-statics-footer.wpml-ls.wpml-ls-legacy-list-horizontal {
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  min-width: 151px;
  background:#303030 linear-gradient(180deg, #474747 0%, #303030 70%);
}

.wpml-ls-statics-footer.wpml-ls.wpml-ls-legacy-list-horizontal > ul {
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
  border-left: 1px solid #161616;
  border-right: 1px solid #161616;
  border-bottom: 1px solid #161616;
  background-color: #474747;
  border-radius: 4px;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-item {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  float: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  max-height: none !important;
  overflow: visible !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal.wpml-ls-open .wpml-ls-item {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  max-height: none !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal.wpml-ls-open .wpml-ls-current-language {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal:not(.wpml-ls-open) .wpml-ls-item:not(.wpml-ls-current-language) {
  display: none !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-item a {
  background-color: rgba(0, 0, 0, 0.7);
  color: #fff;
  padding: 3px 5px;
  border-radius: 0;
  display: block !important;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  white-space: nowrap;
  float: none !important;
  cursor: pointer;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-item:first-child a {
  border-radius: 4px 4px 0 0;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-item:last-child a {
  border-bottom: none;
  border-radius: 0 0 4px 4px;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal:not(.wpml-ls-open) .wpml-ls-current-language a {
  border-radius: 4px !important;
  border-bottom: none !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-item a:hover {
  background-color: rgba(0, 0, 0, 0.9);
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal.wpml-ls-open .wpml-ls-current-language a {
  background-color: rgba(100, 100, 100, 0.8) !important;
  font-weight: bold !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-flag {
  margin-right: 8px;
  vertical-align: middle;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal:not(.wpml-ls-open) .wpml-ls-current-language a {
  min-width: 121px;
  padding: 3px 5px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3);
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-cloned-current {
  display: none !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal.wpml-ls-open .wpml-ls-cloned-current {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal.wpml-ls-open .wpml-ls-cloned-current a {
  background-color: rgba(100, 100, 100, 0.8) !important;
  font-weight: bold !important;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal:not(.wpml-ls-open) .wpml-ls-current-language a::after {
  content: ' ▼';
  font-size: 0.8em;
  margin-left: auto;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal.wpml-ls-open .wpml-ls-cloned-current a::after {
  content: ' ▲';
  font-size: 0.8em;
  margin-left: auto;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal.wpml-ls-open .wpml-ls-current-language:not(.wpml-ls-cloned-current) a::after {
  content: none;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-item a {
  display: flex !important;
  align-items: center;
}

.wpml-ls-statics-footer.wpml-ls-legacy-list-horizontal .wpml-ls-flag {
  flex-shrink: 0;
  margin-right: 8px;
  vertical-align: middle;

}
