@charset "UTF-8";

/*
Theme Name: hideout
Description: This is hideout site original theme.
Author: BookingResort
*/
.top-page {
  overflow-x: hidden;
}

.mv-box img {
  width: 100%;
  height: auto;
}

.br_pc {
  display: block;
}

.br_sp {
  display: none;
}

span {
  display: inline-block;
}

/*main {
	overflow-x: hidden;
}*/
/*Smartphone*/
@media screen and (max-width: 767px) {
  body {
    padding-bottom: 12%;
  }

  .br_pc {
    display: none;
  }

  .br_sp {
    display: block;
  }
}

/*END*/
/*------------------------------------------

	サイト内汎用

------------------------------------------*/
.txt {
  font-size: 1.6rem;
  /* line-height: 2.2; */
}

.inr {
  /* padding-right: 70px;
  padding-left: 70px; */
  width: 100%;
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}


.link a {
  font-size: 1.4rem;
  color: #1a2926;
  border: #1a2926 1px solid;
  display: inline-block;
  padding: 1em 2em;
}

.link_color a {
  font-size: 1.2rem;
  border: #737E7A 1px solid;
  display: inline-block;
  padding: 1em 2em;
}

.sosolink a {
  font-size: 1.2rem;
  color: #222;
  border: #222 1px solid;
  display: inline-block;
  padding: 1em 2em;
}

.hx-type1 {
  font-size: 3.0rem;
  font-weight: 500;
}

.hx-type2 {
  font-size: 2.3rem;
  line-height: 1.5;
  font-weight: 500;
}

.hx-type2 .sub {
  font-size: .6em;
}

.hx-type3 {
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.5;
  border-bottom: #737E7A 1px solid;
  padding-top: 15px;
  padding-bottom: 10px;
}

.pb15 {
  padding-top: 0;
  padding-bottom: 15px;
}

.hx-type3 .sub {
  font-size: 2.3rem;
}

.hx-type4 {
  font-size: 3rem;
  line-height: 1.5;
}

.hx-type4 .sub {
  font-size: .6em;
  color: #737E7A;
  padding-right: 1em;
}

.hx-type4.slv .sub {
  color: #939393;
}

.color_w {
  color: #fff;
}

.bk_white {
  background-color: #fff;
}

