@charset "UTF-8";
/*
Theme Name: 大子温泉やみぞホテル
Author: ヘレナメディアリサーチ
Author URI: https://helena.jp/
Version: 1.0
*/
/* CSS Document */
.copyright {
  font-family: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  font-weight: 500; }

body, .btn_icon a, .header_tel .telannounce, .menu-sp_menu-container ul.drawer-dropdown-menu li a, .top_box .top_txt p, .top_plan p, .top_sightseeing_inner .top_sightseeing_text, dt.list-date, dd.list-text, nav.footer_link ul li, .footer_address, #breadcrumbs, #main-contents {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 400; }

.btn_more a, .btn a, .wp-block-button__link, .btn_contact, .header_tel .telno, .menu-sp_menu-container ul.drawer-menu li, .top_box .top_txt h3, .top_plan h3, nav.bottom_nav ul li, #page_header h2, #main-contents h1, #main-contents h2, #main-contents h3, #main-contents h4, #main-contents h5, #main-contents h6, dl.gaiyou dt, .article-header h1.entry-title, #main-contents .list-contents.headline a h2.entry-card-title {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  font-weight: 700; }

:root {
  --main-color-base: #ffffff;
  --main-bg-color: #121212;
  --main-bg-accent:#ceb97e;
  --main-bg-gray:#f7f8f7;
  --main-bg-gray02:#7f827f;
  --main-link-color: #FFF;
  --main-link-color-hover: #ceb97e;
  --main-btn-color:#ceb97e;
  --main-btn-color-hover:#FFF;
  --main-box-color:rgb(255, 255, 255); }

