<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">body {
  font-family: "æ¸¸æ˜Žæœ", YuMincho, "Noto Serif SC", "ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ ProN W3", "Hiragino Mincho ProN", "HGæ˜ŽæœE", "HG Mincho E", "ï¼­ï¼³ ï¼°æ˜Žæœ", "MS PMincho", "ï¼­ï¼³ æ˜Žæœ", "MS Mincho", serif;
  font-family: 'Noto Serif JP', serif;
  letter-spacing: 0.05rem;
  line-height: 1.75em; }

img {
  display: block; }

a {
  color: #333;
  text-decoration: none; }

h2, h3, h4, h5 {
  font-weight: 200;
  /*
  html5doctor.com
  Reset Stylesheetv1.6.1
  Last Updated: 2010-09-17
  Author: Richard Clark - http://richclarkdesign.com
  Twitter: @rich_clark
  */ }

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

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

nav ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  /* change colours to suit your needs */ }

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
  /* change colours to suit your needs */ }

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

table {
  border-collapse: collapse;
  border-spacing: 0;
  /* change border colour to suit your needs */ }

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: center; }

li {
  list-style-type: none; }

input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0px; }

main.page_sub div.firstView {
  max-width: 1020px;
  margin: auto; }
  main.page_sub div.firstView div.title {
    padding: 56px 0px;
    display: flex;
    justify-content: center;
    align-items: center; }
    main.page_sub div.firstView div.title h2 {
      writing-mode: vertical-rl;
      font-size: 2rem;
      padding: 64px 112px;
      background-image: url(img/sightseeing/title_frame.svg);
      background-repeat: no-repeat;
      background-position: center;
      background-size: auto; }
  main.page_sub div.firstView h3 {
    font-size: 1.25rem;
    text-align: center;
    margin-bottom: 36px; }
  main.page_sub div.firstView p {
    text-align: center; }

main.foot_sub {
  padding-top: 80px; }
  main.foot_sub div.sub_firstView {
    padding: 108px 0px; }
  main.foot_sub div.sub_firstView h2 {
    text-align: center;
    font-size: 1.5rem;
    letter-spacing: 0.05rem;
    padding: 0 12px; }

@media screen and (max-width: 640px) {
  main.foot_sub div.sub_firstView {
    padding: 72px 0px; }
    main.foot_sub div.sub_firstView h2 {
      font-size: 1rem; } }

main.under_main {
  padding-top: 80px;
  overflow: hidden; }
  main.under_main div.first_view {
    width: 100%;
    background-image: url(img/meal/meal_view.jpg);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 368px;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 280px;
    position: relative; }
  main.under_main div.first_view div.text {
    position: absolute;
    padding: 0 12px; }
    main.under_main div.first_view div.text h2 {
      font-size: 2rem;
      writing-mode: vertical-rl;
      display: flex;
      justify-content: center;
      align-items: center;
      margin: auto;
      width: 260px;
      height: 260px;
      margin-top: -48px;
      background-image: url(img/meal/title_frame.svg);
      background-position: center;
      background-size: auto;
      background-repeat: no-repeat; }

@media screen and (max-width: 640px) {
  main.under_main div.first_view {
    margin-bottom: 180px;
    padding-top: calc(736/1280*100vw); }
    main.under_main div.first_view div.text {
      width: 100%;
      text-align: center; }
      main.under_main div.first_view div.text h2 {
        font-size: 1.5rem;
        margin-top: -60px;
        background-size: contain;
        padding: 0;
        width: 200px;
        height: 200px;
        display: flex;
        justify-content: center;
        align-items: center; } }

div.common_box {
  background: rgba(255, 255, 255, 0.8);
  display: flex;
  align-items: center;
  transition: all ease 1s;
  max-width: 600px;
  width: 100%;
  height: 96px; }
  div.common_box#top_sarch {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 10; }
  div.common_box#top_sarch.foreign div.wrap#search ul li a {
    width: 100%;
    display: block;
    background-position: right 16px center; }
  div.common_box#foot_search {
    max-width: 800px;
    padding: 24px 0px; }
  div.common_box#foot_search div#search.wrap {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    div.common_box#foot_search div#search.wrap div#search_489ban form {
      padding: 0px 0px 0px 16px; }
      div.common_box#foot_search div#search.wrap div#search_489ban form dl.date_489ban dd {
        align-items: center; }
        div.common_box#foot_search div#search.wrap div#search_489ban form dl.date_489ban dd input[name="date"] {
          width: 120px; }
      div.common_box#foot_search div#search.wrap div#search_489ban form button {
        margin-left: 16px; }
  div.common_box div#reserve.theme {
    padding: 36px 40px;
    border: 1px solid rgba(33, 10, 6, 0.2);
    position: relative;
    margin-left: 4px; }
  div.common_box div#reserve.theme p {
    width: 80px;
    text-align: center; }
  div.common_box div#search.wrap {
    width: 100%; }
  div.common_box div#search.wrap div#search_489ban form {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0px 16px; }
    div.common_box div#search.wrap div#search_489ban form dl.date_489ban dt {
      display: none; }
    div.common_box div#search.wrap div#search_489ban form dl.date_489ban dd {
      display: flex; }
      div.common_box div#search.wrap div#search_489ban form dl.date_489ban label {
        display: flex;
        justify-content: center;
        margin-left: 16px;
        align-items: center; }
    div.common_box div#search.wrap div#search_489ban form button {
      background-color: #210a06;
      color: #fff;
      background-image: url(img/top/search_icon.svg);
      background-repeat: no-repeat;
      background-position: right 8px center;
      background-size: auto;
      padding: 4px 32px;
      text-indent: -9999px;
      width: 104px;
      cursor: pointer; }
  div.common_box div#search.wrap ul {
    display: flex;
    justify-content: flex-end;
    padding-right: 16px;
    margin-top: 12px; }
    div.common_box div#search.wrap ul.foreign li a {
      width: 100%;
      display: block;
      background-position: right 12px center; }
    div.common_box div#search.wrap ul li a {
      padding-right: 20px;
      background-image: url(img/top/search_arrow.svg);
      background-repeat: no-repeat;
      background-position: right 4px center;
      background-size: auto;
      display: block; }
    div.common_box div#search.wrap ul li:not(:last-of-type) {
      margin-right: 20px; }

div#sp_form a {
  display: none; }

@media screen and (max-width: 1200px) {
  div#search_r-with {
    transform: translateX(638px); }
    div#search_r-with.active {
      transform: translateX(0px); } }

div#news {
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.8);
  position: absolute;
  left: 0;
  bottom: 0;
  max-width: 560px;
  width: 100%;
  padding: 16px; }
  div#news ul li a {
    color: #333;
    text-decoration: none; }
    div#news ul li dl {
      display: flex; }
    div#news ul li dl dt {
      padding: 0px 0px 0px 40px;
      background-image: url(img/top/news_icon.svg);
      background-position: center left 20px;
      background-repeat: no-repeat;
      background-size: auto; }
    div#news ul li dl dd {
      margin-left: 18px; }

@media screen and (max-width: 1280px) {
  div#top_sarch {
    display: none; } }

@media screen and (max-width: 800px) {
  div#sp_form {
    padding: 32px; }
    div#sp_form a {
      display: block;
      padding: 32px;
      font-size: 0.75rem;
      color: #333;
      background-color: #fff;
      position: fixed;
      right: 0;
      bottom: 0;
      z-index: 15;
      text-decoration: none; } }

@media screen and (max-width: 640px) {
  div.common_box div#search.wrap ul {
    padding-right: 8px;
    padding-left: 8px; }

  div.common_box div#search.wrap ul li:not(:last-of-type) {
    margin-right: 8px; }

  div.common_box div#search.wrap ul.foreign li a {
    width: auto; } }

div.br_wrap {
  height: 640px;
  width: 100%;
  background-image: url(img/footer/bottom_reserve_renew.jpg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding-bottom: 64px;
  box-sizing: border-box; }

div.br_wrap div.cover {
  background-color: rgba(0, 0, 0, 0.2);
  height: 640px;
  background-image: url(img/footer/bg_dot.svg);
  background-repeat: repeat;
  background-position: center;
  background-size: auto; }

div.br_wrap div.cover section#bottom_reserve {
  max-width: 1040px;
  margin: auto;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 0 12px; }

div.br_wrap div.cover section#bottom_reserve div.title {
  color: #fff;
  margin-bottom: 24px;
  display: flex;
  flex-direction: column;
  align-items: center; }

div.br_wrap div.cover section#bottom_reserve div.title h2 {
  font-size: 1.5rem;
  writing-mode: vertical-rl;
  padding: 72px 88px;
  background-image: url(img/footer/reserve_frame.svg);
  background-size: auto;
  background-position: center;
  background-repeat: no-repeat;
  margin: 0px auto 24px;
  letter-spacing: 0.2rem; }

div.br_wrap div.cover section#bottom_reserve div.title p {
  text-align: center; }

div.br_wrap div.cover section#bottom_reserve div.title p.avobe {
  margin-bottom: 12px; }

div.br_wrap div.cover section#bottom_reserve div.reserve_box {
  max-width: 720px;
  width: 100%;
  margin: 0 auto; }

div.br_wrap div.cover section#bottom_reserve div.bottom_list {
  display: flex;
  justify-content: flex-end;
  margin-top: 20px;
  max-width: 800px;
  width: 100%; }

div.br_wrap div.cover section#bottom_reserve div.bottom_list ul {
  display: flex; }

div.br_wrap div.cover section#bottom_reserve div.bottom_list ul li {
  margin-right: 32px; }

div.br_wrap div.cover section#bottom_reserve div.bottom_list ul li:last-of-type {
  margin-right: 0; }

div.br_wrap div.cover section#bottom_reserve div.bottom_list ul li a {
  color: #fff;
  padding-right: 24px;
  background-image: url(img/footer/link_white.svg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto;
  display: block;
  box-sizing: border-box; }

div.br_wrap div.cover section#bottom_reserve div.address {
  margin-top: 40px; }

div.br_wrap div.cover section#bottom_reserve div.address p {
  letter-spacing: 0.1rem;
  color: white; }

div.br_wrap div.cover section#bottom_reserve div.address p a {
  display: inline-block;
  font-size: 1.25rem;
  color: white;
  padding-left: 32px;
  background-image: url(img/footer/tel_icon.svg);
  background-position: left;
  background-size: auto;
  background-repeat: no-repeat;
  letter-spacing: 0.05rem;
  margin-right: 20px;
  margin-left: 16px; }

div.about_wrap {
  width: 100%;
  background-color: #fff;
  background-image: url(img/footer/about_back.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center;
  position: relative; }

div.about_wrap section#company_about {
  max-width: 1040px;
  margin: 0 auto;
  padding-bottom: 40px;
  display: flex;
  flex-direction: column; }

div.about_wrap section#company_about div.title {
  position: relative;
  top: -48px; }

div.about_wrap section#company_about div.title h2 {
  text-indent: -9999px;
  background-image: url(img/footer/romankan_icon.svg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: auto;
  padding-top: 160px; }

div.about_wrap section#company_about div.title p {
  text-align: center; }

div.about_wrap section#company_about div.address {
  margin: 16px 0px 0px;
  padding: 0 12px; }

div.about_wrap section#company_about div.address ul {
  text-align: center; }

div.about_wrap section#company_about div.address ul li {
  line-height: 2em;
  letter-spacing: 0.1rem; }

div.about_wrap section#company_about a#page_scroll {
  padding-top: 64px;
  display: inline-block;
  text-align: center;
  background-image: url(img/footer/top_scroll.svg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: auto;
  margin-top: 56px;
  color: #333;
  width: 80px;
  margin: auto;
  text-decoration: none; }

div.footer_bottom {
  border-top: 1px solid #eceaea;
  background-color: #fff; }

div.footer_bottom footer {
  display: flex;
  justify-content: space-between;
  padding: 40px 32px; }

div.footer_bottom footer ul {
  max-width: 600px;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; }

div.footer_bottom footer ul li a {
  font-size: 0.875rem;
  display: block;
  color: #333;
  text-decoration: none; }

div.footer_bottom footer small {
  font-size: 0.875rem; }

div.multilingual_ft div.cover section#bottom_reserve div.title h2 {
  writing-mode: horizontal-tb;
  height: 192px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center; }

div#top_sarch.under_fix_search.foot_shrink {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 10; }

div.multilingual_ft div.common_box div#search.wrap ul li a {
  padding-right: 16px; }

div.multilingual_ft div.common_box div#search.wrap div#search_489ban form button {
  margin-right: 16px; }

div.multilingual_ft div.common_box div#search.wrap div#search_489ban form button {
  text-indent: initial;
  background-image: url(img/top/search_icon_multi.svg);
  padding: 4px 0px;
  background-position: right 4px center; }

div.common_box.foreign div#search.wrap div#search_489ban form button {
  text-indent: initial;
  background-image: url(img/top/search_icon_multi.svg);
  padding: 4px 0px; }

@media screen and (max-width: 800px) {
  div.common_box#foot_search div#search.wrap {
    flex-direction: column; }

  div.common_box#foot_search div#search.wrap div#search_489ban {
    margin-bottom: 16px; } }

@media screen and (max-width: 768px) {
  div.br_wrap {
    height: auto;
    padding: 0px 0px 80px; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form {
    flex-direction: column;
    padding: 0px; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap {
    flex-direction: column;
    width: 100%; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap div.day_wrap {
    display: flex;
    flex-direction: column;
    align-items: center; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap div.num_wrap {
    margin-left: 0px;
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 32px; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap div.num_wrap div.num_people {
    padding-bottom: 0px;
    align-items: center; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap div.num_wrap div.num_people p {
    min-width: 72px; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap div.num_wrap div.num_room {
    margin-left: 16px;
    align-items: center; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap div.num_wrap div.num_room p {
    min-width: 84px; }

  div.br_wrap section#bottom_reserve div.reserve_box div#foot_search.wrap form input.submit {
    margin-top: 24px;
    width: 144px;
    padding: 8px 0px; }

  div.footer_bottom footer {
    padding: 40px 12px;
    flex-direction: column;
    align-items: center; }

  div.footer_bottom footer ul {
    margin-bottom: 16px; } }

@media screen and (max-width: 640px) {
  div.br_wrap div.cover section#bottom_reserve div.title {
    margin-top: 16px; }

  div.br_wrap div.cover section#bottom_reserve div.title h2 {
    font-size: 1rem;
    padding: 56px 64px;
    background-size: contain; }

  div.br_wrap div.cover section#bottom_reserve div.reserve_box div#foot_search.wrap form div.big_wrap div.day_wrap div.check p {
    min-width: 96px; }

  div.br_wrap div.cover section#bottom_reserve div.reserve_box div.bottom_list {
    justify-content: center; }

  div.br_wrap div.cover section#bottom_reserve div.reserve_box div.bottom_list ul li {
    margin-right: 16px; }

  div.br_wrap div.cover section#bottom_reserve div.reserve_box div.bottom_list ul li a {
    font-size: 0.75rem; }

  div.br_wrap div.cover section#bottom_reserve div.address {
    margin-top: 24px; }

  div.br_wrap div.cover section#bottom_reserve div.address p {
    line-height: 1.5em; }

  div.br_wrap div.cover section#bottom_reserve div.address p a {
    font-size: 0.875rem;
    background-size: 20px;
    padding-left: 24px;
    margin-left: 4px;
    margin-right: 8px; }

  div.about_wrap section#company_about div.title {
    top: -40px; }

  div.about_wrap section#company_about div.title h2 {
    background-size: 120px;
    padding-top: 120px; }

  div.about_wrap section#company_about div.address {
    margin: 0px; }

  div.about_wrap section#company_about div.address ul {
    font-size: 0.75rem; }

  div.footer_bottom footer ul {
    justify-content: initial; }

  div.footer_bottom footer ul li {
    line-height: 1.5em;
    margin-right: 12px; }

  div.footer_bottom footer ul li:last-of-type {
    margin-right: 0px; }

  div.footer_bottom footer ul li a {
    font-size: 0.75rem; }

  div.footer_bottom footer small {
    font-size: 0.75rem; } }

@media screen and (max-width: 640px) {
  div.br_wrap div.cover {
    height: auto; }

  div.common_box div#search.wrap div#search_489ban form dl.date_489ban label {
    font-size: 0.75rem; }

  div.common_box div#search.wrap ul li a {
    font-size: 0.75rem; }

  div.common_box#foot_search div#search.wrap div#search_489ban form button {
    width: 64px;
    margin-left: 8px;
    padding: 2px 0px 2px;
    background-position: center;
    background-size: 48px; }

  div.br_wrap div.cover section#bottom_reserve div.bottom_list ul li a {
    font-size: 0.75rem; }

  div.br_wrap div.cover section#bottom_reserve div.bottom_list ul li a {
    width: 100%;
    padding-right: 20px;
    background-position: right center; }

  div.common_box#foot_search {
    padding: 12px 0px; }

  div.common_box#foot_search div#search.wrap div#search_489ban form {
    padding: 0px; }

  div.common_box#foot_search div#search.wrap div#search_489ban {
    margin-bottom: 8px; }

  div.br_wrap div.cover section#bottom_reserve div.bottom_list ul li {
    margin-right: 16px; }

  div.multilingual_ft div.common_box#foot_search div#search.wrap div#search_489ban form button {
    width: 80px;
    background-size: 16px;
    background-position: right center;
    font-size: 0.75rem;
    margin-right: 8px;
    margin-left: -4px; }

  div.multilingual_ft div.common_box div#search.wrap div#search_489ban form dl.date_489ban label {
    margin-left: 4px; }

  div.multilingual_ft div.common_box#foot_search div#search.wrap div#search_489ban form dl.date_489ban dd input[name="date"] {
    font-size: 0.75rem;
    margin-left: 4px; } }

header#page_header {
  width: 100%;
  position: fixed;
  padding: 16px 32px;
  background: #fff;
  box-sizing: border-box;
  z-index: 10; }

header#page_header div.wrapper {
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center; }

header#page_header div.wrapper div.upper h1 {
  width: 112px;
  height: 48px;
  text-indent: -9999px;
  background-image: url(img/page-header/title-font.svg);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center; }

header#page_header div.wrapper div.upper h1 a {
  height: 100%;
  display: block; }

header#page_header div.wrapper div.upper div.sp_box a#sub_sp {
  display: none; }

header#page_header div.wrapper div.upper div.sp_box a#sp_pulan {
  display: none; }

header#page_header div.wrapper nav#sub_navi {
  max-width: 856px;
  width: 100%; }

header#page_header div.wrapper nav#sub_navi ul {
  display: flex;
  justify-content: space-between;
  width: 100%;
  align-items: center; }

header#page_header div.wrapper nav#sub_navi ul li a {
  color: #333;
  text-decoration: none;
  position: relative; }

header#page_header div.wrapper nav#sub_navi ul li a::before {
  position: absolute;
  content: "";
  background-color: #333;
  height: 1px;
  width: 100%;
  bottom: -4px;
  transform: scale(0, 1);
  transform-origin: 100% 0;
  transition: transform 0.6s ease; }