/*PC*/
@media screen and (min-width: 768px) {
  .anchor {
    padding-top: 68px;
    margin-top: -68px;
  }
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {
  .inr {
    padding-right: 2%;
    padding-left: 2%;
  }

  .anchor {
    padding-top: 68px;
    margin-top: -68px;
  }

  .txt {
    font-size: 1.4rem;
    letter-spacing: -.03em;
  }

  .hx-type1 {
    font-size: 2.2rem;
    letter-spacing: -.03em;
  }

  .hx-type2 {
    font-size: 2.4rem;
    letter-spacing: -.03em;
  }
}

/*END*/
/*------------------------------------------

	ヘッダー固定

------------------------------------------*/
.site-header {
  width: 100%;
  position: absolute;
  /*background-color: rgba(76,98,84,0.80);*/
  top: 0;
  left: 0;
  transition: .6s;
  padding: 20px 45px;
  z-index: 9999;
}

.site-header .inr {}

.site-header h1,
.site-header p,
.site-header a {
  width: 208px;
}

.site-header img,
.site-header {
  width: 100%;
}

.site-header .menu-box {
  width: calc(100% - 250px);
}

.site-header .gnav li {
  margin-left: 30px;
}

.site-header .gnav a {
  font-size: 1.6rem;
  /*color: #fff;*/
}

.site-header .gnav .waku a {
  border: #fff 1px solid;
  border-radius: 3px;
  padding: .7em;
}

ul.gnav {
  margin-right: 80px;
}

header.site-header h1,
header.site-header a {
  margin: 0 auto;
}

/*PC*/
@media screen and (min-width: 768px) {
  .hed-fix .site-header {
    background-color: #D5F0E5;
    padding: 15px 25px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
  }

  .hed-fix .site-header .gnav a,
  .single .site-header .gnav a {
    /*color: #fff;*/
  }

  .hed-fix .site-header .gnav .waku a,
  .single .site-header .gnav .waku a {
    border: #fff 1px solid;
  }

  /*.single .site-header {
		background-color: #fff;
	}*/
  .site-header .gnav .drop {
    position: relative;
  }

  .site-header .gnav .sub-menu {
    display: none;
  }

  .hed-fix .site-header .sub-menu,
  .single .site-header .sub-menu {
    background-color: rgba(255, 255, 255, .8);
  }

  .hed-fix .site-header .sub-menu a {
    color: #262626;
  }

  .site-header .gnav .drop {
    padding-left: 1em;
    position: relative;
  }

  .site-header .gnav .drop::before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 8px 5.5px 0 5.5px;
    border-color: #fff transparent transparent transparent;
    position: absolute;
    top: calc(50% - -1px);
    left: -5px;
    transform: translateY(-50%);
  }

  .hed-fix .site-header .gnav .drop::before,
  .single .site-header .gnav .drop::before {
    border-color: #000 transparent transparent transparent;
  }

  .site-header .gnav .drop .sub-menu {
    width: 150%;
    position: relative;
  }

  .site-header .gnav .drop:hover .sub-menu {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
  }

  .site-header .gnav .drop .sub-menu li {
    padding-left: 1em;
    margin-left: 0;
  }

  .menu-btn {
    display: none;
  }

  /* インスタボタン */
  #menu-item-4228 a {
    display: contents;
  }

  #menu-item-4228 img {
    display: inline;
    width: 45%;
    margin-top: -8px;
  }

  /* インスタボタン END */
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 1030px) {
  .site-header .gnav li {
    margin-left: 25px;
  }
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 768px) {
  .site-header .gnav a {
    font-size: 1.4rem;
  }
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 768px) {

  .site-header h1,
  .site-header img {
    width: 104px;
    margin: 1px auto;
  }

  /*gnavボタン*/
  .site-header .open-btn {
    width: 40px;
    height: 30px;
    position: fixed;
    top: 10px;
    right: 10px;
  }

  .site-header .open-btn span {
    width: 100%;
    height: 2px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
  }

  .site-header .open-btn::before,
  .site-header .open-btn::after {
    content: "";
    width: 100%;
    height: 2px;
    background-color: #fff;
    display: block;
    position: absolute;
    left: 0;
  }

  .site-header .open-btn::before {
    top: 0;
  }

  .site-header .open-btn::after {
    bottom: 0;
  }

  .site-header .close-btn {
    width: 100%;
    height: 60px;
    color: #262626;
    border-bottom: #fff 1px solid;
    background: #fff;
    padding: 1em;
  }

  /*gnav*/
  .site-header .menu-box {
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, .8);
    position: fixed;
    top: 0;
    left: 100%;
    z-index: 9999;
    transition: .3s;
    overflow: scroll;
    padding-bottom: 410px;
  }

  .open .site-header .menu-box {
    left: 0;
  }

  .site-header .gnav {
    width: 100%;
    display: block;
    margin: 0 auto;
  }

  .site-header .gnav li {
    width: 100%;
    margin-left: 0;
  }

  .site-header .gnav li a {
    width: 100%;
    font-size: 1.6rem;
    display: block;
    border-bottom: #fff 1px solid;
    padding: 1em;
  }

  .site-header .gnav li .sub-menu a {
    font-size: 1.3rem;
    color: #fff;
    background-color: rgba(0, 0, 0, .7);
  }

  .site-header .gnav .waku a {
    width: 80%;
    margin-top: 30px;
    margin-right: auto;
    margin-left: auto;
  }

  .site-header {
    padding: 2%;
    position: fixed;
    /* background-color: rgba(76, 98, 84, 0.80); */
    background-color: #D5F0E5;
    height: 60px;
  }

  /* .hed-fix .site-header {
		padding: 2%;
	} */
  .up-menu {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10000;
    background: #2A8481;
    color: #fff;
    padding: 3px 5px;
    text-align: center;
  }

  /* インスタボタン */
  #menu-item-4228 img {
    width: 44px;
    margin: 0 auto;
  }

  /* インスタボタン END */
}

/*END*/
/*------------------------------------------

TOP記事スライダー1

------------------------------------------*/
.slider-box {
  background-color: #e7e9ed;
  padding-top: 60px;
  padding-bottom: 60px;
}

.slider-box .inr {
  /*width: 100%;*/
  max-width: 1280px;
  padding-right: 30px;
  padding-left: 30px;
  margin-right: auto;
  margin-left: auto;
}

.slider-box .post-box {
  padding: 0 20px;
}

.slider-box .post-wrap {
  padding: 1em;
}

.slider-box .post-box .tit {
  font-size: 1.7rem;
  font-weight: normal;
}