.has-gold-color {
  color: #ceb97e !important; }

.has-silver-color {
  color: #7f827f !important; }

.has-red-color {
  color: #ff0000 !important; }

.has-orange-color {
  color: #ed6f00 !important; }

.has-yellow-color {
  color: #f8b200 !important; }

.has-green-color {
  color: #498737 !important; }

.has-skyblue-color {
  color: #00a1ab !important; }

.has-darkblue-color {
  color: #0070bd !important; }

.has-purple-color {
  color: #8e3077 !important; }

.has-darkpink-color {
  color: #d30089 !important; }

.has-white-color {
  color: #ffffff !important; }

.has-gold-background-color {
  background-color: #ceb97e !important; }

.has-silver-background-color {
  background-color: #7f827f !important; }

.has-red-background-color {
  background-color: #ff0000 !important; }

.has-orange-background-color {
  background-color: #ed6f00 !important; }

.has-yellow-background-color {
  background-color: #f8b200 !important; }

.has-green-background-color {
  background-color: #498737 !important; }

.has-skyblue-background-color {
  background-color: #00a1ab !important; }

.has-darkblue-background-color {
  background-color: #0070bd !important; }

.has-purple-background-color {
  background-color: #8e3077 !important; }

.has-darkpink-background-color {
  background-color: #d30089 !important; }

.has-white-background-color {
  background-color: #ffffff !important; }

/* ----------------------------------------------------------------------
 共通
---------------------------------------------------------------------- */
html {
  scroll-behavior: smooth; }

.sp_head_search_link,
.sp_head_search {
  display: none; }

.sp {
  display: none; }

.pc {
  display: block; }

@media (max-width: 770px) {
  .sp {
    display: block; }

  .pc {
    display: none; } }
/* サイト全体のテキストリンク設定 */
a {
  color: var(--main-link-color);
  text-decoration: none;
  transition: all 0.3s ease 0s; }

a:link {
  text-decoration: none; }

a:visited {
  color: var(--main-link-color); }

a:hover {
  color: var(--main-link-color-hover);
  text-decoration: none;
  transition: 0.3s; }

a:active {
  color: var(--main-link-color-hover); }

body {
  font-size: 17px;
  font-size: 1.0625rem;
  color: var(--main-color-base);
  padding: 0;
  margin: 0;
  background-image: url(images/back.jpg);
  background-position: center center;
  background-repeat: repeat-y;
  background-size: contain;
  background-color: var(--main-bg-color);
  overflow-x: hidden; }

body.sitemap a,
body.sitemap a:link {
  text-decoration: none; }

#page-top {
  margin: 42px auto;
  text-align: center; }

/*画像*/
a:hover img {
  opacity: 0.6;
  transition: .3s ease all; }

.pc {
  display: block; }
  @media (max-width: 770px) {
    .pc {
      display: none; } }

.tab {
  display: none; }
  @media (max-width: 770px) {
    .tab {
      display: block; } }

.sp-m {
  display: none; }
  @media (max-width: 375px) {
    .sp-m {
      display: block; } }

.marker-under-blue {
  background: linear-gradient(transparent 60%, #a8dafb 60%); }

.marker-under-red {
  background: linear-gradient(transparent 60%, #ffd0d1 60%); }

.marker-under-pink {
  background: linear-gradient(transparent 60%, #ffd6ff 0%); }

.marker-under-yellow {
  background: linear-gradient(transparent 60%, #ffffa8 0%); }

#main-contents .box {
  padding: 40px;
  margin: 40px 0px;
  background: var(--main-btn-color-hover);
  border-radius: 10px; }
  @media (max-width: 770px) {
    #main-contents .box {
      padding: 30px; } }
  @media (max-width: 425px) {
    #main-contents .box {
      margin: 24px 10px;
      padding: 20px; } }
  #main-contents .box p:last-child {
    margin-bottom: 0; }
  #main-contents .box h3, #main-contents .box h4, #main-contents .box h5, #main-contents .box h6 {
    margin-top: 0;
    margin-bottom: 1em; }
  #main-contents .box h3:last-child, #main-contents .box h4:last-child, #main-contents .box h5:last-child, #main-contents .box h6:last-child, #main-contents .box p:last-child {
    margin-bottom: 0; }

#main-contents .linebox {
  padding: 40px;
  margin: 40px 0px;
  border: 2px solid var(--main-btn-color-hover);
  border-radius: 10px; }
  @media (max-width: 770px) {
    #main-contents .linebox {
      padding: 30px; } }
  @media (max-width: 425px) {
    #main-contents .linebox {
      margin: 24px 10px;
      padding: 20px; } }
  #main-contents .linebox p:last-child {
    margin-bottom: 0; }
  #main-contents .linebox h3, #main-contents .linebox h4, #main-contents .linebox h5, #main-contents .linebox h6 {
    margin-top: 0;
    margin-bottom: 1em; }
  #main-contents .linebox h3:last-child, #main-contents .linebox h4:last-child, #main-contents .linebox h5:last-child, #main-contents .linebox h6:last-child, #main-contents .linebox p:last-child {
    margin-bottom: 0; }

hr {
  border: 0 none;
  border-top: 1px solid #FFF; }

/*フォーム*/
/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: .6em 1em .4em; }
  button:hover,
  input[type="button"]:hover,
  input[type="reset"]:hover,
  input[type="submit"]:hover {
    background: var(--main-bg-gray);
    color: #FFF;
    transition: .3s ease all; }
  button.send,
  input[type="button"].send,
  input[type="reset"].send,
  input[type="submit"].send {
    background: var(--main-bg-color);
    color: var(--main-btn-color);
    border-color: var(--main-btn-color) var(--main-btn-color) var(--main-link-color-hover); }
    button.send:hover,
    input[type="button"].send:hover,
    input[type="reset"].send:hover,
    input[type="submit"].send:hover {
      background: var(--main-link-color-hover);
      color: #FFF;
      transition: .3s ease all; }

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  border-color: #ccc #bbb #aaa; }

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
  border-color: #aaa #bbb #bbb; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px; }

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
  color: #111; }

select {
  border: 1px solid #ccc; }

textarea {
  width: 100%; }

/*ページナビ*/
#pagenavi,
#menu_box {
  margin: 36px auto;
  text-align: center;
  padding-top: 24px;
  border-top: 1px solid #c1ecad; }

.wp-pagenavi {
  margin: 36px auto;
  text-align: center;
  padding-top: 24px; }

.wp-pagenavi a:hover, .wp-pagenavi span.current {
  border-color: var(--main-btn-color); }

.wp-pagenavi span.current {
  color: var(--main-btn-color); }

#menu_box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }

.nav-links {
  margin-top: 36px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  border-top: 3px solid #ceb97e;
  padding-top: 16px; }

.nav-previous {
  display: block;
  text-align: left; }

.nav-next {
  display: block;
  text-align: right; }

.main-contents img.border {
  border: 4px solid #FFF;
  box-shadow: 1px 1px 1px 0px rgba(0, 0, 0, 0.2);
  border-radius: 8px; }

/* 必須マーク */
.must {
  color: #fff;
  margin-left: 10px;
  padding: 3px 6px;
  background: #F92931;
  border-radius: 4px; }

/* 項目名を太字にする */
form p {
  font-weight: 600; }

/* 入力項目を見やすくする */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea,
select.wpcf7-form-control.wpcf7-select {
  width: 100%;
  padding: 8px 15px;
  margin-right: 10px;
  margin-top: 10px;
  border: 1px solid var(--main-link-color-hover);
  border-radius: 4px; }

textarea.wpcf7-form-control.wpcf7-textarea {
  height: 200px; }

/* 送信ボタンを見やすくする */
input.wpcf7-submit {
  width: 100%;
  height: 80px;
  background: var(--main-link-color);
  color: var(--main-bg-color);
  font-size: 20px;
  font-weight: 600;
  border-radius: 4px; }
  input.wpcf7-submit:hover {
    background: var(--main-link-color-hover); }

/* エラーメッセージを見やすくする */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
  color: red;
  font-weight: 600; }

.space-between {
  justify-content: space-between; }

/*404*/
.search_box {
  margin-top: 2em; }

/*ボタン*/
.btn_more {
  display: block;
  padding: 0rem;
  font-size: 1rem;
  line-height: 1;
  border-radius: 0rem;
  border: 1px none transparent;
  color: var(--main-color-base); }
  .btn_more a {
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 1;
    display: block;
    width: 394px;
    color: var(--main-btn-color) !important;
    background-color: #121212;
    border: 1px solid var(--main-btn-color);
    padding: 21px 0px;
    text-align: center;
    transition: all .2s linear;
    text-decoration: none;
    outline: none;
    cursor: pointer;
    background-image: url(images/arrow.png);
    background-position: center right 15px;
    background-repeat: no-repeat; }
    .btn_more a:hover {
      color: var(--main-btn-color-hover) !important;
      background-position: center right 8px;
      background-color: rgba(206, 185, 126, 0.3); }
    @media (max-width: 425px) {
      .btn_more a {
        width: 80%; } }
  .btn_more.margin-center a {
    margin: 0 auto; }
  .btn_more.margin-right a {
    margin: 0 0 0 auto; }
  .btn_more.margin-left a {
    margin: 0 auto 0 0; }

.btn {
  display: block;
  padding: 0rem;
  font-size: 1rem;
  line-height: 1;
  border-radius: 0rem;
  border: 0px none transparent;
  color: var(--main-color-base); }
  .btn a {
    font-size: 14px;
    font-size: 0.875rem;
    letter-spacing: 0.1em;
    line-height: 1;
    display: block;
    width: 232px;
    color: var(--main-btn-color) !important;
    background-color: #121212;
    border: 1px solid var(--main-btn-color);
    padding: 14px 0px;
    text-align: center;
    transition: all .2s linear;
    text-decoration: none;
    outline: none;
    cursor: pointer; }
    .btn a:hover {
      color: var(--main-btn-color-hover) !important;
      background-color: rgba(206, 185, 126, 0.3); }
  .btn.margin-center a {
    margin: 0 auto; }
  .btn.margin-right a {
    margin: 0 0 0 auto; }
  .btn.margin-left a {
    margin: 0 auto 0 0; }

.btn_icon a {
  display: block;
  font-size: 16px;
  font-size: 1rem;
  color: var(--main-link-color);
  text-decoration: none;
  padding: 12px 22px 12px 0px;
  text-align: left;
  line-height: 1;
  position: relative;
  background-image: url(images/point_arrow.png);
  background-position: right center;
  background-repeat: no-repeat; }
  .btn_icon a:hover {
    color: var(--main-link-color-hover); }
  .btn_icon a:active {
    color: var(--main-link-color); }
.btn_icon.right-btn {
  clear: both;
  overflow: hidden;
  border-top: 1px solid #d6dce4; }
  .btn_icon.right-btn a {
    display: inline-block;
    text-align: right;
    float: right; }

.wp-block-button__link {
  font-size: 14px;
  font-size: 0.875rem;
  letter-spacing: 0.1em;
  line-height: 1;
  display: block;
  width: 232px;
  color: var(--main-btn-color) !important;
  background-color: #121212;
  border: 1px solid var(--main-btn-color);
  padding: 14px 0px;
  text-align: center;
  transition: all .2s linear;
  text-decoration: none;
  outline: none;
  cursor: pointer; }
  .wp-block-button__link:hover {
    color: var(--main-btn-color-hover) !important;
    background-color: rgba(206, 185, 126, 0.3); }

.wp-block-button.margin-right {
  margin: 0 0 0 auto; }

.wp-block-button.margin-left {
  margin: 0 auto 0 0; }

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
  padding: 1.5em 8px 8px; }

@media (max-width: 425px) {
  .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
    width: 100%;
    margin: 8px 0; } }

/* ----------------------------------------------------------------------
 トップページスライダー設定
---------------------------------------------------------------------- */
/* ----------------------------------------------------------------------
 グローバル
---------------------------------------------------------------------- */
/*メインエリアヘッダー*/
header#header {
  width: 100%;
  background-color: rgba(18, 18, 18, 0.8);
  position: fixed;
  z-index: 50;
  top: 0;
  right: 0;
  left: 0; }

#inner_header_parts {
  width: 1180px;
  margin: 0 auto;
  padding-top: 23px;
  height: 146px;
  z-index: 100;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center; }
  @media (max-width: 1280px) {
    #inner_header_parts {
      width: 95%; } }
  @media (max-width: 770px) {
    #inner_header_parts {
      width: 100%;
      height: 60px;
      padding: 12px 8px 0px 56px; } }
  @media (max-width: 500px) {
    #inner_header_parts {
      height: 80px;
      padding: 6px 6px 0px 33px; } }

.header_top {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 18px; }
  @media (max-width: 770px) {
    .header_top {
      margin-bottom: 0px; } }
  @media (max-width: 500px) {
    .header_top {
      flex-direction: column;
      flex-wrap: wrap;
      align-items: center; } }

.header_right {
  display: flex;
  justify-content: flex-end;
  align-items: center; }
  @media (max-width: 425px) {
    .header_right {
      justify-content: space-around;
      align-items: center;
      margin-top: 2px; } }

h1.site-title {
  margin: 0;
  padding: 0;
  line-height: 1; }

.site-branding .site-title a {
  display: block; }

.site-branding .site-title a img {
  width: 303px;
  height: 52px; }
  @media (max-width: 980px) {
    .site-branding .site-title a img {
      width: 280px;
      height: 48px; } }
  @media (max-width: 770px) {
    .site-branding .site-title a img {
      width: 185px;
      height: 32px; } }
  @media screen and (max-width: 545px) {
    .site-branding .site-title a img {
      width: 150px;
      height: 26px; } }

/*お問い合わせ*/
.btn_contact {
  width: 202px;
  height: 48x;
  margin-right: 20px;
  overflow: hidden;
  font-size: 14px;
  font-size: 0.875rem; }
  .btn_contact i {
    margin-right: 0.2em; }
  .btn_contact a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    overflow: hidden;
    padding: 16px 0px;
    text-align: center;
    line-height: 1;
    color: var(--main-btn-color) !important;
    border: 1px solid var(--main-btn-color); }
    .btn_contact a:hover {
      color: var(--main-btn-color-hover) !important;
      background-color: rgba(206, 185, 126, 0.3); }
  @media (max-width: 770px) {
    .btn_contact {
      font-size: 12px;
      font-size: 0.75rem;
      width: 140px;
      margin-right: 8px; }
      .btn_contact span {
        display: none; }
      .btn_contact a {
        padding: 12px 0px; } }
  @media screen and (max-width: 545px) {
    .btn_contact {
      font-size: 11px;
      font-size: 0.6875rem;
      width: 115px;
      margin-right: 6px; }
      .btn_contact a {
        padding: 8px 0px; } }

/*TEL*/
.header_tel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; }
  .header_tel .telno {
    font-size: 37px;
    font-size: 2.3125rem;
    line-height: 1; }
    @media (max-width: 770px) {
      .header_tel .telno {
        font-size: 24px;
        font-size: 1.5rem; } }
    @media screen and (max-width: 545px) {
      .header_tel .telno {
        font-size: 22px;
        font-size: 1.375rem; } }
    @media (max-width: 425px) {
      .header_tel .telno {
        font-size: 20px;
        font-size: 1.25rem; } }
  .header_tel .telannounce {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1; }
    @media (max-width: 770px) {
      .header_tel .telannounce {
        font-size: 11px;
        font-size: 0.6875rem; } }
    @media (max-width: 425px) {
      .header_tel .telannounce span {
        display: none; } }

/*グローバルメニュー*/
.site-header-menu {
  width: 100%; }
  @media (max-width: 770px) {
    .site-header-menu {
      display: none; } }

nav.main-navigation {
  width: 100%; }
  nav.main-navigation ul {
    display: flex;
    justify-content: space-around;
    list-style: none;
    margin: 0 auto;
    padding: 0;
    width: 100%; }
    nav.main-navigation ul li {
      margin: 0;
      text-align: center;
      font-size: 15px;
      font-size: 0.9375rem;
      font-weight: bold;
      line-height: 1;
      position: relative; }
      nav.main-navigation ul li + li::before {
        content: "/";
        position: absolute;
        top: 17px;
        left: -40px; }
        @media (max-width: 980px) {
          nav.main-navigation ul li + li::before {
            left: -30px; } }
        @media screen and (max-width: 830px) {
          nav.main-navigation ul li + li::before {
            left: -20px; } }
      nav.main-navigation ul li a {
        display: block;
        padding: 17px 0px;
        color: var(--main-link-color);
        text-decoration: none; }
        nav.main-navigation ul li a:hover {
          color: var(--main-link-color-hover); }
        @media (max-width: 980px) {
          nav.main-navigation ul li a {
            font-size: 15px;
            font-size: 0.9375rem; } }

/*ハンバーガーメニュー用*/
.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
  background-color: #FFF; }

/*ドロワーメニュー用*/
.drawer-nav {
  background-color: var(--main-bg-color) !important; }

.menu-sp_menu-container {
  width: 90%;
  margin: 0px auto 0px;
  padding-top: 48px;
  padding-bottom: 32px; }

.menu-sp_menu-container ul.drawer-menu li {
  font-size: 17px;
  font-size: 1.0625rem;
  border-left: 2px solid #ceb97e;
  padding-left: 10px;
  margin-bottom: 16px; }
  .menu-sp_menu-container ul.drawer-menu li.sp_title {
    border-left: 0px none #ceb97e;
    padding-left: 10px; }
  .menu-sp_menu-container ul.drawer-menu li ul.drawer-dropdown-menu li {
    border-left: 0px none #ceb97e;
    padding-left: 0px; }

.menu-sp_menu-container ul.drawer-menu li a {
  display: block;
  color: var(--main-link-color);
  padding: 7px 0px; }

.menu-sp_menu-container ul.drawer-menu li a:hover,
.menu-sp_menu-container ul.drawer-dropdown-menu li a:hover {
  text-decoration: none;
  color: var(--main-link-color-hover);
  outline: 0;
  transition: all 0.3s; }

.drawer-dropdown-menu {
  background-color: var(--main-color-base) !important; }

.drawer-dropdown-menu-item {
  line-height: 150%; }

.menu-sp_menu-container ul.drawer-dropdown-menu li a {
  font-size: 17px;
  font-size: 1.0625rem;
  padding: 5px 0px 5px 1.5em;
  background-image: url(images/point_arrow.png);
  background-position: left center;
  background-repeat: no-repeat; }

.dropdown-toggle {
  position: relative;
  color: #FFF !important; }
  .dropdown-toggle:after {
    content: "＞";
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -12px;
    color: #FFF !important; }
  .dropdown-toggle a {
    color: #FFF !important; }

.dropdown.open .dropdown-toggle {
  position: relative; }
  .dropdown.open .dropdown-toggle:after {
    content: "⌵";
    position: absolute;
    top: 50%;
    right: 13px;
    margin-top: -12px;
    color: #FFF !important; }

/*トップページ*/
/*Attraction*/
.top_attraction {
  width: 1280px;
  margin: 0 auto;
  padding: 100px 0 120px; }
  .top_attraction h2.top_title {
    text-align: left;
    line-height: 1;
    padding: 0;
    margin: 0; }
  @media (max-width: 1280px) {
    .top_attraction {
      width: 100%; }
      .top_attraction h2.top_title {
        width: 1043px;
        margin: 0 auto; } }
  @media (max-width: 1043px) {
    .top_attraction h2.top_title {
      width: 95%; } }
  @media (max-width: 770px) {
    .top_attraction {
      padding: 50px 0 60px; } }
  @media (max-width: 425px) {
    .top_attraction {
      padding: 24px 0 36px; } }

.top_box {
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media (max-width: 425px) {
    .top_box {
      flex-direction: column !important; } }
  .top_box .top_image {
    width: 50%; }
    @media (max-width: 425px) {
      .top_box .top_image {
        width: 80%; } }
  .top_box .top_txt {
    width: 50%;
    color: var(--main-color-base); }
    @media (max-width: 425px) {
      .top_box .top_txt {
        width: 80%;
        padding-top: 16px; } }
    .top_box .top_txt h3 {
      font-size: 25px;
      font-size: 1.5625rem;
      letter-spacing: 0.2em;
      line-height: 1;
      margin-bottom: 36px; }
      @media (max-width: 980px) {
        .top_box .top_txt h3 {
          font-size: 23px;
          font-size: 1.4375rem;
          line-height: 1.5;
          margin-bottom: 24px; } }
      @media (max-width: 770px) {
        .top_box .top_txt h3 {
          margin-bottom: 18px;
          font-size: 20px;
          font-size: 1.25rem;
          line-height: 1.35;
          letter-spacing: 0.1em; } }
      @media (max-width: 425px) {
        .top_box .top_txt h3 {
          font-size: 18px;
          font-size: 1.125rem;
          margin-bottom: 8px; } }
      .top_box .top_txt h3 span {
        font-size: 16px;
        font-size: 1rem;
        display: block; }
    .top_box .top_txt p {
      font-size: 17px;
      font-size: 1.0625rem;
      line-height: 1;
      letter-spacing: 0.2em; }
      @media (max-width: 980px) {
        .top_box .top_txt p {
          font-size: 16px;
          font-size: 1rem;
          line-height: 1.35;
          letter-spacing: 0.1em; } }
      @media (max-width: 425px) {
        .top_box .top_txt p {
          font-size: 14px;
          font-size: 0.875rem; } }
  .top_box.attraction01 {
    flex-direction: row-reverse;
    padding-top: 40px;
    background-image: url(images/top/top_image_back01.png);
    background-position: left top;
    background-repeat: no-repeat; }
    .top_box.attraction01 .top_txt {
      text-align: right;
      padding-right: 65px; }
    @media (max-width: 770px) {
      .top_box.attraction01 {
        padding-top: 20px;
        background-size: 38%; }
        .top_box.attraction01 .top_txt {
          padding-right: 36px; } }
    @media (max-width: 425px) {
      .top_box.attraction01 {
        background-size: 50%;
        background-position: left bottom; }
        .top_box.attraction01 .top_txt {
          text-align: left;
          padding-right: 0px; } }
  .top_box.attraction02 {
    padding-top: 40px;
    padding-bottom: 40px;
    background-image: url(images/top/top_image_back02.png);
    background-position: right bottom;
    background-repeat: no-repeat; }
    .top_box.attraction02 .top_txt {
      text-align: left;
      padding-left: 65px; }
    @media (max-width: 770px) {
      .top_box.attraction02 {
        padding-top: 20px;
        padding-bottom: 20px;
        background-size: 23%; }
        .top_box.attraction02 .top_txt {
          padding-left: 36px; } }
    @media (max-width: 425px) {
      .top_box.attraction02 {
        padding-top: 28px;
        padding-bottom: 28px;
        background-size: 33%; }
        .top_box.attraction02 .top_txt {
          padding-left: 0px; } }
  .top_box.attraction03 {
    padding-bottom: 178px;
    flex-direction: row-reverse;
    background-image: url(images/top/top_image_back03.png);
    background-position: center bottom;
    background-repeat: no-repeat; }
    .top_box.attraction03 .top_txt {
      text-align: right;
      padding-right: 65px; }
    @media (max-width: 770px) {
      .top_box.attraction03 {
        padding-bottom: 90px;
        background-size: 71%; }
        .top_box.attraction03 .top_txt {
          padding-right: 36px; } }
    @media (max-width: 425px) {
      .top_box.attraction03 {
        padding-bottom: 50px;
        background-size: 89%;
        background-position: left bottom -10px; }
        .top_box.attraction03 .top_txt {
          text-align: left;
          padding-right: 0px; } }

/*plan*/
.top_plan_box {
  width: 1043px;
  margin: 0 auto;
  padding: 120px 0 120px; }
  .top_plan_box h2.top_title {
    text-align: left;
    line-height: 1;
    padding: 0;
    margin: 0 0 48px 0; }
  @media (max-width: 1120px) {
    .top_plan_box {
      width: 95%; } }
  @media (max-width: 770px) {
    .top_plan_box {
      padding: 60px 0 60px; } }
  @media (max-width: 425px) {
    .top_plan_box {
      padding: 36px 0 36px; } }

.top_plan.wp-block-columns {
  width: 963px;
  margin: 0 auto;
  justify-content: space-around; }
  @media (max-width: 980px) {
    .top_plan.wp-block-columns {
      width: 100%; } }

.top_plan figure {
  position: relative; }
.top_plan figcaption {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #fefefe;
  margin: 0 0.2em 0.2em 0;
  text-shadow: 1px 1px 3px black, -1px -1px 3px black; }
.top_plan h3 {
  font-size: 20px;
  font-size: 1.25rem;
  line-height: 1.5;
  text-align: justify;
  margin-bottom: 20px; }
  .top_plan h3 a {
    color: var(--main-link-color-hover); }
    .top_plan h3 a:hover {
      color: var(--main-link-color); }
.top_plan p {
  font-size: 17px;
  font-size: 1.0625rem;
  line-height: 1.5;
  text-align: justify; }

@media (max-width: 770px) {
  .top_plan_box .top_plan .wp-block-column {
    flex-basis: 288px !important;
    flex-grow: inherit; } }

/*sightseeing*/
.top_sightseeing {
  width: 1280px;
  margin: 0 auto;
  padding: 120px 0 120px;
  background-image: url(images/back_sightseeing.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }
  .top_sightseeing h2.top_title {
    text-align: center;
    line-height: 1;
    padding: 0;
    margin: 0 0 30px 0; }
  @media (max-width: 1280px) {
    .top_sightseeing {
      width: 100%; } }
  @media (max-width: 770px) {
    .top_sightseeing {
      padding: 60px 0 60px; } }
  @media (max-width: 425px) {
    .top_sightseeing {
      padding: 36px 0 36px; } }

.top_sightseeing_inner {
  width: 668px;
  height: 348px;
  margin: 0 auto;
  background-color: rgba(255, 255, 255, 0.8);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 48px 77px; }
  @media (max-width: 770px) {
    .top_sightseeing_inner {
      width: 90%;
      height: calc( 668/348 *100);
      padding: 24px 38px; } }
  .top_sightseeing_inner .top_sightseeing_text {
    color: var(--main-bg-color);
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 2; }
  .top_sightseeing_inner .btn_more {
    margin-top: 30px;
    width: 100%; }
    .top_sightseeing_inner .btn_more a {
      color: var(--main-bg-color) !important;
      background-color: transparent;
      border: 1px solid var(--main-bg-color);
      background-image: url(images/arrow_black.png); }
      .top_sightseeing_inner .btn_more a:hover {
        color: var(--main-bg-color) !important;
        background-position: center right 8px;
        background-color: rgba(206, 185, 126, 0.3); }
      @media (max-width: 500px) {
        .top_sightseeing_inner .btn_more a {
          width: 100%; } }

/*INFORMATION*/
#news_wrapper {
  padding: 160px 0 180px;
  background-color: var(--main-color-base);
  color: var(--main-bg-color); }
  @media (max-width: 770px) {
    #news_wrapper {
      padding: 80px 0 90px; } }
  @media (max-width: 425px) {
    #news_wrapper {
      padding: 40px 0 45px; } }
  #news_wrapper .news_wrapper_inner {
    width: 1043px;
    margin: 0 auto; }
    @media (max-width: 1120px) {
      #news_wrapper .news_wrapper_inner {
        width: 95%; } }
  #news_wrapper #news-list-page {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-start; }
    @media (max-width: 600px) {
      #news_wrapper #news-list-page {
        display: block; } }
  #news_wrapper .news_left {
    width: 129px; }
    @media (max-width: 600px) {
      #news_wrapper .news_left {
        width: 100%; } }
  #news_wrapper dl.news-list {
    width: 786px; }
    @media (max-width: 1280px) {
      #news_wrapper dl.news-list {
        width: calc(100% - 256px); } }
    @media (max-width: 600px) {
      #news_wrapper dl.news-list {
        width: 100%; } }
  #news_wrapper .btn_icon a {
    color: var(--main-bg-color) !important;
    text-align: right;
    margin-top: 70px; }
    @media (max-width: 770px) {
      #news_wrapper .btn_icon a {
        margin-top: 18px; } }
    @media (max-width: 425px) {
      #news_wrapper .btn_icon a {
        margin-top: 0px; } }
    #news_wrapper .btn_icon a:hover {
      color: var(--main-link-color-hover); }
    #news_wrapper .btn_icon a:active {
      color: var(--main-link-color-hover); }