header#page_header div.wrapper nav#sub_navi ul li a:hover::before {
  transform: scale(1, 1);
  transition: transform 0.6s ease;
  transform-origin: 0% 0; }

header#page_header div.wrapper nav#sub_navi ul li#language {
  position: relative; }

header#page_header div.wrapper nav#sub_navi ul li#language p {
  background-image: url(img/header/fix_laungage_icon.svg);
  background-position: right center;
  background-position: auto;
  background-repeat: no-repeat;
  padding-right: 24px;
  width: 100%;
  cursor: pointer; }

header#page_header div.wrapper nav#sub_navi ul li#language ul.local {
  opacity: 0;
  position: absolute;
  background: rgba(255, 255, 255, 0.8);
  top: 28px;
  z-index: 20;
  left: -32px;
  width: 136px;
  height: 128px;
  display: flex;
  flex-direction: column;
  padding: 8px 0px;
  transition: all 0.6s ease; }

header#page_header div.wrapper nav#sub_navi ul li#language ul.local li {
  text-align: center;
  padding: 8px 0px; }

header#page_header div.wrapper nav#sub_navi ul li#language:hover ul.local {
  visibility: visible;
  opacity: 1; }

header#page_header div.wrapper nav#sub_navi ul li.phone {
  padding-left: 24px;
  background-image: url(img/header/fix_tel.svg);
  background-position: left center;
  background-size: auto;
  background-repeat: no-repeat; }

@media screen and (max-width: 1280px) {
  header#page_header {
    padding: 0px; }

  header#page_header div.wrapper div.upper {
    padding: 12px;
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center; }

  header#page_header div.wrapper div.upper div.sp_box {
    display: flex;
    flex-direction: row-reverse;
    align-items: center; }

  header#page_header div.wrapper div.upper div.sp_box a#sub_sp {
    display: block;
    text-indent: -9999px;
    width: 64px;
    height: 64px;
    background-image: url(img/header/sp_menu_open_black.svg);
    background-size: 64px;
    background-repeat: no-repeat;
    background-position: center; }

  header#page_header div.wrapper div.upper div.sp_box a#sub_sp.sub_menu_open {
    background-image: url(img/header/sp_menu_close_black.svg); }

  header#page_header div.wrapper nav#sub_navi ul li a::before {
    content: none; }

  header#page_header div.wrapper div.upper div.sp_box a#sp_pulan {
    display: block;
    padding-top: 36px;
    background-image: url(img/header/sp_pulan_black.svg);
    background-size: 32px;
    background-position: top center;
    background-repeat: no-repeat;
    color: #333;
    font-size: 0.875rem; }

  header#page_header div.wrapper nav#sub_navi {
    display: none;
    position: absolute;
    top: 80px;
    background-color: #fff;
    max-width: initial; }

  header#page_header div.wrapper nav#sub_navi ul {
    display: block;
    height: calc(100vh - 88px); }

  header#page_header div.wrapper nav#sub_navi ul li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

  header#page_header div.wrapper nav#sub_navi ul li a {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: calc((100vh - 88px) / 10); }

  header#page_header div.wrapper nav#sub_navi ul li a::before {
    content: none; }

  header#page_header div.wrapper nav#sub_navi ul li#language {
    padding: 24px 0px 0px; }

  header#page_header div.wrapper nav#sub_navi ul li#language p {
    text-align: center;
    background-position: right calc(50% - 54px) center;
    padding-right: 0px; }

  header#page_header div.wrapper nav#sub_navi ul li#language ul.local {
    opacity: 1;
    position: initial;
    margin: 8px auto; }

  header#page_header div.wrapper nav#sub_navi ul li#language ul.local li {
    padding: 0;
    border: none; }

  header#page_header div.wrapper nav#sub_navi ul li#language ul.local li a {
    padding: 8px 0px;
    height: auto; }

  header#page_header div.wrapper nav#sub_navi ul li.phone {
    background-position: left calc(50% - 60px) center;
    padding-left: 0px; } }

@media screen and (max-width: 640px) {
  header#page_header div.wrapper div.upper div.sp_box a#sub_sp {
    width: 60px;
    height: 64px;
    background-size: cover; }

  header#page_header div.wrapper div.upper div.sp_box a#sp_pulan {
    font-size: 0.75rem;
    background-size: 24px;
    padding-top: 28px; }

  header#page_header div.wrapper nav#sub_navi {
    overflow: auto;
    height: auto; }

  header#page_header div.wrapper div.upper h1 {
    width: 72px;
    height: 72px;
    background-size: contain; }

  header#page_header div.wrapper nav#sub_navi ul {
    height: calc(100vh - 88px); }

  header#page_header div.wrapper nav#sub_navi ul li a {
    height: calc((100vh - 88px) / 10);
    font-size: 0.75rem; }

  header#page_header div.wrapper div.upper {
    padding: 8px 12px; }

  header#page_header div.wrapper nav#sub_navi ul li#language p {
    background-position: right calc(50% - 40px) center; } }

header#site_header {
  width: 100%;
  height: 112px;
  position: fixed;
  padding: 16px 32px;
  box-sizing: border-box;
  z-index: 10;
  transition: all 2s ease;
  transition: height 2s ease; }

header#site_header.fix_white {
  background: rgba(255, 255, 255, 0.9);
  z-index: 20;
  height: 80px;
  transition: all 2s ease;
  transition: height 2s ease; }

header#site_header.fix_white div.wrapper div.upper h1 {
  width: 112px;
  height: 48px;
  background-image: url(img/page-header/title-font.svg);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center; }

header#site_header.fix_white div.wrapper div.upper h1 a {
  height: 100%;
  display: block; }

header#site_header.fix_white div.wrapper nav ul li.phone {
  padding-left: 24px;
  box-sizing: border-box;
  background-image: url(img/header/fix_tel.svg);
  background-size: auto;
  background-position: left center;
  background-repeat: no-repeat;
  transition: all 2s ease; }

header#site_header.fix_white div.wrapper nav ul li#language p.fix_p {
  color: #333;
  background-image: url(img/header/fix_laungage_icon.svg);
  transition: all 2s ease; }

header#site_header.fix_white div.wrapper nav#global_nav ul li a {
  position: relative; }

header#site_header.fix_white div.wrapper nav#global_nav ul li a::before {
  position: absolute;
  content: "";
  background-color: #333;
  height: 1px;
  width: 100%;
  bottom: -4px;
  transform: scale(0, 1);
  transform-origin: 100% 0;
  transition: transform 0.6s ease; }

header#site_header.fix_white div.wrapper nav#global_nav ul li a:hover::before {
  transform: scale(1, 1);
  transition: transform 0.6s ease;
  transform-origin: 0% 0; }

header#site_header div.wrapper {
  display: flex;
  width: 100%;
  justify-content: space-between; }

header#site_header div.wrapper div.upper {
  display: flex;
  width: 100%;
  justify-content: space-between; }

header#site_header div.wrapper div.upper h1 {
  width: 112px;
  height: 112px;
  background-image: url(img/header/romankan_logo.svg);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center;
  text-indent: -9999px;
  margin-right: 240px; }

header#site_header div.wrapper div.upper h1 a {
  width: 100%;
  height: 100%;
  display: block; }

header#site_header div.wrapper div.upper a#sp_menu {
  display: none; }

header#site_header div.wrapper div.upper a#sp_pulan {
  display: none; }

header#site_header div.wrapper nav {
  max-width: 856px;
  width: 100%;
  height: 112px;
  transition: height 2s ease; }

header#site_header.fix_white div.wrapper nav {
  height: 48px;
  transition: height 2s ease; }

header#site_header div.wrapper nav ul {
  display: flex;
  justify-content: space-between;
  height: 100%;
  align-items: center; }

header#site_header div.wrapper nav ul li a.head_a {
  color: #fff;
  text-decoration: none;
  position: relative;
  transition: all 2s ease; }

header#site_header div.wrapper nav ul li a.head_a::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  bottom: -4px;
  background-color: #fff;
  transform: scale(0, 1);
  transform-origin: 100% 0;
  transition: transform 0.6s ease; }

header#site_header div.wrapper nav ul li a.head_a:hover::before {
  transform: scale(1, 1);
  transition: transform 0.6s ease;
  transform-origin: 0% 0; }

header#site_header div.wrapper nav ul li a.head_a.fix_black {
  color: #333;
  transition: all 2s ease; }

header#site_header div.wrapper nav ul li.phone {
  padding-left: 24px;
  box-sizing: border-box;
  background-image: url(img/header/phone_icon.svg);
  background-size: auto;
  background-position: left center;
  background-repeat: no-repeat;
  transition: all 2s ease; }

header#site_header div.wrapper nav ul li#language {
  position: relative; }

header#site_header div.wrapper nav ul li#language p {
  width: 100%;
  padding-right: 24px;
  box-sizing: border-box;
  background-image: url(img/header/list_arrow.svg);
  background-size: auto;
  background-position: right center;
  background-repeat: no-repeat;
  color: #fff;
  cursor: pointer;
  transition: all 2s ease; }

header#site_header div.wrapper nav ul li#language ul.local {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  background: rgba(255, 255, 255, 0.8);
  top: 28px;
  left: -32px;
  z-index: 20;
  width: 136px;
  height: 128px;
  padding: 8px 0px;
  flex-direction: column;
  transition: all 0.6s ease; }

header#site_header div.wrapper nav ul li#language ul.local li {
  text-align: center;
  padding: 8px 0px; }

header#site_header div.wrapper nav ul li#language ul.local li a {
  color: #333; }

header#site_header div.wrapper nav ul li#language:hover ul.local {
  visibility: visible;
  opacity: 1; }

@media screen and (max-width: 1280px) {
  header#site_header {
    padding: 8px 0px;
    transition: all 0.4s ease; }

  header#site_header div.wrapper div.upper {
    padding: 12px 24px 12px 12px;
    box-sizing: border-box;
    position: absolute;
    top: 0;
    align-items: center; }

  header#site_header div.wrapper div.upper h1 {
    width: 96px;
    height: 108px;
    background-size: cover;
    padding-left: 16px; }

  header#site_header div.wrapper div.upper div.sp_box {
    display: flex;
    flex-direction: row-reverse;
    align-items: center; }

  header#site_header div.wrapper div.upper div.sp_box a#sp_menu {
    display: block;
    text-indent: -9999px;
    width: 80px;
    height: 80px;
    background-image: url(img/header/sp_menu_open_white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; }

  header#site_header.fix_white div.wrapper nav#global_nav ul li a::before {
    content: none; }

  header#site_header div.wrapper div.upper div.sp_box a#sp_menu.menu_open {
    background-image: url(img/header/sp_menu_close_black.svg); }

  header#site_header div.wrapper div.upper div.sp_box a#sp_pulan {
    display: block;
    padding-top: 36px;
    background-image: url(img/header/sp_pulan_white.svg);
    background-size: 32px;
    background-position: top center;
    background-repeat: no-repeat;
    color: #fff;
    font-size: 0.875rem; }

  header#site_header div.wrapper div.upper div.sp_box a#sp_pulan.pulan_black {
    background-image: url(img/header/sp_pulan_black.svg);
    color: #333; }

  header#site_header div.wrapper div.upper.site_white {
    background-color: rgba(255, 255, 255, 0.9); }

  header#site_header div.wrapper div.upper.site_white h1 {
    background-image: url(img/page-header/title-font.svg);
    background-size: contain; }

  header#site_header div.wrapper div.upper.site_white a#sp_menu {
    background-image: url(img/header/sp_menu_close_w_white.svg); }

  header#site_header div.wrapper nav#global_nav {
    display: none;
    height: calc(100vh - 104px);
    position: absolute;
    background-color: rgba(255, 255, 255, 0.9);
    left: 0;
    top: 104px;
    max-width: initial;
    overflow: auto; }

  header#site_header div.wrapper nav#global_nav ul {
    flex-direction: column;
    height: calc(100vh - 104px); }

  header#site_header div.wrapper nav#global_nav ul li {
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

  header#site_header div.wrapper nav#global_nav ul li a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: center;
    color: #333;
    height: calc((100vh - 104px) / 10); }

  header#site_header div.wrapper nav#global_nav ul li#language {
    padding-top: 16px; }

  header#site_header div.wrapper nav#global_nav ul li#language p {
    text-align: center;
    padding-right: 0px;
    color: #333;
    background-image: none; }

  header#site_header div.wrapper nav#global_nav ul li#language ul.local {
    opacity: 1;
    position: initial;
    visibility: initial;
    margin: auto;
    background: transparent;
    padding: 8px 0px 12px;
    height: auto; }

  header#site_header div.wrapper nav#global_nav ul li#language ul.local li {
    padding: 0px;
    border: none; }

  header#site_header div.wrapper nav#global_nav ul li#language ul.local li a {
    padding: 12px 0px;
    height: auto; }

  header#site_header div.wrapper nav#global_nav ul li.phone {
    background-image: url(img/header/fix_tel.svg);
    background-position: left calc(50% - 60px) center; }

  header#site_header.fix_white div.wrapper div.upper h1 {
    background-image: url(img/page-header/title-font.svg); }

  header#site_header.fix_white div.wrapper div.upper div.sp_box a#sp_menu {
    background-image: url(img/header/sp_menu_open_black.svg);
    background-size: 56px; }

  header#site_header.fix_white div.wrapper div.upper div.sp_box a#sp_menu.menu_open {
    background-image: url(img/header/sp_menu_close_black.svg);
    background-size: 56px; }

  header#site_header.fix_white div.wrapper div.upper div.sp_box a#sp_pulan {
    color: #333;
    background-image: url(img/header/sp_pulan_black.svg); }

  header#site_header.fix_white div.wrapper nav#global_nav ul li#language p {
    padding-right: 0px; } }

@media screen and (max-width: 640px) {
  header#site_header {
    height: auto; }

  header#site_header div.wrapper div.upper {
    padding: 8px 12px; }

  header#site_header div.wrapper div.upper h1 {
    margin-right: 0px;
    width: 72px;
    height: 72px;
    padding-left: 0px; }

  header#site_header div.wrapper div.upper div.sp_box a#sp_menu {
    width: 60px;
    height: 64px;
    background-size: 56px; }

  header#site_header div.wrapper div.upper div.sp_box a#sp_pulan {
    font-size: 0.75rem;
    background-size: 20px;
    padding-top: 24px; }

  header#site_header.fix_white div.wrapper div.upper h1 {
    width: 72px;
    height: 72px;
    background-size: contain; }

  header#site_header div.wrapper nav#global_nav {
    height: calc(100vh - 88px);
    top: 88px; }

  header#site_header div.wrapper nav#global_nav ul {
    height: calc(100vh - 88px); }

  header#site_header div.wrapper nav#global_nav ul li a {
    font-size: 0.75rem;
    height: calc((100vh - 88px) / 10); }

  header#site_header div.wrapper nav#global_nav ul li#language p {
    font-size: 0.75rem; } }

@keyframes fade_event {
  0% {
    transform: translateX(0px); }

  100% {
    transform: translateX(-56px); } }

body#page-top video {
  position: fixed;
  z-index: -99;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  top: auto;
  left: auto; }

body#page-top div#page-index main div.cacth_wrap {
  height: 100vh;
  min-height: 560px; }

body#page-top div#page-index main div.cacth_wrap section#catch {
  width: 100%;
  display: flex;
  height: 100%;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  position: relative;
  background: rgba(0, 0, 0, 0.2); }

body#page-top div#page-index main div.cacth_wrap div#news {
  display: flex;
  align-items: center;
  justify-content: space-around;
  background: rgba(255, 255, 255, 0.8);
  position: absolute;
  left: 0;
  bottom: 0;
  max-width: 600px;
  width: 100%;
  padding: 16px;
  z-index: 1; }

body#page-top div#page-index main div.cacth_wrap div#news ul li a {
  color: #333;
  text-decoration: none; }

body#page-top div#page-index main div.cacth_wrap div#news ul li dl {
  display: flex; }

body#page-top div#page-index main div.cacth_wrap div#news ul li dl dt {
  padding: 0px 0px 0px 40px;
  background-image: url(img/top/news_icon.svg);
  background-position: center left 20px;
  background-repeat: no-repeat;
  background-size: auto; }

body#page-top div#page-index main div.cacth_wrap div#news ul li dl dd {
  margin-left: 18px;
  margin-left: 18px;
  max-width: 348px;
  overflow: hidden;
  height: 16px; }

body#page-top div#page-index main div.cacth_wrap h2.title {
  writing-mode: vertical-rl;
  -ms-writing-mode: vertical-rl;
  font-size: 1.5rem;
  margin: 0px 0px 144px;
  line-height: 2em;
  color: #fff;
  letter-spacing: 0.1rem; }

body#page-top div#page-index main div.cacth_wrap h2.title span {
  display: block; }

body#page-top div#page-index main div.cacth_wrap p.scroll_wrap a#scroll {
  text-indent: -9999px;
  display: block;
  width: 64px;
  height: 64px;
  position: absolute;
  left: calc(50vw - 32px);
  bottom: calc(50% - 128px);
  background-image: url(img/top/scroll_link.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center; }