.slider-box .post-box .txt {
  font-size: 1.5rem;
  line-height: 1.7;
}

.slider-box .my-dots {
  display: flex;
  justify-content: center;
}

.slider-box .flex-control-nav a,
.slider-box .my-dots li button {
  width: 10px;
  height: 10px;
  color: transparent;
  border-radius: 100px;
  display: block;
  background-color: #939393;
  margin-right: 5px;
  margin-left: 5px;
}

.slider-box .flex-control-nav a.flex-active,
.slider-box .my-dots li.slick-active button {
  background-color: #262626;
}

/*PC*/
@media screen and (min-width: 768px) {}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {
  .slider-box {
    padding-top: 30px;
    padding-bottom: 30px;
  }

  .slider-box .inr {
    padding-right: 2%;
    padding-left: 2%;
  }

  .slider-box #post-slider {
    width: 95%;
    margin-right: auto;
    margin-left: auto;
  }

  .slider-box .post-box {
    padding: 0 5px;
  }

  .slider-box .post-box .tit {
    font-size: 1.5rem;
  }

  .slider-box .post-box .txt {
    font-size: 1.3rem;
  }
}

/*END*/
/*------------------------------------------

２columnエリア

------------------------------------------*/
.column-box {
  /*padding-bottom: 20px;*/
}

.column-box .txt-box {
  width: 50%;
}

.column-box .img-box {
  width: calc(100% - 50%);
  height: 550px;
}

.column-box .img-box.-slide {
  height: auto;
}

.column-box .img-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.column-box .img-box .topinner {
  width: 100%;
  min-width: unset;
}

.column-box .img-box .topinner .slide>span {
  margin: 0;
}

.column-box .img-box .topinner .slide .txtbar-pc {
  left: 0;
}

.column-box.column2 .txt-box,
.column-box.column2 .img-box {
  width: 50%;
  padding-bottom: 15px;
}

.column-box.-new:nth-of-type(2n) {
  flex-direction: row;
}

.meal_w {
  color: #1a2926;
}

.meal_g {
  color: #E2E6E1;
}

.meal_lh {
  line-height: 1.1;
}