dl.news-list {
  padding: 0;
  overflow: hidden;
  line-height: 1.75;
  width: 100%; }

dt.list-date {
  font-size: 19px;
  font-size: 1.1875rem;
  color: #ceb97e;
  float: left;
  width: 120px;
  clear: left;
  text-align: left;
  overflow: hidden;
  padding: 16px 0px; }
  @media (max-width: 425px) {
    dt.list-date {
      font-size: 15px;
      font-size: 0.9375rem;
      line-height: 1.35;
      float: none;
      text-align: left;
      width: 100%;
      padding: 0px; } }

dd.list-text {
  font-size: 19px;
  font-size: 1.1875rem;
  margin: 0px;
  padding: 16px 7px 16px 140px;
  color: var(--main-bg-color);
  transition: 0.3s; }
  dd.list-text a {
    color: var(--main-bg-color);
    display: block; }
    dd.list-text a:hover {
      color: var(--main-link-color-hover);
      text-decoration: none; }
  @media (max-width: 425px) {
    dd.list-text {
      font-size: 15px;
      font-size: 0.9375rem;
      line-height: 1.35;
      width: 100%;
      margin: 0px;
      padding: 4px 0px 8px 0px; } }

footer#footer {
  position: relative;
  color: var(--main-color-base);
  width: 100%;
  margin: 0;
  padding: 0;
  z-index: 1; }
  footer#footer a {
    color: var(--main-color-base); }
    footer#footer a:hover {
      color: var(--main-link-color-hover); }