body#page-top div#page-index main div.big_wrap {
  background-color: rgba(0, 0, 0, 0.2); }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap {
  position: relative;
  min-height: 100vh;
  z-index: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  background-image: url(img/greet/dolphin3-01.svg), url(img/greet/dolphin4-01.svg);
  background-size: auto, auto;
  background-repeat: no-repeat, no-repeat;
  background-position: top calc(30%) right calc(24%), top calc(40%) right calc(32%);
  opacity: 0; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap.fadein {
  position: relative;
  min-height: 100vh;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 1;
  background-image: url(img/greet/dolphin3-01.svg), url(img/greet/dolphin4-01.svg);
  background-size: auto, auto;
  background-repeat: no-repeat, no-repeat;
  background-position: top calc(30%) right calc(24%), top calc(40%) right calc(32%);
  transition: all 2s linear; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet {
  width: 100%;
  margin: auto;
  min-height: 100vh;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin2-01.svg), url(img/greet/dolphin5-01.svg);
  background-size: cover, auto, auto;
  background-position: center, top calc(50% + 40px) left calc(30%), top calc(32%) left calc(8%);
  background-repeat: no-repeat, no-repeat, no-repeat;
  opacity: 0;
  transition: all 1s ease;
  transition-delay: 1s; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet.fadein2 {
  position: relative;
  min-height: 100vh;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin2-01.svg), url(img/greet/dolphin5-01.svg);
  background-size: cover, auto, auto;
  background-position: center, top calc(50% + 40px) left calc(30%), top calc(32%) left calc(8%);
  background-repeat: no-repeat, no-repeat, no-repeat;
  opacity: 1;
  transition: all 1s ease;
  transition-delay: 1s; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet div.contents {
  display: flex;
  box-sizing: border-box;
  flex-direction: column; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet div.contents h2 {
  font-size: 1.25rem;
  writing-mode: vertical-rl;
  line-height: 2.4em;
  letter-spacing: 0.05rem;
  padding-top: 112px;
  background-image: url(img/greet/greet_roman_icon.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: top center;
  margin: auto; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet div.contents h2 span {
  display: block; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet div.contents div.text {
  max-width: 520px;
  width: 100%;
  margin: 108px auto 0px; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet div.contents div.text p {
  line-height: 2em;
  letter-spacing: 0.01rem;
  text-align: center; }

body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet div.contents div.text p span {
  display: block; }

body#page-top div#page-index main div.big_wrap div.content_wrap {
  background-color: #fff;
  position: relative;
  overflow: hidden;
  z-index: 0; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.spring_wrap {
  max-width: 1040px;
  margin: auto;
  height: 524px;
  margin-bottom: 96px;
  position: relative; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap {
  position: relative;
  padding-bottom: 32px;
  width: calc(100vw - ((100vw - 1040px) / 2));
  max-width: calc(100vw - 80px);
  margin-bottom: 96px; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap.onsen {
  margin-left: calc((100vw - 1040px) / 2); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation {
  max-width: 112px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  position: absolute;
  right: 0;
  bottom: 0; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation.blue {
  left: 0;
  bottom: 0; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation li {
  text-indent: -9999px;
  width: 16px;
  height: 16px;
  border: 1px solid rgba(0, 0, 0, 0.25); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation li a {
  width: 100%;
  height: 100%;
  display: block; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation.red li.now {
  background-color: #800d28; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation.blue li.now {
  background-color: #484a80; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation.green li.now {
  background-color: #5e800a; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content {
  position: relative;
  height: 524px;
  overflow: hidden; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text {
  max-width: 1040px;
  margin: auto;
  background-image: url(img/content/cook_back.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: top 120px right 20px; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content {
  display: flex;
  justify-content: space-between;
  max-width: 894px;
  width: 100%;
  padding: 124px 24px 24px 24px;
  box-sizing: border-box; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content h2, body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content &gt; p {
  color: #fff;
  font-size: 2rem;
  writing-mode: vertical-rl;
  letter-spacing: 0.4rem;
  padding: 88px 112px;
  background-image: url(img/content/title_frame.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: auto; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block {
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin-left: 12px; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block h3, body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content &gt; div.text &gt; div.content &gt; div.block &gt; h2.coh3 {
  font-size: 1.25rem;
  letter-spacing: 0.05rem;
  line-height: 2.4em; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block h3 span, body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content &gt; div.text &gt; div.content &gt; div.block &gt; h2.coh3 &gt; span {
  display: block; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block p {
  line-height: 2em; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block p span {
  display: block; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block a {
  padding: 4px 0px 4px 32px;
  background-image: url(img/content/about_rink.svg);
  background-size: auto;
  background-position: left center;
  background-repeat: no-repeat;
  color: #fff; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  display: flex; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: rgba(0, 0, 0, 0.125);
  z-index: 1; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li {
  display: none;
  width: calc(100vw - ((100vw - 1040px) / 2) + 60px);
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  animation: fade_event 8s linear 0s;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li.one {
  display: list-item;
  background-image: url(img/content/cooking_photo1.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li.two {
  background-image: url(img/content/cooking_photo2.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li.three {
  background-image: url(img/content/cooking_photo3.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li.four {
  background-image: url(img/content/cooking_photo4.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li.five {
  background-image: url(img/content/cooking_photo5.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li img {
  display: none; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_spring li.one {
  display: list-item;
  background-image: url(img/content/spring_photo1.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_spring li.two {
  background-image: url(img/content/spring_photo2.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_spring li.three {
  background-image: url(img/content/spring_photo3.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_spring li.four {
  background-image: url(img/content/spring_photo4.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_spring li.five {
  background-image: url(img/content/spring_photo5.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_room li.one {
  display: list-item;
  background-image: url(img/content/room_photo1.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_room li.two {
  background-image: url(img/content/room_photo2.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_room li.three {
  background-image: url(img/content/room_photo3.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_room li.four {
  background-image: url(img/content/room_photo4.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea#img_room li.five {
  background-image: url(img/content/room_photo5.jpg); }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content#room div.text {
  background-image: url(img/content/room_back.svg);
  background-size: auto;
  background-position: top 120px right 20px;
  background-repeat: no-repeat; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content#spring div.text {
  background-image: url(img/content/spring_back.svg);
  background-size: auto;
  background-position: top 120px left 20px;
  background-repeat: no-repeat; }

body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content#spring div.text div.content {
  flex-direction: row-reverse; }

body#page-top div#page-index main div.news_wrap {
  width: 100%;
  background-color: #fff;
  display: flex;
  justify-content: center; }

body#page-top div#page-index main div.news_wrap section#news_list {
  max-width: 1040px;
  margin: auto;
  padding: 56px 12px; }

body#page-top div#page-index main div.news_wrap section#news_list h2, body#page-top div#page-index main div.news_wrap section#news_list &gt; p {
  font-size: 1.5rem;
  margin-bottom: 32px;
  text-align: center; }

body#page-top div#page-index main div.news_wrap section#news_list ul li {
  margin-bottom: 16px; }

body#page-top div#page-index main div.news_wrap section#news_list ul li a {
  text-decoration: none;
  color: #333;
  font-size: 1rem; }

body#page-top div#page-index main div.news_wrap section#news_list ul li a dl {
  display: flex; }

body#page-top div#page-index main div.news_wrap section#news_list ul li a dl dt {
  min-width: 128px; }

body#page-top div#page-index main div.news_wrap section#news_list ul li a dl dd {
  padding-left: 32px;
  background-image: url(img/news/news_mini_icon.svg);
  background-size: auto;
  background-position: left 16px center;
  background-repeat: no-repeat; }

body#page-top div#page-index main div.news_wrap a.link {
  padding: 4px 0px 4px 32px;
  background-image: url(img/news/news_link.svg);
  background-size: auto;
  background-position: center left calc(50% - 56px);
  background-repeat: no-repeat;
  display: block;
  text-align: center;
  margin: 64px 0 0; }

body#page-top div#page-index main div.pulan_wrap {
  background-color: #f7f7f7;
  background-image: url(img/pulan/pulan_back.svg);
  background-size: auto;
  background-repeat: no-repeat;
  background-position: top 240px right; }

body#page-top div#page-index main div.pulan_wrap section#pulan {
  max-width: 800px;
  margin: auto;
  padding: 64px 12px 0px;
  box-sizing: border-box; }

body#page-top div#page-index main div.pulan_wrap section#pulan h2 {
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 32px; }

body#page-top div#page-index main div.pulan_wrap section#pulan ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

body#page-top div#page-index main div.pulan_wrap section#pulan ul li {
  max-width: 320px;
  width: 100%;
  display: flex;
  flex-direction: column-reverse;
  justify-content: space-between;
  min-height: 380px;
  margin: 0 auto 48px; }

body#page-top div#page-index main div.pulan_wrap section#pulan ul li p, body#page-top div#page-index main div.pulan_wrap section#pulan ul li h3 {
  margin-top: 16px;
  line-height: 1.5em;
  margin-bottom: 16px; }

body#page-top div#page-index main div.pulan_wrap section#pulan ul li a {
  order: -1;
  display: block;
  border: 1px solid rgba(0, 0, 0, 0.2);
  color: #000;
  text-decoration: none;
  text-align: center;
  padding: 8px 0px; }

body#page-top div#page-index main div.pulan_wrap section#pulan ul li a:hover {
  text-decoration: underline; }

body#page-top div#page-index main div.pulan_wrap section#pulan ul li div.ib img {
  max-width: 320px;
  width: 100%;
  height: 240px;
  display: block;
  object-fit: cover;
  object-position: center; }

body#page-top div#page-index main div.access_wrap {
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: relative;
  z-index: 1;
  background-image: url(img/greet/dolphin2-01.svg), url(img/greet/dolphin5-01.svg), url(img/greet/dolphin3-01.svg), url(img/greet/dolphin4-01.svg);
  background-size: auto, auto;
  background-position: top 400px left 60px, top 300px left 180px, top 420px left 360px, top 360px left 40px;
  background-repeat: no-repeat, no-repeat; }

body#page-top div#page-index main div.access_wrap::before {
  position: absolute;
  content: "";
  height: 100%;
  width: calc(100vw - ((100vw - 1040px) / 2));
  background-image: url(img/access/top_access_map_renew.svg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: left center;
  z-index: -1; }

body#page-top div#page-index main div.access_wrap section#access {
  max-width: 1040px;
  margin: auto;
  padding: 72px 12px;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  /*body#page-top div#page-index main div.access_wrap section#access div.left h2,*/ }

body#page-top div#page-index main div.access_wrap section#access div.left &gt; p {
  font-size: 2rem;
  margin: 0px 0px 24px 0px; }

body#page-top div#page-index main div.access_wrap section#access div.left p, body#page-top div#page-index main div.access_wrap section#access div.left h3 {
  line-height: 2em; }

body#page-top div#page-index main div.access_wrap section#access div.left p span, body#page-top div#page-index main div.access_wrap section#access div.left h3 span {
  display: block; }

body#page-top div#page-index main div.access_wrap section#access div.left p.title, body#page-top div#page-index main div.access_wrap section#access div.left h3.title {
  font-size: 1.5rem; }

body#page-top div#page-index main div.access_wrap section#access div.right {
  background: rgba(255, 255, 255, 0.75);
  margin-top: 84px; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.outline {
  padding: 16px 32px 16px;
  box-sizing: border-box; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.avobe {
  padding-left: 104px;
  background-image: url(img/access/address_icon.svg);
  background-position: left;
  background-size: auto;
  background-repeat: no-repeat; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li address p {
  line-height: 2em; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li address p span {
  display: block; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li a.map {
  display: inline-block;
  margin-top: 16px;
  padding: 8px 32px 8px 16px;
  background-color: #210a06;
  color: #fff;
  background-image: url(img/access/map_link.svg);
  background-size: auto;
  background-position: right center;
  background-repeat: no-repeat;
  text-decoration: none; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common {
  display: flex;
  border-top: 1px solid #eceaea; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common div.left ul {
  margin-top: 16px; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common div.left ul li {
  line-height: 2em; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common div.right {
  margin-top: 0px; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common div.right a {
  padding-left: 32px;
  background-size: auto;
  background-position: left center;
  background-repeat: no-repeat;
  background-image: url(img/access/page_link.svg);
  color: #333;
  text-decoration: none;
  padding-top: 12px;
  padding-bottom: 12px; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common p {
  padding-left: 56px;
  padding-top: 8px;
  padding-bottom: 8px;
  background-size: auto;
  background-position: left center;
  background-repeat: no-repeat; }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common p.train {
  background-image: url(img/access/train_icon.svg); }

body#page-top div#page-index main div.access_wrap section#access div.right ul li.common p.dolphin {
  background-image: url(img/access/dolphin_icon.svg); }

@media screen and (max-width: 1156px) {
  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap.onsen {
    margin-left: 80px; } }

@media screen and (max-width: 1020px) {
  body#page-top div#page-index main div.access_wrap::before {
    width: 100%;
    height: 100%;
    bottom: 0;
    left: 0;
    background-position: top;
    background-size: 640px; }

  body#page-top div#page-index main div.access_wrap section#access {
    flex-direction: column;
    align-items: center;
    padding: 24px 12px 72px; }

  body#page-top div#page-index main div.access_wrap section#access div.left h2 {
    padding: 0px;
    margin: 0px 0px 32px 0px; }

  body#page-top div#page-index main div.access_wrap section#access div.right {
    margin-top: 120px; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li {
    width: calc(100vw - ((100vw - 1040px) / 2) + 48px); } }

@media screen and (max-width: 640px) {
  body#page-top video {
    height: 414px;
    min-height: 0; }

  body#page-top div#page-index main div.cacth_wrap {
    height: 414px;
    min-height: 0px; }

  body#page-top div#page-index main div.cacth_wrap section#catch {
    justify-content: center;
    align-items: flex-start; }

  body#page-top div#page-index main div.cacth_wrap section#catch #sp_form {
    display: none; }

  body#page-top div#page-index main div.cacth_wrap h2.title {
    font-size: 1rem;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-direction: column;
    position: static;
    padding-top: 88px; }

  body#page-top div#page-index main div.cacth_wrap a#scroll {
    height: 44px;
    left: calc(50vw - 22px);
    background-size: contain;
    bottom: 116px; }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap::before {
    width: 100%;
    height: 100%;
    content: "";
    background-color: #fff;
    top: 0;
    left: 0;
    background-image: url(img/greet/dolphin3-01.svg);
    background-size: 64px;
    background-repeat: no-repeat;
    background-position: top calc(32% + 24px) right calc(12%);
    opacity: 1;
    z-index: -2;
    position: absolute; }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap.fadein::before {
    width: 100%;
    height: 100%;
    content: "";
    background-color: #fff;
    top: 0;
    left: 0;
    background-image: url(img/greet/dolphin3-01.svg);
    background-size: 64px;
    background-repeat: no-repeat;
    background-position: top calc(32% + 24px) right calc(12%);
    opacity: 1;
    z-index: -2;
    position: absolute; }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap.fadein {
    background-size: 64px, 64px; }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet {
    background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin5-01.svg);
    background-size: cover, 64px;
    background-position: center, top calc(50% + 40px) left calc(30%);
    background-repeat: no-repeat, no-repeat;
    position: relative;
    padding: 0px 0px 40px; }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet.fadein2 {
    background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin5-01.svg);
    background-size: cover, 64px;
    background-position: center, top calc(50% + 40px) left calc(30%);
    background-repeat: no-repeat, no-repeat;
    position: relative;
    padding: 0px 0px 40px; }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet div.contents {
    padding: 72px 60px; }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin2-01.svg);
    background-repeat: no-repeat, no-repeat;
    z-index: -1;
    opacity: 1;
    transition: all 1s ease;
    transition-delay: 1s;
    background-size: cover, 64px;
    background-position: center, top 288px left calc(8%); }

  body#page-top div#page-index main div.big_wrap div#whiteBack.wrap section#greet.fadein2:before {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin2-01.svg);
    background-repeat: no-repeat, no-repeat;
    z-index: -1;
    opacity: 1;
    transition: all 1s ease;
    transition-delay: 1s;
    background-size: cover, 64px;
    background-position: center, top 288px left calc(8%); }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation li {
    width: 12px;
    height: 12px; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap ul.pagenation {
    width: 96px; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap {
    max-width: calc(100vw - 24px);
    width: 100%;
    margin-bottom: 40px; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap.onsen {
    margin-left: 24px; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content {
    height: calc(300px + 2922/4600*100vw); }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea {
    top: auto; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text {
    background-size: contain;
    background-position: center; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content {
    padding: 0px 12px 20px;
    flex-direction: column;
    justify-content: center;
    align-items: center; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content h2 {
    padding: 48px;
    background-size: contain;
    font-size: 1rem;
    color: #333;
    background-image: url(img/content/title_frame_sp.svg); }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block {
    color: #333; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block h3, body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content &gt; div.text &gt; div.content &gt; div.block &gt; h2.coh3 {
    font-size: 0.875rem; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content div.text div.content div.block a {
    margin-top: 12px;
    font-size: 0.875rem;
    color: #333;
    background-image: url(img/content/about_rink_sp.svg); }

  body#page-top div#page-index main div.news_wrap section#news_list {
    padding: 12px 12px 40px;
    width: 100%; }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea:before {
    bottom: 0;
    top: auto;
    height: calc(2622/4600*100vw); }

  body#page-top div#page-index main div.big_wrap div.content_wrap div.menu_wrap section.linear_content ul.imagearea li {
    height: calc(2622/4600*100vw);
    background-size: contain;
    background-position: left; }

  body#page-top div#page-index main div.news_wrap section#news_list h2 {
    font-size: 1rem; }

  body#page-top div#page-index main div.news_wrap section#news_list ul li a {
    font-size: 0.75rem; }

  body#page-top div#page-index main div.news_wrap section#news_list ul li a dl {
    display: block; }

  body#page-top div#page-index main div.news_wrap section#news_list ul li a dl dt {
    margin-bottom: 8px; }

  body#page-top div#page-index main div.news_wrap section#news_list ul li a dl dd {
    background-position: center left;
    padding-left: 12px; }

  body#page-top div#page-index main div.news_wrap a.link {
    margin-top: 24px; }

  body#page-top div#page-index main div.pulan_wrap section#pulan ul {
    flex-direction: column;
    align-items: center; }

  body#page-top div#page-index main div.access_wrap {
    background-size: 64px, 64px, 64px, 64px;
    background-position: top 210px left 60px, top 200px left 16px, top 168px left 4px, top 240px right 16px; }

  body#page-top div#page-index main div.access_wrap section#access {
    padding: 24px 12px 40px; }

  body#page-top div#page-index main div.access_wrap section#access div.left h2 {
    font-size: 1rem;
    margin: 0px 0px 16px 0px;
    padding: 0px; }

  body#page-top div#page-index main div.access_wrap section#access div.left p.title, body#page-top div#page-index main div.access_wrap section#access div.left h3.title {
    font-size: 0.75rem; }

  body#page-top div#page-index main div.access_wrap section#access div.right.big ul li.common {
    font-size: 0.75rem;
    display: block; }

  body#page-top div#page-index main div.access_wrap section#access div.right.big ul li.common.outline {
    padding: 16px 32px 24px; }

  body#page-top div#page-index main div.access_wrap section#access div.right.big ul li.common div.right {
    margin-top: 16px; }

  body#page-top div#page-index main div.access_wrap section#access div.right.big ul li.avobe {
    background-size: 72px;
    background-position: left 20px center; }

  body#page-top div#page-index main div.access_wrap section#access div.right.big ul li.avobe a {
    font-size: 0.75rem; }

  body#page-top div#page-index main div.cacth_wrap div#news {
    display: block;
    padding: 12px;
    box-sizing: border-box;
    max-width: 100%; }

  body#page-top div#page-index main div.cacth_wrap div#news h2 {
    margin-bottom: 8px; }

  body#page-top div#page-index main div.cacth_wrap div#news ul li dl {
    display: block; }

  body#page-top div#page-index main div.pulan_wrap section#pulan ul li {
    min-height: 336px; }

  body#page-top div#page-index main div.pulan_wrap section#pulan ul li a {
    font-size: 0.75rem; }

  body#page-top div#page-index main div.cacth_wrap div#news ul li dl dt {
    padding-left: 16px;
    background-position: left center;
    margin-bottom: 8px; }

  body#page-top div#page-index main div.cacth_wrap div#news ul li dl dd {
    margin-left: 0px; }

  body#page-top div#page-index main div.pulan_wrap section#pulan {
    padding: 40px 12px 12px; }

  body#page-top div#page-index main div.pulan_wrap section#pulan h2 {
    font-size: 1rem; } }

@keyframes move {
  0% {
    transform: translateX(0px); }

  50% {
    transform: translateX(-10px); }

  100% {
    transform: translateX(-20px); } }

@keyframes in {
  0% {
    opacity: 0.5; }

  100% {
    opacity: 1; } }

@keyframes out {
  0% {
    opacity: 1; }

  100% {
    opacity: 0.5; } }

main.news {
  padding-top: 80px; }
  main.news .first-view {
    margin-top: 80px;
    margin-bottom: 80px;
    position: relative;
    width: 100%;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center; }
  main.news .first-view::before {
    position: absolute;
    width: 50%;
    height: 75%;
    content: "";
    top: 0;
    left: 0;
    background-image: url(img/news/firstView_1.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1; }
  main.news .first-view::after {
    position: absolute;
    width: 50%;
    height: 75%;
    content: "";
    top: 25%;
    left: 50%;
    background-image: url(img/news/firstView_2.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1; }
  main.news .first-view .title {
    text-align: center;
    background-color: #fff;
    padding: 48px 128px; }
    main.news .first-view .title h2 {
      font-size: 1.25rem;
      font-weight: 500;
      padding-bottom: 32px; }
    main.news .first-view .title p {
      line-height: 1.5em; }
  main.news .main-content {
    background-color: #f0f0f0; }
  main.news .main-content .news-content {
    max-width: 1020px;
    margin: 0 auto;
    padding: 80px 12px;
    display: flex;
    box-sizing: border-box; }
    main.news .main-content .news-content .right {
      margin-right: 80px;
      width: 100%; }
    main.news .main-content .news-content .right ul.blog-items {
      margin-bottom: 12px; }
    main.news .main-content .news-content .right ul.blog-items li {
      line-height: 2em; }
      main.news .main-content .news-content .right ul.blog-items li span.date {
        display: block;
        min-width: 88px; }
      main.news .main-content .news-content .right ul.blog-items li a.blog-item {
        display: inline-block;
        padding-left: 28px;
        background-image: url(img/news/news_mini_icon.svg);
        background-size: auto;
        background-repeat: no-repeat;
        background-position: left 10px center; }
    main.news .main-content .news-content .right nav.pagination div.nav-links {
      display: flex;
      align-items: center; }
      main.news .main-content .news-content .right nav.pagination div.nav-links span.current {
        margin-left: 16px; }
      main.news .main-content .news-content .right nav.pagination div.nav-links a.page-numbers {
        margin-left: 16px; }
      main.news .main-content .news-content .right nav.pagination div.nav-links a.next {
        display: inline-block;
        width: 24px;
        height: 24px;
        text-indent: -9999px;
        background-image: url(img/news/news_link.svg);
        background-size: auto;
        background-repeat: no-repeat;
        background-position: center;
        margin-left: 16px; }
      main.news .main-content .news-content .right nav.pagination div.nav-links a.prev {
        display: inline-block;
        width: 24px;
        height: 24px;
        text-indent: -9999px;
        background-image: url(img/news/news_link_prev.svg);
        background-size: auto;
        background-repeat: no-repeat;
        background-position: center;
        margin-left: 0px; }
    main.news .main-content .news-content .right.list h2 {
      font-size: 1.5rem;
      font-weight: 500;
      padding-bottom: 24px;
      margin-bottom: 24px;
      border-bottom: solid 1px #b3b3b3; }
    main.news .main-content .news-content .right.item .post-page p {
      line-height: 1.75em; }
      main.news .main-content .news-content .right.item .post-page .bh2 {
        margin-bottom: 32px;
        padding-bottom: 16px;
        border-bottom: solid 1px #b3b3b3; }
      main.news .main-content .news-content .right.item .post-page .bh2 .date {
        margin-bottom: 16px; }
      main.news .main-content .news-content .right.item .post-page .bh2 .title {
        font-size: 1.5rem; }
    main.news .main-content .news-content .right.item .news-footer {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 32px;
      padding-top: 16px;
      border-top: solid 1px #b3b3b3; }
    main.news .main-content .news-content .sidebar {
      min-width: 240px;
      max-width: 240px;
      width: 100%; }
    main.news .main-content .news-content .sidebar h3 {
      font-weight: 500;
      margin-bottom: 16px;
      padding-bottom: 16px;
      border-bottom: solid 1px #b3b3b3; }
    main.news .main-content .news-content .sidebar .cat-item {
      padding-left: 4px; }
    main.news .main-content .news-content .sidebar .cat-item::before {
      content: "--";
      display: inline-flex;
      padding-bottom: 12px;
      letter-spacing: -2px;
      padding-right: 4px; }
  main.news .main-content a {
    color: #333; }

@media screen and (max-width: 640px) {
  main.news .first-view {
    margin-bottom: 0px;
    margin-top: 80px; }
    main.news .first-view .title {
      width: 100%;
      padding: 24px 0px; }
      main.news .first-view .title h2 {
        padding-bottom: 16px; }
      main.news .first-view .title p {
        padding: 0 12px; }
    main.news .first-view::before {
      width: 100%;
      height: 50%;
      top: 0;
      left: 0; }
    main.news .first-view::after {
      width: 100%;
      height: 50%;
      top: auto;
      bottom: 0;
      left: 0; }
    main.news .main-content .news-content {
      flex-direction: column;
      align-items: center; }
      main.news .main-content .news-content .right {
        margin-right: 0px;
        margin-bottom: 64px; }
        main.news .main-content .news-content .right .blog-items li {
          line-height: 1.5em; }
      main.news .main-content .news-content .sidebar {
        max-width: 100%; } }

main#page-about div.sub_firstView {
  margin-top: 80px;
  margin-bottom: 80px;
  position: relative;
  width: 100%;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0; }
  main#page-about div.sub_firstView::before {
    position: absolute;
    content: "";
    width: 50%;
    height: 75%;
    top: 0;
    left: 0;
    background-image: url(img/about/firstView_bridge.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1; }
  main#page-about div.sub_firstView::after {
    position: absolute;
    content: "";
    width: 50%;
    height: 75%;
    bottom: 0;
    right: 0;
    background-image: url(img/about/firstView_building.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    z-index: -1; }
  main#page-about div.sub_firstView div.text {
    max-width: 720px;
    width: 100%;
    background-color: #fff;
    padding: 40px 12px;
    box-sizing: border-box; }
    main#page-about div.sub_firstView div.text p {
      line-height: 2em;
      margin-top: 32px;
      text-align: center; }
    main#page-about div.sub_firstView div.text p span {
      display: block; }
  main#page-about div.wrap section#about_contents {
    max-width: 1020px;
    margin: auto;
    padding: 40px 12px 64px;
    box-sizing: border-box;
    position: relative; }
    main#page-about div.wrap section#about_contents h3 {
      font-size: 1.25rem;
      padding: 88px 0px 40px;
      text-align: center;
      border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
    main#page-about div.wrap section#about_contents ul li {
      padding-top: 24px; }
    main#page-about div.wrap section#about_contents ul li dl {
      display: flex; }
      main#page-about div.wrap section#about_contents ul li dl dt {
        min-width: 200px; }
      main#page-about div.wrap section#about_contents ul li dl dd {
        line-height: 1.5; }
      main#page-about div.wrap section#about_contents ul li dl dd ul {
        width: 332px;
        height: 172px;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap; }
        main#page-about div.wrap section#about_contents ul li dl dd ul li {
          padding-top: 0px;
          line-height: 1.5; }
    main#page-about div.wrap section#about_contents ul span {
      display: block; }

@media screen and (max-width: 640px) {
  main#page-about div.sub_firstView {
    margin-top: 40px;
    margin-bottom: 64px; }
    main#page-about div.sub_firstView div.text {
      padding: 24px 12px; }
      main#page-about div.sub_firstView div.text p {
        margin-top: 16px; }
    main#page-about div.sub_firstView::before {
      width: 100%;
      height: 50%;
      top: 0;
      left: 0; }
    main#page-about div.sub_firstView::after {
      width: 100%;
      height: 50%;
      left: 0;
      right: auto; }
    main#page-about div.wrap section#about_contents h3 {
      padding: 32px 0px; }
      main#page-about div.wrap section#about_contents ul li {
        padding-top: 16px; }
        main#page-about div.wrap section#about_contents ul li dl {
          font-size: 0.75rem; }
          main#page-about div.wrap section#about_contents ul li dl dt {
            min-width: 112px; }
          main#page-about div.wrap section#about_contents ul li dl dd ul {
            width: 100%;
            height: auto;
            flex-wrap: initial; }
            main#page-about div.wrap section#about_contents ul li dl dd.cancel dl dt {
              min-width: 72px; } }