/*PC*/
@media screen and (min-width: 768px) {
  .column-box .txt-box {
    padding-right: 40px;
    padding-left: 40px;
    margin-top: -35px;
    position: relative;
    z-index: 2;
  }
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {
  .column-box .txt-box {
    width: 100%;
    padding-top: 20px;
    padding-right: 2%;
    padding-left: 2%;
  }

  .column-box .img-box {
    width: 100%;
    height: auto;
  }

  .sp_txtal {
    text-align: center;
  }

  .sp_w100 {
    width: 100%;
  }

  .column-box.column2 .txt-box,
  .column-box.column2 .img-box {
    width: 100%;
  }
}

/*END*/
/*------------------------------------------

PLAN

------------------------------------------*/
.plan-box {
  background-color: #f4f4f4;
  padding-bottom: 100px;
  padding-top: 40px;
}

.plan-box .inr {
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}

.plan-box article::before,
.plan-box article::after {
  content: "";
  width: 23.4375%;
  max-width: 300px;
  display: block;
}

.plan-box article::before {
  order: 1;
}

.plan-box .post-box {
  width: 23.4375%;
  max-width: 300px;
}

.plan-box .post-wrap {
  background-color: #fff;
  padding: 1em;
}

.plan-box .post-box .tit {
  font-size: 1.7rem;
}

.plan-box .post-box .txt {
  line-height: 1.8;
}

.plan-box .post-box .cat {
  font-size: 1.3rem;
  display: inline-block;
  border: #999 1px solid;
  border-radius: 100px;
  padding: .3em 1em;
  margin-right: 10px;
}

.room_table {
  width: 90%;
  margin: 0 auto;
  border-collapse: collapse;
}

.room_table th {
  width: 30%;
  text-align: center;
  padding: 15px;
}

.room_table td {
  width: 70%;
  padding: 12px 35px;
}

.room_table th,
.room_table td {
  border-top: solid 1px #CCC8BC;
  border-bottom: solid 1px #CCC8BC;
}

.tabl_txt {
  text-align: center;
  font-size: 2rem;
}

@media screen and (max-width: 768px) {
  .room_table {
    width: 90%;
  }

  .room_table th,
  .room_table td {
    border-bottom: none;
    display: block;
    text-align: left;
    width: 100%;
  }
}

@media screen and (max-width: 425px) {
  .room_table {
    width: 98%;
  }
}

/*PC*/
@media screen and (min-width: 768px) {}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {
  .plan-box {
    background-color: #f4f4f4;
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .plan-box .post-box {
    width: 48%;
    max-width: none;
  }

  .plan-box .post-box .tit {
    font-size: 1.4rem;
  }

  .plan-box .post-box .txt {
    font-size: 1.3rem;
  }

  .plan-box .post-box .cat {
    font-size: 1.2rem;
    margin-right: 5px;
  }
}

/*END*/
/*------------------------------------------

journal

------------------------------------------*/
.journal-box {
  background-color: #f4f4f4;
  padding-bottom: 100px;
}

.journal-wrap {
  background-color: #fff;
  padding-top: 100px;
  padding-bottom: 50px;
}

.journal-box .inr {
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}

.journal-box .post-box {
  width: 50%;
}

.journal-box .thum {
  width: 260px;
  height: 260px;
}

.journal-box .thum img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  font-family: 'object-fit: cover;'
}

.journal-box .post-wrap {
  width: calc(100% - 260px);
  padding-right: 2em;
  padding-left: 2em;
}

.journal-box time {
  font-size: 1.7rem;
}

.journal-box .tit {
  font-size: 1.7rem;
}

.journal-box .txt {
  font-size: 1.5rem;
  line-height: 1.8;
}

.journal-box .cat,
.single-journal .content-box .cat {
  font-size: 1.3rem;
  background-color: #f4f4f4;
  display: inline-block;
  border-radius: 100px;
  padding: .3em 1em;
  margin-right: 10px;
}

/*PC*/
@media screen and (min-width: 768px) {}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {
  .journal-box {
    padding-bottom: 50px;
  }

  .journal-wrap {
    padding-top: 50px;
    padding-bottom: 20px;
  }

  .journal-box .post-box {
    width: 100%;
  }

  .journal-box .thum {
    width: 100px;
    height: 100px;
  }

  .journal-box .post-wrap {
    width: calc(100% - 100px);
    padding-right: 0;
    padding-left: 1em;
  }

  .journal-box time {
    font-size: 1.2rem;
  }

  .journal-box .tit {
    font-size: 1.4rem;
  }

  .journal-box .txt {
    font-size: 1.3rem;
    text-align: center;
  }

  .journal-box .cat,
  .single-journal .content-box .cat {
    font-size: 1.2rem;
    margin-right: 5px;
  }
}

/*END*/
/*------------------------------------------

	フッター

------------------------------------------*/
.simai-box {
  width: 100%;
  color: #fff;
  background-color: #2A8481;
  padding-top: 100px;
  padding-bottom: 60px;
}

.simai-box h4 {
  text-align: left !important;
}

.simai-box .inr {
  width: 100%;
  max-width: 1280px;
  margin-right: auto;
  margin-left: auto;
}

.shisetsu-box {
  width: 28.90625%;
  max-width: 370px;
}

.shisetsu-box:first-child {
  width: 100%;
  max-width: 740px;
}

.shisetsu-box:first-child .shisetsu-inr {
  width: 50%;
}

.shisetsu-flex {
  display: flex;
  flex-wrap: wrap;
}

.shisetsu-box .thum {
  width: 41.6666666667%;
  max-width: 120px;
}

.shisetsu-box .txt-box {
  max-width: 340px;
  padding-left: 10px;
  padding-top: 3px;
}

.shisetsu-box .txt-box .cap {
  font-size: 1.3rem;
  letter-spacing: -.03em;
}

.shisetsu-box .txt-box .tit {
  font-size: 1.8rem;
  font-weight: normal;
  letter-spacing: -.03em;
}

.shisetsu-box.topinu {
  width: 100%;
  flex-direction: row;
  display: flex;
  max-width: 1150px;
  margin: 20px auto;
  justify-content: space-between;
  border-top: 1px #fff solid;
  padding-top: 30px;
}

@media screen and (max-width: 767px) {
  .shisetsu-box.topinu {
    flex-direction: column;
  }

  .shisetsu-box.topinu .txt-box {
    width: 90%;
    margin: 0 auto;
  }
}

.footer-about-box {
  /*color: #fff;*/
  background-color: #C6E8E2;
  padding: 70px 0 35px;
}

.footer-about-box p.tel {
  font-size: 22px;
}

.footer-about-box .inr {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

.footer-about-box .cpy-box {
  width: 50%;
  border-right: #fff 1px solid;
}

.footer-about-box .tit {
  font-size: 2.6rem;
}

.footer-about-box address {
  font-size: 1.7rem;
  font-style: normal;
}

.footer-about-box .t-access span {
  text-decoration-line: underline;
}

.footer-about-box .res a {
  font-size: 1.6rem;
  border: #333 1px solid;
  border-radius: 3px;
  display: inline-block;
  padding: .4em 1.4em;
}

.footer-about-box a {
  /*color: #fff;*/
}

.footer-about-box .nav-box {
  width: 50%;
}

footer .gnav {
  font-size: 1.9rem;
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2;
}

footer .nav-inr {
  margin-left: auto;
}

footer .gnav>li {
  line-height: 2;
  position: relative;
  padding-left: 1em;
}

footer .gnav>li::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  left: 0;
  top: 15px;
  border-top: solid 1px;
  border-right: solid 1px;
  transform: rotate(45deg) translateY(-50%);
  color: inherit;
}

footer .gnav .sub-menu {
  font-size: 1.6rem;
  padding-left: 1em;
}

footer .gnav .sub-menu>li {
  line-height: 1.7;
  position: relative;
}

footer .gnav .sub-menu>li::after {
  content: "";
  width: 3px;
  height: 3px;
  background-color: #fff;
  border-radius: 100px;
  display: block;
  position: absolute;
  left: -.9em;
  top: 13px;
}

footer .footer_company {
  text-align: center;
  font-size: 12px;
  padding: 40px 0 0 0;
}

/*PC*/
@media screen and (min-width: 768px) {
  footer .nav-inr {
    margin-right: 80px;
  }

  footer .gnav li.menu-item-341 {
    margin-bottom: 35px;
  }

  footer .gnav li.menu-item-344 {
    margin-left: 50px;
  }

  .sm-footer-menu {
    display: none;
  }
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {
  .simai-box {
    padding-top: 50px;
    padding-bottom: 30px;
  }

  .shisetsu-box {
    width: 100%;
    max-width: none;
  }

  .shisetsu-box:first-child .shisetsu-inr {
    width: 100%;
  }

  .shisetsu-box .thum {
    width: 20%;
    max-width: none;
  }

  .shisetsu-box .txt-box {
    width: 80%;
    max-width: none;
    padding-left: 5px;
  }

  .shisetsu-box .txt-box .cap {
    font-size: 1.2rem;
  }

  .shisetsu-box .txt-box .tit {
    font-size: 1.6rem;
  }

  .footer-about-box {
    padding: 30px 0;
  }

  .footer-about-box .cpy-box {
    width: 100%;
    border-right: 0;
  }

  .footer-about-box .tit {
    font-size: 2.2rem;
  }

  .footer-about-box address {
    font-size: 1.4rem;
    font-style: normal;
  }

  .footer-about-box .res a {
    font-size: 1.3rem;
  }

  .footer-about-box .nav-box {
    width: 100%;
  }

  .footer-about-box img {
    width: 80% !important;
    height: auto;
    margin: 0 auto !important;
  }

  footer .gnav {
    font-size: 1.5rem;
    border-top: #fff 1px solid;
    -webkit-column-count: 1;
    -moz-column-count: 1;
    column-count: 1;
  }

  footer .nav-inr {
    width: 100%;
    margin-left: 0;
  }

  footer .gnav li a {
    width: 100%;
    border-bottom: #fff 1px solid;
    display: block;
    padding: .5em;
  }

  footer .gnav>li {
    padding-left: 0;
  }

  footer .gnav>li::after {
    left: auto;
    right: 15px;
    top: 22px;
  }

  footer .gnav .sub-menu {
    font-size: 1.3rem;
  }

  footer .gnav .sub-menu>li::after {
    top: 18px;
  }

  footer .footer_company {
    text-align: center;
    font-size: 12px;
    padding: 40px 0 40px 0;
  }

  .sm-footer-menu {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 99999;
    width: 100%;
  }

  .sm-footer-menu li {
    text-align: center;
    position: relative;
    height: 56px;
  }

  .sm-footer-menu li a {
    position: absolute;
    top: 5px;
    left: 0;
    height: 100%;
    width: 100%;
    font-size: 14px;
  }

  .sm-footer-menu li:nth-of-type(1) {
    width: 50%;
    background: #d6d945;
  }

  /*.sm-footer-menu li:nth-of-type(2) {
		width: 28%;
    background: #6C7A71;
	}*/
  .sm-footer-menu li:nth-of-type(2) {
    width: 25%;
    background: #fff;
  }

  .sm-footer-menu li:nth-of-type(3) {
    width: 25%;
    background: #fff;
  }

  /*.sm-footer-menu li.menu-btn {
		width: 20%;
		background: #222;
		color: #fff;
		padding-top: 14px;
	}*/
}

/*END*/
/*------------------------------------------

	リアルタイムエラー

------------------------------------------*/
.fld-con {
  position: relative;
}

.tooltip {
  color: #fff;
  position: absolute;
  background: #8B0000;
  font-size: 14px;
  width: 60%;
  padding: 5px 10px;
  left: 0;
  top: -40px;
  border-radius: 5px;
  border: 1px solid #aaa;
  box-shadow: 0px 1px 2px 0 #C1BCB9;
  z-index: 10000;
  line-height: 22px;
  display: none;
}

/*PC*/
@media screen and (min-width: 768px) {}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {}

/*END*/
/*------------------------------------------

	ページ内リンクの時の処理　追記

------------------------------------------*/
a.scroll_point {
  height: 1px;
  margin-top: -80px;
  padding-top: 80px;
  display: block;
  /*color: #909757;*/
}

@media screen and (max-width: 896px) {
  a.scroll_point {
    display: block;
    margin-top: 0;
    padding-top: 0;
  }
}

/*言語切り替え*/
.language {
  z-index: 9999;
  position: absolute;
  right: 20px;
  top: 22px;
  width: 140px;
  height: 20px;
}

.language>li {
  /*親階層のみ幅を25%にする*/
  width: 100%;
}

/*全てのリスト・リンク共通*/
.language li {
  list-style: none;
  position: relative;
}

.language li p.lan-ja,
.language li a {
  background: #eee;
  display: block;
  text-align: center;
  text-decoration: none;
  width: 100%;
  padding: 5px 0;
  border-radius: 18px;
}

/*子階層以降共通*/
.language li li {
  height: 0;
  overflow: hidden;
  transition: .5s;
  margin-top: 1px;
  margin-bottom: 6px;
}

.language li:hover>ul>li {
  height: 2rem;
  overflow: visible;
}

@media screen and (max-width:896px) {
  .language {
    left: 12px;
    top: 10px;
    width: 110px;
  }
}

.cakejp {
  width: 100%;
  max-width: 1100px;
  padding: 15px;
  margin: 40px auto 80px;
  display: flex;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.cakejp .img {
  width: 55%;
  height: 180px;
}

.cakejp .img img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  object-position: 0% 50%;
}

.cakejp .txt {
  width: 45%;
  height: 180px;
  padding: 20px 15px;
  box-sizing: border-box;
  background: #C2C6C3;
}

.cakejp .txt h3 {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 10px;
}

.cakejp .txt h3,
.cakejp .txt p {
  text-align: center;
  color: #293A41;
}

.cakejp .txt p {
  margin-bottom: 14px;
}

.cakejp .txt .link a {
  color: #293A41;
  border: #293A41 1px solid;
  padding: 0.5em 2em;
}

@media screen and (max-width:896px) {
  .cakejp_txt {
    padding: 40px 30px 50px;
    background-color: #000;
    box-sizing: border-box;
  }

  .cakejp {
    width: 100%;
    padding: 0;
  }

  .cakejp .img {
    width: 100%;
    height: auto;
  }

  .cakejp .img img {
    height: auto;
  }

  .cakejp .txt {
    width: 100%;
    height: auto;
  }

  .cakejp .txt h3 {
    font-size: 1.8rem;
    font-weight: 500;
    margin-bottom: 10px;
  }
}

.link_dog a {
  color: #293A41;
  border: #293A41 1px solid;
  padding: 0.5em 2em;
}

.slick-img-btn {
  width: 100%;
}

.slick-img-btn .item {
  cursor: pointer;
  opacity: 0.7;
  transition: 0.3s;
}

.slick-img-btn .slick-list {
  overflow: hidden;
}

.slick-img-btn .item.slick-current {
  opacity: 1;
}

.slick-img-btn .slide-arrow {
  text-align: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  opacity: 0.7;
  transition: 0.3s;
  cursor: pointer;
}

.slick-img-btn .slide-arrow:hover {
  opacity: 1;
}

.slick-img-btn .slide-arrow:before {
  font-size: 20px;
  font-weight: 900;
  font-family: "Font Awesome 5 Free";
  color: #fff;
}

.slick-img-btn .slide-arrow.prev-arrow {
  left: 10px;
}

.slick-img-btn .slide-arrow.prev-arrow:before {
  content: "\f104";
}

.slick-img-btn .slide-arrow.next-arrow {
  right: 10px;
}

.slick-img-btn .slide-arrow.next-arrow:before {
  content: "\f105";
}

/*お問い合わせフォーム*/
/*Contact Form 7カスタマイズ*/
/*スマホContact Form 7カスタマイズ*/
.inquiry {
  margin: 0 auto;
}

.inquiry tr {
  width: 75%;
  margin: 0 auto;
}

.inquiry th,
.inquiry td {
  display: block !important;
  width: 80%;
  border-top: none !important;
  -webkit-box-sizing: border-box !important;
  -moz-box-sizing: border-box !important;
  box-sizing: border-box !important;
  padding: 1rem;
  background: #fff;
}

/* 必須・任意のサイズ調整 */
.inquiry .haveto,
.inquiry .any {
  font-size: 1.2rem;
}

/*見出し欄*/
.inquiry th {
  text-align: left;
  font-size: 1.6rem;
  color: #444;
  padding-right: 5px;
  vertical-align: top;
  position: relative;
}

/*通常欄*/
.inquiry td {
  font-size: 1.6rem;
}

/*横の行とテーブル全体*/
max .entry-content .inquiry tr,
.entry-content table {
  border: solid 1px #ededed;
}

/*必須の調整*/
.haveto {
  font-size: 1.2rem;
  padding: 4px 12px;
  background: #934f4f;
  color: #fff;
  border-radius: 3px;
  position: absolute;
  right: 0;
  top: 36px;
}

/*任意の調整*/
.any {
  font-size: 1.2rem;
  padding: 5px 12px;
  background: #17283f;
  color: #fff;
  border-radius: 3px;
  position: absolute;
  right: 0;
  top: 48px;
}

/*送信ボタンのデザイン変更*/
#formbtn2 {
  display: block;
  padding: 10px;
  width: 300px;
  font-size: 1.5rem;
  margin: 20px auto 0;
  border: 1px solid #535353;
}

#formbtn {
  display: block;
  padding: 10px;
  width: 300px;
  font-size: 1.5rem;
  margin: 20px auto 0;
  border: 1px solid #535353;
}