.footer_inner {
  width: 95%;
  color: #FFF;
  padding: 42px 0 42px 0;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center; }
  @media (max-width: 770px) {
    .footer_inner {
      padding: 24px 0; } }
  @media (max-width: 425px) {
    .footer_inner {
      padding: 18px 0; } }
  @media (max-width: 1120px) {
    .footer_inner {
      width: 95%; } }

nav.footer_link {
  margin-bottom: 40px; }
  @media (max-width: 770px) {
    nav.footer_link {
      margin-bottom: 24px; } }
  @media (max-width: 425px) {
    nav.footer_link {
      margin-bottom: 16px; } }
  nav.footer_link ul {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap; }
    nav.footer_link ul li {
      width: 202px;
      height: 52px;
      overflow: hidden;
      font-size: 18px;
      font-size: 1.125rem;
      line-height: 1;
      letter-spacing: 0.072em;
      margin: 16px 26px 16px 0px;
      list-style: none; }
      nav.footer_link ul li:last-child {
        margin-right: 0; }
      nav.footer_link ul li a {
        display: block;
        padding: 14px 0;
        text-align: center;
        color: var(--main-link-color) !important;
        border: 1px solid var(--main-color-base); }
        nav.footer_link ul li a:hover {
          color: var(--main-link-color) !important;
          background-color: rgba(206, 185, 126, 0.61);
          border: 1px solid var(--main-color-base); }
    @media (max-width: 425px) {
      nav.footer_link ul {
        justify-content: center; }
        nav.footer_link ul li {
          width: 180px;
          height: 42px;
          font-size: 16px;
          font-size: 1rem;
          margin: 0 8px 8px 8px; }
          nav.footer_link ul li:last-child {
            margin-right: 8px; }
          nav.footer_link ul li a {
            padding: 12px 0; } }

nav.bottom_nav ul {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap; }
  nav.bottom_nav ul li {
    list-style: none;
    font-size: 15px;
    font-size: 0.9375rem;
    letter-spacing: 0.072em;
    margin: 0px 20px 16px 20px;
    position: relative; }
    nav.bottom_nav ul li:last-child {
      margin-right: 0; }
    nav.bottom_nav ul li + li::before {
      content: "/";
      top: 0px;
      left: -20px;
      position: absolute; }
    nav.bottom_nav ul li a {
      display: block;
      color: var(--main-bg-color); }
      nav.bottom_nav ul li a:hover {
        color: var(--main-link-color-hover); }
  @media (max-width: 425px) {
    nav.bottom_nav ul {
      justify-content: center; }
      nav.bottom_nav ul li {
        font-size: 14px;
        font-size: 0.875rem;
        margin: 0 16px 16px 16px; }
        nav.bottom_nav ul li:last-child {
          margin-right: 16px; } }

h3.footer_logo {
  text-align: center;
  padding: 60px 0 27px 0;
  margin: 0; }
  @media (max-width: 770px) {
    h3.footer_logo {
      padding: 30px 0 18px 0; } }
  @media (max-width: 425px) {
    h3.footer_logo {
      padding: 24px 0 14px 0; } }

.footer_address {
  color: var(--main-color-base);
  text-align: center;
  line-height: 1.75;
  font-size: 14px;
  font-size: 0.875rem; }

.copyright {
  font-size: 12px;
  font-size: 0.75rem;
  line-height: 1.75;
  text-align: center;
  color: var(--main-color-base);
  margin-bottom: 77px; }
  @media (max-width: 770px) {
    .copyright {
      margin-bottom: 38px; } }
  @media (max-width: 425px) {
    .copyright {
      margin-bottom: 20px; } }

html {
  overflow-y: scroll; }
  html.noscroll {
    height: 100%; }

.sideber {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: 100vh; }

.side_inner {
  width: 1120px;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start; }
  @media (max-width: 1120px) {
    .side_inner {
      width: 90%; } }

nav.side_nav {
  margin: 0 0 83px 0;
  padding: 0; }
  @media (max-width: 770px) {
    nav.side_nav {
      margin: 0 0 42px 0; } }
  @media (max-width: 425px) {
    nav.side_nav {
      margin: 0; } }
  nav.side_nav ul {
    margin: 0;
    padding: 0; }
    nav.side_nav ul li {
      list-style: none;
      margin: 0 0 34px 0;
      padding: 0; }
      @media (max-width: 770px) {
        nav.side_nav ul li {
          margin: 0 0 24px 0; } }
      @media (max-width: 480px) {
        nav.side_nav ul li {
          margin: 0 0 8px 0; } }
      @media (max-width: 375px) {
        nav.side_nav ul li {
          margin: 0 0 4px 0; } }
      nav.side_nav ul li:last-child {
        margin: 0; }
      nav.side_nav ul li a svg {
        fill: var(--main-color-base);
        height: 42px;
        width: auto;
        transition: 0.3s; }
        @media (max-width: 480px) {
          nav.side_nav ul li a svg {
            height: 30px; } }
        @media (max-width: 425px) {
          nav.side_nav ul li a svg {
            height: 24px; } }
        @media (max-width: 375px) {
          nav.side_nav ul li a svg {
            height: 20px; } }
      nav.side_nav ul li a:hover svg {
        fill: var(--main-link-color-hover);
        transition: 0.3s; }

h3.side_shop {
  text-align: left;
  margin: 0 0 30px 0; }
  @media (max-width: 770px) {
    h3.side_shop {
      margin: 0 0 16px 0; } }
  @media (max-width: 425px) {
    h3.side_shop {
      margin: 0 0 8px 0; }
      h3.side_shop img {
        height: 30px;
        width: auto; } }
  @media (max-width: 375px) {
    h3.side_shop {
      margin: 0; }
      h3.side_shop img {
        height: 20px;
        width: auto; } }

nav.side_official ul.officialshop {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: 0;
  padding: 0; }
  nav.side_official ul.officialshop li {
    list-style: none;
    font-size: 17px;
    font-size: 1.0625rem;
    margin: 0; }
    nav.side_official ul.officialshop li:last-child {
      margin: 0; }
    nav.side_official ul.officialshop li a {
      color: var(--main-color-base);
      padding-left: 42px;
      position: relative; }
      @media (max-width: 770px) {
        nav.side_official ul.officialshop li a {
          padding-left: 30px; } }
      nav.side_official ul.officialshop li a:hover {
        color: var(--main-link-color-hover); }
    nav.side_official ul.officialshop li span {
      display: none; }
    nav.side_official ul.officialshop li .announce {
      display: none; }
    @media (max-width: 770px) {
      nav.side_official ul.officialshop li {
        font-size: 16px;
        font-size: 1rem; }
        nav.side_official ul.officialshop li a {
          padding-left: 30px; } }
    @media (max-width: 425px) {
      nav.side_official ul.officialshop li {
        font-size: 15px;
        font-size: 0.9375rem; }
        nav.side_official ul.officialshop li a {
          padding-left: 25px; } }
    @media (max-width: 375px) {
      nav.side_official ul.officialshop li {
        font-size: 14px;
        font-size: 0.875rem; }
        nav.side_official ul.officialshop li a {
          padding-left: 16px; } }

main#main {
  width: 100%;
  margin: 0px auto 0;
  display: block; }
  @media (max-width: 500px) {
    main#main {
      padding-top: 80px; } }