main#page-access div.firstView p {
  line-height: 2em; }
  main#page-access div.firstView p span {
    display: block; }
  main#page-access section#map {
    max-width: 1020px;
    margin: 132px auto 0;
    padding: 40px 0px;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    position: relative; }
  main#page-access section#map span {
    display: block; }
  main#page-access section#map div.left {
    height: 460px;
    width: 620px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: url(img/access/access_map.svg);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: center top;
    position: relative; }
  main#page-access section#map div.left img {
    width: 64px;
    margin-top: 96px; }
  main#page-access section#map div.block {
    background-color: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(0, 0, 0, 0.2);
    padding: 24px 112px 24px 44px;
    position: absolute;
    right: 24px; }
  main#page-access section#map div.block p {
    font-size: 1.25rem;
    line-height: 2.4em; }
  main#page-access section#map div.block address {
    font-style: initial;
    line-height: 2em; }
  main#page-access section#map div.block a {
    display: inline-block;
    margin-top: 40px;
    padding: 6px 56px 6px 18px;
    color: #fff;
    background-color: #210a06;
    background-image: url(img/access/aceess_map_link.svg);
    background-position: right 24px center;
    background-size: auto;
    background-repeat: no-repeat;
    text-decoration: none; }
  main#page-access section#notice {
    margin: 64px 0px 0px;
    padding: 0 12px; }
  main#page-access section#notice div.contents {
    max-width: 692px;
    width: 100%;
    margin: auto;
    padding: 100px 48px 40px;
    border: 1px solid rgba(0, 0, 0, 0.2);
    background-image: url(img/access/notice_train.svg);
    background-position: center top 24px;
    background-size: auto;
    background-repeat: no-repeat;
    box-sizing: border-box; }
  main#page-access section#notice div.contents p {
    font-size: 1.25rem;
    text-align: center; }
  main#page-access section#notice div.contents ul {
    margin-top: 24px; }
  main#page-access section#notice div.contents ul li {
    line-height: 2em; }
  main#page-access nav#access_link {
    max-width: 1020px;
    margin: 64px auto 0; }
  main#page-access nav#access_link ul {
    display: flex;
    justify-content: space-between; }
  main#page-access nav#access_link ul li {
    flex: 1;
    background-image: url(img/access/access_navi_link.svg);
    background-size: auto;
    background-position: center bottom 24px;
    background-repeat: no-repeat; }
  main#page-access nav#access_link ul li a {
    padding: 84px 0px;
    display: block;
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center top;
    text-align: center;
    text-decoration: none;
    color: #333;
    line-height: 1.5em; }
  main#page-access nav#access_link ul li a.car {
    background-image: url(img/access/link_car.svg);
    border-right: 1px solid rgba(0, 0, 0, 0.2); }
  main#page-access nav#access_link ul li a.train {
    background-image: url(img/access/link_train.svg);
    border-right: 1px solid rgba(0, 0, 0, 0.2); }
  main#page-access nav#access_link ul li a.bus {
    background-image: url(img/access/link_bus.svg);
    border-right: 1px solid rgba(0, 0, 0, 0.2); }
  main#page-access nav#access_link ul li a.ship {
    background-image: url(img/access/link_ship.svg); }
  main#page-access section.navi_common {
    max-width: 1020px;
    margin: 64px auto 0;
    padding: 0 12px; }
  main#page-access section.navi_common h3 {
    text-align: center;
    padding-top: 72px;
    font-size: 1.25rem;
    background-image: url(img/access/link_car.svg);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center top; }
  main#page-access section.navi_common ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 64px; }
  main#page-access section.navi_common ul li {
    max-width: 280px;
    width: 100%;
    margin-bottom: 56px; }
  main#page-access section.navi_common ul li div.list_block p {
    text-align: center;
    line-height: 2em;
    padding-top: 56px;
    background-image: url(img/access/link_car.svg);
    background-repeat: no-repeat;
    background-size: 48px;
    background-position: center top 8px; }
    main#page-access section.navi_common ul li div.list_block p span {
      display: block; }
    main#page-access section.navi_common ul li div.list_block ol {
      margin-top: 32px; }
    main#page-access section.navi_common ul li div.list_block ol li {
      display: inline-block;
      box-sizing: border-box;
      text-align: center;
      margin-bottom: 0px;
      padding: 16px 0px;
      text-align: center; }
    main#page-access section.navi_common ul li div.list_block ol li:first-of-type {
      background-color: #210a06;
      color: #fff; }
    main#page-access section.navi_common ul li div.list_block ol li:last-of-type {
      background-color: #210a06;
      color: #fff; }
    main#page-access section.navi_common ul li div.list_block ol li:nth-of-type(even) {
      padding: 24px 0px;
      background-image: url(img/access/access_flow_back.svg);
      background-position: center;
      background-repeat: no-repeat;
      background-size: auto; }
    main#page-access section.navi_common ul li div.list_block ol li:nth-of-type(odd) {
      border: 1px solid rgba(0, 0, 0, 0.2); }
  main#page-access section.navi_common div.announce {
    margin: 0 auto;
    max-width: 660px;
    width: 100%; }
  main#page-access section.navi_common div.announce h4 {
    font-size: 1.25rem;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    padding-left: 20px;
    background-image: url(img/access/access_announce_icon.svg);
    background-position: left top 4px;
    background-size: auto;
    background-repeat: no-repeat; }
  main#page-access section.navi_common div.announce ul {
    width: 100%;
    margin-top: 0px; }
  main#page-access section.navi_common div.announce ul li {
    width: 100%;
    max-width: initial; }
  main#page-access section.navi_common div.announce ul li ul.sub {
    margin-top: 24px; }
    main#page-access section.navi_common div.announce ul li ul.sub li {
      margin-bottom: 32px; }
  main#page-access section.navi_common div.announce ul li p {
    line-height: 1.75em; }
  main#page-access section.navi_common#navi_train h3 {
    background-image: url(img/access/link_train.svg); }
  main#page-access section.navi_common#navi_train ul {
    justify-content: center; }
  main#page-access section.navi_common#navi_train ul li:first-of-type {
    margin-right: 32px; }
  main#page-access section.navi_common#navi_train ul li div.list_block p {
    background-image: url(img/access/link_train.svg); }
  main#page-access section.navi_common#navi_bus h3 {
    background-image: url(img/access/link_bus.svg); }
  main#page-access section.navi_common#navi_bus ul {
    justify-content: center; }
  main#page-access section.navi_common#navi_bus ul li:first-of-type {
    margin-right: 32px; }
  main#page-access section.navi_common#navi_bus ul li div.list_block p {
    background-image: url(img/access/link_bus.svg); }
  main#page-access section.navi_common#navi_ship h3 {
    background-image: url(img/access/link_ship.svg); }
  main#page-access section.navi_common#navi_ship ul {
    justify-content: center; }
  main#page-access section.navi_common#navi_ship ul li div.list_block p {
    background-image: url(img/access/link_ship.svg); }

@media screen and (max-width: 1020px) {
  main#page-access section#map {
    padding: 0px 12px;
    flex-direction: column;
    align-items: center;
    margin: 48px auto 0; }
    main#page-access section#map div.block {
      position: initial; }
    main#page-access section#notice {
      margin: 132px 0px 0px; } }

@media screen and (max-width: 720px) {
  main#page-access section#map div.left {
    height: calc(456/613*100vw);
    width: calc(100vw - 24px);
    background-size: contain; }
    main#page-access section#map div.block {
      padding: 16px; }
      main#page-access section#map div.block p {
        font-size: 1rem;
        line-height: 2em; }
      main#page-access section#map div.block address {
        font-size: 0.875rem;
        line-height: 1.5em; }
      main#page-access section#map div.block a {
        margin-top: 16px;
        font-size: 0.75rem; }
    main#page-access section#notice div.contents {
      background-position: center top 16px;
      background-size: 40px;
      padding: 72px 12px 24px; }
      main#page-access section#notice div.contents p {
        font-size: 1rem; }
      main#page-access section#notice div.contents ul li {
        font-size: 0.75rem; }
    main#page-access nav#access_link {
      margin: 32px auto 0; }
    main#page-access nav#access_link ul {
      flex-wrap: wrap;
      justify-content: center; }
      main#page-access nav#access_link ul li {
        flex: initial;
        margin-top: 32px; }
        main#page-access nav#access_link ul li a {
          background-size: 48px;
          padding: 64px 0px 88px;
          width: 160px; }
          main#page-access nav#access_link ul li a.car {
            border: none; }
          main#page-access nav#access_link ul li a.bus {
            border: none; }
          main#page-access nav#access_link ul li a.train {
            border: none; } }

@media screen and (max-width: 640px) {
  main#page-access section.navi_common {
    padding: 0 12px;
    margin: 48px auto 0; }
    main#page-access section.navi_common h3 {
      font-size: 1rem; }
    main#page-access section.navi_common ul {
      flex-direction: column;
      align-items: center;
      margin-top: 32px; }
      main#page-access section.navi_common ul li div.list_block ol {
        font-size: 0.875rem; }
    main#page-access section.navi_common div.announce h4 {
      font-size: 1rem;
      line-height: 2em;
      background-position: left top 10px; }
      main#page-access section.navi_common div.announce ul li ul.sub {
        margin-top: 12px; }
        main#page-access section.navi_common div.announce ul li ul.sub li {
          margin-bottom: 16px; }
    main#page-access section.navi_common#navi_train ul li:first-of-type {
      margin-right: 0px;
      line-height: 1.5em;
      font-size: 0.875rem; }
    main#page-access section.navi_common#navi_bus ul li:first-of-type {
      margin-right: 0px; } }

