@charset "UTF-8";
nav.navbar.navbar-expand-lg.navbar-dark {
  background: #f68ca2; }

body {
  color: #424242; }

a {
  color: #424242; }
  a:hover {
    opacity: 1;
    color: #424242; }

/** {
	outline: 1px solid magenta;
}*/
body {
  /* -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   overflow-x: hidden;
   word-wrap: break-word;
   overflow-wrap: break-word;*/ }

body {
  box-sizing: border-box; }

html {
  scroll-behavior: smooth; }

img {
  width: 100%; }

section {
  padding-top: 80px;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    section {
      padding-top: 50px; } }

.container.section_inner {
  padding-top: 100px;
  margin-top: -100px; }
  @media screen and (max-width: 767px) {
    .container.section_inner {
      padding-top: 100px;
      margin-top: -90px; } }

/*英語*/
h1, .h1 {
  font-size: 3rem;
  line-height: 3rem;
  color: #f68ca2;
  margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    h1, .h1 {
      font-size: 2.8rem; } }

/*簡体*/
@media screen and (max-width: 767px) {
  .cn h1 {
    font-size: 2.4rem; } }

/*繁体*/
@media screen and (max-width: 767px) {
  .tw h1 {
    font-size: 2.4rem; } }

h2, .h2 {
  font-size: 2.5rem;
  color: #f68ca2;
  margin-bottom: 0; }

.row-eq-height {
  display: flex;
  flex-wrap: wrap; }

.row {
  margin-right: 0;
  margin-left: 0; }

/*矢印*/
.img_arrow_s:after {
  width: 6px;
  height: 10px;
  margin-right: -2px;
  background-image: url(../images/icon_link_white.svg);
  background-repeat: no-repeat;
  background-size: 6px 10px;
  background-position: center center;
  content: '';
  padding-left: 1rem; }

/*角R*/
.round-corner {
  border-radius: 0.3rem; }

@media screen and (min-width: 1025px) {
  .forSP {
    display: none !important; } }
@media screen and (min-width: 768px) {
  .forSP {
    display: none !important; } }

@media screen and (max-width: 767px) {
  .forPC {
    display: none !important; } }

header .dropdown-item.active {
  color: #f68ca2;
  text-decoration: none;
  background-color: #fff;
  overflow: hidden; }

.navbar-brand {
  width: 290px; }

.navbar-brand img {
  width: 100%; }

@media screen and (max-width: 767px) {
  .navbar-brand {
    width: 200px; }

  button.navbar-toggler {
    /*display: none;*/ } }
.navbar-nav .show > .nav-link, .navbar-dark .navbar-nav .active > .nav-link, .navbar-dark .navbar-nav .nav-link.show, .navbar-dark .navbar-nav .nav-link.active {
  color: #004e97;
  font-weight: bold; }

.navbar-dark .navbar-toggler {
  display: none; }

.navbar-dark .navbar-nav .nav-link {
  color: rgba(0, 78, 151, 0.5);
  font-weight: bold; }
  .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:active, .navbar-dark .navbar-nav .nav-link:focus {
    color: #004e97 !important; }

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75); }

.select2-search--dropdown {
  display: none;
  /*padding: 4px;*/ }

span.select2-selection.select2-selection--single {
  font-size: 0.8em; }

.select2-container--default .select2-selection--single .select2-selection__rendered {
  /*color: #ff0000;
  line-height: 28px;*/ }

.rounded-circle {
  border-radius: 50% !important;
  width: 100%; }

@media screen and (max-width: 767px) {
  #subnav {
    padding-top: 0;
    position: fixed;
    bottom: 0;
    z-index: 100;
    background: #8ac4ee; } }
#subnav h3 {
  font-size: 1rem;
  text-align: center;
  margin-top: 10px;
  font-weight: bold; }
  @media screen and (max-width: 767px) {
    #subnav h3 {
      font-size: .75rem;
      margin-top: -6px;
      margin-bottom: 12px; } }
#subnav h2 {
  line-height: 2.5rem; }
@media screen and (max-width: 767px) {
  #subnav .container {
    padding-left: 0; } }