#inner-content {
  max-width: 1018px;
  width: 1018px;
  margin: 0px auto 0;
  padding: 0px 0 82px;
  position: relative;
  z-index: 1; }
  @media (max-width: 1018px) {
    #inner-content {
      width: 95%; } }
  @media (max-width: 1120px) {
    #inner-content {
      padding: 50px 0 41px; } }
  @media (max-width: 770px) {
    #inner-content {
      padding: 33px 0 24px; } }
  @media (max-width: 425px) {
    #inner-content {
      padding: 24px 0 45px; } }

#breadcrumbs {
  width: 1014px;
  margin: 35px auto;
  color: var(--main-link-color);
  font-style: normal;
  font-size: 13px;
  font-size: 0.8125rem; }
  #breadcrumbs a {
    color: var(--main-link-color); }
    #breadcrumbs a:hover {
      color: var(--main-link-color-hover); }
  @media (max-width: 1120px) {
    #breadcrumbs {
      width: 90%; } }
  @media (max-width: 425px) {
    #breadcrumbs {
      margin: 16px auto;
      margin-bottom: 24px; } }

#page_header_wrapper {
  width: 1280px;
  height: 450px;
  margin: 0 auto;
  overflow: hidden; }
  @media (max-width: 1280px) {
    #page_header_wrapper {
      width: 100%;
      height: calc(450 / 1280 * 100vw); } }
  @media (max-width: 500px) {
    #page_header_wrapper {
      height: 100px; } }

#page_header_inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  background-image: url(images/header_title/header_back_image.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover; }

body.access #page_header_inner {
  background-image: url(images/header_title/header_access.jpg); }

body.attraction #page_header_inner {
  background-image: url(images/header_title/header_attraction.jpg); }

body.cuisine #page_header_inner {
  background-image: url(images/header_title/header_cuisine.jpg); }

body.facilities #page_header_inner {
  background-image: url(images/header_title/header_facilities.jpg); }

body.room #page_header_inner {
  background-image: url(images/header_title/header_room.jpg); }

body.service #page_header_inner {
  background-image: url(images/header_title/header_service.jpg); }

body.sightseeing #page_header_inner {
  background-image: url(images/header_title/header_sightseeing.jpg); }

body.post #page_header_inner {
  background-image: url(images/header_title/header_post.jpg); }

#page_header {
  width: 100%;
  text-align: center; }
  #page_header h2 {
    color: var(--main-color-base);
    margin: 0;
    padding: 146px 0 0 0;
    line-height: 1;
    font-size: 30px;
    font-size: 1.875rem;
    letter-spacing: 0.05em;
    text-align: center;
    text-shadow: 1px 1px 5px black, -1px -1px 5px black; }
    @media (max-width: 770px) {
      #page_header h2 {
        font-size: 25px;
        font-size: 1.5625rem;
        padding: 60px 0 0 0; } }
    @media (max-width: 500px) {
      #page_header h2 {
        padding: 0;
        font-size: 20px;
        font-size: 1.25rem; } }

.main-contents_wrapper {
  width: 1018px;
  margin: 38px auto 86px; }
  @media (max-width: 1018px) {
    .main-contents_wrapper {
      width: 95%; } }
  @media (max-width: 770px) {
    .main-contents_wrapper {
      margin: 24px auto 43px; } }
  @media (max-width: 425px) {
    .main-contents_wrapper {
      margin: 20px auto 20px; } }
  @media (max-width: 375px) {
    .main-contents_wrapper {
      margin: 16px auto 16px; } }

#main-contents {
  min-height: 300px;
  text-align: justify;
  font-size: 17px;
  font-size: 1.0625rem;
  line-height: 1.75; }
  @media (max-width: 770px) {
    #main-contents {
      font-size: 16px;
      font-size: 1rem; } }
  @media (max-width: 425px) {
    #main-contents {
      font-size: 15px;
      font-size: 0.9375rem; } }
  #main-contents h1 {
    letter-spacing: 0.1em;
    text-align: left;
    font-size: 30px;
    font-size: 1.875rem;
    margin-bottom: 1.5em; }
    @media (max-width: 770px) {
      #main-contents h1 {
        font-size: 28px;
        font-size: 1.75rem; } }
    @media (max-width: 425px) {
      #main-contents h1 {
        font-size: 26px;
        font-size: 1.625rem;
        margin-bottom: 1em; } }
    @media (max-width: 375px) {
      #main-contents h1 {
        font-size: 20px;
        font-size: 1.25rem; } }
    #main-contents h1.title {
      margin: 0 auto 86px; }
      @media (max-width: 770px) {
        #main-contents h1.title {
          margin-bottom: 46px; } }
      @media (max-width: 425px) {
        #main-contents h1.title {
          margin-bottom: 36px; } }
  #main-contents h2 {
    font-size: 36px;
    font-size: 2.25rem;
    margin-top: 46px;
    margin-bottom: 1.5em; }
    @media (max-width: 770px) {
      #main-contents h2 {
        font-size: 32px;
        font-size: 2rem;
        margin: 1em 0; } }
    @media (max-width: 425px) {
      #main-contents h2 {
        font-size: 26px;
        font-size: 1.625rem;
        margin-bottom: 1em; } }
    @media (max-width: 375px) {
      #main-contents h2 {
        font-size: 23px;
        font-size: 1.4375rem; } }
    #main-contents h2.h2_title {
      font-size: 36px;
      font-size: 2.25rem;
      margin-top: 0;
      margin-bottom: 0; }
      @media (max-width: 770px) {
        #main-contents h2.h2_title {
          font-size: 32px;
          font-size: 2rem;
          margin: 1em 0; } }
      @media (max-width: 425px) {
        #main-contents h2.h2_title {
          font-size: 26px;
          font-size: 1.625rem;
          margin-bottom: 1em; } }
      @media (max-width: 375px) {
        #main-contents h2.h2_title {
          font-size: 23px;
          font-size: 1.4375rem; } }
  #main-contents h3 {
    font-size: 25px;
    font-size: 1.5625rem;
    margin-top: 46px;
    margin-bottom: 1.5em;
    color: var(--main-color-base);
    letter-spacing: 0.1em;
    line-height: 1.35; }
    @media (max-width: 770px) {
      #main-contents h3 {
        font-size: 24px;
        font-size: 1.5rem;
        margin-top: 24px; } }
    @media (max-width: 425px) {
      #main-contents h3 {
        font-size: 22px;
        font-size: 1.375rem; } }
    #main-contents h3.title {
      margin-top: 0; }
  #main-contents h4 {
    font-size: 22px;
    font-size: 1.375rem;
    margin-top: 46px;
    margin-bottom: 1.5em;
    border-left: 3px solid #ceb97e;
    padding-left: 14px;
    letter-spacing: 0.1em;
    line-height: 1.75; }
    @media (max-width: 770px) {
      #main-contents h4 {
        font-size: 22px;
        font-size: 1.375rem;
        margin-top: 24px; } }
    @media (max-width: 425px) {
      #main-contents h4 {
        font-size: 20px;
        font-size: 1.25rem; } }
    #main-contents h4.title {
      margin-top: 0; }
  #main-contents h5 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-top: 46px;
    margin-bottom: 1.5em;
    padding-bottom: 0.1em;
    padding-left: 8px;
    border-bottom: 1px solid #ceb97e;
    letter-spacing: 0.1em;
    line-height: 1.5; }
    @media (max-width: 770px) {
      #main-contents h5 {
        font-size: 20px;
        font-size: 1.25rem;
        margin-top: 24px; } }
    @media (max-width: 425px) {
      #main-contents h5 {
        font-size: 18px;
        font-size: 1.125rem; } }
  #main-contents h6 {
    font-size: 17px;
    font-size: 1.0625rem;
    margin-top: 46px;
    margin-bottom: 1.5em;
    letter-spacing: 0.1em; }
    @media (max-width: 770px) {
      #main-contents h6 {
        font-size: 17px;
        font-size: 1.0625rem;
        margin-top: 24px; } }
    @media (max-width: 425px) {
      #main-contents h6 {
        font-size: 17px;
        font-size: 1.0625rem; } }
  #main-contents p {
    letter-spacing: 0.1em;
    margin-top: 1em;
    margin-bottom: 1em;
    line-height: 2; }
    @media (max-width: 425px) {
      #main-contents p {
        line-height: 1.75; } }
  #main-contents ul {
    margin: 1em 0 1em 1em; }
    @media (max-width: 425px) {
      #main-contents ul {
        margin: 1em 0 1em 0.5em; } }
    #main-contents ul li {
      line-height: 1.75; }
    #main-contents ul li + li {
      margin-top: 1em; }
  #main-contents ol {
    margin: 1em 0 1em 1em; }
    @media (max-width: 425px) {
      #main-contents ol {
        margin: 1em 0 1em 0.5em; } }
    #main-contents ol li {
      line-height: 1.75; }
  #main-contents strong {
    color: inherit; }
  #main-contents .wp-block-columns.are-vertically-aligned-top {
    margin-top: 90px;
    margin-bottom: 90px; }
    @media (max-width: 770px) {
      #main-contents .wp-block-columns.are-vertically-aligned-top {
        margin-top: 46px;
        margin-bottom: 46px; } }
    @media (max-width: 425px) {
      #main-contents .wp-block-columns.are-vertically-aligned-top {
        argin-top: 24px;
        margin-bottom: 24px; } }

#main-contents table {
  border-top: 1px solid #9aa19b;
  border-left: 1px solid #9aa19b;
  line-height: 1.5;
  width: 100%;
  margin: 0 auto; }
  #main-contents table th {
    border-right: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    font-weight: normal;
    padding: 8px;
    background-color: #ceb97e;
    color: #FFF;
    font-weight: bold; }
  #main-contents table td {
    border-right: 1px solid #9aa19b;
    border-bottom: 1px solid #9aa19b;
    padding: 8px;
    color: var(--main-bg-color);
    background-color: #FFF; }
  #main-contents table td.has-text-align-center,
  #main-contents table th.has-text-align-center {
    text-align: center; }
  #main-contents table td.has-text-align-right,
  #main-contents table th.has-text-align-right {
    text-align: right; }