main#page-agreement div.sub_firstView h2 {
  line-height: 2em; }
  main#page-agreement div.sub_firstView h2 span {
    display: block; }
  main#page-agreement div.wrap {
    padding-bottom: 64px; }
  main#page-agreement div.wrap section.sub_common ol li {
    margin-bottom: 40px; }
  main#page-agreement div.wrap section.sub_common ol li h3 {
    text-align: left; }
  main#page-agreement div.wrap section.sub_common ol li ol.sub_list &gt; li.list_block {
    list-style: auto;
    margin-top: 24px;
    margin-bottom: 16px;
    line-height: 2em; }
    main#page-agreement div.wrap section.sub_common ol li ol.sub_list &gt; li.list_block ul.number_list {
      margin-top: 32px; }
      main#page-agreement div.wrap section.sub_common ol li ol.sub_list &gt; li.list_block ul.number_list li {
        padding-bottom: 0px;
        margin-bottom: 16px; }
        main#page-agreement div.wrap section.sub_common ol li ol.sub_list &gt; li.list_block ul.number_list li ul.detail_list {
          text-indent: -2em;
          padding-left: 4em; }
  main#page-agreement div.wrap section#announce_table p {
    margin: 16px 0px; }
  main#page-agreement div.wrap section#announce_table div.one {
    margin-bottom: 64px; }
  main#page-agreement div.wrap section#announce_table table {
    border: 1px solid #333; }
  main#page-agreement div.wrap section#announce_table table.two_table tr th {
    padding: 24px 0; }
    main#page-agreement div.wrap section#announce_table table.two_table tr th#line {
      background: no-repeat left top / 100% 100% url(img/agreement/agreement-line.svg); }
  main#page-agreement div.wrap section#announce_table table span {
    display: block;
    margin-top: 4px; }
  main#page-agreement div.wrap section#announce_table table tr {
    border: 1px solid #333; }
  main#page-agreement div.wrap section#announce_table table tr th {
    padding: 8px 0;
    border: 1px solid #333; }
    main#page-agreement div.wrap section#announce_table table tr th.cols {
      position: relative;
      font-size: 0.875rem;
      line-height: 1.2em; }
    main#page-agreement div.wrap section#announce_table table tr th.cols span {
      right: 0;
      top: 0;
      position: absolute;
      width: 120px;
      padding: 0px 4px 0px 0px; }
      main#page-agreement div.wrap section#announce_table table tr th.cols span.tar {
        text-align: right; }
      main#page-agreement div.wrap section#announce_table table tr th.cols span.another {
        left: 0;
        right: auto;
        bottom: 0;
        top: auto;
        width: auto;
        padding: 0px 0px 4px 4px; }
  main#page-agreement div.wrap section#announce_table table tr td {
    padding: 16px 32px;
    border: 1px solid #333; }
    main#page-agreement div.wrap section#announce_table table tr td.title {
      padding: 0px 10px;
      writing-mode: vertical-rl; }
    main#page-agreement div.wrap section#announce_table table tr td ol li {
      padding-bottom: 0px;
      margin-bottom: 12px; }
      main#page-agreement div.wrap section#announce_table table tr td ol li ul {
        padding-left: 4em; }
        @media screen and (max-width: 768px) {
main#page-agreement div.wrap section#announce_table table tr td.title {
writing-mode: unset; }
main#page-agreement div.wrap section#announce_table table tr td.title span {
display: block;
width: 1em;
line-height: 1.25;
text-align: center; } }

@media screen and (max-width: 640px) {
  main#page-agreement div.wrap section.sub_common ol li ol.sub_list &gt; li.list_block {
    margin-top: 12px;
    font-size: 0.75rem; }
    main#page-agreement div.wrap section.sub_common ol li ol.sub_list &gt; li.list_block ul.number_list {
      margin-top: 16px; }
      main#page-agreement div.wrap section.sub_common ol li ol.sub_list &gt; li.list_block ul.number_list li {
        margin-bottom: 8px;
        font-size: 0.75rem; }
    main#page-agreement div.wrap section#announce_table table {
      width: 100%; }
    main#page-agreement div.wrap section#announce_table table tr th.cols span {
      font-size: 0.75rem;
      margin-top: 2px;
      padding: 0px 2px 0px 0px; }
      main#page-agreement div.wrap section#announce_table table tr th.cols span.another {
        padding: 0px 0px 2px 4px; }
    main#page-agreement div.wrap section#announce_table table tr td {
      padding: 16px 8px; }
    main#page-agreement table tr th {
      font-size: 0.75rem; }
    main#page-agreement table tr td {
      font-size: 0.75rem; } }

main.under_main#page-meal section.meal_content {
  max-width: 1020px;
  margin: auto;
  padding-bottom: 72px; }

main.under_main#page-meal section.meal_content h3 {
  font-size: 1.25rem;
  text-align: center;
  margin-bottom: 72px; }

main.under_main#page-meal section.meal_content div.above {
  display: flex;
  flex-direction: row-reverse;
  position: relative;
  margin: auto;
  margin-bottom: 24px; }

main.under_main#page-meal section.meal_content div.above div.inner {
  max-width: 200px;
  margin: 0 auto;
  display: flex;
  justify-content: flex-end;
  width: 100%; }

main.under_main#page-meal section.meal_content div.above div.inner h4 {
  writing-mode: vertical-rl;
  font-size: 1.5rem;
  line-height: 2em;
  letter-spacing: 0.05rem;
  padding: 0px 40px 0px 0px;
  width: 200px;
  box-sizing: border-box;
  height: calc(280/1905*100vw);
  max-height: 380px;
  min-height: 190px; }

main.under_main#page-meal section.meal_content div.above div.inner h4 span {
  display: block; }

main.under_main#page-meal section.meal_content div.above div.swiper-container {
  max-width: 1000px;
  width: 100%; }

main.under_main#page-meal section.meal_content div.above div.swiper-container::before {
  position: absolute;
  content: "";
  height: 100%;
  width: 130px;
  left: 0;
  z-index: 2;
  background: linear-gradient(to right, #fff 0%, rgba(255, 255, 255, 0.4) 40%, rgba(255, 255, 255, 0) 100%); }

main.under_main#page-meal section.meal_content div.above div.swiper-container ul.slider-wrapper {
  width: 100%;
  display: flex;
  justify-content: flex-end; }

main.under_main#page-meal section.meal_content div.above div.swiper-container ul.slider-wrapper li {
  margin-left: 24px; }

main.under_main#page-meal section.meal_content div.above div.swiper-container ul.slider-wrapper li img {
  width: calc(640/1280*100vw);
  max-width: 640px;
  height: auto;
  display: block; }

main.under_main#page-meal section.meal_content div.above div.swiper-container div.swiper-pagination {
  width: 240px;
  height: 40px; }

main.under_main#page-meal section.meal_content div.above div.swiper-container.container_reverse {
  right: auto;
  left: 192px; }

main.under_main#page-meal section.meal_content div.above div.swiper-container.container_reverse::before {
  content: none; }

main.under_main#page-meal section.meal_content div.above div.swiper-container.container_reverse::after {
  position: absolute;
  content: "";
  height: 100%;
  width: 130px;
  right: 0;
  top: 0;
  z-index: 2;
  background: linear-gradient(to left, #fff 0%, rgba(255, 255, 255, 0.4) 40%, rgba(255, 255, 255, 0) 100%); }

main.under_main#page-meal section.meal_content div.above div.swiper-container.container_reverse ul.swiper-wrapper {
  justify-content: initial; }

main.under_main#page-meal section.meal_content div.bottom {
  max-width: 1020px;
  margin: 32px auto 0;
  padding: 12px; }

main.under_main#page-meal section.meal_content div.bottom p {
  max-width: 640px;
  margin: 0 auto 32px;
  line-height: 2em; }

main.under_main#page-meal section.meal_content.reverse div.above div.inner {
  justify-content: flex-start;
  margin-left: 0px; }

main.under_main#page-meal section.meal_content.reverse div.above ul {
  margin-right: 0px;
  left: 0;
  justify-content: flex-end; }

main.under_main#page-meal section.meal_content#amakusa_sea {
  position: relative; }

main.under_main#page-meal section.meal_content#amakusa_sea::after {
  position: absolute;
  content: "";
  width: 578px;
  height: 326px;
  background-image: url(img/meal/slider_back1.svg);
  background-size: auto;
  background-position: center;
  background-repeat: no-repeat;
  right: 0;
  top: 112px;
  margin-right: -124px;
  z-index: -1; }

main.under_main#page-meal section.meal_content#ingridents {
  position: relative; }

main.under_main#page-meal section.meal_content#ingridents::before {
  position: absolute;
  content: "";
  width: 578px;
  height: 326px;
  background-image: url(img/meal/slider_back1.svg);
  background-size: auto;
  background-position: center;
  background-repeat: no-repeat;
  left: 0;
  top: 112px;
  margin-left: -124px;
  z-index: -1; }

main.under_main#page-meal section.meal_content#ingridents div.above {
  flex-direction: row; }

main.under_main#page-meal section.meal_content#ingridents div.above div.inner h4 {
  padding: 0px 0px 0px 40px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end; }

main.under_main#page-meal section.meal_content#ingridents div.above div.swiper-container.container_reverse {
  left: 0; }

main.under_main#page-meal section.meal_content#ingridents div.above div.swiper-container ul.slider-wrapper {
  justify-content: flex-start; }

main.under_main#page-meal section.meal_content#ingridents div.above div.swiper-container ul.slider-wrapper li {
  margin-left: 0;
  margin-right: 24px; }

main.under_main div.dining_wrap {
  max-width: 1400px;
  margin: auto;
  background-image: url(img/meal/dining_back1.svg), url(img/meal/dining_back2.svg), url(img/meal/dining_back3.svg);
  background-size: auto, auto, auto;
  background-position: left top, right top 240px, center bottom 224px;
  background-repeat: no-repeat, no-repeat, no-repeat; }

main.under_main div.dining_wrap section#dining {
  max-width: 800px;
  margin: 0 auto 24px;
  padding: 0 12px; }

main.under_main div.dining_wrap section#dining div.title {
  margin-bottom: 64px; }

main.under_main div.dining_wrap section#dining div.title h3 {
  text-align: center;
  font-size: 1.5rem;
  letter-spacing: 0.05rem;
  margin-bottom: 44px; }

main.under_main div.dining_wrap section#dining div.title p {
  padding-top: 224px;
  max-width: 800px;
  width: 100%;
  margin: auto;
  background-image: url(img/meal/dining_back.jpg);
  background-repeat: no-repeat;
  background-position: top;
  background-size: 800px;
  text-align: center; }

main.under_main div.dining_wrap section#dining ul.dining_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li {
  max-width: 360px;
  width: 100%;
  display: flex;
  margin-bottom: 64px;
  flex-direction: column-reverse; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li p {
  order: -1;
  padding-top: 16px; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li h4 {
  line-height: 2em;
  padding-bottom: 16px;
  margin-top: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li h4 span {
  display: block; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.image_list {
  position: relative;
  height: 360px; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.image_list li {
  position: absolute;
  top: 0;
  left: 0; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.image_list li img {
  max-width: 360px;
  width: 100%;
  display: block;
  padding-bottom: 16px; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.image_list li:not(:first-of-type) {
  display: none; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.button_list {
  display: flex;
  justify-content: space-between;
  width: 84px;
  margin-top: 12px; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.button_list li a {
  text-indent: -9999px;
  display: block;
  width: 12px;
  height: 12px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 32px;
  box-sizing: border-box; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.button_list li a.now_meal {
  background-color: #800d28; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.button_list li a.now_meal2 {
  background-color: #800d28; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.button_list li a.now_meal3 {
  background-color: #800d28; }

main.under_main div.dining_wrap section#dining ul.dining_list &gt; li ul.button_list li a.now_meal4 {
  background-color: #800d28; }

@media screen and (max-width: 768px) {
  main#page-meal div.dining_wrap section#dining ul.dining_list {
    flex-direction: column;
    align-items: center; } }

@media screen and (max-width: 640px) {
  main#page-meal div.dining_wrap section#dining div.title p {
    font-size: 0.75rem;
    line-height: 1.5em; }

  main.under_main#page-meal section.meal_content {
    padding-bottom: 24px; }

  main.under_main#page-meal section.meal_content div.above div.inner {
    width: 80px; }

  main.under_main#page-meal section.meal_content h3 {
    margin-bottom: 24px; }

  main.under_main#page-meal section.meal_content div.above div.inner h4 {
    width: 100%;
    padding-right: 12px;
    padding-left: 12px;
    line-height: 1.5;
    font-size: 1.25rem;
    min-height: 144px; }

  main.under_main#page-meal section.meal_content div.bottom {
    margin-top: 0; }

  main.under_main#page-meal section.meal_content div.above {
    margin-bottom: 0; }

  main.under_main#page-meal section.meal_content div.above div.swiper-container div.swiper-pagination {
    display: none; }

  main.under_main#page-meal section.meal_content#ingridents div.above div.inner h4 {
    padding: 0px 0px 0px 8px; } }

@media screen and (max-width: 400px) {
  main#page-meal div.dining_wrap section#dining ul.dining_list &gt; li ul.image_list {
    height: calc(100vw - 24px); }

  main.under_main#page-meal section.meal_content div.above div.swiper-container {
    width: calc(100vw - 80px); }

  main#page-meal div.dining_wrap section#dining div.title p {
    font-size: 0.75rem;
    line-height: 1.5em; } }

main#page-multilingual ul.click_list {
  width: 84px;
  display: flex;
  justify-content: space-between;
  display: none; }

main#page-multilingual ul.click_list li {
  width: 16px;
  height: 16px; }

main#page-multilingual ul.click_list li a {
  text-indent: -9999px;
  width: 100%;
  height: 100%;
  border: 1px solid rgba(0, 0, 0, 0.2);
  display: block;
  border-radius: 32px;
  box-sizing: border-box; }

main#page-multilingual video {
  min-width: 100%;
  display: block;
  min-height: 100vh;
  z-index: -99;
  top: 0;
  left: 0;
  position: fixed; }

main#page-multilingual div.cacth_wrap {
  height: 100vh;
  min-height: 560px; }

main#page-multilingual div.cacth_wrap section#catch {
  width: 100%;
  display: flex;
  height: 100vh;
  justify-content: center;
  align-items: flex-start;
  overflow: hidden;
  position: relative;
  background: rgba(0, 0, 0, 0.2); }

main#page-multilingual div.cacth_wrap section#catch h2.title {
  position: absolute;
  font-size: 1.5rem;
  top: calc(50% - 72px);
  line-height: 2em;
  color: #fff;
  letter-spacing: 0.1rem; }

main#page-multilingual div.cacth_wrap section#catch h2.title span {
  display: block; }

main#page-multilingual div.cacth_wrap section#catch a#scroll {
  width: 64px;
  height: 64px;
  position: absolute;
  left: calc(50vw - 32px);
  text-indent: -9999px;
  background-image: url(img/top/scroll_link.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center;
  bottom: calc(50% - 192px); }

main#page-multilingual div#whiteBack.wrap {
  position: relative;
  min-height: 100vh;
  z-index: -1; }

main#page-multilingual div#whiteBack.wrap::before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #fff;
  top: 0;
  left: 0;
  background-image: url(img/greet/dolphin3-01.svg), url(img/greet/dolphin4-01.svg);
  background-size: auto, auto;
  background-repeat: no-repeat, no-repeat;
  background-position: top calc(30%) right calc(24%), top calc(40%) right calc(32%);
  opacity: 0;
  z-index: -2; }

main#page-multilingual div#whiteBack.wrap.fadein {
  position: relative; }

main#page-multilingual div#whiteBack.wrap.fadein::before {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  background-color: #fff;
  top: 0;
  left: 0;
  background-image: url(img/greet/dolphin3-01.svg), url(img/greet/dolphin4-01.svg);
  background-size: auto, auto;
  background-repeat: no-repeat, no-repeat;
  background-position: top calc(30%) right calc(24%), top calc(40%) right calc(32%);
  opacity: 1;
  z-index: -2;
  transition: all 2s ease; }

main#page-multilingual div#whiteBack.wrap section#greet {
  width: 100%;
  margin: auto;
  min-height: 100vh;
  position: relative;
  display: flex;
  justify-content: center; }

main#page-multilingual div#whiteBack.wrap section#greet::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin2-01.svg), url(img/greet/dolphin5-01.svg);
  background-size: cover, auto, auto;
  background-position: center, top calc(50% + 40px) left calc(30%), top calc(32%) left calc(8%);
  background-repeat: no-repeat, no-repeat, no-repeat;
  z-index: -1;
  opacity: 0;
  transition: all 1s ease;
  transition-delay: 1s; }

main#page-multilingual div#whiteBack.wrap section#greet.fadein2 {
  position: relative; }

main#page-multilingual div#whiteBack.wrap section#greet.fadein2::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-image: url(img/greet/greet_back.svg), url(img/greet/dolphin2-01.svg), url(img/greet/dolphin5-01.svg);
  background-size: cover, auto, auto;
  background-position: center, top calc(50% + 40px) left calc(30%), top calc(32%) left calc(8%);
  background-repeat: no-repeat, no-repeat, no-repeat;
  z-index: -1;
  opacity: 1;
  transition: all 1s ease;
  transition-delay: 1s; }

main#page-multilingual div#whiteBack.wrap section#greet div.contents {
  padding: 72px 102px;
  position: absolute;
  top: calc(50% - 322px); }

main#page-multilingual div#whiteBack.wrap section#greet div.contents h2 {
  font-size: 1.25rem;
  line-height: 2.4em;
  letter-spacing: 0.05rem;
  padding-top: 112px;
  text-align: center;
  background-image: url(img/greet/greet_roman_icon.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: top center;
  margin: auto; }

main#page-multilingual div#whiteBack.wrap section#greet div.contents h2 span {
  display: block; }

main#page-multilingual div#whiteBack.wrap section#greet div.contents div.text {
  max-width: 520px;
  width: 100%;
  margin: 108px auto 0px; }

main#page-multilingual div#whiteBack.wrap section#greet div.contents div.text p {
  line-height: 2em;
  letter-spacing: 0.01rem;
  text-align: center; }

main#page-multilingual div#whiteBack.wrap section#greet div.contents div.text p span {
  display: block; }

main#page-multilingual section#place_announce {
  background-color: #fff;
  padding: 64px 12px 0px; }

main#page-multilingual section#place_announce div.wrap div.inner_content {
  max-width: 1020px;
  margin: auto;
  display: flex;
  position: relative;
  justify-content: flex-end;
  flex-direction: row-reverse; }

main#page-multilingual section#place_announce div.wrap div.inner_content div.right {
  max-width: 540px;
  width: 100%;
  line-height: 1.75em; }

main#page-multilingual section#place_announce div.wrap div.inner_content div.right div.text {
  margin-top: 16px; }

main#page-multilingual section#place_announce div.wrap div.inner_content div.right div.text p {
  padding-bottom: 40px; }

main#page-multilingual section#place_announce div.wrap div.inner_content div.right ul {
  width: 332px;
  display: flex;
  justify-content: space-between; }

main#page-multilingual section#place_announce div.wrap div.inner_content div.right ul li a {
  padding-left: 32px;
  background-image: url(img/multilingual/place_link.svg);
  background-position: left;
  background-repeat: no-repeat;
  background-size: auto;
  min-height: 24px;
  display: block; }

main#page-multilingual section#place_announce div.wrap div.inner_content div.left {
  max-width: 584px;
  margin-right: 40px; }

main#page-multilingual section#place_announce div.wrap div.inner_content div.left img {
  width: 100%;
  display: block; }

main#page-multilingual div.common {
  background-color: #fff;
  position: relative;
  padding-bottom: 64px;
  padding-top: 64px; }

main#page-multilingual div.common div.menu_wrap {
  z-index: 0;
  position: relative;
  width: calc(100vw - ((100vw - 1040px) / 2));
  max-width: calc(100vw - 80px);
  padding-bottom: 32px; }