/*送信ボタンマウスホバー時*/
#formbtn:hover {
  background: #535353;
  color: #fff;
  border: 1px solid #535353;
}

.wpcf7-form-control {
  width: 60%;
  margin: 0 auto;
  width: 96%;
  height: 50px;
  border-radius: 2px;
  padding-left: 10px;
  border: 1px solid #eee;
}

.cont_fl {
  width: 96%;
  height: 50px;
  border-radius: 2px;
  padding-left: 10px;
  border: 1px solid #eee;
}

.cont_fl2 {
  width: 94%;
  border: 0;
  border-radius: 5px;
  padding: 10px;
}

.cont_t {
  margin-top: 5px;
}

.cont_b {
  margin-bottom: 20px;
  border: 1px solid #eee;
}

.line_h {
  line-height: 1.2;
}

.case_bd {
  width: 87%;
  margin-left: 6%;
  border-bottom: solid #D7D7F4 1px;
}

.bigfont {
  font-size: 24px;
  letter-spacing: 2px;
  padding: 10px;
}

.form {
  max-width: 1330px;
  margin: 40px auto;
}

.form img {
  width: 75%;
  margin: 0 auto;
}

.first-box img {
  width: 100%;
  object-fit: cover;
}

/*PC*/
@media screen and (min-width: 897px) {
  .inquiry {
    max-width: 1330px;
    width: -moz-available;
    width: -webkit-fill-available;
  }

  .inquiry tr {
    display: flex;
  }

  .inquiry th {
    width: 30%;
    padding: 38px 3% 20px 5%;
  }

  .inquiry td {
    width: 70%;
    padding: 25px 0 0 25px;
  }

  .inquiry td p {
    text-align: left;
  }
}