#subnav .subnav_btn {
  width: 15%;
  margin: 0;
  padding: 1rem; }
  @media screen and (max-width: 767px) {
    #subnav .subnav_btn {
      width: 18%;
      padding: 0;
      margin: 0; } }
#subnav .subnav_btn_wrap {
  display: flex;
  justify-content: center;
  max-width: 930px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    #subnav .subnav_btn_wrap {
      width: 100%; } }
#subnav .section_inner {
  padding-top: 0;
  margin-top: 0; }
@media screen and (max-width: 767px) {
  #subnav .subnav_btn img {
    width: 90%; } }

#notice .jumbotron {
  background-color: rgba(237, 147, 52, 0.08);
  padding: 2rem 1rem 1rem; }
#notice svg {
  height: 1.25rem;
  margin-right: 0.625rem;
  fill: #dc3545; }
#notice ul {
  padding-left: 2rem; }
  @media screen and (max-width: 767px) {
    #notice ul {
      padding-left: 1rem; } }

#mv {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important; }
  #mv .container {
    margin: 0;
    padding: 0;
    max-width: 100%; }
  #mv .col-12 {
    padding-right: 0;
    padding-left: 0; }

.carousel-indicators {
  position: inherit;
  margin: 1rem 0 0 0; }
  .carousel-indicators li {
    border-radius: 50%;
    margin: 1px 3px;
    height: 10px;
    max-width: 10px;
    background-color: #555; }

#enjoy ul {
  list-style: none;
  padding: 0;
  display: flex;
  align-items: center;
  margin-bottom: 0; }
  @media screen and (max-width: 767px) {
    #enjoy ul {
      display: inherit;
      margin-bottom: 2rem; } }
#enjoy .ul_odd_overviwe {
  flex-direction: row-reverse; }
#enjoy li.li_image {
  width: 50%;
  padding: 2%; }
  @media screen and (max-width: 767px) {
    #enjoy li.li_image {
      width: 90%;
      margin: 0 auto; } }
#enjoy li.li_text {
  width: 50%; }
  @media screen and (max-width: 767px) {
    #enjoy li.li_text {
      width: 100%; } }
#enjoy img {
  width: 100% !important;
  height: 100% !important; }
#enjoy .btn {
  background-color: #8ac4ee;
  color: white; }

/* Circles */
.circle-1 {
  /*background: #f66;*/
  border-radius: 50% 50% 50% 70%/50% 50% 70% 60%;
  /*animation: border-animation 6s infinite linear;*/ }

.circle-2 {
  /*background: #f92;*/
  border-radius: 80% 30% 50% 50%/50%;
  /*animation: border-animation 4s infinite linear;*/ }

.circle-3 {
  /*background: #fc2;*/
  border-radius: 40% 40% 50% 40%/30% 50% 50% 50%;
  /*animation: border-animation 3s infinite linear;*/ }

/* Animation */
@keyframes border-animation {
  to {
    transform: rotate(360deg); } }
#movie .jumbotron {
  background-image: url("../images/bg_yumekawa.jpg");
  background-size: cover;
  background-color: rgba(255, 255, 255, 0.3);
  background-blend-mode: lighten;
  border-radius: 0 0 0.3rem 0.3rem;
  padding: 2rem; }
  @media screen and (max-width: 767px) {
    #movie .jumbotron {
      padding: 1rem; } }
#movie .container {
  padding: 0;
  margin: 0;
  max-width: 100%; }
#movie video {
  width: 100%; }
#movie .caution {
  width: 96%;
  margin: 0 auto;
  line-height: 1rem; }
#movie .youtube {
  position: relative;
  padding-bottom: 56.25%;
  /*アスペクト比 16:9の場合の縦幅*/
  height: 0;
  overflow: hidden; }
#movie .youtube iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

#about img {
  padding: 0.5rem 1rem 0.5rem 1rem;
  width: 100%;
  height: 100%; }
#about h5 {
  font-size: .75rem; }
#about .row {
  text-align: center;
  align-items: flex-start; }
  @media screen and (max-width: 767px) {
    #about .row {
      width: 100%;
      margin: 0 auto; } }
@media screen and (max-width: 767px) {
  #about .col-4 {
    padding: 0; } }