#main-contents table.noborder {
  border-top: 0px none #808f9e;
  border-left: 0px none #808f9e;
  line-height: 1.5;
  width: 100%;
  margin: 0 auto; }
  #main-contents table.noborder th {
    border-right: 0px none #808f9e;
    border-bottom: 0px none #808f9e;
    background-color: transparent; }
  #main-contents table.noborder td {
    border-right: 0px none #808f9e;
    border-bottom: 0px none #808f9e;
    background-color: transparent; }

@media (max-width: 800px) {
  #main-contents .responsive_table {
    overflow-x: auto; } }
@media (max-width: 800px) {
  #main-contents .responsive_table table {
    min-width: 770px;
    margin: 0 10px 50px; } }
#main-contents .responsive_table table th {
  white-space: nowrap; }
@media (max-width: 800px) {
  #main-contents .responsive_table table td {
    width: auto !important; } }

/*目次*/
#main-contents .about_kantoku {
  margin: 36px 0;
  padding: 1em;
  border: 3px solid #0033cc; }
  @media (max-width: 425px) {
    #main-contents .about_kantoku figure {
      text-align: right; }
      #main-contents .about_kantoku figure img {
        height: 120px;
        width: auto; } }

#main-contents #toc_container {
  margin: 0 auto; }
  #main-contents #toc_container ul {
    margin: 0;
    padding: 0.5em; }
    #main-contents #toc_container ul li {
      font-size: 17px;
      font-size: 1.0625rem;
      list-style-type: none;
      padding-left: 0em;
      line-height: 1.75; }
      @media (max-width: 425px) {
        #main-contents #toc_container ul li {
          font-size: 16px;
          font-size: 1rem; } }
      @media (max-width: 375px) {
        #main-contents #toc_container ul li {
          font-size: 15px;
          font-size: 0.9375rem; } }
    #main-contents #toc_container ul li + li {
      margin-top: 0.3em; }
    #main-contents #toc_container ul li:before {
      content: "";
      position: inherit;
      top: inherit;
      left: inherit;
      width: auto;
      height: auto;
      background-color: transparent;
      border-radius: inherit; }

/*サブページ*/
.sub_inner {
  width: 1018px;
  margin: 0 auto; }
  @media (max-width: 1018px) {
    .sub_inner {
      width: 90%; } }

.full {
  margin: 0 -131px;
  width: 1280px; }
  @media (max-width: 1280px) {
    .full {
      margin: 0 calc(50% - 50vw);
      width: 100vw; } }

/*魅力*/
.miryoku {
  height: 697px;
  background-image: url(images/misyoku_back.png);
  background-position: left top;
  background-repeat: no-repeat; }
  @media (max-width: 1280px) {
    .miryoku {
      background-size: contain;
      height: calc(697 / 1280 * 100vw); } }
  @media (max-width: 1280px) and (max-width: 770px) {
    .miryoku {
      background-image: none;
      height: auto; } }

  .miryoku p {
    width: 50%;
    margin: 0 0 0 auto; }
    @media (max-width: 770px) {
      .miryoku p {
        width: 100%;
        margin: 0; } }

.miryokumap {
  display: none;
  text-align: center; }
  @media (max-width: 770px) {
    .miryokumap {
      display: block; } }
  .miryokumap img {
    height: 350px;
    width: auto; }
    @media (max-width: 425px) {
      .miryokumap img {
        width: 80%;
        height: auto; } }

.miryoku_box {
  margin-top: 0px;
  position: relative; }
  @media (max-width: 1018px) {
    .miryoku_box {
      width: 95%;
      margin: 0 auto; } }
  .miryoku_box figure.photo01 {
    text-align: right;
    z-index: 0; }
  .miryoku_box figure.photo02 {
    text-align: left;
    margin-top: -122px;
    margin-left: 131px;
    z-index: 1; }
    @media (max-width: 1280px) {
      .miryoku_box figure.photo02 {
        margin-left: 51px; } }
    @media (max-width: 1018px) {
      .miryoku_box figure.photo02 {
        margin-left: 0px; } }
    @media (max-width: 980px) {
      .miryoku_box figure.photo02 {
        margin-top: -60px; } }
    @media (max-width: 770px) {
      .miryoku_box figure.photo02 {
        margin-top: 0px; } }

.miryoku_box.miryoku_topbox {
  margin-top: -195px; }
  @media (max-width: 1280px) {
    .miryoku_box.miryoku_topbox {
      margin-top: -150px; } }
  @media (max-width: 1018px) {
    .miryoku_box.miryoku_topbox {
      width: 95%;
      margin: 0 auto; } }

.miryoku_box.box_left {
  margin-top: 0px;
  position: relative; }
  @media (max-width: 1018px) {
    .miryoku_box.box_left {
      width: 95%;
      margin: 0 auto; } }
  .miryoku_box.box_left figure.photo01 {
    text-align: left;
    z-index: 0; }
  .miryoku_box.box_left figure.photo02 {
    text-align: right;
    margin-top: -122px;
    margin-right: 131px;
    z-index: 1; }
    @media (max-width: 1280px) {
      .miryoku_box.box_left figure.photo02 {
        margin-right: 51px; } }
    @media (max-width: 1018px) {
      .miryoku_box.box_left figure.photo02 {
        margin-right: 0px; } }
    @media (max-width: 980px) {
      .miryoku_box.box_left figure.photo02 {
        margin-top: -60px; } }
    @media (max-width: 770px) {
      .miryoku_box.box_left figure.photo02 {
        margin-top: 0px; } }

.miryoku_txt_box {
  margin-top: -120px;
  margin-bottom: 80px; }
  @media (max-width: 980px) {
    .miryoku_txt_box {
      display: block !important;
      margin-top: 0px;
      margin-bottom: 60px; } }

/*お料理*/
@media (max-width: 770px) {
  #main-contents .cuisine_item ul {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap; }
    #main-contents .cuisine_item ul li {
      list-style: none;
      margin: 0px 8px 0px 8px;
      position: relative; }
      #main-contents .cuisine_item ul li:first-child {
        margin-left: 0; }
      #main-contents .cuisine_item ul li:last-child {
        margin-right: 0; }
      #main-contents .cuisine_item ul li + li::before {
        content: "・";
        top: 0px;
        left: -16px;
        position: absolute; } }

/*概要*/
#main-contents table.gaiyou {
  table-layout: fixed; }
  #main-contents table.gaiyou th {
    width: 150px; }

dl.gaiyou {
  margin-top: 2rem;
  margin-bottom: 2rem;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  width: 100%; }
  dl.gaiyou dt {
    flex-basis: 115px;
    padding: 10px 1rem 10px 1.1rem;
    color: #ceb97e;
    margin-bottom: 8px;
    position: relative; }
    dl.gaiyou dt:before {
      content: "";
      width: 8px;
      height: 8px;
      border: 1px solid #ceb97e;
      background: #ceb97e;
      position: absolute;
      left: 2px;
      top: 20px; }
  dl.gaiyou dd {
    flex-basis: calc(100% - 115px);
    padding: 10px 10px 10px 0px;
    margin-bottom: 8px; }
  dl.gaiyou.wide dt {
    flex-basis: 170px; }
  dl.gaiyou.wide dd {
    flex-basis: calc(100% - 170px); }
  @media (max-width: 425px) {
    dl.gaiyou {
      display: block; }
      dl.gaiyou dt {
        flex-basis: auto;
        width: 100%;
        border-bottom: 1px solid; }
        dl.gaiyou dt:before {
          top: 21px; }
      dl.gaiyou dd {
        flex-basis: auto;
        width: 100%;
        margin-left: 1rem; } }

/*新着情報*/
.article-header h1.entry-title {
  letter-spacing: 0.1em;
  text-align: left;
  border-bottom: 3px solid #ceb97e;
  font-size: 24px;
  font-size: 1.5rem;
  margin-bottom: 1.5em;
  line-height: 1.75; }
  @media (max-width: 770px) {
    .article-header h1.entry-title {
      font-size: 22px;
      font-size: 1.375rem; } }
  @media (max-width: 425px) {
    .article-header h1.entry-title {
      font-size: 20px;
      font-size: 1.25rem;
      margin-bottom: 1em; } }
  @media (max-width: 375px) {
    .article-header h1.entry-title {
      font-size: 19px;
      font-size: 1.1875rem; } }
  .article-header h1.entry-title.title {
    margin: 0 auto 86px; }
    @media (max-width: 770px) {
      .article-header h1.entry-title.title {
        margin-bottom: 46px; } }
    @media (max-width: 425px) {
      .article-header h1.entry-title.title {
        margin-bottom: 36px; } }

.date {
  font-size: 14px;
  font-size: 0.875rem;
  text-align: right;
  margin-bottom: 16px; }

#main-contents .entry-content {
  padding: 1rem 1.5rem;
  background-color: #fff;
  margin-top: 1.5em; }
  @media (max-width: 425px) {
    #main-contents .entry-content {
      margin-bottom: 1em; } }

/*お知らせ*/
#main-contents .list-contents.headline a h2.entry-card-title {
  font-size: 16px;
  font-size: 1rem;
  color: var(--main-link-color);
  margin: 0; }
  @media (max-width: 425px) {
    #main-contents .list-contents.headline a h2.entry-card-title {
      font-size: 14px;
      font-size: 0.875rem; } }
#main-contents .list-contents.headline a:hover {
  text-decoration: none;
  transition: .3s ease all; }
  #main-contents .list-contents.headline a:hover h2.entry-card-title {
    color: var(--main-btn-color); }

.news_archive {
  background-color: var(--main-bg-gray02);
  padding-top: 100px;
  padding-bottom: 100px;
  margin-bottom: 100px; }