main#page-multilingual div.common div.menu_wrap section.linear_content {
  position: relative;
  height: 524px;
  overflow: hidden; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text {
  max-width: 1040px;
  margin: auto;
  background-image: url(img/content/cook_back.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: top 120px right 20px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content {
  display: flex;
  justify-content: space-between;
  max-width: 894px;
  width: 100%;
  padding: 124px 24px 24px;
  box-sizing: border-box; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content h2 {
  color: #fff;
  font-size: 2rem;
  letter-spacing: 0.4rem;
  width: 256px;
  height: 256px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(img/content/title_frame.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content h2 span {
  display: block; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block {
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-left: 12px; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block h3 {
  font-size: 1.25rem;
  letter-spacing: 0.05rem;
  line-height: 2.4em; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block h3 span {
  display: block; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block p {
  line-height: 2em; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block p span {
  display: block; }

main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block a {
  padding: 4px 0px 4px 32px;
  background-image: url(img/content/about_rink.svg);
  background-size: auto;
  background-position: left center;
  background-repeat: no-repeat; }

main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  display: flex; }

main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  background-color: rgba(0, 0, 0, 0.125);
  z-index: 1; }

main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea li {
  width: calc(100vw - ((100vw - 1040px) / 2) + 60px);
  height: 100%;
  display: none;
  animation: fade_event 8s linear 0s;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0; }

main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea li img {
  display: none; }

main#page-multilingual div#mutli_cuisine section#cooking ul.imagearea li.one {
  display: list-item;
  background-image: url(img/content/cooking_photo1.jpg); }

main#page-multilingual div#mutli_cuisine section#cooking ul.imagearea li.two {
  background-image: url(img/content/cooking_photo2.jpg); }

main#page-multilingual div#mutli_cuisine section#cooking ul.imagearea li.three {
  background-image: url(img/content/cooking_photo3.jpg); }

main#page-multilingual div#mutli_cuisine section#cooking ul.imagearea li.four {
  background-image: url(img/content/cooking_photo4.jpg); }

main#page-multilingual div#mutli_cuisine section#cooking ul.imagearea li.five {
  background-image: url(img/content/cooking_photo5.jpg); }

main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s2 li.two, main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s3 li.three, main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s4 li.four, main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s5 li.five {
  position: absolute;
  top: 0;
  left: 0; }

main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s2 li.two img, main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s3 li.three img, main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s4 li.four img, main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea.s5 li.five img {
  opacity: 1;
  animation: move 4s linear;
  object-fit: cover; }

main#page-multilingual div.common div.menu_wrap section.linear_content#room div.text {
  background-image: url(img/content/room_back.svg);
  background-size: auto;
  background-position: top 120px right 20px;
  background-repeat: no-repeat; }

main#page-multilingual div.common div.menu_wrap section.linear_content#spring div.text {
  background-image: url(img/content/spring_back.svg);
  background-size: auto;
  background-position: top 120px left 20px;
  background-repeat: no-repeat; }

main#page-multilingual div.common div.menu_wrap section.linear_content#spring div.text div.content {
  flex-direction: row-reverse; }

main#page-multilingual div#multi_spa section#spring ul.imagearea li.one {
  display: list-item;
  background-image: url(img/content/spring_photo1.jpg); }

main#page-multilingual div#multi_spa section#spring ul.imagearea li.two {
  background-image: url(img/content/spring_photo2.jpg); }

main#page-multilingual div#multi_spa section#spring ul.imagearea li.three {
  background-image: url(img/content/spring_photo3.jpg); }

main#page-multilingual div#multi_spa section#spring ul.imagearea li.four {
  background-image: url(img/content/spring_photo4.jpg); }

main#page-multilingual div#multi_spa section#spring ul.imagearea li.five {
  background-image: url(img/content/spring_photo5.jpg); }

main#page-multilingual div#multi_spa ul.pagenation li.now_muliti {
  background-color: #484a80; }

main#page-multilingual div#multi_room section#room ul.imagearea li.one {
  display: list-item;
  background-image: url(img/content/room_photo1.jpg); }

main#page-multilingual div#multi_room section#room ul.imagearea li.two {
  background-image: url(img/content/room_photo2.jpg); }

main#page-multilingual div#multi_room section#room ul.imagearea li.three {
  background-image: url(img/content/room_photo3.jpg); }

main#page-multilingual div#multi_room section#room ul.imagearea li.four {
  background-image: url(img/content/room_photo4.jpg); }

main#page-multilingual div#multi_room section#room ul.imagearea li.five {
  background-image: url(img/content/room_photo5.jpg); }

main#page-multilingual div#multi_room ul.pagenation li.now_muliti {
  background-color: #5e800a; }

main#page-multilingual div.common div.menu_wrap ul.pagenation {
  max-width: 112px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  position: absolute;
  right: 0;
  bottom: 0; }

main#page-multilingual div.common div.menu_wrap ul.pagenation#blue {
  left: 0;
  bottom: 0; }

main#page-multilingual div.common div.menu_wrap ul.pagenation li {
  text-indent: -9999px;
  width: 16px;
  height: 16px;
  border: 1px solid rgba(0, 0, 0, 0.25); }

main#page-multilingual div#mutli_cuisine div.menu_wrap ul.pagenation li.now_muliti {
  background-color: #800d28; }

main#page-multilingual div.common div.menu_wrap ul.pagenation li a {
  width: 100%;
  height: 100%;
  display: block; }

main#page-multilingual div.common p.long_text {
  max-width: 900px;
  width: 100%;
  margin: 64px auto 0px;
  text-align: center;
  line-height: 2em;
  box-sizing: border-box;
  padding: 12px; }

main#page-multilingual div.common p.long_text span {
  display: block; }

main#page-multilingual div.common div.meal_list {
  max-width: 1020px;
  margin: 64px auto 0px;
  box-sizing: border-box;
  padding: 12px;
  display: flex;
  justify-content: space-between; }

main#page-multilingual div.common div.meal_list div.left {
  max-width: 280px;
  width: 100%;
  margin-right: 12px; }

main#page-multilingual div.common div.meal_list div.left h3 {
  font-size: 1.25rem;
  margin-bottom: 12px; }

main#page-multilingual div.common div.meal_list div.left p {
  line-height: 2em; }

main#page-multilingual div.common div.meal_list div.left ul li {
  line-height: 2em;
  cursor: pointer; }

main#page-multilingual div.common div.meal_list div.left ul li.now a {
  opacity: 1;
  background: no-repeat left center url(img/multilingual/dining_now_icon.svg); }

main#page-multilingual div.common div.meal_list div.left ul li a {
  opacity: 0.25;
  padding-left: 24px; }

main#page-multilingual div.common div.meal_list div.right {
  max-width: 620px;
  width: 100%; }

main#page-multilingual div.common div.meal_list div.right div.box {
  display: flex;
  align-items: center;
  padding-bottom: 16px; }

main#page-multilingual div.common div.meal_list div.right div.box ul {
  width: 100%; }

main#page-multilingual div.common div.meal_list div.right div.box ul li {
  display: flex;
  align-items: center;
  width: 100%;
  display: none; }

main#page-multilingual div.common div.meal_list div.right div.box ul li.now {
  display: flex; }

main#page-multilingual div.common div.meal_list div.right div.box ul li img {
  width: 100%;
  max-width: 50%;
  display: block; }

main#page-multilingual div.common div.meal_list div.right div.box ul li p {
  width: 100%; }

main#page-multilingual div.common div.meal_list div.right div.box p {
  margin-left: 32px; }

main#page-multilingual div.common div.meal_list div.right div.box p span {
  display: block;
  margin: 16px 0; }

main#page-multilingual div#multi_spa {
  background-color: #fff;
  overflow: hidden; }

main#page-multilingual div#multi_spa div.menu_wrap {
  margin-left: calc((100vw - 1040px) / 2); }

main#page-multilingual div#multi_spa section#announce_list {
  max-width: 1020px;
  margin: auto;
  padding: 12px;
  box-sizing: border-box; }

main#page-multilingual div#multi_spa section#announce_list div.common_block {
  max-width: 1020px;
  padding-top: 96px;
  margin: 0px auto 80px;
  position: relative; }

