@charset "UTF-8";
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
/*----------------------------------------------------------------------------------------------------------
writing-mode mixin
    Usage:
        $orientation    v (vertical)
                        h (horizontal)
		$direction      rl (right to left)
						lr (left to right)
----------------------------------------------------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=Montserrat:300,500,600,700|Noto+Sans+JP:400,500,700|Noto+Serif+JP:600|Oswald:400,500&display=swap");
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }
  q:before, q:after, blockquote:before, blockquote:after {
    content: "";
    content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  padding: 15px 15px;
  display: inline-block;
  cursor: pointer;
  transition-property: opacity, filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible; }
  .hamburger:hover {
    opacity: 0.7; }

.hamburger-box {
  width: 40px;
  height: 24px;
  display: inline-block;
  position: relative; }

.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -2px; }
  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
    width: 40px;
    height: 4px;
    background-color: #000;
    border-radius: 4px;
    position: absolute;
    transition-property: transform;
    transition-duration: 0.15s;
    transition-timing-function: ease; }
  .hamburger-inner::before, .hamburger-inner::after {
    content: "";
    display: block; }
  .hamburger-inner::before {
    top: -10px; }
  .hamburger-inner::after {
    bottom: -10px; }

/*
   * 3DX
   */
.hamburger--3dx .hamburger-box {
  perspective: 80px; }

.hamburger--3dx .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx .hamburger-inner::before, .hamburger--3dx .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(180deg); }
  .hamburger--3dx.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DX Reverse
   */
.hamburger--3dx-r .hamburger-box {
  perspective: 80px; }

.hamburger--3dx-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dx-r .hamburger-inner::before, .hamburger--3dx-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dx-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateY(-180deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dx-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DY
   */
.hamburger--3dy .hamburger-box {
  perspective: 80px; }

.hamburger--3dy .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy .hamburger-inner::before, .hamburger--3dy .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(-180deg); }
  .hamburger--3dy.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * 3DY Reverse
   */
.hamburger--3dy-r .hamburger-box {
  perspective: 80px; }

.hamburger--3dy-r .hamburger-inner {
  transition: transform 0.15s cubic-bezier(0.645, 0.045, 0.355, 1), background-color 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }
  .hamburger--3dy-r .hamburger-inner::before, .hamburger--3dy-r .hamburger-inner::after {
    transition: transform 0s 0.1s cubic-bezier(0.645, 0.045, 0.355, 1); }

.hamburger--3dy-r.is-active .hamburger-inner {
  background-color: transparent;
  transform: rotateX(180deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::before {
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--3dy-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -10px, 0) rotate(-45deg); }

/*
   * Arrow
   */
.hamburger--arrow.is-active .hamburger-inner::before {
  transform: translate3d(-8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

.hamburger--arrow.is-active .hamburger-inner::after {
  transform: translate3d(-8px, 0, 0) rotate(45deg) scale(0.7, 1); }

/*
   * Arrow Right
   */
.hamburger--arrow-r.is-active .hamburger-inner::before {
  transform: translate3d(8px, 0, 0) rotate(45deg) scale(0.7, 1); }

.hamburger--arrow-r.is-active .hamburger-inner::after {
  transform: translate3d(8px, 0, 0) rotate(-45deg) scale(0.7, 1); }

/*
   * Arrow Alt
   */
.hamburger--arrowalt .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(-8px, -10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(-8px, 10px, 0) rotate(45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
   * Arrow Alt Right
   */
.hamburger--arrowalt-r .hamburger-inner::before {
  transition: top 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r .hamburger-inner::after {
  transition: bottom 0.1s 0.1s ease, transform 0.1s cubic-bezier(0.165, 0.84, 0.44, 1); }

.hamburger--arrowalt-r.is-active .hamburger-inner::before {
  top: 0;
  transform: translate3d(8px, -10px, 0) rotate(45deg) scale(0.7, 1);
  transition: top 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

.hamburger--arrowalt-r.is-active .hamburger-inner::after {
  bottom: 0;
  transform: translate3d(8px, 10px, 0) rotate(-45deg) scale(0.7, 1);
  transition: bottom 0.1s ease, transform 0.1s 0.1s cubic-bezier(0.895, 0.03, 0.685, 0.22); }

/*
   * Boring
   */
.hamburger--boring .hamburger-inner, .hamburger--boring .hamburger-inner::before, .hamburger--boring .hamburger-inner::after {
  transition-property: none; }

.hamburger--boring.is-active .hamburger-inner {
  transform: rotate(45deg); }
  .hamburger--boring.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--boring.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/*
   * Collapse
   */
.hamburger--collapse .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Collapse Reverse
   */
.hamburger--collapse-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0.13s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--collapse-r .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0.1s linear; }
  .hamburger--collapse-r .hamburger-inner::before {
    transition: top 0.12s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--collapse-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--collapse-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0.1s 0.22s linear; }
  .hamburger--collapse-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.16s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.25s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Elastic
   */
.hamburger--elastic .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic .hamburger-inner::before {
    top: 10px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic .hamburger-inner::after {
    top: 20px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-270deg);
    transition-delay: 0.075s; }

/*
   * Elastic Reverse
   */
.hamburger--elastic-r .hamburger-inner {
  top: 2px;
  transition-duration: 0.275s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55); }
  .hamburger--elastic-r .hamburger-inner::before {
    top: 10px;
    transition: opacity 0.125s 0.275s ease; }
  .hamburger--elastic-r .hamburger-inner::after {
    top: 20px;
    transition: transform 0.275s cubic-bezier(0.68, -0.55, 0.265, 1.55); }

.hamburger--elastic-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-135deg);
  transition-delay: 0.075s; }
  .hamburger--elastic-r.is-active .hamburger-inner::before {
    transition-delay: 0s;
    opacity: 0; }
  .hamburger--elastic-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(270deg);
    transition-delay: 0.075s; }

/*
   * Emphatic
   */
.hamburger--emphatic {
  overflow: hidden; }
  .hamburger--emphatic .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic .hamburger-inner::after {
      top: 10px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent; }
    .hamburger--emphatic.is-active .hamburger-inner::before {
      left: -80px;
      top: -80px;
      transform: translate3d(80px, 80px, 0) rotate(45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic.is-active .hamburger-inner::after {
      right: -80px;
      top: -80px;
      transform: translate3d(-80px, 80px, 0) rotate(-45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Emphatic Reverse
   */
.hamburger--emphatic-r {
  overflow: hidden; }
  .hamburger--emphatic-r .hamburger-inner {
    transition: background-color 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::before {
      left: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, left 0.125s 0.175s ease-in; }
    .hamburger--emphatic-r .hamburger-inner::after {
      top: 10px;
      right: 0;
      transition: transform 0.125s cubic-bezier(0.6, 0.04, 0.98, 0.335), top 0.05s 0.125s linear, right 0.125s 0.175s ease-in; }
  .hamburger--emphatic-r.is-active .hamburger-inner {
    transition-delay: 0s;
    transition-timing-function: ease-out;
    background-color: transparent; }
    .hamburger--emphatic-r.is-active .hamburger-inner::before {
      left: -80px;
      top: 80px;
      transform: translate3d(80px, -80px, 0) rotate(-45deg);
      transition: left 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }
    .hamburger--emphatic-r.is-active .hamburger-inner::after {
      right: -80px;
      top: 80px;
      transform: translate3d(-80px, -80px, 0) rotate(45deg);
      transition: right 0.125s ease-out, top 0.05s 0.125s linear, transform 0.125s 0.175s cubic-bezier(0.075, 0.82, 0.165, 1); }

/*
   * Slider
   */
.hamburger--slider .hamburger-inner {
  top: 2px; }
  .hamburger--slider .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider .hamburger-inner::after {
    top: 20px; }

.hamburger--slider.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--slider.is-active .hamburger-inner::before {
    transform: rotate(-45deg) translate3d(-5.71429px, -6px, 0);
    opacity: 0; }
  .hamburger--slider.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(-90deg); }

/*
   * Slider Reverse
   */
.hamburger--slider-r .hamburger-inner {
  top: 2px; }
  .hamburger--slider-r .hamburger-inner::before {
    top: 10px;
    transition-property: transform, opacity;
    transition-timing-function: ease;
    transition-duration: 0.15s; }
  .hamburger--slider-r .hamburger-inner::after {
    top: 20px; }

.hamburger--slider-r.is-active .hamburger-inner {
  transform: translate3d(0, 10px, 0) rotate(-45deg); }
  .hamburger--slider-r.is-active .hamburger-inner::before {
    transform: rotate(45deg) translate3d(5.71429px, -6px, 0);
    opacity: 0; }
  .hamburger--slider-r.is-active .hamburger-inner::after {
    transform: translate3d(0, -20px, 0) rotate(90deg); }

/*
   * Spring
   */
.hamburger--spring .hamburger-inner {
  top: 2px;
  transition: background-color 0s 0.13s linear; }
  .hamburger--spring .hamburger-inner::before {
    top: 10px;
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring .hamburger-inner::after {
    top: 20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring.is-active .hamburger-inner {
  transition-delay: 0.22s;
  background-color: transparent; }
  .hamburger--spring.is-active .hamburger-inner::before {
    top: 0;
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(45deg); }
  .hamburger--spring.is-active .hamburger-inner::after {
    top: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 10px, 0) rotate(-45deg); }

/*
   * Spring Reverse
   */
.hamburger--spring-r .hamburger-inner {
  top: auto;
  bottom: 0;
  transition-duration: 0.13s;
  transition-delay: 0s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spring-r .hamburger-inner::after {
    top: -20px;
    transition: top 0.2s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), opacity 0s linear; }
  .hamburger--spring-r .hamburger-inner::before {
    transition: top 0.1s 0.2s cubic-bezier(0.33333, 0.66667, 0.66667, 1), transform 0.13s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spring-r.is-active .hamburger-inner {
  transform: translate3d(0, -10px, 0) rotate(-45deg);
  transition-delay: 0.22s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spring-r.is-active .hamburger-inner::after {
    top: 0;
    opacity: 0;
    transition: top 0.2s cubic-bezier(0.33333, 0, 0.66667, 0.33333), opacity 0s 0.22s linear; }
  .hamburger--spring-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(90deg);
    transition: top 0.1s 0.15s cubic-bezier(0.33333, 0, 0.66667, 0.33333), transform 0.13s 0.22s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand
   */
.hamburger--stand .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand.is-active .hamburger-inner {
  transform: rotate(90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Stand Reverse
   */
.hamburger--stand-r .hamburger-inner {
  transition: transform 0.075s 0.15s cubic-bezier(0.55, 0.055, 0.675, 0.19), background-color 0s 0.075s linear; }
  .hamburger--stand-r .hamburger-inner::before {
    transition: top 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--stand-r .hamburger-inner::after {
    transition: bottom 0.075s 0.075s ease-in, transform 0.075s 0s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--stand-r.is-active .hamburger-inner {
  transform: rotate(-90deg);
  background-color: transparent;
  transition: transform 0.075s 0s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0s 0.15s linear; }
  .hamburger--stand-r.is-active .hamburger-inner::before {
    top: 0;
    transform: rotate(-45deg);
    transition: top 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--stand-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(45deg);
    transition: bottom 0.075s 0.1s ease-out, transform 0.075s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spin
   */
.hamburger--spin .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin.is-active .hamburger-inner {
  transform: rotate(225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Spin Reverse
   */
.hamburger--spin-r .hamburger-inner {
  transition-duration: 0.22s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--spin-r .hamburger-inner::before {
    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
  .hamburger--spin-r .hamburger-inner::after {
    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--spin-r.is-active .hamburger-inner {
  transform: rotate(-225deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--spin-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
  .hamburger--spin-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg);
    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Squeeze
   */
.hamburger--squeeze .hamburger-inner {
  transition-duration: 0.075s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  .hamburger--squeeze .hamburger-inner::before {
    transition: top 0.075s 0.12s ease, opacity 0.075s ease; }
  .hamburger--squeeze .hamburger-inner::after {
    transition: bottom 0.075s 0.12s ease, transform 0.075s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

.hamburger--squeeze.is-active .hamburger-inner {
  transform: rotate(45deg);
  transition-delay: 0.12s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  .hamburger--squeeze.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0;
    transition: top 0.075s ease, opacity 0.075s 0.12s ease; }
  .hamburger--squeeze.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg);
    transition: bottom 0.075s ease, transform 0.075s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*
   * Vortex
   */
.hamburger--vortex .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex .hamburger-inner::before, .hamburger--vortex .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex .hamburger-inner::after {
    transition-property: bottom, transform; }

.hamburger--vortex.is-active .hamburger-inner {
  transform: rotate(765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex.is-active .hamburger-inner::before, .hamburger--vortex.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(90deg); }

/*
   * Vortex Reverse
   */
.hamburger--vortex-r .hamburger-inner {
  transition-duration: 0.2s;
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r .hamburger-inner::before, .hamburger--vortex-r .hamburger-inner::after {
    transition-duration: 0s;
    transition-delay: 0.1s;
    transition-timing-function: linear; }
  .hamburger--vortex-r .hamburger-inner::before {
    transition-property: top, opacity; }
  .hamburger--vortex-r .hamburger-inner::after {
    transition-property: bottom, transform; }

.hamburger--vortex-r.is-active .hamburger-inner {
  transform: rotate(-765deg);
  transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
  .hamburger--vortex-r.is-active .hamburger-inner::before, .hamburger--vortex-r.is-active .hamburger-inner::after {
    transition-delay: 0s; }
  .hamburger--vortex-r.is-active .hamburger-inner::before {
    top: 0;
    opacity: 0; }
  .hamburger--vortex-r.is-active .hamburger-inner::after {
    bottom: 0;
    transform: rotate(-90deg); }

/* argument */
/* site style */
/* [ opacity ]
-------------------------------------------------*/
/* [ display style ]
-------------------------------------------------*/
/* [ background-image ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
/* [ illustrator & photoshop letter spacing ]
-------------------------------------------------*/
/* [ easy breakpoint ]
-------------------------------------------------*/
/* [ easy transform ]
-------------------------------------------------*/
/* [ writing-mode ]
-------------------------------------------------*/
#contact {
  /* dislay */
  /* contact */ }
  #contact .errMsg {
    margin-left: 1em;
    padding-bottom: 1px;
    display: block;
    line-height: 1.4;
    text-indent: -.9em; }
  #contact .formError {
    padding-bottom: 13px;
    display: block; }
  #contact .fixed {
    padding-bottom: 0px; }
  #contact .formError .formErrorClose {
    border: solid #252525 2px;
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: -4px;
    right: -4px;
    color: #efefef;
    background: #333;
    font-weight: bold;
    text-align: center;
    line-height: middle;
    cursor: pointer;
    z-index: 2;
    -webkit-border-radius: 9px 9px 9px 9px;
    -moz-border-radius: 9px 9px 9px 9px;
    -ms-border-radius: 9px 9px 9px 9px;
    -o-border-radius: 9px 9px 9px 9px;
    border-radius: 9px 9px 9px 9px;
    -webkit-box-shadow: 1px -1px 3px #888;
    -moz-box-shadow: 1px -1px 3px #888;
    -ms-box-shadow: 1px -1px 3px #888;
    -o-box-shadow: 1px -1px 3px #888;
    box-shadow: 1px -1px 3px #888; }
  #contact .formError .formErrorClose:hover {
    background: #666; }
  #contact .fixed .formErrorClose {
    display: none; }
  #contact .formError .formErrorContent {
    padding: 6px 10px;
    width: 180px;
    position: relative;
    color: #fff;
    background: #252525;
    font-family: "Lucida Sans Unicode", "Lucida Grande", Arial, Helvetica, "ヒラギノ丸ゴ Pro W4", HiraMaruPro-W4, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, Osaka, sans-serif;
    font-size: 11px;
    margin: 0 0;
    z-index: 1;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    -webkit-box-shadow: 0px 0px 6px #888;
    -moz-box-shadow: 0px 0px 6px #888;
    -ms-box-shadow: 0px 0px 6px #888;
    -o-box-shadow: 0px 0px 6px #888;
    box-shadow: 0px 0px 6px #888; }
  #contact .fixed .formErrorContent {
    margin-top: .5em;
    background: #f60;
    margin: 0 0 30px 0;
    -webkit-border-radius: none;
    -moz-border-radius: none;
    -ms-border-radius: none;
    -o-border-radius: none;
    border-radius: none;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none; }
  #contact .fadeOut {
    opacity: .2;
    filter: alpha(opacity=20); }
  #contact .formError .formErrorArrow {
    width: 15px;
    height: 15px;
    position: absolute;
    bottom: 0;
    left: 20px;
    margin: 0 0 30px 0;
    z-index: 0; }
  #contact .fixed .formErrorArrow {
    display: none; }
  #contact .formError .formErrorArrowBottom {
    margin: -6px;
    top: 0; }
  #contact .fixed .formErrorArrowBottom {
    display: none; }
  #contact .formError .formErrorArrow div {
    margin: 0 auto;
    display: block;
    height: 1px;
    background: #252525;
    line-height: 0px;
    font-size: 0px;
    -webkit-box-shadow: 0px 2px 3px #888;
    -moz-box-shadow: 0px 2px 3px #888;
    -ms-box-shadow: 0px 2px 3px #888;
    -o-box-shadow: 0px 2px 3px #888;
    box-shadow: 0px 2px 3px #888; }
  #contact .formError .formErrorArrowBottom div {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none; }
  #contact .formError .formErrorArrow .line10 {
    width: 19px; }
  #contact .formError .formErrorArrow .line9 {
    width: 17px; }
  #contact .formError .formErrorArrow .line8 {
    width: 15px; }
  #contact .formError .formErrorArrow .line7 {
    width: 13px; }
  #contact .formError .formErrorArrow .line6 {
    width: 11px; }
  #contact .formError .formErrorArrow .line5 {
    width: 9px; }
  #contact .formError .formErrorArrow .line4 {
    width: 7px; }
  #contact .formError .formErrorArrow .line3 {
    width: 5px; }
  #contact .formError .formErrorArrow .line2 {
    width: 3px; }
  #contact .formError .formErrorArrow .line1 {
    width: 1px; }
  #contact .hid_url {
    display: none; }
  #contact form p.test {
    position: relative;
    color: #C1C0BC; }
  #contact form p.test label {
    position: absolute;
    top: 3px;
    left: 10px;
    font-weight: normal; }
  #contact form p.test br {
    display: none; }
  #contact .formBlock {
    max-width: 890px;
    margin: auto; }
  #contact .txtContact {
    text-align: left;
    font-size: 16px;
    margin: 70px auto 50px; }
  #contact .txtContact01 {
    font-size: 14px;
    margin-bottom: 50px; }
  #contact .tableContact em,
  #contact .txtContact em {
    color: #fb2a2a;
    font-style: normal; }
  #contact .tableContact {
    border-top: #8f8f8f solid 1px;
    border-bottom: #8f8f8f solid 1px;
    width: 100%;
    margin: 30px 0 50px;
    font-size: 15px;
    text-align: left; }
    #contact .tableContact td,
    #contact .tableContact th {
      border-bottom: #8f8f8f solid 1px;
      padding: 20px;
      vertical-align: top; }
    #contact .tableContact th {
      background: #ededed;
      width: 210px;
      font-weight: normal; }
    #contact .tableContact td {
      position: relative; }
    #contact .tableContact input[type="text"],
    #contact .tableContact input[type="email"],
    #contact .tableContact input[type="number"],
    #contact .tableContact input[type="url"] {
      width: 300px;
      height: 23px;
      color: #1a1a1a; }
    #contact .tableContact input[type="text"],
    #contact .tableContact textarea {
      border: #8f8f8f solid 1px; }
    #contact .tableContact .size01 input[type="text"] {
      width: 160px; }
    #contact .tableContact .size02 input[type="text"],
    #contact .tableContact textarea {
      width: 100%; }
    #contact .tableContact textarea {
      height: 150px; }
  #contact .stepImg {
    margin: 30px 0; }
    #contact .stepImg img {
      display: block;
      width: 100%; }
  #contact .stepImg {
    margin: 30px 0; }
  #contact .tabForm {
    margin: 50px auto 0; }
  #contact .tabForm ul {
    font-size: 0;
    letter-spacing: 0;
    margin: 0;
    border-bottom: 2px solid #000; }
  #contact .tabForm ul li {
    display: inline-block;
    width: 50%;
    padding: 0; }
  #contact .tabForm ul li input {
    position: absolute;
    opacity: 0; }
  #contact .tabForm ul li label {
    display: block;
    line-height: 60px;
    text-align: center;
    font-size: 20px; }
  #contact .tabForm ul li input:checked ~ label {
    background: #000;
    color: #fff; }
  #contact .tabForm ul li label:hover {
    opacity: 1;
    background: #555;
    color: #fff; }
  #contact .tableContact input[type="text"],
  #contact .tableContact input[type="url"],
  #contact .tableContact input[type="email"],
  #contact .tableContact textarea {
    padding: 10px;
    height: auto;
    border: 1px solid #aaa; }
  #contact .tableContact select {
    -webkit-appearance: none;
    border: 1px solid #aaa;
    padding: 10px; }
  #contact .tableContact .pRadio {
    display: inline-block;
    vertical-align: middle; }
  #contact .tableContact .pRadio input {
    position: absolute;
    opacity: 0; }
  #contact .tableContact .pRadio label {
    display: inline-block;
    margin: 0 5px 0 0;
    border: 1px solid #aaa;
    padding: 10px 20px; }
  #contact .tableContact .pRadio input:checked ~ label {
    background: #555;
    border-color: #555;
    color: #fff; }
  #contact button {
    height: 60px;
    margin: 20px auto;
    padding: 0 100px;
    background: #eee; }

/* Z-INDEX */
.formError {
  z-index: 990; }

.formError .formErrorContent {
  z-index: 991; }

.formError .formErrorArrow {
  z-index: 996; }

.ui-dialog .formError {
  z-index: 5000; }

.ui-dialog .formError .formErrorContent {
  z-index: 5001; }

.ui-dialog .formError .formErrorArrow {
  z-index: 5006; }

.inputContainer {
  position: relative;
  float: left; }

.formError {
  position: absolute;
  top: 300px;
  left: 300px;
  display: block;
  cursor: pointer;
  text-align: left; }
  .formError.inline {
    position: relative;
    top: 0;
    left: 0;
    display: inline-block; }
    .formError.inline .formErrorContent {
      box-shadow: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      -o-box-shadow: none;
      border: none;
      border-radius: 0;
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      -o-border-radius: 0; }
  .formError .formErrorContent {
    width: 100%;
    background: #292b2d;
    position: relative;
    color: #fff;
    min-width: 120px;
    font-size: 11px;
    border: 2px solid #ddd;
    box-shadow: 0 0 6px #000;
    -moz-box-shadow: 0 0 6px #000;
    -webkit-box-shadow: 0 0 6px #000;
    -o-box-shadow: 0 0 6px #000;
    padding: 4px 10px 4px 10px;
    border-radius: 6px;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -o-border-radius: 6px; }
  .formError .formErrorArrow {
    width: 15px;
    margin: -2px 0 0 13px;
    position: relative; }
    .formError .formErrorArrow div {
      border-left: 2px solid #ddd;
      border-right: 2px solid #ddd;
      box-shadow: 0 2px 3px #444;
      -moz-box-shadow: 0 2px 3px #444;
      -webkit-box-shadow: 0 2px 3px #444;
      -o-box-shadow: 0 2px 3px #444;
      font-size: 0px;
      height: 1px;
      background: #292b2d;
      margin: 0 auto;
      line-height: 0;
      font-size: 0;
      display: block; }
    .formError .formErrorArrow .line10 {
      width: 13px;
      border: none; }
    .formError .formErrorArrow .line9 {
      width: 11px;
      border: none; }
    .formError .formErrorArrow .line8 {
      width: 11px; }
    .formError .formErrorArrow .line7 {
      width: 9px; }
    .formError .formErrorArrow .line6 {
      width: 7px; }
    .formError .formErrorArrow .line5 {
      width: 5px; }
    .formError .formErrorArrow .line4 {
      width: 3px; }
    .formError .formErrorArrow .line3 {
      width: 1px;
      border-left: 2px solid #ddd;
      border-right: 2px solid #ddd;
      border-bottom: 0 solid #ddd; }
    .formError .formErrorArrow .line2 {
      width: 3px;
      border: none;
      background: #ddd; }
    .formError .formErrorArrow .line1 {
      width: 1px;
      border: none;
      background: #ddd; }
  .formError .formErrorArrowBottom {
    box-shadow: none;
    -moz-box-shadow: none;
    -webkit-box-shadow: none;
    -o-box-shadow: none;
    margin: 0px 0 0 12px;
    top: 2px; }
    .formError .formErrorArrowBottom div {
      box-shadow: none;
      -moz-box-shadow: none;
      -webkit-box-shadow: none;
      -o-box-shadow: none; }

.ajaxSubmit {
  padding: 20px;
  background: #55ea55;
  border: 1px solid #999;
  display: none; }

.greenPopup .formErrorContent {
  background: #33be40; }

.blackPopup .formErrorContent {
  background: #393939;
  color: #FFF; }

body[dir='rtl'] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
  margin: -2px 13px 0 0; }

.greenPopup .formErrorArrow div {
  background: #33be40; }

.blackPopup .formErrorArrow div {
  background: #393939;
  color: #FFF; }

body.lb-disable-scrolling {
  overflow: hidden; }

.lightboxOverlay {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  background-color: black;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
  display: none; }

.lightbox {
  position: absolute;
  left: 0;
  width: 100%;
  z-index: 10000;
  text-align: center;
  line-height: 0;
  font-weight: normal;
  outline: none; }

.lightbox .lb-image {
  display: block;
  height: auto;
  max-width: inherit;
  max-height: none;
  border-radius: 3px;
  /* Image border */
  border: 4px solid white; }

.lightbox a img {
  border: none; }

.lb-outerContainer {
  position: relative;
  *zoom: 1;
  width: 250px;
  height: 250px;
  margin: 0 auto;
  border-radius: 4px;
  /* Background color behind image.
     This is visible during transitions. */
  background-color: white; }

.lb-outerContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-loader {
  position: absolute;
  top: 43%;
  left: 0;
  height: 25%;
  width: 100%;
  text-align: center;
  line-height: 0; }

.lb-cancel {
  display: block;
  width: 32px;
  height: 32px;
  margin: 0 auto;
  background: url(../images/loading.gif) no-repeat; }

.lb-nav {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 10; }

.lb-container > .nav {
  left: 0; }

.lb-nav a {
  outline: none;
  background-image: url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="); }

.lb-prev, .lb-next {
  height: 100%;
  cursor: pointer;
  display: block; }

.lb-nav a.lb-prev {
  width: 34%;
  left: 0;
  float: left;
  background: url(../images/prev.png) left 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s; }

.lb-nav a.lb-prev:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

.lb-nav a.lb-next {
  width: 64%;
  right: 0;
  float: right;
  background: url(../images/next.png) right 48% no-repeat;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -webkit-transition: opacity 0.6s;
  -moz-transition: opacity 0.6s;
  -o-transition: opacity 0.6s;
  transition: opacity 0.6s; }

.lb-nav a.lb-next:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

.lb-dataContainer {
  margin: 0 auto;
  padding-top: 5px;
  *zoom: 1;
  width: 100%;
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px; }

.lb-dataContainer:after {
  content: "";
  display: table;
  clear: both; }

.lb-data {
  padding: 0 4px;
  color: #ccc; }

.lb-data .lb-details {
  width: 85%;
  float: left;
  text-align: left;
  line-height: 1.1em; }

.lb-data .lb-caption {
  font-size: 13px;
  font-weight: bold;
  line-height: 1em; }

.lb-data .lb-caption a {
  color: #4ae; }

.lb-data .lb-number {
  display: block;
  clear: left;
  padding-bottom: 1em;
  font-size: 12px;
  color: #999999; }

.lb-data .lb-close {
  display: block;
  float: right;
  width: 30px;
  height: 30px;
  background: url(../images/close.png) top right no-repeat;
  text-align: right;
  outline: none;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -webkit-transition: opacity 0.2s;
  -moz-transition: opacity 0.2s;
  -o-transition: opacity 0.2s;
  transition: opacity 0.2s; }

.lb-data .lb-close:hover {
  cursor: pointer;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
  opacity: 1; }

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

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

html {
  font-size: 62.5%;
  font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  font-weight: 400;
  color: #1c4e6a;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%; }

body {
  color: #1c4e6a; }
  body.fixed {
    position: fixed;
    width: 100%;
    height: 100%; }
  @media only screen and (max-width: 767px) {
    body {
      padding-top: 0 !important; } }
  @media only screen and (max-width: 767px) {
    body.subpage-pier {
      padding-top: 60px !important; } }

main {
  min-height: 1000px; }

* {
  font-size: 14px;
  font-size: 1.4rem;
  box-sizing: border-box; }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

a {
  color: inherit;
  text-decoration: none; }

.inner {
  max-width: 1060px;
  margin: 0 auto;
  width: 100%;
  padding: 0 30px; }
  @media only screen and (max-width: 767px) {
    .inner {
      padding: 0 25px; } }

.flex-row {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between; }

p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2.142857143em;
  text-align: justify; }
  @media only screen and (max-width: 767px) {
    p {
      line-height: 1.714285714em; } }

.link-underline {
  color: inherit;
  text-decoration: underline; }
  .link-underline:hover {
    text-decoration: none; }

.wrap {
  z-index: 999999; }

/*---------------------------------------------
IE Huck
---------------------------------------------*/
span[style*="text-decoration: underline"] {
  font-style: italic !important;
  text-decoration: none !important; }

html.theme-black {
  background: #000000; }
  html.theme-black body {
    color: white !important; }
    html.theme-black body .memo-box__bg:before, html.theme-black body .memo-box__bg:after, html.theme-black body button {
      background: transparent !important;
      color: white !important; }
    html.theme-black body.subpage-pier .point {
      background: #000000 !important; }
    html.theme-black body.subpage-pier .mv__title--icon {
      background: #000000 !important; }
    html.theme-black body main section#more-content .right li {
      border: 1px solid white; }
    html.theme-black body section#form table tr td input[type=email], html.theme-black body section#form table tr td input[type=text], html.theme-black body section#form table tr td textarea {
      border: 1px solid white; }
    html.theme-black body section#fun ul.fun-list li a .fun-list-ttl {
      background: #000000 !important; }
    html.theme-black body section#news .inner .article-list-box .article-nav .nav {
      border: 1px solid white; }
    html.theme-black body .category-box li, html.theme-black body .article-list li {
      border: 1px solid white; }
    html.theme-black body .anchor-link a {
      border: 1px solid white; }
    html.theme-black body section#faq-content ul.faq-question-list li.question .question-trigger:before, html.theme-black body section#faq-content ul.faq-question-list li.question .answer:before {
      color: white !important;
      border: 1px solid white;
      background: #000000 !important; }
    html.theme-black body section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point:before {
      background: transparent !important; }
    html.theme-black body .btn {
      border: 1px solid white; }
    html.theme-black body .mv-bar .time-box {
      background: #000000 !important; }
    html.theme-black body.language .mv-bar {
      background: #000000 !important; }
    html.theme-black body.language section#about:before {
      background: transparent !important; }
    html.theme-black body #to-top {
      background: #000000 !important;
      border: 1px solid white; }
    html.theme-black body.cms .category-box li {
      border: 1px solid white; }
    html.theme-black body :not(.bg-preserver) {
      background: transparent !important;
      color: white !important; }
      html.theme-black body :not(.bg-preserver) header {
        background: #000000 !important; }
        html.theme-black body :not(.bg-preserver) header .gnav__item a {
          background: #000000 !important; }
      html.theme-black body :not(.bg-preserver) .corner-nav {
        background: #000000 !important; }
      html.theme-black body :not(.bg-preserver) .reservation-btn {
        background: #000000 !important; }
      html.theme-black body :not(.bg-preserver) .headercomp__search--icon {
        background: url(../images/common/icon-search.svg) center/24px no-repeat !important; }
      html.theme-black body :not(.bg-preserver) .event-modal__box, html.theme-black body :not(.bg-preserver) .lang-options li {
        background: #000000 !important; }
    html.theme-black body .remodal-warning {
      background: #000 !important; }
    html.theme-black body .warning-popup {
      background: #000 !important; }
    html.theme-black body .header-pier .gnav {
      background: #000000 !important; }
    html.theme-black body.gardenpier .mv .news-box {
      background: #000000 !important; }
  html.theme-black body.index .box-notice__box {
    background: #000;
    border: 2px solid #fff; }
  html.theme-black body.index .banner-slider:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='1' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23000'/%3E%3Cstop offset='1' stop-color='%23000' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath id='grd' d='M0,0H220V225H0Z' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  html.theme-black body.index .banner-slider:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='0' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23000'/%3E%3Cstop offset='1' stop-color='%23000' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect id='grd' width='220' height='225' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  html.theme-black body.index .box-pickup:after {
    background: #000000 !important; }
  html.theme-black body.index .box-pickup__news .heading__category li:before {
    border-color: #fff;
    opacity: 1; }
  html.theme-black body.index .box-pickup__news .heading__category li img {
    filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-black body.index .box-pickup__news .heading__category li.active:after {
    border-left-color: #FFF; }
  html.theme-black body.index .box-pickup__news .content__list .item {
    border-top-color: #fff; }
  html.theme-black body.index .box-pickup__news .content__list .item:last-child {
    border-bottom-color: #fff; }
  html.theme-black body.index .box-pickup__news .content__list .item .info__cate span {
    border: solid 1px #fff; }
  html.theme-black body.index .box-shop__btns a {
    border: solid 1px #fff; }
  html.theme-black body.index .box-shop__btns .arrow:before {
    filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-black body.index .box-btns .arrow {
    border: solid 1px #fff; }
    html.theme-black body.index .box-btns .arrow:before {
      filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-black body.index .box-column:before {
    background: linear-gradient(90deg, #000 0, #000 80%, rgba(0, 0, 0, 0) 100%); }
  html.theme-black body.index .box-column:after {
    background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0, #000 20%, #000 100%); }
  html.theme-black body.index .box-column__list .slick-prev,
  html.theme-black body.index .box-column__list .slick-next {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Ccircle id='bg' cx='30' cy='30' r='30' fill='%23fff'/%3E%3Cpath id='arw' d='M0,0,5.994,5.994,11.988,0' transform='translate(33.494 24.5) rotate(90)' fill='none' stroke='black' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A") !important; }
  html.theme-black body.index .box-column__list .slick-next {
    transform: rotate(180deg); }
  @media only screen and (min-width: 768px) {
    html.theme-black body.index .box-follow:before {
      background-image: url(../images/top/bg_follow_top_black.png); } }
  @media only screen and (max-width: 767px) {
    html.theme-black body.index .box-follow:before {
      background-image: url(../images/top/bg_follow_top_black_sp.png); } }
  html.theme-black body.index .box-follow__heading .en span:before,
  html.theme-black body.index .box-follow__heading .en span:after {
    filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-black body.fee .fee-passport:after {
    content: none; }
  html.theme-black body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:after, html.theme-black body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:before {
    background-color: #fff; }
  html.theme-black .enjoy-point__detail__bg:before, html.theme-black .enjoy-box02__box:before, html.theme-black .enjoy-box01__box:before {
    content: none; }
  html.theme-black .header .nav-toggle .burger-container span, html.theme-black .header-pier .nav-toggle .burger-container span {
    background: #fff !important; }
  html.theme-black .header.is-open:before {
    content: none; }

html.theme-yellow {
  background: #FFF100; }
  html.theme-yellow body {
    color: black !important; }
    html.theme-yellow body .memo-box__bg:before, html.theme-yellow body .memo-box__bg:after, html.theme-yellow body button {
      background: transparent !important;
      color: black !important; }
    html.theme-yellow body.subpage-pier .point {
      background: #FFF100 !important; }
    html.theme-yellow body.subpage-pier .mv__title--icon {
      background: #FFF100 !important; }
    html.theme-yellow body main section#more-content .right li {
      border: 1px solid black; }
    html.theme-yellow body section#form table tr td input[type=email], html.theme-yellow body section#form table tr td input[type=text], html.theme-yellow body section#form table tr td textarea {
      border: 1px solid black; }
    html.theme-yellow body section#fun ul.fun-list li a .fun-list-ttl {
      background: #FFF100 !important; }
    html.theme-yellow body section#news .inner .article-list-box .article-nav .nav {
      border: 1px solid black; }
    html.theme-yellow body .category-box li, html.theme-yellow body .article-list li {
      border: 1px solid black; }
    html.theme-yellow body .anchor-link a {
      border: 1px solid black; }
    html.theme-yellow body section#faq-content ul.faq-question-list li.question .question-trigger:before, html.theme-yellow body section#faq-content ul.faq-question-list li.question .answer:before {
      color: black !important;
      border: 1px solid black;
      background: #FFF100 !important; }
    html.theme-yellow body section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point:before {
      background: transparent !important; }
    html.theme-yellow body .btn {
      border: 1px solid black; }
    html.theme-yellow body .mv-bar .time-box {
      background: #FFF100 !important; }
    html.theme-yellow body.language .mv-bar {
      background: #FFF100 !important; }
    html.theme-yellow body.language section#about:before {
      background: transparent !important; }
    html.theme-yellow body #to-top {
      background: black !important;
      border: 1px solid black; }
    html.theme-yellow body.cms .category-box li {
      border: 1px solid black; }
    html.theme-yellow body :not(.bg-preserver) {
      background: transparent !important;
      color: black !important; }
      html.theme-yellow body :not(.bg-preserver) header {
        background: #FFF100 !important; }
        html.theme-yellow body :not(.bg-preserver) header .gnav__item a {
          background: #FFF100 !important; }
      html.theme-yellow body :not(.bg-preserver) .corner-nav {
        background: #FFF100 !important; }
      html.theme-yellow body :not(.bg-preserver) .reservation-btn {
        background: #FFF100 !important; }
      html.theme-yellow body :not(.bg-preserver) .headercomp__search--icon {
        background: url(../images/common/icon-search.svg) center/24px no-repeat !important; }
      html.theme-yellow body :not(.bg-preserver) .event-modal__box, html.theme-yellow body :not(.bg-preserver) .lang-options li {
        background: #FFF100 !important; }
    html.theme-yellow body .remodal-warning {
      background-color: #FFF100 !important; }
    html.theme-yellow body .warning-popup {
      background-color: #FFF100 !important; }
    html.theme-yellow body .header-pier .gnav {
      background: #FFF100 !important; }
    html.theme-yellow body.gardenpier .mv .news-box {
      background-color: #FFF100 !important; }
  html.theme-yellow body.index .box-notice__box {
    background: #FFF100;
    border: 2px solid #000; }
  html.theme-yellow body.index .banner-slider:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='1' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23FFF100'/%3E%3Cstop offset='1' stop-color='%23FFF100' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath id='grd' d='M0,0H220V225H0Z' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  html.theme-yellow body.index .banner-slider:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='0' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23FFF100'/%3E%3Cstop offset='1' stop-color='%23FFF100' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect id='grd' width='220' height='225' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  html.theme-yellow body.index .box-pickup:after {
    background: #FFF100 !important; }
  html.theme-yellow body.index .box-pickup__news .heading__category li:before {
    border-color: #000;
    opacity: 1; }
  html.theme-yellow body.index .box-pickup__news .heading__category li img {
    filter: brightness(0) saturate(100%); }
  html.theme-yellow body.index .box-pickup__news .heading__category li.active:after {
    border-left-color: #000; }
  html.theme-yellow body.index .box-pickup__news .content__list .item {
    border-top-color: #000; }
  html.theme-yellow body.index .box-pickup__news .content__list .item:last-child {
    border-bottom-color: #000; }
  html.theme-yellow body.index .box-pickup__news .content__list .item .info__cate span {
    border: solid 1px #000; }
  html.theme-yellow body.index .box-shop__btns a {
    border: solid 1px #000; }
  html.theme-yellow body.index .box-shop__btns .arrow:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5.207' height='9.414' viewBox='0 0 5.207 9.414'%3E%3Cpath id='arw' d='M0,4,4,0,8,4' transform='translate(4.707 0.707) rotate(90)' fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/svg%3E%0A"); }
  html.theme-yellow body.index .box-btns .text {
    color: #fff !important; }
  html.theme-yellow body.index .box-btns .arrow {
    border: solid 1px #fff; }
    html.theme-yellow body.index .box-btns .arrow:before {
      filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-yellow body.index .box-column:before {
    background: linear-gradient(90deg, #FFF100 0, #FFF100 80%, rgba(255, 241, 0, 0) 100%); }
  html.theme-yellow body.index .box-column:after {
    background: linear-gradient(90deg, rgba(255, 241, 0, 0) 0, #FFF100 20%, #FFF100 100%); }
  html.theme-yellow body.index .box-column__list .slick-prev,
  html.theme-yellow body.index .box-column__list .slick-next {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Ccircle id='bg' cx='30' cy='30' r='30' fill='%23000'/%3E%3Cpath id='arw' d='M0,0,5.994,5.994,11.988,0' transform='translate(33.494 24.5) rotate(90)' fill='none' stroke='yellow' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A") !important; }
  html.theme-yellow body.index .box-column__list .slick-next {
    transform: rotate(180deg); }
  html.theme-yellow body.index .box-pickup__event .btn span:before,
  html.theme-yellow body.index .box-pickup__news .btn span:before,
  html.theme-yellow body.index .box-column .btn span:before,
  html.theme-yellow body.index .box-links__bnr .heading__arrow:before {
    filter: brightness(0) saturate(100%); }
  @media only screen and (min-width: 768px) {
    html.theme-yellow body.index .box-follow:before {
      background-image: url(../images/top/bg_follow_top_yellow.png); } }
  @media only screen and (max-width: 767px) {
    html.theme-yellow body.index .box-follow:before {
      background-image: url(../images/top/bg_follow_top_yellow_sp.png); } }
  html.theme-yellow body.fee .fee-passport:after {
    content: none; }
  html.theme-yellow body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:after, html.theme-yellow body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:before {
    background-color: #fff; }
  html.theme-yellow .enjoy-point__detail__bg:before, html.theme-yellow .enjoy-box02__box:before, html.theme-yellow .enjoy-box01__box:before {
    content: none; }
  html.theme-yellow .header .nav-toggle .burger-container span, html.theme-yellow .header-pier .nav-toggle .burger-container span {
    background: #fff !important; }
  html.theme-yellow .header.is-open:before {
    content: none; }

html.theme-blue {
  background: #0000FF; }
  html.theme-blue body {
    color: white !important; }
    html.theme-blue body .memo-box__bg:before, html.theme-blue body .memo-box__bg:after, html.theme-blue body button {
      background: transparent !important;
      color: white !important; }
    html.theme-blue body.subpage-pier .point {
      background: #0000FF !important; }
    html.theme-blue body.subpage-pier .mv__title--icon {
      background: #0000FF !important; }
    html.theme-blue body main section#more-content .right li {
      border: 1px solid white; }
    html.theme-blue body section#form table tr td input[type=email], html.theme-blue body section#form table tr td input[type=text], html.theme-blue body section#form table tr td textarea {
      border: 1px solid white; }
    html.theme-blue body section#fun ul.fun-list li a .fun-list-ttl {
      background: #0000FF !important; }
    html.theme-blue body section#news .inner .article-list-box .article-nav .nav {
      border: 1px solid white; }
    html.theme-blue body .category-box li, html.theme-blue body .article-list li {
      border: 1px solid white; }
    html.theme-blue body .anchor-link a {
      border: 1px solid white; }
    html.theme-blue body section#faq-content ul.faq-question-list li.question .question-trigger:before, html.theme-blue body section#faq-content ul.faq-question-list li.question .answer:before {
      color: white !important;
      border: 1px solid white;
      background: #0000FF !important; }
    html.theme-blue body section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point:before {
      background: transparent !important; }
    html.theme-blue body .btn {
      border: 1px solid white; }
    html.theme-blue body .mv-bar .time-box {
      background: #0000FF !important; }
    html.theme-blue body.language .mv-bar {
      background: #0000FF !important; }
    html.theme-blue body.language section#about:before {
      background: transparent !important; }
    html.theme-blue body #to-top {
      background: #0000FF !important;
      border: 1px solid white; }
    html.theme-blue body.cms .category-box li {
      border: 1px solid white; }
    html.theme-blue body :not(.bg-preserver) {
      background: transparent !important;
      color: white !important; }
      html.theme-blue body :not(.bg-preserver) header {
        background: #0000FF !important; }
        html.theme-blue body :not(.bg-preserver) header .gnav__item a {
          background: #0000FF !important; }
      html.theme-blue body :not(.bg-preserver) .corner-nav {
        background: #0000FF !important; }
      html.theme-blue body :not(.bg-preserver) .reservation-btn {
        background: #0000FF !important; }
      html.theme-blue body :not(.bg-preserver) .headercomp__search--icon {
        background: url(../images/common/icon-search.svg) center/24px no-repeat !important; }
      html.theme-blue body :not(.bg-preserver) .event-modal__box, html.theme-blue body :not(.bg-preserver) .lang-options li {
        background: #0000FF !important; }
    html.theme-blue body .remodal-warning {
      background: #0000FF !important; }
    html.theme-blue body .warning-popup {
      background: #0000FF !important; }
    html.theme-blue body .header-pier .gnav {
      background: #0000FF !important; }
    html.theme-blue body.gardenpier .mv .news-box {
      background: #0000FF !important; }
  html.theme-blue body.index .box-notice__box {
    background: #0000FF;
    border: 2px solid #fff; }
  html.theme-blue body.index .banner-slider:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='1' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%230000FF'/%3E%3Cstop offset='1' stop-color='%230000FF' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath id='grd' d='M0,0H220V225H0Z' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  html.theme-blue body.index .banner-slider:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='0' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%230000FF'/%3E%3Cstop offset='1' stop-color='%230000FF' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect id='grd' width='220' height='225' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  html.theme-blue body.index .box-pickup:after {
    background: #0000FF !important; }
  html.theme-blue body.index .box-pickup__news .heading__category li:before {
    border-color: #fff;
    opacity: 1; }
  html.theme-blue body.index .box-pickup__news .heading__category li img {
    filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-blue body.index .box-pickup__news .heading__category li.active:after {
    border-left-color: #FFF; }
  html.theme-blue body.index .box-pickup__news .content__list .item {
    border-top-color: #fff; }
  html.theme-blue body.index .box-pickup__news .content__list .item:last-child {
    border-bottom-color: #fff; }
  html.theme-blue body.index .box-shop__btns a {
    border: solid 1px #fff; }
  html.theme-blue body.index .box-shop__btns .arrow:before {
    filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-blue body.index .box-btns .arrow {
    border: solid 1px #fff; }
    html.theme-blue body.index .box-btns .arrow:before {
      filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-blue body.index .box-column:before {
    background: linear-gradient(90deg, #0000FF 0, #0000FF 80%, rgba(0, 0, 255, 0) 100%); }
  html.theme-blue body.index .box-column:after {
    background: linear-gradient(90deg, rgba(0, 0, 255, 0) 0, #0000FF 20%, #0000FF 100%); }
  html.theme-blue body.index .box-column__list .slick-prev,
  html.theme-blue body.index .box-column__list .slick-next {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Ccircle id='bg' cx='30' cy='30' r='30' fill='%23fff'/%3E%3Cpath id='arw' d='M0,0,5.994,5.994,11.988,0' transform='translate(33.494 24.5) rotate(90)' fill='none' stroke='blue' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A") !important; }
  html.theme-blue body.index .box-column__list .slick-next {
    transform: rotate(180deg); }
  @media only screen and (min-width: 768px) {
    html.theme-blue body.index .box-follow:before {
      background-image: url(../images/top/bg_follow_top_blue.png); } }
  @media only screen and (max-width: 767px) {
    html.theme-blue body.index .box-follow:before {
      background-image: url(../images/top/bg_follow_top_blue_sp.png); } }
  html.theme-blue body.index .box-follow__heading .en span:before,
  html.theme-blue body.index .box-follow__heading .en span:after {
    filter: invert(97%) sepia(100%) saturate(0%) hue-rotate(72deg) brightness(108%) contrast(102%); }
  html.theme-blue body.fee .fee-passport:after {
    content: none; }
  html.theme-blue body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:after, html.theme-blue body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:before {
    background-color: #fff; }
  html.theme-blue .enjoy-point__detail__bg:before, html.theme-blue .enjoy-box02__box:before, html.theme-blue .enjoy-box01__box:before {
    content: none; }
  html.theme-blue .header .nav-toggle .burger-container span, html.theme-blue .header-pier .nav-toggle .burger-container span {
    background: #fff !important; }
  html.theme-blue .header.is-open:before {
    content: none; }

body.language #to-top {
  border-radius: 50%;
  background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-size: 200% auto;
  transition: 0.5s;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  bottom: 29px;
  right: 36px;
  height: 60px;
  width: 60px;
  z-index: 100; }
  body.language #to-topa:hover {
    background-position: right center; }
  @media only screen and (min-width: 768px) {
    body.language #to-top {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      body.language #to-top:hover {
        opacity: .7; } }
  @media only screen and (max-width: 767px) {
    body.language #to-top {
      bottom: 15px;
      right: 15px;
      height: 45px;
      width: 45px; } }
  body.language #to-top.active {
    opacity: 1;
    pointer-events: auto; }
  body.language #to-top:before {
    border-bottom: 2px solid white;
    border-right: 2px solid white;
    content: "";
    display: block;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-20%) rotate(-135deg);
    height: 8px;
    width: 8px; }
    @media only screen and (max-width: 767px) {
      body.language #to-top:before {
        border-bottom: 1px solid white;
        border-right: 1px solid white;
        height: 6px;
        width: 6px; } }

body.language .footer {
  width: 100%; }
  @media only screen and (max-width: 767px) {
    body.language .footer .inner {
      padding: 0; } }
  body.language .footer__map {
    width: 100%;
    margin-bottom: 40px; }
    @media only screen and (max-width: 767px) {
      body.language .footer__map {
        margin-bottom: 0; } }
    body.language .footer__map iframe {
      width: 100%;
      height: 350px; }
      @media only screen and (max-width: 767px) {
        body.language .footer__map iframe {
          height: 200px; } }
  body.language .footer__toplinks {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      body.language .footer__toplinks {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 0; } }
    body.language .footer__toplinks__sec {
      width: 25%;
      border-right: 1px solid #d9e7ef;
      padding-left: 30px; }
      @media only screen and (min-width: 768px) {
        body.language .footer__toplinks__sec {
          padding-top: 14px;
          padding-bottom: 7px; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__toplinks__sec {
          width: 100%;
          padding: 0; } }
      @media only screen and (min-width: 1024px) and (max-width: 1050px) {
        body.language .footer__toplinks__sec {
          padding-left: 15px; } }
      body.language .footer__toplinks__sec:last-child {
        border-right: none; }
    body.language .footer__toplinks--title {
      font-size: 12px;
      font-size: 1.2rem;
      font-weight: 700;
      margin-bottom: 12px; }
      @media only screen and (max-width: 767px) {
        body.language .footer__toplinks--title {
          width: 100%;
          padding: 20px 25px;
          border-bottom: 1px solid #d9e7ef;
          margin-bottom: 0;
          font-size: 13px;
          font-size: 1.3rem; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__toplinks--title:first-of-type {
          position: relative; }
          body.language .footer__toplinks--title:first-of-type:before {
            border-bottom: 2px solid #1c4e6a;
            border-right: 2px solid #1c4e6a;
            content: "";
            margin: 0 auto;
            position: absolute;
            right: 26px;
            top: 50%;
            transform: translateY(-50%) rotate(-45deg);
            height: 4px;
            width: 4px; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__toplinks--title.trigger {
          position: relative; }
          body.language .footer__toplinks--title.trigger:before {
            border-bottom: 2px solid #1c4e6a;
            border-right: 2px solid #1c4e6a;
            content: "";
            margin: 0 auto;
            pointer-events: none;
            position: absolute;
            right: 26px;
            top: 50%;
            transform: translateY(-50%) rotate(45deg);
            height: 4px;
            width: 4px; }
          body.language .footer__toplinks--title.trigger.active:before {
            transform: translateY(-50%) rotate(-135deg); } }
    body.language .footer__toplinks--links {
      line-height: 2.5; }
      @media only screen and (max-width: 767px) {
        body.language .footer__toplinks--links {
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__toplinks--links li {
          border-bottom: 1px solid #d9e7ef;
          width: 50%; }
          body.language .footer__toplinks--links li.long {
            width: 100%; }
          body.language .footer__toplinks--links li.has-sp-border {
            border-right: 1px solid #d9e7ef; } }
      body.language .footer__toplinks--links li a {
        font-size: 12px;
        font-size: 1.2rem;
        font-weight: 500;
        padding-left: 8px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.language .footer__toplinks--links li a {
            font-size: 12px;
            font-size: 1.2rem;
            line-height: 1.5;
            padding: 9px 10px 9px 40px;
            min-height: 54px;
            display: flex;
            align-items: center;
            width: 100%;
            height: 100%; } }
        body.language .footer__toplinks--links li a:before {
          content: '';
          width: 4px;
          height: 4px;
          border-right: 1px solid #1c4e6a;
          border-bottom: 1px solid #1c4e6a;
          position: absolute;
          left: 0;
          top: 50%;
          transform: rotate(-45deg) translateY(-50%); }
          @media only screen and (max-width: 767px) {
            body.language .footer__toplinks--links li a:before {
              left: 25px; } }
        body.language .footer__toplinks--links li a[target="_blank"]:before {
          width: 5px;
          height: 1px;
          background: #1c4e6a;
          border: none;
          top: 50%;
          transform: none; }
  body.language .footer__banners {
    display: -webkit-flex;
    display: flex;
    margin: 0 auto;
    margin-bottom: 40px;
    flex-wrap: wrap; }
    @media only screen and (min-width: 768px) {
      body.language .footer__banners {
        max-width: 739px; } }
    @media only screen and (max-width: 767px) {
      body.language .footer__banners {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 25px;
        margin-bottom: 0; } }
    body.language .footer__banners a {
      background-color: white;
      border: 1px solid #d9e7ef;
      overflow: hidden;
      position: relative;
      width: calc((100% - 20px) / 3); }
      @media only screen and (min-width: 768px) {
        body.language .footer__banners a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.language .footer__banners a:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__banners a {
          border: none; } }
      body.language .footer__banners a.banner-onegai {
        margin-top: 9px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          body.language .footer__banners a.banner-onegai {
            margin-top: 1px; } }
      body.language .footer__banners a:nth-child(2) {
        margin: 0 10px; }
        @media only screen and (max-width: 767px) {
          body.language .footer__banners a:nth-child(2) {
            margin-left: 4px; } }
      body.language .footer__banners a:last-child {
        margin-right: 0; }
      @media only screen and (max-width: 767px) {
        body.language .footer__banners a {
          width: calc(50% - 2px);
          margin-right: 0;
          margin-bottom: 4px; }
          body.language .footer__banners a:nth-child(2n+2) {
            margin-right: 0; } }
  body.language .footer .separator {
    margin-bottom: 30px;
    width: 100%;
    height: 1px;
    background: #d9e7ef; }
  body.language .footer__branding {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      body.language .footer__branding {
        padding: 0 39px 0;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-align-items: flex-start;
        align-items: flex-start; } }
    body.language .footer__branding--logo {
      width: 210px;
      margin-right: 60px; }
      @media only screen and (min-width: 768px) {
        body.language .footer__branding--logo {
          transition: opacity 0.3s; }
          body.language .footer__branding--logo:hover {
            opacity: 0.6; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__branding--logo {
          margin-bottom: 20px;
          margin-right: 0;
          width: 160px; } }
    body.language .footer__branding--address .heading {
      display: block;
      font-size: 13px;
      font-size: 1.3rem;
      letter-spacing: 0.05em;
      line-height: 1.846153846;
      margin-bottom: 1px; }
    @media only screen and (max-width: 767px) {
      body.language .footer__branding--address.space {
        margin: 15px 0 13px; } }
    body.language .footer__branding--address .address {
      display: block;
      font-size: 13px;
      font-size: 1.3rem;
      letter-spacing: 0.05em;
      line-height: 1.846153846; }
  body.language .footer__sublinks {
    display: -webkit-flex;
    display: flex;
    margin: 30px 0;
    width: auto; }
    @media only screen and (min-width: 768px) {
      body.language .footer__sublinks {
        margin-bottom: 37px; } }
    @media only screen and (max-width: 767px) {
      body.language .footer__sublinks {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: 20px; } }
    body.language .footer__sublinks li {
      padding: 0 15px; }
      @media only screen and (min-width: 768px) {
        body.language .footer__sublinks li {
          border-left: 1px solid #aebac3; }
          body.language .footer__sublinks li:last-child {
            border-right: 1px solid #aebac3; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__sublinks li {
          padding: 0 20px;
          margin-bottom: 11px;
          position: relative; }
          body.language .footer__sublinks li:last-child {
            margin-bottom: none; } }
      body.language .footer__sublinks li a {
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: 0.05em;
        position: relative; }
        @media only screen and (min-width: 768px) {
          body.language .footer__sublinks li a {
            cursor: pointer;
            -webkit-transition: 0.3s;
            -moz-transition: 0.3s;
            -o-transition: 0.3s;
            transition: 0.3s; }
            body.language .footer__sublinks li a:hover {
              opacity: .7; } }
        @media only screen and (max-width: 767px) {
          body.language .footer__sublinks li a {
            padding-left: 11px; }
            body.language .footer__sublinks li a:before {
              background-color: #1c4e6a;
              content: "";
              margin: 0 auto;
              position: absolute;
              left: 0;
              top: 50%;
              transform: translateY(-50%);
              height: 1px;
              width: 5px; } }
        body.language .footer__sublinks li a img {
          margin-left: 6px;
          position: relative;
          top: -1px;
          width: 11px; }
          @media only screen and (max-width: 767px) {
            body.language .footer__sublinks li a img {
              margin-left: 4px;
              width: 9px; } }
  body.language .footer__morebanners {
    margin-bottom: 60px; }
    body.language .footer__morebanners .flex-row {
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
    @media only screen and (max-width: 767px) {
      body.language .footer__morebanners {
        margin-bottom: 50px;
        padding: 0 40px;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; } }
    @media only screen and (min-width: 768px) {
      body.language .footer__morebanners a {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        body.language .footer__morebanners a:hover {
          opacity: .7; } }
    body.language .footer__morebanners .banner {
      width: calc((100% - 30px) / 4);
      margin-right: 10px; }
      @media only screen and (min-width: 768px) {
        body.language .footer__morebanners .banner:nth-child(5), body.language .footer__morebanners .banner:nth-child(6), body.language .footer__morebanners .banner:nth-child(7), body.language .footer__morebanners .banner:nth-child(8) {
          margin-top: 10px; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__morebanners .banner {
          width: calc(50% - 2px);
          margin-right: 4px;
          margin-bottom: 4px; }
          body.language .footer__morebanners .banner:nth-child(2n+2) {
            margin-right: 0; } }
      body.language .footer__morebanners .banner:last-child, body.language .footer__morebanners .banner:nth-child(4) {
        margin-right: 0; }
    body.language .footer__morebanners .hokoku-link {
      font-size: 12px;
      font-size: 1.2rem;
      margin-top: 15px;
      letter-spacing: 0.05em;
      padding-left: 15px;
      position: relative;
      text-align: right;
      width: 100%;
      display: inline-block; }
      @media only screen and (min-width: 768px) {
        body.language .footer__morebanners .hokoku-link {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.language .footer__morebanners .hokoku-link:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__morebanners .hokoku-link {
          margin-top: 10px;
          padding-left: 12px; } }
      body.language .footer__morebanners .hokoku-link:before {
        border-left: 1px solid #1c4e6a;
        border-bottom: 1px solid #1c4e6a;
        content: "";
        display: inline-block;
        margin: 0 auto;
        margin-right: 5px;
        height: 5px;
        width: 5px;
        transform: translateY(-30%) rotate(-135deg); }
  body.language .footer__lowerarea {
    color: #1c4e6a;
    margin-top: -6px;
    margin-bottom: 30px;
    position: relative;
    width: 100%;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
    @media only screen and (max-width: 767px) {
      body.language .footer__lowerarea {
        padding: 0 38px 0; } }
    body.language .footer__lowerarea .social-items {
      height: 40px;
      width: 140px; }
      @media only screen and (min-width: 768px) {
        body.language .footer__lowerarea .social-items {
          margin-right: 40px; } }
      @media only screen and (max-width: 767px) {
        body.language .footer__lowerarea .social-items {
          margin-bottom: 30px; } }
      body.language .footer__lowerarea .social-items a {
        border-radius: 50%;
        border: 1px solid #d9e7ef;
        transition: all .3s;
        height: 40px;
        width: 40px;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center; }
        @media only screen and (min-width: 768px) {
          body.language .footer__lowerarea .social-items a:hover {
            border: 1px solid white;
            box-shadow: 0 0 15px #cce5ef; } }
        body.language .footer__lowerarea .social-items a:nth-child(1) img {
          width: 10px; }
        body.language .footer__lowerarea .social-items a:nth-child(2) img {
          width: 20px; }
        body.language .footer__lowerarea .social-items a:nth-child(3) img {
          width: 20px; }
    body.language .footer__lowerarea .trip-advisor {
      position: absolute;
      right: 5px;
      top: -40px;
      width: 84px; }
      @media only screen and (max-width: 767px) {
        body.language .footer__lowerarea .trip-advisor {
          right: 40px;
          top: -20px;
          width: 59px; } }
    body.language .footer__lowerarea .footercomp__color {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        body.language .footer__lowerarea .footercomp__color {
          width: 100%;
          margin-top: 10px; } }
      body.language .footer__lowerarea .footercomp__color--txt {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.285714286;
        margin-right: 10px;
        font-weight: 500;
        text-align: center;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto; }
        @media only screen and (max-width: 767px) {
          body.language .footer__lowerarea .footercomp__color--txt {
            font-size: 13px;
            font-size: 1.3rem;
            width: 78px;
            text-align: left;
            margin-right: 5px; } }
      body.language .footer__lowerarea .footercomp__color--btn {
        width: 50px;
        height: 30px;
        border: 1px solid #d9e7ef;
        border-radius: 5px;
        margin-right: 5px;
        -webkit-transition: background-color 0.3s;
        -moz-transition: background-color 0.3s;
        -o-transition: background-color 0.3s;
        transition: background-color 0.3s;
        font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-weight: 500;
        cursor: pointer;
        transition: all .3s;
        color: #1c4e6a;
        padding-bottom: 1px; }
        @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
          body.language .footer__lowerarea .footercomp__color--btn {
            text-align: left;
            white-space: nowrap;
            width: 55px; } }
        @media only screen and (min-width: 768px) {
          body.language .footer__lowerarea .footercomp__color--btn:hover {
            background-color: #e5f7f7;
            box-shadow: 0 0 15px #cce5ef; } }
        @media only screen and (max-width: 767px) {
          body.language .footer__lowerarea .footercomp__color--btn {
            height: 30px;
            white-space: nowrap;
            padding: 0;
            border-radius: 3px; } }
        @media only screen and (max-width: 320px) {
          body.language .footer__lowerarea .footercomp__color--btn {
            width: 46px; } }
        body.language .footer__lowerarea .footercomp__color--btn _:lang(x)::-ms-backdrop, body.language .footer__lowerarea .footercomp__color--btn {
          padding-top: 3px; }
        body.language .footer__lowerarea .footercomp__color--btn:last-child {
          margin-right: 0; }
        body.language .footer__lowerarea .footercomp__color--btn.active {
          background-color: #d9e7ef; }
      body.language .footer__lowerarea .footercomp__color button[data-color="default"] {
        background-color: #fff;
        border: 1px solid #e1e1e1; }
      body.language .footer__lowerarea .footercomp__color button[data-color="blue"] {
        color: #FFF;
        background-color: #0072b2;
        border: 1px solid #0072b2; }
      body.language .footer__lowerarea .footercomp__color button[data-color="black"] {
        color: #FFF;
        background-color: #000;
        border: 1px solid #000; }
      body.language .footer__lowerarea .footercomp__color button[data-color="yellow"] {
        color: #1c4e6a;
        background-color: #f0e442;
        border: 1px solid #f0e442; }
    body.language .footer__lowerarea .footercomp__txtsize {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      margin-right: 40px; }
      @media only screen and (max-width: 767px) {
        body.language .footer__lowerarea .footercomp__txtsize {
          width: 100%; } }
      body.language .footer__lowerarea .footercomp__txtsize--txt {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.285714286;
        margin-right: 10px;
        font-weight: 500;
        text-align: center;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto; }
        @media only screen and (max-width: 767px) {
          body.language .footer__lowerarea .footercomp__txtsize--txt {
            font-size: 13px;
            font-size: 1.3rem;
            width: 78px;
            text-align: left;
            margin-right: 5px; } }
      body.language .footer__lowerarea .footercomp__txtsize--btn {
        width: 50px;
        height: 30px;
        border: 1px solid #d9e7ef;
        border-radius: 5px;
        margin-right: 5px;
        -webkit-transition: background-color 0.3s;
        -moz-transition: background-color 0.3s;
        -o-transition: background-color 0.3s;
        transition: background-color 0.3s;
        background-color: white;
        cursor: pointer;
        font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 500;
        padding-bottom: 1px;
        color: #1c4e6a;
        white-space: nowrap; }
        @media only screen and (max-width: 767px) {
          body.language .footer__lowerarea .footercomp__txtsize--btn {
            height: 30px;
            padding: 0;
            border-radius: 3px; } }
        @media only screen and (max-width: 320px) {
          body.language .footer__lowerarea .footercomp__txtsize--btn {
            width: 46px; } }
        body.language .footer__lowerarea .footercomp__txtsize--btn _:lang(x)::-ms-backdrop, body.language .footer__lowerarea .footercomp__txtsize--btn {
          padding-top: 3px; }
        body.language .footer__lowerarea .footercomp__txtsize--btn:last-child {
          margin-right: 0; }
        body.language .footer__lowerarea .footercomp__txtsize--btn.active {
          background-color: #d9e7ef; }
        body.language .footer__lowerarea .footercomp__txtsize--btn:hover {
          background-color: #e5f7f7; }
  body.language .footer__copyright {
    width: 100%;
    height: 50px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    text-align: center;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.05em;
    background-color: #eefafd; }
    @media only screen and (max-width: 767px) {
      body.language .footer__copyright {
        padding-left: 14px;
        font-size: 11px;
        font-size: 1.1rem;
        -webkit-justify-content: flex-start;
        justify-content: flex-start; } }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    body.language .footer .footercomp__color button {
      padding: 0;
      text-align: center; } }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    body.language .footer .footercomp__txtsize button {
      padding: 0;
      text-align: center; } }

.footer-pier {
  position: relative; }
  .footer-pier:before {
    content: '';
    width: 100%;
    height: 3px;
    display: block;
    background: url(../images/garden-pier/common/footer-border.png) center/100% 3px no-repeat; }
  .footer-pier .footer-wrapper {
    padding: 0 40px; }
    @media only screen and (max-width: 767px) {
      .footer-pier .footer-wrapper {
        padding: 0; } }
  .footer-pier__top {
    max-width: 770px;
    width: 100%;
    margin: 0 auto;
    padding: 50px 0 20px;
    display: -webkit-flex;
    display: flex; }
    @media only screen and (max-width: 767px) {
      .footer-pier__top {
        padding: 35px 40px; } }
    .footer-pier__top .left {
      max-width: 500px;
      width: 100%;
      margin-right: 10px; }
      .footer-pier__top .left .logo {
        width: 230px;
        margin-bottom: 25px;
        display: inline-block; }
      .footer-pier__top .left .contact {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.846153846;
        margin-bottom: 25px; }
        @media only screen and (max-width: 767px) {
          .footer-pier__top .left .contact .mt10 {
            margin-top: 8px;
            display: block; }
          .footer-pier__top .left .contact .spstrong {
            font-weight: 500;
            font-size: 14px;
            font-size: 1.4rem; } }
    .footer-pier__top .right {
      width: calc(100% - 510px); }
  .footer-pier__btm {
    display: -webkit-flex;
    display: flex; }
    @media only screen and (max-width: 767px) {
      .footer-pier__btm {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; } }
    .footer-pier__btm .left {
      width: calc(100% - 370px);
      overflow: hidden;
      height: 350px;
      position: relative;
      margin-right: 10px; }
      @media only screen and (max-width: 767px) {
        .footer-pier__btm .left {
          order: 2;
          width: 100%; } }
      .footer-pier__btm .left .mapframe {
        border: 0;
        height: 100%;
        left: 0;
        position: absolute;
        top: 0;
        width: 100%; }
    @media only screen and (min-width: 768px) {
      .footer-pier__btm .right {
        -webkit-flex: 0 0 350px;
        flex: 0 0 350px; } }
    @media only screen and (max-width: 767px) {
      .footer-pier__btm .right {
        order: 1;
        width: 100%;
        padding: 0 25px; } }
  .footer-pier__links {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media only screen and (min-width: 768px) {
      .footer-pier__links {
        padding-top: 35px !important;
        padding-bottom: 25px !important; } }
    @media only screen and (max-width: 767px) {
      .footer-pier__links {
        padding: 0 !important; } }
    .footer-pier__links li {
      position: relative;
      padding-left: 12px;
      margin-bottom: 12px; }
      @media only screen and (max-width: 767px) {
        .footer-pier__links li {
          padding-left: 0;
          margin-bottom: 0;
          border-bottom: 1px solid #e1e1e1;
          width: 100%; } }
      .footer-pier__links li:before {
        content: '';
        width: 6px;
        height: 1px;
        top: 50%;
        left: 4px;
        background-color: #2593a5;
        position: absolute; }
        @media only screen and (max-width: 767px) {
          .footer-pier__links li:before {
            display: none; } }
      .footer-pier__links li a {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          .footer-pier__links li a {
            display: block;
            padding: 15px 25px;
            font-size: 13px;
            font-size: 1.3rem;
            font-weight: 700;
            position: relative; }
            .footer-pier__links li a:after {
              content: '';
              border-right: 2px solid #000;
              border-bottom: 2px solid #000;
              width: 5px;
              height: 5px;
              position: absolute;
              top: 50%;
              right: 25px;
              transform: translateY(-50%) rotateZ(-45deg); } }
      @media only screen and (min-width: 768px) {
        .footer-pier__links li.col1 {
          width: 15%; } }
      @media only screen and (min-width: 768px) {
        .footer-pier__links li.col2 {
          width: 25%; } }
      @media only screen and (min-width: 768px) {
        .footer-pier__links li.col3 {
          width: 27.2%; } }
      @media only screen and (min-width: 768px) {
        .footer-pier__links li.col4 {
          width: 32.8%; } }
  .footer-pier .illust {
    padding: 25px 60px; }
  .footer-pier__copyright {
    background: #e1e1e1;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    height: 50px;
    width: 100%;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.05em;
    font-weight: 500; }
  .footer-pier .page-adjust {
    display: -webkit-flex;
    display: flex; }
    @media only screen and (max-width: 767px) {
      .footer-pier .page-adjust {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; } }
  .footer-pier .footercomp__color {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      .footer-pier .footercomp__color {
        width: 100%;
        margin-top: 10px; } }
    .footer-pier .footercomp__color--txt {
      display: block;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 500;
      line-height: 1.285714286;
      margin-right: 10px;
      text-align: center;
      -webkit-flex: 0 0 auto;
      flex: 0 0 auto; }
      @media only screen and (max-width: 767px) {
        .footer-pier .footercomp__color--txt {
          font-size: 13px;
          font-size: 1.3rem;
          width: 74px;
          text-align: left;
          margin-right: 0; } }
    .footer-pier .footercomp__color--btn {
      width: 50px;
      height: 30px;
      border-radius: 5px;
      margin-right: 5px;
      border: none;
      -webkit-transition: background-color 0.3s;
      -moz-transition: background-color 0.3s;
      -o-transition: background-color 0.3s;
      transition: background-color 0.3s;
      font-weight: 500;
      cursor: pointer;
      font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 500;
      white-space: nowrap; }
      @media only screen and (min-width: 768px) {
        .footer-pier .footercomp__color--btn {
          transition: box-shadow 0.3s; }
          .footer-pier .footercomp__color--btn:hover {
            box-shadow: 0 0 12px #cce5ef; } }
      @media only screen and (max-width: 767px) {
        .footer-pier .footercomp__color--btn {
          height: 30px;
          border-radius: 3px;
          padding: 0; } }
      .footer-pier .footercomp__color--btn _:lang(x)::-ms-backdrop, .footer-pier .footercomp__color--btn {
        padding-top: 3px; }
      .footer-pier .footercomp__color--btn:last-child {
        margin-right: 0; }
      .footer-pier .footercomp__color--btn.active {
        background-color: #d9e7ef; }
      .footer-pier .footercomp__color--btn:hover {
        background-color: #e5f7f7; }
    .footer-pier .footercomp__color button[data-color="default"] {
      background-color: #fff;
      border: 1px solid #e1e1e1; }
    .footer-pier .footercomp__color button[data-color="blue"] {
      color: #FFF;
      background-color: #0072b2; }
    .footer-pier .footercomp__color button[data-color="black"] {
      color: #FFF;
      background-color: #000; }
    .footer-pier .footercomp__color button[data-color="yellow"] {
      color: #333;
      background-color: #f0e442; }
  .footer-pier .footercomp__txtsize {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    margin-right: 40px; }
    @media only screen and (max-width: 767px) {
      .footer-pier .footercomp__txtsize {
        width: 100%; } }
    .footer-pier .footercomp__txtsize--txt {
      display: block;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 500;
      line-height: 1.285714286;
      margin-right: 10px;
      text-align: center;
      -webkit-flex: 0 0 auto;
      flex: 0 0 auto; }
      @media only screen and (max-width: 767px) {
        .footer-pier .footercomp__txtsize--txt {
          font-size: 13px;
          font-size: 1.3rem;
          width: 74px;
          text-align: left;
          margin-right: 0; } }
    .footer-pier .footercomp__txtsize--btn {
      width: 50px;
      height: 30px;
      border: 1px solid #d9e7ef;
      border-radius: 5px;
      margin-right: 5px;
      -webkit-transition: background-color 0.3s;
      -moz-transition: background-color 0.3s;
      -o-transition: background-color 0.3s;
      transition: background-color 0.3s;
      cursor: pointer;
      font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 500;
      background-color: #fff;
      white-space: nowrap; }
      @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
        .footer-pier .footercomp__txtsize--btn {
          padding-left: 10px; } }
      .footer-pier .footercomp__txtsize--btn _:lang(x)::-ms-backdrop, .footer-pier .footercomp__txtsize--btn {
        padding-top: 3px; }
      @media only screen and (max-width: 767px) {
        .footer-pier .footercomp__txtsize--btn {
          height: 30px;
          border-radius: 3px;
          padding: 0; } }
      .footer-pier .footercomp__txtsize--btn:last-child {
        margin-right: 0; }
      .footer-pier .footercomp__txtsize--btn.active {
        background-color: #d9e7ef; }
      .footer-pier .footercomp__txtsize--btn:hover {
        background-color: #e5f7f7; }
  .footer-pier p a {
    color: #383838; }
  .footer-pier .js-change-size.footercomp__txtsize--btn {
    border-color: #e1e1e1; }
    .footer-pier .js-change-size.footercomp__txtsize--btn.active {
      background-color: #e1e1e1; }
    .footer-pier .js-change-size.footercomp__txtsize--btn:hover {
      background-color: #e1e1e1; }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    .footer-pier button {
      padding-right: 1px; } }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    .footer-pier .footercomp__color button {
      padding: 0;
      text-align: center; } }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    .footer-pier .footercomp__txtsize button {
      padding: 0;
      text-align: center; } }

#to-top {
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  bottom: 29px;
  right: 36px;
  height: 70px;
  width: 70px;
  z-index: 100; }
  @media only screen and (min-width: 768px) {
    #to-top {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      #to-top:hover {
        opacity: .7; } }
  @media only screen and (max-width: 767px) {
    #to-top {
      bottom: 15px;
      right: 15px;
      height: 55px;
      width: 55px; } }
  #to-top.active {
    opacity: 1;
    pointer-events: auto; }

.footer {
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .footer .inner {
      padding: 0; } }
  .footer__row1 {
    max-width: 1100px; }
  .footer__map {
    width: 100%;
    margin-bottom: 50px; }
    @media only screen and (max-width: 767px) {
      .footer__map {
        margin-bottom: 0; } }
    .footer__map iframe {
      width: 100%;
      height: 350px; }
      @media only screen and (max-width: 767px) {
        .footer__map iframe {
          height: 200px; } }
  .footer__toplinks {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    margin-bottom: 37px; }
    @media only screen and (max-width: 767px) {
      .footer__toplinks {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 0; } }
    .footer__toplinks__sec {
      padding-top: 12px; }
      @media only screen and (max-width: 767px) {
        .footer__toplinks__sec {
          width: 100%;
          padding: 0; } }
      @media only screen and (min-width: 768px) {
        .footer__toplinks__sec:nth-child(1) {
          border-right: 1px solid #d9e7ef;
          width: 22.8%; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
    .footer__toplinks__sec:nth-child(1) {
      width: 27%; } }
      @media only screen and (min-width: 768px) {
          .footer__toplinks__sec:nth-child(1) .box-in {
            max-width: 195px;
            margin: 0 auto; } }
      @media only screen and (max-width: 767px) {
        .footer__toplinks__sec:nth-child(1) ul li:nth-child(1) {
          order: 1; }
        .footer__toplinks__sec:nth-child(1) ul li:nth-child(2) {
          order: 3; }
        .footer__toplinks__sec:nth-child(1) ul li:nth-child(3) {
          order: 2; }
        .footer__toplinks__sec:nth-child(1) ul li:nth-child(4) {
          order: 4; } }
      @media only screen and (min-width: 768px) {
        .footer__toplinks__sec:nth-child(2) {
          border-right: 1px solid #d9e7ef;
          width: 35.2%; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
    .footer__toplinks__sec:nth-child(2) {
      width: 35%; } }
      @media only screen and (min-width: 768px) {
          .footer__toplinks__sec:nth-child(2) .box-in {
            max-width: 298px;
            margin: 0 auto;
            padding-left: 5px; } }
    @media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
      .footer__toplinks__sec:nth-child(2) .box-in {
        max-width: 230px; } }
      .footer__toplinks__sec:nth-child(2) ul {
        display: flex;
        flex-wrap: wrap; }
        .footer__toplinks__sec:nth-child(2) ul li {
          width: 50%; }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          .footer__toplinks__sec:nth-child(2) ul li {
            width: 100% !important; } }
      @media only screen and (min-width: 768px) {
        .footer__toplinks__sec:nth-child(3) {
          width: 42%;
          padding-left: 10px; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
    .footer__toplinks__sec:nth-child(3) {
      width: 38%; } }
      @media only screen and (min-width: 768px) {
          .footer__toplinks__sec:nth-child(3) .box-in {
            max-width: 400px;
            margin: 0 0 0 auto; } }
    @media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
      .footer__toplinks__sec:nth-child(3) .box-in {
        max-width: 280px; } }
      .footer__toplinks__sec:nth-child(3) ul {
        display: flex;
        flex-wrap: wrap; }
        @media only screen and (max-width: 767px) {
          .footer__toplinks__sec:nth-child(3) ul li {
            width: 50%; } }
        @media only screen and (min-width: 768px) {
          .footer__toplinks__sec:nth-child(3) ul li {
            width: 63%;
            margin-bottom: 15px; }
          .footer__toplinks__sec:nth-child(3) ul li:nth-child(2n) {
            width: 37%; }
          .footer__toplinks__sec:nth-child(3) ul li:first-child {
            width: 100%;
            margin-bottom: 19px; } }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          .footer__toplinks__sec:nth-child(3) ul li {
            width: 100% !important; } }
    .footer__toplinks--title {
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 700;
      margin-bottom: 26px; }
      @media only screen and (max-width: 767px) {
        .footer__toplinks--title {
          width: 100%;
          padding: 16px 25px;
          border-bottom: 1px solid #d9e7ef;
          margin-bottom: 0;
          font-size: 13px;
          font-size: 1.3rem; }
          .footer__toplinks--title:first-of-type {
            position: relative; }
            .footer__toplinks--title:first-of-type:before {
              border-bottom: 2px solid #1c4e6a;
              border-right: 2px solid #1c4e6a;
              content: "";
              margin: 0 auto;
              position: absolute;
              right: 26px;
              top: 50%;
              transform: translateY(-50%) rotate(-45deg);
              height: 4px;
              width: 4px; } }
      @media only screen and (max-width: 767px) {
        .footer__toplinks--title.trigger {
          position: relative; }
          .footer__toplinks--title.trigger:before {
            border-bottom: 2px solid #1c4e6a;
            border-right: 2px solid #1c4e6a;
            content: "";
            margin: 0 auto;
            pointer-events: none;
            position: absolute;
            right: 26px;
            top: 50%;
            transform: translateY(-50%) rotate(45deg);
            height: 4px;
            width: 4px; }
          .footer__toplinks--title.trigger.active:before {
            transform: translateY(-50%) rotate(-135deg); } }
    .footer__toplinks--links {
      line-height: 2.5; }
      @media only screen and (max-width: 767px) {
        .footer__toplinks--links {
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap; } }
      .footer__toplinks--links li {
        margin-bottom: 17px;
        line-height: 1; }
        @media only screen and (max-width: 767px) {
          .footer__toplinks--links li {
            border-bottom: 1px solid #d9e7ef;
            width: 50%;
            margin-bottom: 0; }
            .footer__toplinks--links li.long {
              width: 100% !important; }
            .footer__toplinks--links li.has-sp-border {
              border-right: 1px solid #d9e7ef; } }
        .footer__toplinks--links li a {
          letter-spacing: 0;
          font-weight: 500;
          padding-left: 10px;
          position: relative;
          font-size: 13px;
          font-size: 1.3rem; }
          @media only screen and (max-width: 767px) {
            .footer__toplinks--links li a {
              line-height: 15px;
              padding: 4px 10px 4px 35px;
              min-height: 45px;
              display: flex;
              align-items: center;
              width: 100%;
              height: 100%;
              font-weight: 400; } }
          .footer__toplinks--links li a:before {
            content: '';
            width: 4px;
            height: 4px;
            border-right: 1px solid #1c4e6a;
            border-bottom: 1px solid #1c4e6a;
            position: absolute;
            left: 0;
            top: 50%;
            transform: rotate(-45deg) translateY(-50%); }
            @media only screen and (max-width: 767px) {
              .footer__toplinks--links li a:before {
                left: 25px; } }
          .footer__toplinks--links li a.icn-line:before {
            width: 5px;
            height: 1px;
            background: #1c4e6a;
            border: none;
            top: 50%;
            transform: none; }
  .footer__banners {
    display: -webkit-flex;
    display: flex;
    margin: 0 auto;
    margin-bottom: 40px;
    flex-wrap: wrap; }
    @media only screen and (min-width: 768px) {
      .footer__banners {
        justify-content: center;
        max-width: 771px; } }
    @media only screen and (max-width: 767px) {
      .footer__banners {
        justify-content: space-between;
        padding: 30px 25px 25px;
        margin-bottom: 0; } }
    @media only screen and (min-width: 768px) {
      .footer__banners a {
        padding: 0 5px;
        margin-bottom: 10px;
        width: calc((100% - 20px) / 3); } }
  @media only screen and (min-width: 768px) and (min-width: 768px) {
    .footer__banners a {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      .footer__banners a:hover {
        opacity: .7; } }
    @media only screen and (max-width: 767px) {
      .footer__banners a {
        width: calc(50% - 2px);
        margin-bottom: 5px; } }
  .footer .separator {
    margin-bottom: 49px;
    width: 100%;
    height: 1px;
    background: #d9e7ef; }
    @media only screen and (max-width: 767px) {
      .footer .separator {
        margin-bottom: 30px; } }
  .footer__branding {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      .footer__branding {
        padding: 0 25px 0;
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-align-items: flex-start;
        align-items: flex-start; } }
    .footer__branding--logo {
      width: 223px;
      margin-right: 46px; }
      @media only screen and (min-width: 768px) {
        .footer__branding--logo {
          transition: opacity 0.3s; }
          .footer__branding--logo:hover {
            opacity: 0.6; } }
      @media only screen and (max-width: 767px) {
        .footer__branding--logo {
          margin-bottom: 20px;
          margin-right: 0;
          width: 206px; } }
    .footer__branding--address .heading {
      display: block;
      font-size: 15px;
      font-size: 1.5rem;
      letter-spacing: 0.05em;
      line-height: 24px;
      margin-bottom: 9px; }
      @media only screen and (max-width: 767px) {
        .footer__branding--address .heading {
          margin-bottom: 12px;
          line-height: 20px;
          font-size: 14px;
          font-size: 1.4rem; } }
    @media only screen and (max-width: 767px) {
      .footer__branding--address.space {
        margin: 11px 0 10px; } }
    .footer__branding--address .address {
      display: block;
      font-size: 13px;
      font-size: 1.3rem;
      letter-spacing: 0.05em;
      line-height: 24px; }
      @media only screen and (max-width: 767px) {
        .footer__branding--address .address {
          line-height: 22px; } }
  .footer__sublinks {
    display: -webkit-flex;
    display: flex;
    margin: 30px 0;
    width: auto; }
    @media only screen and (min-width: 768px) {
      .footer__sublinks {
        margin-bottom: 29px; } }
    @media only screen and (max-width: 767px) {
      .footer__sublinks {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 21px 25px 28px; } }
    @media only screen and (min-width: 768px) {
      .footer__sublinks li {
        padding: 0 18px;
        border-left: 1px solid #aebac3; }
        .footer__sublinks li:last-child {
          border-right: 1px solid #aebac3; } }
    @media only screen and (max-width: 767px) {
      .footer__sublinks li {
        margin-right: 47px;
        margin-bottom: 11px;
        position: relative; }
        .footer__sublinks li:first-child, .footer__sublinks li:last-child {
          width: 100%;
          margin-right: 0; }
        .footer__sublinks li.mr0 {
          margin-right: 0; } }
    @media only screen and (min-width: 768px) and (max-width: 900px) {
      .footer__sublinks li {
        padding: 0 14px; } }
    .footer__sublinks li a {
      font-size: 12px;
      font-size: 1.2rem;
      letter-spacing: 0.05em;
      position: relative; }
      @media only screen and (min-width: 768px) {
        .footer__sublinks li a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          .footer__sublinks li a:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        .footer__sublinks li a {
          padding-left: 11px; }
          .footer__sublinks li a:before {
            background-color: #1c4e6a;
            content: "";
            margin: 0 auto;
            position: absolute;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            height: 1px;
            width: 5px; } }
      .footer__sublinks li a img {
        margin-left: 6px;
        position: relative;
        top: -1px;
        width: 11px; }
        @media only screen and (max-width: 767px) {
          .footer__sublinks li a img {
            margin-left: 4px;
            width: 9px; } }
  .footer__morebanners {
    margin-bottom: 30px; }
    .footer__morebanners .flex-row {
      margin: 0 5px;
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
    @media only screen and (max-width: 767px) {
      .footer__morebanners {
        margin-bottom: 32px;
        padding: 0 20px;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; } }
    @media only screen and (min-width: 768px) {
      .footer__morebanners a {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        .footer__morebanners a:hover {
          opacity: .7; } }
    .footer__morebanners .banner {
      width: calc((100% - 30px) / 4);
      margin-right: 10px; }
      @media only screen and (min-width: 768px) {
        .footer__morebanners .banner:nth-child(5), .footer__morebanners .banner:nth-child(6), .footer__morebanners .banner:nth-child(7), .footer__morebanners .banner:nth-child(8) {
          margin-top: 10px; } }
      @media only screen and (max-width: 767px) {
        .footer__morebanners .banner {
          width: calc(50% - 2px);
          margin-right: 4px;
          margin-bottom: 4px; }
          .footer__morebanners .banner:nth-child(2n+2) {
            margin-right: 0; } }
      .footer__morebanners .banner:last-child, .footer__morebanners .banner:nth-child(4) {
        margin-right: 0; }
    .footer__morebanners .hokoku-link {
      font-size: 12px;
      font-size: 1.2rem;
      margin-top: 15px;
      letter-spacing: 0.05em;
      padding-left: 15px;
      position: relative;
      text-align: right;
      width: 100%;
      display: inline-block; }
      @media only screen and (min-width: 768px) {
        .footer__morebanners .hokoku-link {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          .footer__morebanners .hokoku-link:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        .footer__morebanners .hokoku-link {
          margin-top: 10px;
          padding-left: 12px; } }
      .footer__morebanners .hokoku-link:before {
        border-left: 1px solid #1c4e6a;
        border-bottom: 1px solid #1c4e6a;
        content: "";
        display: inline-block;
        margin: 0 auto;
        margin-right: 5px;
        height: 5px;
        width: 5px;
        transform: translateY(-30%) rotate(-135deg); }
  .footer__lowerarea {
    color: #1c4e6a;
    margin-top: -6px;
    margin-bottom: 30px;
    position: relative;
    width: 100%;
    display: flex;
    justify-content: flex-start; }
    @media only screen and (max-width: 767px) {
      .footer__lowerarea {
        padding: 0 25px 0;
        justify-content: space-between; } }
    .footer__lowerarea .social-items {
      width: 224px;
      margin-right: 30px; }
      @media only screen and (max-width: 767px) {
        .footer__lowerarea .social-items {
          margin-bottom: 30px;
          margin-right: 0;
          width: 179px; } }
      @media only screen and (min-width: 768px) and (max-width: 900px) {
        .footer__lowerarea .social-items {
          width: 210px;
          margin-right: 15px; } }
      .footer__lowerarea .social-items a {
        border-radius: 50%;
        border: 1px solid #d9e7ef;
        transition: all .3s;
        height: 40px;
        width: 40px;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center; }
        @media only screen and (min-width: 768px) {
          .footer__lowerarea .social-items a {
            height: 50px;
            width: 50px; }
            .footer__lowerarea .social-items a:hover {
              border: 1px solid white;
              box-shadow: 0 0 15px #cce5ef; } }
      @media only screen and (max-width: 767px) {
        .footer__lowerarea .social-items .icon-facebook img {
          width: 20px; }
        .footer__lowerarea .social-items .icon-instagram img {
          width: 20px; }
        .footer__lowerarea .social-items .icon-youtube img {
          width: 23px; }
        .footer__lowerarea .social-items .icon-x img {
          width: 14px; } }
    .footer__lowerarea .footercomp__color {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        .footer__lowerarea .footercomp__color {
          width: 100%;
          margin-top: 10px; } }
      .footer__lowerarea .footercomp__color--txt {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.285714286;
        margin-right: 10px;
        font-weight: 500;
        text-align: center;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto; }
        @media only screen and (max-width: 767px) {
          .footer__lowerarea .footercomp__color--txt {
            font-size: 13px;
            font-size: 1.3rem;
            width: 70px;
            text-align: left;
            margin-right: 5px; } }
      .footer__lowerarea .footercomp__color--btn {
        width: 50px;
        height: 30px;
        border: 1px solid #d9e7ef;
        border-radius: 5px;
        margin-right: 5px;
        -webkit-transition: background-color 0.3s;
        -moz-transition: background-color 0.3s;
        -o-transition: background-color 0.3s;
        transition: background-color 0.3s;
        font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-weight: 500;
        cursor: pointer;
        transition: all .3s;
        color: #1c4e6a;
        padding-bottom: 1px; }
        @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
          .footer__lowerarea .footercomp__color--btn {
            text-align: left;
            white-space: nowrap;
            width: 55px; } }
        @media only screen and (min-width: 768px) {
          .footer__lowerarea .footercomp__color--btn:hover {
            background-color: #e5f7f7;
            box-shadow: 0 0 15px #cce5ef; } }
        @media only screen and (max-width: 767px) {
          .footer__lowerarea .footercomp__color--btn {
            height: 30px;
            white-space: nowrap;
            padding: 0;
            border-radius: 3px; } }
        @media only screen and (max-width: 320px) {
          .footer__lowerarea .footercomp__color--btn {
            width: 46px; } }
        .footer__lowerarea .footercomp__color--btn _:lang(x)::-ms-backdrop, .footer__lowerarea .footercomp__color--btn {
          padding-top: 3px; }
        .footer__lowerarea .footercomp__color--btn:last-child {
          margin-right: 0; }
        .footer__lowerarea .footercomp__color--btn.active {
          background-color: #d9e7ef; }
      .footer__lowerarea .footercomp__color button[data-color="default"] {
        background-color: #fff;
        border: 1px solid #e1e1e1; }
      .footer__lowerarea .footercomp__color button[data-color="blue"] {
        color: #FFF;
        background-color: #0072b2;
        border: 1px solid #0072b2; }
      .footer__lowerarea .footercomp__color button[data-color="black"] {
        color: #FFF;
        background-color: #000;
        border: 1px solid #000; }
      .footer__lowerarea .footercomp__color button[data-color="yellow"] {
        color: #1c4e6a;
        background-color: #f0e442;
        border: 1px solid #f0e442; }
    .footer__lowerarea .footercomp__txtsize {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      margin-right: 30px; }
      @media only screen and (max-width: 767px) {
        .footer__lowerarea .footercomp__txtsize {
          width: 100%; } }
      @media only screen and (min-width: 768px) and (max-width: 900px) {
        .footer__lowerarea .footercomp__txtsize {
          margin-right: 15px; } }
      .footer__lowerarea .footercomp__txtsize--txt {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.285714286;
        margin-right: 10px;
        font-weight: 500;
        text-align: center;
        -webkit-flex: 0 0 auto;
        flex: 0 0 auto; }
        @media only screen and (max-width: 767px) {
          .footer__lowerarea .footercomp__txtsize--txt {
            font-size: 13px;
            font-size: 1.3rem;
            width: 70px;
            text-align: left;
            margin-right: 5px; } }
      .footer__lowerarea .footercomp__txtsize--btn {
        width: 50px;
        height: 30px;
        border: 1px solid #d9e7ef;
        border-radius: 5px;
        margin-right: 5px;
        -webkit-transition: background-color 0.3s;
        -moz-transition: background-color 0.3s;
        -o-transition: background-color 0.3s;
        transition: background-color 0.3s;
        background-color: white;
        cursor: pointer;
        font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 500;
        padding-bottom: 1px;
        color: #1c4e6a;
        white-space: nowrap; }
        @media only screen and (max-width: 767px) {
          .footer__lowerarea .footercomp__txtsize--btn {
            height: 30px;
            padding: 0;
            border-radius: 3px; } }
        @media only screen and (max-width: 320px) {
          .footer__lowerarea .footercomp__txtsize--btn {
            width: 46px; } }
        .footer__lowerarea .footercomp__txtsize--btn _:lang(x)::-ms-backdrop, .footer__lowerarea .footercomp__txtsize--btn {
          padding-top: 3px; }
        .footer__lowerarea .footercomp__txtsize--btn:last-child {
          margin-right: 0; }
        .footer__lowerarea .footercomp__txtsize--btn.active {
          background-color: #d9e7ef; }
        .footer__lowerarea .footercomp__txtsize--btn:hover {
          background-color: #e5f7f7; }
  .footer__copyright {
    width: 100%;
    height: 50px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    text-align: center;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.05em;
    background-color: #eefafd; }
    @media only screen and (max-width: 767px) {
      .footer__copyright {
        padding-left: 14px;
        font-size: 11px;
        font-size: 1.1rem; } }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    .footer .footercomp__color button {
      padding: 0;
      text-align: center; } }
  @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
    .footer .footercomp__txtsize button {
      padding: 0;
      text-align: center; } }

.btn-ticket-fixed {
  position: fixed;
  left: 8px;
  bottom: 20px;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s;
  will-change: opacity; }
  @media only screen and (max-width: 767px) {
    .btn-ticket-fixed {
      width: 239px;
      left: 10px;
      bottom: 15px; } }
  .btn-ticket-fixed.show {
    opacity: 1;
    pointer-events: all; }
  .btn-ticket-fixed.hide {
    opacity: 0;
    pointer-events: none; }

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .btn-ticket-fixed a:hover {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    .btn-ticket-fixed a:hover:hover {
      opacity: .7; } }
  .btn-ticket-fixed .close {
    position: absolute;
    top: 17px;
    right: 8px;
    width: 18px;
    height: 18px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='78' height='78' viewBox='0 0 78 78'%3E%3Cdefs%3E%3Cfilter id='bg' x='0' y='0' width='78' height='78' filterUnits='userSpaceOnUse'%3E%3CfeOffset input='SourceAlpha'/%3E%3CfeGaussianBlur stdDeviation='10' result='blur'/%3E%3CfeFlood flood-color='%231c4e6a' flood-opacity='0.102'/%3E%3CfeComposite operator='in' in2='blur'/%3E%3CfeComposite in='SourceGraphic'/%3E%3C/filter%3E%3C/defs%3E%3Cg id='btn_close' transform='translate(-339 -23)'%3E%3Cg transform='matrix(1, 0, 0, 1, 339, 23)' filter='url(%23bg)'%3E%3Ccircle id='bg-2' data-name='bg' cx='9' cy='9' r='9' transform='translate(30 30)' fill='%23fff'/%3E%3C/g%3E%3Cpath id='Path_13157' data-name='Path 13157' d='M6.426-5.32,3.234-2.128l.56.56L6.986-4.76l3.192,3.178.574-.56L7.56-5.32,10.738-8.5l-.574-.56L7-5.88,3.808-9.072l-.56.574Z' transform='translate(371 67)' fill='%2300b0b7'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-position: center;
    background-repeat: no-repeat;
    background-size: auto;
    cursor: pointer; }
    @media only screen and (max-width: 767px) {
      .btn-ticket-fixed .close {
        width: 14px;
        height: 14px;
        background-size: 60px auto; } }

@media only screen and (min-width: 768px) and (min-width: 768px) {
  .btn-ticket-fixed .close:hover {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    .btn-ticket-fixed .close:hover:hover {
      opacity: .7; } }

.header-en .headercomp__txtsize--txt {
  line-height: 1.2;
  padding-top: 4px; }

.header-en .headercomp__txtsize button {
  width: 75px; }

.header-en .gnav__item.logo .gnav__item--icon {
  margin-bottom: 3px;
  width: 30px; }

@media only screen and (max-width: 767px) {
  .header-en .gnav li:nth-child(2) .gnav__item--txt {
    text-align: center;
    white-space: nowrap; }
  .header-en .gnav li:nth-child(2) .gnav__item--icon {
    margin-bottom: 5px; }
  .header-en .gnav li:nth-child(3) .gnav__item--icon {
    margin-bottom: 12px; }
  .header-en .gnav li:nth-child(4) .gnav__item--icon {
    margin-bottom: 11px; }
  .header-en .gnav li:nth-child(5) .gnav__item--icon {
    margin-bottom: 9px; }
  .header-en .gnav li:nth-child(6) .gnav__item--icon {
    margin-bottom: 9px; } }

.header-kr .gnav__item.logo .gnav__item--icon {
  margin-bottom: 3px;
  width: 30px; }

@media only screen and (max-width: 767px) {
  .header-kr .gnav li:nth-child(1) {
    text-align: center; }
    .header-kr .gnav li:nth-child(1) .gnav__item--icon {
      margin-bottom: 6px;
      width: 25px; }
  .header-kr .gnav li:nth-child(5) .gnav__item--icon {
    margin-bottom: 9px; }
  .header-kr .gnav li:nth-child(6) .gnav__item--icon {
    margin-bottom: 12px; } }

body.language h1 {
  color: white;
  font-size: 10px;
  font-size: 1rem;
  letter-spacing: 0.05em;
  position: absolute;
  left: 20px;
  top: 11px;
  text-shadow: -2px 1px 9px rgba(0, 0, 0, 0.7); }
  @media only screen and (max-width: 767px) {
    body.language h1 {
      opacity: 0;
      pointer-events: none; } }

body.language .header {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  padding-top: 23px;
  background: #fff;
  z-index: 102; }
  @media only screen and (min-width: 768px) {
    body.language .header {
      -webkit-align-items: center;
      align-items: center; } }
  @media only screen and (max-width: 767px) {
    body.language .header {
      padding-top: 0;
      height: 60px;
      overflow: hidden;
      transition: height 0.3s;
      position: fixed;
      -webkit-align-content: flex-start;
      align-content: flex-start;
      top: 0;
      left: 0; }
      body.language .header.is-open {
        height: 100%;
        overflow-y: scroll;
        border-bottom: none !important;
        bottom: 0;
        background: #f4f8fa; }
        body.language .header.is-open:before {
          content: '';
          position: absolute;
          background-color: #fff;
          top: 0;
          left: 0;
          width: 100%;
          height: 60px;
          z-index: -1; } }
  body.language .header.is-fixed {
    position: fixed;
    top: 0;
    left: 0; }
  body.language .header__logo {
    margin: 0 20px 0 30px;
    width: 210px; }

@media only screen and (min-width: 768px) and (max-width: 1180px) {
  body.language .header__logo {
    width: 150px; } }

@media only screen and (min-width: 768px) and (max-width: 980px) {
  body.language .header__logo {
    margin: 0 10px 0 10px;
    width: 120px; } }

@media only screen and (min-width: 768px) and (max-width: 810px) {
  body.language .header__logo {
    margin: 0 8px 0 8px;
    width: 100px; } }
    @media only screen and (max-width: 767px) {
      body.language .header__logo {
        width: 148px;
        height: 60px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        order: 1;
        margin: 0 auto 0 15px; } }
  body.language .header__sns {
    display: -webkit-flex;
    display: flex;
    margin-right: auto; }
    @media only screen and (max-width: 767px) {
      body.language .header__sns {
        width: 100%;
        order: 5;
        padding: 0 25px;
        background: #f4f8fa;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin-right: 0; } }
    body.language .header__sns--item {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      width: 50px;
      height: 40px;
      border: 1px solid #d9e7ef;
      border-radius: 5px;
      margin-right: 5px;
      font-family: "Montserrat", sans-serif;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 500;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      @media only screen and (max-width: 767px) {
        body.language .header__sns--item {
          -webkit-flex-direction: column;
          flex-direction: column;
          width: calc((100% - 5px) / 3);
          height: 18vw;
          max-height: 70px;
          border: none;
          background: #ffffff;
          padding: 15px 5px; } }
      body.language .header__sns--item:hover {
        box-shadow: 0 0 15px #cce5ef; }
      body.language .header__sns--item .sns__icon img {
        display: block;
        height: auto; }
      body.language .header__sns--item .sns__icon--facebook img {
        width: 11px; }
        @media only screen and (max-width: 767px) {
          body.language .header__sns--item .sns__icon--facebook img {
            width: 12px; } }
      body.language .header__sns--item .sns__icon--instagram img {
        width: 20px; }
        @media only screen and (max-width: 767px) {
          body.language .header__sns--item .sns__icon--instagram img {
            width: 22px; } }
      body.language .header__sns--item .sns__icon--youtube img {
        width: 20px; }
        @media only screen and (max-width: 767px) {
          body.language .header__sns--item .sns__icon--youtube img {
            width: 27px; } }
      body.language .header__sns--item .sns__icon--twitter img {
        width: 22px; }
        @media only screen and (max-width: 767px) {
          body.language .header__sns--item .sns__icon--twitter img {
            width: 26px; } }
      body.language .header__sns--item:last-child {
        margin-right: 0; }
  body.language .header .gnav {
    width: 100%;
    margin-top: 20px;
    border-top: 1px solid #d9e7ef;
    border-bottom: 1px solid #d9e7ef; }
    @media only screen and (max-width: 767px) {
      body.language .header .gnav {
        border-bottom: none;
        border-top: none;
        order: 4;
        padding: 34px 25px 20px;
        margin-top: 0;
        background: #f4f8fa; } }
    body.language .header .gnav ul {
      display: -webkit-flex;
      display: flex;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.language .header .gnav ul {
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-justify-content: space-between;
          justify-content: space-between; } }
    body.language .header .gnav__item {
      width: calc(100% / 6);
      background: #FFF;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      @media only screen and (min-width: 768px) {
        body.language .header .gnav__item {
          border-right: 1px solid #d9e7ef; } }
      @media only screen and (max-width: 767px) {
        body.language .header .gnav__item {
          width: calc(50% - 2.5px);
          margin-bottom: 5px;
          border-radius: 5px;
          overflow: hidden; } }
      body.language .header .gnav__item.bg-grad {
        border-right: none; }
        @media only screen and (min-width: 768px) {
          body.language .header .gnav__item.bg-grad:hover a {
            background-position: right center; } }
      body.language .header .gnav__item a {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-flex-direction: column;
        flex-direction: column;
        width: 100%;
        height: 92px;
        background-color: #FFF;
        -webkit-transition: background-color 0.3s;
        -moz-transition: background-color 0.3s;
        -o-transition: background-color 0.3s;
        transition: background-color 0.3s; }
        @media screen and (device-width: 360px) and (device-height: 640px) and (-webkit-device-pixel-ratio: 3) {
          body.language .header .gnav__item a {
            height: 60px; } }
        @media screen and (device-aspect-ratio: 40 / 71) {
          body.language .header .gnav__item a {
            height: 60px; } }
      @media only screen and (max-width: 1200px) {
        body.language .header .gnav__item {
          /* IE11  */ }
          body.language .header .gnav__item _:lang(x)::-ms-backdrop, body.language .header .gnav__item a {
            height: 72px; } }
      body.language .header .gnav__item--icon {
        margin-bottom: 15px;
        width: 50px; }
        @media screen and (device-width: 360px) and (device-height: 640px) and (-webkit-device-pixel-ratio: 3) {
          body.language .header .gnav__item--icon {
            margin-bottom: 4px; } }
        @media screen and (device-aspect-ratio: 40 / 71) {
          body.language .header .gnav__item--icon {
            margin-bottom: 4px; } }
        body.language .header .gnav__item--icon img {
          width: 100%; }
      @media only screen and (max-width: 1200px) {
        body.language .header .gnav__item {
          /* IE11  */ }
          body.language .header .gnav__item _:lang(x)::-ms-backdrop, body.language .header .gnav__item--icon {
            margin-bottom: 8px;
            width: 40px; } }
      body.language .header .gnav__item--txt {
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 700;
        -webkit-transition: color 0.3s;
        -moz-transition: color 0.3s;
        -o-transition: color 0.3s;
        transition: color 0.3s; }
        @media screen and (device-width: 360px) and (device-height: 640px) and (-webkit-device-pixel-ratio: 3) {
          body.language .header .gnav__item--txt {
            font-size: 12px;
            font-size: 1.2rem; } }
        @media screen and (device-aspect-ratio: 40 / 71) {
          body.language .header .gnav__item--txt {
            font-size: 12px;
            font-size: 1.2rem; } }
      @media only screen and (max-width: 1200px) {
        body.language .header .gnav__item {
          /* IE11  */ }
          body.language .header .gnav__item _:lang(x)::-ms-backdrop, body.language .header .gnav__item--txt {
            font-size: 13px;
            font-size: 1.3rem; } }
      body.language .header .gnav__item.is-active a, body.language .header .gnav__item:hover a {
        background: #e5f7f7; }
      body.language .header .gnav__item.is-active a {
        pointer-events: none; }
      body.language .header .gnav__item.bg-grad a {
        background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
        background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
        background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
        background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
        background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
        background-size: 200% auto;
        transition: 0.5s; }
        body.language .header .gnav__item.bg-grad aa:hover {
          background-position: right center; }
      body.language .header .gnav__item.bg-grad .gnav__item--txt {
        color: #fff; }
  body.language .header__banner.pt-20 {
    padding-top: 20px; }
  @media only screen and (max-width: 1200px) {
    body.language .header {
      /* IE11  */ }
      body.language .header _:lang(x)::-ms-backdrop, body.language .header .gnav {
        margin-top: 8px; } }
  @media only screen and (min-width: 768px) {
    body.language .header__banner {
      display: none; } }
  @media only screen and (max-width: 767px) {
    body.language .header__banner {
      width: 100%;
      order: 7;
      padding: 0 25px 34px;
      position: relative;
      margin-bottom: auto;
      background: #f4f8fa; }
      body.language .header__banner .banner-mobile__top--icon {
        margin: 0 auto;
        position: absolute;
        left: 30px;
        top: 9px;
        width: 15px; } }

body.language .headercomp__color {
  display: -webkit-flex;
  display: flex; }
  body.language .headercomp__color--btn {
    width: 50px;
    height: 40px;
    border: 1px solid #d9e7ef;
    border-radius: 5px;
    margin-right: 5px;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
    cursor: pointer;
    white-space: nowrap; }
    @media only screen and (max-width: 767px) {
      body.language .headercomp__color--btn {
        height: 30px;
        padding: 0;
        border-radius: 3px; } }
    body.language .headercomp__color--btn:last-child {
      margin-right: 0; }
    body.language .headercomp__color--btn.active {
      background-color: #d9e7ef; }
    body.language .headercomp__color--btn:hover {
      background-color: #e5f7f7; }

body.language .headercomp__txtsize {
  color: #1c4e6a;
  margin-right: 20px;
  display: -webkit-flex;
  display: flex; }
  @media only screen and (max-width: 767px) {
    body.language .headercomp__txtsize {
      display: none; } }
  body.language .headercomp__txtsize--txt {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.285714286;
    margin-right: 10px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.language .headercomp__txtsize--txt {
        font-size: 13px;
        font-size: 1.3rem; } }
  body.language .headercomp__txtsize--btn {
    background-color: white;
    color: #1c4e6a;
    width: 50px;
    height: 40px;
    border: 1px solid #d9e7ef;
    border-radius: 5px;
    margin-right: 5px;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
    cursor: pointer;
    white-space: nowrap;
    text-align: center; }
    @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
      body.language .headercomp__txtsize--btn {
        padding-left: 11px; } }
    @media only screen and (min-width: 768px) {
      body.language .headercomp__txtsize--btn {
        padding-top: 2px; } }
  @media only screen and (min-width: 768px) and (max-width: 920px) {
    body.language .headercomp__txtsize--btn {
      font-size: 12px;
      font-size: 1.2rem;
      width: 60px !important; } }
    @media only screen and (max-width: 767px) {
      body.language .headercomp__txtsize--btn {
        padding: 0;
        height: 30px;
        border-radius: 3px; } }
    body.language .headercomp__txtsize--btn:last-child {
      margin-right: 0; }
    body.language .headercomp__txtsize--btn.active {
      background-color: #d9e7ef; }
    body.language .headercomp__txtsize--btn:hover {
      background-color: #e5f7f7; }

body.language .headercomp__lang {
  width: auto;
  height: 40px;
  border: 1px solid #d9e7ef;
  border-radius: 5px;
  margin-right: 10px;
  cursor: pointer;
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center; }
  @media only screen and (min-width: 768px) {
    body.language .headercomp__lang {
      padding-right: 29px; } }
  @media only screen and (min-width: 768px) and (max-width: 1080px) {
    body.language .headercomp__lang {
      margin-right: 5px; } }
  @media only screen and (min-width: 768px) and (max-width: 980px) {
    body.language .headercomp__lang {
      width: 100px; } }
  @media only screen and (max-width: 767px) {
    body.language .headercomp__lang {
      order: 2;
      height: 60px;
      width: 55px;
      border-radius: 0;
      border: none;
      border-left: 1px solid #d9e7ef;
      margin-right: 0;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: flex-end;
      justify-content: flex-end;
      -webkit-flex-direction: column;
      flex-direction: column;
      padding-bottom: 8px; } }
  @media only screen and (min-width: 768px) {
    body.language .headercomp__lang {
      padding-left: 14px; }
      body.language .headercomp__lang:before {
        background-image: url("../images/common/arw_blue_down.png");
        background-size: 8px 4px;
        background-repeat: no-repeat;
        content: "";
        position: absolute;
        right: 14px;
        top: 50%;
        transform: translateY(-37%);
        height: 4px;
        width: 8px;
        transition: transform 0.3s; } }
    @media only screen and (min-width: 768px) and (max-width: 767px) {
      body.language .headercomp__lang:before {
        background-size: 4px 6px;
        right: 15px;
        height: 6px;
        width: 4px; } }
  @media only screen and (min-width: 768px) {
    body.language .headercomp__lang.is-open:before {
      transform: translateY(-37%) rotateZ(-180deg); } }
  @media only screen and (min-width: 768px) {
    body.language .headercomp__lang--icon {
      display: none; } }
  @media only screen and (max-width: 767px) {
    body.language .headercomp__lang--icon {
      width: 25px;
      height: 25px;
      margin-bottom: 7px; } }
  body.language .headercomp__lang--label {
    font-family: "Montserrat", sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 600; }

@media only screen and (min-width: 768px) and (max-width: 980px) {
  body.language .headercomp__lang--label {
    font-size: 11px;
    font-size: 1.1rem; } }
    @media only screen and (max-width: 767px) {
      body.language .headercomp__lang--label {
        font-size: 10px;
        font-size: 1rem;
        letter-spacing: -0.05em; } }

body.language .headercomp__search {
  width: 50px;
  height: 40px;
  border: 1px solid #d9e7ef;
  border-radius: 5px;
  margin-right: 30px;
  overflow: hidden;
  display: -webkit-flex;
  display: flex; }

@media only screen and (min-width: 768px) and (max-width: 1080px) {
  body.language .headercomp__search {
    width: 30px; } }
  @media only screen and (max-width: 767px) {
    body.language .headercomp__search {
      order: 6;
      width: 100%;
      height: auto;
      padding: 20px 25px;
      margin-right: 0;
      background: #f4f8fa;
      border: none;
      border-radius: 0;
      display: -webkit-flex;
      display: flex; } }
  body.language .headercomp__search--input {
    width: 0;
    border: none;
    background: none;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 0 10px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px; }
    @media only screen and (min-width: 768px) {
      body.language .headercomp__search--input {
        display: none; } }
    @media only screen and (max-width: 767px) {
      body.language .headercomp__search--input {
        width: calc(100% - 70px);
        background: #fff;
        height: 30px;
        border: 1px solid #1c4e6a; } }
  body.language .headercomp__search--icon {
    border: none;
    padding: 0;
    margin: 0;
    background: url(../images/common/icon-search.svg) center/24px no-repeat;
    cursor: pointer; }
    @media only screen and (min-width: 768px) {
      body.language .headercomp__search--icon {
        width: 50px;
        height: 40px;
        -webkit-flex: 0 0 50px;
        flex: 0 0 50px; } }
  @media only screen and (min-width: 768px) and (max-width: 1080px) {
    body.language .headercomp__search--icon {
      background-size: 15px;
      background-position: 8px center;
      width: 30px; } }
    @media only screen and (max-width: 767px) {
      body.language .headercomp__search--icon {
        width: 70px;
        height: 30px;
        background-color: #1c4e6a;
        background-image: url(../images/common/icon-search-white.svg);
        background-size: 15px;
        border-top-right-radius: 5px;
        border-bottom-right-radius: 5px; } }

body.language .header .nav-toggle,
body.language .header-pier .nav-toggle {
  height: 60px;
  width: 60px;
  border: none;
  padding: 0;
  margin: 0;
  outline: none;
  background: #005ca1;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-flex-direction: column;
  flex-direction: column; }
  @media only screen and (min-width: 768px) {
    body.language .header .nav-toggle,
    body.language .header-pier .nav-toggle {
      display: none; } }
  @media only screen and (max-width: 767px) {
    body.language .header .nav-toggle,
    body.language .header-pier .nav-toggle {
      order: 3;
      padding-bottom: 8px; } }
  body.language .header .nav-toggle--label,
  body.language .header-pier .nav-toggle--label {
    font-family: "Montserrat", sans-serif;
    font-size: 10px;
    font-size: 1rem;
    font-weight: 600;
    color: #fff;
    text-align: center; }
  body.language .header .nav-toggle .burger-container,
  body.language .header-pier .nav-toggle .burger-container {
    width: 26px;
    height: 18px;
    display: block;
    position: relative;
    margin-bottom: 7px; }
    body.language .header .nav-toggle .burger-container span,
    body.language .header-pier .nav-toggle .burger-container span {
      width: 100%;
      height: 2px;
      left: 0;
      width: 100%;
      background: #ffffff;
      position: absolute;
      transition: top 0.3s 0.3s, bottom 0.3s 0.3s, opacity 0.3s, transform 0.3s; }
      body.language .header .nav-toggle .burger-container span:nth-child(1),
      body.language .header-pier .nav-toggle .burger-container span:nth-child(1) {
        top: 0; }
      body.language .header .nav-toggle .burger-container span:nth-child(2),
      body.language .header-pier .nav-toggle .burger-container span:nth-child(2) {
        top: 50%; }
      body.language .header .nav-toggle .burger-container span:nth-child(3),
      body.language .header-pier .nav-toggle .burger-container span:nth-child(3) {
        top: 100%; }
  body.language .header .nav-toggle.is-open .burger-container span,
  body.language .header-pier .nav-toggle.is-open .burger-container span {
    transition: top 0.3s, bottom 0.3s, opacity 0.3s, transform 0.3s 0.3s; }
    body.language .header .nav-toggle.is-open .burger-container span:nth-child(1),
    body.language .header-pier .nav-toggle.is-open .burger-container span:nth-child(1) {
      top: 50%;
      transform: rotateZ(30deg); }
    body.language .header .nav-toggle.is-open .burger-container span:nth-child(2),
    body.language .header-pier .nav-toggle.is-open .burger-container span:nth-child(2) {
      opacity: 0; }
    body.language .header .nav-toggle.is-open .burger-container span:nth-child(3),
    body.language .header-pier .nav-toggle.is-open .burger-container span:nth-child(3) {
      top: 50%;
      transform: rotateZ(-30deg); }

body.language .header.is-open .headercomp__txtsize {
  padding-top: 10px;
  display: -webkit-flex;
  display: flex;
  top: 477px;
  position: absolute;
  width: 100%;
  -webkit-justify-content: center;
  justify-content: center;
  background-color: #f4f8fa; }
  body.language .header.is-open .headercomp__txtsize button {
    background: #FFF; }
    body.language .header.is-open .headercomp__txtsize button.active {
      background: #d9e7ef; }

body.language .header.is-open .gnav {
  border-bottom: none; }

body.language .header.is-open .headercomp__txtsize {
  padding-top: 20px !important;
  padding-bottom: 310px;
  display: none; }

body.language .header.is-open .headercomp__txtsize button {
  border: 1px solid #f4f8fa; }

body.language .header.is-open .headercomp__txtsize--txt {
  padding-top: 7px; }

body.language .lang-options {
  position: absolute;
  display: none;
  left: -1px;
  width: calc(100% + 2px);
  top: calc(100% - 3px);
  border: 1px solid #d9e7ef;
  border-top: none;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  overflow: hidden;
  background: #fff;
  z-index: 200; }
  @media only screen and (max-width: 767px) {
    body.language .lang-options {
      border-top-left-radius: 0px;
      border-bottom-left-radius: 0px;
      position: fixed;
      right: 0;
      left: auto;
      width: 115px;
      top: 60px; } }
  body.language .lang-options--lang {
    border-bottom: 1px solid #d9e7ef; }
    body.language .lang-options--lang:first-child {
      border-top: 1px solid #d9e7ef; }
    body.language .lang-options--lang.f-montserrat {
      font-family: "Montserrat", sans-serif;
      font-weight: 600;
      font-size: 14px;
      font-size: 1.4rem; }
      @media only screen and (max-width: 767px) {
        body.language .lang-options--lang.f-montserrat {
          font-weight: 500; } }
    body.language .lang-options--lang a {
      color: #1c4e6a;
      height: 30px;
      text-align: center;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      cursor: pointer;
      transition: all 0.3s; }
    body.language .lang-options--lang:last-child {
      border-bottom: none; }
    body.language .lang-options--lang:hover {
      background-color: #d9e7ef; }

@media only screen and (max-width: 1200px) {
  /* IE11  */
  _:lang(x)::-ms-backdrop, .header {
    padding-top: 8px; } }

.header-pier {
  color: #383838;
  position: relative;
  z-index: 100; }
  @media only screen and (max-width: 767px) {
    .header-pier {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 102; } }
  .header-pier__top {
    display: -webkit-flex;
    display: flex;
    background: #fff; }
    .header-pier__top .header__logo {
      width: 190px; }
  .header-pier h1 {
    position: absolute;
    top: 80px;
    right: 6px;
    text-align: right;
    font-size: 10px;
    font-size: 1rem;
    letter-spacing: 0.05em;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    z-index: 1; }
  .header-pier .gnav {
    width: 230px;
    height: auto;
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    box-shadow: 10px 0 10px rgba(0, 0, 0, 0.03); }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column; } }
    @media only screen and (max-width: 767px) {
      .header-pier .gnav {
        width: 100%;
        height: calc(100vh - 60px);
        position: absolute;
        top: 60px;
        box-shadow: none;
        padding: 40px 25px;
        display: none;
        background: #f6f6f6; } }
    @media screen and (device-aspect-ratio: 40 / 71) {
      .header-pier .gnav {
        padding: 30px 25px; } }
    @media only screen and (min-device-width: 375px) and (max-device-width: 667px) {
      .header-pier .gnav {
        padding: 20px 25px; } }
    .header-pier .gnav .logo1 {
      height: 90px;
      padding: 10px 20px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      .header-pier .gnav .logo1 a {
        display: block; }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav {
        height: 100%;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column; } }
    .header-pier .gnav .pnav li.logo2 {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      height: 100px; }
      .header-pier .gnav .pnav li.logo2 a {
        width: 180px;
        height: 50px;
        padding: 12px 25px 12px 30px;
        border: 1px solid #e1e1e1;
        border-radius: 3px;
        transition: all 0.4s; }
        .header-pier .gnav .pnav li.logo2 a:hover {
          box-shadow: 0 0 15px rgba(204, 229, 239, 0.8);
          border-color: transparent; }
    @media only screen and (max-width: 767px) {
      .header-pier .gnav .pnav {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        width: 100%; } }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li {
        border-bottom: 1px solid #eaeaea; } }
  @media only screen and (min-width: 768px) and (min-device-width: 768px) and (max-device-width: 1024px) {
    .header-pier .gnav .pnav li {
      height: 12.5%; } }
    @media only screen and (max-width: 767px) {
      .header-pier .gnav .pnav li {
        background: #fff;
        border-radius: 3px;
        margin-bottom: 5px;
        width: calc(50% - 3px); } }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li.menu-item {
        -webkit-flex-grow: 1;
        flex-grow: 1; } }
    .header-pier .gnav .pnav a {
      width: 100%;
      height: 100%;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-flex-direction: column;
      flex-direction: column;
      transition: background-color 0.3s; }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav a {
          height: 125px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav a {
          height: 80px; } }
      @media only screen and (min-device-width: 375px) and (max-device-width: 667px) {
        .header-pier .gnav .pnav a {
          height: 100px; } }
    .header-pier .gnav .pnav--icon {
      display: block;
      margin-bottom: 12px; }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav--icon {
          margin-bottom: 7px; } }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav--icon {
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center; } }
      .header-pier .gnav .pnav--icon img {
        display: block;
        width: 100%; }
    .header-pier .gnav .pnav--label {
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.428571429;
      text-transform: uppercase; }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav--label {
          font-size: 13px;
          font-size: 1.3rem; } }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li:nth-child(2) a:hover {
        background-color: #fdf6f3; } }
    .header-pier .gnav .pnav li:nth-child(2) .pnav--icon {
      width: 40px;
      height: 43px; }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav li:nth-child(2) .pnav--icon {
          width: 46px;
          height: 50px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav li:nth-child(2) .pnav--icon {
          transform: scale(0.8); } }
    .header-pier .gnav .pnav li:nth-child(2) .pnav--label {
      color: #da5019; }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li:nth-child(3) a:hover {
        background-color: #f2f8fb; } }
    .header-pier .gnav .pnav li:nth-child(3) .pnav--icon {
      width: 47px;
      height: 32px; }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav li:nth-child(3) .pnav--icon {
          width: 59px;
          height: 50px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav li:nth-child(3) .pnav--icon {
          transform: scale(0.8); } }
      @media only screen and (min-device-width: 375px) and (max-device-width: 667px) {
        .header-pier .gnav .pnav li:nth-child(3) .pnav--icon {
          transform: scale(0.9); } }
    .header-pier .gnav .pnav li:nth-child(3) .pnav--label {
      color: #007fb1; }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li:nth-child(4) a:hover {
        background-color: #fefbf2; } }
    .header-pier .gnav .pnav li:nth-child(4) .pnav--icon {
      width: 40px;
      height: 39px; }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav li:nth-child(4) .pnav--icon {
          width: 51px;
          height: 50px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav li:nth-child(4) .pnav--icon {
          transform: scale(0.8); } }
    .header-pier .gnav .pnav li:nth-child(4) .pnav--label {
      color: #e7a800; }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li:nth-child(5) a:hover {
        background-color: #f5fbf4; } }
    .header-pier .gnav .pnav li:nth-child(5) .pnav--icon {
      width: 66px;
      height: 23px; }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav li:nth-child(5) .pnav--icon {
          width: 93px;
          height: 50px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav li:nth-child(5) .pnav--icon {
          transform: scale(0.8); } }
    .header-pier .gnav .pnav li:nth-child(5) .pnav--label {
      color: #41ab28; }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li:nth-child(6) a:hover {
        background-color: #f4fbfc; } }
    .header-pier .gnav .pnav li:nth-child(6) .pnav--icon {
      width: 81px;
      height: 27px; }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav li:nth-child(6) .pnav--icon {
          width: 97px;
          height: 50px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav li:nth-child(6) .pnav--icon {
          transform: scale(0.8); } }
    .header-pier .gnav .pnav li:nth-child(6) .pnav--label {
      color: #2fb2c2; }
    @media only screen and (min-width: 768px) {
      .header-pier .gnav .pnav li:nth-child(7) a:hover {
        background-color: #fdf6f9; } }
    .header-pier .gnav .pnav li:nth-child(7) .pnav--icon {
      width: 50px;
      height: 36px; }
      @media only screen and (max-width: 767px) {
        .header-pier .gnav .pnav li:nth-child(7) .pnav--icon {
          width: 63px;
          height: 50px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        .header-pier .gnav .pnav li:nth-child(7) .pnav--icon {
          transform: scale(0.8); } }
    .header-pier .gnav .pnav li:nth-child(7) .pnav--label {
      color: #d04d82; }
  .header-pier .corner-nav {
    position: fixed;
    top: 0;
    right: 0;
    width: auto;
    height: 70px;
    background: #fff;
    border-bottom-left-radius: 5px;
    display: -webkit-flex;
    display: flex;
    padding: 15px 20px;
    z-index: 2;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.08); }
    .header-pier .corner-nav .link {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      border: 1px solid #e1e1e1;
      border-radius: 3px;
      width: 50px;
      margin-right: 5px; }
      .header-pier .corner-nav .link .icon {
        margin-right: 0; }
        .header-pier .corner-nav .link .icon img {
          display: block; }
      .header-pier .corner-nav .link .label {
        font-family: "Montserrat", sans-serif;
        font-size: 14px;
        font-size: 1.4rem; }
      .header-pier .corner-nav .link-fb .icon {
        width: 11px;
        height: 21px; }
      .header-pier .corner-nav .link-ig {
        margin-right: 15px; }
        .header-pier .corner-nav .link-ig .icon {
          width: 21px;
          height: 21px; }
  .header-pier .headercomp__txtsize {
    -webkit-align-items: center;
    align-items: center;
    margin-right: 15px; }
    .header-pier .headercomp__txtsize--txt {
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 700;
      color: #383838; }
    .header-pier .headercomp__txtsize--btn {
      font-size: 14px;
      font-size: 1.4rem;
      border-color: #e1e1e1;
      color: #383838;
      font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
      font-weight: 500; }
      .header-pier .headercomp__txtsize--btn.active, .header-pier .headercomp__txtsize--btn:hover {
        background-color: #e1e1e1; }
  .header-pier .headercomp__lang {
    border-color: #e1e1e1;
    margin-right: 10px; }
    @media only screen and (max-width: 767px) {
      .header-pier .headercomp__lang {
        margin-right: 0; } }
    @media only screen and (min-width: 768px) {
      .header-pier .headercomp__lang:before {
        background-image: url(../images/common/arw_grey_down.svg); } }
    .header-pier .headercomp__lang .lang-options {
      background: #fff; }
      .header-pier .headercomp__lang .lang-options--lang {
        border-color: #e1e1e1; }
        .header-pier .headercomp__lang .lang-options--lang a {
          color: #383838; }
        @media only screen and (min-width: 768px) {
          .header-pier .headercomp__lang .lang-options--lang:hover {
            background-color: #e1e1e1; } }
    .header-pier .headercomp__lang.is-open .lang-options {
      display: block; }
  .header-pier .headercomp__search {
    border-color: #e1e1e1;
    transition: all 0.3s;
    margin-right: 0; }
    .header-pier .headercomp__search:hover {
      background-color: #e1e1e1; }
    @media only screen and (min-width: 768px) {
      .header-pier .headercomp__search--icon {
        background-image: url(../images/common/icon-search-grey.svg); } }
  .header-pier .banners {
    width: 100%;
    display: -webkit-flex;
    display: flex;
    margin-top: 14px; }
    @media screen and (device-aspect-ratio: 40 / 71) {
      .header-pier .banners {
        margin-top: 5px; } }
    .header-pier .banners a {
      border-radius: 3px;
      background: #fff;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      .header-pier .banners a img {
        display: block;
        width: 100%;
        max-width: 130px; }
    .header-pier .banners--aquarium {
      width: calc(50% - 3px);
      margin-right: 6px;
      padding: 20px 15px; }
    .header-pier .banners--sns {
      width: calc((100% - 18px) / 4);
      margin-right: 6px; }
      .header-pier .banners--sns:last-child {
        margin-right: 0; }
    .header-pier .banners--facebook img {
      width: 13px !important;
      height: 25px !important; }
    .header-pier .banners--instagram img {
      width: 25px !important;
      height: 25px !important; }
  @media only screen and (max-width: 767px) {
    .header-pier .headercomp__search {
      padding: 0;
      margin-top: 20px;
      background: none; } }
  @media screen and (device-aspect-ratio: 40 / 71) {
    .header-pier .headercomp__search {
      margin-top: 10px; } }
  .header-pier.is-open .gnav {
    display: block;
    overflow-y: scroll; }
  @media only screen and (max-width: 767px) {
    .header-pier .search-box .gsc-input-box {
      border-color: #383838; }
    .header-pier .search-box button {
      background-color: #383838;
      border-color: #383838; } }

.header-tw .gnav__item.logo .gnav__item--icon {
  margin-bottom: 3px;
  width: 30px; }

@media only screen and (max-width: 767px) {
  .header-tw .gnav li:nth-child(1) {
    text-align: center; }
    .header-tw .gnav li:nth-child(1) .gnav__item--icon {
      margin-bottom: 12px;
      width: 25px; }
  .header-tw .gnav li:nth-child(5) .gnav__item--icon {
    margin-bottom: 9px; }
  .header-tw .gnav li:nth-child(6) .gnav__item--icon {
    margin-bottom: 12px; } }

.header-zh .gnav__item.logo .gnav__item--icon {
  margin-bottom: 3px;
  width: 30px; }

@media only screen and (max-width: 767px) {
  .header-zh .gnav li:nth-child(1) {
    text-align: center; }
    .header-zh .gnav li:nth-child(1) .gnav__item--icon {
      margin-bottom: 12px;
      width: 25px; }
  .header-zh .gnav li:nth-child(5) .gnav__item--icon {
    margin-bottom: 9px; }
  .header-zh .gnav li:nth-child(6) .gnav__item--icon {
    margin-bottom: 12px; } }

h1.text-h1 {
  height: 35px;
  background: #d9e7ef;
  font-weight: 500;
  font-size: 10px;
  letter-spacing: 0.05em;
  line-height: 20px;
  text-align: left;
  color: #1c4e6a;
  display: flex;
  align-items: center;
  padding: 0 20px; }
  @media only screen and (max-width: 767px) {
    h1.text-h1 {
      display: none; } }

@media only screen and (min-width: 768px) {
  .header-outer {
    height: 180px; } }

@media only screen and (min-width: 768px) and (max-width: 1180px) {
  .header-outer {
    height: 174px; } }

@media only screen and (min-width: 768px) and (max-width: 980px) {
  .header-outer {
    height: 170px; } }

.header {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  background: #fff;
  z-index: 102; }
  @media only screen and (min-width: 768px) {
    .header {
      padding-top: 18px;
      -webkit-align-items: center;
      align-items: center; } }
  @media only screen and (max-width: 767px) {
    .header {
      border-bottom: solid 1px #D9E7EF;
      position: fixed;
      top: 0;
      left: 0;
      height: 60px;
      overflow: hidden;
      transition: height 0.3s;
      -webkit-align-content: flex-start;
      align-content: flex-start; }
      .header.is-open {
        height: 100%;
        overflow-y: scroll;
        border-bottom: none !important;
        bottom: 0;
        background: #f4f8fa; }
        .header.is-open:before {
          content: '';
          position: absolute;
          background-color: #fff;
          top: 0;
          left: 0;
          width: 100%;
          height: 60px;
          z-index: -1; } }
  @media only screen and (min-width: 768px) {
    .header.fixed {
      position: fixed;
      left: 0;
      top: 0; } }
  .header__logo {
    margin: 0 20px 0 30px;
    width: 206px; }

@media only screen and (min-width: 768px) and (max-width: 1180px) {
  .header__logo {
    width: 150px; } }

@media only screen and (min-width: 768px) and (max-width: 980px) {
  .header__logo {
    margin: 0 10px 0 10px;
    width: 120px; } }

@media only screen and (min-width: 768px) and (max-width: 810px) {
  .header__logo {
    margin: 0 8px 0 8px;
    width: 100px; } }
    @media only screen and (max-width: 767px) {
      .header__logo {
        width: 176px;
        height: auto;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        order: 1;
        margin: 0 auto 0 15px; } }
  .header__sns {
    display: -webkit-flex;
    display: flex;
    margin-right: auto; }
    @media only screen and (max-width: 767px) {
      .header__sns {
        width: 100%;
        order: 4;
        padding: 40px 25px 0;
        background: #f4f8fa;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin-right: 0; } }
    .header__sns--item {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      width: 50px;
      height: 50px;
      border: 1px solid #d9e7ef;
      border-radius: 50%;
      margin-right: 8px;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }

@media only screen and (min-width: 768px) and (max-width: 1180px) {
  .header__sns--item {
    width: 44px;
    height: 44px; } }

@media only screen and (min-width: 768px) and (max-width: 980px) {
  .header__sns--item {
    width: 40px;
    height: 40px;
    margin-right: 4px; } }
      @media only screen and (min-width: 768px) {
        .header__sns--item:hover {
          box-shadow: 0 0 15px #cce5ef; } }
      @media only screen and (max-width: 767px) {
        .header__sns--item {
          width: calc((100% - 5px) / 4);
          height: 70px;
          border: none;
          background: #ffffff;
          padding: 15px 5px;
          border-radius: 5px;
          background: #fff;
          box-shadow: 10px 10px 40px rgba(0, 149, 161, 0.1); } }
      .header__sns--item:last-child {
        margin-right: 0; }
    @media only screen and (max-width: 980px) {
      .header__sns .icon-facebook img {
        width: 22px; }
      .header__sns .icon-instagram img {
        width: 20px; }
      .header__sns .icon-youtube img {
        width: 22px; }
      .header__sns .icon-x img {
        width: 15px; } }
    @media only screen and (max-width: 767px) {
      .header__sns .icon-facebook img {
        width: 29px; }
      .header__sns .icon-instagram img {
        width: 27px; }
      .header__sns .icon-youtube img {
        width: 31px; }
      .header__sns .icon-x img {
        width: 22px; } }
  .header .gnav {
    width: 100%;
    border-bottom: 1px solid #d9e7ef; }
    @media only screen and (max-width: 767px) {
      .header .gnav {
        border-bottom: none; } }
    .header .gnav ul {
      width: 100%; }
      @media only screen and (min-width: 768px) {
        .header .gnav ul {
          display: -webkit-flex;
          display: flex; } }
      @media only screen and (max-width: 767px) {
        .header .gnav ul {
          margin-bottom: 33px; } }
    .header .gnav__ttl {
      padding-bottom: 6px;
      margin-bottom: 25px;
      border-bottom: solid 1px #d9e7ef;
      font-weight: normal;
      text-align: left;
      color: #1c4e6a;
      font-weight: 700;
      line-height: 32px;
      font-size: 15px;
      font-size: 1.5rem; }
    @media only screen and (min-width: 768px) {
      .header .gnav__item {
        width: calc(100% / 8);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .header .gnav__item:not(:last-child) {
          border-right: 1px solid #d9e7ef; } }
    @media only screen and (max-width: 767px) {
      .header .gnav__item {
        width: 100%;
        margin-bottom: 10px; } }
    @media only screen and (max-width: 767px) {
      .header .gnav__item a {
        position: relative;
        display: inline-block;
        padding-left: 13px; }
        .header .gnav__item a:before {
          content: '';
          position: absolute;
          width: 5px;
          height: 12px;
          margin-top: 1px;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.414' height='18.828' viewBox='0 0 10.414 18.828'%3E%3Cpath id='arw' d='M427.5,9852.516l8,8-8,8' transform='translate(-426.086 -9851.102)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
          background-size: 5px auto;
          background-repeat: no-repeat;
          background-position: center; } }
    @media only screen and (min-width: 768px) {
      .header .gnav__item a {
        text-align: center;
        background-color: #FFF;
        -webkit-transition: background-color 0.3s;
        -moz-transition: background-color 0.3s;
        -o-transition: background-color 0.3s;
        transition: background-color 0.3s;
        width: 100%;
        height: 92px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-flex-direction: column;
        flex-direction: column; } }
    .header .gnav__item .txt {
      line-height: 18px;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 700;
      -webkit-transition: color 0.3s;
      -moz-transition: color 0.3s;
      -o-transition: color 0.3s;
      transition: color 0.3s; }
      @media only screen and (min-width: 768px) and (max-width: 920px) {
        .header .gnav__item .txt {
          line-height: 16px;
          font-size: 12px;
          font-size: 1.2rem; } }
      @media only screen and (max-width: 767px) {
        .header .gnav__item .txt {
          font-weight: 500; } }
    .header .gnav__item.is-active a, .header .gnav__item:hover a {
      background: #e5f7f7; }
    .header .gnav__item.is-active a {
      pointer-events: none; }
    .header .gnav__calendar .txt {
      margin-top: 6px;
      margin-bottom: -4px; }
    .header .gnav__fee .txt {
      margin-top: 10px;
      margin-bottom: 0px; }
    .header .gnav__floormap .txt {
      margin-top: 6px;
      margin-bottom: -1px; }
    .header .gnav__access .txt {
      margin-top: 10px;
      margin-bottom: 1px; }
    .header .gnav__event .txt {
      margin-top: 6px;
      margin-bottom: 4px; }
    .header .gnav__shop .txt {
      margin-top: 5px;
      margin-bottom: -6px; }
    .header .gnav__faq .txt {
      margin-top: 6px;
      margin-bottom: 0px; }
    .header .gnav__research .txt {
      margin-top: 6px;
      margin-bottom: 1px; }
  .header__banner.pt-20 {
    padding-top: 20px; }
  @media only screen and (max-width: 1200px) {
    .header {
      /* IE11  */ }
      .header _:lang(x)::-ms-backdrop, .header .gnav {
        margin-top: 8px; } }
  @media only screen and (min-width: 768px) {
    .header__banner {
      display: none; } }
  @media only screen and (max-width: 767px) {
    .header__banner {
      width: 100%;
      order: 7;
      padding: 0 12px 34px;
      position: relative;
      margin-bottom: auto;
      background: #f4f8fa; }
      .header__banner .banner-mobile__top--icon {
        margin: 0 auto;
        position: absolute;
        left: 30px;
        top: 9px;
        width: 15px; } }

.headercomp__txtsize {
  color: #1c4e6a;
  margin-right: 20px;
  display: -webkit-flex;
  display: flex; }
  @media only screen and (max-width: 980px) {
    .headercomp__txtsize {
      margin-right: 10px; } }
  @media only screen and (max-width: 767px) {
    .headercomp__txtsize {
      display: none; } }
  .headercomp__txtsize--txt {
    display: block;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.285714286;
    margin-right: 10px;
    text-align: center; }
  .headercomp__txtsize--btn {
    background-color: white;
    color: #1c4e6a;
    width: 50px;
    height: 40px;
    border: 1px solid #d9e7ef;
    border-radius: 5px;
    margin-right: 5px;
    padding-top: 2px;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
    cursor: pointer;
    white-space: nowrap;
    text-align: center; }
    @media only screen and (max-width: 1024px) {
      .headercomp__txtsize--btn {
        padding-left: 11px; } }
    @media only screen and (max-width: 920px) {
      .headercomp__txtsize--btn {
        font-size: 12px;
        font-size: 1.2rem;
        width: 50px !important; } }
    .headercomp__txtsize--btn:last-child {
      margin-right: 0; }
    .headercomp__txtsize--btn.active {
      background-color: #d9e7ef; }
    .headercomp__txtsize--btn:hover {
      background-color: #e5f7f7; }

.headercomp__lang {
  width: auto;
  height: 40px;
  border: 1px solid #d9e7ef;
  border-radius: 5px;
  margin-right: 10px;
  cursor: pointer;
  position: relative;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .headercomp__lang {
      order: 2;
      height: 60px;
      width: 55px;
      border-radius: 0;
      border: none;
      border-left: 1px solid #d9e7ef;
      margin-right: 0;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: flex-end;
      justify-content: flex-end;
      -webkit-flex-direction: column;
      flex-direction: column;
      padding-bottom: 8px; } }
  @media only screen and (min-width: 768px) {
    .headercomp__lang {
      padding-left: 14px;
      padding-right: 29px; } }
  @media only screen and (min-width: 768px) and (max-width: 1080px) {
    .headercomp__lang {
      margin-right: 5px; } }
  @media only screen and (min-width: 768px) and (max-width: 980px) {
    .headercomp__lang {
      width: 100px; } }
  @media only screen and (min-width: 768px) {
      .headercomp__lang:before {
        background-image: url("../images/common/arw_blue_down.png");
        background-size: 8px 4px;
        background-repeat: no-repeat;
        content: "";
        position: absolute;
        right: 14px;
        top: 50%;
        transform: translateY(-37%);
        height: 4px;
        width: 8px;
        transition: transform 0.3s; } }
    @media only screen and (min-width: 768px) and (max-width: 767px) {
      .headercomp__lang:before {
        background-size: 4px 6px;
        right: 15px;
        height: 6px;
        width: 4px; } }
  @media only screen and (min-width: 768px) {
    .headercomp__lang.is-open:before {
      transform: translateY(-37%) rotateZ(-180deg); } }
  @media only screen and (min-width: 768px) {
    .headercomp__lang--icon {
      display: none; } }
  @media only screen and (max-width: 767px) {
    .headercomp__lang--icon {
      width: 25px;
      height: 25px;
      margin-bottom: 7px; } }
  .headercomp__lang--label {
    font-family: "Montserrat", sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 500; }

@media only screen and (min-width: 768px) and (max-width: 980px) {
  .headercomp__lang--label {
    font-size: 11px;
    font-size: 1.1rem; } }
    @media only screen and (max-width: 767px) {
      .headercomp__lang--label {
        font-size: 10px;
        font-size: 1rem;
        letter-spacing: -0.05em; } }

.headercomp__search {
  width: 50px;
  height: 40px;
  border: 1px solid #d9e7ef;
  border-radius: 5px;
  margin-right: 10px;
  overflow: hidden;
  display: -webkit-flex;
  display: flex; }

@media only screen and (min-width: 768px) and (max-width: 1080px) {
  .headercomp__search {
    width: 30px; } }
  @media only screen and (max-width: 767px) {
    .headercomp__search {
      order: 7;
      width: 100%;
      height: auto;
      padding: 26px 25px;
      margin-right: 0;
      background: #f4f8fa;
      border: none;
      border-radius: 0;
      display: -webkit-flex;
      display: flex; } }
  .headercomp__search--input {
    width: 0;
    border: none;
    background: none;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 0 10px;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px; }
    @media only screen and (min-width: 768px) {
      .headercomp__search--input {
        display: none; } }
    @media only screen and (max-width: 767px) {
      .headercomp__search--input {
        width: calc(100% - 70px);
        background: #fff;
        height: 30px;
        border: 1px solid #1c4e6a; } }
  .headercomp__search--icon {
    border: none;
    padding: 0;
    margin: 0;
    background: url(../images/common/icon-search.svg) center/24px no-repeat;
    cursor: pointer; }
    @media only screen and (min-width: 768px) {
      .headercomp__search--icon {
        width: 50px;
        height: 40px;
        -webkit-flex: 0 0 50px;
        flex: 0 0 50px; } }
  @media only screen and (min-width: 768px) and (max-width: 1080px) {
    .headercomp__search--icon {
      background-size: 15px;
      background-position: 8px center;
      width: 30px; } }
    @media only screen and (max-width: 767px) {
      .headercomp__search--icon {
        width: 70px;
        height: 30px;
        background-color: #1c4e6a;
        background-image: url(../images/common/icon-search-white.svg);
        background-size: 15px;
        border-top-right-radius: 5px;
        border-bottom-right-radius: 5px; } }

.headercomp__garden {
  margin-right: 30px; }
  @media only screen and (max-width: 980px) {
    .headercomp__garden {
      margin-right: 10px; } }
  @media only screen and (max-width: 767px) {
    .headercomp__garden {
      order: 6;
      width: 100%;
      height: auto;
      padding: 4px 25px;
      margin-right: 0;
      background: #f4f8fa;
      border: none;
      border-radius: 0;
      display: -webkit-flex;
      display: flex; } }
  .headercomp__garden a {
    border-radius: 5px;
    width: 165px;
    height: 40px;
    display: flex;
    align-items: center;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 20px;
    text-align: left;
    color: #fff;
    text-shadow: 0px 0px 20px rgba(28, 78, 106, 0.1);
    background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-size: 200% auto;
    transition: 0.5s;
    font-size: 14px;
    font-size: 1.4rem; }
    .headercomp__garden aa:hover {
      background-position: right center; }
    @media only screen and (min-width: 768px) {
      .headercomp__garden a {
        justify-content: center; } }
    @media only screen and (max-width: 980px) {
      .headercomp__garden a {
        width: 145px;
        font-size: 13px;
        font-size: 1.3rem; } }
    @media only screen and (max-width: 767px) {
      .headercomp__garden a {
        width: 100%;
        height: 50px;
        font-size: 13px;
        font-size: 1.3rem; } }
    .headercomp__garden a span {
      display: inline-block;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cg transform='translate(-371.035 -348.905)'%3E%3Cpath d='M375.535,350.905v-1h-4.5v9h9v-4.5h-1v3.5h-7v-7Z' fill='%23fff'/%3E%3Cpath d='M381.035,352.369v-3.463h-3.5v1h1.793l-3.646,3.646.707.707,3.646-3.646v1.756Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
      background-position: right center;
      background-repeat: no-repeat;
      background-size: auto;
      padding-right: 18px; }
      @media only screen and (max-width: 767px) {
        .headercomp__garden a span {
          padding-left: 25px;
          width: 100%;
          background-position: right 25px center; } }

.headercomp__navi {
  position: relative;
  width: 100%; }
  @media only screen and (min-width: 768px) {
    .headercomp__navi {
      height: 94px;
      margin-top: 18px;
      border-top: 1px solid #d9e7ef; } }
  @media only screen and (max-width: 767px) {
    .headercomp__navi {
      order: 5;
      margin: 31px 25px 0; } }

.header .nav-toggle,
.header-pier .nav-toggle {
  order: 3;
  height: 60px;
  width: 55px;
  border: none;
  padding: 0 0 6px;
  margin: 0;
  outline: none;
  background: #005ca1;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: flex-end;
  justify-content: flex-end;
  -webkit-flex-direction: column;
  flex-direction: column; }
  @media only screen and (min-width: 768px) {
    .header .nav-toggle,
    .header-pier .nav-toggle {
      display: none; } }
  .header .nav-toggle--label,
  .header-pier .nav-toggle--label {
    font-family: "Montserrat", sans-serif;
    font-size: 10px;
    font-size: 1rem;
    font-weight: 600;
    color: #fff;
    text-align: center; }
  .header .nav-toggle .burger-container,
  .header-pier .nav-toggle .burger-container {
    width: 26px;
    height: 19px;
    display: block;
    position: relative;
    margin-bottom: 10px; }
    .header .nav-toggle .burger-container span,
    .header-pier .nav-toggle .burger-container span {
      width: 100%;
      height: 2px;
      left: 0;
      width: 100%;
      background: #ffffff;
      position: absolute;
      transition: top 0.3s 0.3s, bottom 0.3s 0.3s, opacity 0.3s, transform 0.3s; }
      .header .nav-toggle .burger-container span:nth-child(1),
      .header-pier .nav-toggle .burger-container span:nth-child(1) {
        top: 0; }
      .header .nav-toggle .burger-container span:nth-child(2),
      .header-pier .nav-toggle .burger-container span:nth-child(2) {
        top: 50%; }
      .header .nav-toggle .burger-container span:nth-child(3),
      .header-pier .nav-toggle .burger-container span:nth-child(3) {
        top: 100%; }
  .header .nav-toggle.is-open .burger-container span,
  .header-pier .nav-toggle.is-open .burger-container span {
    transition: top 0.3s, bottom 0.3s, opacity 0.3s, transform 0.3s 0.3s; }
    .header .nav-toggle.is-open .burger-container span:nth-child(1),
    .header-pier .nav-toggle.is-open .burger-container span:nth-child(1) {
      top: 50%;
      transform: rotateZ(30deg); }
    .header .nav-toggle.is-open .burger-container span:nth-child(2),
    .header-pier .nav-toggle.is-open .burger-container span:nth-child(2) {
      opacity: 0; }
    .header .nav-toggle.is-open .burger-container span:nth-child(3),
    .header-pier .nav-toggle.is-open .burger-container span:nth-child(3) {
      top: 50%;
      transform: rotateZ(-30deg); }

.lang-options {
  position: absolute;
  display: none;
  left: -1px;
  width: calc(100% + 2px);
  top: calc(100% - 3px);
  border: 1px solid #d9e7ef;
  border-top: none;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  overflow: hidden;
  background: #fff;
  z-index: 200; }
  @media only screen and (max-width: 767px) {
    .lang-options {
      border-top-left-radius: 0px;
      border-bottom-left-radius: 0px;
      position: fixed;
      right: 0;
      left: auto;
      width: 115px;
      top: 60px; } }
  .lang-options--lang {
    border-bottom: 1px solid #d9e7ef; }
    .lang-options--lang:first-child {
      border-top: 1px solid #d9e7ef; }
    .lang-options--lang.f-montserrat {
      font-family: "Montserrat", sans-serif;
      font-weight: 600;
      font-size: 14px;
      font-size: 1.4rem; }
      @media only screen and (max-width: 767px) {
        .lang-options--lang.f-montserrat {
          font-weight: 500; } }
    .lang-options--lang a {
      color: #1c4e6a;
      height: 30px;
      text-align: center;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      cursor: pointer;
      transition: all 0.3s; }
    .lang-options--lang:last-child {
      border-bottom: none; }
    .lang-options--lang:hover {
      background-color: #d9e7ef; }

@media only screen and (max-width: 1200px) {
  /* IE11  */
  _:lang(x)::-ms-backdrop, .header {
    padding-top: 8px; } }

body.subpage-pier {
  color: #383838;
  padding-left: 230px; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier {
      padding-left: 0;
      padding-top: 60px; } }
  body.subpage-pier .nav-toggle {
    background: #2593a5; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier .headercomp__search--icon {
      background-color: #383838; } }
  body.subpage-pier .headercomp__search--input {
    border-color: #383838; }
  body.subpage-pier .inner {
    max-width: 820px;
    padding: 0 25px; }
  body.subpage-pier .breadcrumb {
    padding: 12px 0; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier .breadcrumb {
        padding: 7px 0; }
        body.subpage-pier .breadcrumb span a {
          font-size: 11px;
          font-size: 1.1rem; } }
  body.subpage-pier .mv {
    position: relative; }
    body.subpage-pier .mv__img {
      height: 450px;
      width: 100%;
      background-repeat: no-repeat;
      background-position: right center;
      background-size: cover; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier .mv__img {
          height: 225px; } }
    body.subpage-pier .mv__title {
      position: relative; }
      body.subpage-pier .mv__title--icon {
        width: 140px;
        height: 140px;
        border-radius: 50%;
        position: absolute;
        background: #fff;
        top: 0;
        left: 50%;
        transform: translate(-50%, -50px);
        z-index: 0;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: flex-start;
        align-items: flex-start;
        -webkit-justify-content: center;
        justify-content: center;
        padding-top: 30px; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier .mv__title--icon {
            top: 5px;
            width: 90px;
            height: 90px; } }
      body.subpage-pier .mv__title--txt {
        font-size: 32px;
        font-size: 3.2rem;
        letter-spacing: 0.15em;
        font-weight: 500;
        height: 130px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        position: relative;
        z-index: 1; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier .mv__title--txt {
            font-size: 20px;
            font-size: 2rem;
            height: 82px; } }
  body.subpage-pier .feature h4 {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    margin-bottom: 30px;
    line-height: 1.666666667; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier .feature h4 {
        font-size: 17px;
        font-size: 1.7rem;
        text-align: center;
        width: 100%;
        margin-bottom: 30px; } }
    body.subpage-pier .feature h4 em {
      font-weight: 700; }
  body.subpage-pier .feature .img-container {
    margin-top: 40px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier .feature .img-container {
        margin-top: 15px;
        margin-bottom: 25px; } }
  body.subpage-pier .sec-heading {
    font-size: 26px;
    font-size: 2.6rem;
    letter-spacing: 0.05em;
    font-weight: 700;
    text-align: center;
    margin-bottom: 70px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier .sec-heading {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 40px; } }
    body.subpage-pier .sec-heading:before, body.subpage-pier .sec-heading:after {
      content: '';
      display: inline-block;
      width: 22px;
      height: 4px;
      background-size: cover;
      background-position: center;
      background-repeat: no-repeat; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier .sec-heading:before, body.subpage-pier .sec-heading:after {
          width: 19px;
          height: 3px; } }
    body.subpage-pier .sec-heading:before {
      margin-right: 20px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier .sec-heading:before {
          margin-right: 10px; } }
    body.subpage-pier .sec-heading:after {
      margin-left: 20px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier .sec-heading:after {
          margin-left: 10px; } }
  body.subpage-pier .info-title {
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.1em;
    font-weight: 500;
    padding-bottom: 15px;
    border-bottom-width: 1px;
    border-bottom-style: dashed;
    margin-bottom: 40px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier .info-title {
        font-size: 17px;
        font-size: 1.7rem;
        margin-bottom: 30px;
        padding-bottom: 7px;
        line-height: 1.41;
        border-bottom-style: dotted; } }
  body.subpage-pier section.info2 {
    padding-top: 84px; }
  body.subpage-pier section.front {
    background-image: url(../images/garden-pier/common/front-bg-pattern.png);
    background-position: top left;
    background-size: 32px;
    background-repeat: repeat;
    padding: 125px 20px 120px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section.front {
        padding: 70px 0 60px; } }
    body.subpage-pier section.front .inner {
      max-width: 820px; }
    body.subpage-pier section.front .wrapper {
      background: url(../images/garden-pier/common/grid-bg.png) top left/32px repeat;
      border-radius: 5px;
      padding: 90px 55px 50px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.front .wrapper {
          background: url(../images/garden-pier/common/grid-bg.png) top left/19px repeat;
          padding: 60px 25px 35px;
          text-align: center; } }
      body.subpage-pier section.front .wrapper .decoration {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        position: absolute;
        top: 20px;
        left: 55px;
        right: 55px; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.front .wrapper .decoration {
            left: 15px;
            right: 15px;
            top: 15px; } }
        body.subpage-pier section.front .wrapper .decoration li {
          width: 20px;
          height: 20px;
          border-radius: 50%;
          background: #FFF;
          position: relative;
          overflow: hidden; }
          @media only screen and (max-width: 767px) {
            body.subpage-pier section.front .wrapper .decoration li {
              width: 15px;
              height: 15px; } }
          body.subpage-pier section.front .wrapper .decoration li:after {
            content: '';
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            position: absolute; }
      body.subpage-pier section.front .wrapper h3 {
        font-size: 26px;
        font-size: 2.6rem;
        letter-spacing: 0.05em;
        text-align: center;
        margin-bottom: 50px;
        line-height: 1.333333333;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.front .wrapper h3 {
            display: inline-block;
            font-size: 18px;
            font-size: 1.8rem;
            margin-bottom: 25px;
            padding: 0 30px;
            position: relative; } }
        body.subpage-pier section.front .wrapper h3:before, body.subpage-pier section.front .wrapper h3:after {
          content: '';
          display: inline-block;
          width: 17px;
          height: 17px;
          background-size: cover;
          background-position: center;
          background-repeat: no-repeat; }
          @media only screen and (max-width: 767px) {
            body.subpage-pier section.front .wrapper h3:before, body.subpage-pier section.front .wrapper h3:after {
              width: 14px;
              height: 14px;
              position: absolute;
              bottom: 3px; } }
        body.subpage-pier section.front .wrapper h3:before {
          margin-right: 20px; }
          @media only screen and (max-width: 767px) {
            body.subpage-pier section.front .wrapper h3:before {
              left: 0; } }
        body.subpage-pier section.front .wrapper h3:after {
          margin-left: 20px; }
          @media only screen and (max-width: 767px) {
            body.subpage-pier section.front .wrapper h3:after {
              right: 0; } }
      body.subpage-pier section.front .wrapper .img {
        background: #FFF;
        border-radius: 1px;
        margin-bottom: 40px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.front .wrapper .img {
            margin-bottom: 22px; } }
        body.subpage-pier section.front .wrapper .img:before, body.subpage-pier section.front .wrapper .img:after {
          content: '';
          display: block;
          position: absolute; }
      body.subpage-pier section.front .wrapper p {
        text-align: center;
        font-size: 15px;
        font-size: 1.5rem;
        letter-spacing: 0.05em;
        line-height: 2.133333333;
        font-weight: 400;
        color: #383838; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.front .wrapper p {
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.714285714;
            text-align: justify; } }
  body.subpage-pier section.intro {
    padding-top: 120px;
    padding-bottom: 120px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section.intro {
        padding: 70px 0 85px; } }
    body.subpage-pier section.intro .point {
      width: 580px;
      border-radius: 10px;
      overflow: hidden;
      background: url(../images/garden-pier/common/grid-bg.png) top left/32px repeat;
      border-width: 2px;
      border-style: solid;
      margin-top: 32px;
      position: relative;
      z-index: 6;
      font-size: 15px;
      font-size: 1.5rem;
      letter-spacing: 0.05em;
      font-weight: 500; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.intro .point {
          order: 3;
          margin-top: 30px;
          width: 100%; } }
      body.subpage-pier section.intro .point p {
        background-size: 32px;
        display: block;
        font-family: "Montserrat", sans-serif;
        text-transform: uppercase;
        text-align: center;
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: 0.05em;
        line-height: 1.6;
        color: #fff;
        font-weight: 600;
        height: 29px; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.intro .point p {
            font-size: 14px;
            font-size: 1.4rem;
            height: 25px; } }
      body.subpage-pier section.intro .point ul {
        padding: 25px 35px 13px;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        justify-content: space-between; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.intro .point ul {
            padding: 20px 25px; } }
        body.subpage-pier section.intro .point ul li {
          padding-left: 15px;
          position: relative;
          font-size: 15px;
          font-size: 1.5rem;
          margin-bottom: 10px;
          line-height: 1.714285714; }
          @media only screen and (min-width: 768px) {
            body.subpage-pier section.intro .point ul li {
              margin-bottom: 10px; } }
          @media only screen and (max-width: 767px) {
            body.subpage-pier section.intro .point ul li {
              font-size: 14px;
              font-size: 1.4rem;
              width: 100%;
              margin-bottom: 10px; }
              body.subpage-pier section.intro .point ul li:last-child {
                margin-bottom: 0; } }
          body.subpage-pier section.intro .point ul li:before {
            content: '';
            width: 6px;
            height: 6px;
            position: absolute;
            left: 0;
            top: 10px;
            border-radius: 50%; }
            @media only screen and (max-width: 767px) {
              body.subpage-pier section.intro .point ul li:before {
                top: 9px; } }
    body.subpage-pier section.intro .box:after {
      content: '';
      margin: 50px 0;
      height: 7px;
      width: 100%;
      background-repeat: repeat-x;
      background-size: 26px 7px;
      background-position: left center;
      display: block; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.intro .box:after {
          height: 4px;
          background-size: 13px 4px;
          width: 100%;
          margin: 35px 0; } }
    body.subpage-pier section.intro .box h4 {
      font-size: 24px;
      font-size: 2.4rem;
      letter-spacing: 0.05em;
      font-weight: 500;
      margin-bottom: 30px;
      line-height: 1.666666667; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.intro .box h4 {
          font-size: 17px;
          font-size: 1.7rem;
          text-align: center;
          width: 100%;
          margin-bottom: 30px; } }
    body.subpage-pier section.intro .box p {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0em;
      line-height: 2.142857143; }
      body.subpage-pier section.intro .box p.center {
        text-align: center; }
    body.subpage-pier section.intro .box .btn-link {
      max-width: 320px;
      width: 100%;
      height: 54px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      border-radius: 27px;
      border: 1px solid #e1e1e1;
      position: relative;
      margin-top: 30px;
      font-weight: 500;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.intro .box .btn-link {
          font-size: 13px;
          font-size: 1.3rem; } }
      body.subpage-pier section.intro .box .btn-link:after {
        content: '';
        width: 5px;
        height: 5px;
        border-right-width: 1px;
        border-right-style: solid;
        border-bottom-width: 1px;
        border-bottom-style: solid;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%) rotateZ(-45deg); }
      body.subpage-pier section.intro .box .btn-link _:lang(x)::-ms-backdrop, body.subpage-pier section.intro .box .btn-link {
        padding-top: 5px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section.intro .box__point {
        padding: 0 25px; } }
    body.subpage-pier section.intro .box__point--top {
      padding-left: calc((100% - 770px) / 2);
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.intro .box__point--top {
          padding-left: 0; } }
      body.subpage-pier section.intro .box__point--top .left {
        width: 43%;
        padding-right: 55px; }
        @media only screen and (min-width: 768px) {
          body.subpage-pier section.intro .box__point--top .left {
            z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1050px) {
    body.subpage-pier section.intro .box__point--top .left {
      padding-left: 20px; } }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.intro .box__point--top .left {
            width: 100%;
            order: 2;
            padding-right: 0; } }
      body.subpage-pier section.intro .box__point--top .right {
        width: 57%; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.intro .box__point--top .right {
            width: 100%;
            order: 1;
            margin-bottom: 20px; }
            body.subpage-pier section.intro .box__point--top .right .img-container {
              margin-top: 12px;
              display: -webkit-flex;
              display: flex;
              -webkit-justify-content: space-between;
              justify-content: space-between; }
              body.subpage-pier section.intro .box__point--top .right .img-container .img {
                width: calc(50% - 4px); } }
    body.subpage-pier section.intro .box__point--btm {
      width: 100%;
      padding-top: 40px; }
      body.subpage-pier section.intro .box__point--btm .inner {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; }
      body.subpage-pier section.intro .box__point--btm .img {
        width: calc(50% - 10px);
        background: #FFF; }
        @media only screen and (min-width: 768px) {
          body.subpage-pier section.intro .box__point--btm .img:first-child {
            margin-right: 20px; } }
    body.subpage-pier section.intro .box__left {
      width: 100%;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.intro .box__left {
          padding: 0 25px; } }
      body.subpage-pier section.intro .box__left--img {
        width: 49.5%; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.intro .box__left--img {
            width: 100%;
            margin-bottom: 15px; } }
      body.subpage-pier section.intro .box__left--content {
        width: 50.5%;
        padding-right: calc((100% - 770px) / 2);
        padding-left: 50px; }
        @media only screen and (min-width: 768px) {
          body.subpage-pier section.intro .box__left--content {
            padding-top: 18px; } }
  @media only screen and (min-width: 768px) and (max-width: 1050px) {
    body.subpage-pier section.intro .box__left--content {
      padding-right: 20px; } }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.intro .box__left--content {
            width: 100%;
            padding-left: 0;
            padding-right: 0; } }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.intro .box__left--content p {
            margin-bottom: -10px; } }
    body.subpage-pier section.intro h3 {
      text-align: center;
      font-size: 26px;
      font-size: 2.6rem;
      letter-spacing: 0.05em;
      margin-bottom: 70px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.intro h3 {
          font-size: 18px;
          font-size: 1.8rem;
          margin-bottom: 45px; } }
  body.subpage-pier section .info-box {
    margin-bottom: 60px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section .info-box {
        margin-bottom: 40px; } }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section .info-box .btn-link-external {
        width: 100%;
        max-width: 275px;
        right: auto; } }
    body.subpage-pier section .info-box .notes {
      margin-top: -5px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section .info-box .notes2 {
          margin-top: 16px; } }
      body.subpage-pier section .info-box .notes.center {
        margin-top: 15px; }
  body.subpage-pier section .info-txt {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.142857143;
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section .info-txt {
        margin-top: -15px;
        margin-bottom: 20px; } }
    body.subpage-pier section .info-txt.no-mb {
      margin-bottom: 0; }
    body.subpage-pier section .info-txt.center {
      text-align: center; }
  body.subpage-pier section .button-box {
    max-width: 660px;
    width: 100%;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section .button-box {
        -webkit-flex-direction: column;
        flex-direction: column;
        -webkit-align-items: center;
        align-items: center; } }
    body.subpage-pier section .button-box .btn-link-external {
      border: 1px solid #e1e1e1;
      width: calc(50% - 10px);
      height: 54px;
      border-radius: 27px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      position: relative;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      transition: all 0.3s; }
      body.subpage-pier section .button-box .btn-link-external _:lang(x)::-ms-backdrop, body.subpage-pier section .button-box .btn-link-external {
        padding-top: 5px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section .button-box .btn-link-external {
          max-width: 275px !important;
          width: 100%;
          margin-bottom: 10px;
          right: auto;
          font-size: 13px;
          font-size: 1.3rem; }
          body.subpage-pier section .button-box .btn-link-external:last-child {
            margin-bottom: 0; } }
      body.subpage-pier section .button-box .btn-link-external.big {
        width: 345px; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section .button-box .btn-link-external.big {
            max-width: 315px !important; } }
      body.subpage-pier section .button-box .btn-link-external:after {
        content: '';
        width: 12px;
        height: 12px;
        background: url(../images/common/icon-link-external.svg) center/cover no-repeat;
        position: absolute;
        right: 20px;
        top: 50%;
        transform: translateY(-50%); }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section .button-box .btn-link-external:after {
            width: 10px;
            height: 10px; } }
      @media only screen and (min-width: 768px) {
        body.subpage-pier section .button-box .btn-link-external:hover {
          background: #e1e1e1; } }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section .button-box .btn-link-external {
          max-width: 225px;
          height: 40px;
          font-size: 13px;
          font-size: 1.3rem;
          right: auto; } }
  body.subpage-pier section .label-box {
    display: -webkit-flex;
    display: flex;
    margin-bottom: 20px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section .label-box {
        margin-top: -10px;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; } }
    body.subpage-pier section .label-box--item {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      /* IE11  */ }
      @media only screen and (min-width: 768px) {
        body.subpage-pier section .label-box--item:nth-child(2n+2) {
          margin-left: 50px; } }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section .label-box--item {
          -webkit-align-items: flex-start;
          align-items: flex-start;
          margin-bottom: 19px;
          -webkit-align-items: center;
          align-items: center; }
          body.subpage-pier section .label-box--item:last-child {
            margin-bottom: 0; } }
      body.subpage-pier section .label-box--item .label {
        width: 125px;
        height: 26px;
        border-radius: 13px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: 700;
        letter-spacing: 0.05em;
        margin-right: 20px; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section .label-box--item .label {
            width: 90px;
            height: 24px;
            border-radius: 12px;
            -webkit-flex: 0 0 90px;
            flex: 0 0 90px;
            margin-right: 15px; } }
      body.subpage-pier section .label-box--item _:lang(x)::-ms-backdrop,
      body.subpage-pier section .label-box--item .label {
        padding-top: 5px; }
      body.subpage-pier section .label-box--item .content {
        font-size: 15px;
        font-size: 1.5rem;
        letter-spacing: 0.05em;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section .label-box--item .content {
            padding-top: 4px;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.5; } }
        body.subpage-pier section .label-box--item .content .small {
          font-size: 12px;
          font-size: 1.2rem; }
          @media only screen and (max-width: 767px) {
            body.subpage-pier section .label-box--item .content .small {
              display: block;
              font-size: 11px;
              font-size: 1.1rem;
              margin-top: 5px; } }
  body.subpage-pier section .subheading {
    width: 100%;
    height: 40px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    border-radius: 20px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    margin-top: 50px;
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section .subheading {
        height: 30px;
        font-size: 15px;
        font-size: 1.5rem;
        margin-top: 35px;
        margin-bottom: 25px; } }
  body.subpage-pier section .smallheading {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 15px; }
  body.subpage-pier section li a span:not(.js-shave-char),
  body.subpage-pier section p a span:not(.js-shave-char) {
    padding-bottom: 2px;
    border-bottom-style: solid;
    border-bottom-width: 1px; }
  body.subpage-pier section .notes {
    line-height: 1.833333333; }
    body.subpage-pier section .notes li {
      padding-left: 15px;
      position: relative;
      font-size: 12px;
      font-size: 1.2rem; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section .notes li {
          font-size: 11px;
          font-size: 1.1rem; } }
      body.subpage-pier section .notes li:before {
        content: '※';
        position: absolute;
        left: 0;
        top: 0; }
      body.subpage-pier section .notes li a {
        transition: opacity 0.3s; }
        body.subpage-pier section .notes li a:hover {
          opacity: 0.6; }
    body.subpage-pier section .notes.center {
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section .notes.center {
          text-align: left; } }
      body.subpage-pier section .notes.center li {
        display: inline-block; }
  body.subpage-pier section .points {
    line-height: 1.833333333;
    margin-bottom: 30px; }
    body.subpage-pier section .points li {
      padding-left: 15px;
      position: relative;
      font-size: 14px;
      font-size: 1.4rem; }
      body.subpage-pier section .points li:before {
        content: '';
        position: absolute;
        left: 0;
        top: 10px;
        width: 4px;
        height: 4px;
        border-radius: 50%; }
  body.subpage-pier section .numpoints {
    line-height: 2.142857143;
    margin-bottom: 30px;
    counter-reset: numpoint; }
    body.subpage-pier section .numpoints li {
      padding-left: 30px;
      position: relative;
      font-size: 14px;
      font-size: 1.4rem; }
      body.subpage-pier section .numpoints li:before {
        counter-increment: numpoint;
        content: "(" counter(numpoint) ")";
        position: absolute;
        left: 0;
        top: 0; }
  body.subpage-pier section.night {
    padding: 80px 0; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section.night {
        padding: 50px 0; } }
    body.subpage-pier section.night .sec-heading {
      margin-bottom: 40px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.night .sec-heading {
          margin-bottom: 30px; } }
    body.subpage-pier section.night p {
      text-align: center;
      font-weight: 400;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2.142857143;
      margin-bottom: 30px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.night p {
          text-align: left;
          line-height: 1.714285714; } }
    body.subpage-pier section.night .btn-link-external {
      max-width: 320px;
      margin-left: auto;
      margin-right: auto;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.night .btn-link-external {
          max-width: 275px;
          right: auto; } }
  body.subpage-pier section.contact-box2 {
    background: #fff;
    padding: 100px 20px 220px; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier section.contact-box2 {
        padding: 60px 25px 120px; } }
    body.subpage-pier section.contact-box2 .contact-box2__wrapper {
      border-radius: 5px;
      overflow: hidden;
      padding: 0;
      max-width: 770px;
      /* IE11  */ }
      @media only screen and (max-width: 767px) {
        body.subpage-pier section.contact-box2 .contact-box2__wrapper {
          max-width: auto;
          width: 100%; } }
      body.subpage-pier section.contact-box2 .contact-box2__wrapper h4 {
        width: 100%;
        height: 40px;
        color: #fff;
        text-align: center;
        font-weight: 700;
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: 0.1em;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.contact-box2 .contact-box2__wrapper h4 {
            font-size: 13px;
            font-size: 1.3rem;
            line-height: 1.3;
            height: auto;
            padding: 8px 10px; } }
      body.subpage-pier section.contact-box2 .contact-box2__wrapper _:lang(x)::-ms-backdrop,
      body.subpage-pier section.contact-box2 .contact-box2__wrapper h4 {
        padding-top: 7px; }
      body.subpage-pier section.contact-box2 .contact-box2__wrapper .content {
        padding: 30px 50px; }
        @media only screen and (max-width: 767px) {
          body.subpage-pier section.contact-box2 .contact-box2__wrapper .content {
            padding: 25px; } }
        body.subpage-pier section.contact-box2 .contact-box2__wrapper .content p {
          font-size: 14px;
          font-size: 1.4rem;
          letter-spacing: 0.05em;
          line-height: 2.142857143;
          font-weight: 400;
          text-align: left; }
          body.subpage-pier section.contact-box2 .contact-box2__wrapper .content p.strong {
            line-height: 1.714285714;
            font-weight: 700; }
            @media only screen and (max-width: 767px) {
              body.subpage-pier section.contact-box2 .contact-box2__wrapper .content p.strong {
                font-size: 13px;
                font-size: 1.3rem; } }
          body.subpage-pier section.contact-box2 .contact-box2__wrapper .content p a {
            transition: opacity 0.3s; }
            body.subpage-pier section.contact-box2 .contact-box2__wrapper .content p a span {
              position: relative;
              padding-bottom: 2px;
              border-bottom-style: solid;
              border-bottom-width: 1px;
              font-weight: 700; }
            body.subpage-pier section.contact-box2 .contact-box2__wrapper .content p a:hover {
              opacity: 0.6; }
        body.subpage-pier section.contact-box2 .contact-box2__wrapper .content .note {
          display: inline-block;
          font-size: 12px;
          font-size: 1.2rem; }
          @media only screen and (max-width: 767px) {
            body.subpage-pier section.contact-box2 .contact-box2__wrapper .content .note {
              font-size: 11px;
              font-size: 1.1rem; } }
  @media only screen and (max-width: 767px) {
    body.subpage-pier p.reg-text {
      line-height: 1.714285714 !important; } }
  body.subpage-pier .side-image-cont {
    background-size: cover;
    background-position: center;
    margin-top: 5px;
    height: 350px;
    width: 100%; }
    @media only screen and (max-width: 1420px) {
      body.subpage-pier .side-image-cont {
        height: 100%; } }
    body.subpage-pier .side-image-cont.pos-left {
      border-top-right-radius: 5px;
      border-bottom-right-radius: 5px; }
    body.subpage-pier .side-image-cont.pos-right {
      border-top-left-radius: 5px;
      border-bottom-left-radius: 5px; }
  @media only screen and (min-width: 768px) {
    body.subpage-pier .warning-popup {
      left: 280px; } }

.anchor-link {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  justify-content: center; }
  @media only screen and (max-width: 767px) {
    .anchor-link {
      -webkit-flex-direction: column;
      flex-direction: column;
      -webkit-align-items: center;
      align-items: center; } }
  @media only screen and (max-width: 767px) {
    .anchor-link.typeB > a figure {
      padding: 10px 0 10px;
      -webkit-flex-direction: column;
      flex-direction: column; }
      .anchor-link.typeB > a figure .img-box img {
        height: 22px !important; }
      .anchor-link.typeB > a figure figcaption {
        text-align: center;
        padding: 5px 0 0; } }
  @media only screen and (max-width: 767px) {
    .anchor-link.typeC {
      max-width: 275px;
      margin: 0 auto;
      -webkit-flex-direction: row;
      flex-direction: row; }
      .anchor-link.typeC > a figure {
        padding: 10px 0 10px;
        -webkit-flex-direction: column;
        flex-direction: column; }
        .anchor-link.typeC > a figure .img-box img {
          height: 22px !important; }
        .anchor-link.typeC > a figure figcaption {
          text-align: center;
          padding: 5px 0 0; }
      .anchor-link.typeC > a:nth-of-type(2) {
        margin-right: 10px; }
      .anchor-link.typeC > a:nth-of-type(2), .anchor-link.typeC > a:nth-of-type(3) {
        width: calc((100% - 10px) / 2); } }
  @media only screen and (max-width: 767px) {
    .anchor-link.typeD {
      -webkit-flex-direction: row;
      flex-direction: row; }
      .anchor-link.typeD > a:nth-child(-n + 1) {
        margin-right: 5px !important; }
      .anchor-link.typeD > a:nth-child(-n + 2) {
        width: calc((100% - 5px) / 2);
        margin: 0; }
      .anchor-link.typeD > a:nth-child(3) {
        margin-top: 5px; }
      .anchor-link.typeD > a figure {
        -webkit-flex-direction: column;
        flex-direction: column;
        padding: 10px 0; }
        .anchor-link.typeD > a figure figcaption {
          text-align: center;
          display: block;
          width: 100%;
          padding: 5px 0 0; }
          .anchor-link.typeD > a figure figcaption span {
            font-size: 13px;
            font-size: 1.3rem; } }
  .anchor-link > a {
    background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-size: 200% auto;
    transition: 0.5s;
    display: block;
    border-radius: 5px;
    position: relative;
    -webkit-transition: -webkit-transform 0.3s, background-position 0.5s;
    -moz-transition: -moz-transform 0.3s, background-position 0.5s;
    -o-transition: -o-transform 0.3s, background-position 0.5s;
    transition: transform 0.3s, background-position 0.5s; }
    .anchor-link > aa:hover {
      background-position: right center; }
    @media only screen and (min-width: 768px) {
      .anchor-link > a {
        width: calc((100% - 40px) / 3);
        margin-left: 20px;
        margin-top: 20px;
        padding: 2px 2px 30px 2px; }
        .anchor-link > a:hover {
          -webkit-transform: translateY(5px);
          -moz-transform: translateY(5px);
          -ms-transform: translateY(5px);
          -o-transform: translateY(5px);
          transform: translateY(5px); }
        .anchor-link > a:nth-child(3n + 1) {
          margin-left: 0; }
        .anchor-link > a:nth-child(-n + 3) {
          margin-top: 0; } }
    @media only screen and (max-width: 767px) {
      .anchor-link > a {
        width: 273px;
        margin-top: 10px;
        padding: 1px 1px 20px 1px; }
        .anchor-link > a:nth-child(-n + 1) {
          margin-top: 0; } }
    .anchor-link > a:after {
      background-image: url("../images/common/arw_right.png");
      background-size: 6px 9px;
      content: "";
      position: absolute;
      left: 50%;
      bottom: 10px;
      transform: translateX(-50%) rotate(90deg);
      height: 9px;
      width: 6px; }
      @media only screen and (max-width: 767px) {
        .anchor-link > a:after {
          bottom: 5px; } }
    .anchor-link > a figure {
      background-color: #FFF;
      height: 100%;
      padding: 15px 10px;
      border-radius: 5px 5px 0 0; }
      @media only screen and (max-width: 767px) {
        .anchor-link > a figure {
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          padding: 12px 0 7px 15px; } }
      .anchor-link > a figure .img-box {
        text-align: center;
        height: 35px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center; }
        @media only screen and (max-width: 767px) {
          .anchor-link > a figure .img-box {
            height: 100%;
            width: 35px; } }
        .anchor-link > a figure .img-box img {
          width: 25px; }
      .anchor-link > a figure figcaption {
        text-align: center;
        letter-spacing: 0.05em;
        padding-top: 15px; }
        @media only screen and (max-width: 767px) {
          .anchor-link > a figure figcaption {
            width: calc(100% - 35px);
            text-align: left;
            padding: 0 0 0 10px; } }
        .anchor-link > a figure figcaption span {
          font-size: 20px;
          font-size: 2rem; }
          @media only screen and (max-width: 767px) {
            .anchor-link > a figure figcaption span {
              font-size: 13px;
              font-size: 1.3rem; } }
        .anchor-link > a figure figcaption p {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.538461538em;
          padding-top: 10px;
          text-align: center; }
          @media only screen and (max-width: 767px) {
            .anchor-link > a figure figcaption p {
              font-size: 11px;
              font-size: 1.1rem;
              line-height: 1.818181818em;
              padding-top: 3px;
              text-align: left; } }

@keyframes animation-01 {
  0% {
    transform: translateY(100%); }
  50% {
    transform: translateY(-10%); }
  60% {
    transform: translateY(-10%); }
  100% {
    transform: translateY(0); } }

@-webkit-keyframes animation-01 {
  0% {
    transform: translateY(100%); }
  50% {
    transform: translateY(-10%); }
  60% {
    transform: translateY(-10%); }
  100% {
    transform: translateY(0); } }

.animation-01 {
  animation: .9s animation-01 ease;
  animation-fill-mode: forwards;
  -webkit-animation: .9s animation-01 ease;
  -webkit-animation-fill-mode: forwards; }

@keyframes animation-02 {
  0% {
    transform: translateX(-20%);
    opacity: 0; }
  100% {
    transform: translateX(0);
    opacity: 1; } }

@-webkit-keyframes animation-02 {
  0% {
    transform: translateX(-20%);
    opacity: 0; }
  100% {
    transform: translateX(0);
    opacity: 1; } }

.animation-02 {
  animation: 1.9s animation-02 ease;
  animation-fill-mode: forwards;
  -webkit-animation: 1.9s animation-02 ease;
  -webkit-animation-fill-mode: forwards; }

@keyframes animation-03 {
  0% {
    right: 0;
    opacity: 0; }
  100% {
    right: 64px;
    opacity: 1; } }

@-webkit-keyframes animation-03 {
  0% {
    right: 0;
    opacity: 0; }
  100% {
    right: 64px;
    opacity: 1; } }

@keyframes animation-03-sp {
  0% {
    right: -60px;
    opacity: 0; }
  100% {
    right: 0;
    opacity: 1; } }

@-webkit-keyframes animation-03-sp {
  0% {
    right: -60px;
    opacity: 0; }
  100% {
    right: 0;
    opacity: 1; } }

.animation-03 {
  animation: 2s animation-03 ease;
  animation-fill-mode: forwards;
  -webkit-animation: 2s animation-03 ease;
  -webkit-animation-fill-mode: forwards; }
  @media only screen and (max-width: 767px) {
    .animation-03 {
      animation: 2s animation-03-sp ease;
      animation-fill-mode: forwards;
      -webkit-animation: 2s animation-03-sp ease;
      -webkit-animation-fill-mode: forwards; } }

@keyframes animation-04 {
  0% {
    transform: translateY(15%);
    opacity: 0; }
  100% {
    transform: translateX(0);
    opacity: 1; } }

@-webkit-keyframes animation-04 {
  0% {
    transform: translateY(15%);
    opacity: 0; }
  100% {
    transform: translateX(0);
    opacity: 1; } }

.animation-04 {
  animation: 0.7s animation-04 ease;
  animation-fill-mode: forwards;
  -webkit-animation: 0.7s animation-04 ease;
  -webkit-animation-fill-mode: forwards;
  -ms-animation: 0.7s animation-04 ease;
  -ms-animation-fill-mode: forwards; }

.fadeInUp {
  animation-duration: 1.5s;
  animation-timing-function: ease-out; }

.arrow-01 {
  position: relative; }
  .arrow-01:before {
    border-radius: 50%;
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 15px;
    height: 24px;
    width: 24px;
    background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
    background-image: linear-gradient(to right, #005ca1, #0095a1); }
    @media only screen and (max-width: 767px) {
      .arrow-01:before {
        right: 10px;
        height: 15px;
        width: 15px; } }
  .arrow-01:after {
    background-image: url("../images/common/arw_right.png");
    background-size: 6px 9px;
    content: "";
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    height: 9px;
    width: 6px; }
    @media only screen and (max-width: 767px) {
      .arrow-01:after {
        background-size: 3px 4px;
        right: 16px;
        height: 4px;
        width: 3px; } }

.banner-mobile {
  background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-size: 200% auto;
  transition: 0.5s;
  border-radius: 5px;
  padding: 1px 1px 0 1px; }
  .banner-mobilea:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    .banner-mobile {
      position: relative;
      height: 70px; } }
  .banner-mobile__top {
    background: #fff;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    padding: 10px 35px 10px 55px; }
    @media only screen and (max-width: 767px) {
      .banner-mobile__top {
        padding: 0 15px 0 58px; }
        .banner-mobile__top:before {
          border-radius: 50%;
          content: "";
          position: absolute;
          top: 15px;
          right: 15px;
          height: 17px;
          width: 17px;
          background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
          background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
          background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
          background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
          background-image: linear-gradient(to right, #005ca1, #0095a1); }
        .banner-mobile__top:after {
          border-right: 1px solid white;
          border-bottom: 1px solid white;
          content: "";
          position: absolute;
          right: 22px;
          top: 21px;
          transform: rotate(-45deg);
          height: 4px;
          width: 4px; } }
    .banner-mobile__top--txt {
      letter-spacing: 0.075em; }
      @media only screen and (max-width: 767px) {
        .banner-mobile__top--txt {
          position: relative;
          top: 2px; } }
      .banner-mobile__top--txt span {
        display: inline-block; }
      @media only screen and (max-width: 767px) {
        .banner-mobile__top--txt .txt01 {
          font-size: 12px;
          font-size: 1.2rem;
          line-height: normal;
          margin-bottom: 0; } }
      .banner-mobile__top--txt .txt02 {
        font-weight: 700; }
        @media only screen and (max-width: 767px) {
          .banner-mobile__top--txt .txt02 {
            font-size: 17px;
            font-size: 1.7rem;
            line-height: normal;
            position: relative;
            top: -5px; } }
      @media only screen and (max-width: 767px) {
        .banner-mobile__top--txt .txt03 {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: normal;
          position: relative;
          top: -5px; } }
  @media only screen and (max-width: 767px) {
    .banner-mobile__btm {
      position: absolute;
      left: 0;
      right: 0;
      bottom: 0; } }
  .banner-mobile__btm p {
    line-height: 1.2;
    letter-spacing: 0.05em;
    color: #ffffff;
    text-align: center;
    padding: 4px 8px; }
    @media only screen and (max-width: 767px) {
      .banner-mobile__btm p {
        font-size: 10px;
        font-size: 1rem;
        padding: 4px 8px;
        position: relative;
        top: -3px; } }

.breadcrumb {
  border-top: 1px solid #d9e7ef;
  border-bottom: 1px solid #d9e7ef;
  /* IE11  */ }
  .breadcrumb .inner {
    padding: 12px 99px 12px;
    max-width: 100%; }
    @media only screen and (max-width: 767px) {
      .breadcrumb .inner {
        padding: 5px 25px; } }
    @media only screen and (min-width: 768px) and (max-width: 1023px) {
      .breadcrumb .inner {
        padding-left: 20px;
        padding-right: 20px; } }
    .breadcrumb .inner span {
      display: inline;
      font-size: 12px;
      font-size: 1.2rem;
      font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
      letter-spacing: 0.05em;
      line-height: 1.5; }
      @media only screen and (max-width: 767px) {
        .breadcrumb .inner span {
          font-size: 10px;
          font-size: 1rem;
          line-height: 2; } }
      .breadcrumb .inner span a {
        padding-right: 11px;
        position: relative; }
        @media only screen and (min-width: 768px) {
          .breadcrumb .inner span a {
            cursor: pointer;
            -webkit-transition: 0.3s;
            -moz-transition: 0.3s;
            -o-transition: 0.3s;
            transition: 0.3s; }
            .breadcrumb .inner span a:hover {
              opacity: .7; } }
        @media only screen and (max-width: 767px) {
          .breadcrumb .inner span a {
            padding-right: 8px; } }
        .breadcrumb .inner span a:after {
          border-right: 1px solid #1c4e6a;
          border-bottom: 1px solid #1c4e6a;
          content: "";
          display: inline-block;
          margin-left: 10px;
          position: relative;
          top: -1px;
          transform: rotate(-45deg);
          height: 5px;
          width: 5px; }
          @media only screen and (max-width: 767px) {
            .breadcrumb .inner span a:after {
              margin-left: 8px;
              height: 4px;
              width: 4px; } }
  .breadcrumb _:lang(x)::-ms-backdrop,
  .breadcrumb .inner {
    padding-top: 18px; }

.subpage-pier .breadcrumb {
  border-color: #e1e1e1; }
  .subpage-pier .breadcrumb .inner {
    max-width: none; }
    .subpage-pier .breadcrumb .inner span:nth-child(2) a {
      position: relative;
      bottom: -1px; }

.btn {
  max-width: 320px;
  margin: 0 auto;
  position: relative;
  transition: background-position 0.5s, box-shadow 0.3s, background-color 0.3s;
  height: 55px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
  border-radius: 5px;
  background-size: 200% auto; }
  @media all and (-ms-high-contrast: none) {
    .btn {
      padding-top: 5px; } }
  .btn span {
    color: #FFF;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .btn span {
        font-size: 13px;
        font-size: 1.3rem; } }
  @media only screen and (min-width: 768px) {
    body.hasHover .btn:hover {
      background-position: right center; } }
  .btn.arw-right span:before {
    background-image: url("../images/common/arw_right.png");
    background-size: 6px 9px;
    background-repeat: no-repeat;
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    height: 9px;
    width: 6px; }
    @media only screen and (max-width: 767px) {
      .btn.arw-right span:before {
        background-size: 4px 6px;
        right: 15px;
        height: 6px;
        width: 4px; } }
  .btn.btn-white {
    background: white;
    border: 1px solid #d9e7ef; }
    .btn.btn-white span {
      color: #1c4e6a; }
    @media only screen and (min-width: 768px) {
      .btn.btn-white:hover {
        box-shadow: 0 0 15px #cce5ef; } }
  .btn.external span span.size {
    padding-left: 4px; }
  .btn.external span:before {
    background-image: url("../images/common/linkb.svg");
    background-size: 11px 11px;
    background-repeat: no-repeat;
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    height: 11px;
    width: 11px; }
    @media only screen and (max-width: 767px) {
      .btn.external span:before {
        right: 15px; } }
  .btn.external.pdf {
    -webkit-flex-direction: column;
    flex-direction: column; }
    .btn.external.pdf span.size {
      font-size: 11px;
      font-size: 1.1rem;
      margin-top: 8px; }
      @media only screen and (max-width: 767px) {
        .btn.external.pdf span.size {
          font-size: 10px;
          font-size: 1rem;
          margin-top: 4px; } }

.btn-calnav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100px;
  height: 30px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  background: #fff;
  border: 1px solid #e1e1e1;
  border-radius: 5px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  font-family: "Oswald", sans-serif;
  font-weight: 500;
  transition: all 0.3s; }
  @media only screen and (max-width: 767px) {
    .btn-calnav {
      font-size: 12px;
      font-size: 1.2rem;
      height: 25px;
      width: 75px; } }
  .btn-calnav:hover {
    background-color: #e1e1e1; }
  .btn-calnav:after {
    content: '';
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    width: 5px;
    height: 5px;
    position: absolute;
    top: 50%; }
    @media only screen and (max-width: 767px) {
      .btn-calnav:after {
        width: 4px;
        height: 4px; } }
  .btn-calnav--prev {
    left: 0;
    padding-right: 13px;
    -webkit-justify-content: flex-end;
    justify-content: flex-end; }
    @media only screen and (max-width: 767px) {
      .btn-calnav--prev {
        padding-right: 7px; } }
    .btn-calnav--prev:after {
      left: 15px;
      transform: translateY(-50%) rotateZ(135deg); }
      @media only screen and (max-width: 767px) {
        .btn-calnav--prev:after {
          left: 10px; } }
  .btn-calnav--next {
    right: 0;
    padding-left: 13px; }
    @media only screen and (max-width: 767px) {
      .btn-calnav--next {
        padding-left: 7px; } }
    .btn-calnav--next:after {
      right: 15px;
      transform: translateY(-50%) rotateZ(-45deg); }
      @media only screen and (max-width: 767px) {
        .btn-calnav--next:after {
          right: 10px; } }

.btn-link-arrow {
  max-width: 320px;
  width: 100%;
  height: 54px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  border-radius: 27px;
  border: 1px solid #e1e1e1;
  position: relative;
  margin-top: 30px;
  transition: all 0.3s; }
  .btn-link-arrow:after {
    content: '';
    width: 5px;
    height: 5px;
    border-right: 1px solid #000;
    border-bottom: 1px solid #000;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotateZ(-45deg); }
  .btn-link-arrow _:lang(x)::-ms-backdrop, .btn-link-arrow {
    padding-top: 5px; }
  @media only screen and (min-width: 768px) {
    .btn-link-arrow:hover {
      background: #e1e1e1; } }

.btn-link-external {
  border: 1px solid #e1e1e1;
  width: calc(50% - 10px);
  height: 54px;
  border-radius: 27px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  transition: all 0.3s;
  background: #fff; }
  .btn-link-external.center {
    margin-left: auto;
    margin-right: auto; }
  .btn-link-external:after {
    content: '';
    width: 10px;
    height: 10px;
    background: url(../images/common/icon-link-external.svg) center/cover no-repeat;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%); }
    @media only screen and (max-width: 767px) {
      .btn-link-external:after {
        width: 12px;
        height: 12px; } }
  @media only screen and (min-width: 768px) {
    .btn-link-external:hover {
      background: #e1e1e1; } }
  .btn-link-external _:lang(x)::-ms-backdrop, .btn-link-external {
    padding-top: 5px; }
  @media only screen and (max-width: 767px) {
    .btn-link-external {
      max-width: 225px;
      height: 40px;
      font-size: 13px;
      font-size: 1.3rem;
      right: 15px; } }
  .btn-link-external.pdf {
    -webkit-flex-direction: column;
    flex-direction: column; }
    .btn-link-external.pdf span.size {
      font-size: 11px;
      font-size: 1.1rem;
      margin-top: 8px; }
      @media only screen and (max-width: 767px) {
        .btn-link-external.pdf span.size {
          font-size: 10px;
          font-size: 1rem;
          margin-top: 4px; } }

.cms-sidebar-regular .cms-sidebar {
  background-color: white;
  width: 100%;
  /* IE11  */ }
  .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl {
    border-radius: 5px;
    background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
    background-image: linear-gradient(to right, #005ca1, #0095a1);
    color: white;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    padding-top: 11px;
    position: relative;
    height: 40px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl {
        border-radius: 3px;
        font-size: 14px;
        font-size: 1.4rem;
        padding-top: 10px;
        height: 34px; } }
    .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl:before {
      border-left: 1px solid white;
      content: "";
      display: inline-block;
      margin: 0 auto;
      position: absolute;
      top: 46%;
      border-bottom: 11px;
      right: 30px;
      transform: rotate(-45deg);
      height: 5px;
      width: 5px;
      border-bottom: 1px solid white; }
      @media only screen and (max-width: 767px) {
        .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl:before {
          top: 37%;
          right: 25px; } }
    .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl.is-active {
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }
      .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl.is-active:before {
        transform: rotate(135deg);
        top: 45%; }
        @media only screen and (max-width: 767px) {
          .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl.is-active:before {
            top: 40%; } }
  .cms-sidebar-regular .cms-sidebar _:lang(x)::-ms-backdrop, .cms-sidebar-regular .cms-sidebar .cms-sidebar-ttl {
    padding-top: 14px; }
  .cms-sidebar-regular .cms-sidebar .side-element {
    display: none;
    border: 1px solid #d9e7ef;
    border-top: none;
    border-bottom-right-radius: 5px;
    border-bottom-left-radius: 5px;
    padding: 37px 47px 38px; }
    @media only screen and (max-width: 767px) {
      .cms-sidebar-regular .cms-sidebar .side-element {
        border-bottom-right-radius: 3px;
        border-bottom-left-radius: 3px;
        display: none;
        padding: 25px 25px 30px; } }
    .cms-sidebar-regular .cms-sidebar .side-element .js-toggle-content {
      display: none; }
    .cms-sidebar-regular .cms-sidebar .side-element .js-toggle-menu-01, .cms-sidebar-regular .cms-sidebar .side-element .js-toggle-menu-02 {
      cursor: pointer; }
    .cms-sidebar-regular .cms-sidebar .side-element ul.side-list:last-child {
      margin-bottom: 0; }
    .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item {
      margin-bottom: 20px;
      /* IE11  */ }
      @media only screen and (max-width: 767px) {
        .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item {
          margin-bottom: 23px; } }
      .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item:last-child {
        margin-bottom: 0; }
      .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl {
        border-bottom: 1px dotted #1c4e6a;
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: 0.05;
        padding-bottom: 7px;
        position: relative;
        text-align: left; }
        @media only screen and (max-width: 767px) {
          .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl {
            font-size: 14px;
            font-size: 1.4rem;
            padding-bottom: 10px; } }
        .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl:before {
          border-left: 1px solid #1c4e6a;
          content: "";
          display: inline-block;
          margin: 0 auto;
          position: absolute;
          bottom: 11px;
          border-bottom: 11px;
          right: 0;
          transform: rotate(-45deg);
          height: 5px;
          width: 5px;
          border-bottom: 1px solid #1c4e6a; }
        .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl.is-active:before {
          transform: rotate(135deg) !important;
          bottom: 9px; }
      .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
        margin-top: 13px;
        -webkit-justify-content: flex-start;
        justify-content: flex-start; }
        @media only screen and (max-width: 767px) {
          .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
            margin-top: 20px; } }
        .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li {
          border-left: 1px solid #d9e7ef;
          font-size: 14px;
          font-size: 1.4rem;
          margin-bottom: 12px;
          padding: 1px 0;
          text-align: center;
          height: 15px;
          width: calc(100%/12); }
          .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:last-child, .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:nth-child(4n) {
            border-right: 1px solid #d9e7ef; }
          .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li a {
            display: block;
            height: 100%;
            width: 100%; }
          @media only screen and (min-width: 768px) {
            .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:last-child {
              margin-bottom: 0; } }
          @media only screen and (max-width: 767px) {
            .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li {
              border-left: 1px solid #d9e7ef;
              font-size: 13px;
              font-size: 1.3rem;
              margin-bottom: 10px;
              padding: 1px 0;
              text-align: center;
              width: calc(100%/4); }
              .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:last-child, .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:nth-child(4n) {
                border-right: 1px solid #d9e7ef; } }
      .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item _:lang(x)::-ms-backdrop, .cms-sidebar-regular .cms-sidebar .side-element ul.side-list li.side-item .cms-sidebar-ttl {
        padding-top: 2px; }

.cmsContent {
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: none;
  word-wrap: break-word; }
  .cmsContent:before, .cmsContent:after {
    content: " ";
    display: table; }
  .cmsContent:after {
    clear: both; }
  .cmsContent ul,
  .cmsContent ol {
    padding-left: 20px;
    margin-bottom: 20px; }
  .cmsContent ul[style*="list-style-type: circle;"] li {
    list-style-type: circle; }
  .cmsContent ul[style*="list-style-type: square;"] li {
    list-style-type: square; }
  .cmsContent ul li {
    margin: 15px 0;
    text-align: left;
    list-style: disc; }
  .cmsContent ol[style*="list-style-type: lower-roman;"] li {
    list-style-type: lower-roman; }
  .cmsContent ol[style*="list-style-type: lower-alpha;"] li {
    list-style-type: lower-alpha; }
  .cmsContent ol[style*="list-style-type: lower-greek;"] li {
    list-style-type: lower-greek; }
  .cmsContent ol[style*="list-style-type: upper-alpha;"] li {
    list-style-type: upper-alpha; }
  .cmsContent ol[style*="list-style-type: upper-roman;"] li {
    list-style-type: upper-roman; }
  .cmsContent ol li {
    margin: 15px 0;
    text-align: left;
    list-style-type: decimal; }
  .cmsContent p {
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      .cmsContent p {
        margin-bottom: 25px; } }
  .cmsContent iframe {
    max-width: 100% !important; }
  .cmsContent img {
    max-width: 100%;
    height: auto;
    max-height: 100%;
    width: auto; }

.s--port-building .feature h4 span {
  background: linear-gradient(0deg, #fbede8 50%, #fbede8 50%) left bottom -2px/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--port-building .feature h4 span {
      background: linear-gradient(0deg, #fbede8 50%, #fbede8 50%) left bottom 0/auto 5px repeat-x; } }

.s--port-building .feature h4 em {
  color: #da5019; }

.s--port-building .point {
  border-color: #da5019;
  box-shadow: 7px 7px 0 #fbede8; }
  .s--port-building .point p {
    background: #da5019; }
  .s--port-building .point ul li:before {
    background-color: #da5019; }

.s--port-building .bg-pattern, .s--port-building.bg-pattern {
  background-color: #fdf6f3;
  background-image: url(../images/garden-pier/common/front-bg-pattern.png);
  background-position: top left;
  background-size: 32px;
  background-repeat: repeat; }

.s--port-building .sec-part-title .large {
  position: relative; }
  .s--port-building .sec-part-title .large:before, .s--port-building .sec-part-title .large:after {
    content: '';
    width: 22px;
    height: 4px;
    background: url(../images/garden-pier/common/dots-orange.svg) center/22px 44px no-repeat;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    @media only screen and (max-width: 767px) {
      .s--port-building .sec-part-title .large:before, .s--port-building .sec-part-title .large:after {
        width: 19px;
        height: 3px;
        background-size: 19px 3px; } }
  .s--port-building .sec-part-title .large:before {
    left: -42px; }
    @media only screen and (max-width: 767px) {
      .s--port-building .sec-part-title .large:before {
        left: -30px; } }
  .s--port-building .sec-part-title .large:after {
    right: -42px; }
    @media only screen and (max-width: 767px) {
      .s--port-building .sec-part-title .large:after {
        right: -30px; } }

.s--port-building .sec-part-title {
  color: #da5019;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center; }

.s--port-building .content-title em {
  background: linear-gradient(0deg, rgba(218, 80, 25, 0.1) 50%, rgba(218, 80, 25, 0.1) 50%) left bottom/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--port-building .content-title em {
      background: linear-gradient(0deg, rgba(218, 80, 25, 0.1) 50%, rgba(218, 80, 25, 0.1) 50%) left bottom -2px/auto 8px repeat-x; } }

.s--port-building .content-title span {
  color: #da5019; }

.s--port-building .btn-link {
  width: 100%;
  max-width: 320px;
  height: 56px;
  border: 1px solid #da5019;
  border-radius: 28px;
  background: #da5019;
  color: #FFF;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  position: relative;
  transition: all 0.3s; }
  @media only screen and (min-width: 768px) {
    .s--port-building .btn-link {
      padding-bottom: 2px; } }
  .s--port-building .btn-link _:lang(x)::-ms-backdrop, .s--port-building .btn-link {
    padding-top: 5px; }
  @media only screen and (max-width: 767px) {
    .s--port-building .btn-link {
      max-width: 275px;
      height: 40px;
      font-size: 13px;
      font-size: 1.3rem;
      margin: 0 auto; } }
  .s--port-building .btn-link:after {
    content: '';
    width: 5px;
    height: 5px;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    transform: translateY(-50%) rotateZ(-45deg);
    right: 30px;
    top: 50%;
    position: absolute;
    transition: all 0.3s; }
    @media only screen and (max-width: 767px) {
      .s--port-building .btn-link:after {
        width: 4px;
        height: 4px; } }
  .s--port-building .btn-link:hover {
    color: #da5019;
    background-color: #FFF; }
    .s--port-building .btn-link:hover:after {
      border-color: #da5019; }

.s--port-building section.front h3:before {
  background-image: url(../images/garden-pier/common/dots-orange-l.svg); }

.s--port-building section.front h3:after {
  background-image: url(../images/garden-pier/common/dots-orange-r.svg); }

.s--port-building .info-title {
  border-bottom-color: #da5019;
  color: #da5019; }

.s--port-building .sec-heading:before, .s--port-building .sec-heading:after {
  background-image: url(../images/garden-pier/common/dots-orange.svg); }

.s--port-building .subheading {
  color: #da5019;
  background-color: rgba(218, 80, 25, 0.1); }

.s--port-building .smallheading {
  color: #da5019; }

.s--port-building .label-box .label {
  color: #da5019;
  background: rgba(218, 80, 25, 0.1); }

.s--port-building .points li:before {
  background-color: #da5019; }

.s--port-building .notes li a,
.s--port-building .points li a,
.s--port-building p a {
  color: #da5019; }
  .s--port-building .notes li a span,
  .s--port-building .points li a span,
  .s--port-building p a span {
    border-color: #da5019; }

.s--port-building .contact-box2 h4 {
  background: #da5019; }

.s--port-building .contact-box2 p a {
  color: #da5019; }
  .s--port-building .contact-box2 p a span {
    border-bottom-color: #da5019; }

.s--port-building .front .wrapper {
  box-shadow: 7px 7px 0 rgba(218, 80, 25, 0.1); }
  .s--port-building .front .wrapper .decoration li:after {
    background-color: rgba(218, 80, 25, 0.1); }

.s--port-building .front h3 em {
  color: #da5019; }

.s--port-building .front p em {
  background: linear-gradient(0deg, rgba(218, 80, 25, 0.1) 50%, rgba(218, 80, 25, 0.1) 50%) left bottom/auto 6px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--port-building .front p em {
      background: linear-gradient(0deg, rgba(218, 80, 25, 0.1) 50%, rgba(218, 80, 25, 0.1) 50%) left bottom/auto 6px repeat-x; } }

.s--museum .feature h4 span {
  background: linear-gradient(0deg, #cce5ef 50%, #cce5ef 50%) left bottom -2px/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--museum .feature h4 span {
      background: linear-gradient(0deg, #cce5ef 50%, #cce5ef 50%) left bottom 0/auto 5px repeat-x; } }

.s--museum .feature h4 em {
  color: #007fb1; }

.s--museum .point {
  border-color: #007fb1;
  box-shadow: 7px 7px 0 #cce5ef; }
  .s--museum .point p {
    background: #007fb1; }
  .s--museum .point ul li:before {
    background-color: #007fb1; }

.s--museum .bg-pattern, .s--museum.bg-pattern {
  background-color: #f2f8fb;
  background-image: url(../images/garden-pier/common/front-bg-pattern.png);
  background-position: top left;
  background-size: 32px;
  background-repeat: repeat; }

.s--museum .sec-part-title .large {
  position: relative; }
  .s--museum .sec-part-title .large:before, .s--museum .sec-part-title .large:after {
    content: '';
    width: 22px;
    height: 4px;
    background: url(../images/garden-pier/common/dots-dblue.svg) center/22px 44px no-repeat;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    @media only screen and (max-width: 767px) {
      .s--museum .sec-part-title .large:before, .s--museum .sec-part-title .large:after {
        width: 19px;
        height: 3px;
        background-size: 19px 3px; } }
  .s--museum .sec-part-title .large:before {
    left: -42px; }
    @media only screen and (max-width: 767px) {
      .s--museum .sec-part-title .large:before {
        left: -30px; } }
  .s--museum .sec-part-title .large:after {
    right: -42px; }
    @media only screen and (max-width: 767px) {
      .s--museum .sec-part-title .large:after {
        right: -30px; } }

.s--museum .sec-part-title {
  color: #007fb1;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center; }

.s--museum .content-title em {
  background: linear-gradient(0deg, rgba(0, 127, 177, 0.2) 50%, rgba(0, 127, 177, 0.2) 50%) left bottom/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--museum .content-title em {
      background: linear-gradient(0deg, rgba(0, 127, 177, 0.2) 50%, rgba(0, 127, 177, 0.2) 50%) left bottom -2px/auto 8px repeat-x; } }

.s--museum .content-title span {
  color: #007fb1; }

.s--museum .btn-link {
  width: 100%;
  max-width: 320px;
  height: 56px;
  border: 1px solid #007fb1;
  border-radius: 28px;
  background: #007fb1;
  color: #FFF;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  position: relative;
  transition: all 0.3s; }
  @media only screen and (min-width: 768px) {
    .s--museum .btn-link {
      padding-bottom: 2px; } }
  .s--museum .btn-link _:lang(x)::-ms-backdrop, .s--museum .btn-link {
    padding-top: 5px; }
  @media only screen and (max-width: 767px) {
    .s--museum .btn-link {
      max-width: 275px;
      height: 40px;
      font-size: 13px;
      font-size: 1.3rem;
      margin: 0 auto; } }
  .s--museum .btn-link:after {
    content: '';
    width: 5px;
    height: 5px;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    transform: translateY(-50%) rotateZ(-45deg);
    right: 30px;
    top: 50%;
    position: absolute;
    transition: all 0.3s; }
    @media only screen and (max-width: 767px) {
      .s--museum .btn-link:after {
        width: 4px;
        height: 4px; } }
  .s--museum .btn-link:hover {
    color: #007fb1;
    background-color: #FFF; }
    .s--museum .btn-link:hover:after {
      border-color: #007fb1; }

.s--museum section.front h3:before {
  background-image: url(../images/garden-pier/common/dots-dblue-l.svg); }

.s--museum section.front h3:after {
  background-image: url(../images/garden-pier/common/dots-dblue-r.svg); }

.s--museum .info-title {
  border-bottom-color: #007fb1;
  color: #007fb1; }

.s--museum .sec-heading:before, .s--museum .sec-heading:after {
  background-image: url(../images/garden-pier/common/dots-dblue.svg); }

.s--museum .subheading {
  color: #007fb1;
  background-color: rgba(0, 127, 177, 0.2); }

.s--museum .smallheading {
  color: #007fb1; }

.s--museum .label-box .label {
  color: #007fb1;
  background: rgba(0, 127, 177, 0.2); }

.s--museum .points li:before {
  background-color: #007fb1; }

.s--museum .notes li a,
.s--museum .points li a,
.s--museum p a {
  color: #007fb1; }
  .s--museum .notes li a span,
  .s--museum .points li a span,
  .s--museum p a span {
    border-color: #007fb1; }

.s--museum .contact-box2 h4 {
  background: #007fb1; }

.s--museum .contact-box2 p a {
  color: #007fb1; }
  .s--museum .contact-box2 p a span {
    border-bottom-color: #007fb1; }

.s--museum .front .wrapper {
  box-shadow: 7px 7px 0 rgba(0, 127, 177, 0.2); }
  .s--museum .front .wrapper .decoration li:after {
    background-color: rgba(0, 127, 177, 0.2); }

.s--museum .front h3 em {
  color: #007fb1; }

.s--museum .front p em {
  background: linear-gradient(0deg, rgba(0, 127, 177, 0.2) 50%, rgba(0, 127, 177, 0.2) 50%) left bottom/auto 6px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--museum .front p em {
      background: linear-gradient(0deg, rgba(0, 127, 177, 0.2) 50%, rgba(0, 127, 177, 0.2) 50%) left bottom/auto 6px repeat-x; } }

.s--fuji .feature h4 span {
  background: linear-gradient(0deg, #faeecc 50%, #faeecc 50%) left bottom -2px/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--fuji .feature h4 span {
      background: linear-gradient(0deg, #faeecc 50%, #faeecc 50%) left bottom 0/auto 5px repeat-x; } }

.s--fuji .feature h4 em {
  color: #e7a800; }

.s--fuji .point {
  border-color: #e7a800;
  box-shadow: 7px 7px 0 #faeecc; }
  .s--fuji .point p {
    background: #e7a800; }
  .s--fuji .point ul li:before {
    background-color: #e7a800; }

.s--fuji .bg-pattern, .s--fuji.bg-pattern {
  background-color: #fefbf2;
  background-image: url(../images/garden-pier/common/front-bg-pattern.png);
  background-position: top left;
  background-size: 32px;
  background-repeat: repeat; }

.s--fuji .sec-part-title .large {
  position: relative; }
  .s--fuji .sec-part-title .large:before, .s--fuji .sec-part-title .large:after {
    content: '';
    width: 22px;
    height: 4px;
    background: url(../images/garden-pier/common/dots-yellow.svg) center/22px 44px no-repeat;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    @media only screen and (max-width: 767px) {
      .s--fuji .sec-part-title .large:before, .s--fuji .sec-part-title .large:after {
        width: 19px;
        height: 3px;
        background-size: 19px 3px; } }
  .s--fuji .sec-part-title .large:before {
    left: -42px; }
    @media only screen and (max-width: 767px) {
      .s--fuji .sec-part-title .large:before {
        left: -30px; } }
  .s--fuji .sec-part-title .large:after {
    right: -42px; }
    @media only screen and (max-width: 767px) {
      .s--fuji .sec-part-title .large:after {
        right: -30px; } }

.s--fuji .sec-part-title {
  color: #e7a800;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center; }

.s--fuji .content-title em {
  background: linear-gradient(0deg, rgba(231, 168, 0, 0.2) 50%, rgba(231, 168, 0, 0.2) 50%) left bottom/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--fuji .content-title em {
      background: linear-gradient(0deg, rgba(231, 168, 0, 0.2) 50%, rgba(231, 168, 0, 0.2) 50%) left bottom -2px/auto 8px repeat-x; } }

.s--fuji .content-title span {
  color: #e7a800; }

.s--fuji .btn-link {
  width: 100%;
  max-width: 320px;
  height: 56px;
  border: 1px solid #e7a800;
  border-radius: 28px;
  background: #e7a800;
  color: #FFF;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  position: relative;
  transition: all 0.3s; }
  @media only screen and (min-width: 768px) {
    .s--fuji .btn-link {
      padding-bottom: 2px; } }
  .s--fuji .btn-link _:lang(x)::-ms-backdrop, .s--fuji .btn-link {
    padding-top: 5px; }
  @media only screen and (max-width: 767px) {
    .s--fuji .btn-link {
      max-width: 275px;
      height: 40px;
      font-size: 13px;
      font-size: 1.3rem;
      margin: 0 auto; } }
  .s--fuji .btn-link:after {
    content: '';
    width: 5px;
    height: 5px;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    transform: translateY(-50%) rotateZ(-45deg);
    right: 30px;
    top: 50%;
    position: absolute;
    transition: all 0.3s; }
    @media only screen and (max-width: 767px) {
      .s--fuji .btn-link:after {
        width: 4px;
        height: 4px; } }
  .s--fuji .btn-link:hover {
    color: #e7a800;
    background-color: #FFF; }
    .s--fuji .btn-link:hover:after {
      border-color: #e7a800; }

.s--fuji section.front h3:before {
  background-image: url(../images/garden-pier/common/dots-yellow-l.svg); }

.s--fuji section.front h3:after {
  background-image: url(../images/garden-pier/common/dots-yellow-r.svg); }

.s--fuji .info-title {
  border-bottom-color: #e7a800;
  color: #e7a800; }

.s--fuji .sec-heading:before, .s--fuji .sec-heading:after {
  background-image: url(../images/garden-pier/common/dots-yellow.svg); }

.s--fuji .subheading {
  color: #e7a800;
  background-color: rgba(231, 168, 0, 0.2); }

.s--fuji .smallheading {
  color: #e7a800; }

.s--fuji .label-box .label {
  color: #e7a800;
  background: rgba(231, 168, 0, 0.2); }

.s--fuji .points li:before {
  background-color: #e7a800; }

.s--fuji .notes li a,
.s--fuji .points li a,
.s--fuji p a {
  color: #e7a800; }
  .s--fuji .notes li a span,
  .s--fuji .points li a span,
  .s--fuji p a span {
    border-color: #e7a800; }

.s--fuji .contact-box2 h4 {
  background: #e7a800; }

.s--fuji .contact-box2 p a {
  color: #e7a800; }
  .s--fuji .contact-box2 p a span {
    border-bottom-color: #e7a800; }

.s--fuji .front .wrapper {
  box-shadow: 7px 7px 0 rgba(231, 168, 0, 0.2); }
  .s--fuji .front .wrapper .decoration li:after {
    background-color: rgba(231, 168, 0, 0.2); }

.s--fuji .front h3 em {
  color: #e7a800; }

.s--fuji .front p em {
  background: linear-gradient(0deg, rgba(231, 168, 0, 0.2) 50%, rgba(231, 168, 0, 0.2) 50%) left bottom/auto 6px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--fuji .front p em {
      background: linear-gradient(0deg, rgba(231, 168, 0, 0.2) 50%, rgba(231, 168, 0, 0.2) 50%) left bottom/auto 6px repeat-x; } }

.s--jetty .feature h4 span {
  background: linear-gradient(0deg, #f2f9f0 50%, #f2f9f0 50%) left bottom -2px/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--jetty .feature h4 span {
      background: linear-gradient(0deg, #f2f9f0 50%, #f2f9f0 50%) left bottom 0/auto 5px repeat-x; } }

.s--jetty .feature h4 em {
  color: #41ab28; }

.s--jetty .point {
  border-color: #41ab28;
  box-shadow: 7px 7px 0 #f2f9f0; }
  .s--jetty .point p {
    background: #41ab28; }
  .s--jetty .point ul li:before {
    background-color: #41ab28; }

.s--jetty .bg-pattern, .s--jetty.bg-pattern {
  background-color: #f5fbf4;
  background-image: url(../images/garden-pier/common/front-bg-pattern.png);
  background-position: top left;
  background-size: 32px;
  background-repeat: repeat; }

.s--jetty .sec-part-title .large {
  position: relative; }
  .s--jetty .sec-part-title .large:before, .s--jetty .sec-part-title .large:after {
    content: '';
    width: 22px;
    height: 4px;
    background: url(../images/garden-pier/common/dots-green.svg) center/22px 44px no-repeat;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    @media only screen and (max-width: 767px) {
      .s--jetty .sec-part-title .large:before, .s--jetty .sec-part-title .large:after {
        width: 19px;
        height: 3px;
        background-size: 19px 3px; } }
  .s--jetty .sec-part-title .large:before {
    left: -42px; }
    @media only screen and (max-width: 767px) {
      .s--jetty .sec-part-title .large:before {
        left: -30px; } }
  .s--jetty .sec-part-title .large:after {
    right: -42px; }
    @media only screen and (max-width: 767px) {
      .s--jetty .sec-part-title .large:after {
        right: -30px; } }

.s--jetty .sec-part-title {
  color: #41ab28;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center; }

.s--jetty .content-title em {
  background: linear-gradient(0deg, rgba(65, 171, 40, 0.2) 50%, rgba(65, 171, 40, 0.2) 50%) left bottom/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--jetty .content-title em {
      background: linear-gradient(0deg, rgba(65, 171, 40, 0.2) 50%, rgba(65, 171, 40, 0.2) 50%) left bottom -2px/auto 8px repeat-x; } }

.s--jetty .content-title span {
  color: #41ab28; }

.s--jetty .btn-link {
  width: 100%;
  max-width: 320px;
  height: 56px;
  border: 1px solid #41ab28;
  border-radius: 28px;
  background: #41ab28;
  color: #FFF;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  position: relative;
  transition: all 0.3s; }
  @media only screen and (min-width: 768px) {
    .s--jetty .btn-link {
      padding-bottom: 2px; } }
  .s--jetty .btn-link _:lang(x)::-ms-backdrop, .s--jetty .btn-link {
    padding-top: 5px; }
  @media only screen and (max-width: 767px) {
    .s--jetty .btn-link {
      max-width: 275px;
      height: 40px;
      font-size: 13px;
      font-size: 1.3rem;
      margin: 0 auto; } }
  .s--jetty .btn-link:after {
    content: '';
    width: 5px;
    height: 5px;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    transform: translateY(-50%) rotateZ(-45deg);
    right: 30px;
    top: 50%;
    position: absolute;
    transition: all 0.3s; }
    @media only screen and (max-width: 767px) {
      .s--jetty .btn-link:after {
        width: 4px;
        height: 4px; } }
  .s--jetty .btn-link:hover {
    color: #41ab28;
    background-color: #FFF; }
    .s--jetty .btn-link:hover:after {
      border-color: #41ab28; }

.s--jetty section.front h3:before {
  background-image: url(../images/garden-pier/common/dots-green-l.svg); }

.s--jetty section.front h3:after {
  background-image: url(../images/garden-pier/common/dots-green-r.svg); }

.s--jetty .info-title {
  border-bottom-color: #41ab28;
  color: #41ab28; }

.s--jetty .sec-heading:before, .s--jetty .sec-heading:after {
  background-image: url(../images/garden-pier/common/dots-green.svg); }

.s--jetty .subheading {
  color: #41ab28;
  background-color: rgba(65, 171, 40, 0.2); }

.s--jetty .smallheading {
  color: #41ab28; }

.s--jetty .label-box .label {
  color: #41ab28;
  background: rgba(65, 171, 40, 0.2); }

.s--jetty .points li:before {
  background-color: #41ab28; }

.s--jetty .notes li a,
.s--jetty .points li a,
.s--jetty p a {
  color: #41ab28; }
  .s--jetty .notes li a span,
  .s--jetty .points li a span,
  .s--jetty p a span {
    border-color: #41ab28; }

.s--jetty .contact-box2 h4 {
  background: #41ab28; }

.s--jetty .contact-box2 p a {
  color: #41ab28; }
  .s--jetty .contact-box2 p a span {
    border-bottom-color: #41ab28; }

.s--jetty .front .wrapper {
  box-shadow: 7px 7px 0 rgba(65, 171, 40, 0.2); }
  .s--jetty .front .wrapper .decoration li:after {
    background-color: rgba(65, 171, 40, 0.2); }

.s--jetty .front h3 em {
  color: #41ab28; }

.s--jetty .front p em {
  background: linear-gradient(0deg, rgba(65, 171, 40, 0.2) 50%, rgba(65, 171, 40, 0.2) 50%) left bottom/auto 6px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--jetty .front p em {
      background: linear-gradient(0deg, rgba(65, 171, 40, 0.2) 50%, rgba(65, 171, 40, 0.2) 50%) left bottom/auto 6px repeat-x; } }

.s--port-house .feature h4 span {
  background: linear-gradient(0deg, #eaf7f9 50%, #eaf7f9 50%) left bottom -2px/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--port-house .feature h4 span {
      background: linear-gradient(0deg, #eaf7f9 50%, #eaf7f9 50%) left bottom 0/auto 5px repeat-x; } }

.s--port-house .feature h4 em {
  color: #2fb2c2; }

.s--port-house .point {
  border-color: #2fb2c2;
  box-shadow: 7px 7px 0 #eaf7f9; }
  .s--port-house .point p {
    background: #2fb2c2; }
  .s--port-house .point ul li:before {
    background-color: #2fb2c2; }

.s--port-house .bg-pattern, .s--port-house.bg-pattern {
  background-color: #f4fbfc;
  background-image: url(../images/garden-pier/common/front-bg-pattern.png);
  background-position: top left;
  background-size: 32px;
  background-repeat: repeat; }

.s--port-house .sec-part-title .large {
  position: relative; }
  .s--port-house .sec-part-title .large:before, .s--port-house .sec-part-title .large:after {
    content: '';
    width: 22px;
    height: 4px;
    background: url(../images/garden-pier/common/dots-teal.svg) center/22px 44px no-repeat;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    @media only screen and (max-width: 767px) {
      .s--port-house .sec-part-title .large:before, .s--port-house .sec-part-title .large:after {
        width: 19px;
        height: 3px;
        background-size: 19px 3px; } }
  .s--port-house .sec-part-title .large:before {
    left: -42px; }
    @media only screen and (max-width: 767px) {
      .s--port-house .sec-part-title .large:before {
        left: -30px; } }
  .s--port-house .sec-part-title .large:after {
    right: -42px; }
    @media only screen and (max-width: 767px) {
      .s--port-house .sec-part-title .large:after {
        right: -30px; } }

.s--port-house .sec-part-title {
  color: #2fb2c2;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center; }

.s--port-house .content-title em {
  background: linear-gradient(0deg, rgba(47, 178, 194, 0.2) 50%, rgba(47, 178, 194, 0.2) 50%) left bottom/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--port-house .content-title em {
      background: linear-gradient(0deg, rgba(47, 178, 194, 0.2) 50%, rgba(47, 178, 194, 0.2) 50%) left bottom -2px/auto 8px repeat-x; } }

.s--port-house .content-title span {
  color: #2fb2c2; }

.s--port-house .btn-link {
  width: 100%;
  max-width: 320px;
  height: 56px;
  border: 1px solid #2fb2c2;
  border-radius: 28px;
  background: #2fb2c2;
  color: #FFF;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  position: relative;
  transition: all 0.3s; }
  @media only screen and (min-width: 768px) {
    .s--port-house .btn-link {
      padding-bottom: 2px; } }
  .s--port-house .btn-link _:lang(x)::-ms-backdrop, .s--port-house .btn-link {
    padding-top: 5px; }
  @media only screen and (max-width: 767px) {
    .s--port-house .btn-link {
      max-width: 275px;
      height: 40px;
      font-size: 13px;
      font-size: 1.3rem;
      margin: 0 auto; } }
  .s--port-house .btn-link:after {
    content: '';
    width: 5px;
    height: 5px;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    transform: translateY(-50%) rotateZ(-45deg);
    right: 30px;
    top: 50%;
    position: absolute;
    transition: all 0.3s; }
    @media only screen and (max-width: 767px) {
      .s--port-house .btn-link:after {
        width: 4px;
        height: 4px; } }
  .s--port-house .btn-link:hover {
    color: #2fb2c2;
    background-color: #FFF; }
    .s--port-house .btn-link:hover:after {
      border-color: #2fb2c2; }

.s--port-house section.front h3:before {
  background-image: url(../images/garden-pier/common/dots-teal-l.svg); }

.s--port-house section.front h3:after {
  background-image: url(../images/garden-pier/common/dots-teal-r.svg); }

.s--port-house .info-title {
  border-bottom-color: #2fb2c2;
  color: #2fb2c2; }

.s--port-house .sec-heading:before, .s--port-house .sec-heading:after {
  background-image: url(../images/garden-pier/common/dots-teal.svg); }

.s--port-house .subheading {
  color: #2fb2c2;
  background-color: rgba(47, 178, 194, 0.2); }

.s--port-house .smallheading {
  color: #2fb2c2; }

.s--port-house .label-box .label {
  color: #2fb2c2;
  background: rgba(47, 178, 194, 0.2); }

.s--port-house .points li:before {
  background-color: #2fb2c2; }

.s--port-house .notes li a,
.s--port-house .points li a,
.s--port-house p a {
  color: #2fb2c2; }
  .s--port-house .notes li a span,
  .s--port-house .points li a span,
  .s--port-house p a span {
    border-color: #2fb2c2; }

.s--port-house .contact-box2 h4 {
  background: #2fb2c2; }

.s--port-house .contact-box2 p a {
  color: #2fb2c2; }
  .s--port-house .contact-box2 p a span {
    border-bottom-color: #2fb2c2; }

.s--port-house .front .wrapper {
  box-shadow: 7px 7px 0 rgba(47, 178, 194, 0.2); }
  .s--port-house .front .wrapper .decoration li:after {
    background-color: rgba(47, 178, 194, 0.2); }

.s--port-house .front h3 em {
  color: #2fb2c2; }

.s--port-house .front p em {
  background: linear-gradient(0deg, rgba(47, 178, 194, 0.2) 50%, rgba(47, 178, 194, 0.2) 50%) left bottom/auto 6px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--port-house .front p em {
      background: linear-gradient(0deg, rgba(47, 178, 194, 0.2) 50%, rgba(47, 178, 194, 0.2) 50%) left bottom/auto 6px repeat-x; } }

.s--harbor-lodge .feature h4 span {
  background: linear-gradient(0deg, #faedf2 50%, #faedf2 50%) left bottom -2px/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--harbor-lodge .feature h4 span {
      background: linear-gradient(0deg, #faedf2 50%, #faedf2 50%) left bottom 0/auto 5px repeat-x; } }

.s--harbor-lodge .feature h4 em {
  color: #d04d82; }

.s--harbor-lodge .point {
  border-color: #d04d82;
  box-shadow: 7px 7px 0 #faedf2; }
  .s--harbor-lodge .point p {
    background: #d04d82; }
  .s--harbor-lodge .point ul li:before {
    background-color: #d04d82; }

.s--harbor-lodge .bg-pattern, .s--harbor-lodge.bg-pattern {
  background-color: #fdf6f9;
  background-image: url(../images/garden-pier/common/front-bg-pattern.png);
  background-position: top left;
  background-size: 32px;
  background-repeat: repeat; }

.s--harbor-lodge .sec-part-title .large {
  position: relative; }
  .s--harbor-lodge .sec-part-title .large:before, .s--harbor-lodge .sec-part-title .large:after {
    content: '';
    width: 22px;
    height: 4px;
    background: url(../images/garden-pier/common/dots-pink.svg) center/22px 44px no-repeat;
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%); }
    @media only screen and (max-width: 767px) {
      .s--harbor-lodge .sec-part-title .large:before, .s--harbor-lodge .sec-part-title .large:after {
        width: 19px;
        height: 3px;
        background-size: 19px 3px; } }
  .s--harbor-lodge .sec-part-title .large:before {
    left: -42px; }
    @media only screen and (max-width: 767px) {
      .s--harbor-lodge .sec-part-title .large:before {
        left: -30px; } }
  .s--harbor-lodge .sec-part-title .large:after {
    right: -42px; }
    @media only screen and (max-width: 767px) {
      .s--harbor-lodge .sec-part-title .large:after {
        right: -30px; } }

.s--harbor-lodge .sec-part-title {
  color: #d04d82;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.05em;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  -webkit-align-items: center;
  align-items: center; }

.s--harbor-lodge .content-title em {
  background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--harbor-lodge .content-title em {
      background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom -2px/auto 8px repeat-x; } }

.s--harbor-lodge .content-title span {
  color: #d04d82; }

.s--harbor-lodge .btn-link {
  width: 100%;
  max-width: 320px;
  height: 56px;
  border: 1px solid #d04d82;
  border-radius: 28px;
  background: #d04d82;
  color: #FFF;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  position: relative;
  transition: all 0.3s; }
  @media only screen and (min-width: 768px) {
    .s--harbor-lodge .btn-link {
      padding-bottom: 2px; } }
  .s--harbor-lodge .btn-link _:lang(x)::-ms-backdrop, .s--harbor-lodge .btn-link {
    padding-top: 5px; }
  @media only screen and (max-width: 767px) {
    .s--harbor-lodge .btn-link {
      max-width: 275px;
      height: 40px;
      font-size: 13px;
      font-size: 1.3rem;
      margin: 0 auto; } }
  .s--harbor-lodge .btn-link:after {
    content: '';
    width: 5px;
    height: 5px;
    border-right: 2px solid #FFF;
    border-bottom: 2px solid #FFF;
    transform: translateY(-50%) rotateZ(-45deg);
    right: 30px;
    top: 50%;
    position: absolute;
    transition: all 0.3s; }
    @media only screen and (max-width: 767px) {
      .s--harbor-lodge .btn-link:after {
        width: 4px;
        height: 4px; } }
  .s--harbor-lodge .btn-link:hover {
    color: #d04d82;
    background-color: #FFF; }
    .s--harbor-lodge .btn-link:hover:after {
      border-color: #d04d82; }

.s--harbor-lodge section.front h3:before {
  background-image: url(../images/garden-pier/common/dots-pink-l.svg); }

.s--harbor-lodge section.front h3:after {
  background-image: url(../images/garden-pier/common/dots-pink-r.svg); }

.s--harbor-lodge .info-title {
  border-bottom-color: #d04d82;
  color: #d04d82; }

.s--harbor-lodge .sec-heading:before, .s--harbor-lodge .sec-heading:after {
  background-image: url(../images/garden-pier/common/dots-pink.svg); }

.s--harbor-lodge .subheading {
  color: #d04d82;
  background-color: rgba(208, 77, 130, 0.15); }

.s--harbor-lodge .smallheading {
  color: #d04d82; }

.s--harbor-lodge .label-box .label {
  color: #d04d82;
  background: rgba(208, 77, 130, 0.15); }

.s--harbor-lodge .points li:before {
  background-color: #d04d82; }

.s--harbor-lodge .notes li a,
.s--harbor-lodge .points li a,
.s--harbor-lodge p a {
  color: #d04d82; }
  .s--harbor-lodge .notes li a span,
  .s--harbor-lodge .points li a span,
  .s--harbor-lodge p a span {
    border-color: #d04d82; }

.s--harbor-lodge .contact-box2 h4 {
  background: #d04d82; }

.s--harbor-lodge .contact-box2 p a {
  color: #d04d82; }
  .s--harbor-lodge .contact-box2 p a span {
    border-bottom-color: #d04d82; }

.s--harbor-lodge .front .wrapper {
  box-shadow: 7px 7px 0 rgba(208, 77, 130, 0.15); }
  .s--harbor-lodge .front .wrapper .decoration li:after {
    background-color: rgba(208, 77, 130, 0.15); }

.s--harbor-lodge .front h3 em {
  color: #d04d82; }

.s--harbor-lodge .front p em {
  background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom/auto 6px repeat-x; }
  @media only screen and (max-width: 767px) {
    .s--harbor-lodge .front p em {
      background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom/auto 6px repeat-x; } }

.company-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  .company-list__top > li {
    width: 100% !important;
    margin: 0 0 45px 0 !important; }
    @media only screen and (max-width: 767px) {
      .company-list__top > li {
        margin: 0 0 25px 0 !important; }
        .company-list__top > li .name {
          text-align: center !important; } }
  @media only screen and (min-width: 768px) {
    .company-list > li {
      width: calc((100% - 40px) / 3);
      margin-left: 20px;
      margin-top: 50px; }
      .company-list > li:nth-child(-n + 3) {
        margin-top: 0; }
      .company-list > li:nth-child(3n + 1) {
        margin-left: 0; } }
  @media only screen and (max-width: 767px) {
    .company-list > li {
      width: calc((100% - 5px) / 2);
      margin-left: 5px;
      margin-top: 25px; }
      .company-list > li:nth-child(-n + 2) {
        margin-top: 0; }
      .company-list > li:nth-child(2n + 1) {
        margin-left: 0; } }
  .company-list > li .img-box {
    display: inline-block;
    margin-bottom: 7px;
    width: 100%;
    background-color: white;
    padding-bottom: 31.25%;
    position: relative;
    display: block; }
    @media only screen and (max-width: 767px) {
      .company-list > li .img-box:after {
        content: '';
        width: 10px;
        height: 10px;
        background-image: url("../images/common/linkb.svg");
        background-size: 10px 10px;
        background-repeat: no-repeat;
        position: absolute;
        right: 5px;
        top: 5px; } }
    .company-list > li .img-box img {
      margin: 0 auto;
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      transform: translateY(-50%); }
    @media only screen and (min-width: 768px) {
      .company-list > li .img-boxa:hover {
        box-shadow: 0 0 15px #cce5ef; } }
    @media only screen and (max-width: 767px) {
      .company-list > li .img-box[target="_blank"] {
        position: relative; } }
  .company-list > li .name {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5em;
    text-align: center;
    text-align: left;
    display: inline-block; }
    @media only screen and (min-width: 768px) {
      .company-list > li .name:after {
        content: '';
        width: 10px;
        height: 10px;
        background-image: url("../images/common/linkb.svg");
        background-size: 10px 10px;
        background-repeat: no-repeat;
        position: relative;
        display: inline-block;
        margin-left: 5px; } }
    @media only screen and (max-width: 767px) {
      .company-list > li .name {
        font-size: 12.5px;
        font-size: 1.25rem;
        line-height: 1.283em;
        letter-spacing: 0.05em;
        padding: 0 5px;
        width: 100%; } }
    @media only screen and (min-width: 768px) {
      .company-list > li .namea:hover {
        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s; }
        .company-list > li .namea:hover:hover {
          opacity: 0.7; } }
    .company-list > li .name[target="_blank"] {
      position: relative; }
      @media only screen and (min-width: 768px) {
        .company-list > li .name[target="_blank"].special-line .icon {
          display: inline-block;
          margin-left: 7px;
          position: relative;
          top: -5px;
          width: 10px; }
        .company-list > li .name[target="_blank"].special-line:after {
          display: none; } }

.contact-box {
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s;
  border-radius: 5px;
  padding: 30px 50px;
  line-height: 1.846153846em;
  font-size: 14px;
  font-size: 1.4rem; }
  .contact-boxa:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    .contact-box {
      padding: 20px 23px 25px; } }
  .contact-box p {
    margin: 10px 0; }
  .contact-box .contact-box__title {
    text-align: left;
    display: block;
    margin-top: 0;
    margin-bottom: 7px;
    font-weight: bold; }
  .contact-box .space-contact-box1 {
    display: block;
    margin-bottom: 14px; }
  .contact-box .space-contact-box2 {
    display: block;
    margin-bottom: 11px; }
  .contact-box__subtitle {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    text-align: left;
    display: block;
    margin-bottom: 1px;
    font-weight: bold;
    padding-left: 19px;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .contact-box__subtitle {
        font-size: 14px;
        font-size: 1.4rem;
        padding-left: 10px;
        margin-bottom: 7px; } }
    .contact-box__subtitle:before {
      background-color: #1c4e6a;
      border-radius: 50%;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      top: 10px;
      height: 6px;
      width: 6px; }
      @media only screen and (max-width: 767px) {
        .contact-box__subtitle:before {
          height: 4px;
          width: 4px; } }
  .contact-box__text a {
    color: #0095a1;
    border-bottom: #0095a1 solid 1px;
    font-weight: bold;
    padding-bottom: 3px; }
    @media only screen and (min-width: 768px) {
      .contact-box__text a {
        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s; }
        .contact-box__text a:hover {
          opacity: 0.7; } }
  .contact-box__note {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.833333333em;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .contact-box__note {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.636363636em;
        margin-top: 10px; } }
  .contact-box ul {
    margin-top: 10px; }
    .contact-box ul[style*="list-style-type: circle;"], .contact-box ul[style*="list-style-type: square;"], .contact-box ul[style*="list-style-type: disc;"] {
      padding-left: 19px; }
    .contact-box ul li {
      text-align: left;
      margin-bottom: 5px;
      font-size: 12px;
      font-size: 1.2rem;
      line-height: 1.833333333em;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        .contact-box ul li {
          font-size: 11px;
          font-size: 1.1rem;
          line-height: 1.636363636em; } }

.contact-box02 {
  border: #d9e7ef solid 1px;
  border-radius: 5px;
  background-color: #FFF; }
  @media only screen and (min-width: 768px) {
    .contact-box02 {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      padding: 20px 0; }
      .contact-box02:hover {
        box-shadow: 0 0 15px #cce5ef; } }
  @media only screen and (max-width: 767px) {
    .contact-box02 {
      display: block;
      padding: 17px 15px 20px; } }
  .contact-box02__title {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    text-align: center;
    width: 28%;
    height: 60px;
    border-right: #d9e7ef solid 1px;
    padding-top: 17px; }
    @media all and (-ms-high-contrast: none) {
      .contact-box02__title {
        padding-top: 22px; } }
    @media only screen and (max-width: 767px) {
      .contact-box02__title {
        display: block;
        font-size: 17px;
        font-size: 1.7rem;
        width: 100%;
        height: auto;
        padding: 0 0 12px;
        border-right: none;
        border-bottom: #d9e7ef solid 1px; } }
  @media only screen and (min-width: 768px) {
    .contact-box02 > div {
      width: 72%;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      padding-left: 6%;
      padding-right: 2%; } }
  @media only screen and (max-width: 767px) {
    .contact-box02 > div {
      text-align: center; } }
  .contact-box02 > div p {
    font-weight: 500; }
    @media only screen and (min-width: 768px) {
      .contact-box02 > div p {
        padding-right: 50px; } }
    @media only screen and (max-width: 767px) {
      .contact-box02 > div p {
        text-align: center;
        padding: 15px 0; } }
  .contact-box02 > div span {
    flex-shrink: 0;
    font-size: 30px;
    font-size: 3rem;
    letter-spacing: 0.05em;
    font-family: "Oswald", sans-serif;
    font-weight: 300; }
    .contact-box02 > div span img {
      width: 21px;
      margin-right: 10px; }
      @media only screen and (max-width: 767px) {
        .contact-box02 > div span img {
          width: 17px;
          margin-right: 5px; } }
    @media only screen and (max-width: 767px) {
      .contact-box02 > div span {
        font-size: 24px;
        font-size: 2.4rem;
        text-align: center; } }
    .contact-box02 > div span span {
      font-size: 18px;
      font-size: 1.8rem;
      font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
      @media only screen and (max-width: 767px) {
        .contact-box02 > div span span {
          font-size: 15px;
          font-size: 1.5rem; } }

.detour-box {
  padding: 40px 60px;
  border: #bee2e5 solid 5px;
  border-radius: 5px;
  overflow: hidden;
  display: -webkit-flex;
  display: flex;
  margin: 20px 0;
  background-color: #FFF; }
  @media only screen and (max-width: 767px) {
    .detour-box {
      padding: 30px 25px 25px;
      border: #bee2e5 solid 4px;
      display: block; } }
  .detour-box.typeB {
    display: block; }
    .detour-box.typeB .detour-box__top {
      display: -webkit-flex;
      display: flex;
      padding-bottom: 25px; }
      @media only screen and (max-width: 767px) {
        .detour-box.typeB .detour-box__top {
          display: block;
          padding-bottom: 15px; } }
    .detour-box.typeB .detour-box__bottom {
      border-top: #d9e7ef solid 1px; }
      .detour-box.typeB .detour-box__bottom p {
        text-align: center;
        margin: 18px 0 22px; }
        @media only screen and (max-width: 767px) {
          .detour-box.typeB .detour-box__bottom p {
            text-align: left;
            margin: 15px 0 15px; } }
        .detour-box.typeB .detour-box__bottom p:last-child {
          margin-bottom: 0; }
  .detour-box figcaption {
    width: 71%;
    padding-right: 50px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .detour-box figcaption {
        width: 100%;
        padding-right: 0; } }
    .detour-box figcaption span {
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: 0.1em;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .detour-box figcaption span {
          font-size: 12px;
          font-size: 1.2rem; } }
      .detour-box figcaption span em {
        color: #0095a1; }
      .detour-box figcaption span:after {
        content: '';
        width: 20px;
        height: 20px;
        position: absolute;
        background-image: url(../images/common/detour-icon.svg);
        background-repeat: no-repeat;
        background-size: 20px 20px;
        background-position: center;
        right: -19px;
        top: -10px; }
        @media only screen and (max-width: 767px) {
          .detour-box figcaption span:after {
            width: 12.5px;
            height: 12.5px;
            background-size: 12.5px 12.5px;
            top: -7px;
            right: -10px; } }
    .detour-box figcaption h4 {
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.4em;
      letter-spacing: 0.1em;
      color: #0095a1;
      padding: 10px;
      width: 100%;
      background-size: auto auto;
      background-color: rgba(0, 153, 153, 0.08);
      background-image: repeating-linear-gradient(-45deg, transparent, transparent 6px, rgba(0, 149, 161, 0.08) 6px, rgba(0, 149, 161, 0.08) 12px);
      position: relative;
      margin: 15px 0 20px; }
      @media only screen and (max-width: 767px) {
        .detour-box figcaption h4 {
          background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(0, 149, 161, 0.08) 4px, rgba(0, 149, 161, 0.08) 8px); } }
      @media all and (-ms-high-contrast: none) {
        .detour-box figcaption h4 {
          padding-top: 13px; } }
      @media only screen and (max-width: 767px) {
        .detour-box figcaption h4 {
          font-size: 17px;
          font-size: 1.7rem;
          line-height: 1.411764706em;
          padding: 7px;
          margin: 10px 0 15px; } }
      .detour-box figcaption h4:before, .detour-box figcaption h4:after {
        content: '';
        width: 10px;
        height: 100%;
        background-repeat: no-repeat;
        background-size: auto 100%;
        background-position: center;
        position: absolute;
        top: 0; }
        @media all and (-ms-high-contrast: none) {
          .detour-box figcaption h4:before, .detour-box figcaption h4:after {
            width: 14px; } }
      .detour-box figcaption h4:before {
        background-image: url(../images/common/detour-bg-left.svg);
        left: 0; }
      .detour-box figcaption h4:after {
        background-image: url(../images/common/detour-bg-right.svg);
        right: 0; }
      @media only screen and (max-width: 767px) {
        .detour-box figcaption h4.typeB:before, .detour-box figcaption h4.typeB:after {
          width: 5px; }
        .detour-box figcaption h4.typeB:before {
          background-image: url(../images/common/detour-bg-left_sp.svg); }
        .detour-box figcaption h4.typeB:after {
          background-image: url(../images/common/detour-bg-right_sp.svg); } }
  .detour-box__img {
    width: 29%; }
    @media only screen and (max-width: 767px) {
      .detour-box__img {
        width: 100%;
        margin-bottom: 15px; } }

.dot-list > li {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.866666667em;
  letter-spacing: 0.05em;
  position: relative;
  padding-left: 16px; }
  @media only screen and (max-width: 767px) {
    .dot-list > li {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.714285714em;
      padding-left: 10px; } }
  .dot-list > li:before {
    content: '';
    width: 6px;
    height: 6px;
    background-color: #1c4e6a;
    border-radius: 50%;
    position: absolute;
    top: 12px;
    left: 0; }
    @media only screen and (max-width: 767px) {
      .dot-list > li:before {
        width: 4px;
        height: 4px; } }

.enjoy-box {
  position: relative; }
  .enjoy-box.typeA:before, .enjoy-box.typeA:after {
    content: " ";
    display: table; }
  .enjoy-box.typeA:after {
    clear: both; }
  .enjoy-box .inner {
    position: relative; }
  .enjoy-box__contents {
    background-color: #FFF; }
    @media only screen and (min-width: 768px) {
      .typeB .enjoy-box__contents, .typeC .enjoy-box__contents {
        width: 540px; }
      .typeC .enjoy-box__contents {
        margin: 0 0 0 auto; } }
    @media all and (-ms-high-contrast: none) {
      .typeB .enjoy-box__contents, .typeC .enjoy-box__contents {
        width: 520px; } }
  .enjoy-box__title {
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.2em;
    letter-spacing: 0.1em;
    color: #0095a1;
    padding: 12px 10px;
    max-width: 480px;
    width: 100%;
    background-size: auto auto;
    background-color: rgba(0, 153, 153, 0.08);
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 6px, rgba(0, 149, 161, 0.08) 6px, rgba(0, 149, 161, 0.08) 12px);
    position: relative;
    margin: 0 0 30px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .enjoy-box__title {
        background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(0, 149, 161, 0.08) 4px, rgba(0, 149, 161, 0.08) 8px); } }
    @media all and (-ms-high-contrast: none) {
      .enjoy-box__title {
        padding: 20px 10px 2px; } }
    @media only screen and (max-width: 767px) {
      .enjoy-box__title {
        max-width: inherit;
        font-size: 18px;
        font-size: 1.8rem;
        padding: 10px;
        margin: 0 0 20px; } }
    .enjoy-box__title:before, .enjoy-box__title:after {
      content: '';
      width: 10px;
      height: 100%;
      background-repeat: no-repeat;
      background-size: auto 100%;
      background-position: center;
      position: absolute;
      top: 0; }
      @media all and (-ms-high-contrast: none) {
        .enjoy-box__title:before, .enjoy-box__title:after {
          width: 17px; } }
    .enjoy-box__title:before {
      background-image: url(../images/common/detour-bg-left.svg);
      left: 0; }
    .enjoy-box__title:after {
      background-image: url(../images/common/detour-bg-right.svg);
      right: 0; }
    @media only screen and (min-width: 768px) {
      .typeA .enjoy-box__title {
        margin-bottom: 20px; } }
    @media only screen and (min-width: 768px) {
      .typeC .enjoy-box__title {
        margin-left: 60px; } }
  .enjoy-box__speech {
    position: absolute;
    z-index: 22; }
  .enjoy-box__mv {
    position: relative;
    z-index: 20; }
    @media only screen and (max-width: 767px) {
      .enjoy-box__mv {
        z-index: 0; } }
    .typeA .enjoy-box__mv {
      border-radius: 5px; }
    @media only screen and (min-width: 768px) {
      .typeB .enjoy-box__mv, .typeC .enjoy-box__mv {
        width: calc(((100vw - 1000px) / 2) + 455px);
        height: 450px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        position: absolute;
        top: 0; } }
    @media only screen and (max-width: 1060px) {
      .typeB .enjoy-box__mv, .typeC .enjoy-box__mv {
        width: calc(100vw - (540px + 30px)); } }
    @media only screen and (max-width: 767px) {
      .typeB .enjoy-box__mv, .typeC .enjoy-box__mv {
        width: 100%;
        border-radius: 5px; } }
    @media only screen and (min-width: 768px) {
      .typeB .enjoy-box__mv {
        right: 0;
        border-radius: 5px 0px 0px 5px; } }
    @media only screen and (min-width: 768px) {
      .typeC .enjoy-box__mv {
        left: 0;
        border-radius: 0 5px 5px 0; } }
  .enjoy-box__floor, .enjoy-box02__img figcaption {
    font-size: 13px;
    font-size: 1.3rem;
    color: #0095a1;
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s;
    border-radius: 5px;
    min-width: 120px;
    display: inline-block;
    text-align: center;
    padding: 5px 17px;
    position: absolute;
    left: 10px;
    bottom: 10px; }
    .enjoy-box__floora:hover {
      background-position: right center; }
    @media all and (-ms-high-contrast: none) {
      .enjoy-box__floor, .enjoy-box02__img figcaption {
        padding: 8px 17px 2px; } }
    @media only screen and (max-width: 767px) {
      .enjoy-box__floor, .enjoy-box02__img figcaption {
        font-size: 10px;
        font-size: 1rem;
        min-width: 90px;
        padding: 4px 15px; } }
    @media only screen and (min-width: 768px) {
      .typeC .enjoy-box__floor, .typeC .enjoy-box02__img figcaption, .enjoy-box02__img .typeC figcaption {
        left: auto;
        right: 10px; } }
  .enjoy-box__text {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 2em;
    text-align: left; }
    @media only screen and (min-width: 768px) and (max-width: 1060px) {
      .enjoy-box__text {
        font-size: 12px;
        font-size: 1.2rem; } }
    @media only screen and (max-width: 767px) {
      .enjoy-box__text {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.714285714em;
        margin-top: 15px; } }
    @media only screen and (min-width: 768px) {
      .typeA .enjoy-box__text {
        padding: 30px 0 0 30px;
        float: left; } }
    @media only screen and (min-width: 768px) {
      .typeC .enjoy-box__text {
        margin-left: 60px; } }
  .enjoy-box__img {
    position: relative;
    z-index: 21; }
    @media only screen and (max-width: 767px) {
      .enjoy-box__img {
        margin-top: 20px; } }
    @media only screen and (min-width: 768px) {
      .typeA .enjoy-box__img {
        float: right; } }
    @media only screen and (min-width: 768px) and (max-width: 1060px) {
      .typeA .enjoy-box__img {
        max-width: 300px !important; } }
  .enjoy-box__dotted, .enjoy-box02__dotted {
    position: absolute;
    z-index: 15;
    width: 100%; }

.enjoy-box02 {
  position: relative; }
  .enjoy-box02 .inner {
    position: relative; }
  .enjoy-box02__heading {
    margin: 0 0 10px 25px; }
    @media only screen and (max-width: 767px) {
      .enjoy-box02__heading {
        margin: 0 0 10px 0;
        order: 1; } }
  .enjoy-box02__speech {
    position: absolute;
    z-index: 22; }
  .enjoy-box02__box {
    position: relative; }
    @media only screen and (max-width: 767px) {
      .enjoy-box02__box {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column;
        flex-direction: column;
        padding: 28px 25px 23px; } }
    .enjoy-box02__box:after {
      content: '';
      background-size: auto auto;
      background-color: rgba(0, 153, 153, 0.08);
      background-image: repeating-linear-gradient(-45deg, transparent, transparent 6px, rgba(0, 149, 161, 0.08) 6px, rgba(0, 149, 161, 0.08) 12px);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      padding: 8px;
      z-index: -10;
      border-radius: 10px; }
      @media only screen and (max-width: 767px) {
        .enjoy-box02__box:after {
          background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(0, 149, 161, 0.08) 4px, rgba(0, 149, 161, 0.08) 8px); } }
      @media only screen and (max-width: 767px) {
        .enjoy-box02__box:after {
          padding: 5px;
          border-radius: 5px; } }
    .enjoy-box02__box:before {
      content: '';
      background-color: #FFF;
      position: absolute;
      right: 8px;
      bottom: 8px;
      left: 8px;
      top: 8px;
      z-index: -9; }
      @media only screen and (max-width: 767px) {
        .enjoy-box02__box:before {
          right: 5px;
          bottom: 5px;
          left: 5px;
          top: 5px; } }
    @media only screen and (min-width: 768px) {
      .enjoy-box02__box .ttl-02 {
        width: calc(100% - 60px); } }
    @media only screen and (max-width: 767px) {
      .enjoy-box02__box .ttl-02 {
        margin-bottom: 20px; } }
  .enjoy-box02__left {
    padding: 40px 0 40px 60px;
    position: relative;
    width: calc(100% - 480px); }
    @media only screen and (min-width: 768px) and (max-width: 1060px) {
      .enjoy-box02__left {
        width: calc(100% - 260px) !important; } }
    @media only screen and (max-width: 767px) {
      .enjoy-box02__left {
        order: 3;
        padding: 0;
        width: auto !important; } }
  .enjoy-box02__text {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    line-height: 2em;
    margin-top: 30px; }
    @media only screen and (min-width: 768px) and (max-width: 1060px) {
      .enjoy-box02__text {
        font-size: 12px;
        font-size: 1.2rem; } }
    @media only screen and (max-width: 767px) {
      .enjoy-box02__text {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.714285714em;
        margin-top: 15px; } }
  .enjoy-box02__subimg {
    position: absolute;
    right: 0;
    bottom: 0; }
  @media only screen and (min-width: 768px) {
    .enjoy-box02__img {
      max-width: 420px;
      position: absolute;
      top: 50%;
      right: 60px;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      transform: translateY(-50%); } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    .enjoy-box02__img {
      max-width: 200px !important; } }
  @media only screen and (max-width: 767px) {
    .enjoy-box02__img {
      position: relative;
      order: 2; } }
  .enjoy-box02__img figcaption {
    left: auto;
    right: 20px;
    bottom: 20px; }
    @media only screen and (max-width: 767px) {
      .enjoy-box02__img figcaption {
        right: auto;
        left: 15px;
        bottom: 15px; } }

.enjoy-point {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 140px 0; }
  @media only screen and (max-width: 767px) {
    .enjoy-point {
      padding: 70px 0 80px; } }
  @media only screen and (min-width: 768px) {
    .enjoy-point > li {
      width: calc((100% - 40px) / 3);
      margin-left: 20px;
      margin-top: 50px;
      border-radius: 10px; }
      .enjoy-point > li:nth-child(-n + 3) {
        margin-top: 0; }
      .enjoy-point > li:nth-child(3n + 1) {
        margin-left: 0; } }
  @media only screen and (max-width: 767px) {
    .enjoy-point > li {
      width: 100%;
      margin-top: 10px;
      border-radius: 5px; }
      .enjoy-point > li:nth-child(-n + 1) {
        margin-top: 15px; } }
  .enjoy-point__heading {
    position: relative;
    border: #d9e7ef solid 1px;
    padding: 30px 30px 80px 40px; }
    @media only screen and (max-width: 767px) {
      .enjoy-point__heading {
        min-height: 120px;
        padding: 20px 0 0 25px; } }
    .enjoy-point__heading h3 {
      font-size: 20px;
      font-size: 2rem;
      letter-spacing: 0.1em;
      line-height: 1.5em;
      position: relative;
      z-index: 5; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__heading h3 {
          font-size: 17px;
          font-size: 1.7rem;
          font-weight: 500;
          line-height: 1.617647059em; } }
      .enjoy-point__heading h3 em {
        color: #0095a1; }
    .enjoy-point__heading__img01 {
      width: 110px;
      position: absolute;
      left: 0;
      bottom: 10px; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__heading__img01 {
          width: 85px;
          bottom: 5px;
          left: 2px; } }
    .enjoy-point__heading__img02 {
      width: 90px;
      position: absolute;
      bottom: -5px;
      right: -10px;
      z-index: 1; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__heading__img02 {
          width: 80px;
          bottom: -8px;
          right: -5px; } }
      .enjoy-point__heading__img02:after {
        content: '';
        width: 23px;
        height: 17px;
        background-image: url(../images/common/icon-dash3.svg);
        background-repeat: no-repeat;
        background-size: 23px 17px;
        background-position: center;
        -webkit-transform: scale(-1, 1) rotate(-10deg);
        -moz-transform: scale(-1, 1) rotate(-10deg);
        -ms-transform: scale(-1, 1) rotate(-10deg);
        -o-transform: scale(-1, 1) rotate(-10deg);
        transform: scale(-1, 1) rotate(-10deg);
        position: absolute;
        top: -16px;
        left: 27px; }
        @media only screen and (max-width: 767px) {
          .enjoy-point__heading__img02:after {
            width: 14px;
            height: 14px;
            -webkit-transform: rotate(-10deg);
            -moz-transform: rotate(-10deg);
            -ms-transform: rotate(-10deg);
            -o-transform: rotate(-10deg);
            transform: rotate(-10deg);
            top: -13px;
            left: auto;
            right: 18px;
            background-size: 14px 14px; } }
    .enjoy-point__heading__text {
      width: 170px;
      position: absolute;
      bottom: 10px;
      right: 40px; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__heading__text {
          width: 120px;
          bottom: 5px;
          right: 60px; } }
    .enjoy-point__heading__bg {
      position: absolute;
      left: 10px;
      right: 10px;
      bottom: 10px;
      top: 10px;
      z-index: -1;
      background-image: url(../images/common/enjoy-bg.jpg);
      background-size: 100% auto;
      background-position: center; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__heading__bg {
          left: 5px;
          right: 5px;
          bottom: 5px;
          top: 5px; } }
  .enjoy-point__detail {
    position: relative;
    padding: 30px 30px; }
    @media only screen and (max-width: 767px) {
      .enjoy-point__detail {
        padding: 20px 25px; } }
    .enjoy-point__detail.typeB {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail.typeB .enjoy-point__detail__point {
          top: 50%; } }
    .enjoy-point__detail__point {
      text-align: center;
      font-family: "Montserrat", sans-serif;
      font-weight: 500;
      position: absolute;
      left: 50%;
      top: -20px;
      -webkit-transform: translateX(-50%);
      -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      -o-transform: translateX(-50%);
      transform: translateX(-50%); }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail__point {
          left: 25px;
          top: calc(50% - 25px);
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%); } }
      .enjoy-point__detail__point span {
        font-size: 12px;
        font-size: 1.2rem;
        display: block; }
      .enjoy-point__detail__point em {
        font-size: 30px;
        font-size: 3rem;
        font-family: "Montserrat", sans-serif;
        display: block;
        color: #0095a1; }
    .enjoy-point__detail__text {
      background-color: #FFF;
      background-image: linear-gradient(90deg, rgba(255, 246, 230, 0) 0%, rgba(255, 246, 230, 0) 50%, #FFF 0%, #FFF 100%), linear-gradient(180deg, rgba(237, 119, 128, 0) 0%, rgba(237, 119, 128, 0) 95%, #0095a1 100%);
      background-size: 6px 100%,100% 2.65em;
      padding-bottom: 20px;
      overflow: hidden;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail__text {
          width: calc(100% - 50px);
          margin: 0 0 0 auto;
          background-size: 6px 100%,100% 2.2em;
          padding-bottom: 13px;
          padding-left: 0.5em;
          overflow: visible; }
          .enjoy-point__detail__text:after {
            content: '';
            height: 2px;
            position: absolute;
            width: 100%;
            top: -1px;
            left: 0;
            background: #fff; } }
    .enjoy-point__detail p {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 2.25em;
      letter-spacing: 0.05em;
      text-align: center; }
      @media only screen and (max-width: 1000px) {
        .enjoy-point__detail p {
          text-align: left; } }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail p {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 2.142857143em;
          letter-spacing: 0em; } }
      @media only screen and (max-width: 1060px) {
        .enjoy-point__detail p .br {
          display: none; } }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail p .br {
          display: block; } }
      .enjoy-point__detail p em {
        color: #0095a1; }
    .enjoy-point__detail .btn {
      height: 50px; }
      @media only screen and (max-width: 900px) {
        .enjoy-point__detail .btn span {
          font-size: 11px;
          font-size: 1.1rem; } }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail .btn {
          height: 40px; }
          .enjoy-point__detail .btn span {
            font-size: 13px;
            font-size: 1.3rem; } }
    .enjoy-point__detail__bg {
      background-size: auto auto;
      background-color: rgba(0, 153, 153, 0.08);
      background-image: repeating-linear-gradient(-45deg, transparent, transparent 6px, rgba(0, 149, 161, 0.08) 6px, rgba(0, 149, 161, 0.08) 12px);
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      padding: 8px;
      z-index: -1;
      border-radius: 10px; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail__bg {
          background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(0, 149, 161, 0.08) 4px, rgba(0, 149, 161, 0.08) 8px); } }
      .enjoy-point__detail__bg:before {
        content: '';
        background-color: #FFF;
        position: absolute;
        right: 10px;
        bottom: 10px;
        left: 10px;
        top: 10px; }
        @media only screen and (max-width: 767px) {
          .enjoy-point__detail__bg:before {
            right: 5px;
            bottom: 5px;
            left: 5px;
            top: 5px; } }
    .enjoy-point__detail__sns {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      padding-top: 10px; }
      @media only screen and (max-width: 767px) {
        .enjoy-point__detail__sns {
          padding-top: 5px;
          width: calc(100% - 50px);
          margin-left: auto; } }
      .enjoy-point__detail__sns > a {
        display: inline-block;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        border: #d9e7ef solid 1px;
        margin-left: 10px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center; }
        @media only screen and (min-width: 768px) {
          .enjoy-point__detail__sns > a:hover {
            box-shadow: 0 0 15px #cce5ef; } }
        .enjoy-point__detail__sns > a:nth-child(-n + 1) {
          margin-left: 0; }
        .enjoy-point__detail__sns > a:nth-child(1) img {
          width: 11px; }
        .enjoy-point__detail__sns > a:nth-child(2) img {
          width: 20px; }
        .enjoy-point__detail__sns > a:nth-child(3) img {
          width: 20px; }

.event-modal {
  position: fixed;
  z-index: 9999;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: none; }
  .event-modal__center {
    text-align: center; }
    @media only screen and (min-width: 768px) {
      .event-modal__center {
        padding-right: 0 !important; } }
  .event-modal__title {
    color: #fff;
    padding: 8px 0;
    padding-left: 40px;
    border-radius: 6px;
    margin-top: 25px; }
    @media only screen and (max-width: 767px) {
      .event-modal__title {
        padding-left: 15px;
        border-radius: 4px; } }
    .event-modal__title > a {
      align-items: center; }
      .event-modal__title > a > span {
        display: block;
        width: 45px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          .event-modal__title > a > span {
            order: 2;
            position: relative;
            top: 8px;
            right: 2px; } }
        .event-modal__title > a > span:before {
          content: "";
          width: 26px;
          height: 26px;
          position: absolute;
          top: 0;
          bottom: 0;
          right: 15px;
          margin: auto;
          background: #fff;
          border-radius: 26px; }
        .event-modal__title > a > span:after {
          content: "";
          width: 6px;
          height: 6px;
          border-top: 2px solid #fff;
          border-right: 2px solid #fff;
          position: absolute;
          top: 0;
          bottom: 0;
          right: 26px;
          margin: auto;
          -webkit-transform: rotate(45deg);
          -moz-transform: rotate(45deg);
          -ms-transform: rotate(45deg);
          -o-transform: rotate(45deg);
          transform: rotate(45deg); }
    .event-modal__title.orange {
      background: #da5019; }
      .event-modal__title.orange span:after {
        border-color: #da5019; }
    .event-modal__title.blue {
      background: #007fb1; }
      .event-modal__title.blue span:after {
        border-color: #007fb1; }
    .event-modal__title.yellow {
      background: #e7a800; }
      .event-modal__title.yellow span:after {
        border-color: #e7a800; }
    .event-modal__title.green {
      background: #41ab28; }
      .event-modal__title.green span:after {
        border-color: #41ab28; }
    .event-modal__title.light {
      background: #2fb2c2; }
      .event-modal__title.light span:after {
        border-color: #2fb2c2; }
    .event-modal__title.pink {
      background: #d04d82; }
      .event-modal__title.pink span:after {
        border-color: #d04d82; }
    .event-modal__title h3 {
      width: calc(100% - 240px);
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: 0.1em; }
      @media only screen and (max-width: 767px) {
        .event-modal__title h3 {
          width: calc(100% - 60px);
          font-size: 13px;
          font-size: 1.3rem;
          padding-bottom: 8px;
          margin-bottom: 6px;
          border-bottom: 1px solid rgba(255, 255, 255, 0.3); } }
    .event-modal__title p {
      width: 195px;
      text-align: right;
      padding-right: 10px; }
      @media only screen and (max-width: 767px) {
        .event-modal__title p {
          width: calc(100% - 60px);
          order: 3;
          text-align: left;
          line-height: 1; } }
      .event-modal__title p small,
      .event-modal__title p em {
        display: inline-block;
        vertical-align: middle; }
      .event-modal__title p small {
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: bold;
        margin-right: 18px; }
        @media only screen and (max-width: 767px) {
          .event-modal__title p small {
            font-size: 12px;
            font-size: 1.2rem; } }
      .event-modal__title p em {
        font-family: "Oswald", sans-serif;
        font-size: 20px;
        font-size: 2rem;
        letter-spacing: 0.05em; }
        @media only screen and (max-width: 767px) {
          .event-modal__title p em {
            font-size: 15px;
            font-size: 1.5rem; } }
      .event-modal__title p span {
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: 0.05em;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          .event-modal__title p span {
            font-size: 13px;
            font-size: 1.3rem; } }
  .event-modal__list {
    margin-top: 20px; }
    @media only screen and (max-width: 767px) {
      .event-modal__list {
        margin-top: 15px; } }
    .event-modal__list li {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      line-height: 1.6;
      margin-top: 6px;
      padding-left: 45px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .event-modal__list li {
          padding-left: 20px; } }
      .event-modal__list li:before {
        content: "";
        position: absolute;
        top: 9px;
        left: 29px;
        width: 6px;
        height: 6px;
        background: #000;
        border-radius: 6px; }
        @media only screen and (max-width: 767px) {
          .event-modal__list li:before {
            left: 5px; } }
    .event-modal__list.orange li:before {
      background: #da5019; }
    .event-modal__list.blue li:before {
      background: #007fb1; }
    .event-modal__list.yellow li:before {
      background: #e7a800; }
    .event-modal__list.green li:before {
      background: #41ab28; }
    .event-modal__list.light li:before {
      background: #2fb2c2; }
    .event-modal__list.pink li:before {
      background: #d04d82; }
  .event-modal__overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    z-index: 1; }
  .event-modal__closebtn {
    position: absolute;
    width: 100%;
    bottom: 37px;
    z-index: 2; }
    .event-modal__closebtn a {
      background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
      background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
      background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
      background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
      background-image: linear-gradient(to right, #005ca1, #0095a1);
      display: block;
      width: 90%;
      margin: auto;
      color: #fff;
      font-size: 13px;
      font-size: 1.3rem;
      letter-spacing: 0.05em;
      text-align: center;
      padding: 14px 0;
      border-radius: 4px; }
    .event-modal__closebtn.black a {
      background: #383838; }
  .event-modal__box {
    position: absolute;
    z-index: 2;
    max-width: 1000px;
    max-height: 688px;
    background: #fff;
    border-radius: 6px;
    width: calc(100% - 20px);
    top: 50%;
    left: 50%;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    overflow: auto; }
    @media only screen and (max-width: 767px) {
      .event-modal__box {
        max-width: 90%;
        max-height: calc(90% - 74px);
        top: calc(50% - 37px); } }
  .event-modal__close {
    width: 26px;
    height: 26px;
    cursor: pointer;
    background-image: url(../images/common/btn_close.png);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 1; }
  .event-modal__inner {
    padding: 45px;
    position: relative; }
    @media only screen and (max-width: 767px) {
      .event-modal__inner {
        padding: 20px 25px; } }
    .event-modal__inner h2 {
      font-size: 0; }
      @media only screen and (min-width: 768px) {
        .event-modal__inner h2 {
          padding-right: 220px; } }
      @media only screen and (max-width: 767px) {
        .event-modal__inner h2 {
          text-align: center; } }
      .event-modal__inner h2 span {
        color: #1c4e6a;
        display: inline-block; }
        @media only screen and (max-width: 767px) {
          .event-modal__inner h2 span {
            font-weight: 500; }
            .event-modal__inner h2 span.event-modal__date, .event-modal__inner h2 span.event-modal__time {
              font-family: "Oswald", sans-serif; }
            .event-modal__inner h2 span.event-modal__w, .event-modal__inner h2 span.event-modal__time-label {
              font-weight: bold; } }
    .event-modal__inner > a {
      display: block;
      position: absolute;
      width: 220px;
      line-height: 41px;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      text-align: center;
      height: 44px;
      border: 1px solid #F6963F;
      border-radius: 6px;
      background: #F6963F;
      color: #FFF; }
      @media only screen and (min-width: 768px) {
        .event-modal__inner > a {
          transition: opacity 0.3s;
          right: 46px;
          top: 30px; } }
      @media only screen and (max-width: 767px) {
        .event-modal__inner > a {
          position: relative;
          font-size: 13px;
          font-size: 1.3rem;
          width: 100%;
          margin-top: 15px; } }
      .event-modal__inner > a:before {
        content: "";
        border-top: 1px solid #FFF;
        border-right: 1px solid #FFF;
        width: 6px;
        height: 6px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 15px;
        margin: auto;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg); }
      @media only screen and (min-width: 768px) {
        .event-modal__inner > a:hover {
          opacity: .75; } }
    .event-modal__inner table {
      width: 100%;
      margin-top: 30px; }
      @media only screen and (max-width: 767px) {
        .event-modal__inner table {
          display: block;
          margin-top: 13px; } }
      .event-modal__inner table th,
      .event-modal__inner table td {
        vertical-align: top;
        padding: 12px 0;
        padding-left: 30px; }
        @media only screen and (max-width: 767px) {
          .event-modal__inner table th,
          .event-modal__inner table td {
            display: block;
            padding: 0; } }
      @media only screen and (max-width: 767px) {
        .event-modal__inner table thead,
        .event-modal__inner table tbody,
        .event-modal__inner table tr {
          display: block; } }
      .event-modal__inner table thead th {
        color: #fff;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.1em;
        background: #0095a1;
        font-weight: bold; }
        @media only screen and (max-width: 767px) {
          .event-modal__inner table thead th {
            font-size: 13px;
            font-size: 1.3rem; } }
        .event-modal__inner table thead th:first-child {
          border-radius: 4px 0 0 4px; }
          @media only screen and (max-width: 767px) {
            .event-modal__inner table thead th:first-child {
              border-radius: 4px;
              text-align: center;
              padding: 8px 0; } }
        .event-modal__inner table thead th:last-child {
          border-radius: 0 4px 4px 0; }
      .event-modal__inner table tbody tr:nth-child(even) td {
        background: #f2fafa; }
      .event-modal__inner table tbody tr td {
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: 500;
        line-height: 1.6; }
        .event-modal__inner table tbody tr td:first-child {
          font-weight: 700; }
        @media only screen and (max-width: 767px) {
          .event-modal__inner table tbody tr td {
            padding: 0 15px;
            padding-top: 10px;
            word-wrap: break-word;
            overflow-wrap: break-word; }
            .event-modal__inner table tbody tr td small {
              font-size: 11px;
              font-size: 1.1rem;
              display: block;
              color: #0095a1; }
            .event-modal__inner table tbody tr td:last-child {
              padding-bottom: 15px; } }
  .event-modal__time, .event-modal__date {
    font-family: "Oswald", sans-serif; }
  .event-modal__date {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .event-modal__date {
        font-size: 18px;
        font-size: 1.8rem; } }
  .event-modal__w {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    margin-left: 7px;
    position: relative;
    top: -2px;
    font-weight: 700; }
    @media only screen and (max-width: 767px) {
      .event-modal__w {
        font-size: 13px;
        font-size: 1.3rem; } }
  .event-modal__time-label {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    margin-left: 20px;
    position: relative;
    top: -2px;
    font-weight: 700; }
    @media only screen and (max-width: 767px) {
      .event-modal__time-label {
        margin-top: 10px;
        font-size: 12px;
        font-size: 1.2rem;
        margin-left: 0; } }
  .event-modal__time {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    margin-left: 20px;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .event-modal__time {
        font-size: 15px;
        font-size: 1.5rem;
        margin-top: 10px;
        margin-left: 10px; } }
  .event-modal__note {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    font-weight: 400; }
    @media only screen and (min-width: 768px) {
      .event-modal__note {
        vertical-align: 3px; } }
    @media only screen and (max-width: 767px) {
      .event-modal__note {
        font-size: 14px;
        font-size: 1.4rem;
        margin-top: 10px;
        display: block !important; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      .event-modal__note {
        margin-top: 10px;
        margin-left: -12px;
        display: block !important; } }

.event-popup-language {
  background-color: rgba(0, 0, 0, 0.6);
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 999; }
  .event-popup-language.off {
    display: none; }
  .event-popup-language .event-popup-content {
    background-color: white;
    border-radius: 5px;
    margin: 0 auto;
    padding: 36px 50px 26px;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    max-width: 1000px;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      .event-popup-language .event-popup-content {
        padding: 17px 25px 25px;
        width: calc(100% - 50px); } }
  .event-popup-language .close-btn {
    border-radius: 50%;
    position: absolute;
    right: 10px;
    top: 10px;
    height: 26px;
    width: 26px;
    background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-size: 200% auto;
    transition: 0.5s; }
    .event-popup-language .close-btna:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      .event-popup-language .close-btn {
        height: 30px;
        width: 30px; } }
    .event-popup-language .close-btn:before, .event-popup-language .close-btn:after {
      background-color: white;
      content: "";
      margin: 0 auto;
      pointer-events: none;
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      height: 1px;
      width: 12px; }
      @media only screen and (max-width: 767px) {
        .event-popup-language .close-btn:before, .event-popup-language .close-btn:after {
          width: 10px; } }
    .event-popup-language .close-btn:before {
      transform: rotate(45deg); }
    .event-popup-language .close-btn:after {
      transform: rotate(-45deg); }
  .event-popup-language .event-popup-date {
    margin-bottom: 30px; }
    @media only screen and (max-width: 767px) {
      .event-popup-language .event-popup-date {
        margin-bottom: 13px;
        text-align: center; } }
    .event-popup-language .event-popup-date .date {
      display: inline-block;
      font-size: 24px;
      font-size: 2.4rem;
      margin-right: 32px;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        .event-popup-language .event-popup-date .date {
          font-size: 18px;
          font-size: 1.8rem;
          margin-right: 0;
          margin-bottom: 5px; } }
      .event-popup-language .event-popup-date .date .sml {
        font-size: 18px;
        font-size: 1.8rem; }
        @media only screen and (max-width: 767px) {
          .event-popup-language .event-popup-date .date .sml {
            font-size: 13px;
            font-size: 1.3rem; } }
    .event-popup-language .event-popup-date .text-info {
      display: inline-block;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: 0.025em;
      margin-right: 17px; }
      @media only screen and (max-width: 767px) {
        .event-popup-language .event-popup-date .text-info {
          font-size: 12px;
          font-size: 1.2rem;
          margin-right: 7px; } }
    .event-popup-language .event-popup-date .time {
      display: inline-block;
      font-size: 24px;
      font-size: 2.4rem;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        .event-popup-language .event-popup-date .time {
          font-size: 15px;
          font-size: 1.5rem; } }
  .event-popup-language table {
    table-layout: fixed;
    width: 100%; }
    .event-popup-language table tr:nth-child(odd) td {
      background-color: #f2fafa; }
    .event-popup-language table tr th {
      background-color: #0095a1;
      color: white;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.025em;
      vertical-align: middle;
      height: 40px; }
      @media only screen and (max-width: 767px) {
        .event-popup-language table tr th {
          border-radius: 3px;
          display: block;
          font-size: 13px;
          font-size: 1.3rem;
          padding-top: 7px;
          text-align: center;
          height: 30px; } }
      @media only screen and (min-width: 768px) {
        .event-popup-language table tr th:first-child {
          border-top-left-radius: 5px;
          border-bottom-left-radius: 5px;
          padding-left: 27px;
          width: 40.77%; }
        .event-popup-language table tr th:last-child {
          border-top-right-radius: 5px;
          border-bottom-right-radius: 5px; } }
    .event-popup-language table tr td {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.025em;
      line-height: 1.42;
      padding-right: 7px;
      height: 64px; }
      @media only screen and (min-width: 768px) {
        .event-popup-language table tr td:first-child {
          font-weight: 600;
          padding-left: 27px; } }
      @media only screen and (max-width: 767px) {
        .event-popup-language table tr td {
          display: block;
          font-size: 14px;
          font-size: 1.4rem;
          padding: 5px 13px 0;
          height: auto; }
          .event-popup-language table tr td:first-child {
            padding-top: 13px; }
          .event-popup-language table tr td:last-child {
            padding-bottom: 13px; } }
      .event-popup-language table tr td .sub-ttl {
        color: #0095a1;
        font-size: 11px;
        font-size: 1.1rem;
        letter-spacing: 0.025em; }

.gardenpier .calendars {
  background: linear-gradient(to right, #FFF, #FFF 50%, #e6faff 50%, #e6faff) left center/2px 100% repeat;
  padding: 50px 0 60px; }
  @media only screen and (max-width: 767px) {
    .gardenpier .calendars {
      padding-top: 205px;
      padding-bottom: 40px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .calendars.calendars-gardenpier {
      padding-top: 12px; } }
  .gardenpier .calendars h3 {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.15em;
    text-align: center;
    margin-bottom: 44px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .calendars h3 {
        margin-bottom: 30px; } }
    .gardenpier .calendars h3 .icon {
      margin-bottom: 15px;
      display: inline-block; }
      @media only screen and (max-width: 767px) {
        .gardenpier .calendars h3 .icon {
          width: 24px;
          height: 24px; } }
    .gardenpier .calendars h3 .text {
      position: relative;
      display: block;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      .gardenpier .calendars h3 .text:before, .gardenpier .calendars h3 .text:after {
        content: '';
        display: block;
        width: 22px;
        height: 4px;
        background-position: center;
        background-size: 22px 4px;
        background-repeat: no-repeat;
        margin: 0 20px 0 12px; }
        @media only screen and (max-width: 767px) {
          .gardenpier .calendars h3 .text:before, .gardenpier .calendars h3 .text:after {
            width: 18px;
            height: 3px;
            background-size: 18px 3px;
            margin: 0 10px 0 8px; } }
      .gardenpier .calendars h3 .text:before {
        background-image: url(../images/garden-pier/common/dots-multi-l.svg); }
      .gardenpier .calendars h3 .text:after {
        background-image: url(../images/garden-pier/common/dots-multi-r.svg); }
      @media only screen and (max-width: 767px) {
        .gardenpier .calendars h3 .text .large {
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: 500; } }
  .gardenpier .calendars .calendar__content {
    display: -webkit-flex;
    display: flex; }
  .gardenpier .calendars .calendar__month {
    width: calc(50% - 5px); }
    @media only screen and (max-width: 767px) {
      .gardenpier .calendars .calendar__month {
        width: 100%; } }
    @media only screen and (min-width: 768px) {
      .gardenpier .calendars .calendar__month:first-child {
        margin-right: 10px; } }
    .gardenpier .calendars .calendar__month__header {
      margin-bottom: 21px;
      text-align: center;
      position: relative; }
      @media only screen and (max-width: 767px) {
        .gardenpier .calendars .calendar__month__header {
          margin-bottom: 10px; } }
      .gardenpier .calendars .calendar__month__header .btn-calnav {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 100px;
        height: 30px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        background: #fff;
        border: 1px solid #e1e1e1;
        border-radius: 5px;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-family: "Oswald", sans-serif;
        font-weight: 500;
        transition: all 0.3s; }
        @media only screen and (max-width: 767px) {
          .gardenpier .calendars .calendar__month__header .btn-calnav {
            font-size: 12px;
            font-size: 1.2rem;
            height: 25px;
            width: 75px; } }
        .gardenpier .calendars .calendar__month__header .btn-calnav:hover {
          background-color: #e1e1e1; }
        .gardenpier .calendars .calendar__month__header .btn-calnav:after {
          content: '';
          border-right: 1px solid #000;
          border-bottom: 1px solid #000;
          width: 5px;
          height: 5px;
          position: absolute;
          top: 50%; }
          @media only screen and (max-width: 767px) {
            .gardenpier .calendars .calendar__month__header .btn-calnav:after {
              width: 4px;
              height: 4px; } }
        .gardenpier .calendars .calendar__month__header .btn-calnav--prev {
          left: 0;
          padding-right: 13px;
          -webkit-justify-content: flex-end;
          justify-content: flex-end; }
          @media only screen and (max-width: 767px) {
            .gardenpier .calendars .calendar__month__header .btn-calnav--prev {
              padding-right: 7px; } }
          .gardenpier .calendars .calendar__month__header .btn-calnav--prev:after {
            left: 15px;
            transform: translateY(-50%) rotateZ(135deg); }
            @media only screen and (max-width: 767px) {
              .gardenpier .calendars .calendar__month__header .btn-calnav--prev:after {
                left: 10px; } }
        .gardenpier .calendars .calendar__month__header .btn-calnav--next {
          right: 0;
          padding-left: 13px; }
          @media only screen and (max-width: 767px) {
            .gardenpier .calendars .calendar__month__header .btn-calnav--next {
              padding-left: 7px; } }
          .gardenpier .calendars .calendar__month__header .btn-calnav--next:after {
            right: 15px;
            transform: translateY(-50%) rotateZ(-45deg); }
            @media only screen and (max-width: 767px) {
              .gardenpier .calendars .calendar__month__header .btn-calnav--next:after {
                right: 10px; } }
      .gardenpier .calendars .calendar__month__header .date {
        font-family: "Oswald", sans-serif;
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: 0.05em;
        font-weight: 500; }
    .gardenpier .calendars .calendar__month--border {
      border: 1px solid rgba(237, 237, 237, 0.6);
      border-radius: 5px;
      overflow: hidden;
      background: #fff; }
    .gardenpier .calendars .calendar__month__wrapper {
      width: 100%;
      border-collapse: collapse; }
      .gardenpier .calendars .calendar__month__wrapper td,
      .gardenpier .calendars .calendar__month__wrapper th {
        background: #fff;
        border: 1px solid rgba(237, 237, 237, 0.6); }
        .gardenpier .calendars .calendar__month__wrapper td.do,
        .gardenpier .calendars .calendar__month__wrapper th.do {
          color: #2794eb; }
        .gardenpier .calendars .calendar__month__wrapper td.nichi,
        .gardenpier .calendars .calendar__month__wrapper th.nichi {
          color: #e43030; }
        .gardenpier .calendars .calendar__month__wrapper td:nth-child(7n+7),
        .gardenpier .calendars .calendar__month__wrapper th:nth-child(7n+7) {
          border-right: none; }
        .gardenpier .calendars .calendar__month__wrapper td:nth-child(7n-6),
        .gardenpier .calendars .calendar__month__wrapper th:nth-child(7n-6) {
          border-left: none; }
      .gardenpier .calendars .calendar__month__wrapper th {
        height: 40px;
        background: #f6f6f6;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: 700;
        text-align: center;
        vertical-align: middle;
        border-top: none; }
        @media only screen and (max-width: 767px) {
          .gardenpier .calendars .calendar__month__wrapper th {
            font-size: 11px;
            font-size: 1.1rem; } }
        .gardenpier .calendars .calendar__month__wrapper th.do {
          background: rgba(39, 148, 235, 0.2); }
        .gardenpier .calendars .calendar__month__wrapper th.nichi {
          background: rgba(228, 48, 48, 0.2); }
      .gardenpier .calendars .calendar__month__wrapper td {
        height: 50px;
        font-family: "Oswald", sans-serif;
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: 0.05em;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          .gardenpier .calendars .calendar__month__wrapper td {
            font-size: 15px;
            font-size: 1.5rem; } }
        .gardenpier .calendars .calendar__month__wrapper td a {
          display: block;
          width: 100%;
          height: 100%;
          transition: all 0.3s;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center; }
          .gardenpier .calendars .calendar__month__wrapper td a span {
            position: relative;
            padding-bottom: 2px;
            border-bottom: 2px solid #383838; }
            @media only screen and (max-width: 767px) {
              .gardenpier .calendars .calendar__month__wrapper td a span {
                border-width: 1px; } }
          .gardenpier .calendars .calendar__month__wrapper td a:hover {
            background: rgba(225, 225, 225, 0.3); }
        .gardenpier .calendars .calendar__month__wrapper td.do a span {
          border-bottom-color: #2794eb; }
        .gardenpier .calendars .calendar__month__wrapper td.nichi a span {
          border-bottom-color: #e43030; }
      .gardenpier .calendars .calendar__month__wrapper tbody tr:last-child td {
        border-bottom: none; }

.c-img {
  display: block;
  position: relative; }
  .c-img img {
    display: block;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
  .c-img--contain img {
    object-fit: contain; }
  .c-img--top img {
    object-position: top; }

#instagram {
  display: -webkit-flex;
  display: flex;
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    #instagram {
      display: block;
      padding: 0 5px; } }
  @media only screen and (min-width: 768px) {
    #instagram .fb_iframe_widget span {
      height: 100% !important; } }
  #instagram .facebookw {
    padding-bottom: 5px;
    width: 440px; }
    @media only screen and (min-width: 768px) {
      #instagram .facebookw {
        position: relative; }
        #instagram .facebookw iframe {
          height: 100% !important; } }
    @media only screen and (max-width: 767px) {
      #instagram .facebookw {
        margin: 0 auto;
        width: 100%; } }
  @media only screen and (min-width: 768px) {
    #instagram .facebookw .fb-page {
      height: 100%;
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      height: calc(100% - 5px);
      overflow: hidden; } }
  @media only screen and (min-width: 768px) and (min-device-width: 768px) and (max-device-width: 1024px) {
    #instagram .facebookw .fb-page {
      height: 342px; } }
  @media only screen and (max-width: 767px) {
    #instagram .facebookw .fb-page {
      margin: 0 auto;
      max-width: 440px;
      width: 100%; }
      #instagram .facebookw .fb-page > span {
        width: 100% !important; }
        #instagram .facebookw .fb-page > span > iframe {
          width: 100% !important; } }
  #instagram .instaw {
    background-color: #f0fafe;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    width: calc(100% - 440px); }
    @media only screen and (min-width: 768px) {
      #instagram .instaw {
        -webkit-align-items: flex-start;
        align-items: flex-start;
        font-size: 0;
        display: block; } }
    @media only screen and (max-width: 767px) {
      #instagram .instaw {
        width: 100%; } }
    #instagram .instaw li {
      margin-right: 5px;
      margin-bottom: 5px;
      overflow: hidden;
      height: calc((100vw - 20px)/ 3); }
      @media only screen and (min-width: 768px) {
        #instagram .instaw li {
          display: inline-block;
          height: calc((100vw - 440px - 35px) / 4); }
          body.hasHover #instagram .instaw li:hover a {
            transform: scale(1.1); } }
      #instagram .instaw li a {
        display: block;
        width: 100%;
        height: 100%;
        transition: all 0.3s; }
      #instagram .instaw li img {
        max-width: none;
        width: 100%;
        height: 100%;
        object-fit: cover; }
      #instagram .instaw li .linken {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        flex-direction: column; }
      @media screen and (min-width: 1606px) {
        #instagram .instaw li {
          width: calc((100% - 30px) / 4); }
          #instagram .instaw li:nth-child(n + 13) {
            display: none; }
          #instagram .instaw li.instaw--mainlink {
            padding-top: calc((100% - 30px) / 4); } }
      @media screen and (min-width: 1561px) and (max-width: 1605px) {
        #instagram .instaw li {
          width: calc((100% - 25px) / 4); }
          #instagram .instaw li.instaw--mainlink {
            padding-top: calc((100% - 25px) / 4); } }
      @media screen and (min-width: 768px) and (max-width: 1560px) {
        #instagram .instaw li {
          width: calc((100% - 20px) / 4); }
          #instagram .instaw li.instaw--mainlink {
            padding-top: calc((100% - 20px) / 4); } }
      @media only screen and (max-width: 767px) {
        #instagram .instaw li {
          width: calc((100% - 10px) / 3); }
          #instagram .instaw li:nth-child(3n + 1) {
            margin-right: 0; }
          #instagram .instaw li:first-child {
            margin-right: 5px; }
          #instagram .instaw li.img-1, #instagram .instaw li.img-7 {
            display: none; } }
    #instagram .instaw--mainlink {
      position: relative; }
      #instagram .instaw--mainlink a {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-flex-direction: column;
        flex-direction: column;
        width: 100%;
        height: 100%;
        background-image: -owg-linear-gradient(to top left, #f1faff, #e3f7f6);
        background-image: -webkit-linear-gradient(to top left, #f1faff, #e3f7f6);
        background-image: -moz-linear-gradient(to top left, #f1faff, #e3f7f6);
        background-image: -o-linear-gradient(to top left, #f1faff, #e3f7f6);
        background-image: linear-gradient(to top left, #f1faff, #e3f7f6); }
        @media only screen and (min-width: 768px) {
          #instagram .instaw--mainlink a {
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0; } }
        #instagram .instaw--mainlink a .icon {
          width: 30px;
          height: 30px;
          background: url(../images/common/icon-instagram.svg) center/cover no-repeat;
          margin-bottom: 15px; }
          @media only screen and (max-width: 767px) {
            #instagram .instaw--mainlink a .icon {
              width: 22px;
              height: 22px;
              margin-bottom: 10px; } }
        #instagram .instaw--mainlink a .text {
          font-family: "Montserrat", sans-serif;
          font-weight: 700;
          letter-spacing: 0.05em;
          color: #1c4e6a;
          font-size: 14px;
          font-size: 1.4rem; }
          @media only screen and (max-width: 767px) {
            #instagram .instaw--mainlink a .text {
              font-size: 12px;
              font-size: 1.2rem; } }
    #instagram .instaw--image a {
      display: block;
      background-position: center;
      background-size: cover;
      background-repeat: no-repeat;
      padding-top: 100%; }

.list-box01 {
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s;
  padding: 40px 0 40px;
  position: relative;
  border-radius: 5px;
  margin-top: 40px; }
  .list-box01a:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    .list-box01 {
      margin-top: 28px;
      padding: 25px 0 25px; } }
  .list-box01__heading {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    color: #0095a1;
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    top: -10px; }
    @media all and (-ms-high-contrast: none) {
      .list-box01__heading {
        top: -6px; } }
    @media only screen and (max-width: 767px) {
      .list-box01__heading {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.6em;
        top: -12px; } }
  .list-box01 ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media only screen and (min-width: 768px) {
      .list-box01 ul.typeA {
        padding: 0 40px; } }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    .list-box01 ul.typeA {
      padding: 0 20px; } }
    @media only screen and (min-width: 768px) {
        .list-box01 ul.typeA li {
          margin-top: 20px; }
          .list-box01 ul.typeA li:nth-child(3n + 1) {
            width: 41%; }
          .list-box01 ul.typeA li:nth-child(3n + 2) {
            width: 37%; }
          .list-box01 ul.typeA li:nth-child(3n) {
            width: 22%; }
          .list-box01 ul.typeA li:nth-child(-n + 3) {
            margin-top: 0; }
      .list-box01 ul.typeB {
        padding: 0 80px; } }
  @media only screen and (min-width: 768px) and (max-width: 1100px) {
    .list-box01 ul.typeB {
      padding: 0 20px; } }
    @media only screen and (min-width: 768px) {
        .list-box01 ul.typeB li {
          margin-left: 80px;
          margin-top: 20px; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      .list-box01 ul.typeB li {
        margin-left: 60px; } }
    @media only screen and (min-width: 768px) {
          .list-box01 ul.typeB li:nth-child(5n + 1) {
            margin-left: 0; }
          .list-box01 ul.typeB li:nth-child(-n + 5) {
            margin-top: 0; } }
    @media only screen and (max-width: 767px) {
      .list-box01 ul {
        padding: 0 25px; } }
    .list-box01 ul + .footnote {
      padding: 15px 25px 0; }
      @media only screen and (min-width: 768px) {
        .list-box01 ul + .footnote {
          padding: 15px 40px 0; } }
      .list-box01 ul + .footnote p {
        margin-bottom: 10px; }
        .list-box01 ul + .footnote p:last-child {
          margin-bottom: 0; }
    .list-box01 ul li sup {
      font-size: 10px;
      font-size: 1rem;
      display: inline-block;
      transform: translateY(-4px); }
      @media only screen and (max-width: 767px) {
        .list-box01 ul li sup {
          width: 0;
          overflow: visible; } }
    .list-box01 ul li {
      font-size: 15px;
      font-size: 1.5rem;
      letter-spacing: 0.05em;
      line-height: 1.5em;
      position: relative;
      padding-left: 15px;
      text-align: left; }
      @media only screen and (max-width: 1000px) {
        .list-box01 ul li {
          font-size: 12px;
          font-size: 1.2rem; } }
      @media only screen and (min-width: 768px) {
        .list-box01 ul li span {
          display: inline-block;
          margin-left: 50px; } }
      @media only screen and (max-width: 767px) {
        .list-box01 ul li span {
          display: block;
          margin-top: 5px; } }
      @media only screen and (max-width: 767px) {
        .list-box01 ul li {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.714285714em;
          padding-left: 10px;
          margin-top: 7px;
          width: 100%; }
          .list-box01 ul li:nth-of-type(-n + 1) {
            margin-top: 0; } }
      .list-box01 ul li:before {
        content: '';
        width: 6px;
        height: 6px;
        background-color: #1c4e6a;
        border-radius: 50%;
        position: absolute;
        left: 0;
        top: 9px; }
        @media only screen and (max-width: 767px) {
          .list-box01 ul li:before {
            width: 4px;
            height: 4px;
            top: 10px; } }

.memo-box {
  position: relative;
  padding: 8px;
  border-radius: 5px;
  overflow: hidden;
  margin: 40px 0; }
  @media only screen and (max-width: 767px) {
    .memo-box {
      padding: 4px;
      margin: 20px 0; } }
  .memo-box__bg {
    background-size: auto auto;
    background-color: rgba(255, 153, 102, 0.15);
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 6px, rgba(230, 152, 88, 0.15) 6px, rgba(230, 152, 88, 0.15) 12px);
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 8px; }
    @media only screen and (max-width: 767px) {
      .memo-box__bg {
        background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(230, 152, 88, 0.15) 4px, rgba(230, 152, 88, 0.15) 8px); } }
    @media only screen and (max-width: 767px) {
      .memo-box__bg {
        padding: 4px; } }
    .memo-box__bg:before {
      content: '';
      background-color: #FFF;
      position: absolute;
      right: 8px;
      bottom: 8px;
      left: 8px;
      top: 8px; }
      @media only screen and (max-width: 767px) {
        .memo-box__bg:before {
          right: 4px;
          bottom: 4px;
          left: 4px;
          top: 4px; } }
    .memo-box__bg:after {
      content: '';
      left: 0px;
      top: 0px;
      bottom: 0px;
      right: 0px;
      position: absolute;
      background-color: #FFF;
      background-image: linear-gradient(transparent 95%, rgba(0, 0, 0, 0.06) 50%, rgba(0, 0, 0, 0.06)), linear-gradient(90deg, transparent 95%, rgba(0, 0, 0, 0.06) 50%, rgba(0, 0, 0, 0.06));
      background-size: 17px 17px;
      background-repeat: repeat;
      opacity: .5; }
  .memo-box__dot {
    width: 8px;
    height: 8px;
    background-color: #e69858;
    border-radius: 50%;
    position: absolute; }
    @media only screen and (max-width: 767px) {
      .memo-box__dot {
        width: 6px;
        height: 6px; } }
    .memo-box__dot:nth-of-type(1), .memo-box__dot:nth-of-type(2) {
      top: 15px; }
    .memo-box__dot:nth-of-type(3), .memo-box__dot:nth-of-type(4) {
      bottom: 15px; }
    .memo-box__dot:nth-of-type(1), .memo-box__dot:nth-of-type(4) {
      left: 15px; }
    .memo-box__dot:nth-of-type(2), .memo-box__dot:nth-of-type(3) {
      right: 15px; }
  .memo-box__contents {
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    padding: 30px 50px 30px 70px; }
    @media only screen and (max-width: 767px) {
      .memo-box__contents {
        display: block;
        padding: 25px 20px 20px 20px; } }
    .memo-box__contents figure {
      position: relative;
      text-align: center;
      flex-shrink: 0;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: column;
      flex-direction: column;
      -webkit-align-items: center;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        .memo-box__contents figure {
          -webkit-flex-direction: row;
          flex-direction: row;
          -webkit-justify-content: center;
          justify-content: center;
          margin-bottom: 15px; } }
      .memo-box__contents figure img {
        width: 56px; }
        @media only screen and (max-width: 767px) {
          .memo-box__contents figure img {
            width: 34px;
            margin-right: 10px; } }
      .memo-box__contents figure h4 {
        font-size: 20px;
        font-size: 2rem;
        letter-spacing: 0.1em;
        color: #e69858;
        display: inline;
        position: relative;
        margin-top: 15px;
        padding: 0 3px; }
        @media only screen and (max-width: 767px) {
          .memo-box__contents figure h4 {
            font-size: 17px;
            font-size: 1.7rem;
            margin-top: 0; } }
        .memo-box__contents figure h4:after {
          content: '';
          width: 100%;
          height: 8px;
          background-color: rgba(230, 152, 88, 0.2);
          border-radius: 4px;
          position: absolute;
          bottom: -2px;
          left: 0; }
          @media only screen and (max-width: 767px) {
            .memo-box__contents figure h4:after {
              height: 5px; } }
    .memo-box__contents p {
      padding-left: 40px;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        .memo-box__contents p {
          padding-left: 0;
          letter-spacing: 0em; } }
  .memo-box__txt {
    position: absolute;
    right: 8px;
    bottom: 8px; }
    @media only screen and (max-width: 767px) {
      .memo-box__txt {
        right: 4px;
        bottom: 4px; } }
    .memo-box__txt img {
      width: 295px;
      opacity: .08; }
      @media only screen and (max-width: 767px) {
        .memo-box__txt img {
          width: 195px; } }

.mv-side {
  background-size: cover;
  background-position: center top;
  height: 450px; }
  @media only screen and (max-width: 767px) {
    .mv-side {
      margin-top: 60px;
      height: 225px; } }

.reservation-btn {
  position: absolute;
  z-index: 10; }
  @media only screen and (min-width: 768px) {
    .reservation-btn {
      right: 30px;
      top: 30px;
      height: 80px;
      width: 350px; } }

.news2-area {
  padding-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    .news2-area {
      padding-bottom: 70px; } }
  .news2-area .sec-heading {
    margin-bottom: 50px !important; }
    @media only screen and (max-width: 767px) {
      .news2-area .sec-heading {
        line-height: 1.333; } }
    @media only screen and (max-width: 767px) {
      .news2-area .sec-heading {
        margin-bottom: 34px !important; } }
    .news2-area .sec-heading:before {
      background-image: url(../images/garden-pier/common/dots-pink.svg) !important; }
    .news2-area .sec-heading:after {
      background-image: url(../images/garden-pier/common/dots-pink.svg) !important; }
  .news2-area .news2-area-list li {
    background-color: white;
    position: relative;
    width: calc(50% - 3px); }
    @media only screen and (min-width: 768px) {
      .news2-area .news2-area-list li {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        .news2-area .news2-area-list li:hover {
          opacity: .7; } }
    @media only screen and (min-width: 768px) {
      .news2-area .news2-area-list li:nth-child(1), .news2-area .news2-area-list li:nth-child(2) {
        margin-bottom: 5px; } }
    @media only screen and (max-width: 767px) {
      .news2-area .news2-area-list li {
        margin-bottom: 5px;
        width: 100%; }
        .news2-area .news2-area-list li:last-child {
          margin-bottom: 0; } }
    .news2-area .news2-area-list li a {
      padding: 10px;
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
      @media only screen and (max-width: 767px) {
        .news2-area .news2-area-list li a {
          padding: 12px 10px;
          -webkit-align-items: center;
          align-items: center; } }
      .news2-area .news2-area-list li a .imager {
        margin-right: 13px;
        position: relative;
        width: 146px; }
        @media only screen and (max-width: 767px) {
          .news2-area .news2-area-list li a .imager {
            margin-right: 10px;
            width: 100px; } }
        .news2-area .news2-area-list li a .imager .frame {
          margin: 0 auto;
          position: absolute;
          left: 0;
          right: 0;
          top: 0; }
          .news2-area .news2-area-list li a .imager .frame img {
            height: 182px;
            width: 100%;
            max-width: none; }
            @media only screen and (max-width: 767px) {
              .news2-area .news2-area-list li a .imager .frame img {
                height: calc(100% + 1px); } }
        .news2-area .news2-area-list li a .imager svg {
          height: 100%;
          width: 100%; }
          @media only screen and (max-width: 767px) {
            .news2-area .news2-area-list li a .imager svg {
              display: block;
              height: 100%;
              width: 100%; } }
      .news2-area .news2-area-list li a .text-area {
        width: calc(100% - 167px); }
        @media only screen and (max-width: 767px) {
          .news2-area .news2-area-list li a .text-area {
            width: calc(100% - 120px); } }
        .news2-area .news2-area-list li a .text-area .article-ttl {
          font-size: 14px;
          font-size: 1.4rem;
          font-weight: 600;
          letter-spacing: 0.05em;
          line-height: 1.71;
          padding-top: 14px;
          padding-right: 6px; }
          @media only screen and (max-width: 767px) {
            .news2-area .news2-area-list li a .text-area .article-ttl {
              font-size: 13px;
              font-size: 1.3rem;
              line-height: 1.692;
              padding-right: 5px;
              padding-top: 0; } }
        .news2-area .news2-area-list li a .text-area .date {
          color: #d04d82;
          font-family: "Oswald", sans-serif;
          font-size: 13px;
          font-size: 1.3rem;
          letter-spacing: 0.04em;
          margin: 0 auto;
          position: absolute;
          right: 29px;
          bottom: 12px;
          text-align: right; }
          @media only screen and (max-width: 767px) {
            .news2-area .news2-area-list li a .text-area .date {
              right: 15px;
              bottom: 7px; } }
  .news2-area .link-index {
    margin: 30px auto 0;
    height: 44px;
    max-width: 320px;
    width: 100%;
    border: 1px solid #e1e1e1;
    border-radius: 22px;
    background: #fff;
    position: relative;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    transition: background-color 0.3s; }
    .news2-area .link-index _:lang(x)::-ms-backdrop, .news2-area .link-index {
      padding-top: 5px; }
    @media only screen and (max-width: 767px) {
      .news2-area .link-index {
        margin-top: 25px;
        max-width: 275px;
        height: 40px;
        border-radius: 20px;
        font-size: 13px;
        font-size: 1.3rem; } }
    .news2-area .link-index:after {
      content: '';
      width: 6px;
      height: 6px;
      display: block;
      border-right: 1px solid #383838;
      border-bottom: 1px solid #383838;
      transform: rotateZ(-45deg) translateY(-50%);
      position: absolute;
      top: 50%;
      right: 20px; }
      @media only screen and (max-width: 767px) {
        .news2-area .link-index:after {
          width: 4px;
          height: 4px; } }
    .news2-area .link-index:hover {
      background-color: #e1e1e1; }

.note-box {
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s;
  padding: 40px 80px;
  border-radius: 5px; }
  .note-boxa:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    .note-box {
      padding: 30px 22px; } }
  .note-box ul > li,
  .note-box > li {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.866666667em;
    letter-spacing: 0.05em;
    position: relative;
    padding-left: 15px;
    margin-top: 10px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .note-box ul > li,
      .note-box > li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.714285714em;
        padding-left: 11px; } }
    .note-box ul > li:nth-child(-n + 1),
    .note-box > li:nth-child(-n + 1) {
      margin-top: 0; }
    .note-box ul > li:before,
    .note-box > li:before {
      content: '';
      width: 6px;
      height: 6px;
      background-color: #1c4e6a;
      border-radius: 50%;
      position: absolute;
      top: 12px;
      left: 0; }
      @media only screen and (max-width: 767px) {
        .note-box ul > li:before,
        .note-box > li:before {
          width: 4px;
          height: 4px;
          top: 11px; } }

.note-list {
  margin-top: 12px; }
  .note-list > li {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.833333333em;
    position: relative;
    padding-left: 14px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .note-list > li {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.636363636em; } }
    .note-list > li:before {
      content: '※';
      position: absolute;
      left: 0; }
  .note-list > p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.833333333em;
    position: relative;
    padding-left: 14px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .note-list > p {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.636363636em; } }

.text_after_table {
  margin-top: 12px;
  text-align: left; }
  .text_after_table ul > li {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.833333333em;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .text_after_table ul > li {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.636363636em; } }
  .text_after_table p {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.833333333em;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .text_after_table p {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.636363636em; } }

.pagination,
.wp-pagenavi {
  color: #1c4e6a;
  font-size: 15px;
  font-size: 1.5rem;
  position: relative;
  text-align: center;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .pagination,
    .wp-pagenavi {
      width: auto; } }
  .pagination a,
  .pagination span,
  .wp-pagenavi a,
  .wp-pagenavi span {
    background-color: white;
    border-radius: 5px;
    display: inline-block;
    font-family: "Montserrat", sans-serif;
    margin: 0 4px;
    padding-top: 8px;
    position: relative;
    text-align: center;
    transition: all 0.3s;
    height: 30px;
    width: 30px; }
    @media only screen and (min-width: 768px) {
      .pagination a:hover,
      .pagination span:hover,
      .wp-pagenavi a:hover,
      .wp-pagenavi span:hover {
        box-shadow: 0 0 15px rgba(204, 229, 239, 0.8); } }
    @media only screen and (max-width: 767px) {
      .pagination a,
      .pagination span,
      .wp-pagenavi a,
      .wp-pagenavi span {
        border-radius: 3px; } }
    .pagination a.current,
    .pagination span.current,
    .wp-pagenavi a.current,
    .wp-pagenavi span.current {
      background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
      background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
      background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
      background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
      background-image: linear-gradient(to right, #005ca1, #0095a1);
      pointer-events: none;
      color: white; }
      .pagination a.current:hover,
      .pagination span.current:hover,
      .wp-pagenavi a.current:hover,
      .wp-pagenavi span.current:hover {
        box-shadow: none; }
  @media only screen and (min-width: 768px) {
    .pagination,
    .wp-pagenavi {
      /* IE11  */ }
      .pagination _:lang(x)::-ms-backdrop,
      .pagination a,
      .pagination span,
      .wp-pagenavi _:lang(x)::-ms-backdrop,
      .wp-pagenavi a,
      .wp-pagenavi span {
        padding-top: 7px; } }
  .pagination .back,
  .pagination .next,
  .pagination .first,
  .pagination .last,
  .wp-pagenavi .back,
  .wp-pagenavi .next,
  .wp-pagenavi .first,
  .wp-pagenavi .last {
    background-color: white;
    background-size: 10px 8px;
    background-repeat: no-repeat;
    background-position: center;
    color: white;
    display: inline-block;
    top: 9px;
    transition: all .3s;
    width: 50px; }
    @media only screen and (min-width: 768px) {
      .pagination .back:hover,
      .pagination .next:hover,
      .pagination .first:hover,
      .pagination .last:hover,
      .wp-pagenavi .back:hover,
      .wp-pagenavi .next:hover,
      .wp-pagenavi .first:hover,
      .wp-pagenavi .last:hover {
        box-shadow: 0 0 15px rgba(204, 229, 239, 0.8); } }
    @media only screen and (max-width: 320px) {
      .pagination .back,
      .pagination .next,
      .pagination .first,
      .pagination .last,
      .wp-pagenavi .back,
      .wp-pagenavi .next,
      .wp-pagenavi .first,
      .wp-pagenavi .last {
        width: 80px; } }
  .pagination .first,
  .wp-pagenavi .first {
    background-image: url("../images/common/arrw_l.png");
    text-align: right;
    text-transform: uppercase; }
  .pagination .last,
  .wp-pagenavi .last {
    background-image: url("../images/common/arrw_r.png");
    text-align: left;
    text-transform: uppercase; }
  .pagination .dots,
  .pagination .extend,
  .wp-pagenavi .dots,
  .wp-pagenavi .extend {
    display: none !important; }

.single-pagination {
  font-weight: normal;
  margin: 0 auto;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .single-pagination {
      width: 256px; } }
  .single-pagination .main {
    background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
    background-size: 200% auto;
    border-radius: 5px;
    color: white;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    transition: background-position .5s;
    height: 34px;
    width: 250px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    @media only screen and (min-width: 768px) {
      .single-pagination .main:hover {
        background-position: right center; } }
    @media only screen and (max-width: 767px) {
      .single-pagination .main {
        border-radius: 3px;
        font-size: 13px;
        font-size: 1.3rem;
        height: 32px;
        width: 180px; } }
  .single-pagination _:lang(x)::-ms-backdrop,
  .single-pagination .main {
    padding-top: 4px; }
  .single-pagination .next,
  .single-pagination .back {
    background-color: white;
    border-radius: 5px;
    font-size: 13px;
    font-size: 1.3rem;
    letter-spacing: 0.05em;
    padding-top: 10px;
    position: relative;
    transition: all .3s;
    text-align: center;
    height: 34px;
    width: calc((100% - 20px)/3); }
    @media only screen and (min-width: 768px) {
      .single-pagination .next:hover,
      .single-pagination .back:hover {
        box-shadow: 0 0 15px #cce5ef; } }
    @media only screen and (max-width: 767px) {
      .single-pagination .next,
      .single-pagination .back {
        border-radius: 3px;
        height: 32px;
        width: 32px; } }
    .single-pagination .next:after,
    .single-pagination .back:after {
      border-left: 1px solid #1c4e6a;
      border-bottom: 1px solid #1c4e6a;
      content: "";
      display: inline-block;
      margin: 0 auto;
      position: absolute;
      top: 50%;
      height: 5px;
      width: 5px; }
    .single-pagination .next.no-display,
    .single-pagination .back.no-display {
      opacity: 0;
      pointer-events: none; }
  .single-pagination _:lang(x)::-ms-backdrop,
  .single-pagination .next span,
  .single-pagination .back span {
    position: relative;
    top: 2px; }
  .single-pagination .next:after {
    transform: translateY(-50%) rotate(45deg);
    left: 20px; }
    @media only screen and (max-width: 767px) {
      .single-pagination .next:after {
        left: 0;
        right: 0; } }
  .single-pagination .back:after {
    transform: translateY(-50%) rotate(-135deg);
    right: 20px; }
    @media only screen and (max-width: 767px) {
      .single-pagination .back:after {
        left: 0;
        right: 0; } }

.phone-box {
  border: 1px solid #d9e7ef;
  border-radius: 8px;
  transition: all .3s;
  text-align: left;
  height: 99px; }
  @media only screen and (min-width: 768px) {
    .phone-box:hover {
      box-shadow: 0 0 15px #cce5ef; } }
  @media only screen and (max-width: 767px) {
    .phone-box {
      border-radius: 4px;
      height: auto; } }
  .phone-box a {
    -webkit-align-items: center;
    align-items: center;
    padding: 0 76px;
    position: relative;
    height: 100%; }
    @media only screen and (max-width: 767px) {
      .phone-box a {
        -webkit-flex-direction: column;
        flex-direction: column;
        padding: 19px 15px 19px; } }
    .phone-box a .phone-box-ttl {
      font-size: 24px;
      font-size: 2.4rem;
      font-weight: 500;
      width: 28.3%; }
      @media only screen and (max-width: 767px) {
        .phone-box a .phone-box-ttl {
          border-bottom: 1px solid #d9e7ef;
          font-size: 17px;
          font-size: 1.7rem;
          margin-bottom: 14px;
          padding-bottom: 13px;
          text-align: center;
          width: 100%; } }
      .phone-box a .phone-box-ttl:before {
        border-right: 1px solid #d9e7ef;
        content: "";
        position: absolute;
        left: 28.4%;
        top: 20px;
        height: 60px; }
        @media only screen and (max-width: 767px) {
          .phone-box a .phone-box-ttl:before {
            display: none; } }
    .phone-box a .phone-box-mid {
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: 500;
      line-height: 1.6;
      margin-left: -60px; }
      @media only screen and (max-width: 767px) {
        .phone-box a .phone-box-mid {
          font-size: 13px;
          font-size: 1.3rem;
          margin-left: 0;
          margin-bottom: 15px;
          text-align: center; } }
    .phone-box a .phone-box-tel {
      font-size: 30px;
      font-size: 3rem;
      font-family: "Oswald", sans-serif;
      padding-left: 30px;
      position: relative;
      left: -30px; }
      @media only screen and (max-width: 767px) {
        .phone-box a .phone-box-tel {
          font-size: 24px;
          font-size: 2.4rem;
          left: auto;
          padding-left: 21px; } }
      .phone-box a .phone-box-tel .sml {
        font-size: 18px;
        font-size: 1.8rem;
        font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; }
        @media only screen and (max-width: 767px) {
          .phone-box a .phone-box-tel .sml {
            font-size: 15px;
            font-size: 1.5rem; } }
      .phone-box a .phone-box-tel:before {
        background-image: url("../images/common/icon-tel.svg");
        background-size: 21px 28px;
        background-repeat: no-repeat;
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        height: 28px;
        width: 21px; }
        @media only screen and (max-width: 767px) {
          .phone-box a .phone-box-tel:before {
            background-size: 17px 23px;
            transform: translateY(-45%);
            right: 15px;
            height: 23px;
            width: 17px; } }

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's default mobile first theme
   ========================================================================== */
/* Default theme styles for the background */
.remodal-bg.remodal-is-opening,
.remodal-bg.remodal-is-opened {
  -webkit-filter: blur(3px);
  filter: blur(3px); }

/* Default theme styles of the overlay */
.remodal-overlay {
  background: rgba(0, 0, 0, 0.6); }

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }

.remodal-overlay.remodal-is-opening {
  -webkit-animation-name: remodal-overlay-opening-keyframes;
  animation-name: remodal-overlay-opening-keyframes; }

.remodal-overlay.remodal-is-closing {
  -webkit-animation-name: remodal-overlay-closing-keyframes;
  animation-name: remodal-overlay-closing-keyframes; }

/* Default theme styles of the wrapper */
.remodal-wrapper {
  padding: 10px 10px 0; }

/* Default theme styles of the modal dialog */
.remodal {
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 10px;
  padding: 35px;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  color: #2b2e38;
  background: #fff; }

.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards; }

.remodal.remodal-is-opening {
  -webkit-animation-name: remodal-opening-keyframes;
  animation-name: remodal-opening-keyframes; }

.remodal.remodal-is-closing {
  -webkit-animation-name: remodal-closing-keyframes;
  animation-name: remodal-closing-keyframes; }

/* Vertical align of the modal dialog */
.remodal,
.remodal-wrapper:after {
  vertical-align: middle; }

/* Close button */
.remodal-close {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  overflow: visible;
  width: 35px;
  height: 35px;
  margin: 0;
  padding: 0;
  cursor: pointer;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  border: 0;
  outline: 0;
  background: transparent; }

.remodal-close:hover,
.remodal-close:focus {
  color: #2b2e38; }

.remodal-close:before {
  font-family: Arial, "Helvetica CY", "Nimbus Sans L", sans-serif !important;
  font-size: 25px;
  line-height: 35px;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 35px;
  content: "\00d7";
  text-align: center; }

/* Dialog buttons */
.remodal-confirm,
.remodal-cancel {
  font: inherit;
  display: inline-block;
  overflow: visible;
  min-width: 110px;
  margin: 0;
  padding: 12px 0;
  cursor: pointer;
  -webkit-transition: background 0.2s;
  transition: background 0.2s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  border: 0;
  outline: 0; }

.remodal-confirm {
  color: #fff;
  background: #81c784; }

.remodal-confirm:hover,
.remodal-confirm:focus {
  background: #66bb6a; }

.remodal-cancel {
  color: #fff;
  background: #e57373; }

.remodal-cancel:hover,
.remodal-cancel:focus {
  background: #ef5350; }

/* Remove inner padding and border in Firefox 4+ for the button tag. */
.remodal-confirm::-moz-focus-inner,
.remodal-cancel::-moz-focus-inner,
.remodal-close::-moz-focus-inner {
  padding: 0;
  border: 0; }

/* Keyframes
   ========================================================================== */
@-webkit-keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@-webkit-keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1; }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
    -webkit-filter: blur(0);
    filter: blur(0); } }

@-webkit-keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-webkit-keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

/* Media queries
   ========================================================================== */
@media only screen and (min-width: 641px) {
  .remodal {
    max-width: 700px; } }

/* IE8
   ========================================================================== */
.lt-ie9 .remodal-overlay {
  background: #2b2e38; }

.lt-ie9 .remodal {
  width: 700px; }

/*
 *  Remodal - v1.1.1
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */
/* ==========================================================================
   Remodal's necessary styles
   ========================================================================== */
/* Hide scroll bar */
html.remodal-is-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none; }

/* Anti FOUC */
.remodal,
[data-remodal-id] {
  display: none; }

/* Necessary styles of the overlay */
.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none; }

/* Necessary styles of the wrapper */
.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch; }

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: ""; }

/* Fix iPad, iPhone glitches */
.remodal-overlay,
.remodal-wrapper {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

/* Necessary styles of the modal dialog */
.remodal {
  position: relative;
  outline: none;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%; }

.remodal-is-initialized {
  /* Disable Anti-FOUC */
  display: inline-block; }

.reservation-btn {
  display: block; }
  @media only screen and (min-width: 768px) {
    .reservation-btn {
      background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-size: 200% auto;
      transition: 0.5s;
      border-radius: 5px;
      transition: all .3s;
      padding: 1px;
      height: 80px; }
      .reservation-btna:hover {
        background-position: right center; }
      body.hasHover .reservation-btn:hover {
        transform: scale(1.05); }
      .reservation-btn .upper {
        background-color: white;
        border-radius: 5px 5px 0 0;
        padding: 9px 0 0 34px;
        height: 54px;
        width: 100%;
        -webkit-justify-content: flex-start;
        justify-content: flex-start; }
        .reservation-btn .upper figure {
          width: 22px; }
        .reservation-btn .upper .text {
          color: #1c4e6a;
          padding-left: 14px; }
          .reservation-btn .upper .text .sml {
            font-size: 12px;
            font-size: 1.2rem;
            letter-spacing: 0.075em; }
          .reservation-btn .upper .text .big {
            display: block;
            font-size: 14px;
            font-size: 1.4rem;
            padding-top: 4px; }
            .reservation-btn .upper .text .big b {
              font-size: 18px;
              font-size: 1.8rem;
              font-weight: bold; }
      .reservation-btn .lower {
        color: white;
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: 0.05em;
        padding-top: 6px;
        text-align: center; } }
  @media only screen and (max-width: 767px) {
    .reservation-btn {
      opacity: 0;
      pointer-events: none;
      position: fixed !important;
      transition: all 0.3s;
      bottom: 11px;
      right: 70px;
      width: 182px;
      z-index: 99; }
      .reservation-btn.active {
        opacity: 1;
        pointer-events: all; } }

.res-calendar {
  margin-bottom: 30px;
  margin-top: 34px; }
  .res-calendar__header {
    position: relative;
    height: 30px;
    text-align: center;
    margin-bottom: 11px; }
    .res-calendar__header--date {
      font-family: "Oswald", sans-serif;
      font-size: 24px;
      font-size: 2.4rem;
      letter-spacing: 0.05em;
      font-weight: 500; }

body.port-building .res-calendar__content .table {
  width: 100%; }
  @media only screen and (min-width: 768px) {
    body.port-building .res-calendar__content .table {
      max-width: 770px;
      display: flex;
      margin: 0 auto;
      border: 1px solid #da5019;
      border-radius: 5px;
      overflow: hidden; } }
  @media only screen and (max-width: 767px) {
    body.port-building .res-calendar__content .table {
      width: 325px;
      margin-bottom: 20px; } }
  body.port-building .res-calendar__content .table .group {
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.port-building .res-calendar__content .table .group {
        width: calc(100% / 8); } }
    @media only screen and (max-width: 767px) {
      body.port-building .res-calendar__content .table .group {
        margin-bottom: 10px;
        border: 1px solid #da5019;
        border-radius: 3px;
        overflow: hidden;
        margin-right: -1px;
        transition: height 0.3s; }
        body.port-building .res-calendar__content .table .group:not(.is-open) {
          height: 40px;
          overflow: hidden; } }
  body.port-building .res-calendar__content .table__heading__header--title {
    height: 40px;
    background: #da5019;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    border-bottom: 1px solid #fff;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 700; }
    @media only screen and (min-width: 768px) {
      body.port-building .res-calendar__content .table__heading__header--title {
        border-right: 1px solid #fff; } }
    @media only screen and (max-width: 767px) {
      body.port-building .res-calendar__content .table__heading__header--title {
        letter-spacing: 0.025em; } }
    body.port-building .res-calendar__content .table__heading__header--title .icon {
      position: relative; }
      body.port-building .res-calendar__content .table__heading__header--title .icon:before, body.port-building .res-calendar__content .table__heading__header--title .icon:after {
        content: "";
        width: 10px;
        height: 1px;
        background-color: #da5019;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, 0) rotateZ(0); }
      body.port-building .res-calendar__content .table__heading__header--title .icon:after {
        transition: transform 0.3s; }
      @media only screen and (min-width: 768px) {
        body.port-building .res-calendar__content .table__heading__header--title .icon {
          display: none; } }
      @media only screen and (max-width: 767px) {
        body.port-building .res-calendar__content .table__heading__header--title .icon {
          content: "";
          height: 24px;
          width: 24px;
          border-radius: 50%;
          background-color: #fff;
          top: 50%;
          right: 15px;
          position: absolute;
          transform: translateY(-50%); } }
    body.port-building .res-calendar__content .table__heading__header--title:not(.is-open) .icon:after {
      transform: translate(-50%, 0) rotateZ(-90deg); }
  @media only screen and (max-width: 767px) {
    body.port-building .res-calendar__content .table__heading__columns {
      display: flex; } }
  body.port-building .res-calendar__content .table__heading__columns--col {
    height: 60px;
    display: flex; }
    @media only screen and (max-width: 767px) {
      body.port-building .res-calendar__content .table__heading__columns--col {
        width: 50%; } }
    body.port-building .res-calendar__content .table__heading__columns--col div {
      background-color: #fbede8;
      border-right: 1px solid #fff;
      display: flex;
      justify-content: center;
      align-items: center; }
    @media only screen and (max-width: 767px) {
      body.port-building .res-calendar__content .table__heading__columns--col2 div:last-child {
        border-right: none; } }
    body.port-building .res-calendar__content .table__heading__columns--col .date {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      font-weight: 700; }
      @media only screen and (max-width: 767px) {
        body.port-building .res-calendar__content .table__heading__columns--col .date {
          font-size: 13px;
          font-size: 1.3rem; } }
      body.port-building .res-calendar__content .table__heading__columns--col .date:not(.no-hide) {
        flex: 1 1 auto; }
        @media only screen and (min-width: 768px) {
          body.port-building .res-calendar__content .table__heading__columns--col .date:not(.no-hide) {
            display: none; } }
      body.port-building .res-calendar__content .table__heading__columns--col .date.no-hide {
        width: 100%; }
    body.port-building .res-calendar__content .table__heading__columns--col div:not(.date) {
      -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
      font-size: 15px;
      font-size: 1.5rem;
      font-weight: 500;
      letter-spacing: 0.05em; }
      @media only screen and (min-width: 768px) {
        body.port-building .res-calendar__content .table__heading__columns--col div:not(.date) {
          width: calc(100% / 3); } }
      @media only screen and (max-width: 767px) {
        body.port-building .res-calendar__content .table__heading__columns--col div:not(.date) {
          font-size: 13px;
          font-size: 1.3rem;
          flex: 0 0 25px; } }
    @media only screen and (min-width: 768px) {
      body.port-building .res-calendar__content .table__heading__columns--col2 {
        display: none; } }
  @media only screen and (max-width: 767px) {
    body.port-building .res-calendar__content .table__content {
      columns: 160px 2;
      column-gap: 0; } }
  body.port-building .res-calendar__content .table__content__row {
    height: 30px;
    border-bottom: 1px solid #e1e1e1;
    display: inline-flex;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.port-building .res-calendar__content .table__content__row {
        display: flex; } }
    body.port-building .res-calendar__content .table__content__row .date {
      text-align: right;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      padding-right: 10px;
      border-right: 1px solid #e1e1e1;
      flex: 1 1 auto;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      font-weight: 700; }
      @media only screen and (min-width: 768px) {
        body.port-building .res-calendar__content .table__content__row .date:not(.no-hide) {
          display: none; } }
      body.port-building .res-calendar__content .table__content__row .date.no-hide {
        width: 100%; }
      body.port-building .res-calendar__content .table__content__row .date.do {
        color: #2794eb; }
      body.port-building .res-calendar__content .table__content__row .date.nichi {
        color: #e43030; }
    body.port-building .res-calendar__content .table__content__row div:not(.date) {
      border-right: 1px solid #e1e1e1;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      @media only screen and (min-width: 768px) {
        body.port-building .res-calendar__content .table__content__row div:not(.date) {
          width: calc(100% / 3); }
          body.port-building .res-calendar__content .table__content__row div:not(.date):nth-child(2), body.port-building .res-calendar__content .table__content__row div:not(.date):nth-child(3) {
            border-right: 1px dashed #e1e1e1; } }
      @media only screen and (max-width: 767px) {
        body.port-building .res-calendar__content .table__content__row div:not(.date) {
          flex: 0 0 25px; } }
  @media only screen and (min-width: 768px) {
    body.port-building .res-calendar__content .table .group:nth-child(2n + 2) .table__heading__columns--col div {
      background-color: #f8dcd1; }
    body.port-building .res-calendar__content .table .group:nth-child(2n + 2) .table__content__row {
      background-color: #fefaf8; }
    body.port-building .res-calendar__content .table .group:last-child .table__heading__header--title,
    body.port-building .res-calendar__content .table .group:last-child .table__heading__columns--col div:last-child {
      border-right: none; } }

body.harbor-lodge .res-calendar__content2 {
  border: 1px solid #d04d82;
  border-radius: 5px;
  overflow: hidden; }
  body.harbor-lodge .res-calendar__content2 table {
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse; }
    body.harbor-lodge .res-calendar__content2 table thead tr:first-child th {
      height: 40px;
      background: #d04d82;
      color: #fff;
      border-right: 1px solid #fff;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 700;
      text-align: center;
      border-bottom: 1px solid #fff; }
      body.harbor-lodge .res-calendar__content2 table thead tr:first-child th:first-child {
        width: 95px; }
      body.harbor-lodge .res-calendar__content2 table thead tr:first-child th:last-child {
        border-right: none; }
    body.harbor-lodge .res-calendar__content2 table thead tr:nth-child(2) {
      height: 60px; }
      body.harbor-lodge .res-calendar__content2 table thead tr:nth-child(2) td {
        background-color: #f6dbe6;
        text-align: center;
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: 500;
        border-right: 1px solid #fff; }
        body.harbor-lodge .res-calendar__content2 table thead tr:nth-child(2) td:first-child {
          font-size: 14px;
          font-size: 1.4rem;
          font-weight: 700; }
        body.harbor-lodge .res-calendar__content2 table thead tr:nth-child(2) td:nth-child(odd) {
          background-color: #faedf2; }
        body.harbor-lodge .res-calendar__content2 table thead tr:nth-child(2) td:last-child {
          border-right: none; }
        body.harbor-lodge .res-calendar__content2 table thead tr:nth-child(2) td .small {
          font-size: 10px;
          font-size: 1rem; }
    body.harbor-lodge .res-calendar__content2 table tbody th,
    body.harbor-lodge .res-calendar__content2 table tbody td {
      border-bottom: 1px solid #e1e1e1;
      border-right: 1px solid #e1e1e1;
      letter-spacing: 0.05em;
      text-align: center; }
    body.harbor-lodge .res-calendar__content2 table tbody th {
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 700;
      text-align: right;
      padding: 8px 10px; }
      body.harbor-lodge .res-calendar__content2 table tbody th:last-child {
        border-right: none; }
    body.harbor-lodge .res-calendar__content2 table tbody td:nth-child(even) {
      background-color: #fef9fb; }
    body.harbor-lodge .res-calendar__content2 table tbody tr.nichi th {
      color: #e43030; }
    body.harbor-lodge .res-calendar__content2 table tbody tr.do th {
      color: #2794eb; }
    body.harbor-lodge .res-calendar__content2 table tbody tr:last-child th,
    body.harbor-lodge .res-calendar__content2 table tbody tr:last-child td {
      border-bottom: none; }

body.harbor-lodge .res-calendar__content-sp .table {
  margin-bottom: 10px;
  transition: height 0.3s; }
  body.harbor-lodge .res-calendar__content-sp .table:not(.is-open) {
    height: 40px;
    overflow: hidden; }
  body.harbor-lodge .res-calendar__content-sp .table--heading {
    position: relative;
    color: #fff;
    background-color: #d04d82;
    text-align: center;
    height: 40px;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 700;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    border-radius: 3px;
    transition: border-radius 0s; }
    body.harbor-lodge .res-calendar__content-sp .table--heading .small {
      font-size: 12px;
      font-size: 1.2rem; }
    body.harbor-lodge .res-calendar__content-sp .table--heading .icon {
      position: relative; }
      body.harbor-lodge .res-calendar__content-sp .table--heading .icon:before, body.harbor-lodge .res-calendar__content-sp .table--heading .icon:after {
        content: "";
        width: 10px;
        height: 1px;
        background-color: #d04d82;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, 0) rotateZ(0); }
      body.harbor-lodge .res-calendar__content-sp .table--heading .icon:after {
        transition: transform 0.3s; }
      @media only screen and (min-width: 768px) {
        body.harbor-lodge .res-calendar__content-sp .table--heading .icon {
          display: none; } }
      @media only screen and (max-width: 767px) {
        body.harbor-lodge .res-calendar__content-sp .table--heading .icon {
          content: "";
          height: 24px;
          width: 24px;
          border-radius: 50%;
          background-color: #fff;
          top: 50%;
          right: 15px;
          position: absolute;
          transform: translateY(-50%); } }
    body.harbor-lodge .res-calendar__content-sp .table--heading.is-open {
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }
    body.harbor-lodge .res-calendar__content-sp .table--heading:not(.is-open) {
      transition: border-radius 0.2s 0.3s; }
      body.harbor-lodge .res-calendar__content-sp .table--heading:not(.is-open) .icon:after {
        transform: translate(-50%, 0) rotateZ(-90deg); }
  body.harbor-lodge .res-calendar__content-sp .table__content {
    border: 1px solid #d04d82;
    border-top: none;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    overflow: hidden;
    columns: 160px 2;
    column-gap: 0; }
    body.harbor-lodge .res-calendar__content-sp .table__content__row {
      border-bottom: 1px solid #e1e1e1;
      height: 30px;
      display: -webkit-inline-flex;
      display: inline-flex;
      width: calc(100% + 1px); }
      body.harbor-lodge .res-calendar__content-sp .table__content__row div {
        width: 50%; }
      body.harbor-lodge .res-calendar__content-sp .table__content__row--date, body.harbor-lodge .res-calendar__content-sp .table__content__row--status {
        border-right: 1px solid #e1e1e1; }
      body.harbor-lodge .res-calendar__content-sp .table__content__row--date {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
        padding-right: 10px;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: 700; }
        body.harbor-lodge .res-calendar__content-sp .table__content__row--date.do {
          color: #2794eb; }
        body.harbor-lodge .res-calendar__content-sp .table__content__row--date.nichi {
          color: #e43030; }
      body.harbor-lodge .res-calendar__content-sp .table__content__row--status {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        font-size: 15px;
        font-size: 1.5rem; }
      body.harbor-lodge .res-calendar__content-sp .table__content__row.closed div {
        background-color: #f0f0f0; }

table.schedulle-table {
  border-collapse: inherit;
  margin: 20px auto 13px;
  table-layout: fixed;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    table.schedulle-table {
      margin: 10px auto 15px; } }
  table.schedulle-table tr {
    /* IE11  */ }
    table.schedulle-table tr:last-child .day-content {
      border-bottom: 1px solid #e8f1f5; }
      table.schedulle-table tr:last-child .day-content:nth-child(1) {
        border-bottom-left-radius: 7px; }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr:last-child .day-content:nth-child(1) {
            border-bottom-left-radius: 3px; } }
      table.schedulle-table tr:last-child .day-content:nth-child(7) {
        border-bottom-right-radius: 7px; }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr:last-child .day-content:nth-child(7) {
            border-bottom-right-radius: 3px; } }
    table.schedulle-table tr .day-header {
      background-color: #0095a1;
      border-right: 1px solid #e8f1f5;
      color: white;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 600;
      text-align: center;
      letter-spacing: 0.05em;
      height: 40px;
      width: calc(100% / 7); }
      @media only screen and (max-width: 767px) {
        table.schedulle-table tr .day-header {
          font-size: 11px;
          font-size: 1.1rem;
          height: 25px; } }
      table.schedulle-table tr .day-header:first-of-type {
        border-top-left-radius: 7px; }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr .day-header:first-of-type {
            border-top-left-radius: 3px; } }
      table.schedulle-table tr .day-header:last-of-type {
        border-top-right-radius: 7px;
        border-right: none; }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr .day-header:last-of-type {
            border-top-right-radius: 3px; } }
    table.schedulle-table tr _:lang(x)::-ms-backdrop,
    table.schedulle-table tr .day-header {
      padding-top: 6px; }
    table.schedulle-table tr .day-content {
      border-left: 1px solid #e8f1f5;
      color: #1c4e6a;
      text-align: center;
      height: 105px;
      vertical-align: top;
      /* IE11  */ }
      table.schedulle-table tr .day-content:last-child {
        border-right: 1px solid #e8f1f5; }
      @media only screen and (max-width: 767px) {
        table.schedulle-table tr .day-content {
          border-bottom: 1px solid #e8f1f5;
          padding-top: 3px;
          height: 45px;
          vertical-align: middle; } }
      table.schedulle-table tr .day-content.yasumi {
        background-color: #dddddd; }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr .day-content.yasumi .day-number {
            background-color: #dddddd; }
            table.schedulle-table tr .day-content.yasumi .day-number:after {
              display: none; } }
        @media only screen and (min-width: 768px) {
          table.schedulle-table tr .day-content.yasumi .time:hover {
            background-color: #f5f5f5; } }
        table.schedulle-table tr .day-content.yasumi .time span {
          color: #e43030;
          font-size: 18px;
          font-size: 1.8rem;
          font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
          font-weight: 500;
          text-decoration: none; }
          table.schedulle-table tr .day-content.yasumi .time span:after {
            display: none; }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr .day-content.yasumi .time {
            display: none; } }
      table.schedulle-table tr .day-content.today {
        background-color: #e5f4f5; }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr .day-content.today .day-number {
            background-color: #e5f4f5; } }
      table.schedulle-table tr .day-content .day-number {
        background-color: #f7fcfe;
        font-size: 16px;
        font-size: 1.6rem;
        font-family: "Oswald", sans-serif;
        font-weight: 600;
        letter-spacing: 0.05em;
        padding-top: 9px;
        height: 35px; }
        @media only screen and (min-width: 768px) {
          table.schedulle-table tr .day-content .day-number a {
            pointer-events: none; } }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr .day-content .day-number {
            background-color: white;
            display: inline-block;
            font-size: 15px;
            font-size: 1.5rem;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            padding-top: 0;
            position: relative;
            top: -3px;
            height: auto; }
            table.schedulle-table tr .day-content .day-number:after {
              background-color: #1c4e6a;
              content: "";
              position: absolute;
              bottom: -4px;
              left: 0;
              height: 1px;
              width: 100%; } }
      table.schedulle-table tr .day-content _:lang(x)::-ms-backdrop,
      table.schedulle-table tr .day-content .day-number {
        padding-top: 10px; }
      table.schedulle-table tr .day-content .time {
        font-size: 16px;
        font-size: 1.6rem;
        font-family: "Oswald", sans-serif;
        letter-spacing: 0.025em;
        position: relative;
        height: 70px; }
        @media only screen and (min-width: 768px) {
          table.schedulle-table tr .day-content .time {
            transition: all .3s; }
            table.schedulle-table tr .day-content .time:hover {
              background-color: #e5f4f5; } }
        @media only screen and (max-width: 767px) {
          table.schedulle-table tr .day-content .time {
            display: none; } }
        table.schedulle-table tr .day-content .time span {
          display: inline-block;
          margin: 0 auto;
          position: relative;
          left: 0;
          right: 0;
          top: 47%;
          transform: translateY(-50%); }
          table.schedulle-table tr .day-content .time span:after {
            background-color: #1c4e6a;
            content: "";
            position: absolute;
            bottom: -2px;
            left: 0;
            height: 1px;
            width: 100%; }
      table.schedulle-table tr .day-content:nth-child(6) .day-number {
        color: #2794eb; }
      table.schedulle-table tr .day-content:nth-child(7) .day-number {
        color: #e43030; }
        table.schedulle-table tr .day-content:nth-child(7) .day-number:after {
          background-color: #e43030; }

.search-container {
  position: relative; }

.search-box {
  border: 1px solid #1c4e6a;
  display: none;
  font-size: 0;
  padding-bottom: 2px;
  position: absolute;
  top: 150%;
  left: -335px;
  margin: auto;
  height: 64px;
  width: 385px;
  z-index: 11; }
  @media only screen and (max-width: 767px) {
    .search-box {
      border: none;
      display: block;
      padding-bottom: 0;
      position: static;
      height: 30px;
      width: 100%; } }
  .search-box:before {
    content: "";
    background: #fff;
    border-top: 1px solid #1c4e6a;
    border-right: 1px solid #1c4e6a;
    position: absolute;
    right: 20px;
    top: -5px;
    width: 8px;
    height: 8px;
    margin: auto;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg); }
    @media only screen and (max-width: 767px) {
      .search-box:before {
        display: none; } }
  .search-box input.gsc-input, .search-box .gsc-input-box, .search-box .gsc-input-box-hover, .search-box .gsc-input-box-focus {
    border-color: #1c4e6a;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    height: 30px; }
  .search-box .gsc-search-box-tools .gsc-search-box .gsc-input {
    padding-right: 0; }
  @media only screen and (max-width: 767px) {
    .search-box .gsc-control-cse {
      border: none;
      background-color: transparent;
      padding: 0; }
    .search-box .gsc-input-box {
      padding-top: 0; } }
  .search-box input {
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 30px); }
  .search-box button {
    background: #1c4e6a;
    border: 1px solid #1c4e6a;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    outline: none;
    display: inline-block;
    margin-left: 0;
    vertical-align: middle;
    width: 70px;
    height: 30px;
    padding-bottom: 6px;
    padding: 0; }
    @media only screen and (min-width: 768px) {
      .search-box button:hover {
        background-color: #1c4e6a; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) {
    .search-box button:hover {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      .search-box button:hover:hover {
        opacity: .7; } }
    @media only screen and (max-width: 767px) {
      .search-box button {
        border-top-right-radius: 5px;
        border-bottom-right-radius: 5px; } }
    .search-box button img {
      width: 13px;
      height: 13px; }
      @media only screen and (max-width: 767px) {
        .search-box button img {
          width: 15px; } }
    .search-box button svg {
      fill: white; }

.side-page-ttl-inner {
  margin: 0 auto;
  padding: 45px 100px 0;
  height: 127px; }
  @media only screen and (max-width: 767px) {
    .side-page-ttl-inner {
      padding: 90px 0 30px 25px;
      height: auto; } }
  @media only screen and (min-width: 768px) and (max-width: 1023px) {
    .side-page-ttl-inner {
      padding-left: 20px;
      padding-right: 20px; } }

.side-page-ttl {
  font-size: 32px;
  font-size: 3.2rem;
  letter-spacing: 0.15em;
  font-weight: 500;
  padding-left: 27px;
  position: relative;
  line-height: 1.2em;
  /* IE11  */ }
  @media only screen and (max-width: 767px) {
    .side-page-ttl {
      font-size: 20px;
      font-size: 2rem; } }
  .side-page-ttl:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    height: 2px;
    width: 15px;
    background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
    background-image: linear-gradient(to right, #005ca1, #0095a1); }
    @media only screen and (max-width: 767px) {
      .side-page-ttl:before {
        width: 10px; } }
  .side-page-ttl _:lang(x)::-ms-backdrop, .side-page-ttl:before {
    top: 35%; }

.ticket-heading {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  line-height: 1.5em;
  font-weight: bold;
  background-color: #fff9f4;
  text-align: left;
  border-radius: 5px;
  border: #e69858 solid 1px;
  padding: 10px 10px 10px 90px;
  background-image: url(../images/common/icon-fish.svg);
  background-repeat: no-repeat;
  background-size: 38px 24px;
  background-position: center left 40px;
  position: relative;
  margin-bottom: 20px; }
  @media all and (-ms-high-contrast: none) {
    .ticket-heading {
      padding-top: 20px; } }
  @media only screen and (max-width: 767px) {
    .ticket-heading {
      font-size: 12.5px;
      font-size: 1.25rem;
      line-height: 1.44em;
      padding: 7px 7px 7px 55px;
      background-size: 30px 20px;
      background-position: center left 15px;
      margin-bottom: 25px; } }
  .ticket-heading:before, .ticket-heading:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    position: absolute;
    bottom: 0; }
  .ticket-heading:before {
    border-width: 11px 10px 0 10px;
    border-color: #e69858 transparent transparent transparent;
    left: 50px;
    bottom: -11px; }
    @media only screen and (max-width: 767px) {
      .ticket-heading:before {
        left: 20px; } }
  .ticket-heading:after {
    border-width: 10px 9px 0 9px;
    border-color: #fff9f4 transparent transparent transparent;
    left: 51px;
    bottom: -9px;
    z-index: 2; }
    @media only screen and (max-width: 767px) {
      .ticket-heading:after {
        left: 21px; } }
  .ticket-heading em {
    font-size: 18px;
    font-size: 1.8rem;
    color: #e69858; }
    @media only screen and (max-width: 767px) {
      .ticket-heading em {
        font-size: 12.5px;
        font-size: 1.25rem; } }
  .ticket-heading strong {
    color: #e43030; }

.ttl-01 {
  color: #1c4e6a;
  display: inline-block;
  position: relative;
  font-weight: 500;
  font-size: 24px;
  font-size: 2.4rem;
  letter-spacing: 0.15em;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .ttl-01 {
      font-size: 18px;
      font-size: 1.8rem;
      line-height: 1.333333333em; } }
  .ttl-01 .color {
    color: #0095a1; }
  .ttl-01 span {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6em; }
    @media only screen and (max-width: 767px) {
      .ttl-01 span {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.285714286em; } }
  .ttl-01.deco {
    /* IE11  */ }
    .ttl-01.deco:before, .ttl-01.deco:after {
      background-image: url("../images/common/ttl-01_deco.png");
      background-size: 22px 4px;
      content: "";
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      height: 4px;
      width: 22px; }
      @media only screen and (max-width: 767px) {
        .ttl-01.deco:before, .ttl-01.deco:after {
          background-size: 18px 3px;
          height: 3px;
          width: 18px; } }
    .ttl-01.deco _:lang(x)::-ms-backdrop, .ttl-01.deco:before, .ttl-01.deco:after {
      top: 35%; }
    .ttl-01.deco:before {
      left: -42px; }
      @media only screen and (max-width: 767px) {
        .ttl-01.deco:before {
          left: -28px; } }
    .ttl-01.deco:after {
      right: -42px; }
      @media only screen and (max-width: 767px) {
        .ttl-01.deco:after {
          right: -28px; } }

.ttl-02 {
  border-bottom: 1px dashed #0095a1;
  color: #0095a1;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.1em;
  letter-spacing: 0.1em;
  padding-bottom: 12px;
  text-align: left;
  line-height: 1.4em; }
  .ttl-02 span {
    font-size: 16px;
    font-size: 1.6rem; }
    @media only screen and (max-width: 767px) {
      .ttl-02 span {
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.5; } }
  @media only screen and (max-width: 767px) {
    .ttl-02 {
      border-bottom: 1px dotted #0095a1;
      font-size: 17px;
      font-size: 1.7rem;
      padding-bottom: 8px; } }

/* Z-INDEX */
.formError {
  z-index: 990; }

.formError .formErrorContent {
  z-index: 991; }

.formError .formErrorArrow {
  z-index: 996; }

.ui-dialog .formError {
  z-index: 5000; }

.ui-dialog .formError .formErrorContent {
  z-index: 5001; }

.ui-dialog .formError .formErrorArrow {
  z-index: 5006; }

.inputContainer {
  position: relative;
  float: left; }

.formError {
  position: absolute;
  top: 300px;
  left: 300px;
  display: block;
  cursor: pointer;
  text-align: left; }

.formError.inline {
  position: relative;
  top: 0;
  left: 0;
  display: inline-block; }

.ajaxSubmit {
  padding: 20px;
  background: #55ea55;
  border: 1px solid #999;
  display: none; }

.formError .formErrorContent {
  width: 100%;
  background: #ee0101;
  position: relative;
  color: #fff;
  min-width: 120px;
  font-size: 11px;
  border: 2px solid #ddd;
  box-shadow: 0 0 6px #000;
  -moz-box-shadow: 0 0 6px #000;
  -webkit-box-shadow: 0 0 6px #000;
  -o-box-shadow: 0 0 6px #000;
  padding: 4px 10px 4px 10px;
  border-radius: 6px;
  -moz-border-radius: 6px;
  -webkit-border-radius: 6px;
  -o-border-radius: 6px; }

.formError.inline .formErrorContent {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  border: none;
  border-radius: 0;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  -o-border-radius: 0; }

.greenPopup .formErrorContent {
  background: #33be40; }

.blackPopup .formErrorContent {
  background: #393939;
  color: #FFF; }

.formError .formErrorArrow {
  width: 15px;
  margin: -2px 0 0 13px;
  position: relative; }

body[dir='rtl'] .formError .formErrorArrow,
body.rtl .formError .formErrorArrow {
  margin: -2px 13px 0 0; }

.formError .formErrorArrowBottom {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none;
  margin: 0px 0 0 12px;
  top: 2px; }

.formError .formErrorArrow div {
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  box-shadow: 0 2px 3px #444;
  -moz-box-shadow: 0 2px 3px #444;
  -webkit-box-shadow: 0 2px 3px #444;
  -o-box-shadow: 0 2px 3px #444;
  font-size: 0px;
  height: 1px;
  background: #ee0101;
  margin: 0 auto;
  line-height: 0;
  font-size: 0;
  display: block; }

.formError .formErrorArrowBottom div {
  box-shadow: none;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  -o-box-shadow: none; }

.greenPopup .formErrorArrow div {
  background: #33be40; }

.blackPopup .formErrorArrow div {
  background: #393939;
  color: #FFF; }

.formError .formErrorArrow .line10 {
  width: 13px;
  border: none; }

.formError .formErrorArrow .line9 {
  width: 11px;
  border: none; }

.formError .formErrorArrow .line8 {
  width: 11px; }

.formError .formErrorArrow .line7 {
  width: 9px; }

.formError .formErrorArrow .line6 {
  width: 7px; }

.formError .formErrorArrow .line5 {
  width: 5px; }

.formError .formErrorArrow .line4 {
  width: 3px; }

.formError .formErrorArrow .line3 {
  width: 1px;
  border-left: 2px solid #ddd;
  border-right: 2px solid #ddd;
  border-bottom: 0 solid #ddd; }

.formError .formErrorArrow .line2 {
  width: 3px;
  border: none;
  background: #ddd; }

.formError .formErrorArrow .line1 {
  width: 1px;
  border: none;
  background: #ddd; }

.warning-popup {
  background-color: white;
  border-radius: 8px;
  border: 1px solid #e43030;
  overflow: hidden;
  position: absolute;
  left: 30px;
  top: 50px;
  width: 360px;
  z-index: 101; }
  @media only screen and (max-width: 767px) {
    .warning-popup {
      border-radius: 5px;
      margin: 0 auto;
      left: 0;
      right: 0;
      top: 85px;
      width: calc(100% - 80px); } }
  .warning-popup .warning-ttl {
    background-color: #e43030;
    color: white;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.025em;
    padding-top: 8px;
    text-align: center;
    height: 30px; }
    @media only screen and (max-width: 767px) {
      .warning-popup .warning-ttl {
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: 0.05em;
        padding-top: 6px;
        height: 25px; } }
    .warning-popup .warning-ttl:before {
      background-image: url("../images/language/btn_close.png");
      background-size: 20px;
      content: "";
      position: absolute;
      right: 4px;
      top: 5px;
      height: 20px;
      width: 20px; }
      @media only screen and (max-width: 767px) {
        .warning-popup .warning-ttl:before {
          background-size: 18px;
          right: 4px;
          top: 3px;
          height: 18px;
          width: 18px; } }
  .warning-popup p {
    color: #e43030;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.025em;
    line-height: 1.71;
    padding: 18px 16px 23px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .warning-popup p {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.76;
        padding: 17px 22px 20px; } }
    @media screen and (device-aspect-ratio: 40 / 71) {
      .warning-popup p {
        font-size: 10px;
        font-size: 1rem; } }
  .warning-popup b, .warning-popup strong {
    font-weight: bold; }
  .warning-popup em {
    font-style: italic; }
  .warning-popup a {
    text-decoration: underline; }

.remodal-warning {
  padding: 0;
  border-radius: 5px;
  max-width: 900px;
  width: 82%;
  border: solid 1px #E43030; }
  .remodal-warning .remodal-close {
    left: auto;
    right: 0px;
    top: 7px;
    background-size: 72px auto;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='80' height='80' viewBox='0 0 80 80'%3E%3Cdefs%3E%3Cfilter id='bg' x='0' y='0' width='80' height='80' filterUnits='userSpaceOnUse'%3E%3CfeOffset input='SourceAlpha'/%3E%3CfeGaussianBlur stdDeviation='10' result='blur'/%3E%3CfeFlood flood-color='%231c4e6a' flood-opacity='0.102'/%3E%3CfeComposite operator='in' in2='blur'/%3E%3CfeComposite in='SourceGraphic'/%3E%3C/filter%3E%3Cfilter id='Path_362' x='5.214' y='5.596' width='68.592' height='68.576' filterUnits='userSpaceOnUse'%3E%3CfeOffset input='SourceAlpha'/%3E%3CfeGaussianBlur stdDeviation='10' result='blur-2'/%3E%3CfeFlood flood-color='%231c4e6a' flood-opacity='0.102'/%3E%3CfeComposite operator='in' in2='blur-2'/%3E%3CfeComposite in='SourceGraphic'/%3E%3C/filter%3E%3C/defs%3E%3Cg id='btn_close' transform='translate(-335 -25)'%3E%3Cg transform='matrix(1, 0, 0, 1, 335, 25)' filter='url(%23bg)'%3E%3Ccircle cx='10' cy='10' r='10' transform='translate(30 30)' fill='%23fff'/%3E%3C/g%3E%3Cg transform='matrix(1, 0, 0, 1, 335, 25)' filter='url(%23Path_362)'%3E%3Cpath d='M7.344-6.08,3.7-2.432l.64.64L7.984-5.44l3.648,3.632.656-.64L8.64-6.08l3.632-3.632-.656-.64L8-6.72,4.352-10.368l-.64.656Z' transform='translate(31.52 45.96)' fill='%23e43030'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E%0A"); }
    @media only screen and (min-width: 768px) {
      .remodal-warning .remodal-close {
        right: 9px;
        top: 10px;
        background-size: auto; } }
    .remodal-warning .remodal-close:before {
      display: none; }
  .remodal-warning .box-title {
    position: relative;
    background: #E43030;
    text-align: left;
    padding: 14px 44px 16px 15px; }
    @media only screen and (min-width: 768px) {
      .remodal-warning .box-title {
        padding: 15px 70px 18px 29px; } }
    .remodal-warning .box-title p {
      letter-spacing: 0.04em;
      line-height: 20px;
      color: #fff;
      font-weight: bold;
      text-shadow: 0px 0px 20px rgba(28, 78, 106, 0.1);
      font-size: 15px;
      font-size: 1.5rem; }
      @media only screen and (min-width: 768px) {
        .remodal-warning .box-title p {
          line-height: 22px;
          font-size: 16px;
          font-size: 1.6rem; } }
  .remodal-warning .box-text {
    text-align: left;
    padding: 23px 24px 22px; }
    @media only screen and (min-width: 768px) {
      .remodal-warning .box-text {
        padding: 28px 29px 28px; } }
    .remodal-warning .box-text p {
      margin-bottom: 15px;
      letter-spacing: 0;
      line-height: 23px;
      color: #e43030;
      text-shadow: 0px 0px 20px rgba(28, 78, 106, 0.1);
      font-size: 13px;
      font-size: 1.3rem; }
      @media only screen and (min-width: 768px) {
        .remodal-warning .box-text p {
          letter-spacing: 0.04em;
          line-height: 24px;
          font-size: 14px;
          font-size: 1.4rem; } }
      .remodal-warning .box-text p:last-child {
        margin-bottom: 0; }
    .remodal-warning .box-text a {
      text-decoration: underline; }

.notfound .mv-side {
  background-image: url("../images/contact/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    .notfound .mv-side {
      background-image: url("../images/contact/mv_sp.jpg"); } }

.notfound main {
  min-height: auto; }

.notfound #content {
  color: #1e2328;
  margin: 0 auto;
  padding: 100px 0;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .notfound #content {
      padding: 60px 20px 100px;
      width: 100%; } }
  @media only screen and (max-width: 320px) {
    .notfound #content {
      padding: 100px 10px; } }
  .notfound #content p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2;
    text-align: center; }
  .notfound #content .btn {
    margin: 50px auto 0; }
    @media only screen and (max-width: 767px) {
      .notfound #content .btn {
        margin: 34px auto 0; } }

body.access .mv-side {
  background-image: url("../images/access/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.access .mv-side {
      background-image: url("../images/access/mv_sp.jpg"); } }
  body.access .mv-side .reservation-btn {
    display: block; }

body.access .ttl-02 {
  font-weight: 500; }

body.access main .notes {
  font-size: 12px;
  font-size: 1.2rem;
  padding-left: 12px;
  margin-top: 3px;
  position: relative;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    body.access main .notes {
      display: block;
      font-size: 11px;
      font-size: 1.1rem;
      line-height: 1.6;
      margin-top: 10px; } }
  body.access main .notes .ast {
    position: absolute;
    left: 0;
    top: 0; }
    @media only screen and (max-width: 767px) {
      body.access main .notes .ast {
        top: 0px; } }

body.access section#map {
  padding: 126px 0 120px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.access section#map {
      padding: 72px 0 70px; } }
  body.access section#map .txt-map {
    margin: 62px 0 65px; }
    @media only screen and (min-width: 768px) {
      body.access section#map .txt-map {
        text-align: center; } }
    @media only screen and (max-width: 767px) {
      body.access section#map .txt-map {
        margin: 35px 0 45px; } }
  body.access section#map .date-map {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: 0.1em;
    color: #0095a1;
    padding-bottom: 17px;
    border-bottom: 1px dashed #0095a1;
    margin-bottom: 39px; }
    @media only screen and (max-width: 767px) {
      body.access section#map .date-map {
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1.4;
        padding-bottom: 10px;
        margin-bottom: 29px; } }
  body.access section#map .img-map {
    text-align: center;
    margin-bottom: 70px; }
    @media only screen and (max-width: 767px) {
      body.access section#map .img-map {
        margin-bottom: 20px; }
        body.access section#map .img-map .notes {
          text-align: right; } }
  body.access section#map .note-map {
    text-align: center;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.6; }
    @media only screen and (max-width: 767px) {
      body.access section#map .note-map {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5; } }

body.access section#train {
  background-color: #f5fbfe;
  padding: 117px 0 116px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.access section#train {
      padding: 67px 0 66px; } }
  body.access section#train .station-card {
    background-color: white;
    border-radius: 5px;
    padding: 46px 60px 50px; }
    @media only screen and (max-width: 767px) {
      body.access section#train .station-card {
        padding: 30px 25px 35px; } }
    body.access section#train .station-card .station-list {
      margin: 39px auto 41px; }
      @media only screen and (max-width: 767px) {
        body.access section#train .station-card .station-list {
          margin: 27px auto 24px; } }
      body.access section#train .station-card .station-list li {
        font-size: 14px;
        font-size: 1.4rem;
        margin-bottom: 16px;
        padding-left: 16px;
        position: relative;
        text-align: left; }
        @media only screen and (max-width: 767px) {
          body.access section#train .station-card .station-list li {
            line-height: 1.71; } }
        body.access section#train .station-card .station-list li:last-child {
          margin-bottom: 0; }
        body.access section#train .station-card .station-list li:before {
          background-color: #1c4e6a;
          border-radius: 50%;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 4px;
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.access section#train .station-card .station-list li:before {
              top: 9px;
              height: 4px;
              width: 4px; } }
  body.access section#train .first .station-card {
    margin-top: 76px; }
    @media only screen and (max-width: 767px) {
      body.access section#train .first .station-card {
        margin-top: 45px; } }
  body.access section#train .second {
    padding-top: 148px; }
    @media only screen and (max-width: 767px) {
      body.access section#train .second {
        padding-top: 82px; } }
    body.access section#train .second .intro {
      font-size: 14px;
      font-size: 1.4rem;
      margin: 62px auto 40px;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.access section#train .second .intro {
          margin: 27px auto 25px;
          line-height: 1.71;
          text-align: left; } }
      body.access section#train .second .intro b {
        font-weight: bold; }
    body.access section#train .second .station-card {
      margin-bottom: 30px; }
      @media only screen and (max-width: 767px) {
        body.access section#train .second .station-card {
          margin-bottom: 25px; } }
      body.access section#train .second .station-card img {
        margin-top: 40px; }
        @media only screen and (max-width: 767px) {
          body.access section#train .second .station-card img {
            margin-top: 30px; } }
      body.access section#train .second .station-card:last-child {
        margin-bottom: 0; }
  body.access section#train .notes {
    font-size: 12px;
    font-size: 1.2rem;
    padding-left: 12px;
    margin-top: 18px;
    position: relative;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.access section#train .notes {
        display: block;
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.6;
        margin-top: 16px; } }
    body.access section#train .notes .ast {
      position: absolute;
      left: 0;
      top: 0; }
      @media only screen and (max-width: 767px) {
        body.access section#train .notes .ast {
          top: 0px; } }

body.access section#parking {
  padding: 114px 0 220px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.access section#parking {
      padding: 65px 0 120px; } }
  body.access section#parking .intro {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.14;
    margin: 65px 0 58px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.access section#parking .intro {
        line-height: 1.71;
        margin: 37px 0 37px;
        text-align: left; } }
  body.access section#parking .table-box {
    border: 1px solid #0095a1;
    border-radius: 5px;
    overflow: hidden; }
    body.access section#parking .table-box.first {
      margin: 40px 0 62px;
      width: 700px; }
      @media only screen and (max-width: 767px) {
        body.access section#parking .table-box.first {
          margin: 30px 0 40px;
          width: 100%; } }
  body.access section#parking table {
    width: 100%; }
    body.access section#parking table tr:last-child th {
      border-bottom: none; }
    body.access section#parking table tr:last-child td {
      border-top: 1px solid #d9e7ef; }
    body.access section#parking table tr th {
      background-color: #0095a1;
      border-bottom: 1px solid white;
      color: white;
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: bold;
      letter-spacing: 0.05em;
      text-align: center;
      vertical-align: middle;
      height: 49px;
      width: 240px; }
      @media only screen and (max-width: 767px) {
        body.access section#parking table tr th {
          display: block;
          font-size: 12px;
          font-size: 1.2rem;
          padding-top: 7px;
          height: 29px;
          width: 100%; } }
    body.access section#parking table tr td {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      padding-left: 60px;
      vertical-align: middle; }
      @media only screen and (max-width: 767px) {
        body.access section#parking table tr td {
          display: block;
          padding-top: 13px;
          padding-left: 0;
          text-align: center;
          height: 45px; } }
  body.access section#parking .duo-box {
    margin: 40px 0 100px; }
    @media only screen and (max-width: 767px) {
      body.access section#parking .duo-box {
        margin: 25px 0 60px; } }
    body.access section#parking .duo-box .left {
      max-width: 480px;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.access section#parking .duo-box .left {
          order: 2; } }
    body.access section#parking .duo-box .text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 2.14;
      margin-top: -7px;
      margin-bottom: 25px;
      max-width: 460px;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.access section#parking .duo-box .text {
          line-height: 1.71;
          order: 1; } }
      body.access section#parking .duo-box .text a {
        color: #0095a1;
        font-weight: bold;
        position: relative; }
        body.access section#parking .duo-box .text a:before {
          background-color: #0095a1;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          bottom: -5px;
          height: 1px;
          width: 100%; }
  body.access section#parking .phone-box:last-of-type {
    margin-top: 20px; }
    @media only screen and (min-width: 768px) {
      body.access section#parking .phone-box:last-of-type .phone-box-tel {
        left: -7px; } }
  @media only screen and (min-width: 768px) {
    body.access section#parking .phone-box .phone-box-ttl {
      font-size: 24px;
      font-size: 2.4rem;
      width: 36%; }
      body.access section#parking .phone-box .phone-box-ttl:before {
        left: 40.5%; }
    body.access section#parking .phone-box .phone-box-mid {
      margin-left: 44px; }
    body.access section#parking .phone-box .phone-box-tel {
      left: 0px; }
    body.access section#parking .phone-box a {
      padding: 0 39px; } }

body.access #lightboxOverlay {
  position: fixed !important;
  top: 0;
  left: 0;
  height: 100% !important;
  width: 100% !important; }

body.access #lightbox {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%); }

body.ad .mb15 {
  margin-bottom: 15px; }

body.ad .mv-side {
  background-image: url("../images/hokokuinfo/mv.png"); }
  @media only screen and (max-width: 767px) {
    body.ad .mv-side {
      background-image: url("../images/hokokuinfo/mv_sp.jpg"); } }

body.ad main .reg-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2.14; }
  @media only screen and (max-width: 767px) {
    body.ad main .reg-text {
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.71; } }
  body.ad main .reg-text b {
    font-weight: bold; }

body.ad main .notes {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 11px;
  padding-left: 12px;
  position: relative;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    body.ad main .notes {
      display: block;
      font-size: 11px;
      font-size: 1.1rem;
      line-height: 1.6;
      margin-top: 12px; } }
  body.ad main .notes .ast {
    position: absolute;
    left: 0;
    top: 0; }
    @media only screen and (max-width: 767px) {
      body.ad main .notes .ast {
        top: 0px; } }

body.ad main a.link {
  color: #0095a1; }
  @media only screen and (min-width: 768px) {
    body.ad main a.link {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      body.ad main a.link:hover {
        opacity: .7; } }
  body.ad main a.link span.underline {
    border-bottom: 1px solid #0095a1;
    padding-bottom: 3px;
    position: relative; }
  body.ad main a.link span.size {
    font-size: 11px;
    font-size: 1.1rem; }
    @media only screen and (max-width: 767px) {
      body.ad main a.link span.size {
        font-size: 10px;
        font-size: 1rem; } }
  body.ad main a.link img {
    display: inline-block;
    margin: 0 7px 0 6px;
    position: relative;
    top: -8px;
    width: 13px; }
    @media only screen and (max-width: 767px) {
      body.ad main a.link img {
        margin: 0 7px 0 6px;
        top: -6px;
        width: 12px; } }

body.ad main .list a {
  border-bottom: 1px solid #0095a1;
  padding-bottom: 7px;
  display: inline-block; }

body.ad main section#intro {
  padding: 110px 0 138px; }
  @media only screen and (max-width: 767px) {
    body.ad main section#intro {
      padding: 65px 0 78px; } }

body.ad main section#content {
  padding-bottom: 220px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.ad main section#content {
      padding-bottom: 120px; } }
  body.ad main section#content ul.content-list {
    margin: 66px auto 50px; }
    @media only screen and (max-width: 767px) {
      body.ad main section#content ul.content-list {
        margin: 35px auto 30px; } }
    body.ad main section#content ul.content-list li.content-item {
      margin-bottom: 63px; }
      body.ad main section#content ul.content-list li.content-item:last-child {
        margin-bottom: 0; }
      @media only screen and (max-width: 767px) {
        body.ad main section#content ul.content-list li.content-item {
          margin-bottom: 40px; } }
      body.ad main section#content ul.content-list li.content-item .ttl-02 {
        margin-bottom: 30px; }
        @media only screen and (max-width: 767px) {
          body.ad main section#content ul.content-list li.content-item .ttl-02 {
            margin-bottom: 25px; } }
      body.ad main section#content ul.content-list li.content-item a img {
        top: 0; }
        @media only screen and (max-width: 767px) {
          body.ad main section#content ul.content-list li.content-item a img {
            top: -3px; } }
      body.ad main section#content ul.content-list li.content-item ul.list {
        text-align: left; }
        body.ad main section#content ul.content-list li.content-item ul.list li {
          font-size: 14px;
          font-size: 1.4rem;
          margin-bottom: 15px;
          padding-left: 15px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.ad main section#content ul.content-list li.content-item ul.list li {
              margin-bottom: 9px; } }
          body.ad main section#content ul.content-list li.content-item ul.list li:before {
            background-color: #1c4e6a;
            border-radius: 50%;
            content: "";
            margin: 0 auto;
            position: absolute;
            left: 5px;
            top: 5px;
            height: 4px;
            width: 4px; }
            @media only screen and (max-width: 767px) {
              body.ad main section#content ul.content-list li.content-item ul.list li:before {
                top: 6px;
                height: 3px;
                width: 3px; } }
      @media only screen and (max-width: 767px) {
        body.ad main section#content ul.content-list li.content-item .notes:last-of-type {
          margin-top: 4px; } }
      body.ad main section#content ul.content-list li.content-item .notes .underline {
        padding-bottom: 0; }
  body.ad main section#content .link-area {
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    padding: 30px 50px 32px;
    position: relative;
    text-align: justify; }
    body.ad main section#content .link-areaa:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      body.ad main section#content .link-area {
        line-height: 1.84;
        padding: 26px 23px; }
        body.ad main section#content .link-area b {
          font-size: 13px;
          font-size: 1.3rem; } }
    body.ad main section#content .link-area a {
      color: #0095a1;
      display: inline-block;
      margin-bottom: 1px;
      position: relative; }
      @media only screen and (min-width: 768px) {
        body.ad main section#content .link-area a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.ad main section#content .link-area a:hover {
            opacity: .7; } }
      body.ad main section#content .link-area a .underline {
        border-bottom: 1px solid #0095a1;
        padding-bottom: 3px; }
      body.ad main section#content .link-area a:last-of-type {
        margin-bottom: 0; }
      body.ad main section#content .link-area a img {
        display: inline-block;
        margin-left: 9px;
        position: relative;
        top: -6px;
        width: 13px; }
        @media only screen and (max-width: 767px) {
          body.ad main section#content .link-area a img {
            margin-left: 6px;
            width: 12px; } }

body.alone .mv-side {
  background-image: url("../images/alone/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.alone .mv-side {
      background-image: url("../images/alone/mv_sp.jpg"); } }
  body.alone .mv-side .reservation-btn {
    display: block; }

@media only screen and (min-width: 768px) {
  body.alone .side-page-ttl-inner {
    padding-top: 45px; } }

body.alone .enjoy-point__detail__text p {
  letter-spacing: 0em; }

body.alone #sec01 {
  padding-bottom: 190px; }
  @media only screen and (max-width: 767px) {
    body.alone #sec01 {
      padding: 30px 0 122.5px; } }
  body.alone #sec01 .enjoy-box__speech {
    width: 310px;
    right: 30px;
    top: -10px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec01 .enjoy-box__speech {
        width: 125px;
        right: 25px;
        top: -65px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec01 .enjoy-box__floor, body.alone #sec01 .enjoy-box02__img figcaption, .enjoy-box02__img body.alone #sec01 figcaption {
      left: auto;
      right: 10px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec01 .enjoy-box__text {
      float: right;
      padding-right: 90px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec01 .enjoy-box__img {
      float: left;
      max-width: 260px;
      margin: -60px 0 0 100px; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    body.alone #sec01 .enjoy-box__img {
      max-width: 170px !important;
      margin: -30px 0 0 10px; } }
  @media only screen and (max-width: 767px) {
    body.alone #sec01 .enjoy-box__img {
      width: calc(100% - 10px); } }
  body.alone #sec01 .enjoy-box__dotted, body.alone #sec01 .enjoy-box02__dotted {
    max-width: 400px;
    left: calc(50% + 30px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec01 .enjoy-box__dotted, body.alone #sec01 .enjoy-box02__dotted {
        max-width: 160px;
        bottom: 5px; } }

body.alone #sec02 {
  padding-bottom: 165px; }
  @media only screen and (max-width: 767px) {
    body.alone #sec02 {
      padding-bottom: 70px; } }
  body.alone #sec02 .enjoy-box__speech {
    width: 220px;
    left: 90px;
    top: -130px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec02 .enjoy-box__speech {
        width: 140px;
        left: 25px;
        top: -80px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec02 .enjoy-box__text {
      letter-spacing: 0em; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec02 .enjoy-box__img {
      width: calc(100% - 20px);
      margin: 30px 0 0  auto; } }
  body.alone #sec02 .enjoy-box__dotted, body.alone #sec02 .enjoy-box02__dotted {
    max-width: 610px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec02 .enjoy-box__dotted, body.alone #sec02 .enjoy-box02__dotted {
        max-width: 130px;
        left: 50%;
        bottom: 5px; } }

body.alone #sec03 {
  padding-bottom: 150px; }
  @media only screen and (max-width: 767px) {
    body.alone #sec03 {
      padding-bottom: 80px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec03 .enjoy-box__img {
      width: calc(100% - 20px);
      margin-top: 30px; } }
  body.alone #sec03 .enjoy-box__dotted, body.alone #sec03 .enjoy-box02__dotted {
    max-width: 530px;
    left: calc(50% + 60px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec03 .enjoy-box__dotted, body.alone #sec03 .enjoy-box02__dotted {
        max-width: 90px;
        left: calc(50%);
        bottom: 5px; } }

body.alone #sec04 {
  padding: 0 0 150px; }
  @media only screen and (max-width: 767px) {
    body.alone #sec04 {
      padding-bottom: 70px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec04 .enjoy-box__text {
      letter-spacing: 0em;
      padding-left: 20px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec04 .enjoy-box__img {
      width: calc(100% - 20px);
      margin: 30px 0 0 auto; } }
  body.alone #sec04 .enjoy-box__dotted, body.alone #sec04 .enjoy-box02__dotted {
    max-width: 420px;
    left: calc(50% - 110px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 20px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec04 .enjoy-box__dotted, body.alone #sec04 .enjoy-box02__dotted {
        max-width: 135px;
        left: 50%;
        bottom: 5px; } }

body.alone #sec05 {
  padding-bottom: 140px; }
  @media only screen and (max-width: 767px) {
    body.alone #sec05 {
      padding-bottom: 105px; } }
  body.alone #sec05 .enjoy-box__speech {
    width: 280px;
    right: 30px;
    top: -5px; }
  @media only screen and (min-width: 768px) {
    body.alone #sec05 .enjoy-box__img {
      max-width: 270px;
      margin: -60px 80px 0 0; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    body.alone #sec05 .enjoy-box__img {
      max-width: 200px !important;
      margin: -30px 30px 0 0; } }
  body.alone #sec05 .enjoy-box__dotted, body.alone #sec05 .enjoy-box02__dotted {
    max-width: 370px;
    left: calc(50% - 60px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 90px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec05 .enjoy-box__dotted, body.alone #sec05 .enjoy-box02__dotted {
        max-width: 125px;
        left: calc(50% + 20px);
        bottom: 3px; } }

body.alone #sec06 {
  padding-bottom: 160px; }
  @media only screen and (max-width: 767px) {
    body.alone #sec06 {
      padding-bottom: 110px; } }
  body.alone #sec06 .enjoy-box__speech {
    width: 220px;
    top: -70px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec06 .enjoy-box__speech {
        width: 120px;
        top: -65px;
        left: 45px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec06 .enjoy-box__text {
      letter-spacing: 0em;
      padding-left: 20px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec06 .enjoy-box__img {
      width: calc(100% - 60px);
      margin: 30px 0 0 auto; } }
  body.alone #sec06 .enjoy-box__dotted, body.alone #sec06 .enjoy-box02__dotted {
    max-width: 510px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec06 .enjoy-box__dotted, body.alone #sec06 .enjoy-box02__dotted {
        max-width: 125px;
        left: 50%;
        bottom: 32px; } }

body.alone #sec07 {
  padding-bottom: 220px; }
  @media only screen and (max-width: 767px) {
    body.alone #sec07 {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec07 .enjoy-box__contents {
      padding-top: 60px; } }
  body.alone #sec07 .enjoy-box__speech {
    width: 480px;
    top: 0px; }
    @media only screen and (max-width: 767px) {
      body.alone #sec07 .enjoy-box__speech {
        width: 295px;
        top: -40px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%); } }
  @media only screen and (min-width: 768px) {
    body.alone #sec07 .enjoy-box__text {
      padding-left: 40px; } }
  @media only screen and (min-width: 768px) {
    body.alone #sec07 .enjoy-box__img {
      max-width: 490px;
      margin-top: 20px; } }

body.calendar .mv-side {
  background-image: url("../images/calendar/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.calendar .mv-side {
      background-image: url("../images/calendar/mv_sp.jpg"); } }
  body.calendar .mv-side .reservation-btn {
    display: block; }

body.calendar section#calendar {
  padding: 110px 0 0; }
  @media only screen and (max-width: 767px) {
    body.calendar section#calendar {
      padding: 62px 0 0; } }
  body.calendar section#calendar .inner {
    text-align: center; }
    body.calendar section#calendar .inner .reg-text {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.025em;
      line-height: 2.14;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.calendar section#calendar .inner .reg-text {
          line-height: 1.71;
          text-align: left; } }
    body.calendar section#calendar .inner .schedulle-navigation {
      margin-top: 54px;
      position: relative;
      height: 30px; }
      @media only screen and (max-width: 767px) {
        body.calendar section#calendar .inner .schedulle-navigation {
          margin-top: 38px;
          height: 25px; } }
      body.calendar section#calendar .inner .schedulle-navigation .present {
        color: #1c4e6a;
        font-family: "Oswald", sans-serif;
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: 0.05em; }
        @media only screen and (max-width: 767px) {
          body.calendar section#calendar .inner .schedulle-navigation .present {
            font-size: 18px;
            font-size: 1.8rem;
            padding-top: 2px; } }
      body.calendar section#calendar .inner .schedulle-navigation .nav-bt {
        border: 1px solid #d9e7ef;
        border-radius: 5px;
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        font-family: "Oswald", sans-serif;
        padding-top: 6px;
        position: absolute;
        top: 0;
        transition: all .3s;
        height: 30px;
        width: 100px;
        z-index: 2; }
        @media only screen and (min-width: 768px) {
          body.calendar section#calendar .inner .schedulle-navigation .nav-bt:hover {
            border: 1px solid transparent;
            box-shadow: 0 0 15px rgba(204, 229, 239, 0.8); } }
        @media only screen and (max-width: 767px) {
          body.calendar section#calendar .inner .schedulle-navigation .nav-bt {
            background-color: white;
            padding-top: 5px;
            font-size: 12px;
            font-size: 1.2rem;
            height: 25px;
            width: 80px; } }
        body.calendar section#calendar .inner .schedulle-navigation .nav-bt:before {
          border-left: 1px solid #1c4e6a;
          border-bottom: 1px solid #1c4e6a;
          content: "";
          display: inline-block;
          margin: 0 auto;
          position: absolute;
          top: 50%;
          height: 5px;
          width: 5px; }
          @media only screen and (max-width: 767px) {
            body.calendar section#calendar .inner .schedulle-navigation .nav-bt:before {
              top: 48%; } }
        body.calendar section#calendar .inner .schedulle-navigation .nav-bt.prev {
          left: 0;
          text-align: left;
          padding-left: 39px; }
          @media only screen and (max-width: 767px) {
            body.calendar section#calendar .inner .schedulle-navigation .nav-bt.prev {
              padding-left: 27px; } }
          body.calendar section#calendar .inner .schedulle-navigation .nav-bt.prev:before {
            transform: translateY(-50%) rotate(45deg);
            left: 14px; }
            @media only screen and (max-width: 767px) {
              body.calendar section#calendar .inner .schedulle-navigation .nav-bt.prev:before {
                left: 10px; } }
        body.calendar section#calendar .inner .schedulle-navigation .nav-bt.next {
          padding-right: 39px;
          text-align: right;
          right: 0; }
          @media only screen and (max-width: 767px) {
            body.calendar section#calendar .inner .schedulle-navigation .nav-bt.next {
              padding-right: 27px; } }
          body.calendar section#calendar .inner .schedulle-navigation .nav-bt.next:before {
            transform: translateY(-50%) rotate(-135deg);
            right: 14px; }
            @media only screen and (max-width: 767px) {
              body.calendar section#calendar .inner .schedulle-navigation .nav-bt.next:before {
                right: 10px; } }
    body.calendar section#calendar .inner .notes li {
      font-size: 12px;
      font-size: 1.2rem;
      letter-spacing: 0.025em;
      line-height: 1.83;
      margin-top: 3px;
      padding-left: 12px;
      position: relative;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.calendar section#calendar .inner .notes li {
          font-size: 11px;
          font-size: 1.1rem;
          line-height: 1.63;
          padding-left: 11px; } }
      body.calendar section#calendar .inner .notes li .ast {
        position: absolute;
        left: 0;
        top: 0; }
    body.calendar section#calendar .inner .link-area {
      background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-size: 200% auto;
      transition: 0.5s;
      font-size: 14px;
      font-size: 1.4rem;
      font-family: "Oswald", sans-serif;
      letter-spacing: 0.05em;
      padding: 38px 78px;
      position: relative;
      margin: 44px auto 150px;
      text-align: justify; }
      body.calendar section#calendar .inner .link-areaa:hover {
        background-position: right center; }
      @media only screen and (max-width: 767px) {
        body.calendar section#calendar .inner .link-area {
          line-height: 1.84;
          margin: 30px auto 80px;
          padding: 26px 23px; }
          body.calendar section#calendar .inner .link-area .space {
            display: block;
            margin-top: 15px; } }
      body.calendar section#calendar .inner .link-area p {
        text-align: left; }
      body.calendar section#calendar .inner .link-area a {
        color: #0095a1;
        display: inline-block;
        margin-bottom: 26px;
        padding-left: 16px;
        position: relative; }
        @media only screen and (min-width: 768px) {
          body.calendar section#calendar .inner .link-area a {
            cursor: pointer;
            -webkit-transition: 0.3s;
            -moz-transition: 0.3s;
            -o-transition: 0.3s;
            transition: 0.3s; }
            body.calendar section#calendar .inner .link-area a:hover {
              opacity: .7; } }
        body.calendar section#calendar .inner .link-area a:last-of-type {
          margin-bottom: 0; }
        body.calendar section#calendar .inner .link-area a .underline {
          position: relative; }
          body.calendar section#calendar .inner .link-area a .underline:after {
            background-color: #0095a1;
            content: "";
            position: absolute;
            bottom: 0px;
            left: 0;
            height: 1px;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              body.calendar section#calendar .inner .link-area a .underline:after {
                bottom: 1px; } }
        @media only screen and (max-width: 767px) {
          body.calendar section#calendar .inner .link-area a {
            display: inline-block;
            margin-bottom: 5px;
            padding-left: 10px;
            word-wrap: break-word; } }
        body.calendar section#calendar .inner .link-area a img {
          display: inline-block;
          margin-left: 9px;
          width: 13px; }
          @media only screen and (max-width: 767px) {
            body.calendar section#calendar .inner .link-area a img {
              position: relative;
              top: -6px;
              left: -2px;
              width: 12px; } }
        body.calendar section#calendar .inner .link-area a:before {
          background-color: #1c4e6a;
          border-radius: 50%;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.calendar section#calendar .inner .link-area a:before {
              height: 4px;
              width: 4px; } }
      body.calendar section#calendar .inner .link-area .no-dot {
        padding-left: 16px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.calendar section#calendar .inner .link-area .no-dot {
            padding-left: 10px; } }
        body.calendar section#calendar .inner .link-area .no-dot:before {
          background-color: #1c4e6a;
          border-radius: 50%;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.calendar section#calendar .inner .link-area .no-dot:before {
              height: 4px;
              width: 4px; } }
        body.calendar section#calendar .inner .link-area .no-dot a {
          padding-left: 0; }
          body.calendar section#calendar .inner .link-area .no-dot a:before {
            display: none; }
    body.calendar section#calendar .inner .text-note {
      text-align: right;
      margin-bottom: 15px;
      margin-top: -10px;
      font-size: 12px;
      font-size: 1.2rem; }
      @media only screen and (min-width: 768px) {
        body.calendar section#calendar .inner .text-note {
          display: none; } }
      body.calendar section#calendar .inner .text-note > span {
        color: #dddddd;
        display: inline-block;
        margin-right: 5px; }

body.calendar section#about {
  padding-bottom: 145px; }
  @media only screen and (max-width: 767px) {
    body.calendar section#about {
      padding-bottom: 75px; } }
  body.calendar section#about .reg-text {
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.calendar section#about .reg-text {
        line-height: 1.71;
        text-align: left; } }
  body.calendar section#about .inner {
    text-align: center; }
    body.calendar section#about .inner img {
      margin: 66px auto 40px; }
      @media only screen and (max-width: 767px) {
        body.calendar section#about .inner img {
          margin: 38px auto 27px; } }
    body.calendar section#about .inner .btn {
      margin-top: 22px; }
      @media only screen and (max-width: 767px) {
        body.calendar section#about .inner .btn {
          height: 40px;
          width: calc(100% - 50px); } }

body.calendar section#limit {
  padding-bottom: 220px; }
  @media only screen and (max-width: 767px) {
    body.calendar section#limit {
      padding-bottom: 120px; } }
  body.calendar section#limit .inner {
    text-align: center; }
  body.calendar section#limit .reg-text {
    font-size: 14px;
    font-size: 1.4rem;
    margin: 63px auto 22px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.calendar section#limit .reg-text {
        line-height: 1.71;
        margin: 38px auto 18px;
        text-align: left; } }
  @media only screen and (max-width: 767px) {
    body.calendar section#limit .btn {
      height: 40px;
      width: calc(100% - 50px); } }

body.ch .mv-ttl {
  letter-spacing: 0.3em !important; }

body.ch .ttl-01 {
  font-weight: 400 !important; }

body.ch .fancy-ttl {
  font-weight: 400 !important;
  letter-spacing: 0.1em !important; }

body.ch .event-ttl {
  font-weight: 400 !important;
  letter-spacing: 0.1em !important; }

@media only screen and (min-width: 768px) {
  body.ch .footer__lowerarea {
    padding-left: 150px; }
  body.ch .trip-advisor {
    right: -40px; } }

@media only screen and (max-width: 767px) {
  body.ch .fancy-detail-text {
    left: 0;
    right: 0; } }

@media only screen and (min-width: 768px) {
  body.ch section#information .inner .duo-box {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; } }

@media only screen and (min-width: 768px) {
  body.ch section#information .inner .duo-box .btn:nth-child(1) {
    max-width: 320px;
    margin-right: 20px; }
  body.ch section#information .inner .duo-box .btn:nth-child(2) {
    max-width: 320px; } }

@media only screen and (max-width: 767px) {
  body.ch section#information .inner .duo-box .btn {
    height: 40px !important; } }

@media only screen and (max-width: 767px) {
  body.ch .footercomp__color--txt, body.ch .footercomp__txtsize--txt {
    width: 60px !important; } }

body.cms.single article {
  background-color: white;
  padding: 30px 90px 60px 0;
  /* IE11  */ }
  @media only screen and (max-width: 767px) {
    body.cms.single article {
      padding: 25px 0 40px; } }
  body.cms.single article .upper {
    padding-right: 60px;
    position: relative;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    -webkit-align-items: center;
    align-items: center;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.cms.single article .upper {
        padding-bottom: 11px; } }
    body.cms.single article .upper .date {
      top: 0;
      right: 0; }
  body.cms.single article h2.article-title {
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin-top: 22px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.cms.single article h2.article-title {
        font-size: 18px;
        font-size: 1.8rem;
        text-align: justify;
        margin-top: 21px; } }
  body.cms.single article .main_image {
    margin-top: 37px;
    margin-bottom: 15px;
    width: 100%;
    max-width: 100%; }
    @media only screen and (max-width: 767px) {
      body.cms.single article .main_image {
        margin-top: 20px;
        margin-bottom: 4px; } }
  body.cms.single article .bg-article {
    *zoom: 1; }
    body.cms.single article .bg-article:after {
      content: "";
      display: table;
      clear: both; }
  body.cms.single article .wp-caption {
    max-width: 100%; }
  body.cms.single article img {
    margin-top: 50px; }
    @media only screen and (max-width: 767px) {
      body.cms.single article img {
        margin-top: 35px; } }
    body.cms.single article img.alignleft {
      float: left; }
    body.cms.single article img.alignright {
      float: right; }
    body.cms.single article img.aligncenter {
      display: block;
      margin-left: auto;
      margin-right: auto; }
  body.cms.single article iframe {
    margin-top: 20px;
    height: 382px;
    max-height: 382px;
    width: 100%; }
    @media only screen and (max-width: 1090px) {
      body.cms.single article iframe {
        height: 315px; } }
    @media only screen and (max-width: 767px) {
      body.cms.single article iframe {
        height: auto; } }
  body.cms.single article h3 {
    background-color: #f4f8fa;
    border-radius: 5px;
    margin-top: 80px;
    margin-bottom: 10px;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: 0.05em;
    line-height: 1.5;
    padding: 18px 30px;
    text-align: left;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.cms.single article h3 {
        font-size: 17px;
        font-size: 1.7rem;
        margin-top: 40px;
        margin-bottom: 0;
        padding: 10px 13px; } }
  body.cms.single article _:lang(x)::-ms-backdrop, body.cms.single article h3 {
    padding-top: 20px; }
  body.cms.single article h4 {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    line-height: 1.3;
    margin-top: 65px;
    padding: 0 30px 17px;
    position: relative;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.cms.single article h4 {
        margin-top: 30px;
        padding: 15px 11px 10px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5; } }
    body.cms.single article h4:before {
      background: #005ca1;
      background: -webkit-linear-gradient(left, #005ca1 0%, #0095a1 100%);
      background: -o-linear-gradient(left, #005ca1 0%, #0095a1 100%);
      background: linear-gradient(to right, #005ca1 0%, #0095a1 100%);
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      bottom: -2px;
      height: 1px;
      width: calc(100%); }
    body.cms.single article h4:after {
      background: #005ca1;
      background: -webkit-linear-gradient(left, #005ca1 0%, #0095a1 100%);
      background: -o-linear-gradient(left, #005ca1 0%, #0095a1 100%);
      background: linear-gradient(to right, #005ca1 0%, #0095a1 100%);
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      bottom: 0;
      height: 1px;
      width: calc(100%); }
  body.cms.single article h5 {
    color: #1c4e6a;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.6;
    letter-spacing: 0.05em;
    margin-top: 48px;
    padding-left: 25px;
    position: relative;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.cms.single article h5 {
        font-size: 15px;
        font-size: 1.5rem;
        margin-top: 30px;
        padding-left: 15px; } }
    body.cms.single article h5::before {
      background-color: #1c4e6a;
      content: "";
      display: inline-block;
      margin-right: 11px;
      margin: 0 auto;
      position: absolute;
      left: 0;
      top: 12px;
      height: 1px;
      width: 15px; }
      @media only screen and (max-width: 767px) {
        body.cms.single article h5::before {
          top: 10px;
          width: 10px; } }
  body.cms.single article p {
    font-size: 14px;
    font-size: 1.4rem;
    padding-top: 25px;
    line-height: 2.14;
    text-align: justify; }
    @media only screen and (max-width: 767px) {
      body.cms.single article p {
        padding-top: 26px;
        line-height: 1.71; } }
    body.cms.single article p b, body.cms.single article p strong {
      font-weight: bold; }
  body.cms.single article a {
    border-bottom: 1px solid #0095a1;
    color: #0095a1;
    padding-bottom: 3px; }
    @media only screen and (min-width: 768px) {
      body.cms.single article a {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        body.cms.single article a:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      body.cms.single article a {
        padding-bottom: 2px; } }
  body.cms.single article .box, body.cms.single article blockquote {
    border: 1px solid #d9e7ef;
    border-radius: 5px;
    margin-top: 58px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
    padding: 30px 48px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.cms.single article .box, body.cms.single article blockquote {
        line-height: 1.71;
        padding: 22px 24px;
        margin-top: 32px;
        text-align: justify; } }
    body.cms.single article .box p, body.cms.single article blockquote p {
      margin-top: 0; }
      body.cms.single article .box p:last-child, body.cms.single article blockquote p:last-child {
        padding: 0; }
  body.cms.single article .article-author {
    color: #0095a1;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.42;
    font-weight: 500;
    letter-spacing: 0.05em;
    margin-top: 45px;
    text-align: right; }
    @media only screen and (max-width: 767px) {
      body.cms.single article .article-author {
        margin-top: 30px;
        font-size: 14px;
        font-size: 1.4rem;
        text-align: left; } }
  body.cms.single article:not(.cms-new) h5 em, body.cms.single article:not(.cms-new) h4 em, body.cms.single article:not(.cms-new) h2 em, body.cms.single article:not(.cms-new) em {
    background: url("../images/common/bgem.png") bottom left/auto 8px repeat-x;
    padding-bottom: 1px; }
    @media only screen and (max-width: 767px) {
      body.cms.single article:not(.cms-new) h5 em, body.cms.single article:not(.cms-new) h4 em, body.cms.single article:not(.cms-new) h2 em, body.cms.single article:not(.cms-new) em {
        background: url("../images/common/bgem.png") center left/auto 5px repeat-x;
        padding-bottom: 8px; } }
  body.cms.single article.cms-new h5 em, body.cms.single article.cms-new h4 em, body.cms.single article.cms-new h2 em, body.cms.single article.cms-new em {
    font-style: italic; }
  body.cms.single article.cms-new span[style*="text-decoration: underline"] {
    font-style: normal !important;
    background: url("../images/common/bgem.png") bottom left/auto 8px repeat-x;
    padding-bottom: 1px; }
    @media only screen and (max-width: 767px) {
      body.cms.single article.cms-new span[style*="text-decoration: underline"] {
        background: url("../images/common/bgem.png") center left/auto 5px repeat-x;
        padding-bottom: 8px; } }

body.contact .mv-side {
  background-image: url("../images/contact/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.contact .mv-side {
      background-image: url("../images/contact/mv_sp.jpg"); } }

body.contact main {
  padding-top: 114px; }
  @media only screen and (max-width: 767px) {
    body.contact main {
      padding-top: 65px; } }

body.contact section#intro .intro-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.7;
  margin-bottom: 9px; }
  @media only screen and (max-width: 767px) {
    body.contact section#intro .intro-text {
      margin-bottom: 11px; } }

body.contact section#intro .notes {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.83;
  padding-left: 12px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.contact section#intro .notes {
      line-height: 1.63; } }
  body.contact section#intro .notes .ast {
    position: absolute;
    left: 0;
    top: 0; }

body.contact section.steps {
  margin: 55px auto 50px; }
  @media only screen and (max-width: 767px) {
    body.contact section.steps {
      margin: 35px auto 35px; } }
  body.contact section.steps .step-list {
    /* IE11  */ }
    body.contact section.steps .step-list li {
      background-color: #eefafd;
      border-radius: 27px;
      padding-top: 18px;
      position: relative;
      text-align: center;
      height: 55px;
      width: calc((100% - 100px)/3); }
      @media only screen and (max-width: 767px) {
        body.contact section.steps .step-list li {
          margin-bottom: 25px;
          padding-top: 11px;
          height: 40px;
          width: 100%; } }
      body.contact section.steps .step-list li:last-child {
        margin-bottom: 0; }
        body.contact section.steps .step-list li:last-child:before {
          display: none; }
      body.contact section.steps .step-list li:before {
        background-image: url("../images/contact/arrow.png");
        background-size: 12px 10px;
        background-repeat: no-repeat;
        content: "";
        margin: 0 auto;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: -31px;
        height: 10px;
        width: 12px; }
        @media only screen and (max-width: 767px) {
          body.contact section.steps .step-list li:before {
            background-size: 10px 10px;
            top: auto;
            bottom: -17px;
            transform: rotate(90deg);
            right: 0;
            left: 0;
            height: 10px;
            width: 10px; } }
      body.contact section.steps .step-list li .order {
        background-color: white;
        border-radius: 50%;
        color: #0095a1;
        padding-top: 15px;
        position: absolute;
        left: 2px;
        top: 2px;
        font-family: "Montserrat", sans-serif;
        font-size: 20px;
        font-size: 2rem;
        height: 51px;
        width: 51px; }
        @media only screen and (max-width: 767px) {
          body.contact section.steps .step-list li .order {
            font-size: 15px;
            font-size: 1.5rem;
            padding-top: 11px;
            height: 36px;
            width: 36px; } }
      body.contact section.steps .step-list li .text {
        color: #0095a1;
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: bold;
        letter-spacing: 0.05em; }
        @media only screen and (max-width: 767px) {
          body.contact section.steps .step-list li .text {
            font-size: 13px;
            font-size: 1.3rem; } }
      body.contact section.steps .step-list li.active {
        background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
        background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
        background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
        background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
        background-image: linear-gradient(to right, #005ca1, #0095a1); }
        body.contact section.steps .step-list li.active .text {
          color: white; }
    body.contact section.steps .step-list _:lang(x)::-ms-backdrop, body.contact section.steps .step-list li {
      padding-top: 19px; }

body.contact section#form {
  padding-bottom: 220px; }
  @media only screen and (max-width: 767px) {
    body.contact section#form {
      padding-bottom: 120px; } }
  body.contact section#form table {
    border-bottom: 1px solid #d9e7ef;
    margin-bottom: 50px;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.contact section#form table {
        margin-bottom: 35px; } }
    body.contact section#form table tr {
      border-top: 1px solid #d9e7ef; }
      body.contact section#form table tr:last-child th {
        vertical-align: text-top; }
        @media only screen and (min-width: 768px) {
          body.contact section#form table tr:last-child th {
            padding-top: 43px; } }
      body.contact section#form table tr th {
        padding: 30px 0 30px 70px;
        width: 300px;
        /* IE11  */ }
        @media only screen and (max-width: 767px) {
          body.contact section#form table tr th {
            display: block;
            padding: 20px 15px 15px;
            width: 100%; } }
        body.contact section#form table tr th .req, body.contact section#form table tr th .nreq {
          display: inline-block;
          font-size: 14px;
          font-size: 1.4rem;
          border-radius: 5px;
          font-weight: bold;
          letter-spacing: 0.1em;
          padding-top: 5px;
          text-align: center;
          height: 25px;
          width: 60px; }
          @media only screen and (max-width: 767px) {
            body.contact section#form table tr th .req, body.contact section#form table tr th .nreq {
              font-size: 11px;
              font-size: 1.1rem;
              padding-top: 3px;
              height: 17px;
              width: 40px; } }
        body.contact section#form table tr th _:lang(x)::-ms-backdrop, body.contact section#form table tr th .req, body.contact section#form table tr th .nreq {
          padding-top: 9px; }
        body.contact section#form table tr th .req {
          background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
          background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
          background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
          background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
          background-image: linear-gradient(to right, #005ca1, #0095a1);
          color: white; }
        body.contact section#form table tr th .nreq {
          background-color: #d9e7ef;
          color: #1c4e6a; }
        body.contact section#form table tr th .text {
          color: #1c4e6a;
          font-size: 15px;
          font-size: 1.5rem;
          font-weight: bold;
          margin-left: 20px;
          letter-spacing: 0.05em; }
          @media only screen and (max-width: 767px) {
            body.contact section#form table tr th .text {
              font-size: 14px;
              font-size: 1.4rem;
              margin-left: 15px;
              width: 100%; } }
      body.contact section#form table tr td {
        padding: 30px 0; }
        @media only screen and (max-width: 767px) {
          body.contact section#form table tr td {
            display: block;
            padding: 0 15px 20px; } }
        body.contact section#form table tr td input[type=email],
        body.contact section#form table tr td input[type=text] {
          border: none;
          background-color: #f2fafc;
          border-radius: 5px;
          font-size: 15px;
          font-size: 1.5rem;
          padding: 0 16px;
          height: 52px;
          width: calc(100% - 150px);
          -webkit-appearance: none; }
          @media only screen and (max-width: 767px) {
            body.contact section#form table tr td input[type=email],
            body.contact section#form table tr td input[type=text] {
              font-size: 14px;
              font-size: 1.4rem;
              padding: 0 14px;
              height: 37px;
              width: 100%; } }
        body.contact section#form table tr td textarea {
          background-color: #f2fafc;
          border-radius: 5px;
          border: none;
          font-size: 15px;
          font-size: 1.5rem;
          padding: 14px;
          height: 200px;
          width: calc(100% - 70px); }
          @media only screen and (max-width: 767px) {
            body.contact section#form table tr td textarea {
              font-size: 14px;
              font-size: 1.4rem;
              height: 125px;
              width: 100%; } }
  body.contact section#form .btn {
    border: none; }
    @media only screen and (max-width: 767px) {
      body.contact section#form .btn {
        height: 40px;
        width: calc(100% - 50px); } }
    body.contact section#form .btn input[type=submit] {
      background-color: transparent;
      border: none;
      cursor: pointer;
      position: absolute;
      height: 100%;
      width: 100%;
      z-index: 10;
      -webkit-appearance: none; }

@media only screen and (max-width: 767px) {
  body.contact.confirm table th .text {
    margin-left: 0 !important; } }

body.contact.confirm table td {
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.5; }
  @media only screen and (max-width: 767px) {
    body.contact.confirm table td {
      font-size: 14px;
      font-size: 1.4rem; } }

body.contact.confirm .btn-correct {
  display: block;
  font-weight: bold;
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0 auto 40px;
  text-decoration: underline;
  text-align: center; }
  @media only screen and (min-width: 768px) {
    body.contact.confirm .btn-correct {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      body.contact.confirm .btn-correct:hover {
        opacity: .7; } }
  @media only screen and (max-width: 767px) {
    body.contact.confirm .btn-correct {
      font-size: 16px;
      font-size: 1.6rem; } }

body.contact.complete main {
  min-height: auto;
  padding-top: 64px; }
  @media only screen and (max-width: 767px) {
    body.contact.complete main {
      padding-top: 30px; } }

body.contact.complete section#complete-message {
  padding-bottom: 220px;
  text-align: center; }
  @media only screen and (min-width: 768px) {
    body.contact.complete section#complete-message {
      padding-top: 30px; } }
  @media only screen and (max-width: 767px) {
    body.contact.complete section#complete-message {
      padding-bottom: 120px; } }
  body.contact.complete section#complete-message .complete-text {
    margin: 43px auto;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.contact.complete section#complete-message .complete-text {
        margin: 30px auto; } }
  body.contact.complete section#complete-message .btn {
    height: 40px;
    width: calc(100% - 50px); }

body.contact .formError .formErrorContent, body.contact .formError .formErrorArrow div {
  background-color: black; }

body.contact .formError {
  z-index: 9; }

body.education .mv-side {
  background-image: url("../images/education/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.education .mv-side {
      background-image: url("../images/education/mv_sp.jpg"); } }
  body.education .mv-side .reservation-btn {
    display: block; }

body.education section#content {
  padding: 118px 0 220px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.education section#content {
      padding: 65px 0 120px; } }
  body.education section#content .ttl-01 {
    margin-top: 50px;
    margin-bottom: 68px; }
    @media only screen and (max-width: 767px) {
      body.education section#content .ttl-01 {
        margin-top: 23px;
        margin-bottom: 40px; } }
    body.education section#content .ttl-01:first-of-type {
      margin-top: 0; }
  body.education section#content .event-ttl {
    background-size: auto auto;
    background-color: rgba(0, 153, 153, 0.08);
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(0, 149, 161, 0.04) 4px, rgba(0, 149, 161, 0.03) 8px);
    color: #0095a1;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.8;
    font-weight: 500;
    letter-spacing: 0.025em;
    margin: 100px auto 32px;
    padding: 14px 33px;
    position: relative;
    height: auto;
    text-align: left; }
    body.education section#content .event-ttl .sml {
      font-size: 16px;
      font-size: 1.6rem; }
    @media only screen and (max-width: 767px) {
      body.education section#content .event-ttl {
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1.2;
        margin: 60px auto 22px;
        padding: 10px 25px;
        text-align: center; }
        body.education section#content .event-ttl .sml {
          font-size: 12px;
          font-size: 1.2rem; } }
    body.education section#content .event-ttl.no-margin {
      margin-top: 0; }
    @media only screen and (max-width: 767px) {
      body.education section#content .event-ttl:before {
        content: '';
        width: 10px;
        height: 100%;
        background-repeat: repeat-y;
        background-position: center;
        position: absolute;
        top: 0;
        background-image: url(../images/education/detour-bg-left.svg);
        background-size: 15px 55px;
        left: 0; }
      body.education section#content .event-ttl:after {
        content: '';
        width: 10px;
        height: 100%;
        background-repeat: repeat-y;
        background-position: center;
        position: absolute;
        top: 0;
        background-image: url(../images/education/detour-bg-right.svg);
        background-size: 15px 55px;
        right: 0; } }
  body.education section#content _:lang(x)::-ms-backdrop, body.education section#content .event-ttl {
    padding-top: 23px; }
  body.education section#content .edu-post {
    padding-bottom: 100px; }
    @media only screen and (max-width: 767px) {
      body.education section#content .edu-post {
        padding-bottom: 60px; } }
    body.education section#content .edu-post:last-of-type {
      padding-bottom: 0; }
  body.education section#content .green-box {
    background: #f7fbff;
    background: -webkit-linear-gradient(left, #f7fbff 0%, #eefafa 100%);
    background: -o-linear-gradient(left, #f7fbff 0%, #eefafa 100%);
    background: linear-gradient(to right, #f7fbff 0%, #eefafa 100%);
    margin-bottom: 40px;
    padding: 47px 56px 0;
    position: relative;
    height: 102px; }
    @media only screen and (max-width: 767px) {
      body.education section#content .green-box {
        margin-bottom: 30px;
        padding: 28px 25px 0;
        height: 168px; } }
    body.education section#content .green-box .green-box-ttl {
      color: #0095a1;
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      letter-spacing: 0.1em;
      position: absolute;
      top: -9px;
      left: 0;
      right: 0; }
      @media only screen and (max-width: 767px) {
        body.education section#content .green-box .green-box-ttl {
          font-size: 15px;
          font-size: 1.5rem;
          top: -7px; } }
    @media only screen and (max-width: 767px) {
      body.education section#content .green-box .green-list {
        display: block; } }
    body.education section#content .green-box .green-list li {
      font-size: 15px;
      font-size: 1.5rem;
      letter-spacing: 0.05em;
      padding-left: 16px;
      position: relative;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.education section#content .green-box .green-list li {
          font-size: 14px;
          font-size: 1.4rem;
          margin-bottom: 10px;
          padding-left: 11px; }
          body.education section#content .green-box .green-list li:last-child {
            margin-bottom: 0; } }
      body.education section#content .green-box .green-list li:before {
        background-color: #1c4e6a;
        border-radius: 50%;
        content: "";
        margin: 0 auto;
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
        height: 6px;
        width: 6px; }
        @media only screen and (max-width: 767px) {
          body.education section#content .green-box .green-list li:before {
            top: 10px;
            transform: translateY(0%);
            height: 4px;
            width: 4px; } }
      @media only screen and (max-width: 767px) {
        body.education section#content .green-box .green-list li {
          line-height: 1.7; } }
  body.education section#content .reg-text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.14; }
    @media only screen and (max-width: 767px) {
      body.education section#content .reg-text {
        line-height: 1.71; } }
    body.education section#content .reg-text.intro {
      margin-bottom: 32px; }
      @media only screen and (max-width: 767px) {
        body.education section#content .reg-text.intro {
          margin-bottom: 24px; } }
    body.education section#content .reg-text a {
      border-bottom: 1px solid #1c4e6a;
      padding-bottom: 1px; }
      @media only screen and (min-width: 768px) {
        body.education section#content .reg-text a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.education section#content .reg-text a:hover {
            opacity: .7; } }
  body.education section#content .edu-image-box.duo figure {
    width: calc(50% - 5px); }
    @media only screen and (max-width: 767px) {
      body.education section#content .edu-image-box.duo figure {
        border-radius: 5px;
        width: calc(50% - 2px); } }
  body.education section#content .notes-box {
    padding-top: 4px;
    line-height: 1.6;
    text-align: left; }
  body.education section#content .notes {
    display: inline-block;
    font-size: 12px;
    font-size: 1.2rem;
    position: relative;
    padding-left: 12px; }
    @media only screen and (max-width: 767px) {
      body.education section#content .notes {
        font-size: 11px;
        font-size: 1.1rem; }
        body.education section#content .notes:first-child {
          margin-top: 5px; } }
    body.education section#content .notes .ast {
      margin: 0 auto;
      position: absolute;
      left: 0;
      top: 1px; }
    @media only screen and (max-width: 767px) {
      body.education section#content .notes.first {
        margin-top: 10px; } }
    body.education section#content .notes.last {
      top: -8px; }
      @media only screen and (max-width: 767px) {
        body.education section#content .notes.last {
          top: 0; } }
  body.education section#content .detail-box {
    background-size: auto auto;
    background-color: rgba(0, 153, 153, 0.08);
    background-image: repeating-linear-gradient(-45deg, transparent, transparent 4px, rgba(0, 149, 161, 0.08) 4px, rgba(0, 149, 161, 0.08) 8px);
    border-radius: 5px;
    margin: 40px auto 30px;
    padding: 8px; }
    @media only screen and (max-width: 767px) {
      body.education section#content .detail-box {
        background-image: repeating-linear-gradient(-45deg, transparent, transparent 2px, rgba(0, 149, 161, 0.08) 2px, rgba(0, 149, 161, 0.08) 4px); } }
    @media only screen and (max-width: 767px) {
      body.education section#content .detail-box {
        margin: 30px auto 25px;
        padding: 4px; } }
    body.education section#content .detail-box .detail-box-inner {
      background-color: white;
      border-radius: 5px;
      padding: 40px; }
      @media only screen and (max-width: 767px) {
        body.education section#content .detail-box .detail-box-inner {
          padding: 30px 20px 26px; } }
    body.education section#content .detail-box .detail-ttl {
      color: #1c4e6a;
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1.4;
      font-weight: bold;
      letter-spacing: 0.1em; }
      @media only screen and (max-width: 767px) {
        body.education section#content .detail-box .detail-ttl {
          font-size: 18px;
          font-size: 1.8rem; } }
    body.education section#content .detail-box ul.detail-main-list {
      padding-top: 15px; }
      @media only screen and (max-width: 767px) {
        body.education section#content .detail-box ul.detail-main-list {
          padding-top: 7px; } }
      body.education section#content .detail-box ul.detail-main-list li.detail-main-item {
        border-bottom: 1px dashed #d9e7ef;
        margin-top: 28px;
        padding-bottom: 25px;
        text-align: left; }
        @media only screen and (max-width: 767px) {
          body.education section#content .detail-box ul.detail-main-list li.detail-main-item {
            border-bottom: 1px dotted #d9e7ef;
            margin-top: 21px; } }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item:last-child {
          border-bottom: none;
          padding-bottom: 0; }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item img {
          margin-top: 50px;
          width: 100%;
          max-width: 100%; }
          @media only screen and (max-width: 767px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item img {
              margin-top: 35px; } }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item iframe {
          margin-top: 20px;
          height: 382px;
          max-height: 382px;
          width: 100%; }
          @media only screen and (max-width: 1090px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item iframe {
              height: 315px; } }
          @media only screen and (max-width: 767px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item iframe {
              height: auto; } }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item h5 {
          color: #0095a1;
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: bold;
          line-height: 1.6;
          letter-spacing: 0.05em;
          margin-top: 18px;
          padding-left: 16px;
          position: relative;
          text-align: left; }
          @media only screen and (max-width: 767px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item h5 {
              font-size: 15px;
              font-size: 1.5rem;
              margin-top: 10px;
              padding-left: 10px; } }
          body.education section#content .detail-box ul.detail-main-list li.detail-main-item h5::before {
            background-color: #0095a1;
            border-radius: 50%;
            content: "";
            display: inline-block;
            margin-right: 8px;
            margin: 0 auto;
            position: absolute;
            left: 0;
            top: 12px;
            height: 6px;
            width: 6px; }
            @media only screen and (max-width: 767px) {
              body.education section#content .detail-box ul.detail-main-list li.detail-main-item h5::before {
                top: 10px;
                height: 4px;
                width: 4px; } }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item p {
          font-size: 14px;
          font-size: 1.4rem;
          padding-top: 10px;
          line-height: 2.14;
          text-align: justify; }
          @media only screen and (max-width: 767px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item p {
              padding-top: 12px;
              line-height: 1.71; } }
          body.education section#content .detail-box ul.detail-main-list li.detail-main-item p b, body.education section#content .detail-box ul.detail-main-list li.detail-main-item p strong {
            font-weight: bold; }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item ul {
          margin-top: 9px; }
          body.education section#content .detail-box ul.detail-main-list li.detail-main-item ul li {
            font-size: 12px;
            font-size: 1.2rem;
            line-height: 1.833;
            position: relative;
            padding-left: 13px; }
            @media only screen and (max-width: 767px) {
              body.education section#content .detail-box ul.detail-main-list li.detail-main-item ul li {
                font-size: 11px;
                font-size: 1.1rem;
                line-height: 1.636; } }
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item ul li:before {
              content: "※";
              position: absolute;
              left: 0;
              top: 0; }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item a {
          border-bottom: 1px solid #0095a1;
          color: #0095a1;
          padding-bottom: 3px; }
          @media only screen and (min-width: 768px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item a {
              cursor: pointer;
              -webkit-transition: 0.3s;
              -moz-transition: 0.3s;
              -o-transition: 0.3s;
              transition: 0.3s; }
              body.education section#content .detail-box ul.detail-main-list li.detail-main-item a:hover {
                opacity: .7; } }
          @media only screen and (max-width: 767px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item a {
              padding-bottom: 2px; } }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item .box, body.education section#content .detail-box ul.detail-main-list li.detail-main-item blockquote {
          border: 1px solid #d9e7ef;
          border-radius: 5px;
          margin-top: 58px;
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 2;
          padding: 30px 48px;
          text-align: left; }
          @media only screen and (max-width: 767px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item .box, body.education section#content .detail-box ul.detail-main-list li.detail-main-item blockquote {
              line-height: 1.71;
              padding: 22px 24px;
              margin-top: 32px;
              text-align: justify; } }
          body.education section#content .detail-box ul.detail-main-list li.detail-main-item .box p, body.education section#content .detail-box ul.detail-main-list li.detail-main-item blockquote p {
            margin-top: 0; }
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item .box p:last-child, body.education section#content .detail-box ul.detail-main-list li.detail-main-item blockquote p:last-child {
              padding: 0; }
        body.education section#content .detail-box ul.detail-main-list li.detail-main-item h5 em, body.education section#content .detail-box ul.detail-main-list li.detail-main-item h4 em, body.education section#content .detail-box ul.detail-main-list li.detail-main-item h2 em, body.education section#content .detail-box ul.detail-main-list li.detail-main-item em {
          background: url("../images/common/bgem.png") bottom left/auto 8px repeat-x;
          padding-bottom: 1px; }
          @media only screen and (max-width: 767px) {
            body.education section#content .detail-box ul.detail-main-list li.detail-main-item h5 em, body.education section#content .detail-box ul.detail-main-list li.detail-main-item h4 em, body.education section#content .detail-box ul.detail-main-list li.detail-main-item h2 em, body.education section#content .detail-box ul.detail-main-list li.detail-main-item em {
              background: url("../images/common/bgem.png") center left/auto 5px repeat-x;
              padding-bottom: 8px; } }
  body.education section#content .trio-box {
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.education section#content .trio-box {
        margin-top: 15px; } }
    body.education section#content .trio-box .btn {
      padding-left: 18px;
      width: 290px; }
      @media only screen and (min-width: 768px) {
        body.education section#content .trio-box .btn {
          -webkit-align-items: flex-start;
          align-items: flex-start; } }
      @media only screen and (max-width: 767px) {
        body.education section#content .trio-box .btn {
          margin-top: 0 !important;
          margin-bottom: 10px !important; }
          body.education section#content .trio-box .btn:last-child {
            margin-bottom: 0 !important; } }
  body.education section#content .phone-box {
    margin-top: 13px; }
    body.education section#content .phone-box .phone-box-tel {
      letter-spacing: 0.05em; }
    @media only screen and (max-width: 767px) {
      body.education section#content .phone-box {
        margin-top: 8px; } }
    @media only screen and (min-width: 768px) {
      body.education section#content .phone-box a {
        padding: 0 56px 0 86px; }
      body.education section#content .phone-box .phone-box-ttl:before {
        left: 29.4%; }
      body.education section#content .phone-box .phone-box-mid {
        font-size: 14px;
        font-size: 1.4rem;
        margin-left: -53px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
      body.education section#content .phone-box.inner-box a {
        padding: 0 36px; }
      body.education section#content .phone-box.inner-box .phone-box-ttl:before {
        left: 25.4%; } }

@media only screen and (max-width: 767px) {
  body.education .btn {
    height: 40px; } }

body.en {
  font-family: "Montserrat", sans-serif;
  /* IE11  */ }
  @media only screen and (max-width: 767px) {
    body.en .mv .mv-ttl {
      letter-spacing: 0.05em !important; }
    body.en section#about .inner .fancy-ttl {
      padding-top: 10px !important; }
    body.en .footercomp__txtsize {
      display: block; }
      body.en .footercomp__txtsize .footercomp__txtsize--txt {
        display: block; }
    body.en .footercomp__color {
      display: block; } }
  body.en .ttl-01 {
    letter-spacing: 0.025em; }
  body.en .ttl-02 {
    font-weight: 600 !important; }
  body.en _:lang(x)::-ms-backdrop, body.en .ttl-01.deco:before, body.en .ttl-01.deco:after {
    top: 45% !important; }
  @media only screen and (min-width: 768px) {
    body.en section#tickets .inner table tr th {
      height: 50px !important; } }
  body.en section#tickets .inner table tr td {
    font-weight: 600 !important; }
  body.en section#tickets .inner table tr td .reg2 {
    display: block;
    margin-bottom: 1px; }
  body.en section#event .inner .event-list li figure figcaption {
    letter-spacing: 0.025em !important; }
  body.en section#about .inner .about-list li .reg-text {
    line-height: 1.8; }
    @media only screen and (max-width: 767px) {
      body.en section#about .inner .about-list li .reg-text {
        line-height: 1.7; } }
  body.en section#event .inner .event-list li .reg-text {
    line-height: 1.85; }
  @media only screen and (min-width: 768px) {
    body.en section#information .inner .list-box ul li {
      margin-bottom: 20px;
      letter-spacing: .025em; } }
  @media only screen and (min-width: 768px) {
    body.en section#information .inner .duo-box .btn {
      height: 70px !important; } }
  @media only screen and (min-width: 768px) {
    body.en section#about .inner .about-list li:nth-child(2) .about-list-ttl {
      position: relative;
      left: -7px; }
    body.en .duo-box .btn {
      max-width: 490px; } }
  body.en section#event .inner .event-list li .event-list-ttl {
    font-weight: 600; }
  @media only screen and (max-width: 767px) {
    body.en section#tickets .inner .ttl-02 {
      font-weight: 600 !important; } }
  @media only screen and (max-width: 767px) {
    body.en section#about .inner .about-list li:nth-child(4) .about-list-ttl {
      padding-top: 6px !important; }
    body.en section#about .inner .duo-box {
      margin-top: 47px !important; }
    body.en section#about .inner .about-list li .about-list-ttl {
      height: 35px; }
    body.en section#tickets .inner table tr:nth-child(5) th {
      height: 40px; }
    body.en section#event .inner .event-ttl {
      padding-top: 10px !important; } }
  @media only screen and (min-width: 768px) {
    body.en .mv-ttl {
      line-height: 1.55 !important; } }
  @media only screen and (max-width: 767px) {
    body.en .mv-ttl {
      line-height: 1.33 !important; } }
  @media only screen and (min-width: 768px) {
    body.en .fancy-detail {
      right: 290px !important; } }
  body.en section#tickets .ttl-02 {
    letter-spacing: 0.025em !important; }
  body.en #txtsize-smaller, body.en #txtsize-bigger {
    font-family: "Montserrat", sans-serif;
    width: 75px; }
    @media only screen and (max-width: 767px) {
      body.en #txtsize-smaller, body.en #txtsize-bigger {
        font-weight: 500;
        font-size: 13px;
        font-size: 1.3rem;
        width: 65px; } }
  body.en .footercomp__color--btn {
    font-family: "Montserrat", sans-serif;
    width: 60px; }
    @media only screen and (max-width: 767px) {
      body.en .footercomp__color--btn {
        font-weight: 500;
        font-size: 13px;
        font-size: 1.3rem;
        width: 65px; } }
  @media only screen and (min-width: 768px) {
    body.en .footercomp__color--txt {
      margin-top: 0 !important; } }
  @media only screen and (max-width: 767px) {
    body.en .footercomp__color--txt, body.en .footercomp__txtsize--txt {
      margin-bottom: 9px;
      width: auto !important; }
    body.en .footercomp__color--txt {
      margin-top: 20px; } }
  @media only screen and (max-width: 767px) {
    body.en .fancy-detail-text {
      left: 21px; } }

body.event .mv-side {
  background-image: url("../images/event/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.event .mv-side {
      background-image: url("../images/event/mv_sp.jpg"); } }
  body.event .mv-side .reservation-btn {
    display: block; }

body.event section#category-list {
  padding: 120px 0 116px; }
  @media only screen and (max-width: 767px) {
    body.event section#category-list {
      padding: 70px 0 62px; } }
  body.event section#category-list .anchor-link > a:nth-child(1) figure .img-box img {
    height: auto !important;
    width: 32px; }
    @media only screen and (max-width: 767px) {
      body.event section#category-list .anchor-link > a:nth-child(1) figure .img-box img {
        width: 25px; } }
  body.event section#category-list .anchor-link > a:nth-child(2) figure .img-box img {
    width: 40px; }
    @media only screen and (max-width: 767px) {
      body.event section#category-list .anchor-link > a:nth-child(2) figure .img-box img {
        width: 37px; } }
  body.event section#category-list .anchor-link > a:nth-child(3) figure .img-box img {
    width: 34px; }
    @media only screen and (max-width: 767px) {
      body.event section#category-list .anchor-link > a:nth-child(3) figure .img-box img {
        width: 25px; } }
  @media only screen and (max-width: 767px) {
    body.event section#category-list .anchor-link a {
      height: 80px; } }
  @media only screen and (min-width: 768px) {
    body.event section#category-list .anchor-link figure {
      padding: 10px 10px; } }
  @media only screen and (max-width: 767px) {
    body.event section#category-list .anchor-link figure {
      padding: 5px 10px 8px; } }
  body.event section#category-list .anchor-link figcaption {
    padding-top: 7px; }
    @media only screen and (min-width: 768px) {
      body.event section#category-list .anchor-link figcaption span {
        font-size: 18px;
        font-size: 1.8rem; } }
  body.event section#category-list p.info {
    font-size: 14px;
    font-size: 1.4rem;
    margin-top: 30px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.event section#category-list p.info {
        margin-top: 20px;
        line-height: 1.7; } }

body.event section#content {
  background: #f6fcfe;
  background: -webkit-linear-gradient(bottom, #f6fcfe, #eefafa 100%);
  background: -o-linear-gradient(bottom, #f6fcfe, #eefafa 100%);
  background: linear-gradient(to top, #f6fcfe, #eefafa 100%);
  border-top: 1px solid #d9e7ef;
  text-align: center; }
  body.event section#content .content-bg {
    background-image: url("../images/event/bg_cross.png");
    background-repeat: repeat;
    background-size: 8px;
    padding-bottom: 220px; }
    @media only screen and (max-width: 767px) {
      body.event section#content .content-bg {
        background-size: 4px;
        padding-bottom: 120px; } }
  body.event section#content .title-box {
    background-color: white;
    margin-top: 100px;
    margin-bottom: 60px;
    padding: 114px 0 45px; }
    @media only screen and (max-width: 767px) {
      body.event section#content .title-box {
        margin-top: 60px;
        margin-bottom: 40px; } }
    body.event section#content .title-box.first {
      margin-top: 0;
      padding: 91px 0 45px; }
      @media only screen and (max-width: 767px) {
        body.event section#content .title-box.first {
          padding: 55px 0 25px; }
          body.event section#content .title-box.first img {
            top: -41px;
            width: 28px !important; } }
    body.event section#content .title-box.second img {
      width: 50px !important; }
    @media only screen and (max-width: 767px) {
      body.event section#content .title-box.second {
        padding: 55px 0 25px; }
        body.event section#content .title-box.second img {
          top: -34px;
          width: 37px !important; } }
    @media only screen and (max-width: 767px) {
      body.event section#content .title-box.third {
        padding: 50px 0 23px; }
        body.event section#content .title-box.third img {
          top: -37px;
          width: 25px !important; } }
  body.event section#content .ttl-01 img {
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: -53px; }
    @media only screen and (max-width: 767px) {
      body.event section#content .ttl-01 img {
        top: -47px; } }
  body.event section#content .ttl-01:nth-child(1) img {
    width: 36px; }
  body.event section#content .ttl-01:nth-child(2) img {
    width: 50px; }
  body.event section#content .ttl-01:nth-child(3) img {
    width: 34px; }
  body.event section#content ul.event-list {
    margin: 0 auto;
    max-width: 1000px;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.event section#content ul.event-list {
        width: calc(100% - 50px); } }
    body.event section#content ul.event-list li.event-item {
      border-radius: 12px;
      margin-bottom: 40px;
      padding: 5px;
      background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
      background-size: 200% auto;
      transition: 0.5s;
      /* IE11  */
      /* IE11  */ }
      body.event section#content ul.event-list li.event-itema:hover {
        background-position: right center; }
      @media only screen and (max-width: 767px) {
        body.event section#content ul.event-list li.event-item {
          margin-bottom: 20px;
          padding: 4px; } }
      body.event section#content ul.event-list li.event-item .event-item-bg {
        background-color: white;
        border-radius: 12px;
        padding: 35px 50px 45px; }
        @media only screen and (max-width: 767px) {
          body.event section#content ul.event-list li.event-item .event-item-bg {
            padding: 21px 0 18px; } }
      body.event section#content ul.event-list li.event-item:last-child {
        margin-bottom: 0; }
      body.event section#content ul.event-list li.event-item h4.ribbon-ttl {
        background-image: url("../images/event/ribbon.png");
        background-size: cover;
        color: #1c4e6a;
        font-size: 20px;
        font-size: 2rem;
        font-weight: 500;
        letter-spacing: 0.1em;
        margin-bottom: 20px;
        padding-top: 14px;
        padding-left: 60px;
        position: relative;
        text-align: left;
        height: 60px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          body.event section#content ul.event-list li.event-item h4.ribbon-ttl {
            background-image: url("../images/event/ribbon_sp.png");
            font-size: 13px;
            font-size: 1.3rem;
            margin: 0 auto 20px;
            padding-left: 0;
            padding-top: 10px;
            text-align: center;
            height: 40px;
            width: 275px; }
            body.event section#content ul.event-list li.event-item h4.ribbon-ttl.large {
              background-image: url("../images/event/ribbon_large_sp.png");
              padding-top: 6px;
              line-height: 1.25;
              height: 58px; } }
        body.event section#content ul.event-list li.event-item h4.ribbon-ttl .time {
          background-color: white;
          border-radius: 5px;
          display: block;
          color: #0095a1;
          font-size: 12px;
          font-size: 1.2rem;
          text-align: center;
          height: 30px;
          width: 150px;
          padding-top: 8px;
          position: absolute;
          top: 10px;
          right: 50px; }
      body.event section#content ul.event-list li.event-item _:lang(x)::-ms-backdrop, body.event section#content ul.event-list li.event-item h4.ribbon-ttl {
        padding-top: 18px; }
      body.event section#content ul.event-list li.event-item .time-ttl {
        border-top: 1px solid #d9e7ef;
        border-bottom: 1px solid #d9e7ef;
        color: #0095a1;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: bold;
        padding: 10px 0;
        letter-spacing: 0.05em; }
      body.event section#content ul.event-list li.event-item _:lang(x)::-ms-backdrop, body.event section#content ul.event-list li.event-item h4.ribbon-ttl .time {
        padding-top: 10px; }
      body.event section#content ul.event-list li.event-item .reg-text p {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 2.14; }
        @media only screen and (max-width: 767px) {
          body.event section#content ul.event-list li.event-item .reg-text p {
            line-height: 1.71; } }
      body.event section#content ul.event-list li.event-item .reg-text.intro p {
        margin-bottom: 23px;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          body.event section#content ul.event-list li.event-item .reg-text.intro p {
            margin-top: 18px;
            margin-bottom: 18px;
            padding: 0 20px;
            text-align: justify; } }
      body.event section#content ul.event-list li.event-item .reg-text.intro .notes {
        font-size: 12px;
        font-size: 1.2rem;
        padding-left: 12px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.event section#content ul.event-list li.event-item .reg-text.intro .notes {
            display: block;
            font-size: 11px;
            font-size: 1.1rem;
            line-height: 1.6;
            margin-top: 9px; } }
        body.event section#content ul.event-list li.event-item .reg-text.intro .notes .ast {
          position: absolute;
          left: 0;
          top: -3px; }
          @media only screen and (max-width: 767px) {
            body.event section#content ul.event-list li.event-item .reg-text.intro .notes .ast {
              top: 0px; } }
      @media only screen and (max-width: 767px) {
        body.event section#content ul.event-list li.event-item .main-img {
          width: calc(100% - 50px); } }
      body.event section#content ul.event-list li.event-item ul.detail-list {
        margin-top: 40px; }
        @media only screen and (max-width: 767px) {
          body.event section#content ul.event-list li.event-item ul.detail-list {
            margin-top: 25px;
            padding: 0 22px; } }
        body.event section#content ul.event-list li.event-item ul.detail-list li {
          margin-bottom: 22px;
          padding-bottom: 26px;
          position: relative;
          text-align: left; }
          @media only screen and (min-width: 768px) {
            body.event section#content ul.event-list li.event-item ul.detail-list li {
              -webkit-align-items: center;
              align-items: center; }
              body.event section#content ul.event-list li.event-item ul.detail-list li:before {
                background-image: url("../images/event/waves.png");
                background-size: 880px 5px;
                content: "";
                margin: 0 auto;
                position: absolute;
                bottom: 0;
                left: 0;
                right: 0;
                height: 5px;
                width: 880px; } }
          body.event section#content ul.event-list li.event-item ul.detail-list li:last-child {
            margin-bottom: auto;
            padding-bottom: 0; }
            body.event section#content ul.event-list li.event-item ul.detail-list li:last-child:before {
              display: none; }
          @media only screen and (max-width: 767px) {
            body.event section#content ul.event-list li.event-item ul.detail-list li {
              border-bottom: 1px solid #d9e7ef;
              padding-bottom: 18px; }
              body.event section#content ul.event-list li.event-item ul.detail-list li:last-child {
                border-bottom: none;
                padding-bottom: 0; } }
          body.event section#content ul.event-list li.event-item ul.detail-list li:last-child {
            margin-bottom: 0; }
          body.event section#content ul.event-list li.event-item ul.detail-list li .text-area {
            margin-top: 10px;
            width: 580px; }
            @media only screen and (max-width: 767px) {
              body.event section#content ul.event-list li.event-item ul.detail-list li .text-area {
                margin-top: 0px;
                width: auto; } }
            body.event section#content ul.event-list li.event-item ul.detail-list li .text-area.full {
              width: auto; }
              @media only screen and (max-width: 767px) {
                body.event section#content ul.event-list li.event-item ul.detail-list li .text-area.full .upper {
                  display: block;
                  text-align: left;
                  width: 100%; } }
              @media only screen and (max-width: 767px) {
                body.event section#content ul.event-list li.event-item ul.detail-list li .text-area.full .upper .point {
                  margin-left: 0;
                  margin-bottom: 17px;
                  width: calc(50% - 5px); } }
              body.event section#content ul.event-list li.event-item ul.detail-list li .text-area.full .ttl-point {
                display: inline-block;
                line-height: 1.42;
                text-align: left !important; }
            @media only screen and (max-width: 767px) {
              body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .sp-upper {
                margin-bottom: 14px;
                display: -webkit-flex;
                display: flex;
                -webkit-justify-content: space-between;
                justify-content: space-between; } }
            body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper {
              margin-bottom: 20px;
              -webkit-justify-content: flex-start;
              justify-content: flex-start;
              /* IE11  */ }
              @media only screen and (max-width: 767px) {
                body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper {
                  margin-bottom: 0;
                  width: calc(50% - 5px);
                  -webkit-justify-content: center;
                  justify-content: center;
                  -webkit-align-items: flex-start;
                  align-items: flex-start; } }
              body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .point {
                background-color: #fef4f4;
                border-radius: 5px;
                color: #e43030;
                font-family: "Montserrat", sans-serif;
                font-style: italic;
                font-weight: bold;
                font-size: 16px;
                font-size: 1.6rem;
                letter-spacing: 0.05em;
                margin-right: 20px;
                padding-top: 8px;
                text-align: center;
                height: 30px;
                width: 120px; }
                @media only screen and (max-width: 767px) {
                  body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .point {
                    font-size: 12px;
                    font-size: 1.2rem;
                    margin-right: 0;
                    padding-top: 7px;
                    height: 25px;
                    width: 100%; } }
              body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point {
                color: #0095a1;
                font-size: 18px;
                font-size: 1.8rem;
                font-weight: bold;
                letter-spacing: 0.05em;
                padding-top: 7px;
                position: relative;
                z-index: 2; }
                @media only screen and (min-width: 768px) {
                  body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point:before {
                    background-color: #ecf3f7;
                    border-radius: 5px;
                    content: "";
                    position: absolute;
                    left: 0;
                    right: 0;
                    bottom: 0px;
                    height: 10px;
                    width: 100%;
                    z-index: -1; }
                  body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point:after {
                    background-image: url("../images/event/effect.svg");
                    background-size: 20px;
                    content: "";
                    position: absolute;
                    right: -21px;
                    top: -10px;
                    height: 20px;
                    width: 20px; } }
                @media only screen and (max-width: 767px) {
                  body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point {
                    font-size: 14px;
                    font-size: 1.4rem;
                    padding-top: 0;
                    line-height: 1.42;
                    text-align: center; }
                    body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point span.line {
                      position: relative;
                      white-space: nowrap; }
                      body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point span.line:before {
                        background-color: #ecf3f7;
                        border-radius: 5px;
                        content: "";
                        position: absolute;
                        left: -4px;
                        right: 0;
                        bottom: 0px;
                        height: 6px;
                        width: calc(100% + 8px);
                        z-index: -1; }
                      body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point span.line:first-child:after {
                        background-image: url("../images/event/effect.svg");
                        content: "";
                        position: absolute;
                        background-size: 10px;
                        right: -10px;
                        top: -5px;
                        height: 10px;
                        width: 10px; } }
              body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper _:lang(x)::-ms-backdrop, body.event section#content ul.event-list li.event-item ul.detail-list li .text-area .upper .ttl-point {
                padding-top: 10px; }
          body.event section#content ul.event-list li.event-item ul.detail-list li figure {
            width: 250px; }
            @media only screen and (max-width: 767px) {
              body.event section#content ul.event-list li.event-item ul.detail-list li figure {
                width: calc(50% - 5px); } }

@media only screen and (min-width: 768px) {
  body.event .anchor {
    position: relative;
    top: -80px; }
    body.event .anchor#anchor1 {
      position: static; } }

@media only screen and (max-width: 767px) {
  body.event .anchor {
    position: relative;
    top: -110px; }
    body.event .anchor#anchor1 {
      top: -80px; } }

body.family .mv-side {
  background-image: url("../images/family/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.family .mv-side {
      background-image: url("../images/family/mv_sp.jpg"); } }
  body.family .mv-side .reservation-btn {
    display: block; }

@media only screen and (min-width: 768px) {
  body.family .side-page-ttl-inner {
    padding-top: 45px; } }

body.family #sec01 {
  padding: 0 0 120px; }
  @media only screen and (max-width: 767px) {
    body.family #sec01 {
      padding-bottom: 112.5px; } }
  body.family #sec01 .enjoy-box__speech {
    width: 210px;
    top: 0px;
    left: 340px; }
    @media only screen and (max-width: 767px) {
      body.family #sec01 .enjoy-box__speech {
        width: 150px;
        left: auto;
        right: 25px; } }
  body.family #sec01 .enjoy-box__contents {
    padding-top: 60px; }
    @media only screen and (max-width: 767px) {
      body.family #sec01 .enjoy-box__contents {
        padding-top: 63px; } }
  @media only screen and (min-width: 768px) {
    body.family #sec01 .enjoy-box__img {
      max-width: 520px;
      margin-top: 20px; } }
  body.family #sec01 .enjoy-box__dotted, body.family #sec01 .enjoy-box02__dotted {
    max-width: 410px;
    left: calc(50% - 30px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%); }
    @media only screen and (max-width: 767px) {
      body.family #sec01 .enjoy-box__dotted, body.family #sec01 .enjoy-box02__dotted {
        max-width: 215px;
        bottom: 5px; } }

body.family #sec02 {
  padding: 0 0 50px; }
  @media only screen and (max-width: 767px) {
    body.family #sec02 {
      padding-bottom: 70px; } }
  body.family #sec02 .enjoy-box__speech {
    width: 290px;
    right: 40px;
    top: -10px;
    z-index: 22; }
    @media only screen and (max-width: 767px) {
      body.family #sec02 .enjoy-box__speech {
        width: 190px;
        right: 25px;
        top: -60px; } }
  @media only screen and (min-width: 768px) {
    body.family #sec02 .enjoy-box__img {
      max-width: 500px;
      margin-top: -50px; } }
  body.family #sec02 .enjoy-box__dotted, body.family #sec02 .enjoy-box02__dotted {
    max-width: 445px;
    left: calc(50% - 30px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 20px; }
    @media only screen and (max-width: 767px) {
      body.family #sec02 .enjoy-box__dotted, body.family #sec02 .enjoy-box02__dotted {
        max-width: 125px;
        left: calc(50% + 0px);
        bottom: 5px; } }

body.family #sec03 {
  padding: 0 0 70px; }
  @media only screen and (max-width: 767px) {
    body.family #sec03 {
      padding-bottom: 60px; } }
  @media only screen and (min-width: 768px) {
    body.family #sec03 .enjoy-box__img {
      max-width: 500px;
      margin: 30px 0 0 auto; } }
  @media only screen and (max-width: 767px) {
    body.family #sec03 .enjoy-box__img {
      max-width: calc((100% - 10px));
      margin-left: auto; } }
  body.family #sec03 .enjoy-box__dotted, body.family #sec03 .enjoy-box02__dotted {
    max-width: 370px;
    left: calc(50% - 200px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -100px; }
    @media only screen and (max-width: 767px) {
      body.family #sec03 .enjoy-box__dotted, body.family #sec03 .enjoy-box02__dotted {
        max-width: 110px;
        left: calc(50% + 40px);
        bottom: -40px; } }

body.family #sec04 {
  padding: 60px 0 150px; }
  @media only screen and (max-width: 767px) {
    body.family #sec04 {
      padding: 15px 0 104px; } }
  body.family #sec04 .enjoy-box02__speech {
    width: 240px;
    right: 50px;
    top: -110px; }
    @media only screen and (max-width: 767px) {
      body.family #sec04 .enjoy-box02__speech {
        width: 125px;
        right: 0;
        top: -45px; } }
  body.family #sec04 .enjoy-box02__heading {
    width: 270px; }
    @media only screen and (max-width: 767px) {
      body.family #sec04 .enjoy-box02__heading {
        width: 132.5px; } }
  body.family #sec04 .enjoy-box02__subimg {
    width: 135px;
    right: 20px;
    bottom: -10px; }
    @media only screen and (max-width: 767px) {
      body.family #sec04 .enjoy-box02__subimg {
        width: 78px;
        right: -12px;
        bottom: -37px; } }
  body.family #sec04 .enjoy-box02__dotted {
    max-width: 330px;
    left: calc(50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.family #sec04 .enjoy-box02__dotted {
        left: calc(50% + 30px);
        max-width: 100px;
        bottom: 7px; } }

body.family #sec05 {
  padding-bottom: 110px; }
  @media only screen and (max-width: 767px) {
    body.family #sec05 {
      padding-bottom: 70px; } }
  @media only screen and (max-width: 767px) {
    body.family #sec05 .enjoy-box__speech {
      width: 145px;
      top: -65px; } }
  @media only screen and (min-width: 768px) {
    body.family #sec05 .enjoy-box__img {
      max-width: 530px;
      margin-top: -10px; } }
  body.family #sec05 .enjoy-box__dotted, body.family #sec05 .enjoy-box02__dotted {
    max-width: 520px;
    left: calc(50% - 50px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -70px; }
    @media only screen and (max-width: 767px) {
      body.family #sec05 .enjoy-box__dotted, body.family #sec05 .enjoy-box02__dotted {
        width: 135px;
        left: calc(50% + 10px);
        bottom: 5px; } }

body.family #sec06 {
  padding-bottom: 115px; }
  @media only screen and (max-width: 767px) {
    body.family #sec06 {
      padding-bottom: 75px; } }
  body.family #sec06 .enjoy-box__speech {
    width: 210px;
    right: 50px;
    top: -45px; }
  @media only screen and (min-width: 768px) {
    body.family #sec06 .enjoy-box__img {
      max-width: 380px;
      margin-top: -70px; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    body.family #sec06 .enjoy-box__img {
      max-width: 220px !important; } }
  body.family #sec06 .enjoy-box__dotted, body.family #sec06 .enjoy-box02__dotted {
    max-width: 390px;
    left: calc(50% - 205px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 15px; }
    @media only screen and (max-width: 767px) {
      body.family #sec06 .enjoy-box__dotted, body.family #sec06 .enjoy-box02__dotted {
        max-width: 85px;
        left: calc(50% - 45px);
        bottom: 1px; } }

body.family #sec07 {
  padding: 0 0 260px; }
  @media only screen and (max-width: 767px) {
    body.family #sec07 {
      padding-bottom: 175px; } }
  body.family #sec07 .enjoy-box02__speech {
    width: 245px;
    right: 50px;
    top: -130px; }
    @media only screen and (max-width: 767px) {
      body.family #sec07 .enjoy-box02__speech {
        width: 140px;
        right: 0;
        top: -60px; } }
  body.family #sec07 .enjoy-box02__heading {
    width: 350px; }
    @media only screen and (max-width: 767px) {
      body.family #sec07 .enjoy-box02__heading {
        width: 175px; } }
  body.family #sec07 .enjoy-box02__left {
    width: calc(100% - 380px); }
  body.family #sec07 .enjoy-box02__subimg {
    width: 150px;
    right: 40px;
    bottom: -30px; }
    @media only screen and (min-width: 768px) and (max-width: 1060px) {
      body.family #sec07 .enjoy-box02__subimg {
        width: 100px !important; } }
    @media only screen and (max-width: 767px) {
      body.family #sec07 .enjoy-box02__subimg {
        width: 100px;
        right: -15px;
        bottom: -80px; } }
  body.family #sec07 .enjoy-box02__img {
    max-width: 320px; }

body.faq .mv-side {
  background-image: url("../images/faq/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.faq .mv-side {
      background-image: url("../images/faq/mv_sp.jpg"); } }
  body.faq .mv-side .reservation-btn {
    display: block; }

body.faq .anchor-link {
  padding: 120px 0 120px; }
  @media only screen and (max-width: 767px) {
    body.faq .anchor-link {
      padding: 70px 0 70px; } }
  body.faq .anchor-link > a {
    height: 112px; }
    @media only screen and (max-width: 767px) {
      body.faq .anchor-link > a {
        height: 80px; } }
    body.faq .anchor-link > a figure {
      padding-top: 10px; }
      body.faq .anchor-link > a figure .img-box {
        height: auto;
        /* IE11  */ }
        body.faq .anchor-link > a figure .img-box img {
          width: auto;
          height: 30px; }
        body.faq .anchor-link > a figure .img-box _:lang(x)::-ms-backdrop, body.faq .anchor-link > a figure .img-box img {
          width: 25px; }
      body.faq .anchor-link > a figure figcaption {
        padding-top: 8px; }
        @media only screen and (max-width: 767px) {
          body.faq .anchor-link > a figure figcaption {
            padding-top: 4px; } }
        body.faq .anchor-link > a figure figcaption span {
          font-size: 18px;
          font-size: 1.8rem; }
          @media only screen and (max-width: 767px) {
            body.faq .anchor-link > a figure figcaption span {
              font-size: 13px;
              font-size: 1.3rem; } }

body.faq section#faq-content {
  background-color: #f5fbfe;
  padding: 118px 0 220px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.faq section#faq-content {
      padding: 68px 0 120px; } }
  body.faq section#faq-content .anchor {
    position: relative;
    top: -90px; }
  body.faq section#faq-content ul.faq-question-list {
    margin: 69px auto 146px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.faq section#faq-content ul.faq-question-list {
        margin: 38px auto 82px; } }
    body.faq section#faq-content ul.faq-question-list:last-child {
      margin-bottom: 0; }
    body.faq section#faq-content ul.faq-question-list li.question {
      background-color: white;
      border-radius: 8px;
      margin-bottom: 20px;
      padding: 20px;
      position: relative;
      min-height: 100px;
      /* IE11  */ }
      @media only screen and (max-width: 767px) {
        body.faq section#faq-content ul.faq-question-list li.question {
          margin-bottom: 15px;
          padding: 15px;
          min-height: 70px; } }
      body.faq section#faq-content ul.faq-question-list li.question:last-child {
        margin-bottom: 0; }
      body.faq section#faq-content ul.faq-question-list li.question .question-trigger {
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 500;
        letter-spacing: 0.05em;
        line-height: 1.6;
        padding: 16px 80px 0;
        position: relative;
        height: 60px;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
        @media only screen and (max-width: 767px) {
          body.faq section#faq-content ul.faq-question-list li.question .question-trigger {
            font-size: 15px;
            font-size: 1.5rem;
            font-weight: 500;
            letter-spacing: 0.05em;
            line-height: 1.7;
            padding: 0 35px 0 44px;
            position: relative;
            min-height: 37px;
            height: auto;
            display: -webkit-flex;
            display: flex;
            -webkit-align-items: center;
            align-items: center; } }
        body.faq section#faq-content ul.faq-question-list li.question .question-trigger:before {
          background-color: #f2fafa;
          border-radius: 8px;
          color: #0095a1;
          content: "Q.";
          display: block;
          font-size: 24px;
          font-size: 2.4rem;
          font-family: "Montserrat", sans-serif;
          position: absolute;
          top: 0;
          left: 0;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          height: 60px;
          width: 60px;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center; }
          @media only screen and (max-width: 767px) {
            body.faq section#faq-content ul.faq-question-list li.question .question-trigger:before {
              font-size: 15px;
              font-size: 1.5rem;
              top: 50%;
              transform: translateY(-50%);
              height: 35px;
              width: 35px; } }
        body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect {
          position: absolute;
          right: 0;
          top: 0; }
          @media only screen and (max-width: 767px) {
            body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect {
              right: -28px; } }
          body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:before, body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:after {
            background-color: #1c4e6a;
            content: "";
            display: block;
            position: absolute;
            top: 29px;
            right: 30px;
            transition: all .3s;
            height: 1px;
            width: 15px; }
            @media only screen and (max-width: 767px) {
              body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:before, body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:after {
                top: 16px;
                right: 28px;
                width: 10px; } }
          body.faq section#faq-content ul.faq-question-list li.question .question-trigger .effect:after {
            transform: rotate(90deg); }
        body.faq section#faq-content ul.faq-question-list li.question .question-trigger.active .effect:after {
          transform: rotate(0); }
      body.faq section#faq-content ul.faq-question-list li.question _:lang(x)::-ms-backdrop, body.faq section#faq-content ul.faq-question-list li.question .question-trigger {
        padding-top: 18px; }
      body.faq section#faq-content ul.faq-question-list li.question .answer {
        border-top: 1px dashed #d9e7ef;
        display: none;
        margin-top: 20px;
        padding: 20px 80px 10px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.faq section#faq-content ul.faq-question-list li.question .answer {
            border-top: 1px dotted #d9e7ef;
            padding: 10px 0 10px; } }
        body.faq section#faq-content ul.faq-question-list li.question .answer:before {
          background-color: #fef4f4;
          border-radius: 8px;
          color: #e43030;
          content: "A.";
          display: block;
          font-size: 24px;
          font-size: 2.4rem;
          font-family: "Montserrat", sans-serif;
          position: absolute;
          top: 20px;
          left: 0;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          height: 60px;
          width: 60px;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center; }
          @media only screen and (max-width: 767px) {
            body.faq section#faq-content ul.faq-question-list li.question .answer:before {
              font-size: 15px;
              font-size: 1.5rem;
              top: 20px;
              left: 0;
              height: 35px;
              width: 35px; } }
        body.faq section#faq-content ul.faq-question-list li.question .answer .pdf-link {
          color: #008239;
          font-weight: bold;
          text-decoration: underline; }
        body.faq section#faq-content ul.faq-question-list li.question .answer .links-list {
          -webkit-justify-content: flex-start;
          justify-content: flex-start;
          max-width: 647px; }
          @media only screen and (max-width: 767px) {
            body.faq section#faq-content ul.faq-question-list li.question .answer .links-list {
              margin-top: 15px;
              -webkit-flex-direction: column;
              flex-direction: column; }
              body.faq section#faq-content ul.faq-question-list li.question .answer .links-list:last-of-type {
                margin-top: 10px; } }
          body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li {
            font-size: 14px;
            font-size: 1.4rem;
            color: #0095a1;
            letter-spacing: 0.05em;
            line-height: 2em;
            position: relative;
            padding-bottom: 1px;
            margin-right: 20px; }
            @media only screen and (min-width: 768px) {
              body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li {
                -webkit-transition: opacity 0.3s;
                -moz-transition: opacity 0.3s;
                -o-transition: opacity 0.3s;
                transition: opacity 0.3s; }
                body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li:hover {
                  opacity: 0.7; } }
            @media only screen and (min-width: 768px) {
              body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li {
                width: 138px; } }
            @media only screen and (max-width: 767px) {
              body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li {
                font-size: 13px;
                font-size: 1.3rem;
                line-height: 1.714285714em;
                margin-bottom: 10px; } }
            body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li .line {
              border-bottom: #0095a1 solid 1px;
              display: inline-block;
              padding-bottom: 0; }
            body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li:last-child {
              margin-right: 0;
              margin-bottom: 0; }
            body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li img {
              width: 13px;
              position: relative;
              top: -8px;
              left: 5px; }
              @media only screen and (max-width: 767px) {
                body.faq section#faq-content ul.faq-question-list li.question .answer .links-list li img {
                  width: 11px;
                  top: -6px; } }
        body.faq section#faq-content ul.faq-question-list li.question .answer .duo-bt {
          -webkit-justify-content: flex-start;
          justify-content: flex-start;
          width: 100%; }
          body.faq section#faq-content ul.faq-question-list li.question .answer .duo-bt .btn {
            width: 100%; }
            @media only screen and (min-width: 768px) {
              body.faq section#faq-content ul.faq-question-list li.question .answer .duo-bt .btn {
                width: 320px; } }
            body.faq section#faq-content ul.faq-question-list li.question .answer .duo-bt .btn:first-child {
              margin-right: 20px; }
              @media only screen and (max-width: 767px) {
                body.faq section#faq-content ul.faq-question-list li.question .answer .duo-bt .btn:first-child {
                  margin-right: auto;
                  margin-bottom: 5px; } }
        body.faq section#faq-content ul.faq-question-list li.question .answer .btn {
          color: white;
          margin-left: 0;
          margin-top: 20px; }
          @media only screen and (max-width: 767px) {
            body.faq section#faq-content ul.faq-question-list li.question .answer .btn {
              line-height: 1.3;
              text-align: center;
              margin-left: auto;
              margin-right: auto;
              margin-top: 15px;
              padding-right: 10px;
              padding-bottom: 3px;
              font-size: 13px;
              letter-spacing: 0;
              height: 40px;
              width: calc(100% - 20px); } }
          body.faq section#faq-content ul.faq-question-list li.question .answer .btn:before {
            background-image: url(../images/common/arw_right.png);
            background-size: 6px 9px;
            background-repeat: no-repeat;
            content: "";
            position: absolute;
            right: 10px;
            top: 50%;
            transform: translateY(-50%);
            height: 9px;
            width: 6px; }
        body.faq section#faq-content ul.faq-question-list li.question .answer .text-wrap {
          -webkit-align-items: center;
          align-items: center;
          min-height: 60px; }
          @media only screen and (max-width: 767px) {
            body.faq section#faq-content ul.faq-question-list li.question .answer .text-wrap {
              margin-top: 10px;
              padding-left: 43px;
              padding-right: 25px;
              position: relative;
              min-height: 40px; } }
        body.faq section#faq-content ul.faq-question-list li.question .answer p {
          font-size: 15px;
          font-size: 1.5rem;
          font-family: "Noto Sans JP", "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
          letter-spacing: 0.05em;
          line-height: 2;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.faq section#faq-content ul.faq-question-list li.question .answer p {
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1.7;
              text-align: justify; } }
          @media only screen and (min-width: 768px) {
            body.faq section#faq-content ul.faq-question-list li.question .answer p a {
              cursor: pointer;
              -webkit-transition: 0.3s;
              -moz-transition: 0.3s;
              -o-transition: 0.3s;
              transition: 0.3s; }
              body.faq section#faq-content ul.faq-question-list li.question .answer p a:hover {
                opacity: .7; } }
          body.faq section#faq-content ul.faq-question-list li.question .answer p .caution-info {
            color: #e43030;
            font-size: 12px;
            font-size: 1.2rem; }

body.faq .faq-contact-box .contact-box02 {
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    body.faq .faq-contact-box .contact-box02 {
      margin-top: 25px; } }
  @media only screen and (min-width: 768px) {
    body.faq .faq-contact-box .contact-box02 > div p {
      width: calc(100% - 215px);
      max-width: 390px; } }
  @media only screen and (min-width: 768px) and (max-width: 960px) {
    body.faq .faq-contact-box .contact-box02 > div p {
      width: calc(100% - 230px); }
      body.faq .faq-contact-box .contact-box02 > div p br.pc {
        display: none; } }

body.faq .faq-contact-box .btn-contact {
  margin-top: 45px; }
  @media only screen and (max-width: 767px) {
    body.faq .faq-contact-box .btn-contact {
      margin-top: 25px; } }

body.fee .mv-side {
  background-image: url("../images/fee/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.fee .mv-side {
      background-image: url("../images/fee/mv_sp.jpg"); } }
  body.fee .mv-side .reservation-btn {
    display: block; }

body.fee main {
  padding-bottom: 200px; }
  @media only screen and (max-width: 767px) {
    body.fee main {
      padding-bottom: 118px; } }

body.fee .anchor-btn {
  margin: 120px 0 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    body.fee .anchor-btn {
      margin: 70px 0 0; } }
  body.fee .anchor-btn a {
    width: 23.5%;
    height: 180px;
    position: relative;
    border-radius: 5px;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    padding-bottom: 30px;
    padding-top: 9px;
    -webkit-transition: -webkit-transform 0.3s, background-position 0.5s;
    -moz-transition: -moz-transform 0.3s, background-position 0.5s;
    -o-transition: -o-transform 0.3s, background-position 0.5s;
    transition: transform 0.3s, background-position 0.5s; }
    @media only screen and (min-width: 768px) {
      body.fee .anchor-btn a:hover {
        -webkit-transform: translateY(5px);
        -moz-transform: translateY(5px);
        -ms-transform: translateY(5px);
        -o-transform: translateY(5px);
        transform: translateY(5px); } }
    @media only screen and (max-width: 767px) {
      body.fee .anchor-btn a {
        width: 100%;
        height: 80px;
        padding-left: 26px;
        padding-bottom: 0;
        padding-top: 0;
        justify-content: flex-start; }
        body.fee .anchor-btn a:not(:last-child) {
          margin-bottom: 10px; } }
    body.fee .anchor-btn a:before, body.fee .anchor-btn a:after {
      content: '';
      position: absolute; }
    body.fee .anchor-btn a:after {
      z-index: 1;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      -webkit-transition: -webkit-transform 0.3s, background-position 0.5s;
      -moz-transition: -moz-transform 0.3s, background-position 0.5s;
      -o-transition: -o-transform 0.3s, background-position 0.5s;
      transition: transform 0.3s, background-position 0.5s; }
      @media only screen and (max-width: 767px) {
        body.fee .anchor-btn a:after {
          background: linear-gradient(#0095a1 0%, #005ca1 100%); } }
      @media only screen and (min-width: 768px) {
        body.fee .anchor-btn a:after {
          background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-size: 200% auto;
          transition: 0.5s; }
          body.fee .anchor-btn a:aftera:hover {
            background-position: right center; } }
    body.fee .anchor-btn a:before {
      z-index: 2;
      background: #FFF;
      left: 2px;
      top: 2px;
      right: 2px;
      bottom: 30px;
      border-radius: 5px 5px 0 0; }
      @media only screen and (max-width: 767px) {
        body.fee .anchor-btn a:before {
          top: 1px;
          left: 1px;
          bottom: 1px;
          right: 23px;
          border-radius: 5px 0 0 5px; } }
    body.fee .anchor-btn a > span {
      position: relative;
      z-index: 3;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.fee .anchor-btn a > span {
          text-align: left; } }
    body.fee .anchor-btn a .txt-big {
      display: block;
      line-height: 22px;
      letter-spacing: 0.05em;
      font-size: 18px;
      font-size: 1.8rem; }
      @media only screen and (max-width: 767px) {
        body.fee .anchor-btn a .txt-big {
          font-size: 15px;
          font-size: 1.5rem; } }
    body.fee .anchor-btn a .txt-small {
      display: block;
      line-height: 16px;
      letter-spacing: 0.05em;
      font-size: 12px;
      font-size: 1.2rem;
      padding-top: 13px; }
      @media only screen and (max-width: 767px) {
        body.fee .anchor-btn a .txt-small {
          font-size: 11px;
          font-size: 1.1rem;
          padding-top: 3px; } }
    body.fee .anchor-btn a .arrow {
      position: absolute;
      background-image: url("../images/common/arw_right.png");
      background-size: 6px 9px;
      content: "";
      position: absolute;
      height: 9px;
      width: 6px; }
      @media only screen and (min-width: 768px) {
        body.fee .anchor-btn a .arrow {
          bottom: 10px;
          left: 50%;
          transform: translateX(-50%) rotate(90deg); } }
      @media only screen and (max-width: 767px) {
        body.fee .anchor-btn a .arrow {
          right: 8px;
          top: 50%;
          transform: translateY(-50%) rotate(90deg); } }
  body.fee .anchor-btn a:nth-child(3) {
    padding-top: 0; }
  @media only screen and (min-width: 768px) {
    body.fee .anchor-btn a:nth-child(4) {
      padding-top: 3px; }
      body.fee .anchor-btn a:nth-child(4) .txt-small {
        padding-top: 16px; } }

body.fee .anchor-link {
  padding: 20px 0 150px;
  justify-content: space-between;
  flex-direction: row;
  align-items: flex-start; }
  @media only screen and (max-width: 767px) {
    body.fee .anchor-link {
      padding: 10px 0 85px; } }
  body.fee .anchor-link > a {
    width: 49%;
    margin: 0; }
    @media only screen and (min-width: 768px) {
      body.fee .anchor-link > a {
        padding: 2px 32px 2px 2px;
        background: linear-gradient(#0095a1 0%, #005ca1 100%); } }
    @media only screen and (max-width: 767px) {
      body.fee .anchor-link > a {
        width: 48.5%;
        padding-bottom: 23px; } }
    @media only screen and (min-width: 768px) {
      body.fee .anchor-link > a:after {
        left: auto;
        right: 14px;
        top: 50%;
        transform: translateY(-50%) rotate(90deg); } }
    @media only screen and (min-width: 768px) {
      body.fee .anchor-link > a figure {
        padding-top: 11px;
        padding-left: 90px;
        padding-bottom: 24px;
        border-radius: 5px 0 0 5px;
        position: relative; } }
    @media only screen and (max-width: 767px) {
      body.fee .anchor-link > a figure {
        display: block;
        padding: 0;
        text-align: center;
        padding-bottom: 11px; } }
    @media only screen and (min-width: 768px) {
      body.fee .anchor-link > a figure .img-box {
        position: absolute;
        left: 39px;
        top: 50%;
        transform: translateY(-50%); } }
    @media only screen and (max-width: 767px) {
      body.fee .anchor-link > a figure .img-box {
        width: 100%; } }
    body.fee .anchor-link > a figure figcaption {
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.fee .anchor-link > a figure figcaption {
          width: 100%;
          text-align: center;
          padding: 0; } }
      body.fee .anchor-link > a figure figcaption span {
        font-size: 18px;
        font-size: 1.8rem; }
        @media only screen and (max-width: 767px) {
          body.fee .anchor-link > a figure figcaption span {
            line-height: 18px;
            font-size: 14px;
            font-size: 1.4rem; } }
      body.fee .anchor-link > a figure figcaption p {
        text-align: left;
        font-size: 12px;
        font-size: 1.2rem; }
        @media only screen and (max-width: 767px) {
          body.fee .anchor-link > a figure figcaption p {
            padding-top: 8px;
            text-align: center;
            line-height: 15px;
            font-size: 11px;
            font-size: 1.1rem; } }
  @media only screen and (min-width: 768px) {
    body.fee .anchor-link > a:nth-child(1) figure .img-box img {
      width: 28px; } }
  @media only screen and (max-width: 767px) {
    body.fee .anchor-link > a:nth-child(1) figure .img-box {
      padding: 17px 0 10px; }
      body.fee .anchor-link > a:nth-child(1) figure .img-box img {
        width: 19px; } }
  @media only screen and (max-width: 767px) {
    body.fee .anchor-link > a:nth-child(2) figure {
      padding-bottom: 24px; } }
  @media only screen and (min-width: 768px) {
    body.fee .anchor-link > a:nth-child(2) figure {
      padding-left: 105px; }
      body.fee .anchor-link > a:nth-child(2) figure .img-box img {
        width: 44px; } }
  @media only screen and (max-width: 767px) {
    body.fee .anchor-link > a:nth-child(2) figure .img-box {
      padding: 28px 0 12px; }
      body.fee .anchor-link > a:nth-child(2) figure .img-box img {
        width: 35px; } }

body.fee section[id^="anchor"] {
  margin-top: 150px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.fee section[id^="anchor"] {
      margin-top: 80px; } }
  body.fee section[id^="anchor"]:nth-of-type(-n + 1) {
    margin-top: 0; }
  body.fee section[id^="anchor"] .ttl-01 {
    margin-bottom: 65px; }
    @media only screen and (max-width: 767px) {
      body.fee section[id^="anchor"] .ttl-01 {
        margin-bottom: 40px; } }
  body.fee section[id^="anchor"] .inner-sec {
    margin-top: 65px; }
    @media only screen and (max-width: 767px) {
      body.fee section[id^="anchor"] .inner-sec {
        margin-top: 40px; } }
    body.fee section[id^="anchor"] .inner-sec:nth-of-type(-n + 1) {
      margin-top: 0; }

body.fee section.inner-sec .caution-info {
  color: #e43030;
  font-size: 12px;
  font-size: 1.2rem; }

body.fee section.inner-sec .ttl-02 {
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    body.fee section.inner-sec .ttl-02 {
      margin-bottom: 25px;
      letter-spacing: 0.05em; } }

body.fee section.inner-sec p a {
  color: #0095a1;
  padding-bottom: 3px;
  border-bottom: #0095a1 solid 1px; }
  @media only screen and (min-width: 768px) {
    body.fee section.inner-sec p a {
      -webkit-transition: opacity 0.3s;
      -moz-transition: opacity 0.3s;
      -o-transition: opacity 0.3s;
      transition: opacity 0.3s; }
      body.fee section.inner-sec p a:hover {
        opacity: 0.7; } }

body.fee .half-sec {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 65px; }
  @media only screen and (max-width: 767px) {
    body.fee .half-sec {
      margin-top: 35px; } }
  body.fee .half-sec .inner-sec {
    width: calc((100% - 40px) / 2);
    margin-right: 40px; }
    @media only screen and (max-width: 767px) {
      body.fee .half-sec .inner-sec {
        width: 100%;
        margin-right: 0; } }
    @media only screen and (min-width: 768px) {
      body.fee .half-sec .inner-sec:last-of-type {
        margin: 0 !important; } }
    body.fee .half-sec .inner-sec .ttl-02 {
      margin-bottom: 40px; }
      @media only screen and (max-width: 767px) {
        body.fee .half-sec .inner-sec .ttl-02 {
          margin-bottom: 30px; } }
    body.fee .half-sec .inner-sec .img {
      margin-bottom: 25px; }
      @media only screen and (max-width: 767px) {
        body.fee .half-sec .inner-sec .img {
          margin-bottom: 20px; } }
    body.fee .half-sec .inner-sec .note-list {
      margin-top: 8px; }
    body.fee .half-sec .inner-sec .txt ul {
      margin-top: 10px; }
      body.fee .half-sec .inner-sec .txt ul[style*="list-style-type: circle;"], body.fee .half-sec .inner-sec .txt ul[style*="list-style-type: square;"], body.fee .half-sec .inner-sec .txt ul[style*="list-style-type: disc;"] {
        padding-left: 19px; }
      body.fee .half-sec .inner-sec .txt ul li {
        text-align: left;
        margin-bottom: 5px;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.833333333em;
        text-align: left; }
        @media only screen and (max-width: 767px) {
          body.fee .half-sec .inner-sec .txt ul li {
            font-size: 11px;
            font-size: 1.1rem;
            line-height: 1.636363636em; } }

@media only screen and (max-width: 767px) {
  body.fee .electronic-ticket ~ .note-list {
    margin-top: 15px !important; } }

body.fee .electronic-ticket {
  background-image: url(../images/fee/img02.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  border-radius: 5px;
  padding: 40px; }
  @media only screen and (max-width: 1000px) {
    body.fee .electronic-ticket {
      padding: 20px; } }
  @media only screen and (max-width: 767px) {
    body.fee .electronic-ticket {
      padding: 25px; } }
  body.fee .electronic-ticket .arrow-01 {
    display: block;
    background-color: #FFF;
    border-radius: 5px;
    overflow: hidden;
    background-image: url(../images/fee/img03.png);
    background-repeat: no-repeat;
    background-size: 90% auto;
    background-position: center bottom 30px;
    transition: all .3s; }
    body.fee .electronic-ticket .arrow-01:before, body.fee .electronic-ticket .arrow-01:after {
      top: 48%; }
    @media only screen and (max-width: 767px) {
      body.fee .electronic-ticket .arrow-01 {
        background-size: 85% auto;
        background-position: center bottom 25px; } }
    body.fee .electronic-ticket .arrow-01 span {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.1em;
      font-weight: bold;
      display: inline-block;
      position: relative;
      padding: 20px 0 10px; }
      @media only screen and (max-width: 1000px) {
        body.fee .electronic-ticket .arrow-01 span {
          font-size: 12px;
          font-size: 1.2rem; } }
      @media only screen and (max-width: 767px) {
        body.fee .electronic-ticket .arrow-01 span {
          font-size: 11px;
          font-size: 1.1rem;
          padding: 17px 0 8px; } }
      body.fee .electronic-ticket .arrow-01 span:before, body.fee .electronic-ticket .arrow-01 span:after {
        content: '';
        height: 14px;
        width: 1px;
        background-color: #1c4e6a;
        display: inline-block;
        position: relative;
        top: 2px; }
      body.fee .electronic-ticket .arrow-01 span:before {
        left: -18px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        transform: rotate(-45deg); }
        @media only screen and (max-width: 767px) {
          body.fee .electronic-ticket .arrow-01 span:before {
            left: -15px; } }
      body.fee .electronic-ticket .arrow-01 span:after {
        right: -18px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        transform: rotate(45deg); }
        @media only screen and (max-width: 767px) {
          body.fee .electronic-ticket .arrow-01 span:after {
            right: -15px; } }
    body.fee .electronic-ticket .arrow-01 P {
      text-align: center;
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: 0.1em;
      font-size: 20px;
      font-size: 2rem;
      line-height: 1.583333333em;
      position: relative;
      padding-bottom: 20px; }
      @media only screen and (max-width: 1000px) {
        body.fee .electronic-ticket .arrow-01 P {
          font-size: 13px;
          font-size: 1.3rem; } }
      @media only screen and (max-width: 767px) {
        body.fee .electronic-ticket .arrow-01 P {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.846153846em;
          padding-bottom: 10px; } }
      body.fee .electronic-ticket .arrow-01 P em {
        font-size: 24px;
        font-size: 2.4rem;
        font-weight: bold;
        line-height: 1.583333333em;
        color: #0095a1;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
        @media only screen and (max-width: 1000px) {
          body.fee .electronic-ticket .arrow-01 P em {
            font-size: 18px;
            font-size: 1.8rem; } }
        @media only screen and (max-width: 767px) {
          body.fee .electronic-ticket .arrow-01 P em {
            font-size: 15px;
            font-size: 1.5rem;
            line-height: 1.6em;
            font-weight: bold; } }
      body.fee .electronic-ticket .arrow-01 P:before {
        content: '';
        width: 18px;
        height: 26px;
        background-image: url(../images/common/icon-phone.svg);
        background-repeat: no-repeat;
        background-size: 18px 26px;
        background-position: center;
        display: inline-block;
        position: relative;
        top: 5px; }
        @media only screen and (max-width: 767px) {
          body.fee .electronic-ticket .arrow-01 P:before {
            width: 10px;
            height: 15px;
            background-size: 10px 15px;
            top: 2px; } }
    body.fee .electronic-ticket .arrow-01 strong {
      background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-size: 200% auto;
      transition: 0.5s;
      display: block;
      height: 40px;
      color: #FFF;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      padding: 14px 0 0; }
      body.fee .electronic-ticket .arrow-01 stronga:hover {
        background-position: right center; }
      @media only screen and (max-width: 1000px) {
        body.fee .electronic-ticket .arrow-01 strong {
          font-size: 11px;
          font-size: 1.1rem; } }
      @media only screen and (max-width: 767px) {
        body.fee .electronic-ticket .arrow-01 strong {
          font-size: 11px;
          font-size: 1.1rem;
          height: 30px;
          padding-top: 10px; } }
  body.fee .electronic-ticket > a {
    display: block;
    transition: all .3s; }
    @media only screen and (min-width: 768px) {
      body.fee .electronic-ticket > a:hover {
        box-shadow: 0 0 15px #cce5ef; } }

body.fee .fee-ticket {
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    body.fee .fee-ticket {
      margin-top: 30px; } }
  body.fee .fee-ticket__table {
    border-radius: 5px;
    border: #0095a1 solid 1px;
    width: 100%;
    display: block;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      body.fee .fee-ticket__table {
        border-radius: 3px; } }
    @media only screen and (max-width: 767px) {
      body.fee .fee-ticket__table.typeB {
        border: none;
        overflow: auto; } }
    @media only screen and (min-width: 768px) {
      body.fee .fee-ticket__table.typeB tr:nth-of-type(1) td:nth-of-type(2) {
        border-top: #FFF solid 1px; }
      body.fee .fee-ticket__table.typeB tr td:nth-of-type(2) {
        border-top: #d9e7ef solid 1px; } }
    @media only screen and (max-width: 767px) {
      body.fee .fee-ticket__table.typeB tr {
        width: 50%;
        overflow: hidden; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 1) {
          width: 100%;
          margin-bottom: 5px; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 1) td {
            border-radius: 5px; } }
      @media only screen and (max-width: 767px) and (max-width: 767px) {
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 1) td {
          border-radius: 3px; } }
    @media only screen and (max-width: 767px) {
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 2), body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 4) {
          border-left: #0095a1 solid 1px; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 3), body.fee .fee-ticket__table.typeB tr:nth-of-type(5n) {
          border-right: #0095a1 solid 1px; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 4), body.fee .fee-ticket__table.typeB tr:nth-of-type(5n) {
          border-bottom: #0095a1 solid 1px; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(6) {
          margin-top: 20px; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 2) {
          border-radius: 5px 0 0 0; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 2) th {
            border-left: none; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 2) td {
            border-left: none; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 3) {
          border-radius: 0 5px 0 0; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 3) th {
            border-left: #FFF solid 1px; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 3) td {
            border-left: #d9e7ef solid 1px; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 4) {
          border-radius: 0 0 0 5px; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 4) th {
            border-left: none; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n + 4) td {
            border-left: none; }
        body.fee .fee-ticket__table.typeB tr:nth-of-type(5n) {
          border-radius: 0 0 5px 0; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n) th {
            border-left: #FFF solid 1px; }
          body.fee .fee-ticket__table.typeB tr:nth-of-type(5n) td {
            border-left: #d9e7ef solid 1px; } }
    @media only screen and (min-width: 768px) {
      body.fee .fee-ticket__table.typeC tr {
        width: 25% !important; }
        body.fee .fee-ticket__table.typeC tr:nth-of-type(1) td:nth-of-type(2) {
          border-top: #FFF solid 1px; }
        body.fee .fee-ticket__table.typeC tr td:nth-of-type(2) {
          border-top: #d9e7ef solid 1px; }
        body.fee .fee-ticket__table.typeC tr td {
          min-height: 50px; } }
    @media only screen and (max-width: 767px) {
      body.fee .fee-ticket__table.typeC {
        border: none; }
        body.fee .fee-ticket__table.typeC tbody {
          -webkit-flex-direction: column;
          flex-direction: column;
          height: 270px; }
          body.fee .fee-ticket__table.typeC tbody tr {
            width: calc((100% - 5px) / 2); }
            body.fee .fee-ticket__table.typeC tbody tr:nth-of-type(-n + 4) {
              margin-right: 5px;
              border: none; }
            body.fee .fee-ticket__table.typeC tbody tr:nth-of-type(4n + 1) {
              margin-bottom: 5px; }
              body.fee .fee-ticket__table.typeC tbody tr:nth-of-type(4n + 1) th {
                border-top: #0095a1 solid 1px; }
              body.fee .fee-ticket__table.typeC tbody tr:nth-of-type(4n + 1) td {
                height: 35px;
                border-radius: 5px;
                border: none; } }
          @media only screen and (max-width: 767px) and (max-width: 767px) {
            body.fee .fee-ticket__table.typeC tbody tr:nth-of-type(4n + 1) td {
              border-radius: 3px; } }
    @media only screen and (max-width: 767px) {
            body.fee .fee-ticket__table.typeC tbody tr:nth-of-type(4n + 2) th {
              border-radius: 5px 5px 0 0; }
            body.fee .fee-ticket__table.typeC tbody tr:nth-of-type(4n + 4) td {
              border-radius: 0 0 5px 5px;
              border-bottom: #0095a1 solid 1px; }
            body.fee .fee-ticket__table.typeC tbody tr th, body.fee .fee-ticket__table.typeC tbody tr td {
              border-left: #0095a1 solid 1px;
              border-right: #0095a1 solid 1px; }
            body.fee .fee-ticket__table.typeC tbody tr td {
              height: 45px;
              min-height: inherit; } }
    body.fee .fee-ticket__table.typeD td {
      min-height: 100px; }
      @media only screen and (max-width: 767px) {
        body.fee .fee-ticket__table.typeD td {
          min-height: 70px; } }
    body.fee .fee-ticket__table tbody {
      width: calc(100% + 1px);
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      @media all and (-ms-high-contrast: none) {
        body.fee .fee-ticket__table tbody {
          display: table !important; } }
      @media only screen and (max-width: 767px) {
        body.fee .fee-ticket__table tbody {
          width: 100%;
          left: 0; } }
    body.fee .fee-ticket__table tr {
      width: 16%; }
      @media all and (-ms-high-contrast: none) {
        body.fee .fee-ticket__table tr {
          display: table-cell; } }
      @media only screen and (max-width: 767px) {
        body.fee .fee-ticket__table tr {
          width: 50%; }
          body.fee .fee-ticket__table tr:nth-of-type(2n) th, body.fee .fee-ticket__table tr:nth-of-type(2n) td {
            border-left: none; } }
      body.fee .fee-ticket__table tr:first-of-type {
        width: 36%; }
        @media only screen and (max-width: 767px) {
          body.fee .fee-ticket__table tr:first-of-type {
            width: 100%; } }
        body.fee .fee-ticket__table tr:first-of-type th, body.fee .fee-ticket__table tr:first-of-type td {
          border-left: none; }
      body.fee .fee-ticket__table tr:nth-child(-n + 1) td {
        font-size: 15px;
        font-size: 1.5rem; }
        @media only screen and (max-width: 767px) {
          body.fee .fee-ticket__table tr:nth-child(-n + 1) td {
            font-size: 14px;
            font-size: 1.4rem;
            padding: 10px 0;
            min-height: inherit; } }
      body.fee .fee-ticket__table tr th, body.fee .fee-ticket__table tr td {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        text-align: center; }
      body.fee .fee-ticket__table tr th {
        background-color: #0095a1;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        color: #FFF;
        height: 40px;
        border-left: #FFF solid 1px; }
        @media only screen and (max-width: 767px) {
          body.fee .fee-ticket__table tr th {
            height: 30px;
            font-size: 12px;
            font-size: 1.2rem; } }
        body.fee .fee-ticket__table tr th span {
          font-size: 12px;
          font-size: 1.2rem; }
      body.fee .fee-ticket__table tr td {
        color: #1c4e6a;
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: bold;
        min-height: 90px;
        border-left: #d9e7ef solid 1px;
        line-height: 1.866666667em;
        letter-spacing: 0.05em; }
        @media only screen and (max-width: 767px) {
          body.fee .fee-ticket__table tr td {
            height: auto;
            min-height: 45px;
            padding: 5px 0;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.428571429em; } }
        body.fee .fee-ticket__table tr td small {
          font-size: 14px;
          font-size: 1.4rem; }
          @media only screen and (max-width: 767px) {
            body.fee .fee-ticket__table tr td small {
              font-size: 1.2rem !important;
              line-height: 2.3em; } }
        body.fee .fee-ticket__table tr td.typeB {
          color: #0095a1;
          background-color: rgba(0, 149, 161, 0.2);
          -webkit-flex-direction: column;
          flex-direction: column; }
          @media only screen and (min-width: 768px) {
            body.fee .fee-ticket__table tr td.typeB {
              -webkit-align-items: flex-start;
              align-items: flex-start;
              text-align: left;
              padding-left: 40px;
              line-height: 1.5em; } }
          @media only screen and (max-width: 767px) {
            body.fee .fee-ticket__table tr td.typeB {
              line-height: 1.333333333em;
              min-height: 35px;
              padding: 7px 0; } }
        body.fee .fee-ticket__table tr td em {
          color: #e43030; }
        body.fee .fee-ticket__table tr td.column {
          -webkit-flex-direction: column;
          flex-direction: column; }
        body.fee .fee-ticket__table tr td .before {
          margin-bottom: 15px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.fee .fee-ticket__table tr td .before {
              margin-bottom: 10px; } }
          body.fee .fee-ticket__table tr td .before:after {
            content: '';
            width: 8px;
            height: 16px;
            background-image: url(../images/common/arw_blue_down02.svg);
            background-repeat: no-repeat;
            background-size: 8px 16px;
            background-position: center;
            position: absolute;
            left: 50%;
            -webkit-transform: translateX(-50%);
            -moz-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            -o-transform: translateX(-50%);
            transform: translateX(-50%);
            bottom: -16px; }
            @media only screen and (max-width: 767px) {
              body.fee .fee-ticket__table tr td .before:after {
                width: 6px;
                height: 12px;
                background-size: 6px 12px;
                bottom: -13px; } }
        body.fee .fee-ticket__table tr td .after {
          color: #e43030; }
        body.fee .fee-ticket__table tr td small {
          font-size: 14px;
          font-size: 1.4rem;
          margin-bottom: -10px; }

body.fee .note-list {
  margin-top: 12px; }
  @media only screen and (max-width: 767px) {
    body.fee .note-list {
      margin-top: 15px; } }
  body.fee .note-list > li {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.833333333em;
    position: relative;
    padding-left: 14px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.fee .note-list > li {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.636363636em; } }
    body.fee .note-list > li:before {
      content: '※';
      position: absolute;
      left: 0; }

body.fee .fee-listbox {
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s;
  padding: 40px 0 40px;
  position: relative;
  border-radius: 5px;
  margin-top: 40px; }
  body.fee .fee-listboxa:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    body.fee .fee-listbox {
      margin-top: 28px;
      padding: 25px 0 25px;
      border-radius: 3px; } }
  body.fee .fee-listbox__heading {
    font-size: 18px;
    font-size: 1.8rem;
    letter-spacing: 0.1em;
    color: #0095a1;
    font-weight: bold;
    position: absolute;
    left: 0;
    right: 0;
    top: -10px; }
    @media only screen and (max-width: 767px) {
      body.fee .fee-listbox__heading {
        font-size: 15px;
        font-size: 1.5rem;
        top: -7px; } }
  body.fee .fee-listbox ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media only screen and (min-width: 768px) {
      body.fee .fee-listbox ul.typeA {
        padding: 0 40px; } }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    body.fee .fee-listbox ul.typeA {
      padding: 0 20px; } }
    @media only screen and (min-width: 768px) {
        body.fee .fee-listbox ul.typeA li {
          margin-top: 20px; }
          body.fee .fee-listbox ul.typeA li:nth-child(3n + 1) {
            width: 42%; }
          body.fee .fee-listbox ul.typeA li:nth-child(3n + 2) {
            width: 38%; }
          body.fee .fee-listbox ul.typeA li:nth-child(3n) {
            width: 20%; }
          body.fee .fee-listbox ul.typeA li:nth-child(-n + 3) {
            margin-top: 0; }
      body.fee .fee-listbox ul.typeB {
        padding: 0 80px; } }
  @media only screen and (min-width: 768px) and (max-width: 1100px) {
    body.fee .fee-listbox ul.typeB {
      padding: 0 20px; } }
    @media only screen and (min-width: 768px) {
        body.fee .fee-listbox ul.typeB li {
          margin-left: 80px;
          margin-top: 20px; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.fee .fee-listbox ul.typeB li {
        margin-left: 60px; } }
    @media only screen and (min-width: 768px) {
          body.fee .fee-listbox ul.typeB li:nth-child(5n + 1) {
            margin-left: 0; }
          body.fee .fee-listbox ul.typeB li:nth-child(-n + 5) {
            margin-top: 0; } }
    @media only screen and (max-width: 767px) {
      body.fee .fee-listbox ul {
        padding: 0 25px; } }
    body.fee .fee-listbox ul li {
      font-size: 15px;
      font-size: 1.5rem;
      letter-spacing: 0.05em;
      line-height: 1.5em;
      position: relative;
      padding-left: 15px;
      text-align: left; }
      @media only screen and (max-width: 1000px) {
        body.fee .fee-listbox ul li {
          font-size: 12px;
          font-size: 1.2rem; } }
      @media only screen and (max-width: 767px) {
        body.fee .fee-listbox ul li {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.714285714em;
          padding-left: 10px;
          margin-top: 5px;
          width: 100%; }
          body.fee .fee-listbox ul li:nth-of-type(-n + 1) {
            margin-top: 0; }
          body.fee .fee-listbox ul li span {
            display: block;
            margin-top: 5px; } }
      body.fee .fee-listbox ul li:before {
        content: '';
        width: 6px;
        height: 6px;
        background-color: #1c4e6a;
        border-radius: 50%;
        position: absolute;
        left: 0;
        top: 9px; }
        @media only screen and (max-width: 767px) {
          body.fee .fee-listbox ul li:before {
            width: 4px;
            height: 4px;
            top: 10px; } }

body.fee .fee-passport {
  border: #d9e7ef solid 1px;
  border-radius: 5px;
  padding: 10px;
  position: relative;
  margin-bottom: 40px; }
  @media only screen and (max-width: 767px) {
    body.fee .fee-passport {
      margin-bottom: 15px;
      border-radius: 3px;
      padding: 10px 20px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: space-between;
      justify-content: space-between; } }
  body.fee .fee-passport:after {
    content: '';
    position: absolute;
    left: 10px;
    right: 10px;
    top: 10px;
    bottom: 10px;
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s;
    z-index: -1; }
    body.fee .fee-passport:aftera:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      body.fee .fee-passport:after {
        left: 5px;
        right: 5px;
        top: 5px;
        bottom: 5px; } }
  body.fee .fee-passport figcaption {
    text-align: center;
    padding: 15px 350px 20px 0; }
    @media only screen and (max-width: 767px) {
      body.fee .fee-passport figcaption {
        padding: 0; } }
    body.fee .fee-passport figcaption p {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.1em;
      text-align: center;
      padding-bottom: 5px; }
      body.fee .fee-passport figcaption p em {
        color: #0095a1; }
      @media only screen and (max-width: 767px) {
        body.fee .fee-passport figcaption p {
          text-align: left;
          font-size: 11px;
          font-size: 1.1rem;
          font-weight: bold;
          line-height: 1.636363636em;
          padding-bottom: 0; } }
    body.fee .fee-passport figcaption span {
      font-size: 30px;
      font-size: 3rem;
      letter-spacing: 0.1em; }
  @media only screen and (min-width: 768px) {
    body.fee .fee-passport .img-box {
      width: 300px;
      position: absolute;
      right: 50px;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -moz-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      -o-transform: translateY(-50%);
      transform: translateY(-50%); } }
  @media only screen and (max-width: 767px) {
    body.fee .fee-passport .img-box {
      width: 175px;
      margin-right: -10px; } }

body.fee .fee-passport ~ p {
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    body.fee .fee-passport ~ p {
      margin-bottom: 35px; } }

body.fee .btn-wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin-top: 20px; }
  @media only screen and (max-width: 767px) {
    body.fee .btn-wrap {
      display: block; } }
  body.fee .btn-wrap a {
    margin: 0 20px 0 0;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.fee .btn-wrap a {
        margin: 10px auto 0;
        max-width: 275px;
        height: 40px; }
        body.fee .btn-wrap a span {
          font-size: 13px;
          font-size: 1.3rem; }
        body.fee .btn-wrap a:nth-of-type(-n + 1) {
          margin-top: 0; } }

body.fee .fee-benefits {
  border-radius: 5px;
  border: #0095a1 solid 1px;
  width: 100%;
  display: block;
  overflow: hidden;
  margin-top: 35px; }
  @media only screen and (max-width: 767px) {
    body.fee .fee-benefits {
      border-radius: 3px;
      margin-top: 20px; } }
  body.fee .fee-benefits tbody {
    display: table;
    width: calc(100% + 1px);
    position: relative;
    left: -1px; }
  body.fee .fee-benefits tr {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; }
    body.fee .fee-benefits tr:nth-child(-n + 1) th, body.fee .fee-benefits tr:nth-child(-n + 1) td {
      border-top: none; }
    body.fee .fee-benefits tr th {
      background-color: #0095a1;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      color: #FFF;
      border-left: #FFF solid 1px;
      width: 230px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      padding-left: 50px;
      min-height: 50px;
      border-top: #FFF solid 1px; }
      @media only screen and (max-width: 1000px) {
        body.fee .fee-benefits tr th {
          padding-left: 20px;
          width: 180px; } }
      @media only screen and (max-width: 767px) {
        body.fee .fee-benefits tr th {
          border-top: none;
          width: 100%; } }
  @media only screen and (max-width: 767px) and (max-width: 767px) {
    body.fee .fee-benefits tr th {
      font-size: 12px;
      font-size: 1.2rem;
      min-height: 30px;
      width: 100%;
      padding: 0;
      -webkit-justify-content: center;
      justify-content: center; } }
    body.fee .fee-benefits tr td {
      width: calc(100% - 230px);
      border-top: #d9e7ef solid 1px; }
      @media only screen and (min-width: 768px) {
        body.fee .fee-benefits tr td {
          display: -webkit-flex;
          display: flex;
          -webkit-flex-wrap: wrap;
          flex-wrap: wrap; } }
      @media all and (-ms-high-contrast: none) {
        body.fee .fee-benefits tr td {
          max-width: 770px; } }
      @media only screen and (max-width: 1000px) {
        body.fee .fee-benefits tr td {
          width: calc(100% - 180px); } }
      @media only screen and (max-width: 767px) {
        body.fee .fee-benefits tr td {
          border-top: none;
          width: 100%; } }
      @media only screen and (min-width: 768px) {
        body.fee .fee-benefits tr td span {
          width: 50%;
          height: 50px;
          display: inline-block;
          line-height: 1.5em;
          padding: 15px 10px 0 40px; }
          body.fee .fee-benefits tr td span:nth-child(2n) {
            border-left: #d9e7ef solid 1px; }
          body.fee .fee-benefits tr td span:nth-child(n + 3) {
            border-top: #d9e7ef dotted 1px; } }
      @media only screen and (max-width: 767px) {
        body.fee .fee-benefits tr td span {
          width: 100%;
          height: auto;
          line-height: 1.821428571em;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          padding-left: 25px;
          padding-right: 25px; }
          body.fee .fee-benefits tr td span:nth-child(2n + 1) {
            color: #0095a1;
            font-weight: bold;
            margin-bottom: -3px;
            padding-top: 8px; }
          body.fee .fee-benefits tr td span:nth-child(2n) {
            padding-bottom: 8px;
            border-bottom: #d9e7ef dotted 1px; }
          body.fee .fee-benefits tr td span:last-of-type {
            border-bottom: none; } }
      body.fee .fee-benefits tr td span.none {
        -webkit-justify-content: center;
        justify-content: center;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          body.fee .fee-benefits tr td span.none {
            font-size: 0px;
            font-size: 0rem;
            padding-top: 8px; } }

body.fee .anchor {
  position: relative;
  top: 0px; }
  body.fee .anchor#anchor01-pos {
    position: relative;
    top: -100px; }

body.fee #sub-anchor-01 {
  position: relative;
  top: -140px; }

@media only screen and (min-width: 768px) {
  body.enlarged.fee .list-box01 ul.typeB {
    padding: 0 60px; } }

body.floormap .mv-side {
  background-image: url("../images/floormap/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.floormap .mv-side {
      background-image: url("../images/floormap/mv_sp.jpg"); } }
  body.floormap .mv-side .reservation-btn {
    display: block; }

body.floormap main {
  padding: 120px 0 220px; }
  @media only screen and (max-width: 767px) {
    body.floormap main {
      padding: 70px 0 120px; } }

body.floormap .anchor-link figcaption {
  padding-top: 7px; }
  @media only screen and (max-width: 767px) {
    body.floormap .anchor-link figcaption {
      padding-top: 0; } }

@media only screen and (min-width: 768px) {
  body.floormap .anchor-link > a:nth-child(1) figure .img-box img {
    width: 28px; }
  body.floormap .anchor-link > a:nth-child(2) figure .img-box img {
    width: 35px; }
  body.floormap .anchor-link > a:nth-child(3) figure .img-box img {
    width: 31px; }
  body.floormap .anchor-link > a:nth-child(4) figure .img-box img {
    width: 25px; }
  body.floormap .anchor-link > a:nth-child(5) figure .img-box img {
    width: 22px; } }

@media only screen and (max-width: 767px) {
  body.floormap .anchor-link > a figure .img-box img {
    width: auto;
    height: 25px !important; } }

body.floormap .map-box {
  position: relative;
  max-width: 1080px;
  border-radius: 5px;
  overflow: hidden;
  padding: 50px 20px 49px;
  margin-bottom: 29px; }
  @media only screen and (max-width: 767px) {
    body.floormap .map-box {
      margin-left: -25px;
      margin-right: -25px;
      padding: 29px 25px 24px; } }
  body.floormap .map-box:before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: transparent linear-gradient(90deg, #F1FAFF 0%, #F1FAFF 1%, #EAF9FB 51%, #E3F7F6 100%) 0% 0% no-repeat padding-box;
    opacity: 0.6; }
  body.floormap .map-box > * {
    position: relative;
    z-index: 2; }
  body.floormap .map-box .map-img {
    position: relative;
    max-width: 920px;
    margin: 0 auto 61px; }
    @media only screen and (max-width: 767px) {
      body.floormap .map-box .map-img {
        margin-bottom: 39px; } }
  body.floormap .map-box .anchor {
    padding: 5px 0 0 17px;
    position: absolute;
    z-index: 2;
    border-radius: 100px;
    background: transparent linear-gradient(90deg, #005CA1 0%, #0095A1 100%) 0% 0% no-repeat padding-box;
    letter-spacing: 0.05em;
    line-height: 20px;
    text-align: left;
    color: #fff;
    font-weight: 500;
    height: 31px;
    white-space: nowrap;
    font-size: 13px;
    font-size: 1.3rem; }
    @media only screen and (min-width: 768px) and (max-width: 1200px) {
      body.floormap .map-box .anchor {
        font-size: 11px;
        font-size: 1.1rem;
        letter-spacing: 0; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.floormap .map-box .anchor {
        padding: 5px 0 0 8px;
        font-size: 10px;
        font-size: 1rem; } }
    @media only screen and (max-width: 767px) {
      body.floormap .map-box .anchor {
        padding: 0 0 0 11px;
        height: 4%;
        font-size: 2.65vw;
        display: flex;
        align-items: center; } }
    body.floormap .map-box .anchor:before {
      content: '';
      position: absolute;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10.828' height='6.414' viewBox='0 0 10.828 6.414'%3E%3Cpath id='arw' d='M473.3,1152.78l-4,4-4-4' transform='translate(-463.885 -1151.365)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
      background-size: auto;
      background-repeat: no-repeat;
      background-position: center;
      width: 10px;
      height: 10px;
      top: 50%;
      right: 13px;
      margin-top: -5px; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor:before {
          right: 7px;
          background-size: 8px auto; } }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.floormap .map-box .anchor:before {
          right: 8px; } }
    body.floormap .map-box .anchor.anchor-1 {
      width: 19.5%;
      left: 2.2%;
      top: 14.5%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-1 {
          width: 41.5%;
          left: 4.5%;
          top: 51%; } }
    body.floormap .map-box .anchor.anchor-2 {
      width: 10.7%;
      left: 23.4%;
      top: 18.4%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-2 {
          width: 22%;
          left: 40.4%;
          top: 55.7%; } }
    body.floormap .map-box .anchor.anchor-3 {
      width: 13.5%;
      right: 0%;
      top: 27%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-3 {
          width: 28.7%;
          right: 7%;
          top: 13.4%; } }
    body.floormap .map-box .anchor.anchor-4 {
      width: 10.7%;
      left: 44.13%;
      top: 36%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-4 {
          width: 21.9%;
          left: 65%;
          top: 58.3%; } }
    body.floormap .map-box .anchor.anchor-5 {
      width: 15%;
      left: 29%;
      top: 44.3%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-5 {
          width: 31.7%;
          left: 41.5%;
          top: 69.8%; } }
    body.floormap .map-box .anchor.anchor-6 {
      width: 10.7%;
      left: 73.5%;
      top: 39.7%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-6 {
          width: 22.7%;
          left: 34.8%;
          top: 20.12%; } }
    body.floormap .map-box .anchor.anchor-7 {
      width: 13.5%;
      left: 50.8%;
      top: 50%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-7 {
          width: 29%;
          left: 0%;
          top: 27.6%; } }
    body.floormap .map-box .anchor.anchor-8 {
      width: 10.8%;
      left: 0.5%;
      top: 62.2%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-8 {
          width: 22.5%;
          left: 0%;
          top: 79.5%; } }
    body.floormap .map-box .anchor.anchor-9 {
      width: 16.6%;
      left: 22%;
      top: 63.3%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-9 {
          width: 35.6%;
          left: 24%;
          top: 79.5%; } }
    body.floormap .map-box .anchor.anchor-10 {
      width: 13.6%;
      left: 67.2%;
      top: 55.5%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-10 {
          width: 28.6%;
          left: 30.5%;
          top: 27.7%; } }
    body.floormap .map-box .anchor.anchor-11 {
      width: 10.7%;
      left: 83.7%;
      top: 63.4%; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .anchor.anchor-11 {
          width: 21.7%;
          left: 60.7%;
          top: 31.9%; } }
  body.floormap .map-box .map-content {
    max-width: 920px;
    margin: 0 auto; }
    body.floormap .map-box .map-content .title {
      padding-bottom: 18px;
      margin-bottom: 40px;
      font-weight: 500;
      letter-spacing: 0.1em;
      line-height: 28px;
      text-align: left;
      color: #0095a1;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='921' height='1' viewBox='0 0 921 1'%3E%3Cpath id='bdr' d='M0,0H920' transform='translate(0.5 0.5)' fill='none' stroke='%230095a1' stroke-linecap='round' stroke-width='1' stroke-dasharray='2 5'/%3E%3C/svg%3E%0A");
      background-position: left bottom;
      background-repeat: repeat-x;
      background-size: auto;
      font-size: 20px;
      font-size: 2rem; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .map-content .title {
          padding-bottom: 9px;
          margin-bottom: 30px;
          font-size: 17px;
          font-size: 1.7rem; } }
    body.floormap .map-box .map-content .list {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      body.floormap .map-box .map-content .list .item {
        width: 32.5%;
        border-radius: 5px;
        background: #FFF;
        padding: 20px 30px 20px; }
        @media only screen and (max-width: 767px) {
          body.floormap .map-box .map-content .list .item {
            width: 100%;
            margin-bottom: 10px;
            display: flex;
            justify-content: space-between;
            padding: 10px 10px 10px; } }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          body.floormap .map-box .map-content .list .item {
            padding: 20px 15px 20px; } }
        body.floormap .map-box .map-content .list .item .txt-1,
        body.floormap .map-box .map-content .list .item .txt-3 {
          padding-bottom: 1px;
          position: relative;
          height: 34px;
          border-radius: 17px;
          overflow: hidden;
          text-align: center;
          line-height: 20px;
          display: flex;
          align-items: center;
          justify-content: center; }
          @media only screen and (max-width: 767px) {
            body.floormap .map-box .map-content .list .item .txt-1,
            body.floormap .map-box .map-content .list .item .txt-3 {
              padding-bottom: 0;
              width: 36%;
              border-radius: 5px;
              height: 45px;
              line-height: 15px; } }
          body.floormap .map-box .map-content .list .item .txt-1:before,
          body.floormap .map-box .map-content .list .item .txt-3:before {
            content: '';
            width: 100%;
            height: 100%;
            position: absolute;
            left: 0;
            top: 0;
            background: transparent linear-gradient(90deg, #BCF4E1 0%, #BCF4E1 1%, #C2ECF0 51%, #C8E4FF 100%) 0% 0% no-repeat padding-box;
            opacity: 0.4; }
          body.floormap .map-box .map-content .list .item .txt-1 > span,
          body.floormap .map-box .map-content .list .item .txt-3 > span {
            position: relative;
            z-index: 2;
            font-weight: bold;
            letter-spacing: 0.05em;
            color: #0095a1;
            font-size: 15px;
            font-size: 1.5rem; }
            @media only screen and (max-width: 767px) {
              body.floormap .map-box .map-content .list .item .txt-1 > span,
              body.floormap .map-box .map-content .list .item .txt-3 > span {
                font-size: 12px;
                font-size: 1.2rem; } }
        body.floormap .map-box .map-content .list .item .txt-2 {
          padding: 24px 0 21px;
          position: relative;
          font-weight: 500;
          font-weight: normal;
          line-height: 30px;
          text-align: center;
          color: #1c4e6a;
          font-size: 15px;
          font-size: 1.5rem; }
          @media only screen and (max-width: 767px) {
            body.floormap .map-box .map-content .list .item .txt-2 {
              display: flex;
              align-items: center;
              justify-content: center;
              padding: 0;
              width: 28%;
              font-size: 13px;
              font-size: 1.3rem; } }
          body.floormap .map-box .map-content .list .item .txt-2::before, body.floormap .map-box .map-content .list .item .txt-2:after {
            content: '';
            position: absolute;
            background: #0095a1; }
            @media only screen and (min-width: 768px) {
              body.floormap .map-box .map-content .list .item .txt-2::before, body.floormap .map-box .map-content .list .item .txt-2:after {
                left: 50%;
                width: 1px;
                height: 20px; } }
            @media only screen and (max-width: 767px) {
              body.floormap .map-box .map-content .list .item .txt-2::before, body.floormap .map-box .map-content .list .item .txt-2:after {
                top: 50%;
                height: 1px;
                width: calc(100% - 70px); } }
          @media only screen and (min-width: 768px) {
            body.floormap .map-box .map-content .list .item .txt-2:before {
              top: 0; } }
          @media only screen and (max-width: 767px) {
            body.floormap .map-box .map-content .list .item .txt-2:before {
              left: 0; } }
          @media only screen and (min-width: 768px) {
            body.floormap .map-box .map-content .list .item .txt-2:after {
              bottom: 0; } }
          @media only screen and (max-width: 767px) {
            body.floormap .map-box .map-content .list .item .txt-2:after {
              right: 0; } }
          @media only screen and (max-width: 767px) {
            body.floormap .map-box .map-content .list .item .txt-2 > span {
              line-height: 1.5;
              text-align: center; } }
          body.floormap .map-box .map-content .list .item .txt-2 .number {
            font-size: 20px;
            font-size: 2rem; }
            @media only screen and (max-width: 767px) {
              body.floormap .map-box .map-content .list .item .txt-2 .number {
                margin-top: -3px;
                font-size: 17px;
                font-size: 1.7rem; } }
      @media only screen and (min-width: 768px) {
        body.floormap .map-box .map-content .list .item-1 .txt-2 {
          padding-right: 19px; } }
    body.floormap .map-box .map-content .txt-note {
      margin-top: 19px;
      font-weight: normal;
      line-height: 20px;
      text-align: right;
      color: #1c4e6a;
      font-size: 12px;
      font-size: 1.2rem; }
      @media only screen and (max-width: 767px) {
        body.floormap .map-box .map-content .txt-note {
          display: none; } }

body.floormap section {
  text-align: center; }
  body.floormap section .caution-info {
    color: #e43030;
    font-size: 12px;
    font-size: 1.2rem; }
  body.floormap section#anchor01 {
    padding: 150px 0 120px; }
    @media only screen and (max-width: 767px) {
      body.floormap section#anchor01 {
        padding: 85px 0 70px; } }
  body.floormap section#anchor02 {
    padding: 110px 0 30px;
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s; }
    body.floormap section#anchor02a:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      body.floormap section#anchor02 {
        padding: 60px 0 20px; } }
  body.floormap section#anchor03 {
    padding: 100px 0 120px;
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s; }
    body.floormap section#anchor03a:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      body.floormap section#anchor03 {
        padding: 70px 0 70px; } }
    @media only screen and (min-width: 768px) {
      body.floormap section#anchor03 .ttl-01 {
        line-height: 1.3; } }
  body.floormap section#anchor04 {
    padding-top: 110px; }
    @media only screen and (max-width: 767px) {
      body.floormap section#anchor04 {
        padding-top: 65px; } }
  body.floormap section#anchor05 {
    padding-top: 150px; }
    @media only screen and (max-width: 767px) {
      body.floormap section#anchor05 {
        padding-top: 75px; } }
    body.floormap section#anchor05 .btn-wrap {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: flex-start;
      justify-content: flex-start;
      margin: 20px 0 70px; }
      @media only screen and (max-width: 767px) {
        body.floormap section#anchor05 .btn-wrap {
          display: block;
          margin-bottom: 45px; } }
      body.floormap section#anchor05 .btn-wrap a {
        margin: 0 20px 0 0;
        width: 100%; }
        body.floormap section#anchor05 .btn-wrap a:nth-of-type(1) {
          max-width: 450px; }
          @media only screen and (max-width: 767px) {
            body.floormap section#anchor05 .btn-wrap a:nth-of-type(1) {
              max-width: 275px;
              height: 60px; } }
        @media only screen and (max-width: 767px) {
          body.floormap section#anchor05 .btn-wrap a {
            margin: 10px auto 0;
            max-width: 275px;
            height: 40px;
            white-space: nowrap; }
            body.floormap section#anchor05 .btn-wrap a span {
              line-height: 1.307692308em; }
            body.floormap section#anchor05 .btn-wrap a:nth-of-type(-n + 1) {
              margin-top: 0; } }
  body.floormap section .ttl-01 {
    margin-bottom: 65px; }
    @media only screen and (max-width: 767px) {
      body.floormap section .ttl-01 {
        margin-bottom: 46px; } }
  @media only screen and (max-width: 767px) {
    body.floormap section .btn {
      max-width: 275px;
      height: 40px; } }
  body.floormap section .heading-txt {
    margin-bottom: 50px; }
    @media only screen and (max-width: 767px) {
      body.floormap section .heading-txt {
        margin-bottom: 30px; } }
  body.floormap section .heading-txt02 {
    margin-bottom: 20px; }
  body.floormap section .heading-txt02 ~ .btn {
    margin-bottom: 70px; }
    @media only screen and (max-width: 767px) {
      body.floormap section .heading-txt02 ~ .btn {
        margin-bottom: 45px; } }
  @media only screen and (min-width: 768px) {
    body.floormap section .note-box > li,
    body.floormap section .note-box ul > li {
      margin-top: 20px; } }
  body.floormap section .note-box > li:nth-child(-n  + 1),
  body.floormap section .note-box ul > li:nth-child(-n  + 1) {
    margin-top: 0; }

body.floormap .highlight-box {
  margin: 20px 0;
  position: relative;
  border-radius: 5px;
  overflow: hidden;
  display: -webkit-flex;
  display: flex;
  padding: 30px 60px 40px;
  background-color: #FFF;
  border: rgba(190, 226, 229, 0.4) solid 5px; }
  @media only screen and (max-width: 767px) {
    body.floormap .highlight-box {
      display: block;
      border: rgba(190, 226, 229, 0.4) solid 4px;
      padding: 25px 20px; } }
  body.floormap .highlight-box figcaption {
    width: 71%;
    padding-right: 50px; }
    @media only screen and (max-width: 767px) {
      body.floormap .highlight-box figcaption {
        width: 100%;
        padding-right: 0; } }
    body.floormap .highlight-box figcaption .ttl-02 {
      margin-bottom: 25px;
      position: relative; }
      body.floormap .highlight-box figcaption .ttl-02 span {
        font-size: 13px;
        font-size: 1.3rem;
        letter-spacing: 0.05em;
        line-height: normal;
        border-radius: 5px;
        min-width: 120px;
        padding: 3px 20px;
        display: inline-block;
        background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-size: 200% auto;
        transition: 0.5s;
        text-align: center;
        position: absolute;
        top: 0;
        right: 0; }
        body.floormap .highlight-box figcaption .ttl-02 spana:hover {
          background-position: right center; }
        @media all and (-ms-high-contrast: none) {
          body.floormap .highlight-box figcaption .ttl-02 span {
            padding-top: 7px; } }
        @media only screen and (max-width: 767px) {
          body.floormap .highlight-box figcaption .ttl-02 span {
            font-size: 10px;
            font-size: 1rem;
            min-width: 75px;
            padding: 2px 10px;
            top: auto;
            bottom: 10px; } }
  body.floormap .highlight-box__img {
    width: 29%; }
    @media only screen and (max-width: 767px) {
      body.floormap .highlight-box__img {
        width: 100%;
        margin-bottom: 15px; } }
  body.floormap .highlight-box a {
    text-decoration: underline; }

body.floormap .anchor {
  position: relative;
  top: -70px; }
  @media only screen and (max-width: 767px) {
    body.floormap .anchor {
      top: -100px; } }

body.friend .mv-side {
  background-image: url("../images/friend/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.friend .mv-side {
      background-image: url("../images/friend/mv_sp.jpg"); } }
  body.friend .mv-side .reservation-btn {
    display: block; }

body.friend .enjoy-point__detail__text p {
  letter-spacing: 0em; }

body.friend .enjoy-point .caution-info {
  color: #e43030;
  font-size: 12px;
  font-size: 1.2rem;
  position: absolute;
  left: 0;
  bottom: -20px; }

@media only screen and (max-width: 767px) {
  body.friend .enjoy-point .enjoy-point__detail:nth-child(6) {
    margin-top: 35px; } }

body.friend #sec01 {
  padding-bottom: 100px; }
  @media only screen and (max-width: 767px) {
    body.friend #sec01 {
      padding: 50px 0 100px; } }
  body.friend #sec01 .enjoy-box__speech {
    width: 290px;
    right: 40px;
    top: 0px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec01 .enjoy-box__speech {
        width: 175px;
        right: 25px;
        top: -50px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec01 .enjoy-box__img {
      max-width: 500px;
      margin: -50px 20px 0 0; } }
  body.friend #sec01 .enjoy-box__dotted, body.friend #sec01 .enjoy-box02__dotted {
    max-width: 530px;
    left: calc(50% - 50px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec01 .enjoy-box__dotted, body.friend #sec01 .enjoy-box02__dotted {
        max-width: 140px;
        left: calc(50% + 20px);
        bottom: 5px; } }

body.friend #sec02 {
  padding: 0 0 150px; }
  @media only screen and (max-width: 767px) {
    body.friend #sec02 {
      padding-bottom: 100px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec02 .enjoy-box__speech {
      width: 195px;
      left: 60px;
      top: -95px; } }
  @media only screen and (max-width: 767px) {
    body.friend #sec02 .enjoy-box__speech {
      width: 135px;
      left: 25px;
      top: -60px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec02 .enjoy-box__img {
      max-width: 520px;
      margin: 20px 0 0 20px; } }
  body.friend #sec02 .enjoy-box__dotted, body.friend #sec02 .enjoy-box02__dotted {
    max-width: 440px;
    left: calc(50% + 20px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec02 .enjoy-box__dotted, body.friend #sec02 .enjoy-box02__dotted {
        max-width: 130px;
        left: calc(50% - 50px);
        bottom: 5px; } }

body.friend #sec03 {
  padding-bottom: 110px; }
  @media only screen and (max-width: 767px) {
    body.friend #sec03 {
      padding-bottom: 65px; } }
  @media only screen and (max-width: 767px) {
    body.friend #sec03 .enjoy-box__speech {
      width: 145px;
      right: 25px;
      top: -60px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec03 .enjoy-box__img {
      width: calc(100% - 5px); } }
  body.friend #sec03 .enjoy-box__dotted, body.friend #sec03 .enjoy-box02__dotted {
    max-width: 430px;
    left: calc(50% - 110px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -10px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec03 .enjoy-box__dotted, body.friend #sec03 .enjoy-box02__dotted {
        max-width: 110px;
        left: calc(50% - 50px);
        bottom: -25px; } }

body.friend #sec04 {
  padding-bottom: 155px; }
  @media only screen and (max-width: 767px) {
    body.friend #sec04 {
      padding-bottom: 125px; } }
  body.friend #sec04 .enjoy-box02__speech {
    width: 300px;
    right: 20px;
    top: -100px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec04 .enjoy-box02__speech {
        width: 125px;
        right: 0;
        top: -45px; } }
  body.friend #sec04 .enjoy-box02__heading {
    width: 260px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec04 .enjoy-box02__heading {
        width: 135px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec04 .enjoy-box02__left {
      width: calc(100% - 530px); } }
  @media only screen and (min-width: 768px) {
    body.friend #sec04 .enjoy-box02__img {
      max-width: 470px; } }
  body.friend #sec04 .enjoy-box02__dotted {
    max-width: 440px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec04 .enjoy-box02__dotted {
        max-width: 160px;
        left: calc(50% - 10px);
        bottom: 5px; } }

body.friend #sec05 {
  padding-bottom: 70px; }
  @media only screen and (max-width: 767px) {
    body.friend #sec05 {
      padding-bottom: 70px; } }
  body.friend #sec05 .enjoy-box__speech {
    width: 220px;
    right: 40px;
    top: -50px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec05 .enjoy-box__speech {
        width: 145px;
        right: 25px;
        top: -85px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec05 .enjoy-box__img {
      max-width: 500px;
      margin: -60px 20px 0 0; } }
  body.friend #sec05 .enjoy-box__dotted, body.friend #sec05 .enjoy-box02__dotted {
    max-width: 535px;
    left: calc(50% - 45px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 15px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec05 .enjoy-box__dotted, body.friend #sec05 .enjoy-box02__dotted {
        max-width: 135px;
        left: calc(50% + 10px);
        bottom: 5px; } }

body.friend #sec06 {
  padding: 0 0 140px; }
  @media only screen and (max-width: 767px) {
    body.friend #sec06 {
      padding: 0 0 80px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec06 .enjoy-box__speech {
      width: 195px;
      left: 60px;
      top: -95px; } }
  @media only screen and (min-width: 768px) {
    body.friend #sec06 .enjoy-box__img {
      width: 480px;
      margin-top: 10px;
      position: relative;
      left: 50px; } }
  @media only screen and (max-width: 767px) {
    body.friend #sec06 .enjoy-box__img {
      margin-top: 10px; } }
  body.friend #sec06 .enjoy-box__dotted, body.friend #sec06 .enjoy-box02__dotted {
    max-width: 270px;
    left: calc(50% + 30px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -50px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec06 .enjoy-box__dotted, body.friend #sec06 .enjoy-box02__dotted {
        max-width: 145px;
        left: calc(50% + 10px);
        bottom: 10px; } }

body.friend #sec07 {
  padding-bottom: 250px; }
  @media only screen and (max-width: 767px) {
    body.friend #sec07 {
      padding-bottom: 120px; } }
  body.friend #sec07 .enjoy-box02__speech {
    width: 290px;
    right: 50px;
    top: -100px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec07 .enjoy-box02__speech {
        width: 115px;
        right: 0;
        top: -60px; } }
  body.friend #sec07 .enjoy-box02__heading {
    width: 310px; }
    @media only screen and (max-width: 767px) {
      body.friend #sec07 .enjoy-box02__heading {
        width: 160px; } }

body.friends .mv-side {
  background-image: url("../images/friends/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.friends .mv-side {
      background-image: url("../images/friends/mv_sp.jpg"); } }
  body.friends .mv-side .reservation-btn {
    display: block; }

@media only screen and (min-width: 768px) {
  body.friends .side-page-ttl-inner {
    padding-top: 45px; } }

body.friends .anchor-link {
  margin: 120px auto 80px; }
  @media only screen and (min-width: 768px) {
    body.friends .anchor-link a {
      height: 112px; }
      body.friends .anchor-link a figure {
        padding: 11px 10px 15px; }
      body.friends .anchor-link a figcaption {
        padding-top: 5px; }
        body.friends .anchor-link a figcaption span {
          font-size: 18px;
          font-size: 1.8rem; }
      body.friends .anchor-link a:nth-child(1) img {
        width: 35px; }
      body.friends .anchor-link a:nth-child(2) img {
        width: 31px; } }
  @media only screen and (max-width: 767px) {
    body.friends .anchor-link {
      margin: 70px auto 50px;
      -webkit-flex-direction: row;
      flex-direction: row; }
      body.friends .anchor-link a {
        margin-top: 0;
        width: calc((100% - 10px)/2); }
        body.friends .anchor-link a:first-child {
          margin-right: 5px; } }

body.friends .main-content {
  padding-bottom: 82px; }
  @media only screen and (max-width: 767px) {
    body.friends .main-content {
      padding-bottom: 46px; } }
  body.friends .main-content .article-content {
    padding-bottom: 95px;
    /* IE11  */ }
    @media only screen and (max-width: 767px) {
      body.friends .main-content .article-content {
        padding-bottom: 55px; } }
    body.friends .main-content .article-content .category-ttl {
      background: #f1faff;
      background: -webkit-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
      background: -o-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
      background: linear-gradient(87deg, #f1faff, #e3f7f6 100%);
      color: #0095a1;
      font-size: 20px;
      font-size: 2rem;
      font-weight: 500;
      letter-spacing: 0.4em;
      margin-bottom: 70px;
      padding-top: 19px;
      text-align: center;
      height: 60px; }
      @media only screen and (max-width: 767px) {
        body.friends .main-content .article-content .category-ttl {
          font-size: 18px;
          font-size: 1.8rem;
          margin-bottom: 45px;
          padding-top: 11px;
          height: 40px; } }
    body.friends .main-content .article-content _:lang(x)::-ms-backdrop, body.friends .main-content .article-content .category-ttl {
      padding-top: 22px; }
    body.friends .main-content .article-content ul.article-list {
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
      body.friends .main-content .article-content ul.article-list li {
        margin-bottom: 45px;
        margin-right: 5px;
        text-align: center;
        width: calc((100% - 15px)/4);
        cursor: pointer; }
        body.friends .main-content .article-content ul.article-list li:nth-child(4n) {
          margin-right: 0; }
        @media only screen and (min-width: 768px) {
          body.friends .main-content .article-content ul.article-list li {
            cursor: pointer;
            -webkit-transition: 0.3s;
            -moz-transition: 0.3s;
            -o-transition: 0.3s;
            transition: 0.3s; }
            body.friends .main-content .article-content ul.article-list li:hover {
              opacity: .7; } }
        @media only screen and (max-width: 767px) {
          body.friends .main-content .article-content ul.article-list li {
            margin-bottom: 27px;
            margin-right: 5px;
            width: calc((100% - 5px)/2); }
            body.friends .main-content .article-content ul.article-list li:nth-child(even) {
              margin-right: 0; } }
        body.friends .main-content .article-content ul.article-list li .imager {
          position: relative;
          padding-bottom: 75.60%;
          margin-bottom: 16px;
          height: auto;
          width: 100%; }
          @media only screen and (max-width: 767px) {
            body.friends .main-content .article-content ul.article-list li .imager {
              margin-bottom: 11px; } }
          body.friends .main-content .article-content ul.article-list li .imager:before {
            border: 6px solid rgba(255, 255, 255, 0.3);
            content: "";
            margin: 0 auto;
            position: absolute;
            left: 0;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            height: calc(100% - 12px);
            width: calc(100% - 12px); }
            @media only screen and (max-width: 767px) {
              body.friends .main-content .article-content ul.article-list li .imager:before {
                border: 5px solid rgba(255, 255, 255, 0.3);
                height: calc(100% - 10px);
                width: calc(100% - 10px); } }
        body.friends .main-content .article-content ul.article-list li .article-ttl {
          font-size: 13px;
          font-size: 1.3rem;
          font-weight: 600;
          letter-spacing: 0.05em;
          line-height: 1.4;
          margin: 0 auto; }
          @media only screen and (max-width: 767px) {
            body.friends .main-content .article-content ul.article-list li .article-ttl {
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1.57;
              text-align: left; } }

body.friends .anchor {
  position: relative;
  top: -20px; }
  @media only screen and (max-width: 767px) {
    body.friends .anchor {
      top: -70px; } }

body.friends.single article.friends-article {
  padding: 120px 0 0; }
  @media only screen and (max-width: 767px) {
    body.friends.single article.friends-article {
      padding: 70px 0 0; } }
  body.friends.single article.friends-article .upper-post {
    text-align: center; }
  body.friends.single article.friends-article .ttl-wrap {
    padding: 0 50px; }
  body.friends.single article.friends-article .ttl-01 {
    margin-top: 33px;
    margin-bottom: 36px; }
    @media only screen and (max-width: 767px) {
      body.friends.single article.friends-article .ttl-01 {
        margin-top: 15px;
        margin-bottom: 20px; } }
  body.friends.single article.friends-article .category-friend {
    background: #f1faff;
    background: -webkit-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
    background: -o-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
    background: linear-gradient(87deg, #f1faff, #e3f7f6 100%);
    border-radius: 5px;
    color: #0095a1;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    letter-spacing: 0.4em;
    margin-bottom: 0;
    padding-top: 11px;
    text-align: center;
    height: 40px; }
    @media only screen and (max-width: 767px) {
      body.friends.single article.friends-article .category-friend {
        font-size: 13px;
        font-size: 1.3rem;
        margin-bottom: 0;
        padding-top: 7px;
        height: 30px; } }
  body.friends.single article.friends-article .main_image {
    margin-top: 0 !important; }
  body.friends.single article.friends-article .friend-name-wrap {
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s;
    border-radius: 5px;
    margin: 35px auto 16px;
    padding: 40px 50px; }
    body.friends.single article.friends-article .friend-name-wrapa:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      body.friends.single article.friends-article .friend-name-wrap {
        margin: 30px auto 5px;
        padding: 15px; } }
  body.friends.single article.friends-article .friend-name {
    width: 100%; }
    body.friends.single article.friends-article .friend-name:last-child {
      margin-top: 10px; }
    body.friends.single article.friends-article .friend-name tr {
      background-color: white; }
      body.friends.single article.friends-article .friend-name tr th {
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: 0.05em;
        font-weight: bold;
        position: relative;
        text-align: center;
        min-height: 50px;
        width: 126px;
        /* IE11  */ }
        @media only screen and (max-width: 767px) {
          body.friends.single article.friends-article .friend-name tr th {
            display: block;
            font-size: 14px;
            font-size: 1.4rem;
            padding: 10px 20px 10px;
            text-align: left;
            height: auto;
            width: 100%; } }
        body.friends.single article.friends-article .friend-name tr th:before {
          background-color: #d9e7ef;
          content: "";
          margin: 0 auto;
          position: absolute;
          right: 0;
          top: 50%;
          transform: translateY(-50%);
          height: 30px;
          width: 1px; }
          @media only screen and (max-width: 767px) {
            body.friends.single article.friends-article .friend-name tr th:before {
              bottom: 0;
              left: 0;
              top: auto;
              transform: none;
              height: 1px;
              width: calc(100% - 40px); } }
        body.friends.single article.friends-article .friend-name tr th _:lang(x)::-ms-backdrop, body.friends.single article.friends-article .friend-name tr th:before {
          transform: translateY(0%);
          top: 55%; }
      body.friends.single article.friends-article .friend-name tr td {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5;
        letter-spacing: 0.05em;
        padding: 13px 0 13px 40px;
        height: 50px; }
        @media only screen and (max-width: 767px) {
          body.friends.single article.friends-article .friend-name tr td {
            display: block;
            font-size: 14px;
            font-size: 1.4rem;
            padding: 10px 20px 14px;
            text-align: left;
            height: auto; } }
        body.friends.single article.friends-article .friend-name tr td .name {
          font-style: italic; }
  body.friends.single article.friends-article .post-content {
    padding: 0 50px; }
    @media only screen and (max-width: 767px) {
      body.friends.single article.friends-article .post-content {
        padding: 0; } }

body.friends .single-pagination {
  margin-top: 70px; }
  @media only screen and (min-width: 768px) {
    body.friends .single-pagination {
      width: 670px; }
      body.friends .single-pagination .back, body.friends .single-pagination .next {
        border: 1px solid #d9e7ef;
        text-align: center;
        padding-top: 9px;
        width: 200px; } }
  @media only screen and (max-width: 767px) {
    body.friends .single-pagination {
      margin-top: 35px; }
      body.friends .single-pagination .back, body.friends .single-pagination .next {
        border: 1px solid #d9e7ef; } }

.gardenpier .mv {
  position: relative; }
  @media only screen and (max-width: 767px) {
    .gardenpier .mv {
      background: linear-gradient(to right, #FFF, #FFF 50%, #e6faff 50%, #e6faff) left center/2px 100% repeat; } }
  .gardenpier .mv .catchcopy {
    font-size: 55px;
    font-size: 5.5rem;
    letter-spacing: 0.3em;
    line-height: 1.454545455;
    position: absolute;
    top: 235px;
    left: 65px;
    color: #fff;
    text-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
    font-weight: 500; }
    @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
      .gardenpier .mv .catchcopy {
        font-size: 35px;
        font-size: 3.5rem;
        top: 135px; } }
    @media only screen and (max-width: 767px) {
      .gardenpier .mv .catchcopy {
        font-size: 32px;
        font-size: 3.2rem;
        left: 37px;
        top: 40px;
        text-shadow: 0 0 18px rgba(0, 0, 0, 0.5); } }
  .gardenpier .mv .mv-slider__slide {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100vh; }
    @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
      .gardenpier .mv .mv-slider__slide {
        height: 500px; } }
    @media only screen and (max-width: 767px) {
      .gardenpier .mv .mv-slider__slide {
        background-position: center bottom;
        height: 500px; } }
    .gardenpier .mv .mv-slider__slide--01 {
      background-image: url(../images/garden-pier/top/mv-slide01.jpg); }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .mv-slider__slide--01 {
          background-image: url(../images/garden-pier/top/mv-slide01-sp.jpg); } }
    .gardenpier .mv .mv-slider__slide--02 {
      background-image: url(../images/garden-pier/top/mv-slide02.jpg); }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .mv-slider__slide--02 {
          background-image: url(../images/garden-pier/top/mv-slide02-sp.jpg); } }
    .gardenpier .mv .mv-slider__slide--03 {
      background-image: url(../images/garden-pier/top/mv-slide03.jpg); }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .mv-slider__slide--03 {
          background-image: url(../images/garden-pier/top/mv-slide03-sp.jpg); } }
    .gardenpier .mv .mv-slider__slide--04 {
      background-image: url(../images/garden-pier/top/mv-slide04.jpg); }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .mv-slider__slide--04 {
          background-image: url(../images/garden-pier/top/mv-slide04-sp.jpg); } }
    .gardenpier .mv .mv-slider__slide--05 {
      background-image: url(../images/garden-pier/top/mv-slide05.jpg); }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .mv-slider__slide--05 {
          background-image: url(../images/garden-pier/top/mv-slide05-sp.jpg); } }
  .gardenpier .mv .mv-slider-nav {
    position: absolute;
    left: 0;
    width: 100%;
    height: 28px;
    bottom: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center; }
    .gardenpier .mv .mv-slider-nav ul {
      display: -webkit-flex;
      display: flex;
      height: 8px; }
      .gardenpier .mv .mv-slider-nav ul li {
        padding: 0 5px; }
        .gardenpier .mv .mv-slider-nav ul li button {
          background: #fff;
          border: none;
          outline: none;
          padding: 0;
          margin: 0;
          width: 8px;
          height: 8px;
          border-radius: 50%;
          overflow: hidden;
          text-indent: -100px;
          cursor: pointer; }
        .gardenpier .mv .mv-slider-nav ul li.slick-active button {
          background: #c8c8c8; }
  .gardenpier .mv .news-box {
    height: 170px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.95);
    display: -webkit-flex;
    display: flex;
    overflow: visible; }
    @media only screen and (min-width: 768px) {
      .gardenpier .mv .news-box {
        position: absolute;
        bottom: 28px;
        left: 50px;
        right: 50px; } }
    @media only screen and (max-width: 767px) {
      .gardenpier .mv .news-box {
        height: auto;
        box-shadow: 0 0 12px rgba(0, 0, 0, 0.05);
        position: relative;
        margin: -70px auto 0;
        width: calc(100% - 50px);
        z-index: 2; } }
    .gardenpier .mv .news-box .slick-slide {
      outline: none; }
    .gardenpier .mv .news-box:after {
      content: '';
      width: 160px;
      height: 110px;
      position: absolute;
      right: 50px;
      bottom: calc(100% - 10px);
      background: url(../images/garden-pier/top/illust-news.png) center/cover; }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .news-box:after {
          bottom: calc(100% - 15px);
          right: auto;
          left: 25px;
          width: 124px;
          height: 85px; } }
    .gardenpier .mv .news-box__nav {
      width: 40px;
      -webkit-flex: 0 0 40px;
      flex: 0 0 40px;
      position: relative;
      transition: background-color 0.3s; }
      .gardenpier .mv .news-box__nav:hover {
        background-color: #e1e1e1; }
      .gardenpier .mv .news-box__nav:after {
        content: '';
        width: 6px;
        height: 6px;
        display: block;
        border-right: 2px solid #383838;
        border-bottom: 2px solid #383838;
        transform: rotateZ(-45deg) translate(-50%, 50%);
        position: absolute;
        top: 50%;
        right: 50%; }
      .gardenpier .mv .news-box__nav--prev {
        border-right: 1px solid #e1e1e1; }
        .gardenpier .mv .news-box__nav--prev:after {
          transform: rotateZ(135deg) translate(-50%, -50%); }
      .gardenpier .mv .news-box__nav--next {
        border-left: 1px solid #e1e1e1; }
    .gardenpier .mv .news-box__content {
      padding-top: 20px;
      width: calc(100% - 80px); }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .news-box__content {
          padding: 30px 25px 25px;
          width: 100%; } }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .news-box__content .article-slider {
          margin-bottom: 20px; } }
      .gardenpier .mv .news-box__content .article-slider .slide-inner {
        -webkit-flex: 1 1 auto;
        flex: 1 1 auto;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: center;
        justify-content: center; }
        @media only screen and (max-width: 767px) {
          .gardenpier .mv .news-box__content .article-slider .slide-inner {
            -webkit-flex-direction: column;
            flex-direction: column; } }
      .gardenpier .mv .news-box__content--article {
        width: 50%;
        padding: 0 50px 0 40px;
        margin-bottom: -5px; }
        @media only screen and (max-width: 767px) {
          .gardenpier .mv .news-box__content--article {
            width: 100%;
            margin-bottom: 0;
            padding: 0; } }
        .gardenpier .mv .news-box__content--article .meta {
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center; }
          .gardenpier .mv .news-box__content--article .meta time {
            font-family: "Oswald", sans-serif;
            font-size: 14px;
            font-size: 1.4rem;
            letter-spacing: 0.05em;
            margin-right: 18px; }
            @media only screen and (max-width: 767px) {
              .gardenpier .mv .news-box__content--article .meta time {
                font-size: 12px;
                font-size: 1.2rem;
                margin-right: 16px;
                font-weight: 400; } }
          .gardenpier .mv .news-box__content--article .meta .tag {
            max-width: 180px;
            width: 100%;
            height: 24px;
            border-radius: 5px;
            display: -webkit-flex;
            display: flex;
            -webkit-align-items: center;
            align-items: center;
            -webkit-justify-content: center;
            justify-content: center;
            font-size: 13px;
            font-size: 1.3rem;
            letter-spacing: 0.05em;
            font-weight: 500;
            padding-bottom: 1px;
            color: #fff; }
            .gardenpier .mv .news-box__content--article .meta .tag _:lang(x)::-ms-backdrop, .gardenpier .mv .news-box__content--article .meta .tag {
              padding-top: 4px; }
            @media only screen and (max-width: 767px) {
              .gardenpier .mv .news-box__content--article .meta .tag {
                font-size: 10px;
                font-size: 1rem;
                max-width: 130px;
                height: 17px; } }
            .gardenpier .mv .news-box__content--article .meta .tag.portbuilding {
              background-color: #da5019; }
            .gardenpier .mv .news-box__content--article .meta .tag.museum {
              background-color: #007fb1; }
            .gardenpier .mv .news-box__content--article .meta .tag.fuji {
              background-color: #e7a800; }
            .gardenpier .mv .news-box__content--article .meta .tag.jetty {
              background-color: #41ab28; }
            .gardenpier .mv .news-box__content--article .meta .tag.porthouse {
              background-color: #2fb2c2; }
            .gardenpier .mv .news-box__content--article .meta .tag.harborlodge {
              background-color: #d04d82; }
            .gardenpier .mv .news-box__content--article .meta .tag.other {
              background-color: #c1c1c1; }
        .gardenpier .mv .news-box__content--article p.content {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.714285714;
          font-weight: 500;
          margin-top: 8px;
          letter-spacing: 0.05em;
          height: 50px; }
          @media only screen and (max-width: 767px) {
            .gardenpier .mv .news-box__content--article p.content {
              font-size: 13px;
              font-size: 1.3rem;
              line-height: 1.692307692;
              height: auto; } }
      @media only screen and (min-width: 768px) {
        .gardenpier .mv .news-box__content:first-of-type {
          border-right: 1px solid #e1e1e1; } }
      @media only screen and (max-width: 767px) {
        .gardenpier .mv .news-box__content:first-of-type {
          border-bottom: 1px solid #e1e1e1;
          margin-bottom: 15px;
          padding-bottom: 15px; } }
      .gardenpier .mv .news-box__content .link-index {
        margin: 15px auto 0;
        height: 44px;
        max-width: 320px;
        width: 100%;
        border: 1px solid #e1e1e1;
        border-radius: 22px;
        background: #fff;
        position: relative;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: 500;
        transition: background-color 0.3s; }
        .gardenpier .mv .news-box__content .link-index _:lang(x)::-ms-backdrop, .gardenpier .mv .news-box__content .link-index {
          padding-top: 5px; }
        @media only screen and (max-width: 767px) {
          .gardenpier .mv .news-box__content .link-index {
            margin-top: -3px;
            max-width: 275px;
            height: 40px;
            border-radius: 20px;
            font-size: 13px;
            font-size: 1.3rem; } }
        .gardenpier .mv .news-box__content .link-index:after {
          content: '';
          width: 6px;
          height: 6px;
          display: block;
          border-right: 1px solid #383838;
          border-bottom: 1px solid #383838;
          transform: rotateZ(-45deg) translateY(-50%);
          position: absolute;
          top: 50%;
          right: 20px; }
          @media only screen and (max-width: 767px) {
            .gardenpier .mv .news-box__content .link-index:after {
              width: 4px;
              height: 4px; } }
        .gardenpier .mv .news-box__content .link-index:hover {
          background-color: #e1e1e1; }

.gardenpier .event-modal__close {
  background-image: none;
  background-color: #383838;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  border-radius: 50%;
  width: 27px;
  height: 27px; }
  .gardenpier .event-modal__close:before {
    content: '×';
    display: block;
    color: #fff;
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 400;
    position: relative; }

.gardenpier .breadcrumb {
  margin-top: -1px;
  z-index: 200; }

.gardenpier .breadcrumbs2 {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  margin-bottom: 30px; }
  .gardenpier .breadcrumbs2 li {
    font-size: 11px;
    font-size: 1.1rem;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center; }
    .gardenpier .breadcrumbs2 li:after {
      content: '';
      width: 4px;
      height: 4px;
      display: inline-block;
      border-right: 1px solid #030303;
      border-bottom: 1px solid #030303;
      transform: rotate(-45deg);
      margin: 0 9px; }
    .gardenpier .breadcrumbs2 li:last-child:after {
      display: none; }

.gardenpier .layout {
  padding: 60px 0 80px; }
  @media only screen and (max-width: 767px) {
    .gardenpier .layout {
      padding: 40px 0 50px; } }
  .gardenpier .layout .sec-title {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-align-items: center;
    align-items: center;
    margin-bottom: 40px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .layout .sec-title {
        margin-bottom: 25px; } }
    .gardenpier .layout .sec-title .icon {
      margin-bottom: 15px; }
      @media only screen and (max-width: 767px) {
        .gardenpier .layout .sec-title .icon {
          width: 31px;
          margin-bottom: 12px; } }
    .gardenpier .layout .sec-title .text {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      line-height: 1.5;
      font-weight: 500;
      position: relative; }
      .gardenpier .layout .sec-title .text--wrapper {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-flex-direction: column;
        flex-direction: column; }
      .gardenpier .layout .sec-title .text .small {
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: 0.15em; }
        @media only screen and (max-width: 767px) {
          .gardenpier .layout .sec-title .text .small {
            font-size: 15px;
            font-size: 1.5rem; } }
      .gardenpier .layout .sec-title .text .large {
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: 0.15em;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          .gardenpier .layout .sec-title .text .large {
            font-size: 18px;
            font-size: 1.8rem; } }
      .gardenpier .layout .sec-title .text:before, .gardenpier .layout .sec-title .text:after {
        content: '';
        display: block;
        width: 22px;
        height: 4px;
        background-position: center;
        background-size: 22px 4px;
        background-repeat: no-repeat;
        margin: 0 20px 0 12px; }
        @media only screen and (max-width: 767px) {
          .gardenpier .layout .sec-title .text:before, .gardenpier .layout .sec-title .text:after {
            width: 18px;
            height: 3px;
            background-size: 18px 3px;
            margin: 0 10px 0 8px; } }
      .gardenpier .layout .sec-title .text:before {
        background-image: url(../images/garden-pier/common/dots-multi-l.svg); }
      .gardenpier .layout .sec-title .text:after {
        background-image: url(../images/garden-pier/common/dots-multi-r.svg); }
  .gardenpier .layout p {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.142857143;
    letter-spacing: 0.05em;
    margin-bottom: 37px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .layout p {
        line-height: 1.714285714;
        margin-bottom: 30px; } }
  .gardenpier .layout .map-layout {
    position: relative; }
    @media only screen and (max-width: 767px) {
      .gardenpier .layout .map-layout > img {
        cursor: pointer; } }
    .gardenpier .layout .map-layout .map-modal {
      transition: opacity 0.3s transform 0.3s;
      opacity: 0;
      pointer-events: none;
      width: 100vw;
      position: absolute;
      left: -25px;
      top: 50%;
      transform: translateY(-50%) scale(0.3); }
      .gardenpier .layout .map-layout .map-modal.is-open {
        opacity: 1;
        transform: translateY(-50%) scale(1);
        pointer-events: all; }
    @media only screen and (min-width: 768px) {
      .gardenpier .layout .map-layout {
        margin-bottom: 30px; } }
  .gardenpier .layout .note {
    display: block;
    font-size: 11px;
    font-size: 1.1rem;
    margin: 15px 0 25px;
    text-align: right; }
  .gardenpier .layout .btn-link {
    border: 1px solid #e1e1e1;
    width: 100%;
    max-width: 320px;
    height: 54px;
    border-radius: 27px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 0 auto;
    position: relative;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    transition: all 0.3s; }
    @media only screen and (max-width: 767px) {
      .gardenpier .layout .btn-link {
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: 500; } }
    .gardenpier .layout .btn-link:after {
      content: '';
      width: 12px;
      height: 12px;
      background: url(../images/common/icon-link-external.svg) center/cover no-repeat;
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translateY(-50%); }
    @media only screen and (min-width: 768px) {
      .gardenpier .layout .btn-link:hover {
        background: #e1e1e1; } }
    @media only screen and (max-width: 767px) {
      .gardenpier .layout .btn-link {
        max-width: 275px;
        height: 40px;
        font-size: 13px;
        font-size: 1.3rem; }
        .gardenpier .layout .btn-link:after {
          right: 15px; } }
    .gardenpier .layout .btn-link.double {
      line-height: 1.4; }
      @media only screen and (max-width: 767px) {
        .gardenpier .layout .btn-link.double {
          line-height: 1.2; } }
      .gardenpier .layout .btn-link.double .sml {
        font-size: 12px;
        font-size: 1.2rem; }

.gardenpier .section-areas section {
  padding: 50px 0 80px; }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section:nth-child(1) .sec-part-title .icon {
      width: 27px; } }
  .gardenpier .section-areas section:nth-child(1) .img-main .mascot {
    width: 197px;
    left: 10px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section:nth-child(1) .img-main .mascot {
        width: 135px;
        bottom: -64px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section:nth-child(2) .sec-part-title .icon {
      width: 43px; } }
  .gardenpier .section-areas section:nth-child(2) .img-main .mascot {
    width: 179px;
    right: 10px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section:nth-child(2) .img-main .mascot {
        width: 135px;
        bottom: -58px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section:nth-child(3) .sec-part-title .icon {
      width: 31px; } }
  .gardenpier .section-areas section:nth-child(3) .img-main .mascot {
    width: 201px;
    left: 10px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section:nth-child(3) .img-main .mascot {
        width: 126px;
        bottom: -64px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section:nth-child(4) .sec-part-title .icon {
      width: 70px; } }
  .gardenpier .section-areas section:nth-child(4) .img-main .mascot {
    width: 165px;
    right: 10px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section:nth-child(4) .img-main .mascot {
        width: 130px;
        bottom: -64px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section:nth-child(5) .sec-part-title .icon {
      width: 76px; } }
  .gardenpier .section-areas section:nth-child(5) .img-main .mascot {
    width: 176px;
    left: 10px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section:nth-child(5) .img-main .mascot {
        width: 132px;
        bottom: -64px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section:nth-child(6) .sec-part-title .icon {
      width: 50px; } }
  .gardenpier .section-areas section:nth-child(6) .img-main .mascot {
    width: 191px;
    right: 10px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section:nth-child(6) .img-main .mascot {
        width: 137px;
        bottom: -64px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section {
      padding: 40px 0 35px; } }
  .gardenpier .section-areas section .sec-part-title .icon {
    margin-bottom: 15px; }
  .gardenpier .section-areas section .sec-part-title .large {
    font-size: 26px;
    font-size: 2.6rem;
    letter-spacing: 0.05em;
    margin-bottom: 40px;
    font-weight: 700; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section .sec-part-title .large {
        letter-spacing: 0.15em;
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 30px; } }
  .gardenpier .section-areas section .img-main {
    margin-bottom: 52px;
    position: relative; }
    .gardenpier .section-areas section .img-main > img {
      opacity: 0;
      transform: translateY(30px);
      transition: all 0.7s 0.4s; }
      .gardenpier .section-areas section .img-main > img.fadeInBottom {
        opacity: 1;
        transform: translateY(0); }
    .gardenpier .section-areas section .img-main .mascot {
      position: absolute;
      top: -194px;
      opacity: 0; }
      .gardenpier .section-areas section .img-main .mascot.animated {
        animation: bounce 1.5s 1;
        animation-fill-mode: forwards; }
      @media only screen and (max-width: 767px) {
        .gardenpier .section-areas section .img-main .mascot {
          top: auto; } }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section .img-main {
        margin-bottom: 0; } }
  .gardenpier .section-areas section .content {
    display: -webkit-flex;
    display: flex; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section .content {
        z-index: 2;
        position: relative;
        -webkit-flex-direction: column;
        flex-direction: column; } }
    .gardenpier .section-areas section .content__txt {
      -webkit-flex: 1 1 auto;
      flex: 1 1 auto;
      transform: translateY(40px);
      opacity: 0;
      transition: all 0.7s; }
      .gardenpier .section-areas section .content__txt.animated {
        transform: translateY(0);
        opacity: 1; }
      @media only screen and (max-width: 767px) {
        .gardenpier .section-areas section .content__txt {
          text-align: center; } }
      .gardenpier .section-areas section .content__txt .content-title {
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: 0.05em;
        line-height: 1.5;
        margin-bottom: 32px;
        font-weight: 700; }
        @media only screen and (max-width: 767px) {
          .gardenpier .section-areas section .content__txt .content-title {
            font-size: 17px;
            font-size: 1.7rem;
            margin-bottom: 20px; } }
      .gardenpier .section-areas section .content__txt .content-txt {
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: 700;
        margin-bottom: 32px; }
        @media only screen and (max-width: 767px) {
          .gardenpier .section-areas section .content__txt .content-txt {
            text-align: center;
            margin-bottom: 24px; } }
    .gardenpier .section-areas section .content__img {
      width: 75%;
      max-width: 350px;
      margin: -20px 25px 0 -10px;
      transform: translateY(40px);
      opacity: 0;
      transition: all 0.7s 0.5s; }
      .gardenpier .section-areas section .content__img.animated {
        transform: translateY(0);
        opacity: 1; }
      @media only screen and (max-width: 767px) {
        .gardenpier .section-areas section .content__img {
          margin: -50px 15px 18px 0;
          width: 159px;
          -webkit-align-self: flex-end;
          align-self: flex-end; } }
  @media only screen and (min-width: 768px) {
    .gardenpier .section-areas section:nth-child(even) .content__txt {
      order: 1; } }
  @media only screen and (min-width: 768px) {
    .gardenpier .section-areas section:nth-child(even) .content__img {
      order: 2;
      margin: -20px -10px 0 25px; } }
  @media only screen and (max-width: 767px) {
    .gardenpier .section-areas section:nth-child(even) .content__img {
      -webkit-align-self: flex-start;
      align-self: flex-start;
      margin: -50px 0 20px 15px; } }
  .gardenpier .section-areas section.harbor-lodge .icon {
    width: 42px; }
    @media only screen and (max-width: 767px) {
      .gardenpier .section-areas section.harbor-lodge .icon {
        width: 50px; } }

.gardenpier #lightbox {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%); }

@keyframes bounce {
  0% {
    transform: scale(1, 1) translateY(0);
    opacity: 0; }
  10% {
    transform: scale(1.1, 0.9) translateY(0);
    opacity: 1; }
  30% {
    transform: scale(0.9, 1.1) translateY(-100px);
    opacity: 1; }
  50% {
    transform: scale(1.05, 0.95) translateY(0);
    opacity: 1; }
  57% {
    transform: scale(1, 1) translateY(-7px);
    opacity: 1; }
  64% {
    transform: scale(1, 1) translateY(0);
    opacity: 1; }
  100% {
    transform: scale(1, 1) translateY(0);
    opacity: 1; } }

body.group .mv-side {
  background-image: url("../images/group/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.group .mv-side {
      background-image: url("../images/group/mv_sp.jpg"); } }

body.group main {
  padding-top: 120px; }
  @media only screen and (max-width: 767px) {
    body.group main {
      padding-top: 70px; } }

body.group section {
  margin-top: 145px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.group section {
      margin-top: 85px; } }
  body.group section:nth-of-type(-n + 1) {
    margin-top: 0; }
  body.group section .ttl-01 {
    margin-bottom: 60px; }
    @media only screen and (max-width: 767px) {
      body.group section .ttl-01 {
        margin-bottom: 40px; } }
  body.group section .inner-sec {
    margin-top: 65px; }
    @media only screen and (max-width: 767px) {
      body.group section .inner-sec {
        margin-top: 40px; } }
    body.group section .inner-sec:nth-of-type(-n + 1) {
      margin-top: 0; }

body.group section.inner-sec .ttl-02 {
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    body.group section.inner-sec .ttl-02 {
      margin-bottom: 22px;
      letter-spacing: 0.1em; } }

body.group section.inner-sec p a {
  color: #0095a1;
  border-bottom: #0095a1 solid 1px; }
  @media only screen and (min-width: 768px) {
    body.group section.inner-sec p a {
      -webkit-transition: opacity 0.3s;
      -moz-transition: opacity 0.3s;
      -o-transition: opacity 0.3s;
      transition: opacity 0.3s; }
      body.group section.inner-sec p a:hover {
        opacity: 0.7; } }

body.group .cmsContent {
  margin-bottom: 50px; }
  @media only screen and (max-width: 767px) {
    body.group .cmsContent {
      margin-bottom: 30px; } }
  body.group .cmsContent .apply-list {
    border-top: #1c4e6a dotted 1px;
    border-bottom: #1c4e6a dotted 1px;
    padding: 15px 0 5px;
    margin: 20px 0 15px;
    list-style: none; }
    body.group .cmsContent .apply-list > li {
      list-style: none;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.714285714em;
      text-align: left;
      position: relative;
      padding-left: 20px;
      margin-top: 10px;
      margin-bottom: 0; }
      @media only screen and (max-width: 767px) {
        body.group .cmsContent .apply-list > li {
          margin-top: 5px; } }
      body.group .cmsContent .apply-list > li:nth-child(-n + 1) {
        margin-top: 0; }
      body.group .cmsContent .apply-list > li:before {
        position: absolute;
        left: 0; }
      body.group .cmsContent .apply-list > li:nth-of-type(1):before {
        content: '①'; }
      body.group .cmsContent .apply-list > li:nth-of-type(2):before {
        content: '②'; }
      body.group .cmsContent .apply-list > li:nth-of-type(3):before {
        content: '③'; }

body.group .btn-wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: center;
  justify-content: center;
  margin-top: 30px; }
  @media only screen and (max-width: 767px) {
    body.group .btn-wrap {
      display: block; } }
  body.group .btn-wrap a {
    margin: 0 20px 0 0;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.group .btn-wrap a {
        margin: 10px auto 0;
        max-width: 275px;
        height: 40px; }
        body.group .btn-wrap a span {
          font-size: 13px;
          font-size: 1.3rem; }
        body.group .btn-wrap a:nth-of-type(-n + 1) {
          margin-top: 0; } }

body.group .cost-desc {
  text-align: center;
  margin-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    body.group .cost-desc {
      text-align: left;
      margin-bottom: 35px; } }

body.group .system-desc {
  margin-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    body.group .system-desc {
      margin-bottom: 35px; } }

body.group .group-ticket {
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    body.group .group-ticket {
      margin-top: 30px; } }
  body.group .group-ticket__table {
    border-radius: 5px;
    border: #0095a1 solid 1px;
    border-top: none;
    width: 100%;
    display: block;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      body.group .group-ticket__table {
        overflow-x: scroll; } }
    body.group .group-ticket__table tbody {
      width: calc(100% + 1px);
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        body.group .group-ticket__table tbody {
          display: table;
          width: auto; } }
    body.group .group-ticket__table tr {
      width: 100%;
      display: -webkit-flex;
      display: flex; }
      body.group .group-ticket__table tr:nth-of-type(1) {
        background-color: #0095a1;
        position: relative;
        top: -1px; }
      body.group .group-ticket__table tr:nth-of-type(2) td {
        border-top: none !important; }
        body.group .group-ticket__table tr:nth-of-type(2) td span:nth-child(1) {
          border-top: none !important; }
      body.group .group-ticket__table tr th:nth-of-type(1), body.group .group-ticket__table tr td:nth-of-type(1) {
        width: 200px; }
        @media only screen and (max-width: 767px) {
          body.group .group-ticket__table tr th:nth-of-type(1), body.group .group-ticket__table tr td:nth-of-type(1) {
            width: 180px; } }
      body.group .group-ticket__table tr th, body.group .group-ticket__table tr td {
        width: calc((100% - 200px) / 5);
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; }
        @media only screen and (max-width: 767px) {
          body.group .group-ticket__table tr th, body.group .group-ticket__table tr td {
            width: 105px; } }
      body.group .group-ticket__table tr th {
        background-color: #0095a1;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        color: #FFF;
        height: 40px;
        border-left: #FFF solid 1px; }
        body.group .group-ticket__table tr th:nth-of-type(-n + 2) {
          border-left: none; }
        @media only screen and (max-width: 767px) {
          body.group .group-ticket__table tr th {
            height: 30px;
            font-size: 12px;
            font-size: 1.2rem; } }
        body.group .group-ticket__table tr th span {
          font-size: 12px;
          font-size: 1.2rem; }
          @media only screen and (max-width: 767px) {
            body.group .group-ticket__table tr th span {
              font-size: 10px;
              font-size: 1rem; } }
      body.group .group-ticket__table tr td {
        font-weight: bold;
        font-size: 18px;
        font-size: 1.8rem; }
        @media only screen and (max-width: 767px) {
          body.group .group-ticket__table tr td {
            font-size: 14px;
            font-size: 1.4rem; } }
        body.group .group-ticket__table tr td:nth-of-type(1) {
          color: #0095a1;
          font-size: 16px;
          font-size: 1.6rem;
          line-height: 1.5em;
          background-color: rgba(0, 149, 161, 0.2);
          border-top: #FFF solid 1px;
          border-right: #FFF solid 1px; }
        body.group .group-ticket__table tr td:nth-of-type(2) {
          font-size: 14px;
          font-size: 1.4rem;
          background-color: rgba(0, 149, 161, 0.1);
          font-weight: normal; }
          body.group .group-ticket__table tr td:nth-of-type(2) span {
            border-top: #FFF solid 1px; }
        body.group .group-ticket__table tr td:nth-of-type(n + 4) {
          border-left: #d9e7ef solid 1px; }
        body.group .group-ticket__table tr td span {
          border-top: #d9e7ef dotted 1px; }
        body.group .group-ticket__table tr td em {
          color: #e43030; }
        body.group .group-ticket__table tr td span {
          display: block;
          width: 100%;
          min-height: 50px;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center; }
          @media only screen and (max-width: 767px) {
            body.group .group-ticket__table tr td span {
              min-height: 45px; } }
          @media all and (-ms-high-contrast: none) {
            body.group .group-ticket__table tr td span {
              padding-top: 15px; } }
        @media all and (-ms-high-contrast: none) {
          body.group .group-ticket__table tr td:not(.column3) span {
            padding-top: 20px; } }
        body.group .group-ticket__table tr td.column3 span {
          border: none;
          min-height: inherit; }
        body.group .group-ticket__table tr td.column3.bef-aft {
          display: block;
          padding-top: 42px; }
          @media all and (-ms-high-contrast: none) {
            body.group .group-ticket__table tr td.column3.bef-aft {
              padding-top: 25px; } }
        body.group .group-ticket__table tr td.column3 .before {
          margin-bottom: 30px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.group .group-ticket__table tr td.column3 .before {
              margin-bottom: 20px; } }
          body.group .group-ticket__table tr td.column3 .before:after {
            content: '';
            width: 8px;
            height: 16px;
            background-image: url(../images/common/arw_blue_down02.svg);
            background-repeat: no-repeat;
            background-size: 8px 16px;
            background-position: center;
            position: absolute;
            left: 50%;
            -webkit-transform: translateX(-50%);
            -moz-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            -o-transform: translateX(-50%);
            transform: translateX(-50%);
            bottom: -23px; }
            @media only screen and (max-width: 767px) {
              body.group .group-ticket__table tr td.column3 .before:after {
                width: 6px;
                height: 12px;
                background-size: 6px 12px;
                bottom: -18px; } }
        body.group .group-ticket__table tr td.column3 .after {
          color: #e43030; }

body.group .contact-box .space-contact-box1,
body.group .contact-box .space-contact-box2 {
  margin-top: 11px;
  margin-bottom: 0; }

body.group .sec-bg {
  position: relative;
  padding: 114px 0 220px;
  margin-top: 127px; }
  @media only screen and (max-width: 767px) {
    body.group .sec-bg {
      padding: 66px 0 119px;
      margin-top: 68px; } }
  body.group .sec-bg:before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, #f1faff 0%, #f1faff 0.71%, #eaf9fb 51.35%, #e3f7f6 100%);
    opacity: 0.6;
    z-index: 1; }
  body.group .sec-bg .inner {
    position: relative;
    z-index: 2; }

body.group .organization-content .box-text {
  max-width: 910px;
  margin: 2px auto -5px; }
  @media only screen and (max-width: 767px) {
    body.group .organization-content .box-text {
      margin: -3px auto -10px; } }
  body.group .organization-content .box-text p {
    text-align: left; }

@media only screen and (max-width: 767px) {
  body.group .organization-content .btn-wrap {
    padding: 0 25px; } }

body.group .organization-content .btn-wrap a {
  max-width: 450px; }
  @media only screen and (max-width: 767px) {
    body.group .organization-content .btn-wrap a {
      height: 55px; }
      body.group .organization-content .btn-wrap a span {
        display: inline;
        line-height: 18px; }
      body.group .organization-content .btn-wrap a .size {
        font-size: 13px;
        padding-left: 0; } }
  @media only screen and (min-width: 768px) {
    body.group .organization-content .btn-wrap a .size {
      display: block; } }

body.group .organization-content .btn-wrap a:last-child {
  margin-right: 0; }

body.group .organization-content .box-white {
  border-radius: 5px;
  background: #fff;
  border: 1px solid #d9e7ef;
  padding: 28px 50px 30px;
  margin: 80px 0 0; }
  @media only screen and (max-width: 767px) {
    body.group .organization-content .box-white {
      padding: 22px 23px 23px;
      margin: 46px 0 0; } }
  body.group .organization-content .box-white p {
    letter-spacing: 0.05em; }
  body.group .organization-content .box-white strong {
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      body.group .organization-content .box-white strong {
        font-size: 13px;
        line-height: 23px; } }
  body.group .organization-content .box-white a {
    color: #0095A1;
    font-weight: bold;
    text-decoration: underline; }

@media only screen and (max-width: 767px) {
  body.index .header {
    border-bottom: none; } }

body.index main {
  width: 100%;
  overflow: hidden; }

body.index .mv {
  background: #fff;
  position: relative;
  margin-top: 60px; }
  @media only screen and (min-width: 768px) {
    body.index .mv {
      margin-top: 0;
      height: calc(100vh - 215px); } }
  body.index .mv .mv-mask {
    background-color: #fff;
    content: "";
    margin: 0 auto;
    pointer-events: none;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 100%;
    width: 100%;
    z-index: 10;
    animation-delay: 1s;
    animation-duration: 2s; }
  body.index .mv .mv-ttl {
    color: white;
    font-size: 45px;
    font-size: 4.5rem;
    font-weight: 500;
    line-height: 1.77;
    letter-spacing: 0.3em;
    opacity: 0;
    position: absolute;
    left: 70px;
    bottom: 140px;
    z-index: 2;
    text-shadow: 5px 4px 17px #1c4e6a;
    animation-delay: 1.6s;
    height: auto !important;
    opacity: 1; }
    body.index .mv .mv-ttl.fake {
      opacity: 0 !important; }
    @media only screen and (min-width: 768px) and (max-width: 980px) {
      body.index .mv .mv-ttl {
        left: 25px; } }
    @media only screen and (max-width: 767px) {
      body.index .mv .mv-ttl {
        letter-spacing: 0.25em;
        font-size: 30px;
        font-size: 3rem;
        line-height: 42px;
        left: 25px;
        bottom: 9.5%;
        text-shadow: 0px 0px 20px #1c4e6a; } }
  body.index .mv .mv-slider {
    width: 100%;
    height: 100%;
    padding-bottom: 55px;
    overflow: hidden;
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.index .mv .mv-slider {
        height: calc(86.6vw + 52px);
        padding-bottom: 52px; } }
    body.index .mv .mv-slider__slides {
      position: relative;
      width: 100%;
      height: 100%; }
      body.index .mv .mv-slider__slides div:not(.mv-ttl) {
        height: 100%; }
      body.index .mv .mv-slider__slides .slide {
        width: 100%; }
        body.index .mv .mv-slider__slides .slide .img-slide-pc,
        body.index .mv .mv-slider__slides .slide .img-slide-sp {
          position: absolute;
          z-index: 1;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-slider__slides .slide .img-slide-pc {
            display: none; } }
        @media only screen and (min-width: 768px) {
          body.index .mv .mv-slider__slides .slide .img-slide-sp {
            display: none; } }
    body.index .mv .mv-slider__controls {
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      text-align: center; }
      body.index .mv .mv-slider__controls .box-in {
        display: inline-block;
        position: relative;
        padding: 0 45px; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-slider__controls .box-in {
            width: 100%; } }
      body.index .mv .mv-slider__controls .slick-arrow {
        position: absolute;
        bottom: 16px;
        width: 24px;
        height: 24px;
        appearance: none;
        -webkit-appearance: none;
        background-color: transparent;
        text-indent: -9999px;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.414' height='14.828' viewBox='0 0 8.414 14.828'%3E%3Cpath d='M0,0,6,6l6-6' transform='translate(7 1.414) rotate(90)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
        background-position: center;
        background-repeat: no-repeat;
        background-size: auto;
        border: none;
        cursor: pointer; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-slider__controls .slick-arrow {
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14.415' height='26.828' viewBox='0 0 14.415 26.828'%3E%3Cpath id='arw' d='M0,0,12,12,24,0' transform='translate(13 1.414) rotate(90)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
            background-size: 8px auto;
            bottom: 13px; } }
      body.index .mv .mv-slider__controls .slick-prev {
        left: 0; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-slider__controls .slick-prev {
            left: 16px; } }
      body.index .mv .mv-slider__controls .slick-next {
        right: 0;
        transform: rotate(180deg); }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-slider__controls .slick-next {
            right: 16px; } }
      body.index .mv .mv-slider__controls .slick-dots {
        position: relative;
        display: inline-block;
        line-height: 1;
        margin-bottom: 26px; }
        @media only screen and (min-width: 768px) and (max-width: 1200px) {
          body.index .mv .mv-slider__controls .slick-dots {
            max-width: 625px; } }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-slider__controls .slick-dots {
            margin-bottom: 23px; } }
        body.index .mv .mv-slider__controls .slick-dots li {
          display: inline-block;
          background-color: #D9E7EF;
          width: 100px;
          height: 3px;
          margin-right: 5px;
          padding: 0;
          cursor: pointer; }
          @media only screen and (min-width: 768px) and (max-width: 1200px) {
            body.index .mv .mv-slider__controls .slick-dots li {
              max-width: calc(100% / var(--mv-slides) - 5px); } }
          @media only screen and (max-width: 767px) {
            body.index .mv .mv-slider__controls .slick-dots li {
              width: 70px;
              margin-right: 10px;
              max-width: calc(100% / var(--mv-slides) - 12px); } }
          body.index .mv .mv-slider__controls .slick-dots li.slick-active {
            background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-size: 200% auto;
            transition: 0.5s;
            position: relative; }
            body.index .mv .mv-slider__controls .slick-dots li.slick-activea:hover {
              background-position: right center; }
            body.index .mv .mv-slider__controls .slick-dots li.slick-active:after {
              background-color: #D9E7EF;
              content: "";
              position: absolute;
              right: 0;
              height: 100%;
              width: 100%;
              z-index: 2;
              animation-delay: .2s;
              animation-timing-function: linear;
              animation-name: loading;
              animation-duration: 4.5s; }

@keyframes loading {
  0% {
    width: 100%; }
  100% {
    width: 0; } }
          body.index .mv .mv-slider__controls .slick-dots li:last-child {
            margin-right: 0; }
        body.index .mv .mv-slider__controls .slick-dots button {
          display: none; }
  @media only screen and (min-width: 768px) {
    body.index .mv .mv-bar {
      position: absolute;
      right: 64px;
      bottom: 85px;
      width: 350px; } }
  @media only screen and (min-width: 768px) and (max-width: 980px) {
    body.index .mv .mv-bar {
      right: 25px; } }
  @media only screen and (max-width: 767px) {
    body.index .mv .mv-bar {
      margin: 47px 25px 0; } }
  @media only screen and (min-width: 768px) {
    body.index .mv .mv-bar .reservation-btn {
      margin-bottom: 16px; } }
  @media only screen and (max-width: 767px) {
    body.index .mv .mv-bar .reservation-btn.active {
      opacity: 1;
      pointer-events: all; } }
  body.index .mv .mv-bar .time-box {
    border-radius: 10px;
    padding: 24px 38px 25px;
    -webkit-box-shadow: 0px 2px 7px 2px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 2px 7px 2px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 2px 7px 2px rgba(0, 0, 0, 0.1);
    background: #f1faff;
    background: -webkit-linear-gradient(bottom, rgba(241, 250, 255, 0.8) 0%, rgba(226, 247, 246, 0.8) 100%);
    background: -o-linear-gradient(bottom, rgba(241, 250, 255, 0.8) 0%, rgba(226, 247, 246, 0.8) 100%);
    background: linear-gradient(to top, rgba(241, 250, 255, 0.8) 0%, rgba(226, 247, 246, 0.8) 100%); }
    @media only screen and (max-width: 767px) {
      body.index .mv .mv-bar .time-box {
        background: -webkit-linear-gradient(bottom, rgba(241, 250, 255, 0.9) 0%, rgba(226, 247, 246, 0.9) 100%);
        background: -o-linear-gradient(bottom, rgba(241, 250, 255, 0.9) 0%, rgba(226, 247, 246, 0.9) 100%);
        background: linear-gradient(to top, rgba(241, 250, 255, 0.9) 0%, rgba(226, 247, 246, 0.9) 100%);
        border-radius: 4px;
        padding: 22px 25px 20px; } }
    body.index .mv .mv-bar .time-box .time-box-ttl {
      display: inline-block;
      color: #005ca1;
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: 0.05em;
      padding-left: 36px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.index .mv .mv-bar .time-box .time-box-ttl {
          font-size: 15px;
          font-size: 1.5rem;
          padding-left: 30px; } }
      body.index .mv .mv-bar .time-box .time-box-ttl img {
        position: absolute;
        left: 0;
        top: -4px;
        width: 25px; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-bar .time-box .time-box-ttl img {
            top: -3px;
            width: 22px; } }
    body.index .mv .mv-bar .time-box .active-time {
      background-color: white;
      border-radius: 5px;
      padding: 15px 10px 10px;
      margin: 20px 0 10px; }
      @media only screen and (max-width: 767px) {
        body.index .mv .mv-bar .time-box .active-time {
          border-radius: 3px;
          margin: 14px 0 5px;
          padding: 13px 10px 5px; } }
      body.index .mv .mv-bar .time-box .active-time .main-time {
        color: #005ca1;
        font-size: 25px;
        font-size: 2.5rem;
        font-family: "Oswald", sans-serif;
        letter-spacing: 0.05em;
        margin-bottom: 13px;
        text-align: center; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-bar .time-box .active-time .main-time {
            font-size: 20px;
            font-size: 2rem;
            margin-bottom: 12px; } }
      body.index .mv .mv-bar .time-box .active-time .time-detail {
        background-color: #f0faff;
        color: #005ca1;
        border-radius: 5px;
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: 0.05em;
        padding-top: 9px;
        text-align: center;
        height: 30px; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-bar .time-box .active-time .time-detail {
            font-size: 10px;
            font-size: 1rem;
            padding-top: 6px;
            height: 22px; } }
    body.index .mv .mv-bar .time-box .event-time {
      color: white;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      height: 40px; }
      @media only screen and (max-width: 767px) {
        body.index .mv .mv-bar .time-box .event-time {
          font-size: 13px;
          font-size: 1.3rem;
          height: 35px; } }
    body.index .mv .mv-bar .time-box .weather {
      display: none;
      padding-top: 20px;
      margin-top: 20px;
      border-top: 1px solid #d9e7ef;
      /* IE11  */ }
      @media only screen and (max-width: 767px) {
        body.index .mv .mv-bar .time-box .weather {
          border-top: 1px solid #d9e7ef;
          margin-top: 15px;
          padding-top: 15px; } }
      body.index .mv .mv-bar .time-box .weather .wheather-box {
        font-family: "Oswald", sans-serif;
        font-size: 24px;
        font-size: 2.4rem;
        margin: 0 auto;
        width: 230px; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-bar .time-box .weather .wheather-box {
            font-size: 20px;
            font-size: 2rem;
            width: 204px; } }
        body.index .mv .mv-bar .time-box .weather .wheather-box .sml {
          font-size: 15px;
          font-size: 1.5rem; }
          @media only screen and (max-width: 767px) {
            body.index .mv .mv-bar .time-box .weather .wheather-box .sml {
              font-size: 14px;
              font-size: 1.4rem; } }
        body.index .mv .mv-bar .time-box .weather .wheather-box .space {
          color: #3d404a;
          display: inline-block;
          font-size: 15px;
          font-size: 1.5rem;
          margin: 0 8px;
          position: relative;
          top: 9px; }
          @media only screen and (max-width: 767px) {
            body.index .mv .mv-bar .time-box .weather .wheather-box .space {
              font-size: 14px;
              font-size: 1.4rem; } }
        body.index .mv .mv-bar .time-box .weather .wheather-box .temperature {
          padding-left: 33px;
          position: relative; }
          body.index .mv .mv-bar .time-box .weather .wheather-box .temperature.sunny:before {
            background-image: url("../images/common/weather1.svg"); }
          body.index .mv .mv-bar .time-box .weather .wheather-box .temperature.cloudy:before {
            background-image: url("../images/common/weather2.svg");
            top: 6px; }
          body.index .mv .mv-bar .time-box .weather .wheather-box .temperature.rainy:before {
            background-image: url("../images/common/weather3.svg");
            height: 27px;
            top: -1px; }
          body.index .mv .mv-bar .time-box .weather .wheather-box .temperature:before {
            background-image: url("../images/common/weather1.svg");
            background-size: 23px;
            background-repeat: no-repeat;
            content: "";
            position: absolute;
            left: 0px;
            top: 3px;
            height: 23px;
            width: 23px; }
            @media only screen and (max-width: 767px) {
              body.index .mv .mv-bar .time-box .weather .wheather-box .temperature:before {
                background-size: 20px;
                height: 20px;
                width: 20px; } }
          body.index .mv .mv-bar .time-box .weather .wheather-box .temperature .wheather1 {
            color: #e43030; }
          body.index .mv .mv-bar .time-box .weather .wheather-box .temperature .wheather2 {
            color: #2794eb; }
        body.index .mv .mv-bar .time-box .weather .wheather-box .humi {
          color: #005ca1;
          padding-left: 23px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.index .mv .mv-bar .time-box .weather .wheather-box .humi {
              padding-left: 20px; } }
          body.index .mv .mv-bar .time-box .weather .wheather-box .humi:before {
            background-image: url("../images/common/humi.svg");
            background-size: 15px 23px;
            background-repeat: no-repeat;
            content: "";
            position: absolute;
            left: 0px;
            top: 2px;
            height: 23px;
            width: 15px; }
            @media only screen and (max-width: 767px) {
              body.index .mv .mv-bar .time-box .weather .wheather-box .humi:before {
                background-size: 13px 20px;
                top: 1px;
                height: 20px;
                width: 13px; } }
      body.index .mv .mv-bar .time-box .weather .weather-detail {
        background-color: white;
        color: #005ca1;
        border-radius: 5px;
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: 0.05em;
        padding-top: 9px;
        margin-top: 13px;
        text-align: center;
        height: 30px; }
        @media only screen and (max-width: 767px) {
          body.index .mv .mv-bar .time-box .weather .weather-detail {
            font-size: 10px;
            font-size: 1rem;
            margin-top: 12px;
            padding-top: 4px;
            height: 22px; } }
      body.index .mv .mv-bar .time-box .weather _:lang(x)::-ms-backdrop,
      body.index .mv .mv-bar .time-box .weather .weather-detail {
        padding-top: 12px; }
    body.index .mv .mv-bar .time-box .crowded_notification {
      border-radius: 5px;
      margin: 10px 0 0;
      box-shadow: 0px 0px 20px rgba(28, 78, 106, 0.1); }
      @media only screen and (max-width: 767px) {
        body.index .mv .mv-bar .time-box .crowded_notification {
          margin: 5px 0 0; } }
      body.index .mv .mv-bar .time-box .crowded_notification img {
        border-radius: 5px; }
  body.index .mv .mv-bar .banner-earth {
    display: block;
    margin-bottom: 14px;
    transition: all .3s; }
    @media only screen and (min-width: 768px) {
      body.index .mv .mv-bar .banner-earth:hover {
        transform: scale(1.05); } }
    @media only screen and (max-width: 767px) {
      body.index .mv .mv-bar .banner-earth {
        margin: 0 auto;
        margin-top: 14px; } }
  body.index .mv .mv-nav {
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.index .mv .mv-nav {
        display: none; } }
    body.index .mv .mv-nav ul {
      position: relative;
      display: flex;
      flex-wrap: wrap;
      border-top: solid 1px #d9e7ef; }
      body.index .mv .mv-nav ul:before {
        content: '';
        position: absolute;
        left: 50%;
        top: 0;
        bottom: 0;
        width: 1px;
        background: #d9e7ef; }
    body.index .mv .mv-nav__item {
      width: 50%;
      border-bottom: solid 1px #d9e7ef; }
      body.index .mv .mv-nav__item a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 50px; }
        body.index .mv .mv-nav__item a > span {
          display: block;
          width: 100%;
          max-width: 135px;
          position: relative;
          padding-left: 39px; }
      body.index .mv .mv-nav__item img {
        position: absolute;
        left: 0;
        top: 50%;
        transform: translateY(-50%); }
      body.index .mv .mv-nav__item .txt {
        line-height: 18px;
        font-size: 14px;
        font-size: 1.4rem;
        font-weight: 700;
        -webkit-transition: color 0.3s;
        -moz-transition: color 0.3s;
        -o-transition: color 0.3s;
        transition: color 0.3s; }
        @media only screen and (max-width: 920px) {
          body.index .mv .mv-nav__item .txt {
            line-height: 16px;
            font-size: 12px;
            font-size: 1.2rem; } }
    body.index .mv .mv-nav__calendar img {
      left: 4px; }
    body.index .mv .mv-nav__fee img {
      left: 4px; }
    body.index .mv .mv-nav__floormap img {
      left: -1px; }
    body.index .mv .mv-nav__access img {
      left: 0; }
    body.index .mv .mv-nav__event img {
      left: 4px; }
    body.index .mv .mv-nav__shop img {
      left: -1px; }
    body.index .mv .mv-nav__faq img {
      left: 7px; }
    body.index .mv .mv-nav__research img {
      left: 1px; }

body.index .box-notice {
  padding-top: 60px;
  margin-bottom: 80px; }
  @media only screen and (max-width: 767px) {
    body.index .box-notice {
      padding-top: 45px;
      margin-bottom: 54px;
      position: relative;
      z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    body.index .box-notice .inner {
      padding-left: 20px;
      padding-right: 30px; } }
  body.index .box-notice__box {
    padding: 8px;
    border-radius: 8px;
    background: #fff;
    border: 2px solid #f6963f;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      body.index .box-notice__box {
        padding: 9px 8px;
        border-radius: 5px;
        border: 1px solid #f6963f; } }
  body.index .box-notice__ttl {
    padding: 12px 15px 10px 66px;
    border-radius: 8px;
    color: #fff;
    background-color: #f6963f;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21.667' height='20' viewBox='0 0 21.667 20'%3E%3Cg transform='translate(-438.292 -275.414)'%3E%3Cpath d='M460.376,288.774h0a1.816,1.816,0,0,0,1.809-1.822v-9.716a1.816,1.816,0,0,0-1.809-1.822H445.114a1.816,1.816,0,0,0-1.81,1.822h0a.349.349,0,0,0,.348.35h16.029a.349.349,0,0,1,.348.35v10.488A.349.349,0,0,0,460.376,288.774Z' transform='translate(-2.227 0)' fill='%23fff'/%3E%3Cpath id='Path_86' data-name='Path 86' d='M441.994,297.992a.844.844,0,0,1-.844-.847v-2.884a.1.1,0,0,0-.1-.105h-1.291a1.469,1.469,0,0,1-1.462-1.472v-10a1.469,1.469,0,0,1,1.462-1.472h15.541a1.469,1.469,0,0,1,1.462,1.472v10a1.469,1.469,0,0,1-1.462,1.472h-8.909a.816.816,0,0,0-.586.25l-3.206,3.329A.827.827,0,0,1,441.994,297.992Z' transform='translate(0 -2.579)' fill='%23fff'/%3E%3Cpath id='Path_87' data-name='Path 87' d='M455.5,288.816h-9.19a.42.42,0,0,1,0-.841h9.19a.42.42,0,0,1,0,.841Z' transform='translate(-3.376 -5.583)' fill='%23f6963f'/%3E%3Cpath d='M455.5,293.168h-9.19a.42.42,0,0,1,0-.841h9.19a.42.42,0,0,1,0,.841Z' transform='translate(-3.376 -7.517)' fill='%23f6963f'/%3E%3Cpath d='M450.9,297.521h-4.595a.421.421,0,0,1,0-.841H450.9a.421.421,0,0,1,0,.841Z' transform='translate(-3.376 -9.452)' fill='%23f6963f'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-position: left 30px top 15px;
    background-size: auto;
    background-repeat: no-repeat;
    letter-spacing: 0.15em;
    line-height: 1.44;
    font-size: 18px;
    font-size: 1.8rem; }
    @media only screen and (max-width: 767px) {
      body.index .box-notice__ttl {
        border-radius: 4px;
        background-position: left 20px top 17px;
        background-size: 21px auto;
        padding: 13px 10px 14px 50px;
        font-size: 16px;
        font-size: 1.6rem; } }
  body.index .box-notice__txt {
    padding: 21px 30px 16px; }
    @media only screen and (max-width: 767px) {
      body.index .box-notice__txt {
        padding: 18px 20px 17px; } }
    body.index .box-notice__txt p {
      margin-bottom: 15px;
      color: #F6963F;
      letter-spacing: 0.05em;
      line-height: 28px;
      text-align: left;
      font-size: 14px;
      font-size: 1.4rem; }
      @media only screen and (max-width: 767px) {
        body.index .box-notice__txt p {
          margin-bottom: 10px;
          line-height: 24px;
          font-size: 13px;
          font-size: 1.3rem; } }
      body.index .box-notice__txt p:last-child {
        margin-bottom: 0; }
    body.index .box-notice__txt b, body.index .box-notice__txt strong {
      font-weight: bold; }
    body.index .box-notice__txt em {
      font-style: italic; }
    body.index .box-notice__txt a {
      border-bottom: 1px solid #0095a1;
      color: #0095a1;
      padding-bottom: 3px;
      text-decoration: underline; }
      @media only screen and (min-width: 768px) {
        body.index .box-notice__txt a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.index .box-notice__txt a:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.index .box-notice__txt a {
          padding-bottom: 2px; } }

body.index .banner-slider,
body.index .banner-list {
  margin: 60px auto 0;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    body.index .banner-slider,
    body.index .banner-list {
      margin-top: 45px; } }

body.index .banner-slider {
  position: relative;
  z-index: 10; }
  body.index .banner-slider:before, body.index .banner-slider:after {
    content: '';
    position: absolute;
    z-index: 2;
    top: 0;
    bottom: 0;
    width: 15%;
    max-width: 220px;
    background-size: auto;
    background-repeat: repeat-y; }
  body.index .banner-slider:before {
    left: 0;
    background-position: right top;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='1' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23fff'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath id='grd' d='M0,0H220V225H0Z' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  body.index .banner-slider:after {
    right: 0;
    background-position: left top;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='220' height='225' viewBox='0 0 220 225'%3E%3Cdefs%3E%3ClinearGradient id='linear-gradient' x1='0.5' y1='0.532' x2='0' y2='0.532' gradientUnits='objectBoundingBox'%3E%3Cstop offset='0' stop-color='%23fff'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect id='grd' width='220' height='225' fill='url(%23linear-gradient)'/%3E%3C/svg%3E%0A"); }
  body.index .banner-slider__slides {
    margin: 0 auto;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.index .banner-slider__slides li {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        body.index .banner-slider__slides li:hover {
          opacity: .7; } }
    body.index .banner-slider__slides .slick-slide {
      margin: 0 5px;
      width: 270px; }
      @media only screen and (max-width: 767px) {
        body.index .banner-slider__slides .slick-slide {
          width: 210px; } }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .banner-slider__slides .slick-slide {
          width: 190px; } }
    body.index .banner-slider__slides .slick-list {
      margin: 0 -5px;
      overflow: visible; }
  body.index .banner-slider #prevArrow, body.index .banner-slider #nextArrow {
    background-size: cover;
    margin: 0 auto;
    position: absolute;
    z-index: 3;
    top: 50%;
    transform: translateY(-50%);
    height: 60px;
    width: 60px;
    cursor: pointer; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.index .banner-slider #prevArrow, body.index .banner-slider #nextArrow {
        height: 40px;
        width: 40px; } }
  body.index .banner-slider #prevArrow {
    background-image: url("../images/common/btn_arwl.svg");
    left: 30px; }
    @media only screen and (min-width: 768px) and (max-width: 1200px) {
      body.index .banner-slider #prevArrow {
        left: 20px; } }
  body.index .banner-slider #nextArrow {
    background-image: url("../images/common/btn_arwr.svg");
    right: 30px; }
    @media only screen and (min-width: 768px) and (max-width: 1200px) {
      body.index .banner-slider #nextArrow {
        right: 20px; } }

body.index .banner-list {
  padding: 0 25px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center; }
  @media only screen and (min-width: 768px) {
    body.index .banner-list {
      padding: 0 10px; } }
  @media only screen and (max-width: 767px) {
    body.index .banner-list a {
      width: calc(50% - 5px);
      margin-right: 10px;
      margin-bottom: 10px; }
      body.index .banner-list a:nth-child(2n) {
        margin-right: 0; } }
  @media only screen and (min-width: 768px) {
    body.index .banner-list a {
      max-width: 270px;
      width: calc(100% / 4 - 8px);
      margin-right: 10px; }
      body.index .banner-list a:nth-child(4n), body.index .banner-list a:last-child {
        margin-right: 0; } }

body.index .box-pickup {
  margin: 68px 0 0;
  padding: 0 20px 99px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.index .box-pickup {
      margin: 58px 0 0;
      padding: 0 25px 55px; } }
  body.index .box-pickup:after {
    content: '';
    position: absolute;
    z-index: 1;
    left: 0;
    top: 252px;
    bottom: 0;
    width: 100%;
    background: #e5fbf3;
    background: -webkit-linear-gradient(left, #e5fbf3 0%, #e9f4ff 100%);
    background: -o-linear-gradient(left, #e5fbf3 0%, #e9f4ff 100%);
    background: linear-gradient(to right, #e5fbf3 0%, #e9f4ff 100%); }
    @media only screen and (max-width: 767px) {
      body.index .box-pickup:after {
        top: 91px; } }
  body.index .box-pickup__event {
    max-width: 1040px;
    margin: 0 auto 80px;
    position: relative;
    z-index: 2; }
    @media only screen and (max-width: 767px) {
      body.index .box-pickup__event {
        margin: 0 auto 55px; } }
    body.index .box-pickup__event .heading {
      margin-bottom: 46px; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__event .heading {
          margin-bottom: 77px; } }
      body.index .box-pickup__event .heading__ja {
        margin-bottom: 9px;
        font-weight: 500;
        letter-spacing: 0.05em;
        line-height: 24px;
        text-align: center;
        color: #1c4e6a;
        font-size: 15px;
        font-size: 1.5rem; }
        @media only screen and (max-width: 767px) {
          body.index .box-pickup__event .heading__ja {
            margin-bottom: 5px;
            font-size: 13px;
            font-size: 1.3rem; } }
      body.index .box-pickup__event .heading__en {
        font-weight: 500;
        letter-spacing: 0.15em;
        line-height: 30px;
        text-align: center;
        color: #1c4e6a;
        font-family: "Montserrat", sans-serif;
        font-size: 34px;
        font-size: 3.4rem; }
        @media only screen and (max-width: 767px) {
          body.index .box-pickup__event .heading__en {
            font-size: 30px;
            font-size: 3rem; } }
    body.index .box-pickup__event .list {
      margin-bottom: 39px;
      display: flex;
      flex-wrap: wrap; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__event .list {
          margin-bottom: 15px; } }
      body.index .box-pickup__event .list .item {
        width: 100%;
        border-radius: 10px;
        margin-bottom: 10px;
        background: #fff;
        box-shadow: 10px 10px 40px rgba(0, 149, 161, 0.1); }
        @media only screen and (min-width: 768px) {
          body.index .box-pickup__event .list .item {
            border-radius: 8px;
            width: 30.77%;
            margin-right: 3.8%;
            margin-bottom: 0; }
            body.index .box-pickup__event .list .item:nth-child(3n) {
              margin-right: 0; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
    body.index .box-pickup__event .list .item {
      width: 31.5%;
      margin-right: 2.75%; } }
        body.index .box-pickup__event .list .item a {
          display: block;
          padding: 10px; }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__event .list .item a {
              display: flex;
              flex-wrap: wrap;
              justify-content: space-between;
              align-items: center; } }

@media only screen and (min-width: 768px) and (min-width: 768px) {
  body.index .box-pickup__event .list .item a:hover {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    body.index .box-pickup__event .list .item a:hover:hover {
      opacity: .7; } }
        body.index .box-pickup__event .list .item .imager {
          border-radius: 8px;
          height: 225px; }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__event .list .item .imager {
              width: 120px;
              height: 90px; } }
        body.index .box-pickup__event .list .item .text {
          width: calc(100% - 140px); }
          @media only screen and (min-width: 768px) {
            body.index .box-pickup__event .list .item .text {
              width: 100%;
              padding: 26px 5px 17px;
              display: flex;
              flex-wrap: wrap;
              align-items: center;
              justify-content: space-between; } }
  @media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
    body.index .box-pickup__event .list .item .text {
      padding: 26px 0 17px; } }
          body.index .box-pickup__event .list .item .text__date {
            width: 56px;
            font-weight: normal;
            letter-spacing: 0.05em;
            line-height: 22px;
            text-align: center;
            color: #0095a1;
            font-family: "Oswald", sans-serif;
            font-size: 18px;
            font-size: 1.8rem; }
            @media only screen and (max-width: 767px) {
              body.index .box-pickup__event .list .item .text__date {
                text-align: left;
                margin-bottom: 5px;
                width: 100%;
                line-height: 19px;
                font-size: 11px;
                font-size: 1.1rem; } }
          body.index .box-pickup__event .list .item .text__ttl {
            padding-right: 10px;
            width: calc(100% - 65px);
            font-weight: 500;
            letter-spacing: 0.05em;
            line-height: 22px;
            text-align: left;
            color: #1c4e6a;
            overflow: hidden;
            -webkit-line-clamp: 2;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -o-text-overflow: ellipsis;
            text-overflow: ellipsis;
            white-space: normal;
            font-size: 16px;
            font-size: 1.6rem; }
            @media only screen and (max-width: 767px) {
              body.index .box-pickup__event .list .item .text__ttl {
                padding-right: 0;
                width: 100%;
                line-height: 19px;
                font-size: 14px;
                font-size: 1.4rem; } }
    body.index .box-pickup__event .btn {
      width: 100%;
      max-width: 100%; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__event .btn {
          width: 100%;
          justify-content: flex-start;
          padding-left: 25px;
          height: 50px;
          border-radius: 5px; } }
      body.index .box-pickup__event .btn span {
        font-size: 15px;
        font-size: 1.5rem; }
        @media only screen and (max-width: 767px) {
          body.index .box-pickup__event .btn span {
            font-size: 13px;
            font-size: 1.3rem; } }
        body.index .box-pickup__event .btn span:before {
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.41' height='10.829' viewBox='0 0 6.41 10.829'%3E%3Cpath id='arw' d='M774,2154.848l4,4-4,4' transform='translate(-772.586 -2153.433)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
          background-size: auto;
          width: 8px;
          height: 10px;
          right: 38px; }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__event .btn span:before {
              right: 20px;
              width: 12px;
              height: 12px;
              background-size: 6.5px auto;
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.414' height='22.828' viewBox='0 0 12.414 22.828'%3E%3Cpath id='arw' d='M613.8,4548.4l10,10-10,10' transform='translate(-612.381 -4546.982)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A"); } }
  body.index .box-pickup__news {
    position: relative;
    z-index: 2;
    margin: 0 auto;
    width: 100%;
    max-width: 1180px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 10px 10px 40px rgba(0, 149, 161, 0.1);
    padding: 68px 40px 61px; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.index .box-pickup__news {
        padding: 48px 20px 41px; } }
    @media only screen and (max-width: 767px) {
      body.index .box-pickup__news {
        padding: 32px 30px 35px; } }
    @media only screen and (min-width: 768px) {
      body.index .box-pickup__news .box-in {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        max-width: 1040px;
        margin: 0 auto; } }
    @media only screen and (min-width: 768px) {
      body.index .box-pickup__news .heading {
        width: 200px; } }
    body.index .box-pickup__news .heading__en {
      margin-bottom: 7px;
      font-weight: 600;
      letter-spacing: 0.15em;
      line-height: 24px;
      color: #1c4e6a;
      font-family: "Montserrat", sans-serif;
      font-size: 15px;
      font-size: 1.5rem; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__news .heading__en {
          margin-bottom: 0;
          text-align: center;
          font-size: 14px;
          font-size: 1.4rem; } }
    body.index .box-pickup__news .heading__ja {
      margin-bottom: 53px;
      font-weight: 500;
      letter-spacing: 0.15em;
      line-height: 36px;
      color: #1c4e6a;
      font-size: 28px;
      font-size: 2.8rem; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__news .heading__ja {
          margin-bottom: 20px;
          line-height: 30px;
          text-align: center;
          font-size: 21px;
          font-size: 2.1rem; } }
    body.index .box-pickup__news .heading__category {
      max-width: 160px; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__news .heading__category {
          max-width: none;
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between; } }
      body.index .box-pickup__news .heading__category li {
        padding-left: 59px;
        margin-bottom: 10px;
        height: 40px;
        width: 100%;
        cursor: pointer;
        position: relative;
        text-align: left;
        color: #0095a1;
        border-radius: 5px;
        background: #fff;
        transition: all 0.3s !important;
        letter-spacing: 0.1em;
        font-weight: 500;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        -webkit-align-items: center;
        align-items: center;
        font-size: 14px;
        font-size: 1.4rem;
        /* IE11  */ }
        @media only screen and (max-width: 767px) {
          body.index .box-pickup__news .heading__category li {
            margin-bottom: 5px;
            padding-left: 0;
            height: 30px;
            width: calc(50% - 2px);
            justify-content: center;
            font-size: 13px;
            font-size: 1.3rem; }
            body.index .box-pickup__news .heading__category li:first-child {
              width: 100%; } }
        body.index .box-pickup__news .heading__category li:before {
          border-radius: 5px;
          content: '';
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          border: 1px solid #0095a1;
          transition: all .3s;
          box-sizing: border-box; }
        body.index .box-pickup__news .heading__category li.active {
          position: relative;
          color: #FFF;
          background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-size: 200% auto;
          transition: 0.5s; }
          body.index .box-pickup__news .heading__category li.activea:hover {
            background-position: right center; }
          body.index .box-pickup__news .heading__category li.active:before {
            opacity: 0; }
          @media only screen and (min-width: 768px) {
            body.index .box-pickup__news .heading__category li.active:after {
              content: '';
              position: absolute;
              right: -10px;
              top: 50%;
              transform: translateY(-50%);
              border-top: solid 6px transparent;
              border-bottom: solid 6px transparent;
              border-left: solid 10px #0095A1; } }
          body.index .box-pickup__news .heading__category li.active img {
            filter: brightness(0) invert(1); }
        @media only screen and (min-width: 768px) {
          body.index .box-pickup__news .heading__category li:hover {
            color: #FFF;
            background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
            background-size: 200% auto;
            transition: 0.5s; }
            body.index .box-pickup__news .heading__category li:hovera:hover {
              background-position: right center; }
            body.index .box-pickup__news .heading__category li:hover img {
              filter: brightness(0) invert(1); } }
        @media only screen and (min-width: 768px) {
          body.index .box-pickup__news .heading__category li img {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            left: 29px; } }
        body.index .box-pickup__news .heading__category li _:lang(x)::-ms-backdrop,
        body.index .box-pickup__news .heading__category li .text {
          padding-top: 7px; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__news .heading__category li:nth-child(1) img {
          width: 13px;
          margin-right: 8px;
          margin-left: 2px; }
        body.index .box-pickup__news .heading__category li:nth-child(2) img {
          width: 12px;
          margin-right: 11px;
          margin-left: -3px; }
        body.index .box-pickup__news .heading__category li:nth-child(3) img {
          width: 15px;
          margin-right: 7px;
          margin-left: 0px; }
        body.index .box-pickup__news .heading__category li:nth-child(4) img {
          width: 17px;
          margin-right: 8px;
          margin-left: -19px; }
        body.index .box-pickup__news .heading__category li:nth-child(5) img {
          width: 19px;
          margin-right: 6px;
          margin-left: -3px; } }
    body.index .box-pickup__news .content {
      margin-top: 2px;
      max-width: 810px;
      width: calc(100% - 200px);
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__news .content {
          margin-top: 20px;
          max-width: none;
          width: 100%; } }
      @media only screen and (min-width: 768px) {
        body.index .box-pickup__news .content__list {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%; } }
      body.index .box-pickup__news .content__list:not(:first-child) {
        display: none; }
      body.index .box-pickup__news .content__list .item {
        padding: 0 0 12px; }
        @media only screen and (min-width: 768px) {
          body.index .box-pickup__news .content__list .item {
            padding: 20px 0 20px;
            border-top: solid 1px #1C4E6A; }
            body.index .box-pickup__news .content__list .item:last-child {
              border-bottom: solid 1px #1C4E6A; } }
        body.index .box-pickup__news .content__list .item a {
          width: 100%;
          display: flex;
          flex-wrap: nowrap;
          justify-content: space-between; }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__news .content__list .item a {
              align-items: center; } }

@media only screen and (min-width: 768px) and (min-width: 768px) {
  body.index .box-pickup__news .content__list .item a:hover {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    body.index .box-pickup__news .content__list .item a:hover:hover {
      opacity: .7; } }
        body.index .box-pickup__news .content__list .item .imager {
          border-radius: 100%;
          height: 90px;
          width: 90px;
          overflow: hidden; }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__news .content__list .item .imager {
              height: 80px;
              width: 80px; } }
        body.index .box-pickup__news .content__list .item .text {
          width: calc(100% - 120px); }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__news .content__list .item .text {
              width: calc(100% - 100px); } }
        body.index .box-pickup__news .content__list .item .info {
          display: flex;
          flex-wrap: wrap; }
          @media only screen and (min-width: 768px) {
            body.index .box-pickup__news .content__list .item .info {
              padding-top: 13px; } }
          body.index .box-pickup__news .content__list .item .info__date {
            padding-top: 5px;
            width: 88px;
            color: #0095a1;
            line-height: 1;
            font-weight: 400;
            font-family: "Oswald", sans-serif;
            letter-spacing: 0.05em;
            font-size: 15px;
            font-size: 1.5rem; }
            @media only screen and (max-width: 767px) {
              body.index .box-pickup__news .content__list .item .info__date {
                width: 65px;
                font-size: 12px;
                font-size: 1.2rem; } }
          body.index .box-pickup__news .content__list .item .info__cate {
            width: calc(100% - 88px); }
            @media only screen and (max-width: 767px) {
              body.index .box-pickup__news .content__list .item .info__cate {
                width: calc(100% - 65px); } }
            body.index .box-pickup__news .content__list .item .info__cate span {
              vertical-align: top;
              border-radius: 5px;
              background: linear-gradient(#f1faff 0%, #f1faff 0.71%, #eaf9fb 51.35%, #e3f7f6 100%);
              color: #0095a1;
              letter-spacing: 0.025em;
              padding: 7px 0;
              text-align: center;
              line-height: 1;
              font-size: 11px;
              font-size: 1.1rem; }
              @media only screen and (min-width: 768px) {
                body.index .box-pickup__news .content__list .item .info__cate span {
                  display: inline-block;
                  margin-right: 5px;
                  min-width: 140px; } }
              @media only screen and (max-width: 767px) {
                body.index .box-pickup__news .content__list .item .info__cate span {
                  width: 100%;
                  border-radius: 4px;
                  margin-bottom: 3px;
                  display: block;
                  font-size: 10px;
                  font-size: 1rem;
                  padding: 5px 5px; } }
        body.index .box-pickup__news .content__list .item .title {
          margin-top: 13px;
          color: #1C4E6A;
          text-align: left;
          letter-spacing: 0.05em;
          line-height: 22px;
          font-weight: 500;
          overflow: hidden;
          -webkit-line-clamp: 1;
          display: -webkit-box;
          -webkit-box-orient: vertical;
          -o-text-overflow: ellipsis;
          text-overflow: ellipsis;
          white-space: normal;
          font-size: 16px;
          font-size: 1.6rem; }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__news .content__list .item .title {
              margin-top: 7px;
              -webkit-line-clamp: 2;
              font-size: 14px;
              font-size: 1.4rem; } }
    body.index .box-pickup__news .btn {
      margin-top: 40px;
      width: 100%;
      max-width: 100%; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__news .btn {
          margin-top: 2px;
          width: 100%;
          justify-content: flex-start;
          padding-left: 25px;
          height: 50px;
          border-radius: 5px; } }
      body.index .box-pickup__news .btn span {
        font-size: 15px;
        font-size: 1.5rem; }
        @media only screen and (max-width: 767px) {
          body.index .box-pickup__news .btn span {
            font-size: 13px;
            font-size: 1.3rem; } }
        body.index .box-pickup__news .btn span:before {
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.41' height='10.829' viewBox='0 0 6.41 10.829'%3E%3Cpath id='arw' d='M774,2154.848l4,4-4,4' transform='translate(-772.586 -2153.433)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
          background-size: auto;
          width: 8px;
          height: 10px;
          right: 38px; }
          @media only screen and (max-width: 767px) {
            body.index .box-pickup__news .btn span:before {
              margin-top: 2px;
              right: 22px;
              width: 12px;
              height: 12px;
              background-size: 5px auto;
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.414' height='14.824' viewBox='0 0 8.414 14.824'%3E%3Cpath id='arw' d='M613.8,4548.4l6,6-6,6' transform='translate(-612.381 -4546.982)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A"); } }
  body.index .box-pickup__decor {
    opacity: 0.1;
    position: absolute;
    z-index: 1;
    top: 0;
    transform: translateY(100%);
    z-index: -1; }
    body.index .box-pickup__decor.decor-a {
      top: 52px;
      left: 0;
      width: 172px;
      animation-delay: 0.1s; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__decor.decor-a {
          top: -10px;
          width: 88px; } }
    body.index .box-pickup__decor.decor-b {
      top: 78px;
      right: 0;
      animation-delay: 0.8s;
      width: 230px; }
      @media only screen and (max-width: 767px) {
        body.index .box-pickup__decor.decor-b {
          top: 3px;
          width: 118px; } }

@media only screen and (min-width: 768px) {
  body.index .box-links {
    max-width: 1280px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; } }

body.index .box-links__bnr {
  display: block; }
  body.index .box-links__bnr .img {
    border-radius: 5px;
    overflow: hidden; }
    body.index .box-links__bnr .img img {
      width: 100%;
      transition: all .3s; }
  body.index .box-links__bnr .heading {
    position: relative;
    margin: 35px 0 19px;
    padding-left: 100px;
    min-height: 50px;
    display: flex;
    align-items: center; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.index .box-links__bnr .heading {
        padding-left: 80px; } }
    @media only screen and (max-width: 767px) {
      body.index .box-links__bnr .heading {
        margin: 16px 0 3px;
        padding-left: 40px; } }
    body.index .box-links__bnr .heading__title {
      letter-spacing: 0.15em;
      line-height: 32px;
      font-weight: 500;
      font-size: 24px;
      font-size: 2.4rem; }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .box-links__bnr .heading__title {
          letter-spacing: 0.1em;
          font-size: 22px;
          font-size: 2.2rem; } }
      @media only screen and (max-width: 767px) {
        body.index .box-links__bnr .heading__title {
          line-height: 28px;
          font-size: 20px;
          font-size: 2rem; } }
    body.index .box-links__bnr .heading__arrow {
      position: absolute;
      border-radius: 50%;
      left: 30px;
      top: 50%;
      transform: translateY(-50%);
      width: 50px;
      height: 50px;
      background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-size: 200% auto;
      transition: 0.5s; }
      body.index .box-links__bnr .heading__arrowa:hover {
        background-position: right center; }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .box-links__bnr .heading__arrow {
          left: 15px; } }
      @media only screen and (max-width: 767px) {
        body.index .box-links__bnr .heading__arrow {
          left: 0px;
          width: 30px;
          height: 30px; } }
      body.index .box-links__bnr .heading__arrow:before {
        content: '';
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8.408' height='14.816' viewBox='0 0 8.408 14.816'%3E%3Cpath d='M0,5.994,5.994,0l5.994,5.994' transform='translate(7.408 1.414) rotate(90)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
        background-position: center;
        background-repeat: no-repeat;
        background-size: auto; }
  body.index .box-links__bnr .desc {
    padding: 0 30px;
    letter-spacing: 0.05em;
    line-height: 24px;
    font-weight: 500;
    text-align: left;
    font-size: 15px;
    font-size: 1.5rem; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.index .box-links__bnr .desc {
        padding: 0 15px; } }
    @media only screen and (max-width: 767px) {
      body.index .box-links__bnr .desc {
        padding: 0;
        line-height: 23px;
        font-size: 14px;
        font-size: 1.4rem; } }
  @media only screen and (min-width: 768px) {
    body.index .box-links__bnr.bnr-floormap .desc {
      padding-right: 45px; } }
  @media only screen and (min-width: 768px) {
    body.index .box-links__bnr:hover .img img {
      transform: scale(105%); } }

body.index .box-links-1 {
  padding: 100px 30px 89px; }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    body.index .box-links-1 {
      padding: 70px 20px 59px; } }
  @media only screen and (max-width: 767px) {
    body.index .box-links-1 {
      padding: 50px 25px 53px; } }
  @media only screen and (min-width: 768px) {
    body.index .box-links-1 .box-links__bnr {
      width: calc(50% - 15px); } }
  @media only screen and (max-width: 767px) {
    body.index .box-links-1 .box-links__bnr:not(:last-child) {
      margin-bottom: 44px; } }

body.index .box-links-2 {
  padding: 110px 30px 62px; }
  @media only screen and (min-width: 768px) and (max-width: 1000px) {
    body.index .box-links-2 {
      padding: 90px 20px 52px; } }
  @media only screen and (max-width: 767px) {
    body.index .box-links-2 {
      padding: 65px 25px 45px; } }
  body.index .box-links-2 .box-links__bnr {
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.index .box-links-2 .box-links__bnr {
        width: calc(100% / 3 - 20px); } }
    @media only screen and (max-width: 767px) {
      body.index .box-links-2 .box-links__bnr:not(:last-child) {
        margin-bottom: 42px; } }
    body.index .box-links-2 .box-links__bnr .heading {
      margin: 30px 0 19px;
      padding-left: 90px; }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .box-links-2 .box-links__bnr .heading {
          padding-left: 70px; } }
      @media only screen and (max-width: 767px) {
        body.index .box-links-2 .box-links__bnr .heading {
          margin: 15px 0 5px;
          padding-left: 40px; } }
      body.index .box-links-2 .box-links__bnr .heading__arrow {
        left: 20px; }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          body.index .box-links-2 .box-links__bnr .heading__arrow {
            left: 0px; } }
        @media only screen and (max-width: 767px) {
          body.index .box-links-2 .box-links__bnr .heading__arrow {
            left: 0; } }
    body.index .box-links-2 .box-links__bnr .desc {
      padding: 0 20px; }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .box-links-2 .box-links__bnr .desc {
          padding: 0; } }
      @media only screen and (max-width: 767px) {
        body.index .box-links-2 .box-links__bnr .desc {
          padding: 0; } }

body.index .box-shop {
  background: #e5fbf3;
  background: -webkit-linear-gradient(left, #e5fbf3 0%, #e9f4ff 100%);
  background: -o-linear-gradient(left, #e5fbf3 0%, #e9f4ff 100%);
  background: linear-gradient(to right, #e5fbf3 0%, #e9f4ff 100%); }
  @media only screen and (min-width: 768px) {
    body.index .box-shop {
      height: 25vw;
      min-height: 480px; } }
  body.index .box-shop__inner {
    margin: 0 auto;
    position: relative; }
    @media only screen and (min-width: 768px) {
      body.index .box-shop__inner {
        height: 100%;
        display: flex;
        align-items: center; } }
  body.index .box-shop__content {
    padding: 36px 25px 50px; }
    @media only screen and (min-width: 768px) {
      body.index .box-shop__content {
        max-width: 560px;
        width: 43%;
        margin: 0 auto;
        padding: 70px 0 87px; } }
  body.index .box-shop__title {
    font-weight: 300;
    letter-spacing: 0.15em;
    line-height: 54px;
    text-align: center;
    color: #1c4e6a;
    margin-bottom: 40px;
    font-family: "Montserrat", sans-serif;
    font-size: 44px;
    font-size: 4.4rem; }
    @media only screen and (max-width: 767px) {
      body.index .box-shop__title {
        text-align: center;
        margin-bottom: 21px;
        line-height: 35px;
        font-size: 30px;
        font-size: 3rem; } }
  body.index .box-shop__btns {
    width: 100%;
    max-width: 460px;
    margin: 0 auto; }
    body.index .box-shop__btns li:not(:last-child) {
      margin-bottom: 10px; }
      @media only screen and (min-width: 768px) {
        body.index .box-shop__btns li:not(:last-child) {
          margin-bottom: 15px; } }
    body.index .box-shop__btns a {
      padding: 0 70px 0 30px;
      width: 100%;
      height: 55px;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      text-align: left;
      color: #fff;
      border-radius: 100px;
      position: relative;
      background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
      background-size: 200% auto;
      transition: 0.5s; }
      body.index .box-shop__btns aa:hover {
        background-position: right center; }
      @media only screen and (min-width: 768px) {
        body.index .box-shop__btns a {
          padding: 0 70px 0 50px;
          height: 80px; }
          body.index .box-shop__btns a:hover {
            background-position: right center; } }
    body.index .box-shop__btns .text {
      letter-spacing: 0.15em;
      line-height: 20px;
      font-weight: 500;
      font-size: 18px;
      font-size: 1.8rem; }
      @media only screen and (max-width: 767px) {
        body.index .box-shop__btns .text {
          font-size: 14px;
          font-size: 1.4rem; } }
    body.index .box-shop__btns .arrow {
      position: absolute;
      width: 40px;
      height: 40px;
      background: #fff;
      border-radius: 50%;
      top: 50%;
      transform: translateY(-50%);
      right: 20px; }
      @media only screen and (max-width: 767px) {
        body.index .box-shop__btns .arrow {
          width: 30px;
          height: 30px;
          right: 12px; } }
      body.index .box-shop__btns .arrow:before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-position: center;
        background-repeat: no-repeat;
        background-size: auto; }
      body.index .box-shop__btns .arrow-right:before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.207' height='11.414' viewBox='0 0 6.207 11.414'%3E%3Cpath id='arw' d='M0,5,5,0l5,5' transform='translate(5.707 0.707) rotate(90)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/svg%3E%0A"); }
      body.index .box-shop__btns .arrow-blank:before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cg id='icn' transform='translate(-371.035 -348.905)'%3E%3Cpath id='Path_203' data-name='Path 203' d='M376.435,351.105v-1.2h-5.4v10.8h10.8v-5.4h-1.2v4.2h-8.4v-8.4Z' transform='translate(0 0.2)' fill='%231c4e6a'/%3E%3Cpath id='Path_204' data-name='Path 204' d='M382.105,353.061v-4.156h-4.2v1.2h2.152l-4.376,4.376.848.848,4.376-4.376v2.108Z' transform='translate(0.929 0)' fill='%231c4e6a'/%3E%3C/g%3E%3C/svg%3E%0A"); }
        @media only screen and (max-width: 767px) {
          body.index .box-shop__btns .arrow-blank:before {
            background-size: 10px auto; } }
  @media only screen and (max-width: 767px) {
    body.index .box-shop__decor img {
      width: 100%; } }
  @media only screen and (min-width: 768px) {
    body.index .box-shop__decor {
      position: absolute;
      top: 0;
      height: 100%;
      width: 25%; }
      body.index .box-shop__decor img {
        width: 100%;
        height: 100%;
        object-fit: cover; }
      body.index .box-shop__decor.decor-1 {
        left: 0; }
      body.index .box-shop__decor.decor-2 {
        right: 0; } }

body.index .box-btns {
  padding: 90px 20px 50px; }
  @media only screen and (max-width: 767px) {
    body.index .box-btns {
      padding: 55px 25px 50px; } }
  body.index .box-btns ul {
    list-style: none; }
    @media only screen and (min-width: 768px) {
      body.index .box-btns ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        max-width: 1080px;
        margin: 0 auto; } }
  body.index .box-btns li {
    list-style: none;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.index .box-btns li {
        width: calc(100% / 3 - 20px); } }
    @media only screen and (max-width: 767px) {
      body.index .box-btns li:not(:last-child) {
        margin-bottom: 10px; } }
  body.index .box-btns a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 150px;
    border-radius: 8px;
    overflow: hidden; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.index .box-btns a {
        height: 120px; } }
    @media only screen and (max-width: 767px) {
      body.index .box-btns a {
        height: 110px;
        border-radius: 5px; } }
    @media only screen and (min-width: 768px) {
      body.index .box-btns a:hover .img img {
        transform: scale(1.1); } }
  body.index .box-btns .text {
    padding-bottom: 38px;
    position: relative;
    z-index: 2;
    letter-spacing: 0.15em;
    line-height: 36px;
    text-align: center;
    color: #fff;
    font-weight: 500;
    font-size: 22px;
    font-size: 2.2rem; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.index .box-btns .text {
        letter-spacing: .1em;
        font-size: 20px;
        font-size: 2rem; } }
    @media only screen and (max-width: 767px) {
      body.index .box-btns .text {
        font-size: 18px;
        font-size: 1.8rem; } }
  body.index .box-btns .arrow {
    position: absolute;
    z-index: 2;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #fff;
    left: 50%;
    bottom: 34px;
    transform: translateX(-50%); }
    @media only screen and (max-width: 767px) {
      body.index .box-btns .arrow {
        bottom: 22px; } }
    body.index .box-btns .arrow:before {
      content: '';
      width: 100%;
      height: 100%;
      position: absolute;
      left: 0;
      top: 0;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='5.207' height='9.414' viewBox='0 0 5.207 9.414'%3E%3Cpath id='arw' d='M0,4,4,0,8,4' transform='translate(4.707 0.707) rotate(90)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-linejoin='round' stroke-width='1'/%3E%3C/svg%3E%0A");
      background-position: center;
      background-repeat: no-repeat;
      background-size: auto; }
  body.index .box-btns .img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden; }
    body.index .box-btns .img img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform .3s;
      will-change: transform; }

body.index .box-column {
  position: relative;
  padding: 0 25px 0; }
  @media only screen and (min-width: 768px) {
    body.index .box-column {
      padding: 29px 0 0; } }
  @media only screen and (min-width: 768px) {
    body.index .box-column:before, body.index .box-column:after {
      content: '';
      position: absolute;
      z-index: 2;
      background: #FFF;
      opacity: .7;
      width: calc((100% - 1060px) / 2);
      height: 100%;
      top: 0; } }
  @media only screen and (min-width: 768px) and (max-width: 1280px) {
    body.index .box-column:before, body.index .box-column:after {
      width: 76px; } }
  body.index .box-column:before {
    left: 0;
    background: linear-gradient(90deg, white 0%, white 80%, rgba(255, 255, 255, 0) 100%); }
  body.index .box-column:after {
    right: 0;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, white 20%, white 100%); }
  body.index .box-column__heading {
    margin-bottom: 46px; }
    @media only screen and (max-width: 767px) {
      body.index .box-column__heading {
        margin-bottom: 27px; } }
    body.index .box-column__heading .ja {
      margin-bottom: 9px;
      font-weight: 500;
      letter-spacing: 0.05em;
      line-height: 24px;
      text-align: center;
      color: #1c4e6a;
      font-size: 15px;
      font-size: 1.5rem; }
      @media only screen and (max-width: 767px) {
        body.index .box-column__heading .ja {
          margin-bottom: 8px;
          line-height: 20px;
          font-size: 13px;
          font-size: 1.3rem; } }
    body.index .box-column__heading .en {
      font-weight: 500;
      letter-spacing: 0.15em;
      line-height: 30px;
      text-align: center;
      color: #1c4e6a;
      font-family: "Montserrat", sans-serif;
      font-size: 34px;
      font-size: 3.4rem; }
      @media only screen and (max-width: 767px) {
        body.index .box-column__heading .en {
          font-size: 30px;
          font-size: 3rem; } }
  @media only screen and (min-width: 768px) {
    body.index .box-column__list {
      display: flex;
      flex-wrap: wrap;
      max-width: 1080px;
      margin: 0 auto;
      width: calc(100% - 152px); } }
  body.index .box-column__list .slick-list {
    overflow: visible; }
  body.index .box-column__list .slick-arrow {
    position: absolute;
    width: 60px;
    height: 60px;
    border: none;
    background-size: cover;
    background-color: transparent;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 3;
    top: 83px;
    cursor: pointer;
    text-indent: -9999px; }
  body.index .box-column__list .slick-prev {
    background-image: url("../images/common/btn_arwl.svg");
    left: -60px; }
  body.index .box-column__list .slick-next {
    background-image: url("../images/common/btn_arwr.svg");
    right: -60px; }
  body.index .box-column__list .slick-slide {
    max-width: 270px;
    width: 20.85vw; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.index .box-column__list .slick-slide {
        width: 26.5vw; } }
  body.index .box-column__list .item {
    padding: 0 15px; }
    @media only screen and (max-width: 767px) {
      body.index .box-column__list .item {
        padding: 0; }
        body.index .box-column__list .item:not(:last-child) {
          margin-bottom: 15px; }
        body.index .box-column__list .item:not(:nth-child(-n+3)) {
          display: none; } }
    @media only screen and (max-width: 767px) {
      body.index .box-column__list .item a {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center; } }

@media only screen and (min-width: 768px) and (min-width: 768px) {
  body.index .box-column__list .item a:hover {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    body.index .box-column__list .item a:hover:hover {
      opacity: .7; } }
    body.index .box-column__list .item .imager {
      width: 80px;
      height: 80px;
      border-radius: 100%;
      overflow: hidden; }
      @media only screen and (min-width: 768px) {
        body.index .box-column__list .item .imager {
          width: 100%;
          max-width: 220px;
          height: 18.063vw;
          max-height: 220px;
          margin: 0 auto; } }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .box-column__list .item .imager {
          height: 22.94vw; } }
    body.index .box-column__list .item .text {
      position: relative;
      display: flex;
      flex-wrap: wrap; }
      @media only screen and (min-width: 768px) {
        body.index .box-column__list .item .text {
          padding: 32px 0 0;
          justify-content: space-between; } }
      @media only screen and (max-width: 767px) {
        body.index .box-column__list .item .text {
          width: calc(100% - 100px); } }
      body.index .box-column__list .item .text__date {
        width: 77px;
        white-space: nowrap;
        font-weight: normal;
        letter-spacing: 0.05em;
        line-height: 22px;
        text-align: center;
        color: #0095a1;
        font-family: "Oswald", sans-serif;
        font-size: 12px;
        font-size: 1.2rem; }
        @media only screen and (min-width: 768px) {
          body.index .box-column__list .item .text__date {
            text-align: center;
            width: 45px;
            order: 1;
            font-size: 18px;
            font-size: 1.8rem; } }
      body.index .box-column__list .item .text__ttl {
        margin-top: 6px;
        width: 100%;
        font-weight: 500;
        letter-spacing: 0.05em;
        line-height: 22px;
        text-align: left;
        color: #1c4e6a;
        overflow: hidden;
        -webkit-line-clamp: 2;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -o-text-overflow: ellipsis;
        text-overflow: ellipsis;
        white-space: normal;
        font-size: 14px;
        font-size: 1.4rem; }
        @media only screen and (min-width: 768px) {
          body.index .box-column__list .item .text__ttl {
            margin-top: 0px;
            order: 2;
            width: calc(100% - 59px);
            font-size: 16px;
            font-size: 1.6rem; } }
      body.index .box-column__list .item .text__cate {
        width: 100px; }
        @media only screen and (max-width: 767px) {
          body.index .box-column__list .item .text__cate {
            line-height: 1; } }
        @media only screen and (min-width: 768px) {
          body.index .box-column__list .item .text__cate {
            order: 3;
            margin-top: 20px;
            width: 100%; } }
        body.index .box-column__list .item .text__cate span {
          border-radius: 5px;
          background: linear-gradient(#f1faff 0%, #f1faff 0.71%, #eaf9fb 51.35%, #e3f7f6 100%);
          color: #0095a1;
          letter-spacing: 0.05em;
          padding: 6px 0;
          margin-bottom: 5px;
          text-align: center;
          display: block;
          width: 100%;
          line-height: 1;
          font-size: 13px;
          font-size: 1.3rem; }
          @media only screen and (max-width: 767px) {
            body.index .box-column__list .item .text__cate span {
              border-radius: 4px;
              font-size: 10px;
              font-size: 1rem;
              padding: 5px 5px;
              margin-bottom: 2px;
              width: auto; }
              body.index .box-column__list .item .text__cate span:last-child {
                margin-right: auto; } }
  body.index .box-column .btn {
    width: 60%;
    max-width: 1040px;
    margin: 55px auto 0; }
    @media only screen and (max-width: 767px) {
      body.index .box-column .btn {
        margin-top: 40px;
        width: 100%;
        justify-content: flex-start;
        padding-left: 25px;
        height: 50px;
        border-radius: 5px; } }
    body.index .box-column .btn span {
      font-size: 15px;
      font-size: 1.5rem; }
      @media only screen and (max-width: 767px) {
        body.index .box-column .btn span {
          font-size: 13px;
          font-size: 1.3rem; } }
      body.index .box-column .btn span:before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6.41' height='10.829' viewBox='0 0 6.41 10.829'%3E%3Cpath id='arw' d='M774,2154.848l4,4-4,4' transform='translate(-772.586 -2153.433)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
        background-size: auto;
        width: 8px;
        height: 10px;
        right: 38px; }
        @media only screen and (max-width: 767px) {
          body.index .box-column .btn span:before {
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.414' height='22.828' viewBox='0 0 12.414 22.828'%3E%3Cpath id='arw' d='M613.8,4548.4l10,10-10,10' transform='translate(-612.381 -4546.982)' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'/%3E%3C/svg%3E%0A");
            width: 10px;
            height: 12px;
            right: 21px;
            background-size: 7px auto; } }

body.index .box-follow {
  padding: 137px 0 100px;
  position: relative;
  background: #e5fbf3;
  background: -webkit-linear-gradient(left, #e5fbf3 0%, #e9f4ff 100%);
  background: -o-linear-gradient(left, #e5fbf3 0%, #e9f4ff 100%);
  background: linear-gradient(to right, #e5fbf3 0%, #e9f4ff 100%); }
  @media only screen and (max-width: 767px) {
    body.index .box-follow {
      padding: 59px 0 40px; } }
  body.index .box-follow:before, body.index .box-follow:after {
    content: '';
    position: absolute; }
  body.index .box-follow:before {
    top: -1px;
    z-index: 1;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.index .box-follow:before {
        height: 70px;
        background: url(../images/top/bg_follow_top.png) top center repeat;
        background-size: auto 70px; } }
    @media only screen and (max-width: 767px) {
      body.index .box-follow:before {
        top: -7px;
        height: 20px;
        background: url(../images/top/bg_follow_top.png) top center repeat;
        background-size: auto 20px; } }
  body.index .box-follow:after {
    z-index: 0;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      body.index .box-follow:after {
        background: url(../images/top/bg_follow.png) 0 0 repeat;
        background-size: 100px auto; } }
    @media only screen and (max-width: 767px) {
      body.index .box-follow:after {
        background: url(../images/top/bg_follow_sp.png) 0 0 repeat;
        background-size: 50px auto; } }
  body.index .box-follow__heading {
    position: relative;
    z-index: 2;
    margin-bottom: 40px; }
    @media only screen and (max-width: 767px) {
      body.index .box-follow__heading {
        margin-bottom: 25px; } }
    body.index .box-follow__heading .ja {
      text-align: center;
      margin-bottom: 26px; }
      @media only screen and (max-width: 767px) {
        body.index .box-follow__heading .ja {
          margin-bottom: 11px; } }
      body.index .box-follow__heading .ja span {
        padding: 6px 0 5px;
        display: inline-block;
        width: 400px;
        height: 36px;
        letter-spacing: 0.05em;
        line-height: 24px;
        text-align: center;
        color: #fff;
        font-weight: 500;
        font-size: 15px;
        font-size: 1.5rem; }
        @media only screen and (min-width: 768px) {
          body.index .box-follow__heading .ja span {
            background: url(../images/top/bg_follow_heading.svg) center center no-repeat; } }
        @media only screen and (max-width: 767px) {
          body.index .box-follow__heading .ja span {
            padding: 3px 0 3px;
            width: 295px;
            height: 30px;
            background: url(../images/top/bg_follow_heading_sp.svg) center center no-repeat;
            background-size: 100% auto;
            font-size: 12px;
            font-size: 1.2rem; } }
    body.index .box-follow__heading .en {
      text-align: center; }
      body.index .box-follow__heading .en span {
        padding: 0 47px;
        position: relative;
        display: inline-block;
        font-weight: 500;
        letter-spacing: 0.15em;
        line-height: 30px;
        text-align: center;
        color: #1c4e6a;
        font-family: "Montserrat", sans-serif;
        font-size: 34px;
        font-size: 3.4rem; }
        @media only screen and (max-width: 767px) {
          body.index .box-follow__heading .en span {
            padding: 0 37px;
            font-size: 25px;
            font-size: 2.5rem; } }
        body.index .box-follow__heading .en span:before, body.index .box-follow__heading .en span:after {
          content: '';
          position: absolute;
          width: 23px;
          height: 26px;
          top: 0;
          background-position: center;
          background-repeat: no-repeat;
          background-size: auto; }
          @media only screen and (max-width: 767px) {
            body.index .box-follow__heading .en span:before, body.index .box-follow__heading .en span:after {
              width: 23px;
              height: 26px;
              background-size: 25px auto; } }
        body.index .box-follow__heading .en span:before {
          left: 0;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23.052' height='26.052' viewBox='0 0 23.052 26.052'%3E%3Cg transform='translate(1.026 1.026)'%3E%3Cline x1='14' y1='24' transform='translate(7)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='1.5'/%3E%3Cline x1='14' y1='24' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='1.5'/%3E%3C/g%3E%3C/svg%3E%0A"); }
          @media only screen and (max-width: 767px) {
            body.index .box-follow__heading .en span:before {
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='47.14' height='40.807' viewBox='0 0 47.14 40.807'%3E%3Cg id='bdr' transform='translate(1.403 -0.597)'%3E%3Cline id='Line_18' data-name='Line 18' x1='29.556' y1='38' transform='translate(14.778 2)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='2'/%3E%3Cline id='Line_19' data-name='Line 19' x1='29.556' y1='38' transform='translate(0 2)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E%0A"); } }
        body.index .box-follow__heading .en span:after {
          right: 0;
          background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='23.052' height='26.052' viewBox='0 0 23.052 26.052'%3E%3Cg transform='translate(-919.974 -1289.974)'%3E%3Cline y1='24' x2='14' transform='translate(921 1291)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='1.5'/%3E%3Cline y1='24' x2='14' transform='translate(928 1291)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='1.5'/%3E%3C/g%3E%3C/svg%3E%0A"); }
          @media only screen and (max-width: 767px) {
            body.index .box-follow__heading .en span:after {
              background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='47.14' height='40.807' viewBox='0 0 47.14 40.807'%3E%3Cg id='bdr' transform='translate(-919.597 -1289.597)'%3E%3Cline id='Line_18' data-name='Line 18' y1='38' x2='29.556' transform='translate(921 1291)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='2'/%3E%3Cline id='Line_19' data-name='Line 19' y1='38' x2='29.556' transform='translate(935.778 1291)' fill='none' stroke='%231c4e6a' stroke-linecap='round' stroke-width='2'/%3E%3C/g%3E%3C/svg%3E%0A"); } }
  body.index .box-follow__list {
    position: relative;
    z-index: 2;
    max-width: 1280px;
    margin: 0 auto; }
    body.index .box-follow__list ul {
      margin: 0 25px;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      @media only screen and (min-width: 768px) {
        body.index .box-follow__list ul {
          width: 100%;
          max-width: calc(100% - 200px);
          margin: 0 auto;
          flex-wrap: nowrap; } }
    body.index .box-follow__list li {
      width: calc(100% / 4 - 15px); }
      @media only screen and (max-width: 767px) {
        body.index .box-follow__list li {
          width: calc(50% - 7px);
          margin-bottom: 15px; }
          body.index .box-follow__list li.item-facebook img {
            width: 30px; }
          body.index .box-follow__list li.item-instagram img {
            width: 28px; }
          body.index .box-follow__list li.item-youtube img {
            width: 34px; }
          body.index .box-follow__list li.item-x img {
            width: 23px; } }
    body.index .box-follow__list a {
      width: 100%;
      height: 100px;
      border-radius: 8px;
      background: #fff;
      box-shadow: 10px 10px 40px rgba(0, 149, 161, 0.1);
      display: flex;
      align-items: center;
      justify-content: center; }
      @media only screen and (max-width: 767px) {
        body.index .box-follow__list a {
          height: 70px;
          border-radius: 4px; } }

@media only screen and (min-width: 768px) and (min-width: 768px) {
  body.index .box-follow__list a:hover {
    cursor: pointer;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    body.index .box-follow__list a:hover:hover {
      opacity: .7; } }
  body.index .box-follow__decor {
    position: absolute;
    pointer-events: none; }
    body.index .box-follow__decor.decor-1 {
      top: -67px;
      left: 0; }
      @media only screen and (min-width: 768px) and (max-width: 1200px) {
        body.index .box-follow__decor.decor-1 {
          left: -40px; } }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .box-follow__decor.decor-1 {
          top: -47px;
          left: -40px; } }
      @media only screen and (max-width: 767px) {
        body.index .box-follow__decor.decor-1 {
          top: auto;
          width: 140px;
          left: -25px;
          bottom: -50px; } }
    body.index .box-follow__decor.decor-2 {
      top: -78px;
      right: 20px; }
      @media only screen and (min-width: 768px) and (max-width: 1000px) {
        body.index .box-follow__decor.decor-2 {
          right: 0; } }
      @media only screen and (max-width: 767px) {
        body.index .box-follow__decor.decor-2 {
          top: auto;
          width: 84px;
          right: -8px;
          bottom: -76px; } }

body.index main section#schedulle {
  padding: 70px 0 110px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.index main section#schedulle {
      padding: 200px 0 69px; } }
  body.index main section#schedulle .detail {
    opacity: 0.1;
    position: absolute;
    bottom: 0;
    transform: translateY(100%);
    z-index: -1; }
    body.index main section#schedulle .detail.deatil-a {
      left: 0;
      width: 172px;
      animation-delay: 0.1s; }
      @media only screen and (max-width: 767px) {
        body.index main section#schedulle .detail.deatil-a {
          width: 88px; } }
    body.index main section#schedulle .detail.deatil-b {
      right: 0;
      animation-delay: 0.8s;
      width: 230px; }
      @media only screen and (max-width: 767px) {
        body.index main section#schedulle .detail.deatil-b {
          width: 118px; } }
  body.index main section#schedulle .inner {
    position: relative;
    text-align: center;
    z-index: 1; }
    @media only screen and (max-width: 767px) {
      body.index main section#schedulle .inner {
        padding: 0 25px; } }
    @media only screen and (max-width: 767px) {
      body.index main section#schedulle .inner .schedulle-navigation {
        margin-top: 24px; } }
    body.index main section#schedulle .inner .schedulle-navigation .nav-bt {
      border: 1px solid #d9e7ef;
      border-radius: 5px;
      display: block;
      font-size: 14px;
      font-size: 1.4rem;
      padding-top: 6px;
      position: absolute;
      top: 0;
      transition: all 0.3s;
      height: 30px;
      width: 80px;
      z-index: 2; }
      @media only screen and (min-width: 768px) {
        body.index main section#schedulle .inner .schedulle-navigation .nav-bt:hover {
          box-shadow: 0 0 15px #cce5ef; } }
      @media only screen and (max-width: 767px) {
        body.index main section#schedulle .inner .schedulle-navigation .nav-bt {
          background-color: white;
          position: relative;
          font-size: 13px;
          font-size: 1.3rem;
          width: 100%; } }
      body.index main section#schedulle .inner .schedulle-navigation .nav-bt:before {
        background-size: 4px 8px;
        background-repeat: no-repeat;
        content: "";
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        height: 8px;
        width: 4px; }
        @media only screen and (max-width: 767px) {
          body.index main section#schedulle .inner .schedulle-navigation .nav-bt:before {
            background-size: 6px 3px;
            height: 3px;
            width: 6px; } }
      body.index main section#schedulle .inner .schedulle-navigation .nav-bt.prev {
        left: 30px;
        padding-left: 20px; }
        @media only screen and (max-width: 767px) {
          body.index main section#schedulle .inner .schedulle-navigation .nav-bt.prev {
            padding-left: 0;
            left: 0; } }
        body.index main section#schedulle .inner .schedulle-navigation .nav-bt.prev:before {
          background-image: url("../images/common/arw_blue_left.png");
          left: 14px; }
          @media only screen and (max-width: 767px) {
            body.index main section#schedulle .inner .schedulle-navigation .nav-bt.prev:before {
              background-image: url("../images/common/arw_blue_up.png");
              left: auto;
              right: 14px; } }
      body.index main section#schedulle .inner .schedulle-navigation .nav-bt.next {
        right: 30px;
        padding-right: 20px; }
        @media only screen and (max-width: 767px) {
          body.index main section#schedulle .inner .schedulle-navigation .nav-bt.next {
            padding-right: 0;
            right: 0; } }
        body.index main section#schedulle .inner .schedulle-navigation .nav-bt.next:before {
          background-image: url("../images/common/arw_blue_right.png");
          right: 14px; }
          @media only screen and (max-width: 767px) {
            body.index main section#schedulle .inner .schedulle-navigation .nav-bt.next:before {
              background-image: url("../images/common/arw_blue_down.png"); } }
    body.index main section#schedulle .inner .schedulle-table-top-wrap {
      border: 1px solid #d9e7ef;
      border-radius: 5px;
      margin-top: 24px;
      overflow: hidden; }
      @media only screen and (max-width: 767px) {
        body.index main section#schedulle .inner .schedulle-table-top-wrap {
          margin: 10px 0; } }
    body.index main section#schedulle .inner .schedulle-table-top {
      background-color: white;
      color: #1c4e6a;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.index main section#schedulle .inner .schedulle-table-top tr {
          border-top: 1px solid #d9e7ef; }
          body.index main section#schedulle .inner .schedulle-table-top tr:first-child {
            border-top: none; } }
      body.index main section#schedulle .inner .schedulle-table-top .day-header {
        background-color: #f7fcfe;
        border-right: 1px solid #d9e7ef;
        text-align: center;
        height: 39px; }
        body.index main section#schedulle .inner .schedulle-table-top .day-header:last-child {
          border-right: none; }
        @media only screen and (max-width: 767px) {
          body.index main section#schedulle .inner .schedulle-table-top .day-header {
            height: 50px;
            width: 90px; } }
        body.index main section#schedulle .inner .schedulle-table-top .day-header .big {
          font-size: 16px;
          font-size: 1.6rem;
          font-weight: 500;
          font-family: "Oswald", sans-serif;
          padding-right: 6px; }
          @media only screen and (max-width: 767px) {
            body.index main section#schedulle .inner .schedulle-table-top .day-header .big {
              font-size: 18px;
              font-size: 1.8rem;
              padding-right: 6px; } }
        body.index main section#schedulle .inner .schedulle-table-top .day-header .sml {
          font-size: 12px;
          font-size: 1.2rem;
          font-weight: bold;
          position: relative;
          top: -2px; }
          @media only screen and (max-width: 767px) {
            body.index main section#schedulle .inner .schedulle-table-top .day-header .sml {
              font-size: 11px;
              font-size: 1.1rem; } }
        body.index main section#schedulle .inner .schedulle-table-top .day-header.today {
          color: #2794eb; }
        body.index main section#schedulle .inner .schedulle-table-top .day-header.yasumi {
          color: #e43030; }
      body.index main section#schedulle .inner .schedulle-table-top .day-content {
        border-right: 1px solid #d9e7ef;
        color: #1c4e6a;
        text-align: center;
        height: 89px;
        width: calc((100%) / 7);
        /* IE11  */ }
        body.index main section#schedulle .inner .schedulle-table-top .day-content:last-child {
          border-right: none; }
        @media only screen and (max-width: 767px) {
          body.index main section#schedulle .inner .schedulle-table-top .day-content {
            border-right: none;
            vertical-align: middle;
            height: 50px;
            width: calc(100% - 90px); } }
        body.index main section#schedulle .inner .schedulle-table-top .day-content.yasumi {
          background-color: #f5f5f5; }
          body.index main section#schedulle .inner .schedulle-table-top .day-content.yasumi span.yasumi-text {
            color: #e43030;
            font-weight: 500;
            font-size: 18px;
            font-size: 1.8rem; }
        body.index main section#schedulle .inner .schedulle-table-top .day-content .time {
          font-size: 18px;
          font-size: 1.8rem;
          font-family: "Oswald", sans-serif; }
          @media only screen and (max-width: 767px) {
            body.index main section#schedulle .inner .schedulle-table-top .day-content .time {
              display: inline-block;
              position: relative;
              top: 4px;
              margin-right: 17px; } }
        body.index main section#schedulle .inner .schedulle-table-top .day-content .btn-time {
          border: 1px solid #d9e7ef;
          border-radius: 5px;
          display: block;
          font-size: 12px;
          font-size: 1.2rem;
          margin: 14px auto 0;
          padding-top: 4px;
          padding-left: 8px;
          position: relative;
          transition: all 0.3s;
          text-align: left;
          height: 23px;
          width: calc(100% - 20px); }
          @media only screen and (max-width: 767px) {
            body.index main section#schedulle .inner .schedulle-table-top .day-content .btn-time {
              display: inline-block;
              font-size: 11px;
              font-size: 1.1rem;
              margin: 0 auto;
              width: 108px; } }
          body.index main section#schedulle .inner .schedulle-table-top .day-content .btn-time:hover {
            box-shadow: 0 0 15px #cce5ef; }
          body.index main section#schedulle .inner .schedulle-table-top .day-content .btn-time:before {
            background-image: url("../images/common/arw_blue_right.png");
            background-size: 4px 6px;
            background-repeat: no-repeat;
            content: "";
            position: absolute;
            right: 8px;
            top: 50%;
            transform: translateY(-50%);
            height: 6px;
            width: 4px; }
            @media only screen and (max-width: 767px) {
              body.index main section#schedulle .inner .schedulle-table-top .day-content .btn-time:before {
                background-size: 3px 6px;
                right: 9px;
                height: 6px;
                width: 3px; } }
        body.index main section#schedulle .inner .schedulle-table-top .day-content _:lang(x)::-ms-backdrop,
        body.index main section#schedulle .inner .schedulle-table-top .day-content .btn-time {
          padding-top: 7px; }

body.index footer .footer__morebanners {
  display: block; }

body.kr table.schedulle-table tr .day-header {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body.kr .mv-ttl {
  letter-spacing: 0.3em !important; }

body.kr .fancy-ttl {
  letter-spacing: 0.1em !important; }

@media only screen and (max-width: 767px) {
  body.kr .fancy-detail-text {
    left: 0;
    right: 0; } }

@media only screen and (min-width: 768px) {
  body.kr .footer__lowerarea {
    padding-left: 150px; }
  body.kr .trip-advisor {
    right: -40px; } }

body.kr .footercomp__color--btn {
  white-space: nowrap; }

@media only screen and (min-width: 768px) {
  body.kr section#information .inner .duo-box {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; } }

@media only screen and (min-width: 768px) {
  body.kr section#information .inner .duo-box .btn:nth-child(1) {
    max-width: 450px;
    margin-right: 20px; }
  body.kr section#information .inner .duo-box .btn:nth-child(2) {
    max-width: 320px; } }

body.language .ttl-01 {
  font-weight: 600; }
  @media only screen and (max-width: 767px) {
    body.language .ttl-01:before {
      left: -28px; }
    body.language .ttl-01:after {
      right: -28px; } }

body.language .ttl-02 {
  font-weight: 500; }

body.language .notes {
  font-size: 12px;
  font-size: 1.2rem;
  letter-spacing: 0.025em;
  line-height: 1.83; }
  @media only screen and (max-width: 767px) {
    body.language .notes {
      margin-top: 15px;
      font-size: 11px;
      font-size: 1.1rem;
      line-height: 1.63; } }
  body.language .notes.ast-line {
    padding-left: 14px;
    position: relative; }
    @media only screen and (max-width: 767px) {
      body.language .notes.ast-line {
        padding-left: 13px; } }
    body.language .notes.ast-line .ast {
      position: absolute;
      top: 1px;
      left: 0; }
      @media only screen and (max-width: 767px) {
        body.language .notes.ast-line .ast {
          top: 0; } }

body.language .reg-text {
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 0.025em;
  line-height: 2.28;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    body.language .reg-text {
      line-height: 1.71; } }
  @media only screen and (min-width: 768px) {
    body.language .reg-text.align-left {
      text-align: left; }
    body.language .reg-text.align-center {
      text-align: center; } }

body.language .mv {
  background: #f1f1f1;
  position: relative;
  height: calc(100vh - 88px); }
  body.language .mv .mv-ttl {
    color: white;
    font-size: 45px;
    font-size: 4.5rem;
    font-weight: 500;
    line-height: 1.77;
    letter-spacing: 0.05em;
    position: absolute;
    left: 70px;
    bottom: 120px;
    z-index: 2;
    animation-delay: .5s;
    text-shadow: -1px 0px 11px rgba(28, 78, 106, 0.7);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
    @media only screen and (max-width: 767px) {
      body.language .mv .mv-ttl {
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.33;
        letter-spacing: 0.3em;
        left: 40px;
        bottom: 165px;
        text-shadow: 2px 2px 6px rgba(28, 78, 106, 0.41); } }
  body.language .mv .mv-slider {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative; }
    body.language .mv .mv-slider div:not(.mv-ttl) {
      height: 100%; }
    body.language .mv .mv-slider .slide {
      width: 100%; }
      body.language .mv .mv-slider .slide .img-slide-pc,
      body.language .mv .mv-slider .slide .img-slide-sp {
        position: absolute;
        z-index: 1;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%; }
      @media only screen and (max-width: 767px) {
        body.language .mv .mv-slider .slide .img-slide-pc {
          display: none; } }
      @media only screen and (min-width: 768px) {
        body.language .mv .mv-slider .slide .img-slide-sp {
          display: none; } }
    body.language .mv .mv-slider .slick-dots {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      padding-bottom: 10px; }
      body.language .mv .mv-slider .slick-dots li {
        background-color: white;
        width: 100px;
        height: 3px;
        margin-right: 5px;
        padding: 0; }
        body.language .mv .mv-slider .slick-dots li.slick-active {
          background-image: -owg-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -webkit-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -moz-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: -o-linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-image: linear-gradient(to right, #005ca1 0%, #0095a1 51%, #005ca1 100%);
          background-size: 200% auto;
          transition: 0.5s;
          position: relative; }
          body.language .mv .mv-slider .slick-dots li.slick-activea:hover {
            background-position: right center; }
          body.language .mv .mv-slider .slick-dots li.slick-active:after {
            background-color: white;
            content: "";
            position: absolute;
            right: 0;
            height: 100%;
            width: 100%;
            z-index: 2;
            animation-delay: .2s;
            animation-timing-function: linear;
            animation-name: loading;
            animation-duration: 4.5s; }

@keyframes loading {
  0% {
    width: 100%; }
  100% {
    width: 0; } }
        body.language .mv .mv-slider .slick-dots li:last-child {
          margin-right: 0; }
      body.language .mv .mv-slider .slick-dots button {
        width: 100%;
        height: 100%;
        background: none;
        border: none;
        outline: none;
        margin: 0;
        padding: 0;
        font-size: 0;
        border: none; }
  body.language .mv .mv-bar {
    position: absolute;
    right: 30px;
    bottom: 28px;
    width: 350px;
    z-index: 3; }
    @media only screen and (max-width: 767px) {
      body.language .mv .mv-bar {
        margin: 0 auto;
        right: 0;
        left: 0;
        bottom: -157px;
        width: 295px; } }
    @media only screen and (min-width: 768px) {
      body.language .mv .mv-bar .reservation-btn {
        margin-bottom: 16px; } }
    @media only screen and (max-width: 767px) {
      body.language .mv .mv-bar .reservation-btn {
        position: fixed;
        bottom: 15px;
        right: 70px;
        width: 150px;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.08); } }
    body.language .mv .mv-bar .time-box {
      background-color: rgba(255, 255, 255, 0.8);
      border-radius: 10px;
      padding: 24px 38px 25px;
      background: -webkit-linear-gradient(bottom, rgba(241, 250, 255, 0.8) 0%, rgba(226, 247, 246, 0.8) 100%);
      background: -o-linear-gradient(bottom, rgba(241, 250, 255, 0.8) 0%, rgba(226, 247, 246, 0.8) 100%);
      background: linear-gradient(to top, rgba(241, 250, 255, 0.8) 0%, rgba(226, 247, 246, 0.8) 100%);
      /* IE11  */ }
      @media only screen and (max-width: 767px) {
        body.language .mv .mv-bar .time-box {
          background: -webkit-linear-gradient(bottom, rgba(241, 250, 255, 0.9) 0%, rgba(226, 247, 246, 0.9) 100%);
          background: -o-linear-gradient(bottom, rgba(241, 250, 255, 0.9) 0%, rgba(226, 247, 246, 0.9) 100%);
          background: linear-gradient(to top, rgba(241, 250, 255, 0.9) 0%, rgba(226, 247, 246, 0.9) 100%);
          border-radius: 3px;
          padding: 20px 25px; } }
      body.language .mv .mv-bar .time-box .time-box-ttl {
        display: inline-block;
        color: #005ca1;
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: 0.05em;
        padding-left: 36px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.language .mv .mv-bar .time-box .time-box-ttl {
            font-size: 15px;
            font-size: 1.5rem;
            padding-left: 30px; } }
        body.language .mv .mv-bar .time-box .time-box-ttl img {
          position: absolute;
          left: 0;
          top: -4px;
          width: 25px; }
          @media only screen and (max-width: 767px) {
            body.language .mv .mv-bar .time-box .time-box-ttl img {
              top: -3px;
              width: 22px; } }
      body.language .mv .mv-bar .time-box .active-time {
        background-color: white;
        border-radius: 5px;
        padding: 10px;
        margin: 20px 0 10px; }
        @media only screen and (max-width: 767px) {
          body.language .mv .mv-bar .time-box .active-time {
            margin: 14px 0 5px; } }
        body.language .mv .mv-bar .time-box .active-time .main-time {
          color: #005ca1;
          font-size: 25px;
          font-size: 2.5rem;
          font-family: "Oswald", sans-serif;
          letter-spacing: 0.05em;
          margin-bottom: 13px;
          text-align: center;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
          @media only screen and (max-width: 767px) {
            body.language .mv .mv-bar .time-box .active-time .main-time {
              font-size: 20px;
              font-size: 2rem;
              margin-bottom: 12px; } }
        body.language .mv .mv-bar .time-box .active-time .time-detail {
          background-color: #f0faff;
          color: #005ca1;
          border-radius: 5px;
          font-size: 12px;
          font-size: 1.2rem;
          letter-spacing: 0.05em;
          line-height: 1.33;
          padding: 9px 0;
          text-align: center;
          height: auto; }
          @media only screen and (max-width: 767px) {
            body.language .mv .mv-bar .time-box .active-time .time-detail {
              font-size: 10px;
              font-size: 1rem;
              padding: 4px 0; } }
      body.language .mv .mv-bar .time-box .event-time {
        color: white;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        height: 40px; }
        @media only screen and (max-width: 767px) {
          body.language .mv .mv-bar .time-box .event-time {
            font-size: 13px;
            font-size: 1.3rem;
            height: 35px; } }
      body.language .mv .mv-bar .time-box _:lang(x)::-ms-backdrop, body.language .mv .mv-bar .time-box .event-time {
        padding-top: 3px; }
      body.language .mv .mv-bar .time-box .weather {
        border-top: 1px solid #d9e7ef;
        margin-top: 20px;
        padding-top: 16px;
        /* IE11  */ }
        @media only screen and (max-width: 767px) {
          body.language .mv .mv-bar .time-box .weather {
            margin-top: 15px;
            padding-top: 15px; } }
        body.language .mv .mv-bar .time-box .weather .wheather-box {
          font-family: "Oswald", sans-serif;
          font-size: 24px;
          font-size: 2.4rem;
          font-weight: 400;
          margin: 0 auto;
          width: 230px;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale; }
          @media only screen and (max-width: 767px) {
            body.language .mv .mv-bar .time-box .weather .wheather-box {
              font-size: 20px;
              font-size: 2rem;
              width: 204px; } }
          body.language .mv .mv-bar .time-box .weather .wheather-box .sml {
            font-size: 15px;
            font-size: 1.5rem; }
            @media only screen and (max-width: 767px) {
              body.language .mv .mv-bar .time-box .weather .wheather-box .sml {
                font-size: 14px;
                font-size: 1.4rem; } }
          body.language .mv .mv-bar .time-box .weather .wheather-box .space {
            color: #3d404a;
            display: inline-block;
            font-size: 15px;
            font-size: 1.5rem;
            margin: 0 8px;
            position: relative;
            top: 9px; }
            @media only screen and (max-width: 767px) {
              body.language .mv .mv-bar .time-box .weather .wheather-box .space {
                font-size: 14px;
                font-size: 1.4rem; } }
          body.language .mv .mv-bar .time-box .weather .wheather-box .temperature {
            padding-left: 33px;
            position: relative; }
            body.language .mv .mv-bar .time-box .weather .wheather-box .temperature:before {
              background-image: url("../images/common/weather1.svg");
              background-size: 23px;
              background-repeat: no-repeat;
              content: "";
              position: absolute;
              left: 0px;
              top: 3px;
              height: 23px;
              width: 23px; }
              @media only screen and (max-width: 767px) {
                body.language .mv .mv-bar .time-box .weather .wheather-box .temperature:before {
                  background-size: 20px;
                  height: 20px;
                  width: 20px; } }
            body.language .mv .mv-bar .time-box .weather .wheather-box .temperature .wheather1 {
              color: #e43030; }
            body.language .mv .mv-bar .time-box .weather .wheather-box .temperature .wheather2 {
              color: #2794eb; }
          body.language .mv .mv-bar .time-box .weather .wheather-box .humi {
            color: #005ca1;
            padding-left: 23px;
            position: relative; }
            @media only screen and (max-width: 767px) {
              body.language .mv .mv-bar .time-box .weather .wheather-box .humi {
                padding-left: 20px; } }
            body.language .mv .mv-bar .time-box .weather .wheather-box .humi:before {
              background-image: url("../images/common/humi.svg");
              background-size: 15px 23px;
              background-repeat: no-repeat;
              content: "";
              position: absolute;
              left: 0px;
              top: 2px;
              height: 23px;
              width: 15px; }
              @media only screen and (max-width: 767px) {
                body.language .mv .mv-bar .time-box .weather .wheather-box .humi:before {
                  background-size: 13px 20px;
                  top: 1px;
                  height: 20px;
                  width: 13px; } }
        body.language .mv .mv-bar .time-box .weather .weather-detail {
          background-color: white;
          color: #005ca1;
          border-radius: 5px;
          font-size: 13px;
          font-size: 1.3rem;
          letter-spacing: 0.05em;
          padding: 9px 0;
          margin-top: 13px;
          text-align: center;
          height: auto; }
          @media only screen and (max-width: 767px) {
            body.language .mv .mv-bar .time-box .weather .weather-detail {
              font-size: 11px;
              font-size: 1.1rem;
              margin-top: 12px;
              padding: 4px 0;
              height: auto; } }
        body.language .mv .mv-bar .time-box .weather _:lang(x)::-ms-backdrop, body.language .mv .mv-bar .time-box .weather .weather-detail {
          padding-top: 11px; }
      body.language .mv .mv-bar .time-box .crowded_notification {
        border-radius: 5px;
        margin: 10px 0 0;
        box-shadow: 0px 0px 20px rgba(28, 78, 106, 0.1); }
        body.language .mv .mv-bar .time-box .crowded_notification img {
          border-radius: 5px; }

body.language section#about {
  background-image: -owg-linear-gradient(to right, #f8fcff, #f1fbfb);
  background-image: -webkit-linear-gradient(to right, #f8fcff, #f1fbfb);
  background-image: -moz-linear-gradient(to right, #f8fcff, #f1fbfb);
  background-image: -o-linear-gradient(to right, #f8fcff, #f1fbfb);
  background-image: linear-gradient(to right, #f8fcff, #f1fbfb);
  position: relative; }
  body.language section#about:before {
    background-color: white;
    content: "";
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 323px;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.language section#about:before {
        height: 420px; } }
  body.language section#about .detail {
    opacity: .1;
    position: absolute;
    bottom: 0; }
    body.language section#about .detail.deatil-a {
      left: 0;
      width: 175px; }
      @media only screen and (max-width: 767px) {
        body.language section#about .detail.deatil-a {
          width: 88px; } }
    body.language section#about .detail.deatil-b {
      right: 0;
      width: 232px; }
      @media only screen and (max-width: 767px) {
        body.language section#about .detail.deatil-b {
          width: 118px; } }
  body.language section#about .inner {
    padding: 100px 30px 85px;
    text-align: center;
    /* IE11  */ }
    @media only screen and (max-width: 767px) {
      body.language section#about .inner {
        padding: 220px 25px 55px; } }
    body.language section#about .inner .ttl-01 {
      z-index: 2; }
      @media only screen and (max-width: 767px) {
        body.language section#about .inner .ttl-01 {
          line-height: 1.11; } }
    body.language section#about .inner .duo-box {
      margin-top: 68px;
      position: relative;
      z-index: 2;
      -webkit-align-items: center;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        body.language section#about .inner .duo-box {
          margin-top: 25px; } }
      body.language section#about .inner .duo-box figure {
        width: 50%; }
        @media only screen and (max-width: 767px) {
          body.language section#about .inner .duo-box figure {
            width: 100%; } }
      body.language section#about .inner .duo-box .reg-text {
        width: calc(50% - 45px); }
        @media only screen and (max-width: 767px) {
          body.language section#about .inner .duo-box .reg-text {
            margin-top: 28px;
            width: 100%; } }
    body.language section#about .inner .fancy-ttl {
      background-image: url("../images/language/bar_0.png");
      background-size: cover;
      color: white;
      font-size: 20px;
      font-size: 2rem;
      font-weight: 600;
      letter-spacing: 0.025em;
      margin: 110px auto 30px;
      padding-top: 19px;
      position: relative;
      height: 60px; }
      @media only screen and (max-width: 767px) {
        body.language section#about .inner .fancy-ttl {
          background-image: url("../images/language/bar_0_sp.png");
          font-size: 17px;
          font-size: 1.7rem;
          margin: 68px auto 27px;
          padding-top: 8px;
          height: 35px; }
          body.language section#about .inner .fancy-ttl:before {
            content: '';
            width: 10px;
            height: 100%;
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center;
            position: absolute;
            top: 0;
            background-image: url(../images/common/detour-bg-left-color.svg);
            left: -1px;
            z-index: 2; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      body.language section#about .inner .fancy-ttl:before {
        left: -3px;
        width: 13px; } }
      @media only screen and (max-width: 767px) {
          body.language section#about .inner .fancy-ttl:after {
            content: '';
            width: 10px;
            height: 100%;
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center;
            position: absolute;
            top: 0;
            background-image: url(../images/common/detour-bg-right-color.svg);
            right: -1px;
            z-index: 2; } }
    @media only screen and (max-width: 767px) and (max-width: 767px) {
      body.language section#about .inner .fancy-ttl:after {
        right: -3px;
        width: 13px; } }
      body.language section#about .inner .fancy-ttl .fancy-detail {
        position: absolute;
        right: 287px;
        top: -41px;
        width: 183px; }
        @media only screen and (max-width: 767px) {
          body.language section#about .inner .fancy-ttl .fancy-detail {
            right: auto;
            left: calc(50% + 2px);
            top: -35px;
            width: 146px; } }
        body.language section#about .inner .fancy-ttl .fancy-detail .fancy-detail-text {
          color: #0095a1;
          display: block;
          font-size: 16px;
          font-size: 1.6rem;
          letter-spacing: 0.025em;
          position: absolute;
          top: 2px; }
          @media only screen and (min-width: 768px) {
            body.language section#about .inner .fancy-ttl .fancy-detail .fancy-detail-text {
              left: 0;
              right: 0; } }
          @media only screen and (max-width: 767px) {
            body.language section#about .inner .fancy-ttl .fancy-detail .fancy-detail-text {
              font-size: 13px;
              font-size: 1.3rem;
              top: 2px; } }
    body.language section#about .inner _:lang(x)::-ms-backdrop, body.language section#about .inner .fancy-ttl {
      padding-top: 23px; }
    body.language section#about .inner .about-list {
      margin-top: 40px; }
      @media only screen and (max-width: 767px) {
        body.language section#about .inner .about-list {
          margin-top: 27px; } }
      body.language section#about .inner .about-list li {
        width: calc((100% - 60px)/4); }
        @media only screen and (max-width: 767px) {
          body.language section#about .inner .about-list li {
            margin-bottom: 30px;
            width: calc((100% - 5px)/2); }
            body.language section#about .inner .about-list li:nth-child(3), body.language section#about .inner .about-list li:nth-child(4) {
              margin-bottom: 0; }
            body.language section#about .inner .about-list li .reg-text {
              padding: 0 5px; } }
        body.language section#about .inner .about-list li .about-list-ttl {
          color: #0095a1;
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: bold;
          text-align: center;
          white-space: nowrap; }
          @media only screen and (max-width: 767px) {
            body.language section#about .inner .about-list li .about-list-ttl {
              font-size: 16px;
              font-size: 1.6rem;
              line-height: 1.25; } }
        body.language section#about .inner .about-list li img {
          margin: 20px auto 17px; }
          @media only screen and (max-width: 767px) {
            body.language section#about .inner .about-list li img {
              margin: 14px auto 12px; } }

body.language section#calendar {
  padding: 100px 0 0; }
  @media only screen and (max-width: 767px) {
    body.language section#calendar {
      padding: 62px 0 0; } }
  body.language section#calendar .inner {
    text-align: center; }
    body.language section#calendar .inner .ttl-01 {
      margin-bottom: 59px; }
      @media only screen and (max-width: 767px) {
        body.language section#calendar .inner .ttl-01 {
          margin-bottom: 38px; } }
    body.language section#calendar .inner table.schedulle-table tr .day-header {
      font-weight: 500; }
    body.language section#calendar .inner .reg-text {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.025em;
      line-height: 2.14;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.language section#calendar .inner .reg-text {
          line-height: 1.71;
          text-align: left; } }
    body.language section#calendar .inner .schedulle-navigation {
      margin-top: 40px;
      position: relative;
      height: 30px; }
      @media only screen and (max-width: 767px) {
        body.language section#calendar .inner .schedulle-navigation {
          margin-top: 40px;
          height: 25px; } }
      body.language section#calendar .inner .schedulle-navigation .present {
        color: #1c4e6a;
        font-family: "Oswald", sans-serif;
        font-size: 24px;
        font-size: 2.4rem;
        letter-spacing: 0.05em; }
        @media only screen and (max-width: 767px) {
          body.language section#calendar .inner .schedulle-navigation .present {
            font-size: 18px;
            font-size: 1.8rem;
            padding-top: 2px; } }
      body.language section#calendar .inner .schedulle-navigation .nav-bt {
        border: 1px solid #d9e7ef;
        border-radius: 5px;
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        font-family: "Oswald", sans-serif;
        padding-top: 6px;
        position: absolute;
        top: 0;
        transition: all .3s;
        height: 30px;
        width: 100px;
        z-index: 2; }
        @media only screen and (min-width: 768px) {
          body.language section#calendar .inner .schedulle-navigation .nav-bt:hover {
            border: 1px solid transparent;
            box-shadow: 0 0 15px rgba(204, 229, 239, 0.8); } }
        @media only screen and (max-width: 767px) {
          body.language section#calendar .inner .schedulle-navigation .nav-bt {
            background-color: white;
            padding-top: 5px;
            font-size: 12px;
            font-size: 1.2rem;
            height: 25px;
            width: 80px; } }
        body.language section#calendar .inner .schedulle-navigation .nav-bt:before {
          border-left: 1px solid #1c4e6a;
          border-bottom: 1px solid #1c4e6a;
          content: "";
          display: inline-block;
          margin: 0 auto;
          position: absolute;
          top: 50%;
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.language section#calendar .inner .schedulle-navigation .nav-bt:before {
              height: 4px;
              width: 4px; } }
        body.language section#calendar .inner .schedulle-navigation .nav-bt.prev {
          left: 0;
          text-align: left;
          padding-left: 39px; }
          @media only screen and (max-width: 767px) {
            body.language section#calendar .inner .schedulle-navigation .nav-bt.prev {
              padding-left: 27px; } }
          body.language section#calendar .inner .schedulle-navigation .nav-bt.prev:before {
            transform: translateY(-50%) rotate(45deg);
            left: 14px; }
            @media only screen and (max-width: 767px) {
              body.language section#calendar .inner .schedulle-navigation .nav-bt.prev:before {
                left: 10px; } }
        body.language section#calendar .inner .schedulle-navigation .nav-bt.next {
          padding-right: 39px;
          text-align: right;
          right: 0; }
          @media only screen and (max-width: 767px) {
            body.language section#calendar .inner .schedulle-navigation .nav-bt.next {
              padding-right: 27px; } }
          body.language section#calendar .inner .schedulle-navigation .nav-bt.next:before {
            transform: translateY(-50%) rotate(-135deg);
            right: 14px; }
            @media only screen and (max-width: 767px) {
              body.language section#calendar .inner .schedulle-navigation .nav-bt.next:before {
                right: 10px; } }
    body.language section#calendar .inner .notes {
      font-size: 12px;
      font-size: 1.2rem;
      letter-spacing: 0.025em;
      line-height: 1.83; }
      @media only screen and (max-width: 767px) {
        body.language section#calendar .inner .notes {
          font-size: 11px;
          font-size: 1.1rem;
          line-height: 1.63; } }
    body.language section#calendar .inner .link-area {
      background: #f7fcff;
      background: -webkit-linear-gradient(left, #f7fcff 0%, #eefafa 100%);
      background: -o-linear-gradient(left, #f7fcff 0%, #eefafa 100%);
      background: linear-gradient(to right, #f7fcff 0%, #eefafa 100%);
      border-radius: 5px;
      font-size: 14px;
      font-size: 1.4rem;
      font-family: "Oswald", sans-serif;
      letter-spacing: 0.05em;
      padding: 39px 78px 42px;
      position: relative;
      margin: 30px auto 80px;
      text-align: justify; }
      @media only screen and (max-width: 767px) {
        body.language section#calendar .inner .link-area {
          border-radius: 3px;
          line-height: 1.84;
          margin: 33px auto 50px;
          padding: 26px 23px; }
          body.language section#calendar .inner .link-area .space {
            display: block;
            margin-top: 15px; } }
      body.language section#calendar .inner .link-area a {
        color: #0095a1;
        display: inline-block;
        margin-bottom: 25px;
        padding-left: 16px;
        position: relative; }
        @media only screen and (min-width: 768px) {
          body.language section#calendar .inner .link-area a {
            cursor: pointer;
            -webkit-transition: 0.3s;
            -moz-transition: 0.3s;
            -o-transition: 0.3s;
            transition: 0.3s; }
            body.language section#calendar .inner .link-area a:hover {
              opacity: .7; } }
        @media only screen and (max-width: 767px) {
          body.language section#calendar .inner .link-area a {
            margin-bottom: 6px;
            padding-left: 10px;
            word-wrap: break-word; } }
        body.language section#calendar .inner .link-area a:last-of-type {
          margin-bottom: 0; }
        body.language section#calendar .inner .link-area a .underline {
          position: relative; }
          body.language section#calendar .inner .link-area a .underline:after {
            background-color: #0095a1;
            content: "";
            position: absolute;
            bottom: 0px;
            left: 0;
            height: 1px;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              body.language section#calendar .inner .link-area a .underline:after {
                bottom: 1px; } }
        body.language section#calendar .inner .link-area a img {
          display: inline-block;
          margin-left: 9px;
          width: 13px; }
          @media only screen and (max-width: 767px) {
            body.language section#calendar .inner .link-area a img {
              margin-left: 6px;
              position: relative;
              top: -5px;
              width: 12px; } }
        body.language section#calendar .inner .link-area a:before {
          background-color: #1c4e6a;
          border-radius: 50%;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.language section#calendar .inner .link-area a:before {
              height: 4px;
              width: 4px; } }
      body.language section#calendar .inner .link-area .no-dot {
        padding-left: 16px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.language section#calendar .inner .link-area .no-dot {
            padding-left: 10px; } }
        body.language section#calendar .inner .link-area .no-dot:before {
          background-color: #1c4e6a;
          border-radius: 50%;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-50%);
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.language section#calendar .inner .link-area .no-dot:before {
              height: 4px;
              width: 4px; } }
        body.language section#calendar .inner .link-area .no-dot a {
          padding-left: 0; }
          body.language section#calendar .inner .link-area .no-dot a:before {
            display: none; }

body.language section#event {
  padding-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    body.language section#event {
      padding-bottom: 35px; } }
  body.language section#event .inner {
    text-align: center; }
    body.language section#event .inner .event-ttl {
      background: repeating-linear-gradient(-45deg, #ebf7f8, #ebf7f8 4px, #f5fbfb 4px, #f5fbfb 8px);
      color: #0095a1;
      font-size: 20px;
      font-size: 2rem;
      font-weight: 600;
      letter-spacing: 0.025em;
      margin: 80px auto 38px;
      padding-top: 20px;
      position: relative;
      height: 60px; }
      @media only screen and (max-width: 767px) {
        body.language section#event .inner .event-ttl {
          background: repeating-linear-gradient(-45deg, #ebf7f8, #ebf7f8 3px, #f5fbfb 3px, #f5fbfb 6px); } }
      @media only screen and (max-width: 767px) {
        body.language section#event .inner .event-ttl {
          font-size: 17px;
          font-size: 1.7rem;
          margin: 50px auto 27px;
          padding-top: 8px;
          height: 35px; } }
      body.language section#event .inner .event-ttl:before {
        content: '';
        width: 10px;
        height: 100%;
        background-repeat: no-repeat;
        background-size: auto 100%;
        background-position: center;
        position: absolute;
        top: 0;
        background-image: url(../images/common/detour-bg-left.svg);
        left: -1px; }
      body.language section#event .inner .event-ttl:after {
        content: '';
        width: 10px;
        height: 100%;
        background-repeat: no-repeat;
        background-size: auto 100%;
        background-position: center;
        position: absolute;
        top: 0;
        background-image: url(../images/common/detour-bg-right.svg);
        right: -1px; }
    body.language section#event .inner .event-list li {
      margin-bottom: 40px;
      width: calc((100% - 40px)/3);
      text-align: left; }
      @media only screen and (min-width: 768px) {
        body.language section#event .inner .event-list li:nth-child(4), body.language section#event .inner .event-list li:nth-child(5), body.language section#event .inner .event-list li:nth-child(6) {
          margin-bottom: 60px; } }
      @media only screen and (max-width: 767px) {
        body.language section#event .inner .event-list li {
          margin-bottom: 25px;
          width: 100%; } }
      @media only screen and (min-width: 768px) {
        body.language section#event .inner .event-list li .flex-row {
          display: block; } }
      @media only screen and (max-width: 767px) {
        body.language section#event .inner .event-list li .flex-row {
          position: relative;
          padding-top: 38px; } }
      body.language section#event .inner .event-list li figure {
        position: relative;
        /* IE11  */ }
        @media only screen and (max-width: 767px) {
          body.language section#event .inner .event-list li figure {
            position: static;
            width: 42.76%; } }
        body.language section#event .inner .event-list li figure figcaption {
          background-color: #fff6e4;
          border-radius: 5px;
          display: inline-block;
          color: #e2aa39;
          font-size: 12px;
          font-size: 1.2rem;
          font-weight: bold;
          letter-spacing: 0.1em;
          padding: 11px 13px;
          position: absolute;
          top: 10px;
          right: 10px; }
          @media only screen and (max-width: 767px) {
            body.language section#event .inner .event-list li figure figcaption {
              font-size: 11px;
              font-size: 1.1rem;
              padding: 6px 0;
              margin: 0 auto;
              top: 0;
              right: 0;
              left: 0;
              text-align: center; } }
          body.language section#event .inner .event-list li figure figcaption.blue {
            background-color: #f1faff;
            color: #509eca; }
          body.language section#event .inner .event-list li figure figcaption.pink {
            background-color: #fff1f5;
            color: #e9376a; }
        body.language section#event .inner .event-list li figure _:lang(x)::-ms-backdrop, body.language section#event .inner .event-list li figure figcaption {
          padding-top: 13px; }
      @media only screen and (max-width: 767px) {
        body.language section#event .inner .event-list li .down-text {
          width: 52%; } }
      body.language section#event .inner .event-list li .event-list-ttl {
        border-bottom: 1px solid #d9e7ef;
        color: #0095a1;
        padding: 29px 0 16px;
        font-size: 18px;
        font-size: 1.8rem;
        font-weight: bold;
        margin-bottom: 12px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          body.language section#event .inner .event-list li .event-list-ttl {
            padding: 0 0 10px;
            font-size: 16px;
            font-size: 1.6rem;
            line-height: 1.37;
            margin-bottom: 6px; } }
      body.language section#event .inner .event-list li .event-list-note {
        color: #1c4e6a;
        font-size: 12px;
        font-size: 1.2rem;
        font-weight: bold;
        letter-spacing: 0.025em;
        line-height: 1.66;
        text-align: left; }
        @media only screen and (max-width: 767px) {
          body.language section#event .inner .event-list li .event-list-note:last-child {
            margin-top: 5px; } }
      body.language section#event .inner .event-list li .reg-text {
        margin-top: 10px; }
        @media only screen and (max-width: 767px) {
          body.language section#event .inner .event-list li .reg-text {
            margin-top: 8px; } }
      body.language section#event .inner .event-list li .notes {
        line-height: 1.83; }
        @media only screen and (max-width: 767px) {
          body.language section#event .inner .event-list li .notes {
            line-height: 1.63; } }
        body.language section#event .inner .event-list li .notes.ast-line {
          padding-left: 14px;
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.language section#event .inner .event-list li .notes.ast-line {
              padding-left: 13px; } }
          body.language section#event .inner .event-list li .notes.ast-line .ast {
            position: absolute;
            top: 1px;
            left: 0; }
            @media only screen and (max-width: 767px) {
              body.language section#event .inner .event-list li .notes.ast-line .ast {
                top: 0; } }

body.language section#tickets {
  background-color: #f6fcff;
  padding: 98px 0; }
  @media only screen and (max-width: 767px) {
    body.language section#tickets {
      padding: 60px 0; } }
  body.language section#tickets .inner {
    text-align: center; }
    body.language section#tickets .inner .ttl-01 {
      margin-bottom: 67px; }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner .ttl-01 {
          margin-bottom: 30px; } }
    body.language section#tickets .inner .ttl-02 {
      margin-bottom: 30px;
      letter-spacing: 0.1em; }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner .ttl-02 {
          margin-bottom: 25px;
          font-weight: 500; } }
      body.language section#tickets .inner .ttl-02 .one-line {
        font-size: 20px;
        font-size: 2rem; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner .ttl-02 .one-line {
            font-size: 17px;
            font-size: 1.7rem;
            white-space: nowrap; } }
      body.language section#tickets .inner .ttl-02 .sml {
        font-size: 16px;
        font-size: 1.6rem; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner .ttl-02 .sml {
            font-size: 12px;
            font-size: 1.2rem; } }
    body.language section#tickets .inner .table-wrap {
      border: 1px solid #0095a1;
      border-radius: 8px;
      overflow: hidden; }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner .table-wrap {
          border-radius: 5px; } }
      @media only screen and (min-width: 768px) {
        body.language section#tickets .inner .table-wrap.large td {
          height: 100px; } }
    body.language section#tickets .inner table {
      border-radius: 8px;
      table-layout: fixed;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner table {
          border-radius: 5px; } }
      body.language section#tickets .inner table tr.sml-s {
        height: 50px; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner table tr.sml-s {
            height: 50px; } }
      body.language section#tickets .inner table tr.mid-s {
        height: 106px; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner table tr.mid-s {
            height: 50px; } }
      body.language section#tickets .inner table tr.big-s {
        height: 140px; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner table tr.big-s {
            height: 50px; } }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner table tr:nth-child(3) th, body.language section#tickets .inner table tr:nth-child(3) td, body.language section#tickets .inner table tr:nth-child(4) th, body.language section#tickets .inner table tr:nth-child(4) td, body.language section#tickets .inner table tr:nth-child(5) th, body.language section#tickets .inner table tr:nth-child(5) td, body.language section#tickets .inner table tr:nth-child(6) th, body.language section#tickets .inner table tr:nth-child(6) td {
          width: 50%; } }
      body.language section#tickets .inner table tr th {
        background-color: #0095a1;
        border-right: 1px solid white;
        color: white;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.28;
        letter-spacing: 0.025em;
        text-align: center;
        height: 40px; }
        @media only screen and (min-width: 768px) {
          body.language section#tickets .inner table tr th:first-of-type {
            width: 356px; } }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner table tr th {
            font-size: 12px;
            font-size: 1.2rem;
            height: 30px;
            width: 100%; } }
        body.language section#tickets .inner table tr th:last-child {
          border-right: 1px solid #0095a1; }
        body.language section#tickets .inner table tr th .sml {
          font-size: 12px;
          font-size: 1.2rem; }
      body.language section#tickets .inner table tr td {
        background-color: white;
        border-top: none;
        border-right: 1px solid #d9e7ef;
        color: #1c4e6a;
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.4;
        font-weight: bold;
        letter-spacing: 0.025em;
        text-align: center;
        height: 90px; }
        @media only screen and (min-width: 768px) {
          body.language section#tickets .inner table tr td.pd {
            padding: 13px 0; }
          body.language section#tickets .inner table tr td.pd2 {
            height: 105px; } }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner table tr td {
            font-size: 14px;
            font-size: 1.4rem;
            font-weight: 600;
            min-height: inherit;
            height: 45px; } }
        body.language section#tickets .inner table tr td:last-child {
          border-right: none; }
        body.language section#tickets .inner table tr td .red {
          color: #e43030; }
        body.language section#tickets .inner table tr td .reg {
          font-size: 15px;
          font-size: 1.5rem;
          line-height: 1.86; }
          @media only screen and (max-width: 767px) {
            body.language section#tickets .inner table tr td .reg {
              display: block;
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1.42;
              padding: 10px 0; } }
        body.language section#tickets .inner table tr td .reg2 {
          font-size: 14px;
          font-size: 1.4rem; }
          @media only screen and (max-width: 767px) {
            body.language section#tickets .inner table tr td .reg2 {
              display: block;
              font-size: 12px;
              font-size: 1.2rem; } }
        body.language section#tickets .inner table tr td .arrow {
          position: relative; }
          @media only screen and (max-width: 767px) {
            body.language section#tickets .inner table tr td .arrow {
              padding: 9px 0; } }
          body.language section#tickets .inner table tr td .arrow:before {
            background-image: url("../images/language/arw.png");
            background-size: 8px 16px;
            background-repeat: no-repeat;
            background-position: center;
            content: "";
            margin: 0 auto;
            position: absolute;
            left: 0;
            right: 0;
            top: 50%;
            transform: translateY(-50%);
            height: 16px;
            width: 8px; }
            @media only screen and (max-width: 767px) {
              body.language section#tickets .inner table tr td .arrow:before {
                background-size: 6px 15px;
                height: 15px;
                width: 6px; } }
          body.language section#tickets .inner table tr td .arrow span {
            display: block; }
            body.language section#tickets .inner table tr td .arrow span.normal {
              margin-bottom: 30px; }
              @media only screen and (max-width: 767px) {
                body.language section#tickets .inner table tr td .arrow span.normal {
                  margin-bottom: 25px; } }
      @media only screen and (min-width: 768px) {
        body.language section#tickets .inner table.last-table tr:last-child td {
          border-bottom: none; }
          body.language section#tickets .inner table.last-table tr:last-child td:first-child {
            border-bottom: none; }
        body.language section#tickets .inner table.last-table tr th:first-of-type {
          width: auto; }
        body.language section#tickets .inner table.last-table tr td {
          border-bottom: 1px solid #d9e7ef;
          height: 50px; }
          body.language section#tickets .inner table.last-table tr td:first-child {
            background-color: #e5f4f5;
            border-bottom: 1px solid white;
            border-right: none; } }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner table.last-table tr th {
          height: 30px; }
          body.language section#tickets .inner table.last-table tr th.tall {
            height: 40px; } }
    body.language section#tickets .inner .ttl-table {
      background-color: #c6e7eb;
      border-radius: 5px;
      color: #0095a1;
      font-size: 15px;
      font-size: 1.5rem;
      font-weight: 600;
      margin-bottom: 5px;
      height: 35px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      body.language section#tickets .inner .ttl-table.first-one {
        margin-top: 20px; }
      body.language section#tickets .inner .ttl-table.regular {
        margin-top: 30px; }
    body.language section#tickets .inner .tickets-list-01 li {
      margin-bottom: 65px; }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner .tickets-list-01 li {
          margin-bottom: 42px; } }
      body.language section#tickets .inner .tickets-list-01 li:nth-child(2) {
        margin-bottom: 62px; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner .tickets-list-01 li:nth-child(2) {
            margin-bottom: 39px; } }
      body.language section#tickets .inner .tickets-list-01 li:nth-child(5) {
        margin-bottom: 0; }
    body.language section#tickets .inner .tickets-list-02 li {
      margin: 145px 0 0; }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner .tickets-list-02 li {
          margin: 82px 0 0; } }
      body.language section#tickets .inner .tickets-list-02 li .ttl-02 {
        margin-top: 53px; }
      @media only screen and (min-width: 768px) {
        body.language section#tickets .inner .tickets-list-02 li .table-wrap {
          margin-top: 22px;
          margin-bottom: 30px; } }
    body.language section#tickets .inner a.reservation {
      background-color: white;
      border: 1px solid #d9e7ef;
      border-radius: 8px;
      margin-top: 25px;
      height: 80px;
      transition: all .3s;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center; }
      @media only screen and (min-width: 768px) {
        body.language section#tickets .inner a.reservation:hover {
          box-shadow: 0 0 15px #cce5ef; } }
      @media only screen and (max-width: 767px) {
        body.language section#tickets .inner a.reservation {
          border-radius: 5px;
          position: relative;
          height: 115px;
          -webkit-flex-direction: column;
          flex-direction: column; } }
      body.language section#tickets .inner a.reservation .tel-note {
        font-size: 20px;
        font-size: 2rem;
        font-weight: 500;
        letter-spacing: 0.025em;
        margin-right: 77px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner a.reservation .tel-note {
            font-size: 17px;
            font-size: 1.7rem;
            letter-spacing: normal;
            margin-right: 0;
            padding-bottom: 15px;
            position: static; } }
        body.language section#tickets .inner a.reservation .tel-note:before {
          background-color: #d9e7ef;
          content: "";
          position: absolute;
          top: 50%;
          transform: translateY(-50%);
          right: -77px;
          height: 40px;
          width: 1px; }
          @media only screen and (max-width: 767px) {
            body.language section#tickets .inner a.reservation .tel-note:before {
              margin: 0 auto;
              transform: none;
              top: 53px;
              right: 0;
              left: 0;
              height: 1px;
              width: calc(100% - 30px); } }
      body.language section#tickets .inner a.reservation .tel {
        font-size: 30px;
        font-size: 3rem;
        font-family: "Oswald", sans-serif;
        letter-spacing: 0.05em;
        margin-left: 80px;
        padding-left: 31px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.language section#tickets .inner a.reservation .tel {
            font-size: 24px;
            font-size: 2.4rem;
            margin-left: 0;
            padding-top: 20px;
            padding-left: 21px; } }
        body.language section#tickets .inner a.reservation .tel:before {
          background-image: url(../images/common/icon-tel.svg);
          background-size: 21px 28px;
          background-repeat: no-repeat;
          content: "";
          position: absolute;
          left: 0;
          top: 50%;
          transform: translateY(-40%);
          height: 28px;
          width: 21px; }
          @media only screen and (max-width: 767px) {
            body.language section#tickets .inner a.reservation .tel:before {
              background-size: 17px 23px;
              transform: none;
              height: 23px;
              width: 17px; } }
  body.language section#tickets .notes {
    margin-top: 18px; }
    @media only screen and (max-width: 767px) {
      body.language section#tickets .notes {
        margin-top: 15px; } }

body.language section#information {
  padding: 100px 0; }
  @media only screen and (max-width: 767px) {
    body.language section#information {
      padding: 60px 0; }
      body.language section#information .btn {
        height: 40px;
        width: calc(100% - 50px); } }
  body.language section#information .inner {
    text-align: center; }
    body.language section#information .inner .map {
      margin: 70px auto 30px; }
      @media only screen and (max-width: 767px) {
        body.language section#information .inner .map {
          margin: 45px auto 25px; } }
    body.language section#information .inner .list-box {
      background-image: -owg-linear-gradient(to right, #f8fcff, #f1fbfb);
      background-image: -webkit-linear-gradient(to right, #f8fcff, #f1fbfb);
      background-image: -moz-linear-gradient(to right, #f8fcff, #f1fbfb);
      background-image: -o-linear-gradient(to right, #f8fcff, #f1fbfb);
      background-image: linear-gradient(to right, #f8fcff, #f1fbfb);
      margin-top: 20px;
      padding: 46px 80px 44px; }
      @media only screen and (max-width: 767px) {
        body.language section#information .inner .list-box {
          padding: 30px 24px; } }
      body.language section#information .inner .list-box ul li {
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: bold;
        line-height: 1.86;
        letter-spacing: 0.05em;
        margin-bottom: 15px;
        text-align: left;
        padding-left: 14px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.language section#information .inner .list-box ul li {
            font-size: 14px;
            font-size: 1.4rem;
            margin-bottom: 14px;
            padding-left: 8px; }
            body.language section#information .inner .list-box ul li:last-child {
              margin-bottom: 0; } }
        body.language section#information .inner .list-box ul li:before {
          background-color: #1c4e6a;
          border-radius: 50%;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 11px;
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.language section#information .inner .list-box ul li:before {
              height: 4px;
              width: 4px; } }
    body.language section#information .inner .reg-text {
      margin-top: 29px; }
      @media only screen and (max-width: 767px) {
        body.language section#information .inner .reg-text {
          margin-top: 24px; } }
    body.language section#information .inner .notice1 {
      padding: 69px 0 66px; }
      @media only screen and (max-width: 767px) {
        body.language section#information .inner .notice1 {
          padding: 37px 0 42px; } }
    body.language section#information .inner .duo-box {
      margin-top: 21px;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.language section#information .inner .duo-box {
          display: block;
          margin: 18px auto 0;
          width: calc(100% - 50px); } }
      body.language section#information .inner .duo-box .btn {
        margin: 0;
        height: 70px;
        height: 54px;
        width: 100%; }
        body.language section#information .inner .duo-box .btn.db-line {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.42; }
          @media only screen and (max-width: 767px) {
            body.language section#information .inner .duo-box .btn.db-line {
              height: auto; } }
        @media only screen and (max-width: 767px) {
          body.language section#information .inner .duo-box .btn {
            line-height: 1.3;
            padding: 7px 0;
            height: auto;
            white-space: nowrap; }
            body.language section#information .inner .duo-box .btn:first-child {
              margin-bottom: 10px; } }

body.language section#location {
  background-color: #f6fcff;
  border-radius: 5px;
  padding: 100px 0; }
  @media only screen and (max-width: 767px) {
    body.language section#location {
      border-radius: 3px;
      padding: 60px 0; } }
  body.language section#location .inner {
    text-align: center; }
    body.language section#location .inner iframe {
      margin: 66px auto 50px;
      height: 350px;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.language section#location .inner iframe {
          margin: 42px auto 35px;
          height: 211px; } }
    body.language section#location .inner .content-box {
      background-color: white;
      padding: 50px 60px; }
      @media only screen and (max-width: 767px) {
        body.language section#location .inner .content-box {
          padding: 34px 25px; } }
      body.language section#location .inner .content-box .ttl-02 {
        margin-bottom: 26px; }
        @media only screen and (max-width: 767px) {
          body.language section#location .inner .content-box .ttl-02 {
            margin-bottom: 26px; } }
        body.language section#location .inner .content-box .ttl-02:last-of-type {
          margin-top: 42px; }
          @media only screen and (max-width: 767px) {
            body.language section#location .inner .content-box .ttl-02:last-of-type {
              margin-top: 28px; } }
      body.language section#location .inner .content-box ul li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 2;
        text-align: left;
        padding-left: 15px;
        position: relative; }
        body.language section#location .inner .content-box ul li:before {
          background-color: #1c4e6a;
          border-radius: 50%;
          content: "";
          margin: 0 auto;
          position: absolute;
          left: 0;
          top: 11px;
          height: 6px;
          width: 6px; }
          @media only screen and (max-width: 767px) {
            body.language section#location .inner .content-box ul li:before {
              height: 4px;
              width: 4px; } }
    body.language section#location .inner figure {
      background-color: white;
      border-radius: 5px;
      margin-top: 20px;
      padding: 50px 0;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.language section#location .inner figure {
          border-radius: 3px;
          padding: 35px 0; } }
      body.language section#location .inner figure img {
        margin: 0 auto;
        width: 880px; }
        @media only screen and (max-width: 767px) {
          body.language section#location .inner figure img {
            width: calc(100% - 50px); } }

body.language #instagram {
  padding-top: 10px; }
  @media only screen and (max-width: 767px) {
    body.language #instagram {
      padding-top: 5px; } }

body.language .language-footer {
  text-align: center;
  padding-top: 47px; }
  @media only screen and (max-width: 767px) {
    body.language .language-footer {
      padding-top: 30px; } }
  @media only screen and (max-width: 767px) {
    body.language .language-footer .inner {
      padding: 0 45px; } }
  body.language .language-footer .logo {
    margin: 0 auto 18px;
    width: 485px; }
    @media only screen and (max-width: 767px) {
      body.language .language-footer .logo {
        width: 100%; } }
  body.language .language-footer .footer-ttl {
    font-size: 15px;
    font-size: 1.5rem;
    font-weight: 600;
    letter-spacing: 0.025em;
    margin-bottom: 10px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.language .language-footer .footer-ttl {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.42;
        text-align: left; } }
  body.language .language-footer .address p {
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.045em;
    line-height: 1.71;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.language .language-footer .address p {
        font-size: 13px;
        font-size: 1.3rem;
        letter-spacing: 0.025em;
        line-height: 1.69;
        margin-bottom: 10px;
        text-align: left; }
        body.language .language-footer .address p:last-of-type {
          margin-bottom: 0; } }
  @media only screen and (min-width: 768px) {
    body.language .language-footer .address .space {
      display: inline-block;
      width: 9px; }
    body.language .language-footer .address .space2 {
      display: inline-block;
      width: 4px; } }
  body.language .language-footer .footer__lowerarea {
    margin: 27px auto 30px;
    max-width: 960px; }
    @media only screen and (max-width: 767px) {
      body.language .language-footer .footer__lowerarea .footercomp__txtsize--txt {
        width: 55px;
        margin-right: 0; }
      body.language .language-footer .footer__lowerarea .sp-aligner {
        text-align: left; }
      body.language .language-footer .footer__lowerarea .footercomp__txtsize {
        -webkit-align-items: center;
        align-items: center;
        height: 30px; }
      body.language .language-footer .footer__lowerarea .footercomp__color--txt {
        width: 55px;
        margin-right: 0; }
      body.language .language-footer .footer__lowerarea .footercomp__color {
        margin-top: 20px; } }
  @media only screen and (max-width: 767px) and (max-width: 767px) {
    body.language .language-footer .footer__lowerarea .footercomp__color {
      margin-top: 10px; } }

@media only screen and (max-width: 767px) and (device-aspect-ratio: 40 / 71) {
  body.language .language-footer .footer__lowerarea .footercomp__color--btn, body.language .language-footer .footer__lowerarea .footercomp__txtsize--btn {
    font-size: 12px; } }

@media only screen and (max-width: 767px) {
  body.language .event-modal__inner table tbody tr td {
    font-weight: 500; }
    body.language .event-modal__inner table tbody tr td small {
      font-weight: bold; }
    body.language .event-modal__inner table tbody tr td:first-child {
      font-weight: bold; } }

body.language.en .tel-note {
  font-weight: 600 !important; }

body.language.en .event-modal__time-label {
  font-weight: 600 !important; }

body.language.en .event-modal__inner table thead th {
  font-weight: 600 !important; }

@media only screen and (max-width: 767px) {
  body.language.en .footercomp__color .sp-aligner, body.language.en .footercomp__txtsize .sp-aligner {
    font-size: 0; } }

@media only screen and (max-width: 767px) {
  body.language.en .footercomp__txtsize {
    height: auto !important; } }

@media only screen and (max-width: 767px) {
  body.language.en .footercomp__color {
    margin-top: 0; } }

@media only screen and (max-width: 767px) {
  body.language.ch .headercomp__txtsize--txt {
    padding-top: 0 !important;
    position: relative !important;
    top: -1px !important; } }

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  body.language .footercomp__color button {
    padding: 0;
    text-align: center; } }

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  body.language .footercomp__txtsize button {
    padding: 0;
    text-align: center; } }

body.lover .mv-side {
  background-image: url("../images/lover/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.lover .mv-side {
      background-image: url("../images/lover/mv_sp.jpg"); } }
  body.lover .mv-side .reservation-btn {
    display: block; }

@media only screen and (min-width: 768px) {
  body.lover .side-page-ttl-inner {
    padding-top: 45px; } }

body.lover .enjoy-point .caution-info {
  color: #e43030;
  font-size: 12px;
  font-size: 1.2rem;
  position: absolute;
  left: 0;
  bottom: -20px; }

@media only screen and (max-width: 767px) {
  body.lover .enjoy-point .enjoy-point__detail:nth-child(6) {
    margin-top: 35px; } }

body.lover #sec01 {
  padding: 0 0 100px; }
  @media only screen and (max-width: 767px) {
    body.lover #sec01 {
      padding: 45px 0 110px; } }
  @media only screen and (max-width: 767px) {
    body.lover #sec01 .enjoy-box__speech {
      width: 105px;
      left: 40px;
      top: -45px; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec01 .enjoy-box__text {
      letter-spacing: 0em; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec01 .enjoy-box__img {
      max-width: 560px;
      margin: 30px 0 0 0;
      position: relative;
      left: 40px; } }
  body.lover #sec01 .enjoy-box__dotted, body.lover #sec01 .enjoy-box02__dotted {
    max-width: 330px;
    left: calc(50% - 60px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -73px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec01 .enjoy-box__dotted, body.lover #sec01 .enjoy-box02__dotted {
        max-width: 210px;
        left: calc(50% - 30px);
        bottom: 10px; } }

body.lover #sec02 {
  padding-bottom: 60px; }
  @media only screen and (max-width: 767px) {
    body.lover #sec02 {
      padding-bottom: 70px; } }
  body.lover #sec02 .enjoy-box__speech {
    width: 300px;
    right: 50px;
    top: -10px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec02 .enjoy-box__speech {
        width: 195px;
        right: 25px;
        top: -45px; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec02 .enjoy-box__img {
      max-width: 500px;
      margin: -30px 20px 0 0; } }
  body.lover #sec02 .enjoy-box__dotted, body.lover #sec02 .enjoy-box02__dotted {
    max-width: 290px;
    left: calc(50% - 30px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -50px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec02 .enjoy-box__dotted, body.lover #sec02 .enjoy-box02__dotted {
        max-width: 110px;
        left: calc(50% - 60px);
        bottom: -30px; } }

body.lover #sec03 {
  padding-bottom: 160px; }
  @media only screen and (max-width: 767px) {
    body.lover #sec03 {
      padding-bottom: 95px; } }
  body.lover #sec03 .enjoy-box02__speech {
    width: 235px;
    right: 190px;
    top: -130px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec03 .enjoy-box02__speech {
        width: 150px;
        right: 0;
        top: -65px; } }
  body.lover #sec03 .enjoy-box02__heading {
    width: 250px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec03 .enjoy-box02__heading {
        width: 125px; } }
  body.lover #sec03 .enjoy-box02__subimg {
    width: 65px;
    right: 70px;
    bottom: -20px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec03 .enjoy-box02__subimg {
        width: 45px;
        right: 0px;
        bottom: -40px; } }
  body.lover #sec03 .enjoy-box02__dotted {
    max-width: 340px;
    left: calc(50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 20px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec03 .enjoy-box02__dotted {
        max-width: 100px;
        left: calc(50% - 10px);
        bottom: 7px; } }

body.lover #sec04 {
  padding-bottom: 140px; }
  @media only screen and (max-width: 767px) {
    body.lover #sec04 {
      padding-bottom: 70px; } }
  @media only screen and (max-width: 767px) {
    body.lover #sec04 .enjoy-box__speech {
      max-width: 100px;
      right: 30px;
      top: -50px; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec04 .enjoy-box__img {
      max-width: 530px;
      margin-top: -90px; } }
  body.lover #sec04 .enjoy-box__dotted, body.lover #sec04 .enjoy-box02__dotted {
    max-width: 520px;
    left: calc(50% - 30px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: 10px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec04 .enjoy-box__dotted, body.lover #sec04 .enjoy-box02__dotted {
        left: calc(50%);
        max-width: 135px;
        bottom: 5px; } }

body.lover #sec05 {
  padding-bottom: 120px; }
  @media only screen and (max-width: 767px) {
    body.lover #sec05 {
      padding-bottom: 95px; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec05 .enjoy-box__title {
      margin-bottom: 35px; } }
  body.lover #sec05 .enjoy-box__speech {
    max-width: 520px;
    margin: -50px 0 0 -10px; }
  body.lover #sec05 .enjoy-box__text {
    letter-spacing: 0em; }
    @media only screen and (max-width: 767px) {
      body.lover #sec05 .enjoy-box__text {
        letter-spacing: 0.05em; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec05 .enjoy-box__img {
      width: calc(100% - 60px);
      margin: 35px 0 0 auto; } }
  body.lover #sec05 .enjoy-box__dotted, body.lover #sec05 .enjoy-box02__dotted {
    max-width: 445px;
    left: calc(50% - 60px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -70px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec05 .enjoy-box__dotted, body.lover #sec05 .enjoy-box02__dotted {
        max-width: 140px;
        left: calc(50% - 55px);
        bottom: 7px; } }

body.lover #sec06 {
  padding-bottom: 90px; }
  @media only screen and (max-width: 767px) {
    body.lover #sec06 {
      padding-bottom: 70px; } }
  body.lover #sec06 .enjoy-box__speech {
    width: 200px;
    right: 50px;
    top: -35px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec06 .enjoy-box__speech {
        width: 125px;
        right: 25px;
        top: -65px; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec06 .enjoy-box__floor, body.lover #sec06 .enjoy-box02__img figcaption, .enjoy-box02__img body.lover #sec06 figcaption {
      left: auto;
      right: 10px; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec06 .enjoy-box__text {
      float: right;
      padding-right: 40px; } }
  @media only screen and (min-width: 768px) {
    body.lover #sec06 .enjoy-box__img {
      float: left;
      max-width: 250px;
      margin: -60px 0 0 70px; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    body.lover #sec06 .enjoy-box__img {
      max-width: 150px !important;
      margin: -30px 0 0 0; } }
  body.lover #sec06 .enjoy-box__dotted, body.lover #sec06 .enjoy-box02__dotted {
    max-width: 280px;
    left: calc(50% + 20px);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
    bottom: -50px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec06 .enjoy-box__dotted, body.lover #sec06 .enjoy-box02__dotted {
        max-width: 120px;
        left: 50%;
        bottom: 10px; } }

body.lover #sec07 {
  padding-bottom: 260px; }
  @media only screen and (max-width: 767px) {
    body.lover #sec07 {
      padding-bottom: 120px; } }
  body.lover #sec07 .enjoy-box02__speech {
    width: 240px;
    right: 50px;
    top: -80px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec07 .enjoy-box02__speech {
        width: 150px;
        right: 0;
        top: -40px; } }
  body.lover #sec07 .enjoy-box02__heading {
    width: 310px; }
    @media only screen and (max-width: 767px) {
      body.lover #sec07 .enjoy-box02__heading {
        width: 160px; } }

body.news .mv-side {
  background-image: url("../images/news/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.news .mv-side {
      background-image: url("../images/news/mv_sp.jpg"); } }
  body.news .mv-side .reservation-btn {
    display: block; }

body.news main {
  background-color: #f6fcff; }

body.news section#content {
  padding: 120px 0 220px; }
  @media only screen and (max-width: 767px) {
    body.news section#content {
      padding: 70px 0 120px; } }

body.news .date {
  color: #0095a1;
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "Oswald", sans-serif;
  letter-spacing: 0.05em;
  position: absolute;
  right: 20px;
  top: 20px; }
  @media only screen and (max-width: 767px) {
    body.news .date {
      font-size: 12px;
      font-size: 1.2rem;
      right: 15px;
      top: auto;
      bottom: 7px; } }

body.news .category {
  background: #f1faff;
  background: -webkit-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
  background: -o-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
  background: linear-gradient(87deg, #f1faff, #e3f7f6 100%);
  border-radius: 5px;
  color: #0095a1;
  font-size: 13px;
  font-size: 1.3rem;
  letter-spacing: 0.05em;
  padding: 6px 0;
  margin-right: 5px;
  text-align: center;
  width: 140px; }
  @media only screen and (max-width: 767px) {
    body.news .category {
      border-radius: 4px;
      display: inline-block;
      font-size: 10px;
      font-size: 1rem;
      padding: 3px 9px;
      margin-right: 5px;
      width: auto; }
      body.news .category:last-child {
        margin-right: auto; } }

body.news .category-box {
  margin-bottom: 20px;
  padding: 0 2px;
  -webkit-justify-content: flex-start;
  justify-content: flex-start; }
  @media only screen and (max-width: 767px) {
    body.news .category-box {
      padding: 0; } }
  body.news .category-box li {
    background-color: white;
    border-radius: 5px;
    color: #0095a1;
    margin-bottom: 5px;
    position: relative;
    text-align: left;
    height: 40px;
    width: calc((100% - 15px)/4);
    /* IE11  */ }
    @media only screen and (min-width: 768px) {
      body.news .category-box li {
        font-size: 14px;
        font-size: 1.4rem;
        margin-right: 5px;
        transition: all .3s; }
        body.news .category-box li:hover {
          box-shadow: 0 0 15px #cce5ef; }
        body.news .category-box li:nth-child(4n) {
          margin-right: 0; }
        body.news .category-box li:nth-child(5), body.news .category-box li:nth-child(6), body.news .category-box li:nth-child(7), body.news .category-box li:nth-child(8) {
          margin-bottom: 0; } }
    @media only screen and (max-width: 767px) {
      body.news .category-box li {
        font-size: 12px;
        font-size: 1.2rem;
        text-align: left;
        height: 30px;
        width: calc((100% - 5px)/2); }
        body.news .category-box li:nth-child(odd) {
          margin-right: 5px; }
          body.news .category-box li:nth-child(odd) a {
            padding-left: 35px; }
        body.news .category-box li:nth-child(even) {
          margin-right: 0; }
          body.news .category-box li:nth-child(even) a {
            padding-left: 40px; } }
    body.news .category-box li a {
      height: 100%;
      width: 100%;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: flex-start;
      justify-content: flex-start;
      -webkit-align-items: center;
      align-items: center; }
    body.news .category-box li .icn {
      display: inline-block;
      position: absolute;
      top: 50%;
      transform: translateY(-50%); }
      @media only screen and (max-width: 767px) {
        body.news .category-box li .icn {
          left: 15px; } }
    body.news .category-box li .text {
      display: inline-block; }
    body.news .category-box li _:lang(x)::-ms-backdrop, body.news .category-box li .text {
      padding-top: 4px; }
    body.news .category-box li.active {
      background-color: #dcf1f5; }
    @media only screen and (min-width: 768px) {
      body.news .category-box li:first-of-type a {
        padding-left: 77px; } }
    body.news .category-box li:first-of-type .icn {
      width: 18px; }
      @media only screen and (min-width: 768px) {
        body.news .category-box li:first-of-type .icn {
          left: 47px; } }
      @media only screen and (max-width: 767px) {
        body.news .category-box li:first-of-type .icn {
          width: 13px; } }
    @media only screen and (min-width: 768px) {
      body.news .category-box li.news a {
        padding-left: 78px; } }
    body.news .category-box li.news .icn {
      width: 17px; }
      @media only screen and (min-width: 768px) {
        body.news .category-box li.news .icn {
          left: 50px; } }
      @media only screen and (max-width: 767px) {
        body.news .category-box li.news .icn {
          width: 12px; } }
    @media only screen and (min-width: 768px) {
      body.news .category-box li.event a {
        padding-left: 83px; } }
    body.news .category-box li.event .icn {
      width: 21px; }
      @media only screen and (min-width: 768px) {
        body.news .category-box li.event .icn {
          left: 50px; } }
      @media only screen and (max-width: 767px) {
        body.news .category-box li.event .icn {
          width: 15px; } }
    @media only screen and (min-width: 768px) {
      body.news .category-box li.recruit a {
        padding-left: 78px; } }
    body.news .category-box li.recruit .icn {
      width: 23px; }
      @media only screen and (min-width: 768px) {
        body.news .category-box li.recruit .icn {
          left: 45px; } }
      @media only screen and (max-width: 767px) {
        body.news .category-box li.recruit .icn {
          width: 17px; } }
    @media only screen and (min-width: 768px) {
      body.news .category-box li.publication a {
        padding-left: 83px; } }
    body.news .category-box li.publication .icn {
      width: 20px; }
      @media only screen and (min-width: 768px) {
        body.news .category-box li.publication .icn {
          left: 50px; } }
      @media only screen and (max-width: 767px) {
        body.news .category-box li.publication .icn {
          width: 15px; } }
    @media only screen and (min-width: 768px) {
      body.news .category-box li.other a {
        padding-left: 78px; } }
    body.news .category-box li.other .icn {
      width: 24px; }
      @media only screen and (min-width: 768px) {
        body.news .category-box li.other .icn {
          left: 45px; } }
      @media only screen and (max-width: 767px) {
        body.news .category-box li.other .icn {
          width: 20px; } }

body.news .article-content {
  width: calc(100% - 220px); }
  @media only screen and (max-width: 767px) {
    body.news .article-content {
      width: 100%; } }
  body.news .article-content .article-list li {
    background-color: white;
    border-radius: 5px;
    position: relative;
    margin-bottom: 5px;
    width: 100%;
    transition: all 0.3s; }
    @media only screen and (min-width: 768px) {
      body.news .article-content .article-list li:hover {
        box-shadow: 0 0 15px #cce5ef; } }
    body.news .article-content .article-list li:last-child {
      margin-bottom: 0; }
    body.news .article-content .article-list li a {
      padding: 20px; }
      @media only screen and (max-width: 767px) {
        body.news .article-content .article-list li a {
          padding: 15px 15px 15px 10px; } }
      body.news .article-content .article-list li a .imager {
        background-color: #ebf4f7;
        border-radius: 100%;
        height: 110px;
        width: 110px;
        overflow: hidden; }
        @media only screen and (max-width: 767px) {
          body.news .article-content .article-list li a .imager {
            height: 70px;
            width: 70px; } }
      body.news .article-content .article-list li a .content {
        padding-top: 8px;
        width: calc(100% - 130px);
        /* IE11  */
        /* IE11  */ }
        @media only screen and (max-width: 767px) {
          body.news .article-content .article-list li a .content {
            margin-top: -4px;
            padding-top: 0;
            width: calc(100% - 80px); } }
        body.news .article-content .article-list li a .content .upper {
          margin-bottom: 19px;
          -webkit-justify-content: flex-start;
          justify-content: flex-start;
          /* IE11  */ }
          @media only screen and (min-width: 768px) {
            body.news .article-content .article-list li a .content .upper {
              padding-right: 54px; } }
          @media only screen and (max-width: 767px) {
            body.news .article-content .article-list li a .content .upper {
              margin-bottom: 3px; } }
          body.news .article-content .article-list li a .content .upper _:lang(x)::-ms-backdrop, body.news .article-content .article-list li a .content .upper .category {
            padding-top: 10px; }
        body.news .article-content .article-list li a .content .article-ttl {
          font-size: 18px;
          font-size: 1.8rem;
          letter-spacing: 0.05em; }
          @media only screen and (min-width: 768px) {
            body.news .article-content .article-list li a .content .article-ttl {
              height: 1em; } }
          @media only screen and (max-width: 767px) {
            body.news .article-content .article-list li a .content .article-ttl {
              font-size: 13px;
              font-size: 1.3rem;
              line-height: 1.66; } }
        body.news .article-content .article-list li a .content _:lang(x)::-ms-backdrop, body.news .article-content .article-list li a .content .article-ttl {
          overflow: hidden;
          padding-top: 3px; }
        body.news .article-content .article-list li a .content .article-prev {
          font-size: 14px;
          font-size: 1.4rem;
          margin-top: 7px; }
          @media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
            body.news .article-content .article-list li a .content .article-prev {
              padding-right: 10px; } }
        body.news .article-content .article-list li a .content _:lang(x)::-ms-backdrop, body.news .article-content .article-list li a .content .article-prev {
          overflow: hidden;
          height: 4.5em; }

body.news .cms-sidebar {
  width: 200px;
  /* IE11  */ }
  @media only screen and (max-width: 767px) {
    body.news .cms-sidebar {
      margin-top: 70px;
      width: 100%; } }
  body.news .cms-sidebar .cms-sidebar-ttl {
    border-radius: 3px;
    background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
    background-image: linear-gradient(to right, #005ca1, #0095a1);
    color: white;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    padding-top: 11px;
    position: relative;
    height: 40px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.news .cms-sidebar .cms-sidebar-ttl:before {
        border-left: 1px solid white;
        content: "";
        display: inline-block;
        margin: 0 auto;
        position: absolute;
        top: 18px;
        border-bottom: 11px;
        right: 25px;
        transform: rotate(-45deg);
        height: 5px;
        width: 5px;
        border-bottom: 1px solid white; }
      body.news .cms-sidebar .cms-sidebar-ttl.is-active {
        border-bottom-left-radius: 3px;
        border-bottom-right-radius: 3px; }
        body.news .cms-sidebar .cms-sidebar-ttl.is-active:before {
          transform: rotate(135deg); } }
  body.news .cms-sidebar _:lang(x)::-ms-backdrop, body.news .cms-sidebar .cms-sidebar-ttl {
    padding-top: 14px; }
  body.news .cms-sidebar .side-element {
    background-color: white;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    padding: 28px 30px 40px; }
    @media only screen and (max-width: 767px) {
      body.news .cms-sidebar .side-element {
        border-bottom-left-radius: 3px;
        border-bottom-right-radius: 3px;
        display: none;
        padding: 25px 25px 30px; } }
    body.news .cms-sidebar .side-element .js-toggle-content {
      display: none; }
    body.news .cms-sidebar .side-element .js-toggle-menu-01, body.news .cms-sidebar .side-element .js-toggle-menu-02 {
      cursor: pointer; }
    body.news .cms-sidebar .side-element ul.side-list:last-child {
      margin-bottom: 0; }
    body.news .cms-sidebar .side-element ul.side-list li.side-item {
      margin-bottom: 20px; }
      body.news .cms-sidebar .side-element ul.side-list li.side-item:last-child {
        margin-bottom: 0; }
      @media only screen and (max-width: 767px) {
        body.news .cms-sidebar .side-element ul.side-list li.side-item {
          margin-bottom: 23px; } }
      body.news .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl {
        border-bottom: 1px dotted #1c4e6a;
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: 0.05;
        padding-bottom: 7px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.news .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl {
            font-size: 14px;
            font-size: 1.4rem;
            padding-bottom: 10px; } }
        body.news .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl:before {
          border-left: 1px solid #1c4e6a;
          content: "";
          display: inline-block;
          margin: 0 auto;
          position: absolute;
          bottom: 11px;
          border-bottom: 11px;
          right: 0;
          transform: rotate(-45deg);
          height: 5px;
          width: 5px;
          border-bottom: 1px solid #1c4e6a; }
        body.news .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl.is-active:before {
          transform: rotate(135deg) !important;
          bottom: 9px; }
      body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
        margin-top: 13px; }
        @media only screen and (min-width: 768px) {
          body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
            display: block; } }
        @media only screen and (max-width: 767px) {
          body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
            margin-top: 20px; } }
        body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li {
          font-size: 14px;
          font-size: 1.4rem;
          margin-bottom: 12px; }
          @media only screen and (min-width: 768px) {
            body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:last-child {
              margin-bottom: 0; } }
          @media only screen and (max-width: 767px) {
            body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li {
              border-left: 1px solid #d9e7ef;
              font-size: 13px;
              font-size: 1.3rem;
              margin-bottom: 10px;
              padding: 1px 0;
              text-align: center;
              width: calc(100%/4); }
              body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:last-child, body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:nth-child(4n) {
                border-right: 1px solid #d9e7ef; } }
          body.news .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li a {
            display: block;
            height: 100%;
            width: 100%; }

body.news .pagination, body.news .wp-pagenavi {
  margin-top: 60px; }
  @media only screen and (max-width: 767px) {
    body.news .pagination, body.news .wp-pagenavi {
      margin-top: 25px; } }

body.news .single-pagination {
  margin-top: 70px; }
  @media only screen and (max-width: 767px) {
    body.news .single-pagination {
      margin-top: 35px; } }

body.news.single .news-article {
  padding: 30px 50px 60px 50px; }
  @media only screen and (max-width: 767px) {
    body.news.single .news-article {
      padding: 25px 25px 40px; } }

body.news.single article table {
  margin-top: 50px;
  border-top: 1px solid #0095a1;
  table-layout: fixed;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 1.7;
  letter-spacing: 0.05em; }
  @media only screen and (max-width: 767px) {
    body.news.single article table {
      margin-top: 33px;
      font-size: 14px;
      font-size: 1.4rem; } }
  body.news.single article table:nth-child(1) {
    margin-top: 0; }
  body.news.single article table tr {
    height: auto !important; }
    @media only screen and (max-width: 767px) {
      body.news.single article table tr {
        display: block;
        width: 100% !important;
        border-bottom: 1px solid #0095a1; } }
  body.news.single article table td {
    text-align: left;
    vertical-align: top;
    height: auto !important; }
    @media only screen and (min-width: 768px) {
      body.news.single article table td {
        border-bottom: 1px solid #0095a1;
        padding: 15px 25px 16px; } }
    @media only screen and (max-width: 767px) {
      body.news.single article table td {
        display: block;
        width: 100% !important;
        padding: 14px; } }
    body.news.single article table td:nth-child(1) {
      font-weight: bold;
      background-color: #f0fbfb; }
      @media only screen and (min-width: 768px) {
        body.news.single article table td:nth-child(1) {
          width: 33.5% !important; } }
    @media only screen and (min-width: 768px) {
      body.news.single article table td:nth-child(2) {
        width: 66.5% !important; } }

body.news .no-article-message {
  font-size: 14pxpx;
  font-size: 1.4pxrem;
  font-weight: bold;
  padding-top: 30px;
  text-align: center; }

body.news2.single section#articles {
  margin-top: 20px; }
  @media only screen and (max-width: 767px) {
    body.news2.single section#articles {
      margin-top: 50px; } }
  body.news2.single section#articles .upper {
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding-right: 0;
    width: 100%; }
    body.news2.single section#articles .upper .date {
      padding-top: 7px;
      font-size: 13px;
      font-size: 1.3rem;
      font-family: "Oswald", sans-serif;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        body.news2.single section#articles .upper .date {
          font-size: 12px;
          font-size: 1.2rem;
          padding-top: 3px; } }
    body.news2.single section#articles .upper .pres-cat-list {
      width: calc(100% - 70px);
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
      body.news2.single section#articles .upper .pres-cat-list li {
        margin-right: 5px;
        margin-bottom: 5px; }
    body.news2.single section#articles .upper .present-category {
      width: 240px; }
      @media only screen and (max-width: 767px) {
        body.news2.single section#articles .upper .present-category {
          width: 160px; } }
  body.news2.single section#articles article {
    padding: 30px 50px 60px; }
    @media only screen and (max-width: 767px) {
      body.news2.single section#articles article {
        padding: 25px 25px 40px; } }
    body.news2.single section#articles article h4:after, body.news2.single section#articles article h4:before {
      background: #2593a5; }
    body.news2.single section#articles article h5 {
      color: #383838; }
      body.news2.single section#articles article h5:before {
        background-color: #2593a5; }
    body.news2.single section#articles article .box, body.news2.single section#articles article blockquote {
      background-color: #f9f9f9;
      border: none; }
    body.news2.single section#articles article table {
      margin-top: 50px;
      border-top: 1px solid #383838;
      table-layout: fixed;
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 1.7;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        body.news2.single section#articles article table {
          margin-top: 33px;
          font-size: 14px;
          font-size: 1.4rem; } }
      body.news2.single section#articles article table:nth-child(1) {
        margin-top: 0; }
      body.news2.single section#articles article table tr {
        height: auto !important; }
        @media only screen and (max-width: 767px) {
          body.news2.single section#articles article table tr {
            display: block;
            width: 100% !important;
            border-bottom: 1px solid #383838; } }
      body.news2.single section#articles article table td {
        text-align: left;
        vertical-align: top;
        height: auto !important; }
        @media only screen and (min-width: 768px) {
          body.news2.single section#articles article table td {
            border-bottom: 1px solid #383838;
            padding: 15px 25px 16px; } }
        @media only screen and (max-width: 767px) {
          body.news2.single section#articles article table td {
            display: block;
            width: 100% !important;
            padding: 14px; } }
        body.news2.single section#articles article table td:nth-child(1) {
          font-weight: bold;
          background-color: #f4f8fa; }
          @media only screen and (min-width: 768px) {
            body.news2.single section#articles article table td:nth-child(1) {
              width: 33.5% !important; } }
        @media only screen and (min-width: 768px) {
          body.news2.single section#articles article table td:nth-child(2) {
            width: 66.5% !important; } }
    body.news2.single section#articles article:not(.cms-new) h5 em, body.news2.single section#articles article:not(.cms-new) h4 em, body.news2.single section#articles article:not(.cms-new) h2 em, body.news2.single section#articles article:not(.cms-new) em {
      background: url("../images/common/bgem2.png") bottom left/auto 8px repeat-x; }
      @media only screen and (max-width: 767px) {
        body.news2.single section#articles article:not(.cms-new) h5 em, body.news2.single section#articles article:not(.cms-new) h4 em, body.news2.single section#articles article:not(.cms-new) h2 em, body.news2.single section#articles article:not(.cms-new) em {
          background: url("../images/common/bgem2.png") center left/auto 5px repeat-x; } }
    body.news2.single section#articles article.cms-new span[style*="text-decoration: underline"] {
      background: url("../images/common/bgem2.png") bottom left/auto 8px repeat-x; }
      @media only screen and (max-width: 767px) {
        body.news2.single section#articles article.cms-new span[style*="text-decoration: underline"] {
          background: url("../images/common/bgem2.png") center left/auto 5px repeat-x; } }
  body.news2.single section#articles .single-pagination {
    margin-top: 70px; }
    @media only screen and (max-width: 767px) {
      body.news2.single section#articles .single-pagination {
        margin-top: 35px; } }
    body.news2.single section#articles .single-pagination .main {
      background: #383838; }
      @media only screen and (min-width: 768px) {
        body.news2.single section#articles .single-pagination .main {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.news2.single section#articles .single-pagination .main:hover {
            opacity: .7; } }
      @media only screen and (min-width: 768px) {
        body.news2.single section#articles .single-pagination .main:hover {
          background: #383838; } }
    @media only screen and (min-width: 768px) {
      body.news2.single section#articles .single-pagination .next:hover, body.news2.single section#articles .single-pagination .back:hover {
        background-color: #e1e1e1;
        box-shadow: none; } }
    body.news2.single section#articles .single-pagination .next:after, body.news2.single section#articles .single-pagination .back:after {
      border-left: 1px solid #383838;
      border-bottom: 1px solid #383838; }

body.news2 .mv__img {
  background-image: url("../images/garden-pier/news2/mv.jpg"); }

body.news2 .mv__title--icon img {
  width: 40px; }
  @media only screen and (max-width: 767px) {
    body.news2 .mv__title--icon img {
      width: 43px; } }

@media only screen and (max-width: 767px) {
  body.news2 .mv__title--txt {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.375;
    text-align: center; } }

body.news2 main {
  background-color: #fff9e2;
  background-image: url("../images/garden-pier/common/front-bg-pattern.png");
  background-position: top left;
  background-size: 32px;
  background-repeat: repeat; }

body.news2 section#side-cms {
  padding-top: 120px; }
  @media only screen and (max-width: 767px) {
    body.news2 section#side-cms {
      padding-top: 70px; } }

body.news2 section#articles {
  padding-bottom: 220px; }
  @media only screen and (max-width: 767px) {
    body.news2 section#articles {
      padding-bottom: 120px; } }

body.news2 ul.category-list {
  -webkit-justify-content: flex-start;
  justify-content: flex-start; }
  body.news2 ul.category-list li {
    background-color: white;
    border-radius: 5px;
    margin-bottom: 5px;
    position: relative;
    transition: all .3s;
    text-align: center;
    height: 80px;
    width: calc((100% - 15px)/4); }
    body.news2 ul.category-list li:last-child {
      margin-right: 0; }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li {
        margin-right: 5px; }
        body.news2 ul.category-list li:hover {
          box-shadow: none; }
        body.news2 ul.category-list li:nth-child(4) {
          margin-right: 0; } }
    @media only screen and (max-width: 767px) {
      body.news2 ul.category-list li {
        border-radius: 3px;
        margin-right: 5px;
        width: calc((100% - 5px)/2); }
        body.news2 ul.category-list li:nth-child(even) {
          margin-right: 0; } }
    body.news2 ul.category-list li.active {
      background-color: #eef7f8;
      pointer-events: none; }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li:nth-child(1):hover {
        background-color: #eef7f8; } }
    body.news2 ul.category-list li:nth-child(1) img {
      margin-top: 14px;
      width: 25px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li:nth-child(1) img {
          margin-top: 12px;
          width: 27px; } }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li.portbuilding:hover {
        background-color: #fdf6f3; } }
    body.news2 ul.category-list li.portbuilding img {
      margin-top: 9px;
      width: 32px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li.portbuilding img {
          margin-top: 10px;
          width: 28px; } }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li.museum:hover {
        background-color: #f2f8fb; } }
    body.news2 ul.category-list li.museum img {
      margin-top: 11px;
      width: 45px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li.museum img {
          margin-top: 11px;
          width: 41px; } }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li.fuji:hover {
        background-color: #fefbf2; } }
    body.news2 ul.category-list li.fuji img {
      margin-top: 9px;
      width: 34px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li.fuji img {
          margin-top: 11px;
          width: 30px; } }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li.jetty:hover {
        background-color: #f5fbf4; } }
    body.news2 ul.category-list li.jetty img {
      margin-top: 15px;
      width: 66px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li.jetty img {
          width: 65px; } }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li.porthouse:hover {
        background-color: #f4fbfc; } }
    body.news2 ul.category-list li.porthouse img {
      margin-top: 15px;
      width: 70px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li.porthouse img {
          width: 65px; } }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li.harborlodge:hover {
        background-color: #fdf6f9; } }
    body.news2 ul.category-list li.harborlodge img {
      margin-top: 12px;
      width: 40px; }
    @media only screen and (min-width: 768px) {
      body.news2 ul.category-list li.other:hover {
        background-color: #fdfdfd; } }
    body.news2 ul.category-list li.other img {
      margin-top: 11px;
      width: 30px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li.other img {
          margin-top: 12px;
          width: 29px; } }
    body.news2 ul.category-list li figure figcaption {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.1em;
      margin: 0 auto;
      position: absolute;
      left: 0;
      right: 0;
      bottom: 15px; }
      @media only screen and (max-width: 767px) {
        body.news2 ul.category-list li figure figcaption {
          font-size: 13px;
          font-size: 1.3rem;
          letter-spacing: 0.05em; } }

body.news2 .cms-sidebar {
  margin-top: 15px; }
  @media only screen and (max-width: 767px) {
    body.news2 .cms-sidebar {
      margin-top: 35px; } }
  body.news2 .cms-sidebar .cms-sidebar-ttl {
    background: #2593a5; }
  body.news2 .cms-sidebar .side-element {
    border: 1px solid white; }

@media only screen and (min-width: 768px) {
  body.news2 .cms-sidebar .side-element {
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    padding: 37px 30px 38px; } }

@media only screen and (max-width: 767px) {
  body.news2 .cms-sidebar .side-element {
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px; } }

body.news2 section#articles {
  margin-top: 80px; }
  @media only screen and (max-width: 767px) {
    body.news2 section#articles {
      margin-top: 50px; } }
  body.news2 section#articles ul.article-list {
    /* Edge(Chromium) */ }
    @media only screen and (min-width: 768px) {
      body.news2 section#articles ul.article-list {
        -webkit-justify-content: flex-start;
        justify-content: flex-start; } }
    body.news2 section#articles ul.article-list li {
      margin-bottom: 70px;
      position: relative;
      text-align: center;
      width: calc((100% - 50px)/3); }
      @media only screen and (min-width: 768px) {
        body.news2 section#articles ul.article-list li {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.news2 section#articles ul.article-list li:hover {
            opacity: .7; } }
      @media only screen and (min-width: 768px) {
        body.news2 section#articles ul.article-list li {
          margin-right: 25px; }
          body.news2 section#articles ul.article-list li:nth-child(3n) {
            margin-right: 0; } }
      @media only screen and (max-width: 767px) {
        body.news2 section#articles ul.article-list li {
          margin-bottom: 40px;
          width: calc((100% - 5px)/2); } }
      body.news2 section#articles ul.article-list li a {
        display: block;
        height: 100%;
        width: 100%;
        /* IE11  */
        /* IE11  */ }
        body.news2 section#articles ul.article-list li a .date {
          font-size: 13px;
          font-size: 1.3rem;
          font-family: "Oswald", sans-serif;
          letter-spacing: 0.05em;
          margin: 0 auto;
          position: absolute;
          left: 23.14%;
          top: 10px; }
          @media only screen and (max-width: 1000px) {
            body.news2 section#articles ul.article-list li a .date {
              top: 6px;
              left: 22%;
              font-size: 12px;
              font-size: 1.2rem; } }
          @media only screen and (max-width: 767px) {
            body.news2 section#articles ul.article-list li a .date {
              left: 19%; } }
        body.news2 section#articles ul.article-list li a .imager {
          position: relative; }
          body.news2 section#articles ul.article-list li a .imager .img-thumb {
            display: none; }
          body.news2 section#articles ul.article-list li a .imager .frame {
            margin: 0 auto;
            position: absolute;
            left: 0;
            right: 0;
            top: 0; }
            body.news2 section#articles ul.article-list li a .imager .frame img {
              height: 182px;
              width: 100%;
              max-width: none; }
              @media only screen and (max-width: 767px) {
                body.news2 section#articles ul.article-list li a .imager .frame img {
                  height: calc(100% + 1px); } }
          body.news2 section#articles ul.article-list li a .imager svg {
            height: 100%;
            width: 100%; }
            @media only screen and (max-width: 767px) {
              body.news2 section#articles ul.article-list li a .imager svg {
                display: block;
                height: 100%;
                width: 100%; } }
        body.news2 section#articles ul.article-list li a .article-ttl {
          font-size: 15px;
          font-size: 1.5rem;
          letter-spacing: 0.05em;
          font-weight: 500;
          line-height: 1.71;
          margin: 15px auto 14px;
          text-align: justify; }
          @media only screen and (max-width: 767px) {
            body.news2 section#articles ul.article-list li a .article-ttl {
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1.57;
              margin: 10px auto 12px;
              height: 42px; } }
        body.news2 section#articles ul.article-list li a _:lang(x)::-ms-backdrop, body.news2 section#articles ul.article-list li a .article-ttl {
          overflow: hidden;
          padding-top: 3px;
          height: 3.3em; }
        body.news2 section#articles ul.article-list li a _:lang(x)::-ms-backdrop, body.news2 section#articles ul.article-list li a .category {
          padding-top: 8px; }
    @media only screen and (min-width: 768px) {
      body.news2 section#articles ul.article-list :-ms-lang(x)::backdrop, body.news2 section#articles ul.article-list li {
        width: calc((100% - 53px)/3); } }

body.news2 .pagination .last {
  background-image: url(../images/common/arrw_r_blk.png); }

body.news2 .pagination .first {
  background-image: url(../images/common/arrw_l_blk.png); }

body.news2 .pagination a {
  color: #383838; }
  @media only screen and (min-width: 768px) {
    body.news2 .pagination a:hover {
      background-color: #e1e1e1;
      box-shadow: none; } }

body.news2 .pagination a.current, body.news2 .pagination .pagination span.current, body.news2 .pagination .wp-pagenavi a.current, body.news2 .pagination .wp-pagenavi span.current {
  background-color: #383838;
  background-image: none; }

@media only screen and (min-width: 768px) {
  body.news2 .pagination span:hover {
    box-shadow: none; } }

body.news2 .present-category {
  border-radius: 5px;
  color: white;
  font-size: 13px;
  font-size: 1.3rem;
  letter-spacing: 0.05em;
  padding-top: 6px;
  text-align: center;
  height: 26px; }
  @media only screen and (max-width: 767px) {
    body.news2 .present-category {
      font-size: 10px;
      font-size: 1rem;
      padding-top: 4px;
      height: 18px; } }
  body.news2 .present-category.portbuilding {
    background-color: #da5019; }
  body.news2 .present-category.museum {
    background-color: #007fb1; }
  body.news2 .present-category.fuji {
    background-color: #e7a800; }
  body.news2 .present-category.jetty {
    background-color: #41ab28; }
  body.news2 .present-category.porthouse {
    background-color: #2fb2c2; }
  body.news2 .present-category.harborlodge {
    background-color: #d04d82; }
  body.news2 .present-category.other {
    background-color: #c1c1c1; }

body.org .mv-side {
  background-image: url("../images/org/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.org .mv-side {
      background-image: url("../images/org/mv_sp.jpg"); } }

body.org main {
  padding-top: 120px;
  padding-bottom: 220px; }
  @media only screen and (max-width: 767px) {
    body.org main {
      padding-top: 60px;
      padding-bottom: 120px; } }

body.org section {
  margin-top: 120px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.org section {
      margin-top: 65px; } }
  body.org section:nth-of-type(-n + 1) {
    margin-top: 0; }
  body.org section .ttl-01 {
    margin-bottom: 70px; }
    @media only screen and (max-width: 767px) {
      body.org section .ttl-01 {
        margin-bottom: 40px; } }
  body.org section .inner-sec {
    margin-top: 60px; }
    @media only screen and (max-width: 767px) {
      body.org section .inner-sec {
        margin-top: 30px; } }
  body.org section p a {
    color: #0095a1;
    border-bottom: #0095a1 solid 1px; }
    @media only screen and (min-width: 768px) {
      body.org section p a {
        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s; }
        body.org section p a:hover {
          opacity: 0.7; } }
  body.org section .heading-text p {
    margin-bottom: 20px; }
    @media only screen and (max-width: 767px) {
      body.org section .heading-text p {
        margin-bottom: 15px; } }

body.org section.inner-sec .ttl-02 {
  margin-bottom: 30px; }
  @media only screen and (max-width: 767px) {
    body.org section.inner-sec .ttl-02 {
      margin-bottom: 22px; } }

body.org ol {
  counter-reset: item;
  list-style-type: none;
  padding-left: 0; }
  body.org ol li {
    text-align: left;
    position: relative;
    padding-left: 15px;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5em;
    margin-top: 5px; }
    body.org ol li:nth-child(-n + 1) {
      margin-top: 0; }
    @media only screen and (max-width: 767px) {
      body.org ol li {
        line-height: 1.714285714em; } }
    body.org ol li:before {
      counter-increment: item;
      content: counter(item) ".";
      position: absolute;
      left: 0; }

body.org .heading-img {
  margin-bottom: 50px; }
  @media only screen and (max-width: 767px) {
    body.org .heading-img {
      margin-bottom: 20px; } }

body.org #info {
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s;
  padding: 70px 0;
  margin-top: 60px; }
  body.org #infoa:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    body.org #info {
      padding: 45px 0;
      margin-top: 35px; } }
  body.org #info .ttl-02 {
    position: relative; }
    body.org #info .ttl-02 span {
      font-size: 12px;
      font-size: 1.2rem;
      letter-spacing: 0.05em;
      color: #1c4e6a;
      position: absolute;
      right: 0;
      bottom: 10px; }
      @media only screen and (max-width: 767px) {
        body.org #info .ttl-02 span {
          font-size: 10px;
          font-size: 1rem; } }
  body.org #info__box {
    background-color: #FFF;
    padding: 50px 60px; }
    @media only screen and (max-width: 767px) {
      body.org #info__box {
        padding: 30px 25px; } }
    body.org #info__box ul {
      margin-top: 35px; }
      @media only screen and (max-width: 767px) {
        body.org #info__box ul {
          margin-top: 25px; } }
      body.org #info__box ul li {
        position: relative;
        margin-top: 12px;
        padding-left: 15px; }
        @media only screen and (max-width: 767px) {
          body.org #info__box ul li {
            margin-top: 7px;
            padding-left: 10px; } }
        body.org #info__box ul li:nth-of-type(-n + 1) {
          margin-top: 0; }
        body.org #info__box ul li:before {
          content: '';
          width: 6px;
          height: 6px;
          border-radius: 50%;
          background-color: #1c4e6a;
          position: absolute;
          left: 0;
          top: 13px; }
          @media only screen and (max-width: 767px) {
            body.org #info__box ul li:before {
              width: 4px;
              height: 4px;
              top: 10px; } }
        body.org #info__box ul li a {
          font-size: 14px;
          font-size: 1.4rem;
          color: #0095a1;
          letter-spacing: 0.05em;
          line-height: 2em;
          border-bottom: #0095a1 solid 1px;
          position: relative;
          padding-bottom: 3px; }
          @media only screen and (min-width: 768px) {
            body.org #info__box ul li a {
              -webkit-transition: opacity 0.3s;
              -moz-transition: opacity 0.3s;
              -o-transition: opacity 0.3s;
              transition: opacity 0.3s; }
              body.org #info__box ul li a:hover {
                opacity: 0.7; } }
          @media only screen and (max-width: 767px) {
            body.org #info__box ul li a {
              font-size: 13px;
              font-size: 1.3rem;
              line-height: 1.714285714em; } }
          body.org #info__box ul li a .sml {
            font-size: 11px;
            font-size: 1.1rem;
            margin-left: 4px; }
            @media only screen and (max-width: 767px) {
              body.org #info__box ul li a .sml {
                font-size: 10px;
                font-size: 1rem; } }
        body.org #info__box ul li img {
          width: 13px;
          position: relative;
          top: -8px;
          left: 5px; }
          @media only screen and (max-width: 767px) {
            body.org #info__box ul li img {
              width: 11px;
              top: -6px; } }

body.org #about dl {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media only screen and (min-width: 768px) {
    body.org #about dl:last-of-type dt {
      border-bottom: none; }
    body.org #about dl:last-of-type dd {
      border-bottom: #d9e7ef solid 1px; } }
  body.org #about dl dt {
    color: #0095a1;
    font-weight: bold;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 2em;
    background-color: rgba(0, 149, 161, 0.1);
    width: 200px;
    text-align: left;
    padding: 25px 0 0 50px;
    border-bottom: #FFF solid 1px; }
    @media only screen and (max-width: 767px) {
      body.org #about dl dt {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: normal;
        width: 100%;
        border-bottom: none;
        min-height: 40px;
        padding: 9px 0 0 15px; } }
  body.org #about dl dd {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2em;
    letter-spacing: 0.05em;
    padding: 25px 0 25px 60px;
    width: calc(100% - 200px);
    text-align: left;
    border-top: #d9e7ef solid 1px; }
    @media only screen and (max-width: 767px) {
      body.org #about dl dd {
        width: 100%;
        border-top: none;
        line-height: 1.714285714em;
        padding: 10px 15px; } }
    @media only screen and (min-width: 768px) {
      body.org #about dl dd a {
        -webkit-transition: opacity 0.3s;
        -moz-transition: opacity 0.3s;
        -o-transition: opacity 0.3s;
        transition: opacity 0.3s; }
        body.org #about dl dd a:hover {
          opacity: 0.7; } }
    body.org #about dl dd > div:nth-of-type(2) {
      border-top: #d9e7ef dotted 1px;
      border-bottom: #d9e7ef dotted 1px;
      padding: 20px 0;
      margin: 20px 0; }
      @media only screen and (max-width: 767px) {
        body.org #about dl dd > div:nth-of-type(2) {
          padding: 16px 0;
          margin: 16px 0; } }
    @media only screen and (max-width: 767px) {
      body.org #about dl dd > div:nth-of-type(1) {
        padding-top: 5px; }
      body.org #about dl dd > div:nth-of-type(3) {
        padding-bottom: 16px;
        border-bottom: #d9e7ef solid 1px; } }
    body.org #about dl dd > div span {
      font-size: 15px;
      font-size: 1.5rem;
      display: inline-block;
      margin-bottom: 5px; }

body.org #recruit .heading-img ~ p {
  margin-bottom: 45px; }
  @media only screen and (max-width: 767px) {
    body.org #recruit .heading-img ~ p {
      margin-bottom: 25px; } }

body.org #handing {
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s;
  padding: 80px 0; }
  body.org #handinga:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    body.org #handing {
      padding: 50px 0; } }
  body.org #handing__box {
    background-color: #FFF;
    border-radius: 5px;
    padding: 80px 60px 50px; }
    @media only screen and (max-width: 767px) {
      body.org #handing__box {
        padding: 45px 25px 35px; } }
  body.org #handing__list {
    margin-top: 20px; }
    @media only screen and (max-width: 767px) {
      body.org #handing__list {
        margin-top: 10px; } }
    body.org #handing__list li {
      border-bottom: #d9e7ef dotted 1px;
      padding: 15px 20px; }
      @media only screen and (max-width: 767px) {
        body.org #handing__list li {
          padding: 12px 20px; } }
      body.org #handing__list li:before {
        left: 5px; }

body.org #please .ttl-02 ~ p {
  margin-bottom: 35px; }
  @media only screen and (max-width: 767px) {
    body.org #please .ttl-02 ~ p {
      margin-bottom: 30px; } }

@media only screen and (min-width: 768px) {
  body.org #please .list-box01 ul.typeC {
    max-width: 600px;
    width: 100%;
    margin: 0 auto; }
    body.org #please .list-box01 ul.typeC li {
      margin-top: 10px; }
      body.org #please .list-box01 ul.typeC li:nth-child(-n + 2) {
        margin-top: 0; }
      body.org #please .list-box01 ul.typeC li:nth-child(2) {
        margin-left: 126px; }
      body.org #please .list-box01 ul.typeC li:nth-child(5) {
        margin-left: 79px; }
  body.org #please .list-box01 ul.typeD {
    width: calc(100% - 140px);
    margin: 0 auto; }
    body.org #please .list-box01 ul.typeD li {
      margin-top: 10px; }
      body.org #please .list-box01 ul.typeD li:nth-child(-n + 1) {
        margin-top: 0; } }

@media only screen and (max-width: 767px) {
  body.org #please .list-box01 {
    padding-top: 50px; } }

body.org #please .btn {
  margin-top: 30px;
  line-height: 1.4; }
  @media only screen and (max-width: 767px) {
    body.org #please .btn {
      max-width: 275px; } }
  body.org #please .btn .sml {
    font-size: 12px;
    font-size: 1.2rem; }

body.org #anchor-01 {
  position: relative; }
  @media only screen and (min-width: 768px) {
    body.org #anchor-01 {
      top: -250px; } }
  @media only screen and (max-width: 767px) {
    body.org #anchor-01 {
      top: -120px; } }

body.org #anchor-01, body.org .anchor {
  position: relative; }
  @media only screen and (min-width: 768px) {
    body.org #anchor-01, body.org .anchor {
      top: -150px; } }
  @media only screen and (max-width: 767px) {
    body.org #anchor-01, body.org .anchor {
      top: -30px; } }

body.partnership .mv-side {
  background-image: url("../images/partnership/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.partnership .mv-side {
      background-image: url("../images/partnership/mv_sp.jpg"); } }

body.partnership .partnership-heading {
  padding: 110px 0 120px; }
  @media only screen and (max-width: 767px) {
    body.partnership .partnership-heading {
      padding: 60px 0 70px; } }
  body.partnership .partnership-heading__note {
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s;
    padding: 30px 20px 20px;
    border-radius: 5px;
    margin: 50px 0 50px; }
    body.partnership .partnership-heading__notea:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      body.partnership .partnership-heading__note {
        padding: 30px 20px 24px;
        margin: 30px 0 30px; } }
    body.partnership .partnership-heading__note h3 {
      font-size: 18px;
      font-size: 1.8rem;
      color: #0095a1;
      font-weight: bold;
      text-align: center;
      margin-bottom: 20px; }
      @media only screen and (max-width: 767px) {
        body.partnership .partnership-heading__note h3 {
          font-size: 15px;
          font-size: 1.5rem;
          letter-spacing: 0.1em;
          margin-bottom: 17px; } }
    body.partnership .partnership-heading__note p {
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.partnership .partnership-heading__note p {
          text-align: justify; } }
  @media only screen and (max-width: 767px) {
    body.partnership .partnership-heading .contact-box02 div {
      text-align: center; } }

body.partnership section {
  text-align: center;
  padding: 120px 0 210px;
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s; }
  body.partnership sectiona:hover {
    background-position: right center; }
  @media only screen and (max-width: 767px) {
    body.partnership section {
      padding: 68px 0 115px; } }
  body.partnership section .ttl-01 {
    margin-bottom: 70px; }
    @media only screen and (max-width: 767px) {
      body.partnership section .ttl-01 {
        margin-bottom: 40px; } }

body.partnership .company-list li img.size1 {
  height: 67px; }
  @media only screen and (max-width: 1050px) {
    body.partnership .company-list li img.size1 {
      height: 67%; } }

body.partnership .company-list li img.size2 {
  height: 54px; }
  @media only screen and (max-width: 1050px) {
    body.partnership .company-list li img.size2 {
      height: 54%; } }

body.partnership .company-list li img.size3 {
  height: 25px; }
  @media only screen and (max-width: 1050px) {
    body.partnership .company-list li img.size3 {
      height: 25%; } }

body.partnership .partnership-note {
  margin-top: 15px; }

body.partnership .txt-note {
  padding-left: 15px;
  text-indent: -15px;
  font-size: 12px;
  font-size: 1.2rem; }
  body.partnership .txt-note .fix-space {
    display: inline-block;
    margin-left: 10px; }

body.subpage-pier.s--fuji .mv__img {
  background-image: url(../images/garden-pier/fuji/mv-bg-pc.jpg); }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji .mv__img {
      background-image: url(../images/garden-pier/fuji/mv-bg-sp.jpg); } }

@media only screen and (max-width: 767px) {
  body.subpage-pier.s--fuji .mv .mv__title--icon img {
    width: 37px; } }

body.subpage-pier.s--fuji section.front {
  background-color: #fefbf2; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji section.front .inner {
      position: relative; }
      body.subpage-pier.s--fuji section.front .inner:after {
        background-image: url("../images/garden-pier/fuji/baloon.png");
        background-size: 74px 35px;
        content: "";
        display: block;
        position: absolute;
        right: 15px;
        top: -31px;
        height: 35px;
        width: 74px; } }
  body.subpage-pier.s--fuji section.front .wrapper .img:before {
    background-image: url("../images/garden-pier/fuji/char.svg");
    background-size: 70px 131px;
    left: -19px;
    bottom: -24px;
    height: 131px;
    width: 70px;
    right: auto;
    position: absolute; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.front .wrapper .img:before {
        background-size: 45px 82px;
        left: 11px;
        bottom: -14px;
        height: 82px;
        width: 45px; } }
  body.subpage-pier.s--fuji section.front .wrapper .img:after {
    background-image: url("../images/garden-pier/fuji/baloon.png");
    background-size: 116px 54px;
    right: -40px;
    top: -30px;
    left: auto;
    height: 54px;
    width: 116px;
    position: absolute; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.front .wrapper .img:after {
        display: none; } }
  body.subpage-pier.s--fuji section.front .banner {
    margin-top: 60px;
    display: block;
    text-align: center; }
    @media only screen and (min-width: 768px) {
      body.subpage-pier.s--fuji section.front .banner {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        body.subpage-pier.s--fuji section.front .banner:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.front .banner {
        margin-top: 30px; }
        body.subpage-pier.s--fuji section.front .banner img {
          width: 100%; } }

body.subpage-pier.s--fuji section.intro h4 {
  margin-left: auto;
  margin-right: auto; }
  body.subpage-pier.s--fuji section.intro h4 em {
    color: #e7a800; }
  body.subpage-pier.s--fuji section.intro h4 span.underline {
    background: url("../images/garden-pier/fuji/bgem.png") bottom left/auto 10px repeat-x;
    padding-bottom: 1px;
    position: relative; }

@media only screen and (min-width: 768px) and (max-width: 1040px) {
  body.subpage-pier.s--fuji section.intro .box__point--top {
    padding-left: 30px; } }

@media only screen and (max-width: 767px) {
  body.subpage-pier.s--fuji section.intro .duo-box {
    margin-bottom: 22px; }
    body.subpage-pier.s--fuji section.intro .duo-box .img {
      margin-bottom: 0 !important;
      width: calc(50% - 4px); } }

@media only screen and (min-width: 768px) and (max-width: 1040px) {
  body.subpage-pier.s--fuji section.intro .fix-pad .box__point--top {
    padding-left: 30px; } }

@media only screen and (max-width: 767px) {
  body.subpage-pier.s--fuji section.intro .fix-pad {
    padding: 0 25px; } }

body.subpage-pier.s--fuji section.intro .division {
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji section.intro .division {
      height: 65px; } }
  @media only screen and (min-width: 768px) {
    body.subpage-pier.s--fuji section.intro .division.div1 {
      height: 95px; }
    body.subpage-pier.s--fuji section.intro .division.div2 {
      height: 100px; }
    body.subpage-pier.s--fuji section.intro .division.div3 {
      height: 107px; }
    body.subpage-pier.s--fuji section.intro .division.div4 {
      height: 106px; }
      body.subpage-pier.s--fuji section.intro .division.div4:before, body.subpage-pier.s--fuji section.intro .division.div4:after {
        transform: translateY(-50%); }
    body.subpage-pier.s--fuji section.intro .division.div5 {
      height: 99px; } }
  body.subpage-pier.s--fuji section.intro .division:before, body.subpage-pier.s--fuji section.intro .division:after {
    content: '';
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    width: 100%;
    height: 7px;
    background: url(../images/garden-pier/fuji/border.png) left center/26px 7px repeat-x;
    display: block; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.intro .division:before, body.subpage-pier.s--fuji section.intro .division:after {
        background-size: 13px 4px;
        top: 56%;
        height: 4px;
        width: calc(100% - 50px); } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji section.intro .point p {
    font-size: 18px;
    line-height: 1.5; }
  body.subpage-pier.s--fuji section.intro .point ul {
    -webkit-justify-content: flex-start;
    justify-content: flex-start; }
  body.subpage-pier.s--fuji section.intro .point.pt1 {
    margin-left: calc((100% - 770px)/ 2); } }

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1040px) {
  body.subpage-pier.s--fuji section.intro .point.pt1 {
    margin-left: 0; } }

@media only screen and (min-width: 768px) {
    body.subpage-pier.s--fuji section.intro .point.pt1 ul li:nth-child(1) {
      width: 55.84%; } }

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 970px) {
  body.subpage-pier.s--fuji section.intro .point.pt2 ul {
    -webkit-flex-direction: column;
    flex-direction: column; } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji section.intro .point.pt2 ul li:nth-child(1) {
    width: 51.94%; }
  body.subpage-pier.s--fuji section.intro .point.pt3 {
    margin-top: -154px; } }

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1040px) {
  body.subpage-pier.s--fuji section.intro .point.pt3 {
    margin-left: 20px !important;
    width: 50%; }
    body.subpage-pier.s--fuji section.intro .point.pt3 ul {
      padding: 16px 5px 5px 17px !important; }
      body.subpage-pier.s--fuji section.intro .point.pt3 ul li {
        font-size: 13px;
        font-size: 1.3rem; } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji section.intro .point.pt4 {
    margin-top: -40px; } }

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1420px) {
  body.subpage-pier.s--fuji section.intro .point.pt4 {
    margin-top: 10px; } }

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1290px) {
  body.subpage-pier.s--fuji section.intro .point.pt4 {
    margin-top: 10px; } }

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1040px) {
  body.subpage-pier.s--fuji section.intro .point.pt4 {
    margin-left: 30px !important;
    width: calc(100% - 60px) !important; } }

@media only screen and (min-width: 768px) {
    body.subpage-pier.s--fuji section.intro .point.pt4 ul li:nth-child(1) {
      width: 53.16%; } }

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1040px) {
  body.subpage-pier.s--fuji section.intro .point.pt5 {
    margin-left: 0 !important; } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji section.intro .point.pt5 ul li:nth-child(1) {
    width: 40.14%; } }

@media only screen and (max-width: 767px) {
  body.subpage-pier.s--fuji section.intro .point {
    order: unset; } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji section.intro .point.center-align {
    margin-top: 50px;
    max-width: 770px;
    width: 100%; } }
  @media only screen and (min-width: 768px) and (max-width: 1040px) {
    body.subpage-pier.s--fuji section.intro .point.center-align {
      margin-left: 30px;
      width: calc(100% - 60px); } }

@media only screen and (max-width: 767px) {
  body.subpage-pier.s--fuji section.intro .point.center-align {
    margin-top: 25px; } }

body.subpage-pier.s--fuji section.intro .point p {
  background-color: #e7a800; }

@media only screen and (max-width: 767px) {
  body.subpage-pier.s--fuji section.intro .point ul {
    padding: 14px 25px 20px; } }

body.subpage-pier.s--fuji section.intro .point li {
  text-align: left; }
  body.subpage-pier.s--fuji section.intro .point li:before {
    background-color: #e7a800; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.intro .point li:before {
        transform: none;
        top: 10px; } }

body.subpage-pier.s--fuji section.intro .box__center .box__point--top {
  text-align: center; }

body.subpage-pier.s--fuji section.intro .box__center .img {
  max-width: 770px;
  margin-bottom: 33px;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji section.intro .box__center .img {
      margin-bottom: 22px; } }

body.subpage-pier.s--fuji section.intro .box__center p {
  max-width: 770px;
  width: 100%; }

body.subpage-pier.s--fuji section.intro .box__center .point {
  margin-top: 32px; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji section.intro .box__center .point {
      margin-top: 25px; } }

body.subpage-pier.s--fuji section.intro .box__center .duo-box {
  max-width: 770px; }
  body.subpage-pier.s--fuji section.intro .box__center .duo-box .img {
    width: calc((100% - 10px)/2); }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.intro .box__center .duo-box .img {
        width: calc((100% - 5px)/2); } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji section.intro .box__left .point {
    margin-left: calc((100% - 770px)/ 2);
    max-width: 360px; } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji section.intro .box__right .point {
    margin-left: calc((100% - 770px)/ 2);
    max-width: 600px;
    position: relative;
    width: 100%;
    z-index: 2; } }

@media only screen and (min-width: 1420px) and (max-width: 1820px) {
  body.subpage-pier.s--fuji section.intro .box__right .point {
    margin-top: -10px; } }

body.subpage-pier.s--fuji section.intro .box:after {
  display: none; }

body.subpage-pier.s--fuji section.intro .color-red {
  color: #e43030; }

body.subpage-pier.s--fuji section.intro .mb10 {
  margin-bottom: 10px; }

body.subpage-pier.s--fuji section.contact-qr {
  margin-top: 50px;
  padding: 54px 0 48px;
  position: relative;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji section.contact-qr {
      margin-top: 35px;
      padding: 30px 0 32px; } }
  body.subpage-pier.s--fuji section.contact-qr:before, body.subpage-pier.s--fuji section.contact-qr:after {
    content: '';
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: 7px;
    background: url(../images/garden-pier/fuji/border.png) left center/26px 7px repeat-x;
    display: block; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.contact-qr:before, body.subpage-pier.s--fuji section.contact-qr:after {
        background-size: 13px 4px;
        height: 4px;
        width: calc(100% - 50px); } }
  body.subpage-pier.s--fuji section.contact-qr:before {
    top: 0; }
  body.subpage-pier.s--fuji section.contact-qr:after {
    bottom: 0; }
  body.subpage-pier.s--fuji section.contact-qr h4 {
    color: #e7a800;
    display: inline-block;
    font-size: 24px;
    font-size: 2.4rem;
    letter-spacing: 0.05em;
    position: relative;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.contact-qr h4 {
        font-size: 17px;
        font-size: 1.7rem; } }
    body.subpage-pier.s--fuji section.contact-qr h4:before {
      background-color: #fbf2d9;
      border-radius: 7px;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 0;
      right: 0;
      bottom: -4px;
      height: 10px;
      width: 100%;
      z-index: -1; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier.s--fuji section.contact-qr h4:before {
          height: 5px; } }
  body.subpage-pier.s--fuji section.contact-qr .duo-box {
    margin-top: 37px;
    -webkit-align-items: center;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.contact-qr .duo-box {
        margin-top: 30px; } }
  body.subpage-pier.s--fuji section.contact-qr p.text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.14;
    text-align: left;
    width: calc(100% - 370px); }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.contact-qr p.text {
        line-height: 1.71;
        order: 2;
        width: 100%; } }
  body.subpage-pier.s--fuji section.contact-qr .qr-box {
    border: 1px dotted #e9b119;
    border-radius: 5px; }
    @media only screen and (min-width: 768px) {
      body.subpage-pier.s--fuji section.contact-qr .qr-box {
        padding: 5px 0 5px 24px;
        height: 100px;
        width: 330px; } }
    @media only screen and (max-width: 767px) {
      body.subpage-pier.s--fuji section.contact-qr .qr-box {
        padding: 10px 8px 10px 13px;
        margin-bottom: 25px;
        order: 1;
        height: 60px;
        width: 100%; } }
    body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-box-inner {
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
      @media only screen and (min-width: 768px) {
        body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-box-inner {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-box-inner:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-box-inner {
          margin: 0 auto;
          width: 275px;
          position: relative; }
          body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-box-inner:before {
            background-color: #e9b119;
            border-radius: 50%;
            content: "";
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            right: 0;
            height: 24px;
            width: 24px; }
          body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-box-inner:after {
            border-left: 1px solid white;
            border-bottom: 1px solid white;
            content: "";
            display: inline-block;
            margin: 0 auto;
            position: absolute;
            top: 50%;
            transform: translateY(-50%) rotate(-135deg);
            right: 10px;
            height: 5px;
            width: 5px; } }
    body.subpage-pier.s--fuji section.contact-qr .qr-box .icon {
      margin-right: 15px;
      width: 28px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier.s--fuji section.contact-qr .qr-box .icon {
          padding-right: 14px;
          width: 33px; } }
    body.subpage-pier.s--fuji section.contact-qr .qr-box .text {
      font-weight: bold;
      letter-spacing: 0.025em;
      line-height: 1.6;
      text-align: left;
      font-size: 15px;
      font-size: 1.5rem; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier.s--fuji section.contact-qr .qr-box .text {
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 1.5; } }
      body.subpage-pier.s--fuji section.contact-qr .qr-box .text em {
        color: #e7a800; }
    body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-image {
      margin-left: 30px;
      width: 86px; }
      @media only screen and (max-width: 767px) {
        body.subpage-pier.s--fuji section.contact-qr .qr-box .qr-image {
          margin-left: auto;
          width: 50px; } }

body.subpage-pier.s--fuji section.info {
  padding-top: 125px;
  position: relative; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji section.info {
      padding-top: 70px; } }

body.subpage-pier.s--fuji section.contact-box2 {
  padding: 35px 20px 220px; }
  @media only screen and (max-width: 767px) {
    body.subpage-pier.s--fuji section.contact-box2 {
      padding: 30px 25px 120px; } }
  body.subpage-pier.s--fuji section.contact-box2 .contact-box2__wrapper {
    background: repeating-linear-gradient(-45deg, #fdf9ed, #fdf9ed 3px, #fefbf2 3px, #fefbf2 6px); }
    body.subpage-pier.s--fuji section.contact-box2 .contact-box2__wrapper h4 {
      background: #e7a800; }
    body.subpage-pier.s--fuji section.contact-box2 .contact-box2__wrapper .content p a {
      border-bottom: 1px solid #e7a800;
      color: #e7a800;
      padding-bottom: 3px; }

body.subpage-pier.s--fuji .point p {
  background-image: url(../images/garden-pier/common/grid-bg2.png) !important; }

body.subpage-pier.s--fuji .side-image-cont#side-image01 {
  background-image: url(../images/garden-pier/fuji/img01-01.jpg); }

body.subpage-pier.s--fuji .side-image-cont#side-image02 {
  background-image: url(../images/garden-pier/fuji/img03-01.jpg); }

body.subpage-pier.s--fuji .side-image-cont#side-image03 {
  background-image: url(../images/garden-pier/fuji/img04-01.jpg); }

body.subpage-pier.s--fuji .side-image-cont#side-image04 {
  background-image: url(../images/garden-pier/fuji/img05-01.jpg); }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji .side-image-fix01 .box__left--content {
    padding-top: 0; } }
  @media only screen and (min-width: 768px) and (max-width: 1040px) {
    body.subpage-pier.s--fuji .side-image-fix01 .box__left--content {
      padding-right: 30px; } }

@media only screen and (min-width: 768px) and (max-width: 1420px) {
  body.subpage-pier.s--fuji .side-image-fix01 .side-image-cont {
    height: 350px; } }

@media only screen and (min-width: 768px) {
  body.subpage-pier.s--fuji .side-image-fix02 {
    -webkit-align-items: center;
    align-items: center; }
    body.subpage-pier.s--fuji .side-image-fix02 .box__left--content {
      padding-top: 0; } }
  @media only screen and (min-width: 768px) and (max-width: 1420px) {
    body.subpage-pier.s--fuji .side-image-fix02 .side-image-cont {
      height: 350px; } }

@media only screen and (min-width: 768px) {
  body.enlarged.s--fuji section.contact-qr .qr-box .qr-image {
    margin-left: 6px !important;
    width: 80px !important; }
  body.enlarged.s--fuji section.intro .point.pt4 {
    margin-top: 20px !important; }
  body.enlarged.s--fuji .qr-box-inner {
    flex-wrap: nowrap; } }

.harbor-lodge .mv__img {
  background-image: url(../images/garden-pier/harbor-lodge/mv-bg-pc.jpg); }

.harbor-lodge .mv h2 .mv__title--icon img {
  width: 52px; }

.harbor-lodge .table-wrapper {
  border: 1px solid #d04d82;
  border-radius: 5px;
  overflow: hidden; }

.harbor-lodge .has-border:after {
  content: '';
  width: 100%;
  height: 7px;
  margin: 55px 0;
  background: url(../images/garden-pier/harbor-lodge/border.png) left center/26px 7px repeat-x;
  display: block; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge .has-border:after {
      height: 4px;
      background-size: 13px 4px;
      width: calc(100% - 50px);
      margin: 35px 25px; } }

.harbor-lodge section.front .wrapper p em {
  display: inline;
  position: relative; }

.harbor-lodge section.front .img:before {
  width: 68px;
  height: 100px;
  background: url(../images/garden-pier/harbor-lodge/img-illust.png) center/cover;
  right: -10px;
  bottom: -5px; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section.front .img:before {
      width: 43px;
      height: 64px;
      right: 10px;
      bottom: -15px; } }

.harbor-lodge section.front .img:after {
  width: 131px;
  height: 56px;
  background: url(../images/garden-pier/harbor-lodge/img-speech.png) center/cover;
  left: -48px;
  top: -33px; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section.front .img:after {
      width: 85px;
      height: 36px;
      left: -10px;
      top: -163px; } }

.harbor-lodge section.intro {
  padding-bottom: 0 !important; }

.harbor-lodge section .sec-rooms__intro {
  display: -webkit-flex;
  display: flex;
  margin-bottom: 50px; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section .sec-rooms__intro {
      display: block; } }
  .harbor-lodge section .sec-rooms__intro--title {
    -webkit-flex: 0 0 250px;
    flex: 0 0 250px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.666666667;
    letter-spacing: 0.05em;
    font-weight: 500; }
    @media only screen and (max-width: 767px) {
      .harbor-lodge section .sec-rooms__intro--title {
        text-align: center;
        margin-bottom: 22px;
        font-size: 17px;
        font-size: 1.7rem;
        line-height: 1.411764706; } }
    .harbor-lodge section .sec-rooms__intro--title em {
      font-weight: 700;
      color: #d04d82;
      background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom 2px/auto 6px repeat-x; }
      @media only screen and (max-width: 767px) {
        .harbor-lodge section .sec-rooms__intro--title em {
          background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom 0/auto 6px repeat-x; } }
  .harbor-lodge section .sec-rooms__intro--content {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.142857143; }
    @media only screen and (max-width: 767px) {
      .harbor-lodge section .sec-rooms__intro--content {
        line-height: 1.714285714; } }

.harbor-lodge section .sec-rooms__subheading {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  width: 100%;
  height: 40px;
  border-radius: 20px;
  background: rgba(208, 77, 130, 0.15);
  font-size: 16px;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  font-weight: 700;
  color: #d04d82; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section .sec-rooms__subheading {
      height: 30px;
      border-radius: 15px;
      font-size: 15px;
      font-size: 1.5rem; } }

.harbor-lodge section .sec-rooms .roomlist {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  justify-content: space-between; }
  .harbor-lodge section .sec-rooms .roomlist__room {
    margin-top: 52px;
    border-bottom: 1px solid #d04d82;
    padding-bottom: 15px; }
    @media only screen and (min-width: 768px) {
      .harbor-lodge section .sec-rooms .roomlist__room {
        width: calc(50% - 15px); }
        .harbor-lodge section .sec-rooms .roomlist__room:nth-child(-n+2) {
          margin-top: 30px; } }
    @media only screen and (max-width: 767px) {
      .harbor-lodge section .sec-rooms .roomlist__room {
        margin-top: 36px;
        width: calc(50% - 10px); }
        .harbor-lodge section .sec-rooms .roomlist__room:nth-child(-n+2) {
          margin-top: 25px; } }
    .harbor-lodge section .sec-rooms .roomlist__room--heading {
      font-size: 15px;
      font-size: 1.5rem;
      line-height: 1.6;
      letter-spacing: 0.05em;
      font-weight: 700;
      margin-bottom: 15px;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .harbor-lodge section .sec-rooms .roomlist__room--heading {
          font-size: 14px;
          font-size: 1.4rem; }
          .harbor-lodge section .sec-rooms .roomlist__room--heading .small {
            display: block;
            font-size: 10px;
            font-size: 1rem;
            line-height: 1.3; } }
    .harbor-lodge section .sec-rooms .roomlist__room--img {
      position: relative;
      margin-bottom: 15px; }
      .harbor-lodge section .sec-rooms .roomlist__room--img .label {
        position: absolute;
        right: 15px;
        bottom: 15px;
        width: 60px;
        height: 30px;
        border-radius: 15px;
        background: #d04d82;
        color: #fff;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        font-size: 15px;
        font-size: 1.5rem;
        letter-spacing: 0.05em;
        font-weight: 700; }
        @media only screen and (max-width: 767px) {
          .harbor-lodge section .sec-rooms .roomlist__room--img .label {
            width: 45px;
            height: 20px;
            bottom: 7px;
            right: 7px;
            font-size: 12px;
            font-size: 1.2rem; } }
    .harbor-lodge section .sec-rooms .roomlist__room__points--point {
      padding-left: 18px;
      position: relative;
      margin-bottom: 5px;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      line-height: 1.5; }
      @media only screen and (max-width: 767px) {
        .harbor-lodge section .sec-rooms .roomlist__room__points--point {
          padding-left: 9px; } }
      .harbor-lodge section .sec-rooms .roomlist__room__points--point:before {
        content: '';
        position: absolute;
        top: 8px;
        left: 0;
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #d04d82; }
        @media only screen and (max-width: 767px) {
          .harbor-lodge section .sec-rooms .roomlist__room__points--point:before {
            width: 4px;
            height: 4px; } }

.harbor-lodge section .sec-roomdesc--title {
  -webkit-flex: 0 0 250px;
  flex: 0 0 250px;
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.666666667;
  letter-spacing: 0.05em;
  font-weight: 500;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section .sec-roomdesc--title {
      text-align: center;
      margin-bottom: 22px;
      font-size: 17px;
      font-size: 1.7rem;
      line-height: 1.411764706; } }
  .harbor-lodge section .sec-roomdesc--title em {
    font-weight: 700;
    color: #d04d82;
    background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom 2px/auto 6px repeat-x; }
    @media only screen and (max-width: 767px) {
      .harbor-lodge section .sec-roomdesc--title em {
        background: linear-gradient(0deg, rgba(208, 77, 130, 0.15) 50%, rgba(208, 77, 130, 0.15) 50%) left bottom/auto 6px repeat-x; } }

.harbor-lodge section .sec-roomdesc__images {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  margin-top: 40px; }
  .harbor-lodge section .sec-roomdesc__images--image {
    width: calc(50% - 15px); }
    @media only screen and (max-width: 767px) {
      .harbor-lodge section .sec-roomdesc__images--image {
        width: calc(50% - 3px); } }

.harbor-lodge section .sec-roomdesc--txt {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2.142857143;
  margin-top: 20px; }

.harbor-lodge section.info .info_fees .table-wrapper {
  margin-bottom: 15px; }

.harbor-lodge section.info .info_fees table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed; }
  .harbor-lodge section.info .info_fees table thead th {
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    background: #d04d82;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    text-align: center;
    vertical-align: center;
    height: 40px; }
    .harbor-lodge section.info .info_fees table thead th .small {
      font-size: 12px;
      font-size: 1.2rem; }
    .harbor-lodge section.info .info_fees table thead th:first-child {
      border-left: none;
      width: 240px; }
  .harbor-lodge section.info .info_fees table tbody tr th {
    border-bottom: 1px solid #fff;
    background: rgba(208, 77, 130, 0.15);
    color: #d04d82;
    padding-left: 50px;
    vertical-align: middle;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 700;
    letter-spacing: 0.05em; }
  .harbor-lodge section.info .info_fees table tbody tr td {
    text-align: center;
    border-right: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1;
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    padding: 20px 0; }
    .harbor-lodge section.info .info_fees table tbody tr td .arrow {
      display: block;
      width: 8px;
      height: 16px;
      margin: 5px auto;
      background: url(../images/garden-pier/common/table-arrow.png) center/8px 16px no-repeat; }
    .harbor-lodge section.info .info_fees table tbody tr td em {
      color: #e43030; }
    .harbor-lodge section.info .info_fees table tbody tr td:last-child {
      border-right: none; }
  .harbor-lodge section.info .info_fees table tbody tr:last-child th,
  .harbor-lodge section.info .info_fees table tbody tr:last-child td {
    border-bottom: none; }

.harbor-lodge section.info .info_fees .table-fee-sp {
  margin-bottom: 20px; }
  .harbor-lodge section.info .info_fees .table-fee-sp .table__heading {
    width: 100%;
    height: 35px;
    background-color: #f6dbe6;
    color: #d04d82;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    border-radius: 3px;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 5px; }
  .harbor-lodge section.info .info_fees .table-fee-sp .table__content {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    border: 1px solid #d04d82;
    border-radius: 3px; }
    .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row {
      width: 100%;
      display: -webkit-flex;
      display: flex; }
      .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row--cell {
        width: 50%; }
        .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row--cell:first-child .table__content__row--label {
          border-right: 1px solid #fff; }
        .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row--cell:first-child .table__content__row--content {
          border-right: 1px solid #e1e1e1; }
      .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row--label {
        width: 100%;
        height: 30px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        color: #fff;
        background-color: #d04d82;
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: 0.05em;
        font-weight: 500; }
      .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row--content {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-flex-direction: column;
        flex-direction: column;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: 700;
        padding: 12px; }
        .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row--content .arrow {
          display: block;
          width: 8px;
          height: 16px;
          margin: 5px auto;
          background: url(../images/garden-pier/common/table-arrow.png) center/8px 16px no-repeat; }
        .harbor-lodge section.info .info_fees .table-fee-sp .table__content__row--content em {
          color: #e43030; }

@media only screen and (min-width: 768px) {
  .harbor-lodge section.info .info_points {
    margin-bottom: 100px; } }

@media only screen and (max-width: 767px) {
  .harbor-lodge section.info .info_points .info-title {
    line-height: 1.411764706; } }

@media only screen and (min-width: 768px) {
  .harbor-lodge section.info .info_points ul {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap; } }

.harbor-lodge section.info .info_points ul li {
  font-size: 15px;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  font-weight: 500;
  padding-left: 15px;
  position: relative; }
  @media only screen and (min-width: 768px) {
    .harbor-lodge section.info .info_points ul li {
      width: 38%;
      margin-bottom: 15px; }
      .harbor-lodge section.info .info_points ul li:nth-child(2n+2) {
        width: 62%;
        letter-spacing: 0.04em; } }
  .harbor-lodge section.info .info_points ul li:before {
    content: '';
    width: 6px;
    height: 6px;
    background-color: #d04d82;
    border-radius: 50%;
    display: block;
    position: absolute;
    left: 0;
    top: 5px; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section.info .info_points ul li {
      line-height: 1.714285714;
      font-size: 14px;
      font-size: 1.4rem;
      margin-bottom: 16px; }
      .harbor-lodge section.info .info_points ul li:before {
        top: 9px; } }

@media only screen and (max-width: 767px) {
  .harbor-lodge section.info .info_reservation {
    margin-bottom: 0; }
    .harbor-lodge section.info .info_reservation .res-calendar {
      margin-bottom: 0; } }

@media only screen and (min-width: 768px) {
  .harbor-lodge section.info.tourist-info {
    padding-top: 50px; } }

.harbor-lodge section.info .info_reservation {
  margin-bottom: 0; }
  .harbor-lodge section.info .info_reservation .res-calendar {
    margin-bottom: 0; }

@media only screen and (min-width: 768px) {
  .harbor-lodge section.info .info_rates {
    margin-bottom: 70px; } }

.harbor-lodge section.info .info_rates .table-wrapper {
  margin-bottom: 15px; }
  .harbor-lodge section.info .info_rates .table-wrapper table {
    border-collapse: collapse;
    width: 100%; }
    .harbor-lodge section.info .info_rates .table-wrapper table thead tr th {
      background: #d04d82;
      color: #FFF;
      font-weight: 700;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      vertical-align: middle;
      text-align: center;
      padding: 13px 0;
      border-left: 1px solid #fff;
      border-bottom: 1px solid #fff; }
      .harbor-lodge section.info .info_rates .table-wrapper table thead tr th .small {
        font-size: 12px;
        font-size: 1.2rem; }
      @media only screen and (min-width: 768px) {
        .harbor-lodge section.info .info_rates .table-wrapper table thead tr th.width2 {
          width: 120px; } }
      @media only screen and (min-width: 768px) {
        .harbor-lodge section.info .info_rates .table-wrapper table thead tr th.width3 {
          width: 225px; } }
    .harbor-lodge section.info .info_rates .table-wrapper table thead tr:last-child th {
      background: rgba(208, 77, 130, 0.15);
      color: #d04d82; }
    .harbor-lodge section.info .info_rates .table-wrapper table thead tr:first-child th:first-child {
      width: 180px;
      border-left: none; }
    .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td {
      padding: 14px 10px;
      text-align: center;
      vertical-align: middle;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: 0.05em;
      font-weight: 700;
      border-right: 1px solid #e1e1e1;
      border-bottom: 1px solid #e1e1e1;
      line-height: 1.571428571; }
      .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td:first-child {
        font-size: 16px;
        font-size: 1.6rem; }
        .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td:first-child .small {
          font-size: 14px;
          font-size: 1.4rem; }
      .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td:last-child {
        border-right: none; }
      .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td .small {
        font-size: 14px;
        font-size: 1.4rem; }
      .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td .tag {
        display: block;
        font-size: 13px;
        font-size: 1.3rem;
        background: rgba(208, 77, 130, 0.15);
        color: #d04d82;
        font-weight: 700;
        height: 24px;
        border-radius: 12px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        margin-top: 3px; }
      .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td span.null {
        width: 15px;
        height: 1px;
        background: #383838;
        display: inline-block; }
      @media only screen and (min-width: 768px) {
        .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td.width2 {
          width: 120px; } }
      @media only screen and (min-width: 768px) {
        .harbor-lodge section.info .info_rates .table-wrapper table tbody tr td.width3 {
          width: 225px; } }
    .harbor-lodge section.info .info_rates .table-wrapper table tbody tr:last-child td {
      border-bottom: none; }

.harbor-lodge section.info .info_rates .table {
  margin-bottom: 10px;
  transition: height 0.3s;
  overflow: hidden; }
  .harbor-lodge section.info .info_rates .table:not(.is-open) {
    height: 40px; }
  .harbor-lodge section.info .info_rates .table--heading {
    position: relative;
    color: #fff;
    background-color: #d04d82;
    text-align: center;
    height: 40px;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 700;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    border-radius: 3px;
    transition: border-radius 0s;
    padding: 0 15px; }
    .harbor-lodge section.info .info_rates .table--heading .small {
      font-size: 12px;
      font-size: 1.2rem; }
    .harbor-lodge section.info .info_rates .table--heading .icon {
      position: relative; }
      .harbor-lodge section.info .info_rates .table--heading .icon:before, .harbor-lodge section.info .info_rates .table--heading .icon:after {
        content: '';
        width: 10px;
        height: 1px;
        background-color: #d04d82;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, 0) rotateZ(0); }
      .harbor-lodge section.info .info_rates .table--heading .icon:after {
        transition: transform 0.3s; }
      @media only screen and (min-width: 768px) {
        .harbor-lodge section.info .info_rates .table--heading .icon {
          display: none; } }
      @media only screen and (max-width: 767px) {
        .harbor-lodge section.info .info_rates .table--heading .icon {
          content: '';
          height: 24px;
          width: 24px;
          border-radius: 50%;
          background-color: #fff;
          top: 50%;
          right: 15px;
          position: absolute;
          transform: translateY(-50%); } }
    .harbor-lodge section.info .info_rates .table--heading.is-open {
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }
    .harbor-lodge section.info .info_rates .table--heading:not(.is-open) {
      transition: border-radius 0.2s 0.3s; }
      .harbor-lodge section.info .info_rates .table--heading:not(.is-open) .icon:after {
        transform: translate(-50%, 0) rotateZ(-90deg); }
  .harbor-lodge section.info .info_rates .table__content {
    border: 1px solid #d04d82;
    border-top: none;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    overflow: hidden; }
    .harbor-lodge section.info .info_rates .table__content__sublabel {
      width: 100%;
      height: 30px;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      -webkit-justify-content: center;
      justify-content: center;
      color: #FFF;
      background: #d04d82;
      font-size: 12px;
      font-size: 1.2rem; }
      .harbor-lodge section.info .info_rates .table__content__sublabel .small {
        font-size: 10px;
        font-size: 1rem; }
    .harbor-lodge section.info .info_rates .table__content__row {
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 100%; }
      .harbor-lodge section.info .info_rates .table__content__row div {
        width: 50%;
        min-height: 45px; }
      .harbor-lodge section.info .info_rates .table__content__row--label {
        background-color: #faedf2;
        color: #d04d82;
        padding: 12px 10px 12px 17px;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        border-bottom: 1px solid #fff; }
        .harbor-lodge section.info .info_rates .table__content__row--label .small {
          font-size: 11px;
          font-size: 1.1rem; }
      .harbor-lodge section.info .info_rates .table__content__row--content {
        padding: 12px 10px;
        text-align: center;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: 700;
        border-bottom: 1px solid #e1e1e1; }
        .harbor-lodge section.info .info_rates .table__content__row--content .small {
          font-size: 11px;
          font-size: 1.1rem; }
        .harbor-lodge section.info .info_rates .table__content__row--content .tag {
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center;
          width: 100%;
          height: 20px;
          border-radius: 10px;
          background: #faedf2;
          color: #d04d82;
          font-size: 12px;
          font-size: 1.2rem;
          font-weight: 700;
          margin-top: 3px; }
      .harbor-lodge section.info .info_rates .table__content__row:first-child .table__content__row--label,
      .harbor-lodge section.info .info_rates .table__content__row:first-child .table__content__row--content, .harbor-lodge section.info .info_rates .table__content__row:last-child .table__content__row--label,
      .harbor-lodge section.info .info_rates .table__content__row:last-child .table__content__row--content {
        border-bottom: none; }

@media only screen and (max-width: 767px) {
  .harbor-lodge section.info .info_info table tr {
    display: block; } }

.harbor-lodge section.info .info_info table tr th,
.harbor-lodge section.info .info_info table tr td {
  padding-bottom: 10px;
  vertical-align: top; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section.info .info_info table tr th,
    .harbor-lodge section.info .info_info table tr td {
      display: block; } }

.harbor-lodge section.info .info_info table tr th {
  width: 120px;
  padding-top: 4px; }
  .harbor-lodge section.info .info_info table tr th span {
    display: block;
    height: 24px;
    border-radius: 12px;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    background-color: rgba(208, 77, 130, 0.15);
    color: #d04d82;
    font-size: 13px;
    font-size: 1.3rem;
    letter-spacing: 0.05em;
    font-weight: 700;
    padding-bottom: 1px; }
    .harbor-lodge section.info .info_info table tr th span _:lang(x)::-ms-backdrop, .harbor-lodge section.info .info_info table tr th span {
      padding-top: 3px;
      padding-bottom: 0; }

.harbor-lodge section.info .info_info table tr td {
  padding-left: 22px;
  font-size: 15px;
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 500; }
  @media only screen and (max-width: 767px) {
    .harbor-lodge section.info .info_info table tr td {
      font-size: 14px;
      font-size: 1.4rem;
      padding-left: 0;
      line-height: 1.714285714;
      padding-bottom: 25px; } }
  .harbor-lodge section.info .info_info table tr td .small {
    font-size: 12px;
    font-size: 1.2rem; }
    .harbor-lodge section.info .info_info table tr td .small.nl {
      font-weight: 400; }
      @media only screen and (min-width: 768px) {
        .harbor-lodge section.info .info_info table tr td .small.nl {
          display: block;
          line-height: 1.8; } }
    @media only screen and (max-width: 767px) {
      .harbor-lodge section.info .info_info table tr td .small {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.3; } }

@media only screen and (min-width: 768px) {
  .harbor-lodge section.info .info_info table tr:last-child th,
  .harbor-lodge section.info .info_info table tr:last-child td {
    padding-bottom: 0; } }

.harbor-lodge .contact-box2__wrapper {
  background: repeating-linear-gradient(-45deg, #fdf6f9, #fdf6f9 3px, #fcf2f6 3px, #fcf2f6 6px); }

.harbor-lodge .map-exp {
  display: block;
  float: right;
  font-size: 11px;
  font-size: 1.1rem;
  padding-left: 12px;
  margin-top: 12px;
  position: relative;
  text-align: left; }
  .harbor-lodge .map-exp .ast {
    position: absolute;
    left: 0;
    top: 0; }

.harbor-lodge #lightboxOverlay {
  position: fixed !important;
  top: 0;
  left: 0;
  height: 100% !important;
  width: 100% !important; }

.harbor-lodge #lightbox {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%); }

.jetty .mv__img {
  background-image: url(../images/garden-pier/jetty/mv-bg-pc.jpg); }
  @media only screen and (max-width: 767px) {
    .jetty .mv__img {
      background-image: url(../images/garden-pier/jetty/mv-bg-sp.jpg); } }

.jetty .table-wrapper {
  border: 1px solid #d04d82;
  border-radius: 5px;
  overflow: hidden; }

.jetty .has-border:after {
  content: '';
  width: 100%;
  height: 7px;
  margin: 55px 0;
  background: url(../images/garden-pier/harbor-lodge/border.png) left center/26px 7px repeat-x;
  display: block; }

.jetty section.front .wrapper p em {
  display: inline;
  position: relative; }

.jetty section.front .img:before {
  width: 68px;
  height: 100px;
  background: url(../images/garden-pier/jetty/img-illust.png) center/cover;
  right: -10px;
  bottom: -5px; }
  @media only screen and (max-width: 767px) {
    .jetty section.front .img:before {
      width: 43px;
      height: 64px;
      right: 10px;
      bottom: -15px; } }

.jetty section.front .img:after {
  width: 131px;
  height: 56px;
  background: url(../images/garden-pier/jetty/img-speech.png) center/cover;
  left: -48px;
  top: -33px; }
  @media only screen and (max-width: 767px) {
    .jetty section.front .img:after {
      width: 85px;
      height: 36px;
      left: -10px;
      top: -139px; } }

.jetty section.info {
  padding-top: 120px; }
  @media only screen and (max-width: 767px) {
    .jetty section.info {
      padding-top: 68px !important; }
      .jetty section.info .sec-heading {
        margin-bottom: 50px; }
      .jetty section.info .label-box--item .content {
        padding-top: 0; } }
  @media only screen and (max-width: 767px) {
    .jetty section.info .section {
      margin-bottom: 0; } }
  .jetty section.info .shoplist {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: 100px;
    padding-top: 16px; }
    .jetty section.info .shoplist:last-child {
      margin-bottom: 0; }
    .jetty section.info .shoplist .shop {
      width: calc(50% - 15px);
      margin-top: 70px;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: column;
      flex-direction: column; }
      @media only screen and (max-width: 767px) {
        .jetty section.info .shoplist .shop {
          width: 100%;
          margin-top: 33px; } }
      @media only screen and (min-width: 768px) {
        .jetty section.info .shoplist .shop:nth-child(-n + 2) {
          margin-top: 0; } }
      .jetty section.info .shoplist .shop--title {
        font-size: 20px;
        font-size: 2rem;
        letter-spacing: 0.05em;
        font-weight: 700;
        margin-bottom: 17px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          .jetty section.info .shoplist .shop--title {
            font-size: 15px;
            font-size: 1.5rem;
            margin-bottom: 10px; } }
      .jetty section.info .shoplist .shop--img {
        margin-bottom: 20px;
        width: 100%; }
        @media only screen and (max-width: 767px) {
          .jetty section.info .shoplist .shop--img {
            margin-bottom: 13px; } }
      .jetty section.info .shoplist .shop--txt {
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        line-height: 2.142857143;
        margin-bottom: 20px;
        width: 100%;
        -webkit-flex-grow: 1;
        flex-grow: 1; }
        @media only screen and (max-width: 767px) {
          .jetty section.info .shoplist .shop--txt {
            margin-bottom: 12px;
            line-height: 1.714285714; } }
      .jetty section.info .shoplist .shop__notice {
        margin-bottom: 12px;
        padding: 13px 30px;
        border-radius: 5px;
        min-height: 55px;
        padding-top: 19px;
        width: 100%;
        -webkit-align-self: flex-end;
        align-self: flex-end;
        background: repeating-linear-gradient(-45deg, #f5fbf4, #f5fbf4 3px, #f2f9f0 3px, #f2f9f0 6px);
        line-height: 1.4; }
        @media only screen and (max-width: 767px) {
          .jetty section.info .shoplist .shop__notice {
            padding: 8px 15px;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 1.714285714;
            margin-bottom: 5px; } }
        .jetty section.info .shoplist .shop__notice:last-child {
          margin-bottom: 0; }
        @media only screen and (min-width: 768px) {
          .jetty section.info .shoplist .shop__notice .one-l {
            margin-left: -15px;
            margin-right: -15px;
            padding: 13px 0;
            width: calc(100% + 30px);
            display: block; } }
        @media only screen and (min-width: 768px) and (max-width: 1055px) {
          .jetty section.info .shoplist .shop__notice .one-l {
            padding: 3px 0; } }
        .jetty section.info .shoplist .shop__notice.double {
          margin-bottom: 12px; }
          @media only screen and (max-width: 767px) {
            .jetty section.info .shoplist .shop__notice.double {
              margin-bottom: 5px;
              min-height: auto; } }
          .jetty section.info .shoplist .shop__notice.double small {
            margin-top: 8px;
            font-size: 12px;
            font-size: 1.2rem; }
            @media only screen and (max-width: 767px) {
              .jetty section.info .shoplist .shop__notice.double small {
                margin-top: 1px;
                font-size: 11px;
                font-size: 1.1rem; } }
        .jetty section.info .shoplist .shop__notice.huge {
          display: -webkit-flex;
          display: flex;
          -webkit-flex-direction: column;
          flex-direction: column;
          justify-content: center;
          min-height: 75px; }
          @media only screen and (max-width: 767px) {
            .jetty section.info .shoplist .shop__notice.huge {
              min-height: auto; } }
      .jetty section.info .shoplist .shop__meta {
        min-height: 55px;
        border-radius: 5px;
        width: 100%;
        background: repeating-linear-gradient(-45deg, #f5fbf4, #f5fbf4 3px, #f2f9f0 3px, #f2f9f0 6px);
        padding: 10px 30px;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center;
        -webkit-align-self: flex-end;
        align-self: flex-end; }
        @media only screen and (max-width: 767px) {
          .jetty section.info .shoplist .shop__meta {
            min-height: 41px;
            padding: 8px 15px; } }
        @media only screen and (min-width: 768px) and (max-width: 1000px) {
          .jetty section.info .shoplist .shop__meta {
            display: block; } }
        .jetty section.info .shoplist .shop__meta--txt {
          font-size: 14px;
          font-size: 1.4rem; }
          @media only screen and (min-width: 768px) and (max-width: 1000px) {
            .jetty section.info .shoplist .shop__meta--txt {
              margin-bottom: 10px; } }
          .jetty section.info .shoplist .shop__meta--txt a {
            color: #41ab28;
            font-weight: 700;
            padding-bottom: 2px;
            border-bottom: 1px solid #41ab28; }
        .jetty section.info .shoplist .shop__meta--link {
          font-size: 13px;
          font-size: 1.3rem;
          letter-spacing: 0.05em;
          font-weight: 500;
          max-width: 130px;
          width: 100%;
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          -webkit-justify-content: center;
          justify-content: center;
          height: 30px;
          border-radius: 15px;
          background: #fff;
          border: 1px solid #e1e1e1;
          position: relative;
          padding-right: 20px; }
          .jetty section.info .shoplist .shop__meta--link:after {
            content: '';
            width: 12px;
            height: 12px;
            background: url(../images/common/icon-link-external.svg) center/12px 12px no-repeat;
            position: absolute;
            top: 50%;
            right: 20px;
            transform: translateY(-50%); }

.jetty .contact-box2__wrapper {
  background: repeating-linear-gradient(-45deg, #f5fbf4, #f5fbf4 3px, #f2f9f0 3px, #f2f9f0 6px); }
  @media only screen and (min-width: 768px) {
    .jetty .contact-box2__wrapper .note {
      margin-top: -5px;
      margin-bottom: -8px; } }

@media only screen and (min-width: 768px) {
  .jetty .mv__title--icon {
    padding-top: 50px !important; } }

@media only screen and (max-width: 767px) {
  .jetty .mv__title--icon {
    padding-top: 40px !important;
    width: 115px; } }

.jetty .label-box .label {
  background-color: #ecf6e9; }

.jetty .notes li a span, .jetty .points li a span, .jetty p a span {
  border-color: #41ab28 !important; }

@media only screen and (min-width: 768px) {
  .jetty section .info-txt {
    margin-top: -10px;
    margin-bottom: 20px !important; } }

.jetty section.info2 {
  padding-bottom: 60px; }
  @media only screen and (min-width: 768px) {
    .jetty section.info2 {
      padding-top: 91px !important;
      padding-bottom: 100px; } }

.jetty section.contact-box2 {
  padding-top: 60px !important; }
  @media only screen and (min-width: 768px) {
    .jetty section.contact-box2 {
      padding-top: 0 !important; } }

.jetty .front .wrapper {
  box-shadow: 7px 7px 0 rgba(230, 244, 227, 0.9); }

.jetty .s--jetty .front p em {
  background: linear-gradient(0deg, rgba(65, 171, 40, 0.1) 50%, rgba(65, 171, 40, 0.1) 50%) left bottom/auto 6px repeat-x; }

.jetty .info_stuff ul {
  margin-top: -5px;
  line-height: 1.833333333; }
  .jetty .info_stuff ul[style*="list-style-type: circle;"], .jetty .info_stuff ul[style*="list-style-type: square;"], .jetty .info_stuff ul[style*="list-style-type: disc;"] {
    padding-left: 19px; }
  .jetty .info_stuff ul li {
    position: relative;
    font-size: 12px;
    font-size: 1.2rem; }
    @media only screen and (max-width: 767px) {
      .jetty .info_stuff ul li {
        font-size: 11px;
        font-size: 1.1rem; } }
    .jetty .info_stuff ul li a {
      transition: opacity 0.3s; }
      .jetty .info_stuff ul li a:hover {
        opacity: 0.6; }
  .jetty .info_stuff ul.center {
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .jetty .info_stuff ul.center {
        text-align: left; } }
    .jetty .info_stuff ul.center li {
      display: inline-block; }

.jetty .info_stuff a {
  color: #41ab28;
  padding-bottom: 2px;
  border-bottom-style: solid;
  border-bottom-width: 1px; }

.museum .mv__img {
  background-image: url(../images/garden-pier/museum/mv-bg-pc.jpg); }
  @media only screen and (max-width: 767px) {
    .museum .mv__img {
      background-image: url(../images/garden-pier/museum/mv-bg-sp.jpg); } }

.museum .mv h2 .mv__title--icon img {
  width: 52px; }

.museum .has-border:after {
  content: '';
  width: 100%;
  height: 7px;
  margin: 55px 0;
  background: url(../images/garden-pier/museum/border.png) left center/26px 7px repeat-x;
  display: block; }
  @media only screen and (max-width: 767px) {
    .museum .has-border:after {
      height: 4px;
      background-size: 13px 4px;
      margin: 35px 0; } }

@media only screen and (max-width: 767px) {
  .museum .feature {
    padding: 0 25px; } }

@media only screen and (max-width: 767px) {
  .museum .feature__mid {
    padding: 0 !important; } }

.museum .feature__banner {
  margin-top: 40px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .museum .feature__banner {
      margin-top: 30px; }
      .museum .feature__banner .inner {
        padding: 0; } }

.museum .feature .img-container {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between; }
  .museum .feature .img-container .img {
    width: calc(50% - 6px); }
  @media only screen and (max-width: 767px) {
    .museum .feature .img-container {
      margin-top: 15px; } }

.museum .feature .point {
  margin-top: 0; }

@media only screen and (min-width: 768px) {
  .museum .feature__01 .feature__top {
    display: -webkit-flex;
    display: flex; } }

@media only screen and (min-width: 768px) {
  .museum .feature__01 .feature__top__img {
    order: 2;
    width: 49.5%;
    margin-left: 35px; } }

@media only screen and (min-width: 768px) {
  .museum .feature__01 .feature__top__content {
    width: 50.5%;
    padding-left: calc((100% - 770px) / 2);
    z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    .museum .feature__01 .feature__top__content {
      padding-left: 20px; } }

@media only screen and (min-width: 768px) {
    .museum .feature__01 .feature__top__content .point {
      width: calc(100% + 120px); } }

@media only screen and (min-width: 768px) {
  .museum .feature__02 .feature__top {
    display: -webkit-flex;
    display: flex; } }

@media only screen and (min-width: 768px) {
  .museum .feature__02 .feature__top__img {
    width: 49.5%;
    margin-right: 35px; } }

@media only screen and (min-width: 768px) {
  .museum .feature__02 .feature__top__content {
    width: 50.5%;
    padding-right: calc((100% - 770px) / 2);
    z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    .museum .feature__02 .feature__top__content {
      padding-right: 20px; } }

@media only screen and (min-width: 768px) {
    .museum .feature__02 .feature__top__content .point {
      width: calc(100% + 120px); } }

.museum .feature__02 .feature__mid {
  margin-top: 20px;
  margin-bottom: 40px; }
  @media only screen and (min-width: 768px) {
    .museum .feature__02 .feature__mid {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: flex-start;
      align-items: flex-start; } }
  @media only screen and (max-width: 767px) {
    .museum .feature__02 .feature__mid {
      margin-top: 20px; } }
  @media only screen and (min-width: 768px) {
    .museum .feature__02 .feature__mid > p {
      width: 40%; } }
  .museum .feature__02 .feature__mid .point {
    width: 60%;
    margin: 0px 0 0 30px; }

@media only screen and (min-width: 768px) and (max-width: 1420px) {
  .museum .feature__02 .feature__mid .point {
    margin: 0px 0 0 30px; } }
    @media only screen and (max-width: 767px) {
      .museum .feature__02 .feature__mid .point {
        margin: 20px 0 0 0;
        width: 100%; } }

@media only screen and (min-width: 768px) {
  .museum .feature__03 .feature__top {
    display: -webkit-flex;
    display: flex; } }

@media only screen and (min-width: 768px) {
  .museum .feature__03 .feature__top__img {
    order: 2;
    width: 49.5%;
    margin-left: 35px; } }

@media only screen and (min-width: 768px) {
  .museum .feature__03 .feature__top__content {
    width: 50.5%;
    padding-left: calc((100% - 770px) / 2);
    z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    .museum .feature__03 .feature__top__content {
      padding-left: 20px; } }

@media only screen and (min-width: 768px) {
    .museum .feature__03 .feature__top__content .point {
      width: calc(100% + 120px); } }

.museum .feature__03 .feature__mid {
  margin-top: 30px;
  margin-bottom: 40px; }
  .museum .feature__03 .feature__mid > p {
    width: 100%; }
  .museum .feature__03 .feature__mid .point {
    width: 100%; }

@media only screen and (min-width: 768px) {
  .museum .feature__04 .feature__top {
    display: -webkit-flex;
    display: flex; } }

@media only screen and (min-width: 768px) and (max-width: 1420px) {
  .museum .feature__04 .feature__top .side-image-cont {
    height: 350px; } }

@media only screen and (min-width: 768px) {
  .museum .feature__04 .feature__top__img {
    width: 49.5%;
    margin-right: 35px; } }

.museum .feature__04 .feature__top__img .point {
  width: calc(770px - 20%);
  margin-left: calc(((100vw - 242px) - 770px) / 2);
  width: 385px; }
  @media only screen and (max-width: 1060px) {
    .museum .feature__04 .feature__top__img .point {
      margin-left: 28px;
      width: calc(100% - 20px); } }
  @media only screen and (max-width: 767px) {
    .museum .feature__04 .feature__top__img .point {
      margin-left: 0;
      width: 100%; } }

@media only screen and (min-width: 768px) {
  .museum .feature__04 .feature__top__content {
    width: 50.5%;
    padding-right: calc((100% - 770px) / 2);
    z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    .museum .feature__04 .feature__top__content {
      padding-right: 20px; } }

.museum .feature__04 .feature__mid {
  margin-top: 40px;
  margin-bottom: 40px;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
  align-items: flex-start; }
  @media only screen and (min-width: 768px) {
    .museum .feature__04 .feature__mid > p {
      width: 40%; } }
  .museum .feature__04 .feature__mid .point {
    width: 60%;
    margin: -60px 0 0 30px; }

.museum section.front .wrapper p em {
  display: inline;
  position: relative; }

.museum section.front .img:before {
  width: 70px;
  height: 98px;
  background: url(../images/garden-pier/museum/img-illust.png) center/cover;
  right: -10px;
  bottom: -5px; }
  @media only screen and (max-width: 767px) {
    .museum section.front .img:before {
      width: 43px;
      height: 60px;
      right: 10px;
      bottom: -15px; } }

.museum section.front .img:after {
  width: 131px;
  height: 59px;
  background: url(../images/garden-pier/museum/img-speech.png) center/cover;
  left: -59px;
  top: -50px; }
  @media only screen and (max-width: 767px) {
    .museum section.front .img:after {
      width: 85px;
      height: 38px;
      left: -10px;
      top: -163px; } }

.museum section.intro {
  padding-bottom: 0 !important; }

.museum .contact-box2__wrapper {
  background: repeating-linear-gradient(-45deg, #f2f9fb, #f2f9fb 3px, #edf6f9 3px, #edf6f9 6px); }

@media only screen and (min-width: 768px) {
  .museum section .label-box {
    margin-bottom: 16px !important; } }

@media only screen and (min-width: 768px) {
  .museum section.front {
    padding-top: 116px !important; } }

@media only screen and (min-width: 768px) {
  .museum section.intro .point ul {
    padding: 16px 37px 5px 35px !important; } }

@media only screen and (min-width: 768px) {
  .museum section.info {
    padding-top: 47px; }
    .museum section.info .info-txt {
      margin-top: -12px;
      margin-bottom: 25px; } }

@media only screen and (min-width: 768px) {
  .museum section.intro .point ul {
    padding: 16px 20px 5px 35px !important; } }

@media only screen and (min-width: 768px) {
  .museum section.contact-box2 {
    padding-top: 40px !important; } }

.museum .point p {
  background-image: url(../images/garden-pier/common/grid-bg4.png) !important; }

.museum .side-image-cont#side-image01 {
  background-image: url(../images/garden-pier/museum/img01-01.jpg); }

.museum .side-image-cont#side-image02 {
  background-image: url(../images/garden-pier/museum/img02-01.jpg); }

.museum .side-image-cont#side-image03 {
  background-image: url(../images/garden-pier/museum/img03-01.jpg); }

.museum .side-image-cont#side-image04 {
  background-image: url(../images/garden-pier/museum/img04-01.jpg); }

.museum p.special-note {
  color: red; }

.port-building .mv__img {
  background-image: url(../images/garden-pier/port-building/mv-bg-pc.jpg); }
  @media only screen and (max-width: 767px) {
    .port-building .mv__img {
      background-image: url(../images/garden-pier/port-building/mv-bg-sp.jpg); } }

.port-building .mv__title--icon img {
  width: 40px; }

@media only screen and (min-width: 768px) {
  .port-building section.intro {
    padding-bottom: 150px; } }

.port-building section.front {
  background-color: rgba(218, 80, 25, 0.05); }
  .port-building section.front .wrapper {
    box-shadow: 7px 7px 0 #fbede8; }
    .port-building section.front .wrapper .decoration li:after {
      background-color: rgba(218, 80, 25, 0.1); }
    .port-building section.front .wrapper h3 em {
      color: #da5019; }
    .port-building section.front .wrapper p em {
      display: inline;
      position: relative;
      background: linear-gradient(0deg, #fbede8 50%, #fbede8 50%) left bottom/auto 7px repeat-x; }
    .port-building section.front .wrapper .img:before {
      width: 90px;
      height: 105px;
      background: url(../images/garden-pier/port-building/img-illust.png) center/cover;
      left: -30px;
      bottom: -10px; }
      @media only screen and (max-width: 767px) {
        .port-building section.front .wrapper .img:before {
          width: 54px;
          height: 63px;
          left: 10px;
          bottom: -15px; } }
    .port-building section.front .wrapper .img:after {
      width: 116px;
      height: 51px;
      background: url(../images/garden-pier/port-building/img-speech.png) center/cover;
      right: -50px;
      top: -34px; }
      @media only screen and (max-width: 767px) {
        .port-building section.front .wrapper .img:after {
          width: 83px;
          height: 37px;
          right: -10px;
          top: -163px; } }

.port-building section .box:after {
  background-image: url(../images/garden-pier/port-building/border.png); }

.port-building section .box h4 span {
  background: linear-gradient(0deg, #fbede8 50%, #fbede8 50%) left bottom -2px/auto 10px repeat-x; }
  @media only screen and (max-width: 767px) {
    .port-building section .box h4 span {
      background: linear-gradient(0deg, #fbede8 50%, #fbede8 50%) left bottom 0/auto 5px repeat-x; } }

.port-building section .box h4 em {
  color: #da5019; }

.port-building section .box__point--top .point {
  border-color: #da5019;
  box-shadow: 7px 7px 0 #fbede8;
  margin-top: -80px; }
  .port-building section .box__point--top .point p {
    background: #da5019;
    height: 30px; }
  .port-building section .box__point--top .point ul li:before {
    background-color: #da5019; }

.port-building section .box p a {
  color: #da5019;
  padding-bottom: 2px;
  border-bottom: 1px solid #da5019;
  transition: opacity 0.3s; }
  .port-building section .box p a:hover {
    opacity: 0.6; }

.port-building section .box .btn-link-arrow {
  width: 100%;
  max-width: 320px;
  margin-top: 25px; }
  @media only screen and (max-width: 767px) {
    .port-building section .box .btn-link-arrow {
      max-width: 275px;
      margin: 25px auto 0;
      right: auto; } }

.port-building section .info__auditorium .notes.center {
  margin-top: 15px; }

.port-building section .info__auditorium .info-txt.center.no-mb {
  line-height: 1.571428571; }

.port-building section .info__auditorium .table-fees {
  border: 1px solid #da5019;
  border-radius: 5px;
  overflow: hidden; }
  .port-building section .info__auditorium .table-fees table {
    table-layout: fixed;
    border-collapse: collapse;
    width: 100%; }
    .port-building section .info__auditorium .table-fees table thead th {
      background-color: #da5019;
      color: #fff;
      text-align: center;
      vertical-align: middle;
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      font-weight: 700;
      height: 40px;
      border-right: 1px solid #fff; }
      .port-building section .info__auditorium .table-fees table thead th:first-child {
        width: 153px; }
      .port-building section .info__auditorium .table-fees table thead th:last-child {
        border-right: none; }
    .port-building section .info__auditorium .table-fees table tbody tr th,
    .port-building section .info__auditorium .table-fees table tbody tr td {
      border-right: 1px solid #e1e1e1;
      border-bottom: 1px solid #e1e1e1;
      vertical-align: middle;
      text-align: center;
      padding: 15px 0; }
    .port-building section .info__auditorium .table-fees table tbody tr th {
      text-align: center;
      vertical-align: middle;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: 700;
      padding-left: 10px;
      padding-right: 10px; }
      .port-building section .info__auditorium .table-fees table tbody tr th .small {
        font-size: 13px;
        font-size: 1.3rem;
        margin-top: 5px; }
      .port-building section .info__auditorium .table-fees table tbody tr th .tag {
        font-size: 13px;
        font-size: 1.3rem;
        display: block;
        margin-top: 10px;
        line-height: 1.45;
        border-radius: 12px;
        background-color: rgba(218, 80, 25, 0.1);
        color: #da5019;
        text-align: center;
        padding: 5px 5px; }
    .port-building section .info__auditorium .table-fees table tbody tr td {
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: 0.05em;
      font-weight: 700; }
      .port-building section .info__auditorium .table-fees table tbody tr td:last-child {
        border-right: none; }
    .port-building section .info__auditorium .table-fees table tbody tr:last-child th,
    .port-building section .info__auditorium .table-fees table tbody tr:last-child td {
      border-bottom: none; }

.port-building section .info__auditorium .notes.notes-fees {
  margin-top: 20px; }
  @media only screen and (max-width: 767px) {
    .port-building section .info__auditorium .notes.notes-fees {
      margin-top: 10px; } }
  .port-building section .info__auditorium .notes.notes-fees li {
    color: #e43030; }

.port-building section .info__auditorium .table-fees-sp .table {
  margin-bottom: 10px;
  transition: height 0.3s;
  overflow: hidden; }
  .port-building section .info__auditorium .table-fees-sp .table--heading {
    position: relative;
    color: #fff;
    background-color: #da5019;
    text-align: center;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 700;
    line-height: 1.2;
    border-radius: 3px;
    transition: border-radius 0s;
    padding: 12px 15px;
    text-align: left; }
    .port-building section .info__auditorium .table-fees-sp .table--heading .small {
      font-size: 12px;
      font-size: 1.2rem; }
    .port-building section .info__auditorium .table-fees-sp .table--heading .icon {
      position: relative; }
      .port-building section .info__auditorium .table-fees-sp .table--heading .icon:before, .port-building section .info__auditorium .table-fees-sp .table--heading .icon:after {
        content: "";
        width: 10px;
        height: 1px;
        background-color: #da5019;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, 0) rotateZ(0); }
      .port-building section .info__auditorium .table-fees-sp .table--heading .icon:after {
        transition: transform 0.3s; }
      @media only screen and (min-width: 768px) {
        .port-building section .info__auditorium .table-fees-sp .table--heading .icon {
          display: none; } }
      @media only screen and (max-width: 767px) {
        .port-building section .info__auditorium .table-fees-sp .table--heading .icon {
          content: "";
          height: 24px;
          width: 24px;
          border-radius: 50%;
          background-color: #fff;
          top: 50%;
          right: 15px;
          position: absolute;
          transform: translateY(-50%); } }
    .port-building section .info__auditorium .table-fees-sp .table--heading.is-open {
      border-bottom-left-radius: 0;
      border-bottom-right-radius: 0; }
    .port-building section .info__auditorium .table-fees-sp .table--heading:not(.is-open) {
      transition: border-radius 0.2s 0.3s; }
      .port-building section .info__auditorium .table-fees-sp .table--heading:not(.is-open) .icon:after {
        transform: translate(-50%, 0) rotateZ(-90deg); }
  .port-building section .info__auditorium .table-fees-sp .table__content {
    border: 1px solid #da5019;
    border-top: none;
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
    overflow: hidden;
    display: none; }
    .port-building section .info__auditorium .table-fees-sp .table__content__row {
      display: -webkit-flex;
      display: flex;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap; }
      .port-building section .info__auditorium .table-fees-sp .table__content__row--cell {
        width: 50%; }
        .port-building section .info__auditorium .table-fees-sp .table__content__row--cell:first-child .table__content__row--time {
          border-right: 1px solid #fff; }
        .port-building section .info__auditorium .table-fees-sp .table__content__row--cell:first-child .table__content__row--content {
          border-right: 1px solid #e1e1e1; }
      .port-building section .info__auditorium .table-fees-sp .table__content__row--time {
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        height: 30px;
        color: #da5019;
        text-align: center;
        background: #fbede8;
        font-size: 12px;
        font-size: 1.2rem;
        letter-spacing: 0.05em;
        font-weight: 700; }
      .port-building section .info__auditorium .table-fees-sp .table__content__row--content {
        height: 44px;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        justify-content: center;
        font-size: 14px;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        font-weight: 700; }

.port-building .contact-box2__wrapper {
  background: repeating-linear-gradient(-45deg, #fdf6f3, #fdf6f3 3px, #fcf3ef 3px, #fcf3ef 6px); }

@media only screen and (min-width: 768px) {
  .port-building .spec1 {
    margin-top: 20px; } }

.port-building .box-info .btn-link-external {
  margin: 10px auto; }
  @media only screen and (min-width: 768px) {
    .port-building .box-info .btn-link-external {
      margin: 20px 0; } }

.port-building .point p {
  background-image: url(../images/garden-pier/common/grid-bg3.png) !important; }

@media only screen and (min-width: 768px) {
  .port-building section.info {
    padding-top: 47px; }
    .port-building section.info .info-txt {
      margin-top: -12px;
      margin-bottom: 25px; } }

.port-building .side-image-cont#side-image01 {
  background-image: url(../images/garden-pier/port-building/img01-01.jpg); }

.port-building .side-image-cont#side-image02 {
  background-image: url(../images/garden-pier/port-building/img02-01.jpg);
  background-position: top; }
  @media only screen and (max-width: 1650px) {
    .port-building .side-image-cont#side-image02 {
      background-position: center; } }

.port-building .side-image-cont#side-image03 {
  background-image: url(../images/garden-pier/port-building/img03-01.jpg); }

.port-building .side-image-cont#side-image04 {
  background-image: url(../images/garden-pier/port-building/img04-01.jpg); }

.porthouse .mv__img {
  background-image: url(../images/garden-pier/port-house/mv-bg-pc.jpg); }
  @media only screen and (max-width: 767px) {
    .porthouse .mv__img {
      background-image: url(../images/garden-pier/port-house/mv-bg-sp.jpg); } }

.porthouse .mv h2 .mv__title--icon img {
  width: 93px; }
  @media only screen and (max-width: 767px) {
    .porthouse .mv h2 .mv__title--icon img {
      width: 70px; } }

.porthouse .has-border:after {
  content: '';
  width: 100%;
  height: 7px;
  margin: 55px 0;
  background: url(../images/garden-pier/port-house/border.png) left center/26px 7px repeat-x;
  display: block; }
  @media only screen and (max-width: 767px) {
    .porthouse .has-border:after {
      height: 4px;
      background-size: 13px 4px;
      margin: 35px 0; } }

@media only screen and (max-width: 767px) {
  .porthouse .feature {
    padding: 0 25px; } }

@media only screen and (max-width: 767px) {
  .porthouse .feature__mid {
    padding: 0 !important; } }

.porthouse .feature .img-container {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between; }
  .porthouse .feature .img-container .img {
    width: calc(50% - 6px); }
  @media only screen and (max-width: 767px) {
    .porthouse .feature .img-container {
      margin-top: 15px; } }

.porthouse .feature .point {
  margin-top: 0; }

@media only screen and (min-width: 768px) {
  .porthouse .feature__01 .feature__top {
    display: -webkit-flex;
    display: flex; } }

@media only screen and (min-width: 768px) {
  .porthouse .feature__01 .feature__top__img {
    order: 2;
    width: 49.5%;
    margin-left: 55px; } }

@media only screen and (min-width: 768px) {
  .porthouse .feature__01 .feature__top__content {
    width: 47%;
    padding-left: calc((100% - 770px) / 2);
    z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    .porthouse .feature__01 .feature__top__content {
      padding-left: 20px; } }

@media only screen and (min-width: 768px) {
    .porthouse .feature__01 .feature__top__content .point {
      width: calc(100% + 120px); } }

@media only screen and (min-width: 768px) {
  .porthouse .feature__02 .feature__top {
    display: -webkit-flex;
    display: flex; } }

@media only screen and (min-width: 768px) {
  .porthouse .feature__02 .feature__top__img {
    width: 49.5%;
    margin-right: 35px; } }

@media only screen and (max-width: 767px) {
  .porthouse .feature__02 .feature__top__img {
    margin-bottom: 25px; } }

@media only screen and (min-width: 768px) {
  .porthouse .feature__02 .feature__top__content {
    width: 50.5%;
    padding-right: calc((100% - 770px) / 2);
    z-index: 2; } }
  @media only screen and (min-width: 768px) and (max-width: 1060px) {
    .porthouse .feature__02 .feature__top__content {
      padding-right: 20px; } }

@media only screen and (min-width: 768px) {
    .porthouse .feature__02 .feature__top__content .point {
      width: calc(100% + 120px); } }

.porthouse .feature__02 .feature__mid {
  margin-top: 40px;
  margin-bottom: 40px; }
  @media only screen and (min-width: 768px) {
    .porthouse .feature__02 .feature__mid {
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: flex-start;
      align-items: flex-start; } }
  @media only screen and (max-width: 767px) {
    .porthouse .feature__02 .feature__mid {
      margin-top: 20px; } }
  @media only screen and (min-width: 768px) {
    .porthouse .feature__02 .feature__mid > p {
      width: 40%; } }
  .porthouse .feature__02 .feature__mid .point {
    width: 60%;
    margin: -60px 0 0 30px; }
    @media only screen and (max-width: 767px) {
      .porthouse .feature__02 .feature__mid .point {
        margin: 20px 0 0 0;
        width: 100%; } }

.porthouse section.front .wrapper p em {
  display: inline;
  position: relative; }

.porthouse section.front .img:before {
  width: 87px;
  height: 100px;
  background: url(../images/garden-pier/port-house/img-illust.png) center/cover;
  left: -30px;
  bottom: -10px; }
  @media only screen and (max-width: 767px) {
    .porthouse section.front .img:before {
      width: 53px;
      height: 61px;
      left: 10px;
      bottom: -15px; } }

.porthouse section.front .img:after {
  width: 99px;
  height: 44px;
  background: url(../images/garden-pier/port-house/img-speech.png) center/cover;
  right: -40px;
  top: -25px; }
  @media only screen and (max-width: 767px) {
    .porthouse section.front .img:after {
      width: 68px;
      height: 30px;
      right: -9px;
      top: -157px; } }

.porthouse section.intro {
  padding-bottom: 0 !important; }

.porthouse .night {
  margin-top: 80px; }

.porthouse .points-box-striped {
  padding: 0 !important;
  margin-bottom: 60px;
  margin-top: 40px; }
  .porthouse .points-box-striped ul li {
    padding-left: 10px;
    position: relative;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    line-height: 1.6;
    margin-bottom: 7px; }
    .porthouse .points-box-striped ul li:last-child {
      margin-bottom: 0; }
    .porthouse .points-box-striped ul li:before {
      content: '';
      position: absolute;
      left: 0;
      top: 10px;
      width: 4px;
      height: 4px;
      border-radius: 50%;
      background-color: #2fb2c2; }

.porthouse .contact-box2__wrapper {
  background: repeating-linear-gradient(-45deg, #f4fbfc, #f4fbfc 3px, #f0fafb 3px, #f0fafb 6px); }

.porthouse .label-box .label {
  background-color: #eaf7f9; }

@media only screen and (max-width: 767px) {
  .porthouse .feature h4 {
    margin-bottom: 25px; } }

@media only screen and (max-width: 767px) {
  .porthouse section.intro h3 {
    margin-bottom: 50px !important; } }

@media only screen and (max-width: 767px) {
  .porthouse .btn-link-arrow {
    height: 40px; } }

@media only screen and (min-width: 768px) {
  .porthouse section.info {
    padding-top: 47px; }
    .porthouse section.info .info-txt {
      margin-top: -12px;
      margin-bottom: 25px; } }

.porthouse p.last {
  margin-top: -10px; }

@media only screen and (min-width: 768px) {
  .porthouse .btn-link-external:after {
    width: 12px;
    height: 12px; } }

@media only screen and (max-width: 767px) {
  .porthouse .btn-link-external:after {
    width: 10px;
    height: 10px; } }

.porthouse .side-image-cont#side-image01 {
  background-image: url(../images/garden-pier/port-house/img01-01.jpg); }

.porthouse .side-image-cont#side-image02 {
  background-image: url(../images/garden-pier/port-house/img02-01.jpg); }

.porthouse .side-image-cont#side-image03 {
  background-image: url(../images/garden-pier/port-house/img03-01.jpg); }

.porthouse .side-image-cont#side-image04 {
  background-image: url(../images/garden-pier/port-house/img04-01.jpg); }

.porthouse .link-underline {
  color: inherit; }

body.policy .mv-side {
  background-image: url("../images/policy/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.policy .mv-side {
      background-image: url("../images/policy/mv_sp.jpg"); } }

body.policy section#content {
  padding: 118px 0 220px; }
  @media only screen and (max-width: 767px) {
    body.policy section#content {
      padding: 68px 0 120px; } }
  body.policy section#content .inner {
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .inner {
        padding: 0 25px; } }
  body.policy section#content .ttl-01 {
    margin-bottom: 62px; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .ttl-01 {
        margin-bottom: 38px; } }
    body.policy section#content .ttl-01.last {
      margin-top: 80px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content .ttl-01.last {
          margin-top: 35px; } }
  body.policy section#content .ttl-02 {
    margin-bottom: 32px; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .ttl-02 {
        margin-bottom: 24px; } }
  body.policy section#content .reg-text {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.14;
    margin-bottom: 55px;
    text-align: justify; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .reg-text {
        line-height: 1.71;
        margin-bottom: 38px; } }
    body.policy section#content .reg-text a {
      color: #0095a1;
      border-bottom: 1px solid #0095a1;
      padding-bottom: 3px;
      position: relative; }
    body.policy section#content .reg-text.mg1 {
      margin-top: -35px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content .reg-text.mg1 {
          margin-top: -20px; } }
    body.policy section#content .reg-text.mg2 {
      margin-bottom: 20px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content .reg-text.mg2 {
          margin-bottom: 19px; } }
  body.policy section#content .policy-list li {
    font-size: 15px;
    font-size: 1.5rem;
    margin-bottom: 20px;
    padding-left: 16px;
    position: relative;
    text-align: justify; }
    body.policy section#content .policy-list li:last-child {
      margin-bottom: 0; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .policy-list li {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.71;
        padding-left: 10px;
        margin-bottom: 11px; } }
    body.policy section#content .policy-list li:before {
      background-color: #1c4e6a;
      border-radius: 50%;
      content: "";
      position: absolute;
      left: 0;
      top: 4px;
      height: 6px;
      width: 6px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content .policy-list li:before {
          top: 10px;
          height: 4px;
          width: 4px; } }
  body.policy section#content .link-area {
    background-color: #f7fcff;
    font-size: 14px;
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    padding: 37px 48px;
    margin: 27px auto 69px;
    text-align: justify; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .link-area {
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.84;
        margin: 20px auto 44px;
        padding: 29px 23px; }
        body.policy section#content .link-area .space {
          display: block;
          margin-top: 15px; } }
    body.policy section#content .link-area b {
      font-weight: bold; }
    body.policy section#content .link-area p {
      padding-top: 7px;
      letter-spacing: auto; }
      @media only screen and (max-width: 767px) {
        body.policy section#content .link-area p {
          padding-top: 20px; } }
    body.policy section#content .link-area a {
      color: #0095a1;
      display: inline-block;
      margin-bottom: 16px; }
      body.policy section#content .link-area a span.underline {
        border-bottom: 1px solid #0095a1;
        padding-bottom: 3px;
        position: relative; }
      @media only screen and (max-width: 767px) {
        body.policy section#content .link-area a {
          display: inline;
          margin-bottom: 22px;
          word-wrap: break-word; } }
      body.policy section#content .link-area a img {
        display: inline-block;
        margin-left: 5px;
        width: 13px; }
        @media only screen and (max-width: 767px) {
          body.policy section#content .link-area a img {
            position: relative;
            top: -4px;
            width: 12px; } }
  body.policy section#content .duo {
    margin-bottom: 70px; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .duo {
        margin-bottom: 40px; } }
    body.policy section#content .duo .duo-item {
      width: calc(50% - 10px); }
      @media only screen and (max-width: 767px) {
        body.policy section#content .duo .duo-item {
          width: 100%; }
          body.policy section#content .duo .duo-item:first-of-type {
            margin-bottom: 20px; } }
    body.policy section#content .duo .table-info {
      margin-top: 19px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content .duo .table-info {
          margin-top: 18px; } }
      body.policy section#content .duo .table-info li {
        margin-bottom: 11px;
        padding-left: 13px;
        font-size: 12px;
        font-size: 1.2rem;
        position: relative;
        text-align: justify; }
        @media only screen and (max-width: 767px) {
          body.policy section#content .duo .table-info li {
            margin-bottom: 3px;
            padding-left: 12px;
            font-size: 11px;
            font-size: 1.1rem;
            line-height: 1.63; } }
        body.policy section#content .duo .table-info li .ast {
          position: absolute;
          left: 0;
          top: 0; }
  body.policy section#content .table-wrap {
    border: 1px solid #0095a1;
    border-radius: 5px;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      body.policy section#content .table-wrap {
        border-radius: 3px; } }
  body.policy section#content table {
    letter-spacing: 0.05em;
    margin-bottom: -1px;
    width: 100%; }
    body.policy section#content table.table-01 tr:nth-of-type(2) td .line:first-of-type {
      border-top: 1px solid #d9e7ef; }
    body.policy section#content table.table-01 th {
      border-bottom: 1px solid white;
      width: 164px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content table.table-01 th {
          text-align: left;
          padding-left: 23px;
          width: 105px; } }
    body.policy section#content table.table-01 .line {
      border-top: 1px dashed #cceaec;
      display: block;
      padding-top: 17px;
      padding-left: 49px;
      text-align: left;
      height: 50px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content table.table-01 .line {
          border-top: 1px dotted #cceaec;
          padding-top: 10px;
          padding-left: 24px;
          text-align: justify;
          height: 37px; } }
      body.policy section#content table.table-01 .line.none {
        border-top: none; }
    body.policy section#content table.table-02 th {
      border-right: 1px solid white;
      height: 50px;
      width: 50%; }
      @media only screen and (max-width: 767px) {
        body.policy section#content table.table-02 th {
          height: 31px;
          width: 50%; } }
      body.policy section#content table.table-02 th:last-of-type {
        border-right: none; }
    body.policy section#content table.table-02 td {
      border-right: 1px solid #cceaec;
      border-bottom: 1px solid #cceaec;
      height: 50px;
      width: 50%; }
      @media only screen and (max-width: 767px) {
        body.policy section#content table.table-02 td {
          min-height: 35px;
          padding: 9px 0;
          height: auto;
          width: 50%; } }
    body.policy section#content table caption {
      background-color: #0095a1;
      color: white;
      font-weight: 500;
      font-size: 14px;
      font-size: 1.4rem;
      padding-top: 12px;
      text-align: center;
      height: 40px; }
      @media only screen and (max-width: 767px) {
        body.policy section#content table caption {
          font-size: 13px;
          font-size: 1.3rem;
          padding-top: 7px;
          height: 28px; } }
    body.policy section#content table th {
      background-color: #cceaec;
      color: #0095a1;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: bold;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.policy section#content table th {
          font-size: 13px;
          font-size: 1.3rem; } }
    body.policy section#content table td {
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: 500;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        body.policy section#content table td {
          font-size: 13px;
          font-size: 1.3rem;
          line-height: 1.33; } }

body.reserved .mv-side {
  background-image: url("../images/reserved/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.reserved .mv-side {
      background-image: url("../images/reserved/mv_sp.jpg"); } }

body.reserved main {
  padding: 115px 0 220px; }
  @media only screen and (max-width: 767px) {
    body.reserved main {
      padding: 60px 0 115px; } }

body.reserved .reserved-heading p {
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.reserved .reserved-heading p {
      text-align: left; } }

body.reserved .alert-p-message {
  color: #ff0000;
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 25px; }

@media only screen and (min-width: 768px) {
  body.reserved .anchor-link > a figure {
    padding: 11px; } }

body.reserved .anchor-link {
  margin-top: 40px; }
  @media only screen and (max-width: 767px) {
    body.reserved .anchor-link {
      margin-top: 28px; } }
  body.reserved .anchor-link figcaption {
    padding-top: 7px; }
    body.reserved .anchor-link figcaption span {
      font-size: 16px;
      font-size: 1.6rem; }
  @media only screen and (min-width: 768px) {
    body.reserved .anchor-link > a:nth-child(1) figure .img-box img {
      width: 24px; }
    body.reserved .anchor-link > a:nth-child(2) figure .img-box img {
      width: 40px; }
    body.reserved .anchor-link > a:nth-child(3) figure .img-box img {
      width: 40px; } }
  @media only screen and (max-width: 767px) {
    body.reserved .anchor-link > a figure .img-box img {
      width: auto;
      height: 23px !important; } }

body.reserved section {
  padding-top: 140px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.reserved section {
      padding-top: 85px; } }
  body.reserved section .ttl-01 {
    margin-bottom: 65px; }
    @media only screen and (max-width: 767px) {
      body.reserved section .ttl-01 {
        margin-bottom: 40px; } }
  body.reserved section .sec-heading {
    margin-bottom: 60px; }
    @media only screen and (max-width: 767px) {
      body.reserved section .sec-heading {
        margin-bottom: 40px; } }
    body.reserved section .sec-heading figcaption {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      line-height: 2.142857143em;
      margin-top: 50px;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        body.reserved section .sec-heading figcaption {
          margin-top: 30px;
          line-height: 1.714285714em; } }
  body.reserved section .inner-sec {
    padding-top: 65px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      body.reserved section .inner-sec {
        padding-top: 40px; } }
    body.reserved section .inner-sec:nth-of-type(-n + 1) {
      padding-top: 0; }
    body.reserved section .inner-sec .ttl-02 {
      margin-bottom: 30px; }
      @media only screen and (max-width: 767px) {
        body.reserved section .inner-sec .ttl-02 {
          margin-bottom: 25px; } }
    body.reserved section .inner-sec .note-list {
      margin-top: 5px; }
      @media only screen and (max-width: 767px) {
        body.reserved section .inner-sec .note-list {
          margin-top: 10px; } }

body.reserved .dot-list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  body.reserved .dot-list > li {
    margin-right: 75px;
    letter-spacing: 0.05em; }
    @media only screen and (min-width: 768px) {
      body.reserved .dot-list > li {
        margin-bottom: 8px; }
        body.reserved .dot-list > li:last-child {
          margin-bottom: 2px; } }
    @media only screen and (max-width: 767px) {
      body.reserved .dot-list > li {
        margin-right: 0;
        width: 100%;
        margin-top: 10px; }
        body.reserved .dot-list > li:nth-of-type(-n + 1) {
          margin-top: 0; } }
    body.reserved .dot-list > li.w100 {
      width: 100%; }

body.reserved .btn-wrap {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  margin-top: 20px; }
  @media only screen and (max-width: 767px) {
    body.reserved .btn-wrap {
      display: block; } }
  body.reserved .btn-wrap a {
    margin: 0 0 0 20px;
    max-width: calc((100% - 40px) / 3);
    width: 100%; }
    body.reserved .btn-wrap a:nth-child(-n + 1) {
      margin-left: 0; }
    @media only screen and (max-width: 900px) {
      body.reserved .btn-wrap a span {
        font-size: 11px;
        font-size: 1.1rem; } }
    @media only screen and (max-width: 767px) {
      body.reserved .btn-wrap a {
        margin: 10px auto 0;
        max-width: 275px;
        height: 40px; }
        body.reserved .btn-wrap a span {
          font-size: 13px;
          font-size: 1.3rem; }
        body.reserved .btn-wrap a:nth-of-type(-n + 1) {
          margin: 0 auto; } }

body.reserved .contact-box {
  margin-top: 70px; }
  @media only screen and (max-width: 767px) {
    body.reserved .contact-box {
      margin-top: 45px; } }
  body.reserved .contact-box .btn_pdf a {
    padding-right: 15px;
    text-decoration: underline;
    display: inline-block;
    background-image: url(../images/common/linkb.svg);
    background-size: 11px 11px;
    background-repeat: no-repeat;
    background-position: right center; }
    body.reserved .contact-box .btn_pdf a:hover {
      text-decoration: none; }

body.reserved .anchor {
  position: relative;
  top: -50px; }
  @media only screen and (max-width: 767px) {
    body.reserved .anchor {
      top: -90px; } }

body.reserved .box-loan-destination {
  margin: 18px 0 21px;
  position: relative; }
  @media only screen and (min-width: 768px) {
    body.reserved .box-loan-destination {
      margin: 20px 0 -26px; } }
  body.reserved .box-loan-destination .dot-list {
    max-width: 835px; }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.reserved .box-loan-destination .dot-list {
        width: calc(100% - 80px);
        max-width: none; } }
    @media only screen and (max-width: 767px) {
      body.reserved .box-loan-destination .dot-list li {
        width: 100%;
        margin-right: 0px;
        margin-bottom: -5px; } }
    @media only screen and (min-width: 768px) {
      body.reserved .box-loan-destination .dot-list li {
        width: calc(50% - 10px);
        margin-right: 20px; }
        body.reserved .box-loan-destination .dot-list li:nth-child(2n) {
          margin-right: 0; } }
  body.reserved .box-loan-destination .text-more {
    position: absolute;
    bottom: -39px;
    right: -14px;
    font-size: 14px;
    line-height: 25px; }
    @media only screen and (min-width: 768px) {
      body.reserved .box-loan-destination .text-more {
        right: 0;
        width: 13%;
        bottom: 8px;
        font-size: 15px;
        line-height: 28px; } }
    @media only screen and (min-width: 768px) and (max-width: 1000px) {
      body.reserved .box-loan-destination .text-more {
        width: 40px; } }

body.reserved .box-documents {
  margin: 33px 0 27px; }
  @media only screen and (min-width: 768px) {
    body.reserved .box-documents {
      margin: 49px 0 49px; } }
  body.reserved .box-documents .ttl {
    position: relative;
    z-index: 2;
    font-weight: 700;
    letter-spacing: 0.1em;
    line-height: 28px;
    text-align: center;
    color: #0095a1;
    font-size: 15px;
    font-size: 1.5rem; }
    @media only screen and (min-width: 768px) {
      body.reserved .box-documents .ttl {
        font-size: 18px;
        font-size: 1.8rem; } }
  body.reserved .box-documents .list {
    margin: -13px 0 0;
    position: relative;
    padding: 30px 10px 23px 24px;
    border-radius: 5px;
    overflow: hidden; }
    @media only screen and (min-width: 768px) {
      body.reserved .box-documents .list {
        padding: 43px 20px 35px; } }
    body.reserved .box-documents .list:before {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(90deg, #f1faff 0%, #f1faff 0.71%, #eaf9fb 51.35%, #e3f7f6 100%);
      opacity: 0.6;
      z-index: 0; }
  body.reserved .box-documents .dot-list {
    position: relative;
    z-index: 2;
    max-width: 890px;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      body.reserved .box-documents .dot-list li {
        width: 100%;
        margin-right: 0;
        margin-bottom: -2px; } }
    @media only screen and (min-width: 768px) {
      body.reserved .box-documents .dot-list li {
        margin-right: 39px; } }
    @media only screen and (max-width: 767px) {
      body.reserved .box-documents .dot-list .txt-small {
        letter-spacing: 0.05em;
        font-size: 11px;
        font-size: 1.1rem; } }

body.reserved .box-application .ttl {
  margin-bottom: 10px;
  position: relative;
  z-index: 2;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 28px;
  text-align: center;
  color: #0095a1;
  font-size: 15px;
  font-size: 1.5rem; }
  @media only screen and (min-width: 768px) {
    body.reserved .box-application .ttl {
      margin-bottom: 20px;
      font-size: 18px;
      font-size: 1.8rem; } }

body.reserved .box-application .desc {
  margin-bottom: 25px;
  letter-spacing: 0.05em;
  line-height: 30px;
  text-align: left;
  color: #1c4e6a;
  font-size: 14px;
  font-size: 1.4rem; }
  @media only screen and (max-width: 767px) {
    body.reserved .box-application .desc {
      margin-bottom: 19px;
      line-height: 24px; } }

@media only screen and (max-width: 767px) {
  body.reserved .box-application .scroll-content {
    position: relative;
    overflow: auto;
    border: #0095a1 solid 1px;
    border-radius: 5px; } }

body.reserved .box-application .box-table {
  border: #0095a1 solid 1px;
  border-radius: 5px;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    body.reserved .box-application .box-table {
      width: 970px;
      border: none;
      border-radius: 0; } }

body.reserved .box-application table {
  width: 100%;
  table-layout: auto; }
  body.reserved .box-application table th, body.reserved .box-application table td {
    text-align: center;
    border: solid 1px #D9E7EF;
    padding: 10px 5px 10px; }
  body.reserved .box-application table th {
    border-top: none;
    border-bottom-color: #FFF;
    background-color: #0095a1;
    letter-spacing: .05em;
    color: #fff;
    height: 40px;
    font-size: 14px;
    font-size: 1.4rem; }
    @media only screen and (max-width: 767px) {
      body.reserved .box-application table th {
        font-size: 13px;
        font-size: 1.3rem; } }
    body.reserved .box-application table th:not(:first-child) {
      border-left-color: #fff; }
    body.reserved .box-application table th:not(:last-child) {
      width: 7.07%; }
      @media only screen and (max-width: 900px) {
        body.reserved .box-application table th:not(:last-child) {
          width: 6.9%; } }
      @media only screen and (max-width: 767px) {
        body.reserved .box-application table th:not(:last-child) {
          width: 7.07%; } }
    body.reserved .box-application table th:first-child {
      width: 155px; }
      @media only screen and (max-width: 900px) {
        body.reserved .box-application table th:first-child {
          width: 135px; } }
      @media only screen and (max-width: 767px) {
        body.reserved .box-application table th:first-child {
          width: 149px !important; } }
  body.reserved .box-application table td {
    height: 64px;
    font-weight: bold;
    font-size: 18px;
    font-size: 1.8rem; }
    @media only screen and (max-width: 900px) {
      body.reserved .box-application table td {
        font-size: 17px;
        font-size: 1.7rem; } }
    @media only screen and (max-width: 767px) {
      body.reserved .box-application table td {
        height: 62px; } }
  body.reserved .box-application table td:first-child {
    color: #0095a1;
    background: rgba(0, 149, 161, 0.2);
    letter-spacing: 0.05em;
    font-size: 16px;
    font-size: 1.6rem;
    border-right-color: #FFF;
    border-top-color: #FFF;
    border-bottom-color: #FFF;
    padding-right: 18px; }
    @media only screen and (max-width: 767px) {
      body.reserved .box-application table td:first-child {
        padding-left: 20px;
        padding-right: 0;
        text-align: left;
        font-size: 15px;
        font-size: 1.5rem; } }
    @media only screen and (max-width: 900px) {
      body.reserved .box-application table td:first-child {
        padding-right: 5px; } }
    body.reserved .box-application table td:first-child + td {
      border-left-color: #FFF; }
  body.reserved .box-application table th:first-child,
  body.reserved .box-application table td:first-child {
    border-left: none; }
  body.reserved .box-application table th:last-child,
  body.reserved .box-application table td:last-child {
    border-right: none; }
  body.reserved .box-application table tr:last-child td {
    border-bottom: none; }

body.reserved .box-application .scroll-hint-icon {
  width: 150px;
  height: 100px;
  top: calc(50% - 50px);
  left: calc(50% - 75px);
  background: rgba(28, 78, 106, 0.5); }
  body.reserved .box-application .scroll-hint-icon:before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='62.001' height='80' viewBox='0 0 62.001 80'%3E%3Cg id='icn' transform='translate(-661.199 -34.237)'%3E%3Cpath id='Path_56' data-name='Path 56' d='M679.859,41.439h0V74.378a6.007,6.007,0,0,1-.273,1.932,1.593,1.593,0,0,1-.093.2c-.035-.011-.08-.026-.134-.048a3.459,3.459,0,0,1-.614-.339l-3.4-4.7a8.059,8.059,0,0,0-11.293-.964,7.922,7.922,0,0,0-.974,11.216L674,95.245c2.958,3.633,5.083,5.736,7.847,8.706a42.192,42.192,0,0,0,8.032,7.173,19.54,19.54,0,0,0,10.817,3.113A22.419,22.419,0,0,0,723.2,91.9V76.618a7.244,7.244,0,0,0-9.911-6.694,7.249,7.249,0,0,0-6.882-4.935,7.176,7.176,0,0,0-3.588.96,5.841,5.841,0,0,0-2.648-1.792,10.159,10.159,0,0,0-3.31-.5,5.784,5.784,0,0,0-2.051.4c-.149.058-.3.123-.443.192V41.439a7.254,7.254,0,0,0-14.507,0Zm10.932,0v28.1h0a1.772,1.772,0,0,0,.526,1.255,1.8,1.8,0,0,0,2.528,0,1.767,1.767,0,0,0,.521-1.255h0a1.92,1.92,0,0,1,.222-.894,2.761,2.761,0,0,1,1.058-1.052,2.594,2.594,0,0,1,1.215-.383,5.614,5.614,0,0,1,2.612.505,1.893,1.893,0,0,1,.625.53,2.057,2.057,0,0,1,.364.857,1.793,1.793,0,0,0,3.129.774,3.661,3.661,0,0,1,6.492,2.312v.847a1.769,1.769,0,0,0,1.156,1.66,1.8,1.8,0,0,0,1.972-.483,3.661,3.661,0,0,1,6.414,2.4V91.9a18.643,18.643,0,0,1-5.544,13.284,18.915,18.915,0,0,1-13.384,5.5,15.871,15.871,0,0,1-8.888-2.554,38.9,38.9,0,0,1-7.335-6.589c-2.831-3.042-4.852-5.037-7.7-8.54l-.022-.027L665.818,79.4a4.39,4.39,0,0,1,.541-6.216,4.466,4.466,0,0,1,6.257.537l3.546,4.875a1.762,1.762,0,0,0,.322.3,7.551,7.551,0,0,0,1.532.864,4.3,4.3,0,0,0,1.6.329,3.279,3.279,0,0,0,2.232-.861,4.023,4.023,0,0,0,.9-1.236,6.743,6.743,0,0,0,.561-1.889,11.219,11.219,0,0,0,.128-1.722V41.439h0a3.678,3.678,0,0,1,7.357,0Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-size: auto 40px; }
  body.reserved .box-application .scroll-hint-icon:after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='166.008' height='16.001' viewBox='0 0 166.008 16.001'%3E%3Cg id='Group_145' data-name='Group 145' transform='translate(-291.996 -7716)'%3E%3Cpath id='arw' d='M329,7720.9H307.947V7716L292,7724l15.951,8v-4.9H329Z' fill='%23fff'/%3E%3Cpath id='arw-2' data-name='arw' d='M421,7727.1h21.057v4.9L458,7724l-15.951-8v4.9H421Z' fill='%23fff'/%3E%3C/g%3E%3C/svg%3E%0A");
    background-size: auto 8px;
    width: 170px;
    height: 8px;
    top: 36px;
    margin-left: -42px; }

body.reserved .box-application .scroll-hint-text {
  margin-top: 10px;
  letter-spacing: 0.05em;
  font-size: 11px;
  font-weight: bold; }

body.shop.single .shops-article {
  padding: 120px 0 70px; }
  @media only screen and (max-width: 767px) {
    body.shop.single .shops-article {
      padding: 70px 0 35px; } }

body.shop.single .upper-post {
  text-align: center; }

body.shop.single .shop-ttl-wrap {
  padding: 0 50px; }

body.shop.single .ttl-01 {
  margin-top: 44px;
  margin-bottom: 35px; }
  @media only screen and (max-width: 767px) {
    body.shop.single .ttl-01 {
      margin-top: 25px;
      margin-bottom: 25px; } }

body.shop.single .category-shop {
  background: #f1faff;
  background: -webkit-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
  background: -o-linear-gradient(357deg, #f1faff, #e3f7f6 100%);
  background: linear-gradient(87deg, #f1faff, #e3f7f6 100%);
  border-radius: 5px;
  color: #0095a1;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 600;
  letter-spacing: 0.4em;
  margin-bottom: 0;
  padding-top: 11px;
  text-align: center;
  height: 40px; }
  @media only screen and (max-width: 767px) {
    body.shop.single .category-shop {
      font-size: 13px;
      font-size: 1.3rem;
      margin-bottom: 0;
      padding-top: 7px;
      height: 30px; } }

body.shop.single .slider-wrap {
  overflow: hidden; }

body.shop.single .left-align-slick .slick-track {
  margin-left: 0; }

body.shop.single #slider-shop .slide {
  height: 550px;
  width: 100%;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    body.shop.single #slider-shop .slide {
      height: 205px; } }
  body.shop.single #slider-shop .slide img {
    margin: 0 !important; }

body.shop.single .slider-nav-wrap {
  overflow: hidden; }

body.shop.single .slider-nav {
  margin-top: 4px;
  /* the parent */ }
  body.shop.single .slider-nav .slide {
    background-size: cover;
    background-position: center;
    cursor: pointer;
    height: 135px; }
    @media only screen and (max-width: 767px) {
      body.shop.single .slider-nav .slide {
        height: 58px; } }
    body.shop.single .slider-nav .slide img {
      margin: 0 !important; }
  body.shop.single .slider-nav .slick-slide {
    margin: 0 calc(5px/2); }
  body.shop.single .slider-nav .slick-list {
    margin: 0 calc(-5px/2); }

body.shop.single .post-content {
  padding: 0 50px; }
  @media only screen and (max-width: 767px) {
    body.shop.single .post-content {
      padding: 0; } }

body.shop.single .btn.link-main {
  margin: 0 auto 220px;
  height: 35px;
  width: 250px; }
  @media only screen and (max-width: 767px) {
    body.shop.single .btn.link-main {
      margin: 0 auto 120px; } }

body.shop.single .details-wrap {
  margin-top: 50px; }
  @media only screen and (max-width: 767px) {
    body.shop.single .details-wrap {
      margin-top: 35px; } }

body.shop .mv-side {
  background-image: url("../images/shop/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.shop .mv-side {
      background-image: url("../images/shop/mv_sp.jpg"); } }
  body.shop .mv-side .reservation-btn {
    display: block; }

body.shop .article-list {
  margin: 120px auto; }
  @media only screen and (max-width: 767px) {
    body.shop .article-list {
      margin: 70px auto; } }
  body.shop .article-list li {
    margin-bottom: 80px;
    /* IE11  */ }
    @media only screen and (min-width: 768px) {
      body.shop .article-list li {
        cursor: pointer;
        -webkit-transition: 0.3s;
        -moz-transition: 0.3s;
        -o-transition: 0.3s;
        transition: 0.3s; }
        body.shop .article-list li:hover {
          opacity: .7; } }
    @media only screen and (max-width: 767px) {
      body.shop .article-list li {
        margin-bottom: 50px; } }
    body.shop .article-list li:last-child {
      margin-bottom: 0; }
    @media only screen and (max-width: 767px) {
      body.shop .article-list li .upper {
        margin-bottom: 15px; } }
    body.shop .article-list li .upper .imager {
      position: relative;
      height: 225px;
      width: 300px; }
      @media only screen and (max-width: 767px) {
        body.shop .article-list li .upper .imager {
          height: 105px;
          width: 140px; } }
      body.shop .article-list li .upper .imager:before {
        border: 6px solid rgba(255, 255, 255, 0.3);
        content: "";
        margin: 0 auto;
        position: absolute;
        left: 0;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        height: calc(100% - 12px);
        width: calc(100% - 12px); }
        @media only screen and (max-width: 767px) {
          body.shop .article-list li .upper .imager:before {
            border: 5px solid rgba(255, 255, 255, 0.3);
            height: calc(100% - 10px);
            width: calc(100% - 10px); } }
    body.shop .article-list li .upper .text-box {
      padding-top: 10px;
      padding-left: 48px;
      width: calc(100% - 300px);
      /* IE11  */
      /* IE11  */ }
      @media only screen and (max-width: 767px) {
        body.shop .article-list li .upper .text-box {
          padding-top: 0;
          padding-left: 20px;
          width: calc(100% - 140px); } }
      body.shop .article-list li .upper .text-box .category {
        border-radius: 5px;
        background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
        background-size: 200% auto;
        transition: 0.5s;
        color: #0095a1;
        font-size: 13px;
        font-size: 1.3rem;
        font-weight: 500;
        letter-spacing: 0.05em;
        padding-top: 5px;
        margin-bottom: 18px;
        text-align: center;
        height: 25px;
        width: 140px; }
        body.shop .article-list li .upper .text-box .categorya:hover {
          background-position: right center; }
        @media only screen and (max-width: 767px) {
          body.shop .article-list li .upper .text-box .category {
            font-size: 10px;
            font-size: 1rem;
            margin-bottom: 15px;
            padding-top: 3px;
            height: 17px;
            width: 90px; } }
      body.shop .article-list li .upper .text-box _:lang(x)::-ms-backdrop, body.shop .article-list li .upper .text-box .category {
        padding-top: 8px; }
      body.shop .article-list li .upper .text-box .article-ttl {
        font-size: 24px;
        font-size: 2.4rem;
        margin-bottom: 27px;
        padding-bottom: 33px;
        position: relative;
        font-weight: 500;
        letter-spacing: 0.05em; }
        @media only screen and (max-width: 767px) {
          body.shop .article-list li .upper .text-box .article-ttl {
            font-size: 17px;
            font-size: 1.7rem;
            margin-bottom: 0;
            padding-bottom: 20px; }
            body.shop .article-list li .upper .text-box .article-ttl h3 {
              line-height: 1.3; } }
        body.shop .article-list li .upper .text-box .article-ttl:before {
          background-image: url("../images/common/ttl-01_deco.png");
          background-size: 22px 4px;
          content: "";
          position: absolute;
          bottom: 0;
          left: 0;
          height: 4px;
          width: 22px; }
          @media only screen and (max-width: 767px) {
            body.shop .article-list li .upper .text-box .article-ttl:before {
              background-size: 18px 3px;
              height: 3px;
              width: 18px; } }
      body.shop .article-list li .upper .text-box _:lang(x)::-ms-backdrop, body.shop .article-list li .upper .text-box .article-ttl {
        padding-top: 8px; }
      @media only screen and (min-width: 768px) {
        @supports (-webkit-line-clamp: 1) {
          body.shop .article-list li .upper .text-box h3 {
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-line-clamp: 1;
            -webkit-box-orient: vertical; } } }
    body.shop .article-list li .article-text {
      font-size: 14px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      line-height: 1.85; }
      @media only screen and (max-width: 767px) {
        body.shop .article-list li .article-text {
          line-height: 1.71; } }
    body.shop .article-list li _:lang(x)::-ms-backdrop, body.shop .article-list li .article-text {
      height: 5.7em;
      overflow: hidden; }
    @supports (-webkit-line-clamp: 3) {
      body.shop .article-list li .article-text {
        overflow: hidden;
        text-overflow: ellipsis;
        display: -webkit-box;
        -webkit-line-clamp: 3;
        -webkit-box-orient: vertical; } }
    @media only screen and (max-width: 767px) {
      @supports (-webkit-line-clamp: 4) {
        body.shop .article-list li .article-text {
          overflow: hidden;
          text-overflow: ellipsis;
          display: -webkit-box;
          -webkit-line-clamp: 4;
          -webkit-box-orient: vertical; } } }
    body.shop .article-list li .btn.btn-white {
      height: 45px;
      max-width: none;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.shop .article-list li .btn.btn-white {
          height: 40px;
          width: 245px; } }
      body.shop .article-list li .btn.btn-white:before {
        border-left: 1px solid #1c4e6a;
        border-bottom: 1px solid #1c4e6a;
        content: "";
        display: inline-block;
        margin: 0 auto;
        position: absolute;
        right: 30px;
        top: 50%;
        transform: translateY(-50%) rotate(-135deg);
        height: 5px;
        width: 5px; }
        @media only screen and (max-width: 767px) {
          body.shop .article-list li .btn.btn-white:before {
            right: 15px; } }

body.shop .details-wrap {
  background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
  background-size: 200% auto;
  transition: 0.5s;
  border-radius: 5px;
  margin: 35px auto 20px;
  padding: 40px 50px;
  position: relative; }
  body.shop .details-wrapa:hover {
    background-position: right center; }
  body.shop .details-wrap:before {
    background-image: url("../images/common/bg-strips.png");
    background-size: 16px;
    background-repeat: repeat;
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%; }
    @media only screen and (max-width: 767px) {
      body.shop .details-wrap:before {
        background-size: 8px; } }
  @media only screen and (max-width: 767px) {
    body.shop .details-wrap {
      margin: 15px auto 20px;
      padding: 15px; } }
  body.shop .details-wrap .details-name {
    margin-bottom: 10px;
    position: relative;
    width: 100%;
    z-index: 2; }
    body.shop .details-wrap .details-name:last-child {
      margin-bottom: 0; }
    body.shop .details-wrap .details-name:before {
      background-color: #d9e7ef;
      content: "";
      margin: 0 auto;
      position: absolute;
      left: 146px;
      top: 50%;
      transform: translateY(-50%);
      height: calc(100% - 18px);
      width: 1px; }
      @media only screen and (max-width: 767px) {
        body.shop .details-wrap .details-name:before {
          display: none; } }
    body.shop .details-wrap .details-name tr th {
      background-color: white;
      border-top-left-radius: 5px;
      border-bottom-left-radius: 5px;
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: 0.05em;
      font-weight: bold;
      padding: 14px 0 14px 40px;
      position: relative;
      text-align: left;
      height: auto;
      width: 146px; }
      @media only screen and (max-width: 767px) {
        body.shop .details-wrap .details-name tr th {
          display: block;
          font-size: 14px;
          font-size: 1.4rem;
          padding: 10px 20px 10px;
          text-align: left;
          height: auto;
          width: 100%; }
          body.shop .details-wrap .details-name tr th:before {
            background-color: #d9e7ef;
            content: "";
            margin: 0 auto;
            position: absolute;
            left: 0;
            right: 0;
            bottom: 0;
            height: 1px;
            width: calc(100% - 40px); } }
    body.shop .details-wrap .details-name tr td {
      background-color: white;
      border-top-right-radius: 5px;
      border-bottom-right-radius: 5px;
      padding: 14px 40px 14px;
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.62;
      letter-spacing: 0.05em; }
      @media only screen and (max-width: 767px) {
        body.shop .details-wrap .details-name tr td {
          display: block;
          font-size: 14px;
          font-size: 1.4rem;
          text-align: left;
          padding: 10px 20px 14px;
          height: auto; } }
      body.shop .details-wrap .details-name tr td p {
        padding-top: 0;
        font-size: 16px;
        font-size: 1.6rem; }
        @media only screen and (max-width: 767px) {
          body.shop .details-wrap .details-name tr td p {
            font-size: 14px;
            font-size: 1.4rem; } }
      body.shop .details-wrap .details-name tr td a {
        color: #1c4e6a;
        padding-bottom: 0;
        border: none; }

body.shop .page-banner {
  display: block;
  margin-bottom: 220px; }
  @media only screen and (min-width: 768px) {
    body.shop .page-banner {
      cursor: pointer;
      -webkit-transition: 0.3s;
      -moz-transition: 0.3s;
      -o-transition: 0.3s;
      transition: 0.3s; }
      body.shop .page-banner:hover {
        opacity: .7; } }
  @media only screen and (max-width: 767px) {
    body.shop .page-banner {
      margin-bottom: 120px; } }

body.sitemap .mv-side {
  background-image: url("../images/sitemap/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.sitemap .mv-side {
      background-image: url("../images/sitemap/mv_sp.jpg"); } }

body.sitemap #content {
  padding: 120px 0 220px; }
  @media only screen and (max-width: 767px) {
    body.sitemap #content {
      padding: 70px 0 120px; } }
  @media only screen and (max-width: 767px) {
    body.sitemap #content .inner {
      padding: 0 25px; } }
  body.sitemap #content .inner .site-map-row {
    border-top: 1px solid #d9e7ef;
    padding: 32px 20px 16px; }
    @media only screen and (max-width: 767px) {
      body.sitemap #content .inner .site-map-row {
        padding: 18px 15px 5px; } }
    @media only screen and (min-width: 768px) {
      body.sitemap #content .inner .site-map-row:first-of-type {
        padding: 39px 20px 14px; } }
    @media only screen and (max-width: 767px) {
      body.sitemap #content .inner .site-map-row:first-of-type {
        padding: 22px 20px 4px; } }
    body.sitemap #content .inner .site-map-row:last-of-type {
      border-bottom: 1px solid #d9e7ef; }
      @media only screen and (min-width: 768px) {
        body.sitemap #content .inner .site-map-row:last-of-type {
          padding: 40px 20px 17px; } }
    body.sitemap #content .inner .site-map-row .site-map-ttl {
      font-size: 14px;
      font-size: 1.4rem;
      font-weight: bold;
      margin-bottom: 16px; }
      @media only screen and (max-width: 767px) {
        body.sitemap #content .inner .site-map-row .site-map-ttl {
          margin-bottom: 13px; } }
    body.sitemap #content .inner .site-map-row .site-map-list {
      -webkit-justify-content: flex-start;
      justify-content: flex-start; }
      @media only screen and (max-width: 767px) {
        body.sitemap #content .inner .site-map-row .site-map-list {
          -webkit-flex-direction: column;
          flex-direction: column; } }
      @media only screen and (min-width: 768px) {
        body.sitemap #content .inner .site-map-row .site-map-list li:nth-child(4n+1) {
          width: 31.6%; }
        body.sitemap #content .inner .site-map-row .site-map-list li:nth-child(4n+2) {
          width: 20.3%; }
        body.sitemap #content .inner .site-map-row .site-map-list li:nth-child(4n+3) {
          width: 30%; }
        body.sitemap #content .inner .site-map-row .site-map-list li:nth-child(4n+4) {
          width: 16%; }
        body.sitemap #content .inner .site-map-row .site-map-list li.long {
          white-space: nowrap; } }
      body.sitemap #content .inner .site-map-row .site-map-list.sub a:before {
        background: #1a639d;
        border: none;
        transform: translateY(-50%);
        height: 1px;
        width: 6px; }
        @media only screen and (max-width: 767px) {
          body.sitemap #content .inner .site-map-row .site-map-list.sub a:before {
            width: 5px; } }
      body.sitemap #content .inner .site-map-row .site-map-list.sub a _:lang(x)::-ms-backdrop, body.sitemap #content .inner .site-map-row .site-map-list.sub a:before {
        top: 30%;
        transform: translateY(-50%); }
    body.sitemap #content .inner .site-map-row a {
      display: block;
      font-size: 14px;
      font-size: 1.4rem;
      margin-bottom: 24px;
      padding-left: 14px;
      position: relative;
      /* IE11  */ }
      @media only screen and (min-width: 768px) {
        body.sitemap #content .inner .site-map-row a {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.sitemap #content .inner .site-map-row a:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.sitemap #content .inner .site-map-row a {
          margin-bottom: 19px;
          padding-left: 11px; } }
      @media screen and (device-aspect-ratio: 40 / 71) {
        body.sitemap #content .inner .site-map-row a {
          line-height: 1.3; } }
      body.sitemap #content .inner .site-map-row a:before {
        border-left: 1px solid #1c4e6a;
        border-bottom: 1px solid #1c4e6a;
        content: "";
        display: inline-block;
        margin: 0 auto;
        position: absolute;
        left: -1px;
        top: 55%;
        transform: translateY(-50%) rotate(-135deg);
        height: 5px;
        width: 5px; }
      body.sitemap #content .inner .site-map-row a _:lang(x)::-ms-backdrop, body.sitemap #content .inner .site-map-row a:before {
        transform: translateY(-97%) rotate(-135deg); }
      body.sitemap #content .inner .site-map-row a _:lang(x)::-ms-backdrop, body.sitemap #content .inner .site-map-row a .ie-fix {
        position: relative;
        top: -4px; }

body.study.single section#content {
  padding: 120px 0 220px; }
  @media only screen and (max-width: 767px) {
    body.study.single section#content {
      padding: 70px 0 120px; } }
  body.study.single section#content article {
    padding-top: 0;
    padding-bottom: 0; }
  body.study.single section#content .article-content {
    width: calc(100% - 200px); }
    @media only screen and (max-width: 767px) {
      body.study.single section#content .article-content {
        width: 100%; } }

@media only screen and (max-width: 767px) {
  body.study.single .article-title {
    margin-top: 0 !important; } }

body.study.single .date {
  color: #0095a1;
  font-size: 13px;
  font-size: 1.3rem;
  font-family: "Oswald", sans-serif;
  letter-spacing: 0.05em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    body.study.single .date {
      font-size: 12px;
      font-size: 1.2rem; } }

body.study.single .cms-sidebar {
  width: 200px; }
  @media only screen and (max-width: 767px) {
    body.study.single .cms-sidebar {
      margin-top: 70px;
      width: 100%; } }
  body.study.single .cms-sidebar .cms-sidebar-ttl {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    background-image: -owg-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -webkit-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -moz-linear-gradient(to right, #005ca1, #0095a1);
    background-image: -o-linear-gradient(to right, #005ca1, #0095a1);
    background-image: linear-gradient(to right, #005ca1, #0095a1);
    color: white;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    padding-top: 11px;
    position: relative;
    height: 40px;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      body.study.single .cms-sidebar .cms-sidebar-ttl {
        border-top-left-radius: 3px;
        border-top-right-radius: 3px; }
        body.study.single .cms-sidebar .cms-sidebar-ttl:before {
          border-left: 1px solid white;
          content: "";
          display: inline-block;
          margin: 0 auto;
          position: absolute;
          top: 18px;
          border-bottom: 11px;
          right: 25px;
          transform: rotate(-45deg);
          height: 5px;
          width: 5px;
          border-bottom: 1px solid white; }
        body.study.single .cms-sidebar .cms-sidebar-ttl.is-active:before {
          transform: rotate(135deg); } }
  body.study.single .cms-sidebar .side-element {
    background-color: white;
    border: 1px solid #d9e7ef;
    border-top: none;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    padding: 28px 30px 18px; }
    @media only screen and (max-width: 767px) {
      body.study.single .cms-sidebar .side-element {
        display: none;
        padding: 25px 25px 13px; } }
    body.study.single .cms-sidebar .side-element .js-toggle-content {
      display: none; }
    body.study.single .cms-sidebar .side-element .js-toggle-menu-01, body.study.single .cms-sidebar .side-element .js-toggle-menu-02 {
      cursor: pointer; }
    body.study.single .cms-sidebar .side-element ul.side-list:last-child {
      margin-bottom: 0; }
    body.study.single .cms-sidebar .side-element ul.side-list li.side-item {
      margin-bottom: 20px; }
      @media only screen and (max-width: 767px) {
        body.study.single .cms-sidebar .side-element ul.side-list li.side-item {
          margin-bottom: 23px; } }
      body.study.single .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl {
        border-bottom: 1px dotted #1c4e6a;
        font-size: 16px;
        font-size: 1.6rem;
        letter-spacing: 0.05;
        padding-bottom: 7px;
        position: relative; }
        @media only screen and (max-width: 767px) {
          body.study.single .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl {
            font-size: 14px;
            font-size: 1.4rem;
            padding-bottom: 10px; } }
        body.study.single .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl:before {
          border-left: 1px solid #1c4e6a;
          content: "";
          display: inline-block;
          margin: 0 auto;
          position: absolute;
          bottom: 11px;
          border-bottom: 11px;
          right: 0;
          transform: rotate(-45deg);
          height: 5px;
          width: 5px;
          border-bottom: 1px solid #1c4e6a; }
        body.study.single .cms-sidebar .side-element ul.side-list li.side-item .side-sub-element-ttl.is-active:before {
          transform: rotate(135deg) !important;
          bottom: 9px; }
      body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
        margin-top: 13px;
        -webkit-justify-content: flex-start;
        justify-content: flex-start; }
        @media only screen and (min-width: 768px) {
          body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
            display: block; } }
        @media only screen and (max-width: 767px) {
          body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list {
            margin-top: 20px; } }
        body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li {
          font-size: 14px;
          font-size: 1.4rem;
          margin-bottom: 12px; }
          @media only screen and (min-width: 768px) {
            body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:last-child {
              margin-bottom: 0; } }
          @media only screen and (max-width: 767px) {
            body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li {
              border-left: 1px solid #d9e7ef;
              font-size: 13px;
              font-size: 1.3rem;
              margin-bottom: 10px;
              padding: 1px 0;
              text-align: center;
              width: calc(100%/4); }
              body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:last-child, body.study.single .cms-sidebar .side-element ul.side-list li.side-item ul.side-sub-list li:nth-child(4n) {
                border-right: 1px solid #d9e7ef; } }

body.study .single-pagination {
  margin-top: 70px; }
  @media only screen and (max-width: 767px) {
    body.study .single-pagination {
      margin-top: 35px; } }
  body.study .single-pagination .next, body.study .single-pagination .back {
    border: 1px solid #d9e7ef; }

body.study .mv-side {
  background-image: url("../images/study/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.study .mv-side {
      background-image: url("../images/study/mv_sp.jpg"); } }
  body.study .mv-side .reservation-btn {
    display: block; }

body.study .reg-text {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2.14; }
  @media only screen and (max-width: 767px) {
    body.study .reg-text {
      line-height: 1.71; } }

body.study section#cms {
  padding-top: 117px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.study section#cms {
      padding-top: 68px; } }
  body.study section#cms .article-list {
    border-top: 1px dashed #d9e7ef;
    margin: 68px auto 50px; }
    @media only screen and (max-width: 767px) {
      body.study section#cms .article-list {
        border-top: 1px dotted #d9e7ef;
        margin: 43px auto 0; } }
    body.study section#cms .article-list li {
      background-color: white;
      border-bottom: 1px dashed #d9e7ef;
      border-radius: 5px;
      padding: 30px 0;
      position: relative;
      width: 100%; }
      @media only screen and (min-width: 768px) {
        body.study section#cms .article-list li {
          cursor: pointer;
          -webkit-transition: 0.3s;
          -moz-transition: 0.3s;
          -o-transition: 0.3s;
          transition: 0.3s; }
          body.study section#cms .article-list li:hover {
            opacity: .7; } }
      @media only screen and (max-width: 767px) {
        body.study section#cms .article-list li {
          border-bottom: 1px dotted #d9e7ef;
          padding: 20px 15px 20px 10px; } }
      body.study section#cms .article-list li:last-child {
        margin-bottom: 0; }
      body.study section#cms .article-list li a .imager {
        background-color: #ebf4f7;
        background-position: center;
        background-size: cover;
        border-radius: 50%;
        height: 110px;
        width: 110px; }
        @media only screen and (max-width: 767px) {
          body.study section#cms .article-list li a .imager {
            height: 70px;
            width: 70px; } }
      body.study section#cms .article-list li a .content {
        padding-top: 13px;
        width: calc(100% - 130px);
        /* IE11  */
        /* IE11  */ }
        @media only screen and (max-width: 767px) {
          body.study section#cms .article-list li a .content {
            padding-top: 0;
            width: calc(100% - 80px); } }
        body.study section#cms .article-list li a .content .date {
          color: #0095a1;
          font-size: 13px;
          font-size: 1.3rem;
          font-family: "Oswald", sans-serif;
          letter-spacing: 0.05em;
          margin-bottom: 16px;
          -webkit-font-smoothing: antialiased;
          -moz-osx-font-smoothing: grayscale;
          text-align: left; }
          @media only screen and (max-width: 767px) {
            body.study section#cms .article-list li a .content .date {
              font-size: 12px;
              font-size: 1.2rem;
              margin-top: 3px;
              margin-bottom: 8px; } }
        body.study section#cms .article-list li a .content .article-ttl {
          font-size: 18px;
          font-size: 1.8rem;
          letter-spacing: 0.05em;
          text-align: left; }
          @media only screen and (min-width: 768px) {
            body.study section#cms .article-list li a .content .article-ttl {
              height: 1.1em;
              line-height: 1.2; } }
          @media only screen and (max-width: 767px) {
            body.study section#cms .article-list li a .content .article-ttl {
              font-size: 13px;
              font-size: 1.3rem;
              line-height: 1.66; } }
        body.study section#cms .article-list li a .content _:lang(x)::-ms-backdrop,
        body.study section#cms .article-list li a .content .article-ttl {
          overflow: hidden;
          padding-top: 3px;
          height: 1.1em; }
        @supports (-webkit-line-clamp: 1) {
          body.study section#cms .article-list li a .content .article-ttl {
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-line-clamp: 1;
            -webkit-box-orient: vertical; } }
        @media only screen and (max-width: 767px) {
          @supports (-webkit-line-clamp: 2) {
            body.study section#cms .article-list li a .content .article-ttl {
              overflow: hidden;
              text-overflow: ellipsis;
              display: -webkit-box;
              -webkit-line-clamp: 2;
              -webkit-box-orient: vertical; } } }
        body.study section#cms .article-list li a .content .article-prev {
          font-size: 14px;
          font-size: 1.4rem;
          margin-top: 7px;
          text-align: left; }
        body.study section#cms .article-list li a .content _:lang(x)::-ms-backdrop,
        body.study section#cms .article-list li a .content .article-prev {
          overflow: hidden;
          height: 1.5em; }
        @supports (-webkit-line-clamp: 1) {
          body.study section#cms .article-list li a .content .article-prev {
            overflow: hidden;
            text-overflow: ellipsis;
            display: -webkit-box;
            -webkit-line-clamp: 1;
            -webkit-box-orient: vertical; } }

body.study section.regular-content {
  text-align: center; }
  body.study section.regular-content .ttl-01 {
    margin-bottom: 68px; }
    @media only screen and (max-width: 767px) {
      body.study section.regular-content .ttl-01 {
        margin-bottom: 42px; } }
  body.study section.regular-content.sec1 {
    padding: 150px 0 110px; }
    @media only screen and (max-width: 767px) {
      body.study section.regular-content.sec1 {
        padding: 80px 0 67px; } }
    body.study section.regular-content.sec1 img {
      margin: 0 auto 54px; }
      @media only screen and (max-width: 767px) {
        body.study section.regular-content.sec1 img {
          margin: 0 auto 23px; } }
  body.study section.regular-content.sec2 {
    padding: 120px 0 0; }
    @media only screen and (max-width: 767px) {
      body.study section.regular-content.sec2 {
        padding: 70px 0 0; } }
    body.study section.regular-content.sec2 img {
      margin: 0 auto 32px; }
      @media only screen and (max-width: 767px) {
        body.study section.regular-content.sec2 img {
          margin: 0 auto 23px; } }
  body.study section.regular-content.sec3 {
    padding: 140px 0 56px; }
    @media only screen and (max-width: 767px) {
      body.study section.regular-content.sec3 {
        padding: 70px 0 38px; } }
    body.study section.regular-content.sec3 img {
      margin: 40px auto 33px; }
      @media only screen and (max-width: 767px) {
        body.study section.regular-content.sec3 img {
          margin: 30px auto 23px; } }

body.study .exchange-ttl {
  border-bottom: 1px dashed #0095a1;
  color: #0095a1;
  font-size: 20px;
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-bottom: 14px;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    body.study .exchange-ttl {
      border-bottom: 1px dotted #0095a1;
      font-size: 17px;
      font-size: 1.7rem;
      line-height: 1.5;
      padding-bottom: 9px; } }

body.study section#exchange {
  background: #f7fbff;
  background: -webkit-linear-gradient(left, #f7fbff 0%, #eefafa 100%);
  background: -o-linear-gradient(left, #f7fbff 0%, #eefafa 100%);
  background: linear-gradient(to right, #f7fbff 0%, #eefafa 100%);
  padding: 119px 0 120px;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    body.study section#exchange {
      padding: 64px 0 70px; } }
  body.study section#exchange .ttl-01 {
    margin-bottom: 60px; }
    @media only screen and (max-width: 767px) {
      body.study section#exchange .ttl-01 {
        margin-bottom: 41px; } }
  body.study section#exchange ul.exchange-list li.exchange-item {
    background-color: white;
    margin-bottom: 30px;
    padding: 48px 60px 50px; }
    @media only screen and (max-width: 767px) {
      body.study section#exchange ul.exchange-list li.exchange-item {
        margin-bottom: 25px;
        padding: 34px 25px 35px; } }
    body.study section#exchange ul.exchange-list li.exchange-item:first-child {
      margin-top: 60px; }
      @media only screen and (max-width: 767px) {
        body.study section#exchange ul.exchange-list li.exchange-item:first-child {
          margin-top: 37px; } }
    body.study section#exchange ul.exchange-list li.exchange-item:last-child {
      margin-bottom: 0; }
    body.study section#exchange ul.exchange-list li.exchange-item .upper {
      margin-top: 40px; }
      @media only screen and (max-width: 767px) {
        body.study section#exchange ul.exchange-list li.exchange-item .upper {
          margin-top: 30px; } }
      body.study section#exchange ul.exchange-list li.exchange-item .upper figure {
        width: 240px; }
        @media only screen and (max-width: 767px) {
          body.study section#exchange ul.exchange-list li.exchange-item .upper figure {
            margin-bottom: 20px;
            width: 100%; } }
      body.study section#exchange ul.exchange-list li.exchange-item .upper.without-logo .reg-text {
        width: 100%;
        padding-left: 0; }
      body.study section#exchange ul.exchange-list li.exchange-item .upper .reg-text {
        margin-top: -6px;
        padding-left: 40px;
        text-align: left;
        width: calc(100% - 240px); }
        @media only screen and (max-width: 767px) {
          body.study section#exchange ul.exchange-list li.exchange-item .upper .reg-text {
            padding-left: 0;
            text-align: justify;
            width: 100%; } }
    body.study section#exchange ul.exchange-list li.exchange-item .green-box {
      background: #f7fbff;
      background: -webkit-linear-gradient(left, #f7fbff 0%, #eefafa 100%);
      background: -o-linear-gradient(left, #f7fbff 0%, #eefafa 100%);
      background: linear-gradient(to right, #f7fbff 0%, #eefafa 100%);
      margin-top: 40px;
      padding: 40px; }
      @media only screen and (max-width: 767px) {
        body.study section#exchange ul.exchange-list li.exchange-item .green-box {
          margin-top: 26px;
          padding: 22px 20px; } }
      body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list {
        -webkit-justify-content: flex-start;
        justify-content: flex-start; }
        body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li {
          font-size: 15px;
          font-size: 1.5rem;
          padding-left: 14px;
          position: relative;
          letter-spacing: 0.05em;
          text-align: left;
          /* IE11  */ }
          @media only screen and (max-width: 767px) {
            body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li {
              font-size: 14px;
              font-size: 1.4rem;
              line-height: 1.71;
              margin-bottom: 10px;
              padding-left: 13px; }
              body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:last-child {
                margin-bottom: 0; } }
          body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:nth-child(1), body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:nth-child(3) {
            width: 50%; }
            @media only screen and (max-width: 767px) {
              body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:nth-child(1), body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:nth-child(3) {
                width: 100%; } }
          @media only screen and (min-width: 768px) {
            body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:nth-child(1), body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:nth-child(2) {
              margin-bottom: 21px; } }
          body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:before {
            background-color: #1c4e6a;
            border-radius: 50%;
            content: "";
            position: absolute;
            left: 0;
            top: 4px;
            height: 6px;
            width: 6px; }
            @media only screen and (max-width: 767px) {
              body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:before {
                top: 9px;
                height: 4px;
                width: 4px; } }
          body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li _:lang(x)::-ms-backdrop, body.study section#exchange ul.exchange-list li.exchange-item .green-box .green-box-list li:before {
            top: 2px; }

body.study section#activity {
  padding-bottom: 220px; }
  @media only screen and (max-width: 767px) {
    body.study section#activity {
      padding: 0 25px 120px; } }
  body.study section#activity .inner {
    background: #f1f9ff;
    background: -webkit-linear-gradient(left, #f1f9ff 0%, #eefafa 100%);
    background: -o-linear-gradient(left, #f1f9ff 0%, #eefafa 100%);
    background: linear-gradient(to right, #f1f9ff 0%, #eefafa 100%);
    border-radius: 5px;
    padding: 46px 60px 40px;
    position: relative;
    text-align: center;
    max-width: 1000px; }
    @media only screen and (max-width: 767px) {
      body.study section#activity .inner {
        padding: 34px 25px 27px; } }
    body.study section#activity .inner .activity-ttl {
      color: #0095a1;
      font-size: 18px;
      font-size: 1.8rem;
      letter-spacing: 0.1em;
      margin: 0 auto;
      position: absolute;
      left: 0;
      right: 0;
      top: -9px; }
      @media only screen and (max-width: 767px) {
        body.study section#activity .inner .activity-ttl {
          font-size: 15px;
          font-size: 1.5rem; } }
    body.study section#activity .inner ul.list li {
      font-size: 15px;
      font-size: 1.5rem;
      letter-spacing: 0.05em;
      text-align: left;
      margin-bottom: 18px;
      padding-left: 16px;
      position: relative; }
      @media only screen and (max-width: 767px) {
        body.study section#activity .inner ul.list li {
          font-size: 14px;
          font-size: 1.4rem;
          line-height: 1.71;
          margin-bottom: 11px;
          padding-left: 10px; } }
      body.study section#activity .inner ul.list li:last-child {
        margin-bottom: 0; }
      body.study section#activity .inner ul.list li:before {
        background-color: #1c4e6a;
        border-radius: 50%;
        content: "";
        position: absolute;
        left: 0;
        top: 4px;
        height: 6px;
        width: 6px; }
        @media only screen and (max-width: 767px) {
          body.study section#activity .inner ul.list li:before {
            top: 9px;
            height: 4px;
            width: 4px; } }
    body.study section#activity .inner .table {
      border: 1px solid #d9e7ef;
      border-radius: 5px;
      margin: 24px auto 27px;
      overflow: hidden; }
      @media only screen and (max-width: 767px) {
        body.study section#activity .inner .table {
          margin: 14px auto 18px; } }
    body.study section#activity .inner .table-ttl {
      background: #f1f9ff;
      background: -webkit-linear-gradient(left, #f1f9ff 0%, #e2f7f7 100%);
      background: -o-linear-gradient(left, #f1f9ff 0%, #e2f7f7 100%);
      background: linear-gradient(to right, #f1f9ff 0%, #e2f7f7 100%);
      color: #0095a1;
      font-size: 16px;
      font-size: 1.6rem;
      letter-spacing: 0.05em;
      margin: 0 auto;
      padding: 11px 0 13px;
      width: 100%; }
      @media only screen and (max-width: 767px) {
        body.study section#activity .inner .table-ttl {
          padding: 8px 0 9px;
          font-size: 14px;
          font-size: 1.4rem; } }
    body.study section#activity .inner .duo-table {
      background-color: white;
      padding: 28px 48px;
      -webkit-justify-content: space-between;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        body.study section#activity .inner .duo-table {
          padding: 20px 15px 24px; } }
    body.study section#activity .inner table {
      width: calc(50% - 10px); }
      @media only screen and (max-width: 767px) {
        body.study section#activity .inner table {
          table-layout: fixed;
          width: 100%; } }
      body.study section#activity .inner table tr {
        border-bottom: 1px dashed #d9e7ef; }
        @media only screen and (max-width: 767px) {
          body.study section#activity .inner table tr {
            border-bottom: 1px dotted #d9e7ef; } }
        body.study section#activity .inner table tr:first-child th,
        body.study section#activity .inner table tr:first-child td {
          padding-top: 0; }
        body.study section#activity .inner table tr th {
          font-size: 14px;
          font-size: 1.4rem;
          padding: 21px 0 20px;
          padding-right: 10px; }
          @media only screen and (max-width: 767px) {
            body.study section#activity .inner table tr th {
              padding: 18px 0 15px;
              padding-left: 8px;
              vertical-align: text-top;
              width: 72px; }
              body.study section#activity .inner table tr th.long {
                white-space: nowrap; } }
        body.study section#activity .inner table tr td {
          font-size: 14px;
          font-size: 1.4rem;
          padding: 21px 0 20px; }
          @media only screen and (max-width: 767px) {
            body.study section#activity .inner table tr td {
              padding: 10px 0 10px;
              vertical-align: text-top;
              line-height: 1.71; }
              body.study section#activity .inner table tr td.long {
                padding-left: 35px; } }
          body.study section#activity .inner table tr td .left-pos01 {
            margin-left: -70px; }
          body.study section#activity .inner table tr td .left-pos02 {
            margin-left: -35px; }

body.study .pagination,
body.study .wp-pagenavi {
  margin: 40px auto 70px; }
  @media only screen and (max-width: 767px) {
    body.study .pagination,
    body.study .wp-pagenavi {
      margin: 27px auto 45px; } }
  body.study .pagination a,
  body.study .pagination span,
  body.study .wp-pagenavi a,
  body.study .wp-pagenavi span {
    border: 1px solid #d9e7ef;
    padding-top: 6px;
    top: 0px; }
    body.study .pagination a.last, body.study .pagination a.first,
    body.study .pagination span.last,
    body.study .pagination span.first,
    body.study .wp-pagenavi a.last,
    body.study .wp-pagenavi a.first,
    body.study .wp-pagenavi span.last,
    body.study .wp-pagenavi span.first {
      top: 10px; }
  body.study .pagination a.current,
  body.study .pagination span.current,
  body.study .wp-pagenavi a.current,
  body.study .wp-pagenavi span.current {
    border: none;
    padding-top: 7px;
    top: 0px; }

body.supporter .mv-side {
  background-image: url("../images/supporter/mv.jpg"); }
  @media only screen and (max-width: 767px) {
    body.supporter .mv-side {
      background-image: url("../images/supporter/mv_sp.jpg"); } }

body.supporter .supporter-heading {
  padding: 110px 0 0; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-heading {
      padding: 60px 0 0; } }
  body.supporter .supporter-heading .contact-box02 {
    margin-top: 40px; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-heading .contact-box02 {
        margin-top: 25px; } }

body.supporter section {
  text-align: center; }
  body.supporter section:nth-of-type(1) {
    padding: 150px 0 120px; }
    @media only screen and (max-width: 767px) {
      body.supporter section:nth-of-type(1) {
        padding: 80px 0 70px; } }
  body.supporter section:nth-of-type(2) {
    padding: 120px 0 210px;
    background-image: -owg-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -webkit-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -moz-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: -o-linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-image: linear-gradient(to right, #f1faff 0%, #e3f7f6 51%, #f1faff 100%);
    background-size: 200% auto;
    transition: 0.5s; }
    body.supporter section:nth-of-type(2)a:hover {
      background-position: right center; }
    @media only screen and (max-width: 767px) {
      body.supporter section:nth-of-type(2) {
        padding: 65px 0 115px; } }
  body.supporter section .ttl-01 {
    margin-bottom: 70px; }
    @media only screen and (max-width: 767px) {
      body.supporter section .ttl-01 {
        margin-bottom: 40px; } }

body.supporter .supporter-table dl {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media only screen and (min-width: 768px) {
    body.supporter .supporter-table dl:last-of-type dt {
      border-bottom: none; }
    body.supporter .supporter-table dl:last-of-type dd {
      border-bottom: #d9e7ef solid 1px; } }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table dl:last-child dd {
      border-bottom: #d9e7ef solid 1px; } }
  body.supporter .supporter-table dl dt {
    color: #0095a1;
    font-weight: bold;
    font-size: 16px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 2em;
    background-color: rgba(0, 149, 161, 0.1);
    width: 165px;
    text-align: left;
    padding: 22px 0 0 49px;
    border-bottom: #FFF solid 1px; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table dl dt {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: normal;
        width: 100%;
        border-bottom: none;
        min-height: 40px;
        padding: 10px 0 0 15px; } }
  body.supporter .supporter-table dl dd {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2em;
    letter-spacing: 0.05em;
    padding: 23px 0 25px 60px;
    width: calc(100% - 165px);
    text-align: left;
    border-top: #d9e7ef solid 1px; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table dl dd {
        width: 100%;
        border-top: none;
        line-height: 1.714285714em;
        padding: 13px 5px 16px 15px; } }
    body.supporter .supporter-table dl dd ol {
      counter-reset: item;
      list-style-type: none;
      padding-left: 0;
      max-width: 720px; }
      @media only screen and (max-width: 767px) {
        body.supporter .supporter-table dl dd ol {
          max-width: none;
          padding: 5px 0 5px; } }
      body.supporter .supporter-table dl dd ol > li {
        position: relative;
        padding-left: 20px; }
        @media only screen and (max-width: 767px) {
          body.supporter .supporter-table dl dd ol > li {
            padding-left: 15px;
            line-height: 1.714285714em; } }
        body.supporter .supporter-table dl dd ol > li:before {
          counter-increment: item;
          content: counter(item) ".";
          position: absolute;
          left: 0; }
        body.supporter .supporter-table dl dd ol > li:not(:last-child) {
          padding-bottom: 22px;
          margin-bottom: 22px;
          border-bottom: #d9e7ef dotted 1px; }
          @media only screen and (max-width: 767px) {
            body.supporter .supporter-table dl dd ol > li:not(:last-child) {
              padding-bottom: 18px;
              margin-bottom: 19px; } }
    body.supporter .supporter-table dl dd ul {
      margin: 21px 0 20px;
      padding: 5px 0 5px 38px;
      width: 100%;
      max-width: 700px;
      height: 70px;
      border-radius: 5px;
      background: linear-gradient(90deg, #f1faff 0%, #f1faff 0.71%, #eaf9fb 51.35%, #e3f7f6 100%);
      display: flex;
      flex-wrap: wrap;
      align-items: center; }
      @media only screen and (max-width: 767px) {
        body.supporter .supporter-table dl dd ul {
          display: block;
          height: auto;
          margin: 16px 0 18px;
          padding: 19px 0 24px 29px; } }
      body.supporter .supporter-table dl dd ul > li {
        position: relative;
        padding-left: 16px;
        margin-right: 30px;
        letter-spacing: 0.05em;
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          body.supporter .supporter-table dl dd ul > li {
            font-size: 14px;
            font-size: 1.4rem;
            padding-left: 10px;
            margin-top: 5px; } }
        body.supporter .supporter-table dl dd ul > li:last-child {
          margin-right: 0; }
        body.supporter .supporter-table dl dd ul > li:before {
          content: '';
          width: 6px;
          height: 6px;
          background-color: #1c4e6a;
          border-radius: 50%;
          position: absolute;
          top: 12px;
          left: 0; }
          @media only screen and (max-width: 767px) {
            body.supporter .supporter-table dl dd ul > li:before {
              width: 4px;
              height: 4px; } }

body.supporter .supporter-table .typeB dt {
  padding-top: 29px; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table .typeB dt {
      padding-top: 9px; } }

body.supporter .supporter-table .typeB dd {
  padding: 31px 15px 43px 60px; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table .typeB dd {
      padding: 18px 15px 19px; } }
  body.supporter .supporter-table .typeB dd p {
    letter-spacing: 0.05em;
    line-height: 28px;
    font-size: 14px;
    font-size: 1.4rem; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .typeB dd p {
        line-height: 24px; } }

body.supporter .supporter-table .typeC dt {
  padding-top: 30px; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table .typeC dt {
      padding-top: 12px; } }

body.supporter .supporter-table .typeC dd {
  padding: 31px 15px 36px 60px; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table .typeC dd {
      padding: 19px 15px 26px 16px; } }
  body.supporter .supporter-table .typeC dd p {
    text-align: left;
    max-width: 700px;
    line-height: 28px; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .typeC dd p {
        line-height: 24px; } }
    body.supporter .supporter-table .typeC dd p:not(:last-child) {
      margin-bottom: 13px; }
      @media only screen and (max-width: 767px) {
        body.supporter .supporter-table .typeC dd p:not(:last-child) {
          margin-bottom: 12px; } }

body.supporter .supporter-table .txt-note {
  font-weight: normal;
  line-height: 20px;
  letter-spacing: 0.02em;
  font-size: 12px;
  font-size: 1.2rem; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table .txt-note {
      display: inline-block;
      margin-left: -4px;
      letter-spacing: 0; } }

body.supporter .supporter-table .text-1 {
  max-width: 700px;
  text-align: left; }

body.supporter .supporter-table .box-1 {
  margin-bottom: 48px; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table .box-1 {
      line-height: 1;
      margin-bottom: 19px; } }
  body.supporter .supporter-table .box-1 .txt-note {
    position: relative;
    padding-left: 17px; }
    body.supporter .supporter-table .box-1 .txt-note:before {
      content: '※';
      position: absolute;
      left: 0;
      top: 0; }
      @media only screen and (max-width: 767px) {
        body.supporter .supporter-table .box-1 .txt-note:before {
          left: 3px; } }
  body.supporter .supporter-table .box-1 .text-big {
    margin-bottom: 3px;
    letter-spacing: 0em;
    line-height: 22px;
    font-size: 15px;
    font-size: 1.5rem; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .box-1 .text-big {
        margin-bottom: 2px;
        line-height: 21px;
        font-size: 14px;
        font-size: 1.4rem; } }
  body.supporter .supporter-table .box-1 .text-small {
    letter-spacing: 0em;
    line-height: 22px;
    font-size: 12px;
    font-size: 1.2rem; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .box-1 .text-small {
        line-height: 18px;
        font-size: 11px;
        font-size: 1.1rem; } }

body.supporter .supporter-table .box-2 {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table .box-2 {
      display: block; } }
  body.supporter .supporter-table .box-2::before {
    content: '';
    position: absolute;
    top: 0;
    left: calc(50% - 17px);
    bottom: 7px;
    width: 1px;
    background: #d9e7ef; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .box-2::before {
        display: none; } }
  body.supporter .supporter-table .box-2 .col {
    width: calc(48% - 10px);
    padding-right: 20px; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .box-2 .col {
        width: 100%;
        padding-right: 0;
        border-top: solid 1px #d9e7ef;
        padding-top: 19px; }
        body.supporter .supporter-table .box-2 .col:not(:first-child) {
          margin-top: 27px; } }
  body.supporter .supporter-table .box-2 .text-big {
    margin-bottom: 27px;
    font-weight: 500;
    font-size: 18px;
    letter-spacing: 0.05em;
    line-height: 26px;
    color: #e43030;
    font-size: 18px;
    font-size: 1.8rem; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .box-2 .text-big {
        margin-bottom: 11px;
        font-size: 15px;
        font-size: 1.5rem; } }
  body.supporter .supporter-table .box-2 .text-small {
    margin-bottom: 16px;
    font-weight: normal;
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 28px;
    color: #e43030;
    font-size: 14px;
    font-size: 1.4rem; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .box-2 .text-small {
        margin-bottom: 13px;
        letter-spacing: 0em; } }
  body.supporter .supporter-table .box-2 .text-note {
    max-width: 310px; }
    @media only screen and (max-width: 767px) {
      body.supporter .supporter-table .box-2 .text-note {
        max-width: none; } }
    body.supporter .supporter-table .box-2 .text-note p {
      margin-bottom: 6px;
      padding-left: 12px;
      text-align: left;
      position: relative;
      font-weight: normal;
      font-size: 12px;
      line-height: 20px;
      color: #1c4e6a;
      letter-spacing: 0;
      font-size: 12px;
      font-size: 1.2rem; }
      @media only screen and (max-width: 767px) {
        body.supporter .supporter-table .box-2 .text-note p {
          line-height: 18px;
          font-size: 11px;
          font-size: 1.1rem; } }
      body.supporter .supporter-table .box-2 .text-note p:before {
        content: '※';
        position: absolute;
        left: 0;
        top: 0; }

body.supporter .supporter-table ~ p {
  text-align: center;
  margin: 50px 0 25px; }
  @media only screen and (max-width: 767px) {
    body.supporter .supporter-table ~ p {
      text-align: left;
      margin: 30px 0 20px; } }

body.supporter .btn {
  max-width: 450px;
  margin-bottom: 70px; }
  @media only screen and (max-width: 767px) {
    body.supporter .btn {
      max-width: 275px;
      margin: 0 auto 45px;
      height: 55px;
      line-height: 1.384615385em; } }

body.supporter .company-list__top li img.size1 {
  height: 67px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list__top li img.size1 {
      height: 67%; } }

body.supporter .company-list__top li img.size2 {
  height: 54px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list__top li img.size2 {
      height: 54%; } }

body.supporter .company-list__top li img.size3 {
  height: 25px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list__top li img.size3 {
      height: 25%; } }

body.supporter .company-list .img-box:after {
  display: none; }

body.supporter .company-list .name:after {
  display: none; }

body.supporter .company-list.company-list__top > li .img-box {
  padding-bottom: 13%; }

body.supporter .company-list.company-list__top li img.size1 {
  height: 67px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list.company-list__top li img.size1 {
      height: 50.8%; } }

body.supporter .company-list.company-list__top li img.size2 {
  height: 54px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list.company-list__top li img.size2 {
      height: 41.53%; } }

body.supporter .company-list.company-list__top li img.size3 {
  height: 66px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list.company-list__top li img.size3 {
      height: 50.76%; } }

body.supporter .company-list.reg li img.size1 {
  height: 67px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list.reg li img.size1 {
      height: 67%; } }

body.supporter .company-list.reg li img.size2 {
  height: 54px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list.reg li img.size2 {
      height: 54%; } }

body.supporter .company-list.reg li img.size3 {
  height: 25px; }
  @media only screen and (max-width: 1050px) {
    body.supporter .company-list.reg li img.size3 {
      height: 25%; } }

@media only screen and (min-width: 768px) {
  body.supporter .box-btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto 70px;
    max-width: 910px; } }

@media only screen and (min-width: 768px) {
  body.supporter .box-btn a {
    margin: 0;
    height: 90px;
    width: calc(100% - 5px);
    line-height: 1.5; } }

@media only screen and (max-width: 767px) {
  body.supporter .box-btn a {
    height: 80px; }
    body.supporter .box-btn a:not(:last-child) {
      margin-bottom: 10px; } }