@media screen and (max-width: 767px) {
  #about .btn_detail {
    width: 80%;
    margin: 0 auto; } }
#about .SPLpage div {
  display: block; }
#about .card {
  flex: block; }
#about .card-body {
  padding: 0 !important; }

#coupon ul {
  font-size: 0.75rem;
  margin-top: 0;
  padding: 0 0 0 1rem; }
#coupon .bg_day {
  background-color: #f9c2d0; }
#coupon .bg_afternoon {
  background-color: #EAD9FF; }
#coupon .coupon_wrap {
  padding: 1.5rem 2rem; }
  @media screen and (max-width: 767px) {
    #coupon .coupon_wrap {
      padding: 1rem 1rem 0.5rem 1rem; } }
@media screen and (max-width: 767px) {
  #coupon .img_coupon {
    width: 75%;
    margin: 0;
    margin-bottom: 10px; } }
#coupon .bg-white {
  background-color: #fff !important;
  margin: 0 0 1rem 0;
  padding: 1rem;
  border-radius: 4px; }
#coupon .btn-ticket {
  background-color: #999;
  width: 85%; }
#coupon .col-4.qrcode {
  padding: 0; }
#coupon a {
  display: inline-block;
  text-decoration: none; }
#coupon a:hover {
  opacity: .5; }
#coupon .arrow {
  width: 30px;
  position: absolute;
  right: 2rem;
  bottom: 2rem; }
  @media screen and (max-width: 767px) {
    #coupon .arrow {
      right: 1rem;
      bottom: 50%;
      top: 45%; } }
#coupon .coupon_box {
  margin: 0; }
#coupon .btn_close {
  width: 100%;
  text-align: right; }
#coupon .btn-default {
  color: #fff;
  font-size: 4rem;
  line-height: 4rem;
  margin-top: -1.5rem;
  padding: 0; }
#coupon .modal-body {
  padding: 0; }
#coupon .division {
  font-size: 175%;
  font-weight: bold; }

#adv img {
  width: 100%;
  border: 1px solid #f68ca2;
  padding: 5px 0; }
#adv .col-md-4 {
  padding-right: 5px;
  padding-left: 5px; }

@media screen and (max-width: 767px) {
  #access .row {
    display: inherit !important; } }
@media screen and (max-width: 767px) {
  #access .d-flex {
    display: inherit !important; } }
#access .btn {
  background-color: #8ac4ee;
  color: white; }
#access .train_directions_col {
  margin: 10px 0; }
@media screen and (max-width: 767px) {
  #access .col-lg-8 {
    padding-right: 0;
    padding-left: 0; } }
#access .smalltext {
  line-height: 1rem; }

#floormap .btn {
  background-color: #8ac4ee;
  color: white;
  width: 100%;
  font-weight: bold;
  padding: .5rem; }

#sns .insta {
  background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat; }
#sns img {
  margin-top: -5px; }

footer {
  background-color: #f68ca2;
  color: #fff;
  margin-top: 50px;
  font-size: .75rem;
  text-align: center;
  padding: 2rem 1rem; }
  @media screen and (max-width: 767px) {
    footer {
      padding: 2rem 0 8rem;
      font-size: 1rem; } }
  footer p {
    margin-top: 0;
    margin-bottom: 0; }
  footer a {
    color: #fff; }
  footer .container {
    margin: .5rem auto; }

.btn-circle {
  width: 45px;
  height: 45px;
  line-height: 45px;
  text-align: center;
  padding: 0;
  border-radius: 50%; }

.btn-circle i {
  position: relative;
  top: -1px; }

.btn-circle-sm {
  width: 35px;
  height: 35px;
  line-height: 35px;
  font-size: 0.9rem; }

.btn-circle-lg {
  width: 55px;
  height: 55px;
  line-height: 55px;
  font-size: 1.1rem; }

.btn-circle-xl {
  width: 70px;
  height: 70px;
  line-height: 70px;
  font-size: 1.3rem; }
  @media screen and (max-width: 767px) {
    .btn-circle-xl {
      width: 50px;
      height: 50px;
      line-height: 50px; } }