#main-contents dd.list-text a {
  color: var(--main-link-color);
  display: block; }
  #main-contents dd.list-text a:hover {
    color: var(--main-link-color-hover);
    text-decoration: none; }

/*ブログ*/
.date {
  text-align: right;
  margin-bottom: 1em; }

body.post .main-contents,
body.news .main-contents {
  padding: 20px; }

body.post .main-contents.blog {
  padding: 20px 0px; }

#blog_area {
  margin: 32px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  flex-wrap: wrap; }

.blog_thum {
  width: 31%;
  margin: 16px 10px;
  background-color: #FFF;
  padding: 14px;
  border-radius: 10px;
  box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 0.4); }
  @media (max-width: 1120px) {
    .blog_thum {
      width: 30%;
      margin: 12px 8px;
      padding: 12px; } }
  @media (max-width: 770px) {
    .blog_thum {
      width: 47%;
      margin: 9px 5px; } }
  @media (max-width: 425px) {
    .blog_thum {
      width: 100%; } }

.blog_thum a:hover {
  text-decoration: none; }

#main-contents .blog_thum figure.eyecatch img {
  box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 0.4); }

#main-contents .blog_thum time.list-date {
  margin: 8px;
  float: right;
  font-size: 80%; }

#main-contents .blog_thum p.list-text {
  margin: 8px; }

.wp-block-file .wp-block-file__button {
  background-color: #ceb97e; }

#main-contents h4.is-style-vk-heading-plain, #main-contents h4.is-style-vk-heading-background_fill_lightgray, #main-contents h4.is-style-vk-heading-double_black, #main-contents h4.is-style-vk-heading-double_bottomborder_black, #main-contents h4.is-style-vk-heading-solid_black, #main-contents h4.is-style-vk-heading-solid_bottomborder_black, #main-contents h4.is-style-vk-heading-dotted_bottomborder_black, #main-contents h4.is-style-vk-heading-both_ends, #main-contents h4.is-style-vk-heading-brackets_black {
  border-left: 0px none #ceb97e; }
#main-contents h4.vk_borderBox_title {
  border-left: 0px none #ceb97e;
  font-size: inherit;
  margin-top: auto;
  margin-bottom: auto;
  padding-left: initial;
  letter-spacing: inherit;
  line-height: inherit; }

#main-contents h5.is-style-vk-heading-plain, #main-contents h5.is-style-vk-heading-background_fill_lightgray, #main-contents h5.is-style-vk-heading-both_ends {
  border-bottom: 0px none #ceb97e; }