main#page-multilingual div#multi_spa section#announce_list div.common_block h4 {
  font-size: 1.25rem;
  line-height: 1.6em;
  text-align: center;
  margin-bottom: 32px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block h4 span {
  display: block; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text {
  max-width: 478px;
  width: 100%;
  line-height: 2em;
  padding-left: 24px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text table {
  margin-top: 16px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  padding: 16px 0px;
  display: block; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text table tr {
  padding: 4px 0px;
  display: block; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text table tr td {
  letter-spacing: 0.05rem; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text table tr td span {
  display: block; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text table tr td:first-of-type {
  min-width: 144px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.image_block {
  max-width: 510px;
  width: 100%; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.image_block ul.image_list {
  padding-bottom: 16px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.image_block ul.image_list li {
  display: none; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.image_block ul.image_list li:first-child {
  display: block; }

main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.image_block ul.image_list li img {
  width: 100%;
  display: block; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second {
  padding-top: 16px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second::before {
  background-image: url(img/spa/spa_back2.svg);
  background-position: top right;
  width: 332px;
  right: 0;
  top: -56px;
  left: auto;
  margin-left: 0px;
  margin-right: -114px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second div.container div.text {
  max-width: 716px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second div.container div.text h5 {
  font-size: 1rem; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second div.container div.text h5 span {
  font-size: 1.125rem;
  display: block; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second div.container div.image_block {
  max-width: 272px;
  width: 100%; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second#minarunoyu {
  padding-bottom: 64px;
  margin: 0px auto; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second#minarunoyu::before {
  background-image: url(img/spa/spa_back3.svg);
  background-position: bottom right;
  width: 384px;
  right: auto;
  left: 0;
  bottom: 0;
  top: auto;
  margin-left: -132px;
  padding-bottom: 64px; }

main#page-multilingual div#multi_spa section#announce_list div.common_block.second#minarunoyu div.container {
  flex-direction: row-reverse; }

main#page-multilingual div#multi_room section#room_announce {
  max-width: 1020px;
  margin: 64px auto 0;
  display: flex;
  justify-content: space-between;
  padding: 12px; }

main#page-multilingual div#multi_room section#room_announce ul.link_list {
  max-width: 276px; }

main#page-multilingual div#multi_room section#room_announce ul.link_list li {
  cursor: pointer;
  margin-bottom: 20px; }

main#page-multilingual div#multi_room section#room_announce ul.link_list li.now a {
  opacity: 1;
  background: no-repeat left center url(img/multilingual/dining_now_icon.svg); }

main#page-multilingual div#multi_room section#room_announce ul.link_list li a {
  line-height: 1.5em;
  opacity: 0.25;
  padding-left: 24px; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents {
  max-width: 720px;
  display: flex;
  flex-direction: column-reverse; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li {
  display: none;
  flex-direction: column-reverse; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li.now {
  display: flex; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box {
  max-width: 640px;
  margin-top: 32px; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box div.text h4 {
  line-height: 2em; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box div.text h4 span {
  display: block;
  font-size: 1.125rem; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box div.text p {
  margin-top: 24px;
  line-height: 2em; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box div.text p span {
  display: block; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table {
  width: 100%; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.one {
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.one tr {
  padding-bottom: 24px;
  display: block; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.one tr:first-of-type {
  padding-top: 24px; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.one tr td:first-of-type {
  min-width: 222px; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding: 24px 0px;
  display: block; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two tr {
  display: flex;
  align-items: baseline; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two tr td:last-of-type {
  max-width: 448px;
  width: 100%;
  margin-left: 40px; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two tr td:last-of-type ul {
  display: flex;
  flex-wrap: wrap; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two tr td:last-of-type ul li {
  padding-right: 12px;
  line-height: 2em;
  position: relative; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two tr td:last-of-type ul li::after {
  position: absolute;
  content: "";
  width: 1px;
  height: 16px;
  background-color: #333;
  right: 6px;
  top: 8px;
  transform: rotate(12deg); }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two tr td:last-of-type ul li:last-of-type::after {
  content: none; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.image_block {
  padding-bottom: 24px;
  position: relative; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.image_block ul.image_list {
  max-width: 600px;
  width: 100%; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.image_block ul.image_list li img {
  width: 100%; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.image_block ul.click_list {
  width: 84px;
  display: flex;
  position: absolute;
  justify-content: space-between;
  bottom: 0;
  display: none; }

main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.image_block ul.click_list li a {
  display: block;
  text-indent: -9999px;
  width: 12px;
  height: 12px;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 32px;
  box-sizing: border-box; }

main#page-multilingual div.news_wrap {
  width: 100%;
  background-color: #fff;
  display: flex;
  justify-content: center; }

main#page-multilingual div.news_wrap section#news_list {
  max-width: 1040px;
  margin: auto;
  padding: 56px 0px; }

main#page-multilingual div.news_wrap section#news_list h2 {
  font-size: 1.5rem;
  margin-bottom: 32px;
  text-align: center; }

main#page-multilingual div.news_wrap section#news_list ul li {
  margin-bottom: 16px; }

main#page-multilingual div.news_wrap section#news_list ul li a {
  text-decoration: none;
  color: #333; }

main#page-multilingual div.news_wrap section#news_list ul li a dl {
  display: flex; }

main#page-multilingual div.news_wrap section#news_list ul li a dl dd {
  padding-left: 32px;
  background-image: url(img/news/news_mini_icon.svg);
  background-size: auto;
  background-position: left 16px center;
  background-repeat: no-repeat; }

main#page-multilingual div.news_wrap a.link {
  padding: 4px 0px 4px 32px;
  background-image: url(img/news/news_link.svg);
  background-size: auto;
  background-position: center left calc(50% - 56px);
  background-repeat: no-repeat;
  display: block;
  text-align: center;
  margin: 64px 0 0; }

main#page-multilingual div.access_wrap {
  width: 100%;
  background-color: #fff; }

main#page-multilingual div.access_wrap section#multi_map div.above {
  height: calc(450/1200*100vw);
  position: relative;
  padding-top: 256px; }

main#page-multilingual div.access_wrap section#multi_map div.above h3 {
  letter-spacing: 0.1rem;
  position: absolute;
  line-height: 1.5em;
  left: calc(50vw - 128px);
  width: 256px;
  height: 256px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  background-image: url(img/meal/title_frame.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  top: 24px; }

main#page-multilingual div.access_wrap section#multi_map div.above iframe {
  width: 100%;
  height: 100%; }

main#page-multilingual div.access_wrap section#multi_map div.bottom {
  max-width: 1020px;
  margin: auto;
  padding: 48px 0px;
  position: relative; }

main#page-multilingual div.access_wrap section#multi_map div.bottom h4 {
  max-width: 300px;
  width: 100%;
  padding: 16px 0px 16px 240px;
  background-image: url(img/multilingual/roman_logo.svg);
  background-repeat: no-repeat;
  background-position: left;
  background-size: auto;
  letter-spacing: 0.1rem;
  margin: auto;
  line-height: 2em; }

main#page-multilingual div.access_wrap section#multi_map div.bottom address {
  font-style: initial;
  text-align: center;
  margin-top: 16px;
  letter-spacing: 0.1rem; }

main#page-multilingual div.access_wrap section#multi_map div.bottom p {
  text-align: center;
  margin-top: 16px; }

main#page-multilingual div.access_wrap section#multi_map div.bottom a {
  color: #fff;
  padding: 8px 40px 8px 16px;
  background-color: #210a06;
  position: absolute;
  top: 0;
  right: 0;
  background-image: url(img/multilingual/Googlemap_link.svg);
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: auto; }

main#page-multilingual div.access_wrap section#traffic_access {
  max-width: 1020px;
  margin: 64px auto 0; }

main#page-multilingual div.access_wrap section#traffic_access h4 {
  font-size: 1.25rem;
  text-align: center; }

main#page-multilingual div.access_wrap section#traffic_access p {
  margin-top: 16px;
  text-align: center; }

main#page-multilingual div.access_wrap section#traffic_access img {
  margin: 40px auto 0;
  display: block;
  width: 100%; }

main#page-multilingual div.Sightseeing_wrap {
  background-color: #fff; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing {
  max-width: 1020px;
  padding: 64px 0px;
  margin: auto; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.text h3 {
  padding: 128px;
  background-image: url(img/meal/title_frame.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  text-align: center;
  font-size: 1.5rem; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing nav {
  margin: 40px auto; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul {
  display: flex; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul li {
  cursor: pointer; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul li.now a {
  border-bottom: solid 2px #000;
  opacity: 1;
  background: no-repeat center bottom 16px url(img/multilingual/dining_now_icon.svg); }

main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul li a {
  display: block;
  line-height: 1.5em;
  padding: 0px 64px 40px;
  text-align: center;
  opacity: 0.25; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul li a span {
  display: block; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents {
  display: none; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents.now {
  display: block;
  padding: 0 12px; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents h4 {
  text-align: center;
  font-size: 1.5rem; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents p {
  margin-top: 40px;
  text-align: center;
  line-height: 2em;
  letter-spacing: 0.1rem; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents p span {
  display: block; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: relative; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li {
  max-width: 300px;
  width: 100%;
  display: flex;
  margin-bottom: 48px;
  flex-direction: column; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li img {
  width: 100%;
  display: block;
  order: -1; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li h5 {
  margin: 24px 0px 16px;
  font-weight: normal; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li p {
  line-height: 1.5em;
  margin-bottom: 24px;
  margin-top: 12px; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li ul.guide {
  margin-top: 0px;
  padding-top: 20px;
  border-top: 1px solid rgba(0, 0, 0, 0.2); }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li ul.guide li {
  margin-bottom: 0px;
  padding-left: 20px;
  background-image: url(img/sightseeing/guide_icon.svg);
  background-size: auto;
  background-position: top 4px left;
  background-repeat: no-repeat;
  line-height: 1.5em; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li ul.guide li.tel {
  background-image: url(img/sightseeing/guide_tel.svg);
  margin-top: 8px; }

main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li ul.guide li.time {
  margin-top: 8px;
  background-image: url(img/sightseeing/guide_time.svg); }

main#page-multilingual div.about_roman_wrap {
  background-color: #f7f7f7;
  overflow: hidden; }

main#page-multilingual div.about_roman_wrap section#about_romankan {
  padding: 72px 12px;
  max-width: 1020px;
  margin: auto;
  position: relative; }

main#page-multilingual div.about_roman_wrap section#about_romankan::after {
  position: absolute;
  content: "";
  width: 1280px;
  height: 1090px;
  background-image: url(img/multilingual/roman_about_wrap.svg);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center;
  top: 0; }

main#page-multilingual div.about_roman_wrap section#about_romankan h3 {
  padding-bottom: 40px;
  font-size: 1.5rem;
  text-align: center;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

main#page-multilingual div.about_roman_wrap section#about_romankan dl {
  display: flex;
  padding-top: 24px; }

main#page-multilingual div.about_roman_wrap section#about_romankan dl dt {
  min-width: 200px;
  line-height: 1.5em; }

main#page-multilingual div.about_roman_wrap section#about_romankan dl dd {
  line-height: 1.5em; }

main#page-multilingual div.about_roman_wrap section#about_romankan dl dd ul {
  max-width: 332px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

main#page-multilingual div.about_roman_wrap section#about_romankan dl dd ul li {
  width: 144px;
  line-height: 1.5em; }

main#page-multilingual div.about_roman_wrap section#about_romankan dl dd ul.long {
  width: auto;
  max-width: initial;
  display: block; }

main#page-multilingual div.about_roman_wrap section#about_romankan dl dd ul.long li {
  width: auto;
  line-height: 1.75em; }

@media screen and (max-width: 1156px) {
  main#page-multilingual div#multi_spa div.menu_wrap.onsen {
    margin-left: 80px; } }

@media screen and (max-width: 640px) {
  main#page-multilingual video {
    min-height: 560px;
    width: auto; } }

@media screen and (max-width: 640px) {
  main#page-multilingual video {
    width: auto;
    min-width: 100%;
    height: 414px;
    min-height: 0; }

  main#page-multilingual div.cacth_wrap {
    height: 414px;
    min-height: 0; }

  main#page-multilingual div.cacth_wrap section#catch {
    height: 100%; }

  main#page-multilingual div.cacth_wrap section#catch h2.title {
    font-size: 1rem; }

  main#page-multilingual div.cacth_wrap section#catch a#scroll {
    width: 44px;
    height: 44px;
    bottom: 116px;
    background-size: contain; }

  main#page-multilingual div#whiteBack.wrap.fadein::before {
    background-size: 80px; }

  main#page-multilingual div#whiteBack.wrap section#greet.fadein2::before {
    background-size: cover, 80px, 80px; }

  main#page-multilingual div#whiteBack.wrap section#greet div.contents {
    padding: 12px; }

  main#page-multilingual section#place_announce {
    padding-top: 40px; }

  main#page-multilingual section#place_announce div.wrap div.inner_content {
    flex-direction: column; }

  main#page-multilingual section#place_announce div.wrap div.inner_content div.right {
    margin-bottom: 24px; }

  main#page-multilingual section#place_announce div.wrap div.inner_content div.right div.text p {
    padding-bottom: 12px; }

  main#page-multilingual section#place_announce div.wrap div.inner_content div.right ul {
    width: 100%; }

  main#page-multilingual section#place_announce div.wrap div.inner_content div.right ul li a {
    font-size: 0.75rem; }

  main#page-multilingual section#place_announce div.wrap div.inner_content div.left {
    margin-right: 0; }

  main#page-multilingual div.common {
    padding-bottom: 24px;
    padding-top: 24px; }

  main#page-multilingual div.common div.menu_wrap {
    width: calc(100vw - 24px);
    max-width: 100%;
    padding-bottom: 32px; }

  main#page-multilingual div.common div.menu_wrap section.linear_content {
    height: calc(364px + 2922/4600*100vw); }

  main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content {
    padding: 40px 12px;
    flex-direction: column;
    justify-content: center;
    align-items: center; }

  main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content h2 {
    padding: 0;
    background-size: contain;
    font-size: 1rem;
    width: 120px;
    height: 120px;
    color: #333;
    background-image: url(img/content/title_frame_sp.svg); }

  main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block {
    color: #333; }

  main#page-multilingual div.common div.menu_wrap section.linear_content div.text div.content div.block h3 {
    font-size: 0.875rem;
    line-height: 2;
    margin-bottom: 12px; }

  main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea:before {
    height: calc(2622/4600*100vw);
    top: auto;
    bottom: 0; }

  main#page-multilingual div.common div.menu_wrap section.linear_content ul.imagearea li {
    height: calc(2622/4600*100vw);
    top: auto;
    bottom: 0;
    background-size: contain;
    background-position: left; }

  main#page-multilingual div.common div.menu_wrap section.linear_content#spring div.text div.content {
    padding: 40px 12px;
    flex-direction: column;
    justify-content: center;
    align-items: center; }

  main#page-multilingual div.common div.menu_wrap ul.pagenation {
    width: 84px; }

  main#page-multilingual div.common div.menu_wrap ul.pagenation li {
    width: 12px;
    height: 12px; }

  main#page-multilingual div.common p.long_text {
    margin-top: 24px; }

  main#page-multilingual div.common div.meal_list {
    flex-direction: column;
    max-width: 100%; }

  main#page-multilingual div.common div.meal_list div.left {
    margin-bottom: 12px; }

  main#page-multilingual div#multi_spa div.menu_wrap.onsen {
    margin-left: 40px; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block {
    padding-top: 24px;
    margin-bottom: 24px; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block h4 {
    margin-bottom: 12px; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block div.container {
    flex-direction: column; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text {
    padding-left: 0; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block div.container div.text table {
    font-size: 0.75rem;
    line-height: 1.5; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block.second div.container div.image_block {
    max-width: 100%;
    margin-top: 12px; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block.second#minarunoyu {
    padding-bottom: 0; }

  main#page-multilingual div#multi_spa section#announce_list div.common_block.second#minarunoyu div.container {
    flex-direction: column; }

  main#page-multilingual div#multi_room section#room_announce {
    flex-direction: column; }

  main#page-multilingual div#multi_room section#room_announce ul.link_list {
    max-width: 100%; }

  main#page-multilingual div#multi_room section#room_announce ul.link_list li {
    margin-bottom: 12px; }

  main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box {
    margin-top: 0; }

  main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box div.text p {
    padding-bottom: 12px; }

  main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table {
    font-size: 0.75rem; }

  main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.one tr {
    padding-top: 12px;
    padding-bottom: 12px; }

  main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.one tr:first-of-type {
    padding-top: 12px; }

  main#page-multilingual div#multi_room section#room_announce div.announce_contents ul.announce_contents_lists &gt; li div.text_box table.two {
    padding: 12px 0; }

  main#page-multilingual div.access_wrap section#multi_map div.above {
    padding-top: 180px; }

  main#page-multilingual div.access_wrap section#multi_map div.above h3 {
    width: 160px;
    height: 160px;
    font-size: 0.75rem;
    left: calc(50vw - 80px); }

  main#page-multilingual div.access_wrap section#multi_map div.bottom h4 {
    padding: 80px 12px 12px 12px;
    background-position: center top;
    text-align: center; }

  main#page-multilingual div.access_wrap section#multi_map div.bottom address {
    margin-top: 0;
    line-height: 1.5; }

  main#page-multilingual div.access_wrap section#multi_map div.bottom a {
    font-size: 0.75rem; }

  main#page-multilingual div.access_wrap section#traffic_access {
    padding: 0 12px; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing {
    padding: 24px 12px; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing div.text h3 {
    padding: 0;
    background-size: contain;
    font-size: 1rem;
    width: 120px;
    height: 120px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul {
    display: block; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul li.now a {
    background-position: left center;
    border-bottom: solid 1px #000; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing nav ul li a {
    padding: 12px 12px 12px 32px;
    text-align: left; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents h4 {
    font-size: 0.875rem; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents p {
    text-align: left; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li {
    max-width: 100%;
    margin-bottom: 24px; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li h5 {
    margin: 12px 0; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li p {
    margin: 0;
    padding-bottom: 12px; }

  main#page-multilingual div.Sightseeing_wrap section#sightseeing div.common_contents ul li ul.guide {
    padding-top: 12px;
    font-size: 0.75rem; }

  main#page-multilingual div.about_roman_wrap section#about_romankan {
    padding: 24px 12px;
    box-sizing: border-box; }

  main#page-multilingual div.about_roman_wrap section#about_romankan h3 {
    font-size: 1rem;
    padding-bottom: 12px; }

  main#page-multilingual div.about_roman_wrap section#about_romankan dl {
    padding-top: 12px;
    display: block;
    font-size: 0.75rem; }

  main#page-multilingual div.about_roman_wrap section#about_romankan dl dt {
    font-weight: bold; } }

main.foot_sub {
  padding-top: 80px; }
  main.foot_sub div.wrap {
    background-color: #f5f5f5;
    overflow: hidden;
    background-image: url(img/privacy/foot_sub_back.svg);
    background-repeat: no-repeat;
    background-position: center right -130px;
    background-size: auto; }
  main.foot_sub div.wrap section.sub_common {
    max-width: 1020px;
    margin: auto;
    padding: 88px 12px 0px;
    position: relative;
    box-sizing: border-box; }
  main.foot_sub div.wrap section.sub_common h3 {
    font-size: 1.25rem;
    text-align: center; }
  main.foot_sub div.wrap section.sub_common ul li {
    padding-bottom: 40px; }
  main.foot_sub div.wrap section.sub_common ul li h4 {
    padding-left: 24px;
    background-image: url(img/privacy/list_icon.svg);
    background-size: auto;
    background-position: left;
    background-repeat: no-repeat;
    margin-bottom: 24px; }
  main.foot_sub div.wrap section.sub_common ul li table {
    display: block;
    margin: 16px 0px 0px;
    border: 1px solid rgba(0, 0, 0, 0.2); }
    main.foot_sub div.wrap section.sub_common ul li table tbody {
      display: flex; }
    main.foot_sub div.wrap section.sub_common ul li table tbody tr {
      display: flex;
      flex-direction: column;
      flex: 1;
      text-align: center; }
      main.foot_sub div.wrap section.sub_common ul li table tbody tr:last-of-type td {
        border-right: none; }
      main.foot_sub div.wrap section.sub_common ul li table tbody tr th {
        min-height: 32px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-right: 1px solid rgba(0, 0, 0, 0.2);
        border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
        main.foot_sub div.wrap section.sub_common ul li table tbody tr th:last-of-type {
          border-bottom: none; }
      main.foot_sub div.wrap section.sub_common ul li table tbody tr td {
        min-height: 32px;
        display: flex;
        justify-content: center;
        align-items: center;
        border-right: 1px solid rgba(0, 0, 0, 0.2);
        border-bottom: 1px solid rgba(0, 0, 0, 0.2); }
        main.foot_sub div.wrap section.sub_common ul li table tbody tr td:last-of-type {
          border-bottom: none; }
  main.foot_sub div.wrap section.sub_common p {
    line-height: 1.5em; }
  main.foot_sub div.wrap section.sub_common p span {
    display: block; }
  main.foot_sub div.wrap section.sub_common p.declaration {
    line-height: 2em;
    max-width: 744px;
    width: 100%;
    margin: 40px auto 0;
    text-align: center;
    padding-bottom: 80px; }

@media screen and (max-width: 640px) {
  main.foot_sub div.wrap section.sub_common {
    padding: 40px 12px 0px; }
    main.foot_sub div.wrap section.sub_common h3 {
      font-size: 1rem; }
    main.foot_sub div.wrap section.sub_common p.declaration {
      margin: 24px auto 0;
      padding-bottom: 40px; }
    main.foot_sub div.wrap section.sub_common ul li {
      padding-bottom: 24px; }
      main.foot_sub div.wrap section.sub_common ul li h4 {
        font-size: 0.875rem;
        margin-bottom: 16px; }
      main.foot_sub div.wrap section.sub_common ul li table tr th {
        font-size: 0.75rem; }
        main.foot_sub div.wrap section.sub_common ul li table tr td {
          font-size: 0.75rem;
          height: 100%; } }

main#page-room {
  padding: 80px 0px 132px; }

main#page-room div.first_view {
  background-image: url(img/room/room_firstView.jpg); }

main#page-room div.first_view div.text {
  display: flex;
  justify-content: center;
  flex-direction: column; }

main#page-room div.first_view div.text p {
  font-size: 1.25rem;
  margin-top: 48px; }

main#page-room nav {
  max-width: 848px;
  width: 100%;
  margin: 0px auto;
  padding: 80px 12px 0px;
  box-sizing: border-box;
  background-image: url(img/room/navi_back.svg);
  background-position: center;
  background-size: auto;
  background-repeat: no-repeat; }

main#page-room nav ul {
  width: 100%;
  display: flex;
  justify-content: space-evenly;
  flex-wrap: wrap;
  margin: 80px 0px 0px; }

main#page-room nav ul li {
  max-width: 392px;
  width: 100%;
  display: flex;
  margin-bottom: 32px;
  flex-direction: row-reverse; }

main#page-room nav ul li.reverse a {
  flex-direction: row;
  justify-content: normal; }

main#page-room nav ul li.reverse div.box {
  margin-left: 0px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin-right: 24px;
  padding-left: 0px;
  background-position: right center; }

main#page-room nav ul li a {
  width: 100%;
  display: flex;
  flex-direction: row-reverse; }

main#page-room nav ul li a div.box {
  margin-left: 24px;
  flex: 1;
  background-image: url(img/room/navi_link.svg);
  background-position: left center;
  background-repeat: no-repeat;
  background-size: auto; }

main#page-room nav ul li a div.box p {
  line-height: 1.5em; }

main#page-room nav ul li a div.box p span {
  display: block; }

main#page-room nav ul li a img {
  max-width: 232px;
  width: 100%; }

main#page-room section.section_common {
  max-width: 1020px;
  width: 100%;
  margin: 128px auto 0px;
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  background-repeat: no-repeat;
  position: relative;
  padding: 0 12px;
  box-sizing: border-box; }

main#page-room section.section_common div.text {
  max-width: 940px;
  display: flex;
  justify-content: space-between;
  margin-top: 56px;
  width: 100%; }

main#page-room section.section_common div.text.reverse {
  flex-direction: row-reverse; }

main#page-room section.section_common div.text p {
  max-width: 640px;
  width: 100%;
  letter-spacing: 0.05rem;
  line-height: 2em; }

main#page-room section.section_common div.text table {
  max-width: 256px;
  width: 100%;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

main#page-room section.section_common div.text table tr {
  padding-top: 24px;
  display: block; }

main#page-room section.section_common div.text table tr:last-of-type {
  padding-bottom: 24px; }

main#page-room section.section_common div.text table tr td:first-of-type {
  min-width: 100px; }

main#page-room section.section_common div.image_contents {
  width: 100%;
  height: 400px;
  position: relative;
  max-width: 940px; }

main#page-room section.section_common div.image_contents div.image_box {
  height: 100%;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.05); }

main#page-room section.section_common div.image_contents div.image_box.reverse h3 {
  margin-left: auto;
  margin-right: 40px; }

main#page-room section.section_common div.image_contents div.image_box.reverse h3.one {
  margin-right: 64px; }

main#page-room section.section_common div.image_contents div.image_box h3 {
  writing-mode: vertical-rl;
  line-height: 2em;
  letter-spacing: 0.025rem;
  color: #fff;
  padding-top: 32px;
  margin-left: 40px; }

main#page-room section.section_common div.image_contents div.image_box h3 span {
  display: block; }

main#page-room section.section_common div.image_contents div.image_box h3 span.number {
  text-combine-upright: all;
  display: inline; }

main#page-room section.section_common div.image_contents div.image_box ul.image_list {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1; }

main#page-room section.section_common div.image_contents div.image_box ul.image_list li {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

main#page-room section.section_common div.image_contents div.image_box ul.image_list li img {
  width: 100%;
  height: 100%; }

main#page-room section.section_common div.image_contents div.image_box ul.image_list li:not(:first-of-type) {
  display: none; }

main#page-room section.section_common div.image_contents ul.button_list {
  width: 84px;
  margin-top: 20px;
  display: flex;
  justify-content: space-between; }

main#page-room section.section_common div.image_contents ul.button_list li a {
  display: block;
  text-indent: -9999px;
  width: 12px;
  height: 12px;
  box-sizing: border-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 32px;
  cursor: pointer; }

main#page-room section.section_common div.image_contents ul.button_list li a.now_room {
  background-color: #5e800a; }

main#page-room section.section_common div.image_contents ul.button_list li a.now_room2 {
  background-color: #5e800a; }

main#page-room section.section_common div.image_contents ul.button_list li a.now_room3 {
  background-color: #5e800a; }

main#page-room section.section_common div.image_contents ul.button_list li a.now_room4 {
  background-color: #5e800a; }

main#page-room section.section_common div.image_contents ul.button_list li a.now_room5 {
  background-color: #5e800a; }

main#page-room section.section_common div.image_contents ul.button_list li a.now_room6 {
  background-color: #5e800a; }

main#page-room section.section_common::after {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center;
  z-index: -2; }

main#page-room section.section_common#mix7::after {
  width: 642px;
  height: 198px;
  background-image: url(img/room/section1_back.svg);
  margin-right: -198px;
  right: 0;
  bottom: 132px; }

main#page-room section.section_common#mix5::after {
  width: 692px;
  height: 230px;
  background-image: url(img/room/section2_back.svg);
  right: 0;
  margin-right: -346px;
  bottom: 16px; }

main#page-room section.section_common#jp8::after {
  width: 642px;
  height: 198px;
  background-image: url(img/room/section3_back.svg);
  left: 0;
  bottom: 148px;
  margin-left: -230px; }

main#page-room section.section_common#jp15::after {
  width: 692px;
  height: 230px;
  background-image: url(img/room/section4_back.svg);
  left: 0;
  margin-left: -214px;
  bottom: 32px; }

main#page-room section.section_common#west_twin::after {
  width: 642px;
  height: 198px;
  background-image: url(img/room/section1_back.svg);
  margin-right: -198px;
  right: 0;
  bottom: 132px; }

main#page-room section.section_common#west_queen::after {
  width: 692px;
  height: 230px;
  background-image: url(img/room/section2_back.svg);
  right: 0;
  margin-right: -346px;
  bottom: 16px; }

main#page-room section#amenities {
  max-width: 640px;
  width: 100%;
  margin: 56px auto 0;
  padding: 0 12px;
  box-sizing: border-box; }

main#page-room section#amenities h3 {
  text-align: center;
  line-height: 2em;
  letter-spacing: 0.05rem; }

main#page-room section#amenities h3 span {
  display: block; }

main#page-room section#amenities ul {
  display: flex;
  flex-wrap: wrap;
  padding: 16px 0px;
  border-top: 1px solid rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(0, 0, 0, 0.2); }

main#page-room section#amenities ul li {
  padding-right: 16px;
  padding-top: 16px;
  position: relative;
  font-size: 0.75rem; }

main#page-room section#amenities ul li::after {
  position: absolute;
  content: "";
  width: 1px;
  height: 12px;
  background-color: #333;
  right: 8px;
  transform: rotate(15deg); }

main#page-room section#amenities div.announce {
  margin: 48px 0px 0px;
  padding: 200px 0px 0px;
  background-image: url(img/room/amenities_back.jpg);
  background-repeat: no-repeat;
  background-size: 640px;
  background-position: top; }

main#page-room section#amenities div.announce p {
  text-align: center; }

@media screen and (max-width: 940px) {
  main#page-room {
    padding: 80px 0px 64px; }

  main#page-room section.section_common div.image_contents {
    height: calc(400/900*100vw); }

  main#page-room section.section_common div.text table {
    margin-left: 32px; }

  main#page-room section.section_common div.text.reverse table {
    margin-left: 0px;
    margin-right: 32px; } }