/*END*/
@media screen and (max-width: 897px) {
  .inquiry {
    width: 100%;
    max-width: 100%;
  }

  .inquiry th,
  .inquiry td {
    width: 100%;
  }

  .inquiry td p {
    text-align: left;
  }

  .inquiry .pt_40 {
    padding-top: 0 !important;
  }

  /*必須の調整*/
  .haveto {
    right: auto;
    top: 8px;
    margin-left: 10px;
  }

  /*任意の調整*/
  .any {
    right: auto;
    top: 8px;
    margin-left: 10px;
  }

  .form img {
    width: 99%;
    margin: 0 auto;
  }
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output {
  font-size: 16px;
}



.more-btn {
  text-align: center;
  margin-top: 20px;
}

.more-btn>button {
  font-size: 14px;
  color: #fff;
  display: inline-block;
  padding: 12px 15px;
  background: #888;
  border: 1px solid #888;
  transition: 0.3s;
}

.more-btn>button:hover {
  background: #fff;
  color: #888;
}

@media screen and (min-width: 768px) {
  .page-formtitle h2 {
    color: #fff;
    text-shadow:
      #4D4D4D 1px 1px 2px, #4D4D4D -1px 1px 2px, #4D4D4D 1px -1px 2px, #4D4D4D -1px -1px 2px;
    position: absolute;
    font-size: 50px;
    top: 200px;
    left: 50%;
    z-index: 95;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    letter-spacing: 6px;
  }

  .page-formtitle h2 .sub {
    font-size: 22px;
  }

  .page-formtitle p {
    color: #fff;
    text-shadow:
      #4D4D4D 1px 1px 5px, #4D4D4D -1px 1px 5px, #4D4D4D 1px -1px 5px, #4D4D4D -1px -1px 5px;
    position: absolute;
    font-size: 16px;
    height: auto;
    top: 380px;
    left: 50%;
    z-index: 95;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
}

@media screen and (max-width: 1120px) {
  .page-formtitle p {
    top: 375px;
  }
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 767px) {

  /*	main {
		padding-top: 60px;
	}*/
  .page-formtitle h2 {
    color: #fff;
    text-shadow:
      black 1px 1px 2px, black -1px 1px 2px, black 1px -1px 2px, black -1px -1px 2px;
    position: absolute;
    font-size: 28px;
    top: 14%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    letter-spacing: 6px;
    width: 85%;
  }

  .page-formtitle h2 span {
    font-size: 13px;
  }
}

.form-box {
  margin: 80px auto;
}

.form-link a {
  font-size: 1.2rem;
  border: #333 1px solid;
  display: inline-block;
  padding: 1em 2em;
}

.mt_20 {
  margin-top: 20px;
}

.mt_40 {
  margin-top: 40px;
}

.mt_60 {
  margin-top: 60px;
}

.mb_20 {
  margin-bottom: 20px;
}

.mb_40 {
  margin-bottom: 40px;
}

h3.concept {
  color: #fff !important;
  /* text-shadow: 0 0 10px #fff,0 0 15px #fff; */
}

p.concept {
  color: #fff !important;
  /* text-shadow: 0 0 10px #fff,0 0 15px #fff; */
}

/*SP 予約ボタンの色*/
@media screen and (max-width: 769px) {
  .menu-item-3753 {
    background-color: #d6d945;
  }
}

@media screen and (min-width: 768px) {
  .menu-item-3753 a {
    background-color: #d6d945;
    padding: 10px;
    border-radius: 13px;
    border: solid 2px black;
  }
}

.yoyakubtn {
  background-color: #d6d945;
}

#floating-banner {
  position: fixed;
  z-index: 99;
  transition: opacity 0.6s ease, transform 0.6s ease;
}

/* PCデフォルト */
@media (min-width: 768px) {
  #floating-banner {
    top: 50%;
    right: 0px;
    transform: translateY(-50%);
  }

  .banner-box img {
    max-width: 220px;
    height: auto;
  }
}

/* SP表示 */
@media (max-width: 767px) {
  #floating-banner {
    bottom: 60px;
    right: 0px;
  }

  .banner-box img {
    max-width: 100%;
    height: auto;
  }
}

.banner-box {
  position: relative;
}

.banner-box img {
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

.close-btn {
  position: absolute;
  top: 4px;
  right: 4px;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  border: none;
  border-radius: 50%;
  width: 22px;
  height: 22px;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
}

/* フェードアウト用クラス */
.fade-out {
  opacity: 0;
  transform: translateY(-10px);
  pointer-events: none;
}

/* インスタボタン(footer) */
.insta a {
  display: contents;
}

.insta img {
  display: inline;
  width: 50px !important;
}

/* インスタボタン(footer) END */