/*vk blocks カスタマイズ*/
ul.is-style-vk-arrow-mark li::before,
ul.is-style-vk-triangle-mark li::before,
ul.is-style-vk-check-mark li::before,
ul.is-style-vk-check-circle-mark li::before,
ul.is-style-vk-check-square-mark li::before,
ul.is-style-vk-handpoint-mark li::before,
ul.is-style-vk-pencil-mark li::before,
l.is-style-vk-smile-mark li::before,
ul.is-style-vk-frown-mark li::before,
ul.is-style-vk-numbered-circle-mark li::before,
ul.is-style-vk-numbered-square-mark li::before,
ol.is-style-vk-arrow-mark li::before,
ol.is-style-vk-triangle-mark li::before,
ol.is-style-vk-check-mark li::before,
ol.is-style-vk-check-circle-mark li::before,
ol.is-style-vk-check-square-mark li::before,
ol.is-style-vk-handpoint-mark li::before,
ol.is-style-vk-pencil-mark li::before,
ol.is-style-vk-smile-mark li::before,
ol.is-style-vk-frown-mark li::before,
ol.is-style-vk-numbered-circle-mark li::before,
ol.is-style-vk-numbered-square-mark li::before {
  color: #ceb97e; }

.is-style-vk-heading-background_fill_lightgray {
  background-color: #ab9556; }

.is-style-vk-heading-double_black, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-double_black,
.is-style-vk-heading-double_bottomborder_black, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-double_bottomborder_black,
.is-style-vk-heading-solid_black, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-solid_black,
.is-style-vk-heading-solid_bottomborder_black, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-solid_bottomborder_black,
.is-style-vk-heading-dotted_bottomborder_black, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-dotted_bottomborder_black,
.is-style-vk-heading-both_ends::before, .is-style-vk-heading-both_ends::after, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-both_ends::before, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-both_ends::after,
.is-style-vk-heading-both_ends::before, .is-style-vk-heading-both_ends::after, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-both_ends::before, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-both_ends::after,
.is-style-vk-heading-brackets_black::before, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-brackets_black::before,
.is-style-vk-heading-brackets_black::after, .editor-styles-wrapper .block-editor-block-list__layout .is-style-vk-heading-brackets_black::after {
  border-color: #ceb97e; }

.wp-block-vk-blocks-alert.alert-success {
  background-color: #ab9556;
  color: #FFF;
  border-color: #ab9556; }
.wp-block-vk-blocks-alert.alert-info {
  background-color: #ffffff;
  color: var(--main-bg-color);
  border-color: #ceb97e; }
.wp-block-vk-blocks-alert.alert-warning {
  background-color: #ceb97e;
  color: var(--main-bg-color);
  border-color: #ab9556; }
.wp-block-vk-blocks-alert.alert-danger {
  background-color: #f2dede;
  color: #a94442;
  border-color: #ebccd1; }

.main-contents .clear_float::after {
  clear: both;
  content: "";
  display: table; }

.main-contents .mrgbtm0 {
  margin-bottom: 0; }

.main-contents .mrgbtm0 figure {
  margin-bottom: 0; }

.main-contents .mrgbtm05 {
  margin-bottom: 0.5em; }

.main-contents .mrgbtm1 {
  margin-bottom: 1em; }

.main-contents .mrgbtm2 {
  margin-bottom: 2em; }

.main-contents .mrgbtm3 {
  margin-bottom: 3em; }

.main-contents td.has-text-align-center,
.main-contents th.has-text-align-center {
  text-align: center; }

.main-contents td.has-text-align-right,
.main-contents th.has-text-align-right {
  text-align: right; }

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

*,
*::after,
*::before {
  -webkit-box-sizing: inherit;
  box-sizing: inherit; }

table {
  border-collapse: collapse; }

.smp_br {
  display: none; }

img {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: middle;
  max-width: 100%;
  height: auto; }

.reservation_calendar,
#reservationform {
  padding: 40px 25px;
  border-radius: 10px;
  background-color: #fff; }
  @media (max-width: 770px) {
    .reservation_calendar,
    #reservationform {
      padding: 20px; } }

.main-contents .reservation_calendar .reservation_pagenav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0.5em 0; }

.main-contents .reservation_calendar .reservation_pagenav .now_week {
  font-size: 18px;
  font-size: 1.125rem;
  font-weight: bold;
  text-align: center;
  color: #89ba52; }

.main-contents .reservation_calendar .reservation_pagenav .before_week a,
.main-contents .reservation_calendar .reservation_pagenav .next_week a {
  display: inline-block;
  padding: 4px 16px;
  text-align: center;
  color: #fff;
  background: #004076;
  border-radius: 8px; }

.main-contents .reservation_calendar .reservation_pagenav .before_week a:hover,
.main-contents .reservation_calendar .reservation_pagenav .next_week a:hover {
  opacity: 0.7; }

.main-contents .reservation_calendar .reservation_pagenav .before_week span,
.main-contents .reservation_calendar .reservation_pagenav .next_week span {
  display: inline-block;
  padding: 4px 16px;
  text-align: center;
  color: #666;
  background: #eee;
  border-radius: 8px; }

.main-contents .reservation_calendar .table-calendar th,
.main-contents .reservation_calendar .table-calendar td {
  padding: 0;
  text-align: center; }

.main-contents .reservation_calendar .table-calendar tr:nth-child(even) {
  background-color: #efefef; }

.main-contents .reservation_calendar .table-calendar tr:first-child {
  background-color: #fff; }

.main-contents .reservation_calendar .table-calendar tr:last-child {
  background-color: #fff; }

.main-contents .reservation_calendar .table-calendar .week0,
.main-contents .reservation_calendar .table-calendar .week1,
.main-contents .reservation_calendar .table-calendar .week2,
.main-contents .reservation_calendar .table-calendar .week3,
.main-contents .reservation_calendar .table-calendar .week4,
.main-contents .reservation_calendar .table-calendar .week5,
.main-contents .reservation_calendar .table-calendar .week6 {
  text-align: center; }

.main-contents .reservation_calendar .table-calendar .week0 .doweek,
.main-contents .reservation_calendar .table-calendar .week1 .doweek,
.main-contents .reservation_calendar .table-calendar .week2 .doweek,
.main-contents .reservation_calendar .table-calendar .week3 .doweek,
.main-contents .reservation_calendar .table-calendar .week4 .doweek,
.main-contents .reservation_calendar .table-calendar .week5 .doweek,
.main-contents .reservation_calendar .table-calendar .week6 .doweek {
  color: #555;
  background-color: #fffcaf;
  margin-bottom: 8px; }

.main-contents .reservation_calendar .table-calendar .week0 .days,
.main-contents .reservation_calendar .table-calendar .week1 .days,
.main-contents .reservation_calendar .table-calendar .week2 .days,
.main-contents .reservation_calendar .table-calendar .week3 .days,
.main-contents .reservation_calendar .table-calendar .week4 .days,
.main-contents .reservation_calendar .table-calendar .week5 .days,
.main-contents .reservation_calendar .table-calendar .week6 .days {
  margin-bottom: 4px; }

.main-contents .reservation_calendar .table-calendar .week0 .reservation,
.main-contents .reservation_calendar .table-calendar .week1 .reservation,
.main-contents .reservation_calendar .table-calendar .week2 .reservation,
.main-contents .reservation_calendar .table-calendar .week3 .reservation,
.main-contents .reservation_calendar .table-calendar .week4 .reservation,
.main-contents .reservation_calendar .table-calendar .week5 .reservation,
.main-contents .reservation_calendar .table-calendar .week6 .reservation {
  padding: 0;
  margin: 8px 0; }

.main-contents .reservation_calendar .table-calendar .week0 .reservation a,
.main-contents .reservation_calendar .table-calendar .week1 .reservation a,
.main-contents .reservation_calendar .table-calendar .week2 .reservation a,
.main-contents .reservation_calendar .table-calendar .week3 .reservation a,
.main-contents .reservation_calendar .table-calendar .week4 .reservation a,
.main-contents .reservation_calendar .table-calendar .week5 .reservation a,
.main-contents .reservation_calendar .table-calendar .week6 .reservation a {
  display: inline-block;
  padding: 4px 12px;
  text-align: center;
  color: #fff;
  background: #004076;
  border-radius: 8px; }

.main-contents .reservation_calendar .table-calendar .week0 .reservation a:hover,
.main-contents .reservation_calendar .table-calendar .week1 .reservation a:hover,
.main-contents .reservation_calendar .table-calendar .week2 .reservation a:hover,
.main-contents .reservation_calendar .table-calendar .week3 .reservation a:hover,
.main-contents .reservation_calendar .table-calendar .week4 .reservation a:hover,
.main-contents .reservation_calendar .table-calendar .week5 .reservation a:hover,
.main-contents .reservation_calendar .table-calendar .week6 .reservation a:hover {
  opacity: 0.7; }

.main-contents .reservation_calendar .table-calendar .week0 .reservation span,
.main-contents .reservation_calendar .table-calendar .week1 .reservation span,
.main-contents .reservation_calendar .table-calendar .week2 .reservation span,
.main-contents .reservation_calendar .table-calendar .week3 .reservation span,
.main-contents .reservation_calendar .table-calendar .week4 .reservation span,
.main-contents .reservation_calendar .table-calendar .week5 .reservation span,
.main-contents .reservation_calendar .table-calendar .week6 .reservation span {
  display: inline-block;
  padding: 4px 12px;
  text-align: center;
  color: #666;
  background: #eee;
  border-radius: 8px; }

.main-contents .reservation_calendar .table-calendar .week0 .doweek {
  color: #fff;
  background-color: #e50011; }

.main-contents .reservation_calendar .table-calendar .week0 .days {
  color: #e50011; }

.main-contents .reservation_calendar .table-calendar .week6 .doweek {
  color: #fff;
  background-color: #004076; }

.main-contents .reservation_calendar .table-calendar .week6 .days {
  color: #004076; }

.main-contents .reservation_calendar .table-calendar .hours {
  text-align: center;
  font-weight: bold;
  padding: 5px 0; }

.main-contents .reservation_calendar .show_sp .table-calendar th,
.main-contents .reservation_calendar .show_sp .table-calendar td {
  padding: 0;
  text-align: center; }

.main-contents .reservation_calendar .show_sp .table-calendar tr:nth-child(even) {
  background-color: #fff; }

.main-contents .reservation_calendar .show_sp .table-calendar tr:first-child {
  background-color: #fff; }

.main-contents .reservation_calendar .show_sp .table-calendar tr:first-child td:nth-child(even) {
  background-color: #efefef; }

.main-contents .reservation_calendar .show_sp .table-calendar tr:last-child {
  background-color: #fff; }

.main-contents .reservation_calendar .show_sp .table-calendar tr th:nth-child(even),
.main-contents .reservation_calendar .show_sp .table-calendar tr td:nth-child(even) {
  background-color: #efefef; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0,
.main-contents .reservation_calendar .show_sp .table-calendar .week1,
.main-contents .reservation_calendar .show_sp .table-calendar .week2,
.main-contents .reservation_calendar .show_sp .table-calendar .week3,
.main-contents .reservation_calendar .show_sp .table-calendar .week4,
.main-contents .reservation_calendar .show_sp .table-calendar .week5,
.main-contents .reservation_calendar .show_sp .table-calendar .week6 {
  text-align: center; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .doweek,
.main-contents .reservation_calendar .show_sp .table-calendar .week1 .doweek,
.main-contents .reservation_calendar .show_sp .table-calendar .week2 .doweek,
.main-contents .reservation_calendar .show_sp .table-calendar .week3 .doweek,
.main-contents .reservation_calendar .show_sp .table-calendar .week4 .doweek,
.main-contents .reservation_calendar .show_sp .table-calendar .week5 .doweek,
.main-contents .reservation_calendar .show_sp .table-calendar .week6 .doweek {
  color: #555;
  background-color: #fffcaf;
  margin-bottom: 8px; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .days,
.main-contents .reservation_calendar .show_sp .table-calendar .week1 .days,
.main-contents .reservation_calendar .show_sp .table-calendar .week2 .days,
.main-contents .reservation_calendar .show_sp .table-calendar .week3 .days,
.main-contents .reservation_calendar .show_sp .table-calendar .week4 .days,
.main-contents .reservation_calendar .show_sp .table-calendar .week5 .days,
.main-contents .reservation_calendar .show_sp .table-calendar .week6 .days {
  margin-bottom: 4px; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .reservation,
.main-contents .reservation_calendar .show_sp .table-calendar .week1 .reservation,
.main-contents .reservation_calendar .show_sp .table-calendar .week2 .reservation,
.main-contents .reservation_calendar .show_sp .table-calendar .week3 .reservation,
.main-contents .reservation_calendar .show_sp .table-calendar .week4 .reservation,
.main-contents .reservation_calendar .show_sp .table-calendar .week5 .reservation,
.main-contents .reservation_calendar .show_sp .table-calendar .week6 .reservation {
  padding: 0;
  margin: 8px 0; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .reservation a,
.main-contents .reservation_calendar .show_sp .table-calendar .week1 .reservation a,
.main-contents .reservation_calendar .show_sp .table-calendar .week2 .reservation a,
.main-contents .reservation_calendar .show_sp .table-calendar .week3 .reservation a,
.main-contents .reservation_calendar .show_sp .table-calendar .week4 .reservation a,
.main-contents .reservation_calendar .show_sp .table-calendar .week5 .reservation a,
.main-contents .reservation_calendar .show_sp .table-calendar .week6 .reservation a {
  display: inline-block;
  padding: 4px 12px;
  text-align: center;
  color: #fff;
  background: #004076;
  border-radius: 8px; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .reservation a:hover,
.main-contents .reservation_calendar .show_sp .table-calendar .week1 .reservation a:hover,
.main-contents .reservation_calendar .show_sp .table-calendar .week2 .reservation a:hover,
.main-contents .reservation_calendar .show_sp .table-calendar .week3 .reservation a:hover,
.main-contents .reservation_calendar .show_sp .table-calendar .week4 .reservation a:hover,
.main-contents .reservation_calendar .show_sp .table-calendar .week5 .reservation a:hover,
.main-contents .reservation_calendar .show_sp .table-calendar .week6 .reservation a:hover {
  opacity: 0.7; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .reservation span,
.main-contents .reservation_calendar .show_sp .table-calendar .week1 .reservation span,
.main-contents .reservation_calendar .show_sp .table-calendar .week2 .reservation span,
.main-contents .reservation_calendar .show_sp .table-calendar .week3 .reservation span,
.main-contents .reservation_calendar .show_sp .table-calendar .week4 .reservation span,
.main-contents .reservation_calendar .show_sp .table-calendar .week5 .reservation span,
.main-contents .reservation_calendar .show_sp .table-calendar .week6 .reservation span {
  display: inline-block;
  padding: 4px 12px;
  text-align: center;
  color: #666;
  background: #eee;
  border-radius: 8px; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .doweek {
  color: #fff;
  background-color: #e50011; }

.main-contents .reservation_calendar .show_sp .table-calendar .week0 .days {
  color: #e50011; }

.main-contents .reservation_calendar .show_sp .table-calendar .week6 .doweek {
  color: #fff;
  background-color: #004076; }

.main-contents .reservation_calendar .show_sp .table-calendar .week6 .days {
  color: #004076; }

.main-contents .reservation_calendar .show_sp .table-calendar .hours {
  text-align: center;
  font-weight: bold;
  padding: 5px 0; }

.main-contents .wrap .send_box {
  display: block;
  text-align: center;
  margin: 0.5em auto; }

.calendar .reservation a.disabled {
  pointer-events: none;
  color: #9a9a9a; }

.table-reservationform .error {
  display: block;
  background: #ff8888;
  padding: .3rem;
  border-radius: .3rem;
  color: #fff; }

.table-reservationform .info {
  display: block;
  color: #ff6a6a; }

.table-reservationform button.children {
  border: none;
  border-radius: 1.2rem;
  width: 1.2rem;
  height: 1.2rem;
  text-align: center;
  color: #fff;
  cursor: pointer;
  padding: 0; }

.table-reservationform button.children.del {
  background: #ff8e8e; }

.table-reservationform button.children.add {
  background: #8ea6ff;
  display: block;
  margin-top: .5rem; }

.table-reservationform #children {
  display: none; }

.table-reservationform th span {
  color: #ff0000; }

.show_pc {
  display: block; }

.show_sp {
  display: none; }

@media screen and (max-width: 900px) {
  .show_pc {
    display: none; }

  .show_sp {
    display: block; } }
@media print {
  .main-contents table td {
    border: 1px solid #000000; }

  .main-contents table th {
    border: 1px solid #000000;
    color: #000000; }

  header#header {
    position: relative; }

  .animated {
    animation: none;
    transform: none;
    transition: unset; } }
/* ----------------------------------------------------------------------
 Gutenberg
---------------------------------------------------------------------- */
@media (max-width: 600px) {
  .wp-block-media-text .wp-block-media-text__content {
    padding: 0; } }