@media screen and (max-width: 820px) {
  main#page-room nav ul li {
    flex-direction: column-reverse;
    align-items: center;
    max-width: 192px;
    margin-top: 48px; }

  main#page-room nav ul li.reverse {
    flex-direction: column-reverse;
    align-items: center;
    max-width: 192px;
    margin-top: 48px;
    justify-content: flex-end; }

  main#page-room nav ul li.reverse div.box a {
    margin-top: 0px; }

  main#page-room nav ul li a {
    margin-left: 0px;
    width: 100%;
    margin-top: 8px;
    display: flex;
    flex-direction: column-reverse; }

  main#page-room nav ul li.reverse a {
    flex-direction: column-reverse; }

  main#page-room nav ul li a div.box {
    margin-left: 0px;
    padding: 12px 12px 8px 12px;
    background-position: right 12px top 12px;
    box-sizing: border-box;
    display: flex;
    align-items: center; }

  main#page-room nav ul li.reverse a div.box {
    margin-right: 0px;
    flex-direction: initial;
    padding-left: 0px;
    background-position: right 12px top 12px; } }

@media screen and (max-width: 640px) {
  main#page-room div.first_view div.text p {
    font-size: 1rem; }

  main#page-room nav {
    background-size: contain; }

  main#page-room nav ul li {
    max-width: 120px; }

  main#page-room nav ul li a div.box {
    background-size: 20px; }

  main#page-room nav ul li.reverse {
    max-width: 120px; }

  main#page-room section.section_common {
    margin: 64px auto 0px; }

  main#page-room section.section_common div.text {
    display: block; }

  main#page-room section.section_common div.text p {
    margin-bottom: 16px; }

  main#page-room section.section_common div.text table {
    font-size: 0.75rem;
    height: 112px;
    margin-left: 0px;
    max-width: initial; }

  main#page-room section.section_common div.text table tr {
    padding-top: 16px; }

  main#page-room section.section_common div.text table tr:last-of-type {
    padding-bottom: 0px; }

  main#page-room section.section_common div.image_contents div.image_box h3 {
    font-size: 0.75rem;
    padding-top: 12px;
    writing-mode: initial;
    margin-left: 16px; }

  main#page-room section.section_common div.image_contents div.image_box.reverse h3 {
    margin-left: 16px; }

  main#page-room section#amenities h3 {
    font-size: 0.75rem; } }

main.page_sub {
  padding-top: 80px;
  overflow: hidden; }

main.page_sub nav#sightseeing_list {
  max-width: 1020px;
  margin: 64px auto 32px;
  display: flex;
  justify-content: center; }

main.page_sub nav#sightseeing_list ul {
  display: flex;
  flex-wrap: wrap; }

main.page_sub nav#sightseeing_list ul li {
  margin-bottom: 32px; }

main.page_sub nav#sightseeing_list ul li a {
  display: block;
  text-align: center;
  line-height: 1.5em;
  padding: 0px 0px 56px 0px;
  background-image: url(img/sightseeing/navi_link.svg);
  background-size: auto;
  width: 340px;
  background-position: center bottom;
  background-repeat: no-repeat;
  text-decoration: none;
  color: #333; }

main.page_sub nav#sightseeing_list ul li a span {
  display: block; }

main.page_sub section.section_common {
  max-width: 1020px;
  margin: auto;
  padding-top: 280px;
  background-image: url(img/sightseeing/powerSpot_back.jpg);
  background-size: 720px;
  background-position: center top;
  background-repeat: no-repeat;
  position: relative; }

main.page_sub section.section_common::before {
  content: "";
  position: absolute;
  width: 786px;
  height: 442px;
  margin-left: -72px;
  background-image: url(img/sightseeing/section_back1.svg);
  background-size: auto;
  background-position: center top;
  background-repeat: no-repeat;
  z-index: -1; }

main.page_sub section.section_common::after {
  position: absolute;
  content: "";
  width: 642px;
  height: 198px;
  background-image: url(img/sightseeing/section_back2.svg);
  background-size: auto;
  background-position: center top;
  background-repeat: no-repeat;
  margin-right: -160px;
  top: 0;
  right: 0;
  z-index: -1; }

main.page_sub section.section_common div.title {
  padding: 40px;
  max-width: 432px;
  width: 100%;
  box-sizing: border-box;
  margin: -80px auto 0px;
  background-color: #fff; }

main.page_sub section.section_common div.title h3 {
  font-size: 1.25rem;
  text-align: center;
  margin-bottom: 28px; }

main.page_sub section.section_common div.title p {
  line-height: 2em;
  text-align: center; }

main.page_sub section.section_common div.title p span {
  display: block; }

main.page_sub section.section_common ul {
  margin-top: 40px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 12px 0px 0px; }

main.page_sub section.section_common ul li {
  max-width: 300px;
  width: 100%;
  display: flex;
  margin-bottom: 48px;
  flex-direction: column; }

main.page_sub section.section_common ul li img {
  width: 100%;
  display: block;
  order: -1; }

main.page_sub section.section_common ul li h4 {
  margin: 24px 0px 16px; }

main.page_sub section.section_common ul li p {
  line-height: 1.5em;
  margin-bottom: 24px; }

main.page_sub section.section_common ul li ul.guide {
  margin-top: 0px;
  padding-top: 20px;
  border-top: 1px solid rgba(0, 0, 0, 0.2); }

main.page_sub section.section_common ul li ul.guide li {
  margin-bottom: 0px;
  padding-left: 20px;
  background-image: url(img/sightseeing/guide_icon.svg);
  background-size: auto;
  background-position: top 4px left;
  background-repeat: no-repeat;
  line-height: 1.5em; }

main.page_sub section.section_common ul li ul.guide li.tel {
  background-image: url(img/sightseeing/guide_tel.svg);
  margin-top: 8px; }

main.page_sub section.section_common ul li ul.guide li.tel a {
  color: #333; }

main.page_sub section.section_common ul li ul.guide li.time {
  margin-top: 8px;
  background-image: url(img/sightseeing/guide_time.svg); }

main.page_sub section.section_common#leisure_spot {
  background-image: url(img/sightseeing/lesuire_spot_back.jpg); }

main.page_sub section.section_common#leisure_spot::before {
  background-image: url(img/sightseeing/section_back3.svg);
  width: 692px;
  height: 230px;
  top: 0;
  margin-left: -204px; }

main.page_sub section.section_common#leisure_spot::after {
  background-image: url(img/sightseeing/section_back4.svg);
  width: 700px;
  right: 252px;
  top: 168px;
  height: 480px; }

main.page_sub section.section_common#gourmet_spot {
  background-image: url(img/sightseeing/gourmet_spot.jpg); }

main.page_sub section.section_common#gourmet_spot::before {
  width: 608px;
  height: 508px;
  top: 200px;
  margin-left: -120px;
  background-image: url(img/sightseeing/section_back6.svg); }

main.page_sub section.section_common#gourmet_spot::after {
  background-image: url(img/sightseeing/section_back5.svg);
  margin-right: -144px; }

main.page_sub section.section_common#gourmet_spot ul {
  position: relative; }

main.page_sub section.section_common#gourmet_spot ul::after {
  content: "";
  width: 300px; }

@media screen and (max-width: 1020px) {
  main.page_sub nav#sightseeing_list ul {
    justify-content: center; }

  main.page_sub nav#sightseeing_list ul li a {
    width: 240px; } }

@media screen and (max-width: 640px) {
  main.page_sub nav#sightseeing_list ul {
    justify-content: center; }

  main.page_sub nav#sightseeing_list ul li a {
    width: 240px;
    font-size: 0.75rem; }

  main.page_sub section.section_common {
    margin-bottom: 32px; }

  main.page_sub section.section_common div.title {
    padding: 40px 12px; }

  main.page_sub section.section_common ul {
    margin-top: 16px;
    justify-content: center; }

  main.page_sub section.section_common ul li {
    margin-bottom: 32px; }

  main.page_sub section.section_common ul li p {
    margin-bottom: 12px; }

  main.page_sub section.section_common ul li h4 {
    margin: 12px 0px 12px; }

  main.page_sub section.section_common ul li ul.guide {
    padding-top: 8px; }

  main.page_sub section.section_common ul li ul.guide li {
    font-size: 0.75rem; } }

main#page-sitemap div.wrap div.list_wrap {
  display: flex;
  justify-content: space-between; }
  main#page-sitemap div.wrap div.list_wrap ul.list li a {
    padding-left: 24px;
    background-image: url(img/privacy/list_icon.svg);
    background-size: auto;
    background-position: left;
    background-repeat: no-repeat;
    color: #333;
    text-decoration: none; }
  main#page-sitemap div.wrap div.list_wrap ul.list li p {
    margin-top: 20px;
    line-height: 1.5em; }
    main#page-sitemap div.wrap div.list_wrap ul.list li p span {
      display: block; }
  main#page-sitemap div.wrap div.list_wrap ul.list li ul.list_sub {
    margin-top: 16px; }
    main#page-sitemap div.wrap div.list_wrap ul.list li ul.list_sub li {
      padding-bottom: 12px;
      text-indent: 1em; }
    main#page-sitemap div.wrap div.list_wrap ul.list li ul.list_sub li a {
      background-image: url(img/sitemap/sublink_icon.svg);
      text-indent: 1em; }

@media screen and (max-width: 940px) {
  main#page-sitemap div.wrap section#about_sitemap {
    padding: 40px 12px; }
    main#page-sitemap div.wrap div.list_wrap {
      flex-direction: column;
      align-items: center; } }

@media screen and (max-width: 640px) {
  main#page-sitemap div.wrap div.list_wrap ul.list li a {
    font-size: 0.75rem; } }

main#page-spa {
  padding-bottom: 80px; }
  main#page-spa div#view_spa {
    background-image: url(img/spa/spa_firstView.jpg); }
  main#page-spa section#natural_spa {
    margin-bottom: 100px; }
  main#page-spa section#natural_spa h3 {
    font-size: 1.25rem;
    text-align: center;
    margin-bottom: 72px; }
  main#page-spa section#natural_spa div.container {
    width: calc(100vw - (100vw - 1020px) / 2);
    height: 409px;
    background-image: url(img/spa/naturalSpa_back.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    display: flex;
    justify-content: flex-end;
    padding-left: 12px; }
  main#page-spa section#natural_spa div.container div.inner {
    max-width: 1020px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    height: 100%;
    align-items: flex-end; }
  main#page-spa section#natural_spa div.container div.inner h4 {
    writing-mode: vertical-rl;
    font-size: 1.5rem;
    color: #fff;
    margin-bottom: 64px;
    letter-spacing: 0.05rem; }
  main#page-spa section#natural_spa div.container div.inner div.text {
    max-width: 510px;
    width: 100%;
    background-color: #fff; }
  main#page-spa section#natural_spa div.container div.inner div.text p {
    line-height: 2em;
    padding: 40px 12px 0px 40px; }
    main#page-spa section#natural_spa div.container div.inner div.text p span {
      display: block; }
  main#page-spa section#institution_introduction div.title {
    display: flex;
    justify-content: center; }
  main#page-spa section#institution_introduction div.title h3 {
    writing-mode: vertical-rl;
    font-size: 1.25rem;
    margin: 0 auto 32px; }
  main#page-spa section#institution_introduction div.opening {
    max-width: 1020px;
    margin: auto;
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
    position: relative; }
  main#page-spa section#institution_introduction div.opening img {
    width: 100%;
    display: block;
    margin-bottom: 16px; }
  main#page-spa section#institution_introduction div.opening h4 {
    margin-left: auto;
    padding: 0 12px; }
  main#page-spa section#institution_introduction div.opening a {
    text-indent: -9999px;
    display: block;
    background-image: url(img/spa/introduction_arrow.svg);
    background-size: auto;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center bottom;
    bottom: 12px;
    width: 8px;
    height: 37px;
    left: calc(50% - 4px); }
  main#page-spa section#institution_introduction div#family_bath h4 {
    text-align: center;
    font-size: 1.25rem; }
  main#page-spa section#institution_introduction div.common_block {
    max-width: 1020px;
    padding: 96px 12px 0px;
    margin: 0px auto 80px;
    position: relative; }
  main#page-spa section#institution_introduction div.common_block::before {
    position: absolute;
    content: "";
    width: 498px;
    height: 100%;
    margin-left: -120px;
    left: 0;
    top: 0;
    z-index: -1;
    background-image: url(img/spa/spa_back1.svg);
    background-size: auto;
    background-repeat: no-repeat;
    background-position: left top; }
  main#page-spa section#institution_introduction div.common_block h4 {
    font-size: 1.25rem;
    line-height: 1.6em;
    text-align: center;
    margin-bottom: 32px; }
  main#page-spa section#institution_introduction div.common_block h4 span {
    display: block; }
  main#page-spa section#institution_introduction div.common_block div.container {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse; }
  main#page-spa section#institution_introduction div.common_block div.container div.text {
    max-width: 388px;
    width: 100%;
    margin: 32px 0px 0px;
    line-height: 2em; }
  main#page-spa section#institution_introduction div.common_block div.container div.text table {
    margin-top: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
    border-top: 1px solid rgba(0, 0, 0, 0.2);
    padding: 16px 0px;
    display: block; }
    main#page-spa section#institution_introduction div.common_block div.container div.text table tr {
      padding: 4px 0px;
      display: block; }
    main#page-spa section#institution_introduction div.common_block div.container div.text table tr td {
      letter-spacing: 0.05rem; }
      main#page-spa section#institution_introduction div.common_block div.container div.text table tr td:first-of-type {
        min-width: 144px; }
  main#page-spa section#institution_introduction div.common_block div.container div.image_block {
    max-width: 600px;
    width: 100%;
    height: 400px; }
  main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.image_list {
    height: 100%;
    position: relative; }
    main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.image_list li {
      max-width: 600px;
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      height: 100%;
      width: 100%;
      position: absolute;
      top: 0;
      left: 0; }
    main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.image_list li:not(:first-of-type) {
      display: none; }
    main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.image_list li img {
      width: 100%;
      display: block; }
  main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.bottan_list {
    width: 84px;
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-top: 12px; }
    main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.bottan_list li a {
      text-indent: -9999px;
      display: block;
      width: 12px;
      height: 12px;
      border: 1px solid rgba(0, 0, 0, 0.2);
      border-radius: 32px;
      box-sizing: border-box;
      cursor: pointer; }
      main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.bottan_list li a.now_spa {
        background-color: #484a80;
        border-radius: 32px; }
      main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.bottan_list li a.now_spa2 {
        background-color: #484a80;
        border-radius: 32px; }
      main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.bottan_list li a.now_spa3 {
        background-color: #484a80;
        border-radius: 32px; }
  main#page-spa section#institution_introduction div.common_block.second {
    padding-top: 16px; }
  main#page-spa section#institution_introduction div.common_block.second::before {
    background-image: url(img/spa/spa_back2.svg);
    background-position: top right;
    width: 332px;
    right: 0;
    top: -56px;
    left: auto;
    margin-left: 0px;
    margin-right: -114px; }
  main#page-spa section#institution_introduction div.common_block.second div.container {
    flex-direction: row; }
  main#page-spa section#institution_introduction div.common_block.second div.container div.text {
    max-width: 628px; }
    main#page-spa section#institution_introduction div.common_block.second div.container div.text h5 {
      font-size: 1rem; }
    main#page-spa section#institution_introduction div.common_block.second div.container div.text h5 span {
      font-size: 1.125rem;
      display: block; }
  main#page-spa section#institution_introduction div.common_block.second div.container div.image_block {
    max-width: 360px;
    width: 100%;
    height: 360px; }
  main#page-spa section#institution_introduction div.common_block.second#ishibro {
    min-height: 360px;
    padding-bottom: 32px; }
  main#page-spa section#institution_introduction div.common_block.second#ishibro div.container {
    height: 100%; }
    main#page-spa section#institution_introduction div.common_block.second#ishibro div.container div.image_block ul.bottan_list {
      position: absolute;
      bottom: 0; }
  main#page-spa section#institution_introduction div.common_block.second#minarunoyu {
    padding-bottom: 64px;
    margin: 0px auto; }
  main#page-spa section#institution_introduction div.common_block.second#minarunoyu::before {
    background-image: url(img/spa/spa_back3.svg);
    background-position: bottom right;
    width: 384px;
    right: auto;
    left: 0;
    bottom: 0;
    top: auto;
    margin-left: -132px;
    padding-bottom: 64px; }
  main#page-spa section#institution_introduction div.common_block.second#minarunoyu div.container {
    flex-direction: row-reverse; }
    main#page-spa section#institution_introduction div.common_block.second#minarunoyu div.container div.image_block ul.bottan_list {
      margin-top: 20px; }

@media screen and (max-width: 1040px) {
  main#page-spa section#natural_spa div.container {
    width: 100%; }
    main#page-spa section#institution_introduction div.common_block div.container {
      flex-direction: column-reverse;
      align-items: center; }
      main#page-spa section#institution_introduction div.common_block.second div.container {
        flex-direction: column-reverse; }
        main#page-spa section#institution_introduction div.common_block.second#ishibro div.container div.image_block ul.bottan_list {
          position: initial;
          margin-top: 12px; }
        main#page-spa section#institution_introduction div.common_block.second#minarunoyu div.container {
          flex-direction: column-reverse; } }

@media screen and (max-width: 640px) {
  main#page-spa section#natural_spa h3 {
    font-size: 1rem;
    margin-bottom: 40px; }
    main#page-spa section#natural_spa div.container {
      padding: 0 12px;
      height: 456px;
      box-sizing: border-box; }
      main#page-spa section#natural_spa div.container div.inner {
        flex-direction: column;
        justify-content: space-between;
        align-items: center; }
        main#page-spa section#natural_spa div.container div.inner h4 {
          writing-mode: initial;
          padding-top: 16px;
          font-size: 1rem; }
        main#page-spa section#natural_spa div.container div.inner div.text p {
          padding: 24px 12px 16px 32px; }
    main#page-spa section#institution_introduction h3 {
      font-size: 1rem; }
    main#page-spa section#institution_introduction div.opening h4 {
      font-size: 0.75rem; }
    main#page-spa section#institution_introduction div.common_block {
      margin: 0px auto 40px; }
      main#page-spa section#institution_introduction div.common_block div.container div.image_block {
        height: calc(400/600*100vw); }
        main#page-spa section#institution_introduction div.common_block div.container div.image_block ul.bottan_list {
          margin-top: 0px; }
        main#page-spa section#institution_introduction div.common_block div.container div.text table {
          font-size: 0.75rem;
          padding: 8px 0px; }
      main#page-spa section#institution_introduction div.common_block.second div.container div.text {
        margin-top: 48px; } }
@media screen and (max-width: 640px) {
  p {
    font-size: 0.75rem; }

  h3 {
    font-size: 1rem; }

  main.page_sub div.firstView {
    padding: 0 12px; }
    main.page_sub div.firstView div.title {
      padding: 40px 0px; }
      main.page_sub div.firstView div.title h2 {
        font-size: 1.5rem;
        padding: 40px 80px;
        background-size: contain; }
    main.page_sub div.firstView h3 {
      margin-bottom: 16px;
      font-size: 1rem; } }
</pre></body></html>