@charset "UTF-8";
/*
Theme Name: rg_mokki
Description: This is mokki site original theme.
Author: Booking Resort
*/

:root {
  --primary: #27566B;
  --secondary: #000;
  --base-link-color: #333;
  --base-link-decoration: underline;
  --tb-size: 896px;
  --sp-size: 480px;
  --base-font-color: #333;
  --base-font-size: 1.5rem;
  --base-font-size-tb: 1.4rem;
  --base-font-weight: 400;
  --base-font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  --base-line-height: 1.7;
  --base-letter-spacing: 0.06em;
  --f-min: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "MS PMincho", "游明朝体", "Yu Mincho", YuMincho, serif;
  --f-umincho: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  --f-yugothic: 'Yu Gothic UI', "游ゴシック", YuGothic, "ヒラギノゴシック Pro W3", "Hiragino Gothic Pro", "HGゴシックE", "MS Pゴシック", "MS ゴシック", sans-serif;
  --f-fa: "Font Awesome 6 Free";
  --f-fab: "Font Awesome 6 Brands";
  --container-width: 1200px;
  --container-pd: 20px;
}

/* --------------------------------------------- */
/* ↓コア */
/* --------------------------------------------- */
*,
::before,
::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

* {
  font-size: inherit;
  line-height: inherit;
  letter-spacing: var(--base-letter-spacing);
}

::before,
::after {
  display: inline-block;
  text-decoration: inherit;
  vertical-align: inherit;
}

html {
  font-family: sans-serif;
  font-size: 62.5%;
}

body {
  background: #fff;
  margin: 0;
  padding: 0;
  color: var(--base-font-color);
  font-size: var(--base-font-size);
  font-family: var(--base-font-family);
  font-weight: var(--base-font-weight);
}

@media only screen and (max-width: 896px) {
  body {
    font-size: var(--base-font-size-tb);
  }
}

ol,
ul {
  list-style: none;
}

p,
dt,
dd,
li,
th,
td {
  line-height: var(--base-line-height);
}

a {
  background-color: transparent;
  color: var(--base-link-color);
  text-decoration: var(--base-link-decoration);
  transition: all 0.3s;
}

a.white {
  color: #fff;
}

a:active,
a:hover {
  outline: 0;
}

a:hover {
  text-decoration: none;
}

a[href^="tel:"] {
  color: var(--base-font-color);
  text-decoration: none;
  pointer-events: none;
}

@media only screen and (max-width: 896px) {
  a[href^="tel:"] {
    pointer-events: fill;
  }
}

img {
  display: inline-block;
  border: 0;
  vertical-align: bottom;
  max-width: 100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.wrapper {
  overflow: hidden;
}

/* --------------------------------------------- */
/* ↑コア */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓headerパーツ */
/* --------------------------------------------- */

header {
  display: flex;
  height: 80px;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: #fff;
}

header>h1 {
  width: 64px;
  transition: 0.3s;
}

header>h1:hover {
  opacity: 0.7;
}

header>.check,
header>.menu-btn,
header>.close-menu {
  display: none;
}


header>.drawer-menu ul {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin: 0 50px;
}

header>.drawer-menu ul *+* {
  margin-left: 24px;
}

header>.drawer-menu ul>li>a {
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  line-height: 1.2;
  letter-spacing: 0em;
  color: var(--primary);
  display: block;
  min-width: 110px;
  padding: 5px 0;
}

header>.drawer-menu ul>li#menu-item-2030>a {
  min-width: 110px;
  border: 1px solid var(--primary);
  border-radius: 30px;
}

header>.drawer-menu ul>li#menu-item-2030>a:hover {
  color: #fff;
  opacity: 1;
  background: var(--primary);
}

header>.drawer-menu ul>li>a:hover {
  opacity: 0.8;
}

header>.language {
  width: 140px;
  position: relative;
}

header>.language>li>.lan-ja {
  text-align: center;
  background: #eee;
  cursor: pointer;
  padding: 5px;
  border-radius: 20px;
  border: 1px solid #eee;
  transition: 0.3s;
}

header>.language>li>.lan-ja:hover {
  background: #fff;
}

header>.language>li>.lan-ja>.fa-caret-down {
  transform-origin: center;
  transition: 0.3s;
}

header>.language>li>.lan-ja.-open>.fa-caret-down {
  transform: rotate(180deg);
}

header>.language>li>ul {
  position: absolute;
  width: 100%;
  top: 40px;
  left: 0;
  display: none;
}

header>.language>li>ul *+* {
  margin-top: 2px;
}

header>.language>li>ul>li>a {
  text-align: center;
  text-decoration: none;
  display: block;
  background: #eee;
  border: 1px solid #eee;
  border-radius: 25px;
}

header>.language>li>ul>li>a:hover {
  background: #fff;
}

@media only screen and (max-width:1500px) {
  header>.drawer-menu ul {
    margin: 0 30px;
  }

  header>.drawer-menu ul>li>a {
    min-width: 105px;
  }
}

@media only screen and (max-width:1350px) {
  header>.drawer-menu ul {
    margin: 0 20px;
  }

  header>.drawer-menu ul *+* {
    margin-left: 30px;
  }

  header>.drawer-menu ul>li>a {
    min-width: unset;
  }
}

@media only screen and (max-width:1050px) {
  header>.drawer-menu ul {
    margin: 0 15px;
  }

  header>.drawer-menu ul *+* {
    margin-left: 15px;
  }

  header>.language {
    width: 120px;
  }

  header>.drawer-menu ul>li#menu-item-2030>a {
    min-width: 90px;
  }
}

@media only screen and (max-width:896px) {
  header {
    height: 60px;
  }

  header>h1 {
    width: 55px;
  }

  header>.menu-btn {
    display: block;
    width: 40px;
    height: 22px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    z-index: 101;
    cursor: pointer;
  }

  header>.menu-btn>span {
    width: 100%;
    height: 2px;
    display: block;
    background: #536558;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    transform-origin: center;
    transition: 0.3s;
  }

  header>.menu-btn>span:nth-of-type(1) {
    transform: translateY(-10px);
  }

  header>.menu-btn>span:nth-of-type(3) {
    transform: translateY(10px);
  }

  header>.close-menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99;
    background: rgba(0, 0, 0, 0.5);
    display: block;
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
  }

  header>.language {
    position: absolute;
    top: 12px;
    left: 20px;
  }

  header>.drawer-menu {
    position: fixed;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    max-width: 300px;
    background: #e2e2e2;
    padding-top: 80px;
    transform: perspective(500px) rotateY(-90deg);
    transform-origin: right center;
    transition: 0.3s;
    z-index: 100;
  }

  header>.drawer-menu ul,
  header>.drawer-menu ul *+* {
    margin: 0;
  }

  header>.drawer-menu ul>li {
    width: 100%;
  }

  header>.drawer-menu ul>li>a {
    line-height: 1.7;
    padding: 13px 20px;
  }

  header>.drawer-menu ul>li#menu-item-2030>a {
    color: #fff;
    border-radius: 0;
    background: var(--primary);
  }

  header>.check:checked+.menu-btn>span:nth-of-type(1) {
    transform: rotate(35deg);
  }

  header>.check:checked+.menu-btn>span:nth-of-type(2) {
    opacity: 0;
  }

  header>.check:checked+.menu-btn>span:nth-of-type(3) {
    transform: rotate(-35deg);
  }

  header>.check:checked+.menu-btn+.close-menu {
    opacity: 1;
    visibility: visible;
  }

  header>.check:checked+.menu-btn+.close-menu+.drawer-menu {
    transition-delay: 0.3s;
    transform: none;
  }
}

@media screen and (min-width: 897px) {
  #menu-item-891 {
    display: none;
  }
}

/* --------------------------------------------- */
/* ↑headerパーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓footerパーツ */
/* --------------------------------------------- */

/*リゾグラ*/
#resort-rg {
  background: #1B3D4C;
  padding: 10px 0 40px;
}

.rg_group h2 {
  color: #fff;
}

#resort-rg h2 span.en {
  color: #fff !important;
}

.rg_group .box {
  display: flex;
  flex-direction: column;
  margin-bottom: 50px;
}

.rg_group .box>ul {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 32px 0;
}

.rg_group .box>ul>li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 32%;
}

.rg_group .box>ul>li .photo {
  width: 90px;
  transition: 0.3s;
}

.rg_group .box>ul>li .photo:hover {
  opacity: 0.7;
}

.rg_group .box>ul>li .txt {
  padding: 0;
  width: calc(100% - 100px);
  transition: 0.3s;
}

.rg_group .box>ul>li .txt:hover {
  opacity: 0.7;
}

.rg_group .box>ul>li .txt a {
  text-decoration: none;
}

.rg_group .box>ul>li .txt h4.rg_group {
  font-size: 1.6rem;
  text-align: left;
  margin-bottom: 0;
  color: #fff;
}

.rg_group .rg_details {
  display: flex;
  justify-content: space-between;
}

.rg_group .rg_details dl {
  width: 32%;
  line-height: 1.5;
}

.rg_group .rg_details dl>a {
  display: block;
  margin-bottom: 10px;
}

.rg_group .rg_details dl>a>dt {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  color: #fff;
  text-decoration: underline;
}

.rg_group .rg_details dl>a:hover {
  opacity: 0.7;
}

.rg_group .rg_details dl>dd {
  color: #fff;
}


@media screen and (max-width:896px) {
  .rg_group .box>ul>li {
    width: 100%;
    margin-left: 0;
  }

  .rg_group .rg_details {
    flex-direction: column;
    gap: 20px 0;
  }

  .rg_group .rg_details dl {
    width: 100%;
  }

  .rg_group .rg_details dl>a>dt {
    text-align: left;
  }
}

footer {
  background: #e6e6e6;
  padding: 80px 0 20px;
}

footer p {
  letter-spacing: 0;
}

footer .f_menu {
  display: flex;
  justify-content: space-between;
  margin-bottom: 80px;
}

footer .f_menu .info {
  width: 405px;
}

footer .f_menu .info h2 {
  max-width: 180px;
  margin: 0 auto 30px;
}

footer .f_menu .info .nnj_cafe {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

footer .f_menu .info .nnj_cafe .nnj_img {
  width: 80px;
  margin-right: 10px;
}

footer .f_menu .info .f_notice {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 20px;
}

footer .f_menu .info .f_notice>div {
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.22);
  width: calc(50% - 5px);
  transition: 0.3s;
}

footer .f_menu .info .f_notice>div:hover {
  opacity: 0.7;
}

footer .f_menu .info .tel {
  font-size: 2.8rem;
}

footer .f_menu .info .tel>a {
  letter-spacing: 0;
}

footer .f_menu .info .time {
  font-size: 1.8rem;
}


footer .f_menu #footer-menu {
  width: 660px;
}

footer .f_menu #footer-menu .menu {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px 28px;
}

footer .f_menu #footer-menu .menu>li>a {
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  line-height: 1.2;
  color: var(--primary);
  min-width: 110px;
  display: block;
  transition: 0.3s;
  padding: 6px 0;
}

footer .f_menu #footer-menu .menu>li>a:hover {
  opacity: 0.7;
}


footer .f_menu #footer-menu .menu>li#menu-item-2031>a {
  border: 1px solid var(--primary);
  border-radius: 30px;
}

footer .f_menu #footer-menu .menu>li#menu-item-2031>a:hover {
  opacity: 1;
  color: #fff;
  background: var(--primary);
}

footer #footer_sp {
  display: none;
}

footer>.company {
  font-size: 1.3rem;
  text-align: center;
}

@media only screen and (max-width:896px) {
  footer {
    position: relative;
    z-index: 100;
    padding: 60px 0;
  }

  footer p {
    text-align: center;
  }

  footer .f_menu {
    flex-direction: column;
  }

  footer .f_menu .info {
    width: 100%;
    margin-bottom: 20px;
  }

  footer .f_menu .info h2 {
    max-width: unset;
    width: 50%;
  }

  footer .f_menu .info .nnj_cafe {
    flex-direction: column;
    margin: 15px 0;
  }

  footer .f_menu .info .nnj_cafe .nnj_img {
    margin-bottom: 8px;
  }

  footer .f_menu .info .f_notice {
    justify-content: center;
  }

  footer .f_menu .info .f_notice>div {
    width: 35%;
  }

  footer .f_menu #footer-menu {
    width: 100%;
  }

  footer .f_menu #footer-menu .menu {
    gap: 5px;
  }

  footer .f_menu #footer-menu .menu>li>a {
    min-width: unset;
    padding: 8px 20px;
  }

  footer .f_menu #footer-menu .menu>li#menu-item-2031>a {
    width: 80px;
  }

  footer #footer_sp {
    display: block;
    position: fixed;
    left: 0;
    bottom: 0;
    width: 100%;
  }

  footer #footer_sp .reserve_sp {
    display: flex;
    gap: 1px;
    background: #fff;
  }

  footer #footer_sp .reserve_sp>div {
    width: 25%;
  }

  footer #footer_sp .reserve_sp>div.reserve_web>p>a {
    color: #fff;
    background: #27566B;
  }

  footer #footer_sp .reserve_sp>div>p>a {
    font-size: 1.5rem;
    text-align: center;
    text-decoration: none;
    color: #1d1d1e;
    display: block;
    padding: 4.5px 0;
    background: #e6ebec;
  }
}

/* --------------------------------------------- */
/* ↑footerパーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓ボタンパーツ */
/* --------------------------------------------- */
.btn_link_color>p {
  text-align: center;
}

.btn_link_color>p>a {
  width: 100%;
  max-width: 220px;
  padding: 10px 30px;
  display: inline-block;
  transition: 0.2s;
  text-align: center;
  text-decoration: none;
  border-radius: 27px;
  border: #27566B 1px solid;
  /*color: #fff;*/
}

.btn_link_color>p>a:hover {
  background: #27566B;
  color: #fff;
}

.bt01 {
  width: 100%;
  max-width: 220px;
  padding: 10px 30px;
  display: inline-block;
  transition: 0.2s;
  text-align: center;
  text-decoration: none;
  border-radius: 27px;
  border: #27566B 1px solid;
}

.bt01:hover {
  background: #27566B;
  color: #fff;
}

.btn_link>p {
  text-align: center;
}

.btn_link>p>a {
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  color: #27566B;
  width: 100%;
  max-width: 250px;
  background: #fff;
  border-radius: 24px;
  padding: 12px 30px;
  display: inline-block;
  transition: 0.2s;
  border: #ececec 1px solid;
}

.btn_link>p>a:hover {
  opacity: 0.7;
}

.bt02 {
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  color: #27566B;
  width: 100%;
  max-width: 220px;
  background: #fff;
  border-radius: 24px;
  padding: 12px 30px;
  display: inline-block;
  transition: 0.2s;
  border: #ececec 1px solid;
}

.bt02:hover {
  opacity: 0.7;
}

/* --------------------------------------------- */
/* ↑ボタンパーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓テーブルパーツ */
/* --------------------------------------------- */
.table01 {
  width: 100%;
}

.table02 {
  width: 100%;
}

/* --------------------------------------------- */
/* ↑テーブルパーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓共通パーツ */
/* --------------------------------------------- */
h1 {
  font-size: 3.2rem;
}

h2 {
  font-size: 3.6rem;
  color: #222;
  text-align: center;
}

h2.top {
  font-size: 2.6rem;
  margin: 45px 0 30px;
  line-height: 1.4;
}

h2.color {
  font-size: 2.6rem;
  margin: 45px 0 30px;
  line-height: 1.4;
  color: #333;
}

h2>a {
  text-decoration: none;
  transition: 0.3s;
}

h2>a:hover {
  opacity: 0.7;
}

h2.btm_border {
  position: relative;
}

h2.btm_border:before,
h2.btm_border:after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 51px;
  height: 4px;
}

h2.btm_border:before {
  left: 50%;
  margin-left: -51px;
  background: #27566B;
}

h2.btm_border:after {
  right: 50%;
  margin-right: -51px;
  background: #E0E6E9;
}

@media screen and (max-width:896px) {
  h2 {
    font-size: 2.6rem;
  }

  h2.top {
    font-size: 2.4rem;
    margin: 0 0 25px;
  }
}



h3 {
  font-size: 1.8rem;
  color: #222;
}

h3.stripe {
  position: relative;
  text-align: center;
  font-size: 2.6rem;
  margin-bottom: 50px;
}

h3.stripe>span {
  padding: 0 25px;
  position: relative;
  z-index: 20;
}

@media screen and (max-width:896px) {
  h3.stripe {
    font-size: 1.8rem;
  }

  h3.stripe>span {
    padding: 0 0;
    font-size: 1.4rem;
  }
}

h3.border {
  color: #27566B;
  position: relative;
  text-align: center;
  font-size: 2.6rem;
  margin-bottom: 20px;
}

h3.border:before {
  content: "";
  display: block;
  position: absolute;
  height: 8px;
  width: 100%;
  border-top: 1px solid #ccc;
  top: 0;
  bottom: 0;
  margin: auto;
  z-index: 10;
}

h3.border>span {
  background: #f1f4f4;
  padding: 0 25px;
  position: relative;
  z-index: 20;
}

@media screen and (max-width:896px) {
  h3.border {
    font-size: 2rem;
  }
}

h4 {
  font-size: 2rem;
  color: #222;
  text-align: center;
  margin-bottom: 20px;
}

.container {
  width: 100%;
  max-width: calc(var(--container-width) + (var(--container-pd)*2));
  padding: 0 calc(var(--container-pd));
  margin: 0 auto;
}

.color_w {
  color: #fff;
}

.reserve_pc {
  width: 200px;
  position: fixed;
  right: 0;
  bottom: 50px;
  z-index: 10;
}

.reserve_pc .reserve_text>p {
  font-size: 2.0rem;
  text-align: center;
  color: #fff;
  background: var(--primary);
  padding: 2px 0;
}

.reserve_pc .reserve_text>p>span {
  font-size: 1.2rem;
  display: block;
}

.reserve_pc .reserve_text>a {
  font-size: 2rem;
  text-align: center;
  color: var(--primary);
  display: block;
  background: #fff;
  padding: 10px 0;
}

.reserve_pc>.reserve_to489>a {
  font-size: 1.6rem;
  text-align: center;
  text-decoration: none;
  color: #fff;
  display: block;
  background: var(--primary);
  padding: 10px 0;
}

.reserve_pc>.reserve_to489>a:hover {
  text-decoration: underline;
}

@media only screen and (max-width:896px) {
  .reserve_pc {
    display: none;
  }
}

p.top_p {
  text-align: center;
  margin-bottom: 40px;
  line-height: 2.0;
}

p.color_p {
  text-align: center;
  margin-bottom: 40px;
  line-height: 2.0;
}

.textarea_p {
  padding: 3rem;
}

.textarea_p h3 {
  padding-bottom: 10px;
  font-size: 2.2rem;
  line-height: 1.3;
  position: relative;
  margin-bottom: 20px;
}

.textarea_p h3 span.sub_title {
  font-size: 1.6rem;
}

.textarea_p h3 span.point_n {
  font-size: 5rem;
  font-style: italic;
  color: #27566B;
}

@media screen and (max-width:1024px) {
  .textarea_p h3 {
    padding-bottom: 20px;
  }
}

.multiple-item {
  margin-bottom: 40px;
}

.multiple-item li {
  margin: 0 10px;
}

.multiple-item li a {
  text-decoration: none;
}

.multiple-item li a:hover {
  opacity: 0.7;
}

.multiple-item li img {
  width: 100%;
  height: 300px;
  object-fit: cover;
}

.multiple-item li .pickup-ttl {
  background: #fff;
  width: 90%;
  padding: 5px;
  margin: -30px auto 0;
  position: relative;
  z-index: 2;
}

.multiple-item li .pickup-ttl .pickup-title {
  font-size: 1.4rem;
  text-align: center;
  margin: 30px 0;
  font-weight: 500;
  padding: 0 10px;
}

.top_rental .multiple-item li .pickup-ttl .pickup-title {
  padding: 0 10px 15px;
  margin: 30px 0 10px;
  border-bottom: 1px dotted #c3c3c3;
}

.multiple-item li .pickup-ttl .pickup-text {
  padding: 20px;
}

.multiple-item li h3 {
  padding: 18px 0 14px;
  text-align: center;
  margin-bottom: 6px;
  font-size: 1.6rem;
  font-weight: 500;
}

.multiple-item li h3.spot {
  border-bottom: 1px dotted #788073;
  width: 80%;
  margin: 0 auto;
}

.top_gf .multiple-item li p {
  margin: 15px 0 0;
  padding: 0 14px;
  font-size: 1.4rem;
  line-height: 1.8;
}

@media screen and (max-width:896px) {
  .multiple-item li img {
    height: 220px;
  }

  .multiple-item li .pickup-ttl .pickup-text {
    padding: 10px;
  }
}

.scroll_point {
  height: 1px;
  margin-top: -80px;
  padding-top: 80px;
  display: block;
  text-decoration: none;
}

@media screen and (max-width: 896px) {
  .scroll_point {
    display: block;
    margin-top: 0;
    padding-top: 0;
  }
}

.mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "MS P明朝", "MS 明朝", serif;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0.1em;
}

/* TOPへ戻るボタン */
#fixedTop {
  right: 10px;
  bottom: 222px;
  color: #fff;
  text-align: center;
  line-height: 60px;
  text-decoration: none;
  vertical-align: middle;
  display: none;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: rgba(50, 50, 50, 0.5);
  position: fixed;
  z-index: 98;
  font-size: 20px;
  cursor: pointer;
}

#fixedTop:hover {
  background: rgba(50, 50, 50, 1);
}

@media screen and (max-width:896px) {
  #fixedTop {
    display: none !important;
  }
}

span.en {
  letter-spacing: 0.1em;
  font-family: 'Yu Gothic UI', "游ゴシック", YuGothic, "ヒラギノゴシック Pro W3", "Hiragino Gothic Pro", "HGゴシックE", "MS Pゴシック", "MS ゴシック", sans-serif;
  font-weight: normal;
  font-size: 1.5rem;
  color: #27566B;
}

.ta_c {
  text-align: center;
}

@media screen and (max-width:896px) {
  .sp_mb_40 {
    margin-bottom: 40px;
  }
}

.pankuzu {
  background: #fafafa;
  padding: 8px 0;
  font-size: 1.3rem;
  color: #333;
  margin-top: 80px;
}

@media screen and (max-width:896px) {
  .pankuzu {
    margin-top: 60px;
  }
}

.page_top_view {
  text-align: center;
  padding: 45px 0 60px;
}

.page_top_view img {
  width: 100%;
  max-width: 1200px;
  height: 400px;
  object-fit: cover;
}

.page_top_view .ttl_area {
  margin-top: 20px;
}

.page_top_view .ttl_area h2 {
  padding: 0 0 24px;
}

.page_top_view .ttl_area .en {
  color: #444;
}

@media screen and (max-width:896px) {

  .page_top_view {
    padding: 0 0 8%;
  }

  .page_top_view img {
    width: 100%;
    height: 240px;
  }
}

.container.news_list p.news_list {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
}

.news_list li {
  padding: 20px;
  border-bottom: 1px solid #ccc;
  line-height: 1.5;
}

.news_list>li>.date {
  display: inline-block;
  width: 80px;
}

.news_list>li>.cate {
  text-align: center;
  min-width: 85px;
  display: inline-block;
  color: #fff;
  background: #01080C;
  padding: 3px 10px;
  margin-right: 30px;
  font-size: 1.4rem;
  margin-left: 10px;
}


.cakejp {
  width: 100%;
  margin: 80px auto 0;
  display: flex;
  box-sizing: border-box;
  justify-content: center;
  flex-wrap: wrap;
}

.cakejp .img {
  width: 50%;
}

.cakejp .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 0 50%;
}

.cakejp .txt {
  width: 50%;
  padding: 10px 15px;
  background-color: #ECF0F1;
}

.cakejp .txt h3 {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: 10px;
}

.cakejp .txt h3,
.cakejp .txt p {
  text-align: center;
}

@media screen and (max-width:896px) {
  .cakejp {
    width: 100%;
    padding: 0;
  }

  .cakejp .img {
    width: 100%;
    height: auto;
  }

  .cakejp .txt {
    width: 100%;
  }

  .cakejp .txt h3 {
    font-size: 1.8rem;
  }
}

.bignumber {
  font-size: 5rem;
  font-style: italic;
  color: #27566B;
  margin-bottom: 15px;
}

.bk_white {
  background: #fff;
}

.c-video {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  position: relative;
}

.c-video__frame {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc(9/16*100%);
  background: #000;
}

.c-video__frame iframe {
  position: absolute;
  top: -60px;
  left: 0;
  width: 100%;
  height: calc(100% + 120px);
  transition: 0.1s ease;
}

#playBtn {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#playBtn img {
  width: 100%;
}

.green-belt {
  text-align: center;
  padding: 60px 0 40px;
  font-size: 2.2rem;
}

.food_content ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: start;
  vertical-align: top;
  gap: 30px 2%;
}

.food_content li {
  width: 32%;
  text-align: center;
  background: #F1F4F5;
  position: relative;
  overflow-wrap: break-word;
}

.food_content li a {
  text-decoration: none;
}

.food_content li a:hover {
  opacity: 0.7;
}

.food_content__img {
  width: 100%;
  height: 240px;
  overflow: hidden;
  position: relative;
}

.food_content__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.food_content__ttl {
  width: 90%;
  margin: 15px auto;
  text-align: center;
}

.food_content__desc {
  width: 90%;
  margin: 20px auto;
  text-align: left;
}


@media screen and (max-width:896px) {
  .food_content ul {
    gap: 20px 4%;
  }

  .food_content li {
    width: 48%;
  }

  .food_content__img {
    position: relative;
    height: auto;
    padding-bottom: 65%;
  }

  .food_content__img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

@media screen and (max-width:480px) {
  .food_content li {
    width: 100%;
  }
}

.contents_mainimg .line_btn {
  width: auto;
  height: revert-layer;
  margin: 20px auto;
  display: block;
}

.main_contents h2.article_title {
  position: relative;
  padding: 20px 0px 20px;
  font-size: 2.4rem;
}

@media screen and (max-width:896px) {
  .main_contents h2.article_title {
    margin-top: 24px;
    padding: 40px 0px 20px;
  }
}

.main_contents .content_img {
  margin: 32px auto;
  max-width: 1000px;
  /*幅は任意で指定*/
  height: 500px;
  /*高さは必ずpxなどの絶対値を使用。*/
  position: relative;
  overflow: hidden;
}

@media screen and (max-width:896px) {
  .main_contents .content_img {
    max-width: 500px;
    height: 50vw;
  }
}

.main_contents .content_img img {
  min-width: 100%;
  min-height: 100%;
  max-width: inherit;
  max-height: inherit;
  width: auto;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.main_contents .sub_title h3.sub_title {
  padding: 8px;
  font-size: 18px;
  color: #59807b;
  max-width: 1000px;
  margin: 8px auto;
}

.main_contents .sub_title .opening_text {
  padding: 8px;
  max-width: 1000px;
  margin: 0 auto 4%;
}

.main_contents .content_in {
  max-width: 1000px;
  margin: 2% auto;
  display: flex;
  flex-wrap: wrap;
}

@media screen and (max-width:896px) {
  .main_contents .content_in {
    flex-direction: column;
  }
}

.main_contents .content_in p.sub_image {
  width: 46%;
  margin-right: 4%;
  margin-bottom: 2%;
}

.main_contents .content_in p.sub_image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

@media screen and (max-width:896px) {
  .main_contents .content_in p.sub_image {
    width: 100%;
    margin-bottom: 0;
  }
}

.main_contents .content_in p.sub_text span {
  font-size: 24px;
  color: #59807b;
  line-height: 2;
}

.main_contents .content_in p.sub_text {
  padding: 16px 0 40px;
  width: 50%;
}

@media screen and (max-width:896px) {
  .main_contents .content_in p.sub_text {
    width: 100%;
  }
}

.main_contents .image-text {
  max-width: 1000px;
  margin: 0 auto;
  color: #818181;
}

.main_contents a {
  word-wrap: break-word;
}

p.lp_qa_q {
  max-width: 800px;
  margin: 0 auto;
  color: #994d53;
}

p.lp_qa_a {
  padding: 2rem 1rem 5rem;
  text-indent: 1rem;
  max-width: 800px;
  margin: 0 auto;
}

a.link-color {
  font-weight: bold;
  color: #994d53;
}

.contents_mainimg img {
  width: 100%;
  height: auto;
  object-fit: cover;
  margin: 20px 0;
}

.table-dot {
  font-size: 1.5rem;
  border-bottom: #999 1px dotted;
  padding: 1em;
}

.table-dot:first-of-type {
  border-top: #999 1px solid;
  margin-top: 40px;
}

.table-dot:last-of-type {
  border-bottom: #999 1px solid;
  margin-bottom: 40px;
}

.table-dot dt {
  width: 190px;
}

.table-dot dd {
  width: calc(100% - 190px);
  margin-left: 190px;
  margin-top: -15px;
}

.googlemap iframe {
  width: 100%;
}

.contents_mainimg h2 {
  font-size: 3.0rem;
  line-height: 1.2;
  background: #f9f9f9;
}

/*END*/
/*Smartphone*/
@media screen and (max-width: 896px) {
  .contents_mainimg h2 {
    font-size: 2.2rem;
    text-align: left;
  }

  .contents_mainimg img {
    height: auto;
  }

  .table-dot {
    font-size: 1.3rem;
    padding: 20px 4%;
  }

  .table-dot:last-of-type {
    margin-bottom: 20px;
  }

  .table-dot dt {
    width: 100px;
  }

  .table-dot dd {
    margin-left: 100px;
    width: 70%;
  }

  .googlemap iframe {
    height: 260px;
  }
}

/* --------------------------------------------- */
/* ↑共通パーツ */
/* --------------------------------------------- */


/* --------------------------------------------- */
/* ↓トップページ（front-page.php）パーツ */
/* --------------------------------------------- */
.top_slid {
  position: relative;
  margin-top: 80px;
}

.top_slid img.txtlogo {
  width: 160px;
  top: 15%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  z-index: 3;
}

.top_slid h2 {
  color: #fff;
  width: 100%;
  line-height: 1.2;
  font-weight: bold;
  font-size: 2.2rem;
  text-shadow: 2px 2px 3px #333;
  position: absolute;
  top: 88%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
}

.top_slid h2 span.subttl {
  font-size: 18px;
  letter-spacing: 3.5px;
  vertical-align: middle;
}

.top_slid .key-slick .item-slide {
  height: calc(100svh - 80px);
}

.top_slid .key-slick .item-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media screen and (max-width:896px) {
  .top_slid {
    margin-top: 60px;
  }

  .top_slid img.txtlogo {
    width: 80px;
    top: 20%;
  }

  .top_slid h2 {
    top: 85%;
    font-size: 1.4rem;
  }

  .top_slid h2 span.subttl {
    font-size: 14px;
    letter-spacing: 1px;
  }

  .top_slid .key-slick .item-slide {
    height: calc(100svh - 120px);
  }
}


.top_bnr {
  padding: 30px 0;
  background: #f8faf9;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
}

.top_bnr .bnrsize {
  width: 38%;
}


@media screen and (max-width:896px) {
  .top_bnr .bnrsize {
    width: 80%;
    margin: 0 auto 10px;
  }
}

@media screen and (max-width:480px) {
  .top_bnr .bnrsize {
    width: 100%;
  }
}



.top_news {
  padding: 30px 0;
  background: #f8faf9;
}

.top_news .container {
  display: flex;
}

.top_news .container h2 {
  border-right: 1px solid #01080C;
  width: 165px;
  display: flex;
  align-items: center;
}

.top_news .container>ul>li {
  padding: 15px 0;
}

.top_news .container>ul>li .date {
  display: inline-block;
  width: 130px;
  padding: 0 10px 0 30px;
}

.top_news .container>ul>li .cate {
  text-align: center;
  display: inline-block;
  color: #fff;
  background: #01080C;
  padding: 2px 5px;
  margin-right: 30px;
  font-size: 1.4rem;
  min-width: 75px;
}

.top_news .container>ul>li .cate a {
  color: #fff;
}

@media screen and (max-width:896px) {
  .top_news .container {
    flex-direction: column;
  }

  .top_news .container>ul>li .date {
    width: auto;
  }

  .top_news .container h2 {
    border-right: none;
    border-bottom: 1px solid #01080C;
    padding-bottom: 3%;
    margin-bottom: 10px;
    width: 100%;
    justify-content: center;
  }

  .top_news .container>ul>li {
    padding: 2% 0;
    line-height: 1.8;
  }

  .top_news .container>ul>li .date {
    padding: 0;
  }

  .top_news .container>ul>li .cate {
    font-size: 1.2rem;
  }
}

.chiba_glamping_top_bk {
  background: url("img/top/top_top.jpg") no-repeat center / cover;
}

.top_msg {
  padding: 100px 0;
}

.top_msg .toplogo {
  width: 250px;
  margin: 0 auto;
}

.top_msg h2 {
  text-align: center;
  font-size: 2.8rem;
  line-height: 1.5;
  padding-bottom: 15px;
  margin-bottom: 34px;
  color: #fff;
}

.top_msg h2 span {
  font-size: 1.6rem;
  color: #F1F4F5;
  letter-spacing: 0.1em;
}

.top_msg>p {
  text-align: center;
  line-height: 2;
  font-size: 16px;
  color: #fff;
}



@media screen and (max-width:896px) {
  .top_msg {
    height: auto;
    padding: 8% 15px;
  }

  .top_msg .toplogo {
    width: 170px;
    margin: 0 auto;
  }

  .top_msg h2 {
    font-size: 2rem;
    line-height: 1.4;
    padding: 10% 5% 5%;
  }

  .top_msg h2 span {
    font-size: 1.4rem;
  }
}

.top_feature {
  background: #F1F4F5;
  padding: 85px 0;
}

@media screen and (max-width:896px) {
  .top_feature {
    padding: 10% 0;
  }
}


.top_box {
  display: flex;
  width: 100%;
  margin: 0 auto;
  flex-direction: row;
}

.top_box.top_box_re {
  flex-direction: row-reverse;
}

.top_box .feature_mainimg {
  width: 50%;
}

.top_box .feature_mainimg img {
  height: 480px;
  object-fit: cover;
}

.top_box .feature_txtarea {
  background: #fff;
  width: 50%;
}

@media screen and (max-width:1024px) {
  .top_box {
    flex-direction: column;
  }

  .top_box.top_box_re {
    flex-direction: column;
  }

  .top_box .feature_mainimg {
    text-align: center;
    width: 100%;
  }

  .top_box .feature_mainimg img {
    width: 100%;
    max-width: 600px;
    height: auto;
  }

  .top_box .feature_txtarea {
    margin: 0 auto 10px;
    height: auto;
    width: 100%;
    max-width: 600px;
  }
}

.topvideo {
  width: 100%;
  max-width: 1100px;
  padding: 0px 20px 50px;
  box-sizing: border-box;
  margin: 0 auto;
}

.topvideo video {
  width: 100%;
  height: auto;
}


.top_room {
  padding: 80px 0;
  background-color: #51798B;
}

.top_room h2 {
  margin-bottom: 40px;
  color: #fff;
}

.top_room h2 .en {
  color: #fff;
}

.top_room p {
  color: #fff;
}

.top_room h3 span {
  font-size: 1.5rem;
}

.top_room h4 {
  text-align: center;
  margin-bottom: 20px;
}

@media screen and (max-width:896px) {
  .top_room {
    padding: 10% 0;
  }
}


.glam_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 25px;
}

.glam_list>li {
  width: 32%;
  margin: 0 0 50px;
}

.glam_list>li>img,
.glam_list>li>a>img {
  height: 240px;
  object-fit: cover;
  width: 100%;
  margin-bottom: 10px;
}

.glam_list>li>.txt {
  width: 85%;
  padding: 5px;
  margin: 0 auto;
  border: 1px solid #fff;
  color: #fff;

}

.glam_list>li>.txt>.inner {
  border: 1px solid #fff;
  padding: 30px 20px;
  min-height: 180px;
}


.glam_list>li>.txt>.inner>h3 {
  font-size: 2.0rem;
  font-weight: 500;
  text-align: center;
  line-height: 1.2;
  color: #fff;
  margin-bottom: 20px;
}

.glam_list>li>.txt>.inner>h3>span {
  font-size: 1.4rem;
}

.glam_list>li>.txt>.inner>dl {
  display: flex;
  flex-wrap: wrap;
}

.glam_list>li>.txt>.inner>dl>dt,
.glam_list>li>.txt>.inner>dl>dd {
  text-align: center;
  width: 50%;
}

@media screen and (max-width:896px) {
  .glam_list>li {
    margin: 0 auto 12%;
    width: 100%;
  }

  .glam_list>li>.txt {
    width: calc(100% - 40px);
  }

  .glam_list>li>.txt>.inner {
    min-height: unset;
  }
}

.top_rental,
.top_pickup,
.top_activity,
.top_insta,
.top_gf,
.top_faq,
.top_access {
  padding: 80px 0;
}

.top_pickup h2,
.top_rental h2,
.top_gf h2 {
  margin-bottom: 30px;
}

.top_rental {
  background: #fafafa;
}

.top_pickup,
.top_activity,
.top_insta {
  background: #f1f4f5;
}

.top_access {
  background: #fff;
}

.top_insta p {
  text-align: center;
}


@media screen and (max-width:896px) {

  .top_rental,
  .top_pickup,
  .top_activity,
  .top_insta,
  .top_gf,
  .top_faq,
  .top_access {
    padding: 10% 0;
  }
}

.top_faq_box {
  display: flex;
}

.top_faq_box .top_faq_img {
  width: 57.2%;
}

.top_faq .top_faq_box .top_faq_img img {
  width: 100%;
  height: 400px;
  object-fit: cover;
}

.top_faq_box .top_textarea_p {
  width: 42.8%;
  background: #F1F4F5;
  padding: 1%;
}

.top_faq_box .top_textarea_p .inner {
  border: 1px solid #fff;
  padding: 80px 32px 20px;
  height: 100%;
}

.top_faq .top_faq_box .top_textarea_p .inner h2 {
  margin-bottom: 30px;
  font-size: 4rem;
  color: #27566B;
}


@media screen and (max-width:896px) {
  .top_faq_box {
    flex-direction: column;
  }

  .top_faq_box .top_faq_img {
    width: 100%;
  }

  .top_faq .top_faq_box .top_faq_img img {
    height: 300px;
  }

  .top_faq_box .top_textarea_p {
    width: 100%;
  }

  .top_faq_box .top_textarea_p .inner {
    padding: 20px 0;
    height: auto;
  }

  .top_faq .top_faq_box .top_textarea_p .inner h2 {
    font-size: 2rem;
  }
}

.top_access .g_map {
  height: 360px;
  margin-bottom: 40px;
}

.top_access .g_map iframe {
  width: 100%;
  height: 100%;
}

.top_access .checkin_box {
  width: 100%;
  margin-bottom: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.top_access .checkin_box .checkin_ttl {
  position: relative;
  text-align: center;
  font-size: 2.0rem;
  margin-bottom: 25px;
  padding: 0 30px;
}

.top_access .checkin_box .checkin_ttl span {
  background: #fff;
  padding: 0 30px;
  z-index: 2;
  position: relative;
}


.top_access .checkin_box .checkin_ttl:before {
  content: "";
  height: 1px;
  background: #ccc;
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.top_access .checkin_box .checkin_wrapper {
  font-size: 1.8rem;
  padding: 1em;
  border: 1px solid #739db3;
  margin-bottom: 20px;
}

.top_access .access_map {
  text-align: center;
}

.top_access .access_map>img {
  width: 90%;
  margin-bottom: 70px;
}

.top_access .access_map>h3 {
  padding-bottom: 20px;
  font-size: 2.2rem;
}

.top_access ul>li {
  display: flex;
  border-bottom: 1px solid #ccc;
  color: #333;
  padding: 14px 0;
}

.top_access ul>li>h3 {
  background: #F1F4F5;
  font-size: 1.8rem;
  font-weight: 500;
  width: 26%;
  padding: 25px 15px;
}


.top_access ul>li>p {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 2.4;
  width: 74%;
  padding: 16px 14px;
}

@media screen and (max-width:896px) {
  .top_access .g_map {
    height: 240px;
  }

  .top_access .g_map iframe {
    height: 100%;
  }

  .top_access .access_map>img {
    margin-bottom: 40px;
  }

  .top_access ul>li {
    flex-direction: column;
  }

  .top_access ul>li>h3 {
    width: 100%;
    text-align: center;
  }

  .top_access ul>li>p {
    width: 100%;
  }
}

.gallery {
  background-color: #e5e5e5;
  padding-top: 90px;
  padding-bottom: 90px;
  text-align: center;
}

.gallery h2 {
  padding-bottom: 20px;
  color: #271b00;
}

.gallery .img-list>li {
  width: 23%;
  margin: 5px;
  display: inline-block;
  transition: 0.3s;
}

.gallery .img-list>li:hover {
  opacity: 0.7;
}

.gallery .img-list>li>img {
  width: 100%;
  height: 195px;
  object-fit: cover;
}

@media screen and (max-width: 767px) {
  .gallery .img-list>li {
    width: 44%;
  }

  .gallery .img-list>li>img {
    height: 120px;
  }
}

.readmore {
  position: relative;
}

.readmore-content {
  position: relative;
  overflow: hidden;
  height: 400px;
}

.readmore-content:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50px;
  background: -webkit-linear-gradient(top, rgba(229, 229, 229, 0) 0%, rgba(229, 229, 229, 0.8) 50%, rgba(229, 229, 229, 0.8) 50%, #e5e5e5 100%);
}

.readmore-label {
  display: table;
  position: absolute;
  bottom: 50px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  margin: 0 auto;
  z-index: 2;
  font-size: 17px;
  width: 200px;
  color: #27566B;
  background: #fff;
  border-radius: 24px;
  padding: 15px 30px;
  border: #ececec 1px solid;
}

.readmore-label:before {
  content: 'See more';
}

.readmore-check {
  display: none;
}

.readmore-check:checked~.readmore-label {
  position: static;
  transform: translateX(0);
  -webkit-transform: translateX(0);
}

.readmore-check:checked~.readmore-label:before {
  content: 'Close up';
}

.readmore-check:checked~.readmore-content {
  height: auto;
}

.readmore-check:checked~.readmore-content::before {
  display: none;
}

@media screen and (max-width: 767px) {
  .readmore-check:checked~.readmore-content {
    height: auto;
  }

  .gallery {
    padding-top: 40px;
  }
}

.top_access address {
  font-size: 1.5rem;
  margin-top: 1em;
}

/* --------------------------------------------- */
/* ↑トップページ（front-page.php）パーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓お知らせ（single-news.php）パーツ */
/* --------------------------------------------- */

.container.news_single {
  padding: 80px 100px 100px;
}

.container.news_single p.date {
  text-align: center;
}

.container.news_single h2 {
  padding: 15px 0 25px;
  margin-bottom: 55px;
  font-size: 2.4rem;
}

.container.news_single .article_content img {
  display: block;
  margin: 0 auto;
}

.container.news_single .article_content p {
  line-height: 2.0;
  word-break: break-word;
}

@media screen and (max-width:896px) {
  .container.news_single {
    padding: 10% 5%;
    min-height: 300px;
    box-sizing: border-box;
  }
}


/* --------------------------------------------- */
/* ↑お知らせ（single-news.php）パーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓愛犬とご宿泊ページ（page-pet.php）パーツ */
/* --------------------------------------------- */

/*ペット*/
.pet {
  text-align: center;
}

.pet>p {
  font-size: 1.7em;
}

.pet_container,
.pet_container_re {
  display: flex;
  margin: 50px auto;
}

.pet_container_re {
  flex-direction: row-reverse;
}


.pet_mainimg,
.pet_txtarea {
  width: 50%;
}

.pet_h3 {
  padding-bottom: 10px;
  font-size: 2.4rem;
  line-height: 1.3;
  position: relative;
  color: #27566B;
  margin-bottom: 20px;
  border-bottom: solid 1px #27566B;
}

@media screen and (max-width:896px) {

  .pet_container,
  .pet_container_re {
    display: flex;
    flex-direction: column;
  }

  .pet_mainimg,
  .pet_txtarea {
    width: 100%;
  }

  .pet_txtarea .textarea_p {
    padding: 1rem;
  }
}

.post-slider {
  margin-bottom: 60px;
}

.post-slider li {
  margin: 0 10px;
}

.post-slider li a {
  text-decoration: none;
  transition: 0.3s;
}

.post-slider li a:hover {
  opacity: 0.7;
}

.post-slider li img {
  width: 100%;
  height: 240px;
  object-fit: cover;
}

.post-slider li h3.spot {
  border-bottom: 1px dotted #788073;
  width: 80%;
  margin: 0 auto 6px;
  padding: 18px 0 14px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 500;
}

.post-slider li p {
  margin: 15px 0 0;
  padding: 0 14px;
  font-size: 1.4rem;
  line-height: 1.8;
}


.c-video {
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  position: relative;
}

.c-video__frame {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc(9/16*100%);
  background: #000;
}

.c-video__frame iframe {
  position: absolute;
  top: -60px;
  left: 0;
  width: 100%;
  height: calc(100% + 120px);
  transition: 0.1s ease;
}

#playBtn {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

#playBtn img {
  width: 100%;
}

.pet_walking {
  padding: 50px 0;
}

.pet_walking .img {
  width: 90%;
  margin: 0 auto;
}

.pet_walking .img img {
  width: 100%;
  object-fit: cover;
}


/* --------------------------------------------- */
/* ↑愛犬とご宿泊ページ（page-pet.php）パーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓Q&Aページ（archive-qa.php）パーツ */
/* --------------------------------------------- */
.qa_bk h3 {
  padding: 20px;
  margin: 40px 0 10px;
  border-bottom: 1px solid #ebebec;
  border-top: 1px solid #ebebec;
}

.qa_bk li {
  padding: 20px;
  border-bottom: 1px dotted #eee;
}

.qa_bk dt {
  padding-bottom: 20px;
  font-weight: bold;
}

.qa_bk dt span,
.qa_bk dd span {
  display: inline-block;
  margin-left: 40px;
  margin-top: 5px;
  line-height: 1.6;
}

.qa_bk dt::before {
  content: "Q";
  display: inline-block;
  font-size: 3rem;
  padding-right: 10px;
  color: #27566B;
  position: absolute;
}

.qa_bk dd::before {
  content: "A";
  display: inline-block;
  font-size: 3rem;
  padding-right: 10px;
  color: #59807b;
  position: absolute;
}

/* --------------------------------------------- */
/* ↑Q&Aページ（archive-qa.php）パーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓お部屋ページ（page-room.php）パーツ */
/* --------------------------------------------- */
#room {
  padding: 80px 0;
}

#room h4 {
  font-size: 2.0rem;
  text-align: center;
  margin-bottom: 40px;
  font-weight: 500;
}

#room p.msg,
.top_rental p.msg {
  text-align: center;
  margin-bottom: 60px;
}

#room .box {
  margin-bottom: 65px;
}

#room .inner {
  display: flex;
  justify-content: space-between;
}

#room .roomimage {
  width: 500px;
}

#room .txt {
  width: 680px;
  margin: 0 auto;
  padding-left: 20px;
}

#room .box .inner .txt .type {
  background: #f0f0f0;
  display: inline-block;
  padding: 5px 15px;
  margin: 10px 0;
  position: relative;
}

#room .box .inner .txt .type span {
  position: absolute;
  width: 120%;
  padding: 10px 17px;
  border: 1px solid #ccc;
  top: 70px;
  left: 0;
  border-radius: 30px;
  text-align: center;
}

@media screen and (max-width:896px) {
  #room .box .inner .txt .type span {
    padding: 6px;
    left: 0;
  }
}

#room .txt table {
  border-top: 1px solid #f0f0f0;
  border-bottom: 1px solid #f0f0f0;
  width: 100%;
}

#room .txt_width table {
  border-top: 1px solid #f0f0f0;
  border-bottom: 1px solid #f0f0f0;
  width: 100%;
  margin: 0 auto;
}

#room .txt table th,
#room .txt_width table th {
  font-size: 1.6rem;
  padding: 16px 25px;
  border-bottom: 1px dotted #f0f0f0;
  width: 30%;
  text-align: left;
}

#room .txt table td,
#room .txt_width table td {
  width: 70%;
  font-size: 1.6rem;
  line-height: 1.7;
  padding: 16px 25px;
  border-bottom: 1px dotted #f0f0f0;
}

#room ul.label {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#room ul.label li {
  width: 48%;
  display: flex;
  margin-bottom: 14px;
}

#room ul.label li p {
  padding: 20px 0;
  font-size: 1.6rem;
}

#room ul.label li .green {
  width: 40%;
  color: #fff;
  background: #19a495;
  text-align: center;
  font-weight: 500;
}

#room ul.label li .white {
  width: 60%;
  background: #fff;
  padding: 20px 30px;
  box-sizing: border-box;
}

#room .room_title {
  display: flex;
  flex-wrap: wrap;
}

#room .limit {
  padding: 5px 15px;
  margin-bottom: 20px;
}

.room_rental ul.rental_area {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}

.room_rental ul.rental_area li {
  width: 31%;
}

.room_rental ul.r-box {
  width: 100%;
  flex-direction: column;
}

.room_rental ul.r-box h3 {
  padding: 6px;
  background: #e6ebec;
  text-align: center;
  font-size: 16px;
}

.room_rental ul.r-box img {
  width: 100%;
  height: 240px;
  object-fit: cover;
}

.room_rental ul.r-box li.p_desc {
  width: 100%;
  flex-direction: column;
}

.room_rental ul.r-box li.p_desc p {
  margin: 15px;
}

@media screen and (max-width:896px) {
  #room .map {
    padding: 0;
  }

  #room .inner {
    flex-direction: column;
  }

  #room .roomimage {
    width: 100%;
  }

  #room .txt {
    width: 100%;
    padding-left: 0;
  }

  #room .txt_width table {
    width: 100%;
  }

  #room .txt table th,
  #room .txt_width table th {
    font-size: 1.4rem;
    width: 34%;
  }

  #room .txt table td,
  #room .txt_width table td {
    width: 66%;
    font-size: 1.4rem;
  }

  #room.room_title {
    display: block;
  }

  #room .limit {
    text-align: center;
  }

  .room_rental ul.rental_area li {
    width: 100%;
  }

}

/* --------------------------------------------- */
/* ↑お部屋ページ（page-room.php）パーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓お食事ページ（page-meal.php）パーツ */
/* --------------------------------------------- */
#meal {
  padding: 80px 0;
}

#meal h4 {
  font-size: 2.0rem;
  text-align: center;
  margin-bottom: 40px;
  font-weight: 500;
}

#meal .box {
  background: #F1F4F5;
  padding: 60px 30px;
}

/*画像はイメージです*/
.p_menu {
  padding: 10px 0;
  font-size: 1.4rem;
  color: #888;
}

#meal img {
  width: 530px;
  height: 360px;
  object-fit: cover;
}

#meal .inner {
  display: flex;
  justify-content: space-between;
}

#meal .txt {
  width: 540px;
  padding-left: 20px;
}

#meal .txt p.type {
  font-weight: bold;
}

#meal .txt ul {
  width: 100%;
}

#meal .txt ul li {
  font-size: 1.6rem;
  padding: 12px 16px;
  text-align: left;
}

@media screen and (max-width:896px) {
  #meal img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }

  #meal .inner {
    flex-direction: column;
  }

  #meal .txt {
    width: auto;
    padding-left: 0;
  }

  #meal .txt ul li {
    font-size: 1.4rem;
    padding: 12px 4px;
    text-align: left;
  }
}

/* --------------------------------------------- */
/* ↑お食事ページ（page-meal.php）パーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓体験アクティビティページパーツ */
/* --------------------------------------------- */

.photo_box {
  padding: 50px 0;
}

.title_min {
  letter-spacing: 0.1em;
  font-family: 'Yu Gothic UI', "游ゴシック", YuGothic, "ヒラギノゴシック Pro W3", "Hiragino Gothic Pro", "HGゴシックE", "MS Pゴシック", "MS ゴシック", sans-serif;
  font-weight: normal;
  font-size: 1.5rem;
  color: #27566B;
  text-align: center;
  margin-bottom: 30px;
}

.photo_area {
  height: 450px;
  overflow: hidden;
  overflow-y: auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.photo_area ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center
}

.photo_area ul li {
  width: 46%;
  margin: 10px;
}

@media screen and (max-width:896px) {
  .photo_area {
    height: 350px;
  }

  .photo_area ul li {
    width: 100%;
    margin: 10px;
  }

  .title_min {
    margin-bottom: 0px;
  }
}

/* --------------------------------------------- */
/* ↑体験アクティビティページパーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓404ページ（404.php）パーツ */
/* --------------------------------------------- */
#content h2 {
  font-size: 4rem;
  text-align: center;
  padding: 10rem 0 6rem;
  margin: 0 auto;
}

#content p {
  text-align: center;
  padding: 3rem 0;
}

/* --------------------------------------------- */
/* ↑404ページ（404.php）パーツ */
/* --------------------------------------------- */

/* --------------------------------------------- */
/* ↓グローバルパーツ */
/* --------------------------------------------- */
/* マージン */
.mt_5 {
  margin-top: 5px !important;
}

.mt_10 {
  margin-top: 10px !important;
}

.mt_15 {
  margin-top: 15px !important;
}

.mt_20 {
  margin-top: 20px !important;
}

.mt_25 {
  margin-top: 25px !important;
}

.mt_30 {
  margin-top: 30px !important;
}

.mt_35 {
  margin-top: 35px !important;
}

.mt_40 {
  margin-top: 40px !important;
}

.mt_45 {
  margin-top: 45px !important;
}

.mt_50 {
  margin-top: 50px !important;
}

.mt_55 {
  margin-top: 55px !important;
}

.mt_60 {
  margin-top: 60px !important;
}

.mt_65 {
  margin-top: 65px !important;
}

.mt_70 {
  margin-top: 70px !important;
}

.mt_75 {
  margin-top: 75px !important;
}

.mt_80 {
  margin-top: 80px !important;
}

.mt_85 {
  margin-top: 85px !important;
}

.mt_90 {
  margin-top: 90px !important;
}

.mt_95 {
  margin-top: 95px !important;
}

.mt_100 {
  margin-top: 100px !important;
}

.mr_5 {
  margin-right: 5px !important;
}

.mr_10 {
  margin-right: 10px !important;
}

.mr_15 {
  margin-right: 15px !important;
}

.mr_20 {
  margin-right: 20px !important;
}

.mr_25 {
  margin-right: 25px !important;
}

.mr_30 {
  margin-right: 30px !important;
}

.mr_35 {
  margin-right: 35px !important;
}

.mr_40 {
  margin-right: 40px !important;
}

.mr_45 {
  margin-right: 45px !important;
}

.mr_50 {
  margin-right: 50px !important;
}

.mr_55 {
  margin-right: 55px !important;
}

.mr_60 {
  margin-right: 60px !important;
}

.mr_65 {
  margin-right: 65px !important;
}

.mr_70 {
  margin-right: 70px !important;
}

.mr_75 {
  margin-right: 75px !important;
}

.mr_80 {
  margin-right: 80px !important;
}

.mr_85 {
  margin-right: 85px !important;
}

.mr_90 {
  margin-right: 90px !important;
}

.mr_95 {
  margin-right: 95px !important;
}

.mr_100 {
  margin-right: 100px !important;
}

.mb_5 {
  margin-bottom: 5px !important;
}

.mb_10 {
  margin-bottom: 10px !important;
}

.mb_15 {
  margin-bottom: 15px !important;
}

.mb_20 {
  margin-bottom: 20px !important;
}

.mb_25 {
  margin-bottom: 25px !important;
}

.mb_30 {
  margin-bottom: 30px !important;
}

.mb_35 {
  margin-bottom: 35px !important;
}

.mb_40 {
  margin-bottom: 40px !important;
}

.mb_45 {
  margin-bottom: 45px !important;
}

.mb_50 {
  margin-bottom: 50px !important;
}

.mb_55 {
  margin-bottom: 55px !important;
}

.mb_60 {
  margin-bottom: 60px !important;
}

.mb_65 {
  margin-bottom: 65px !important;
}

.mb_70 {
  margin-bottom: 70px !important;
}

.mb_75 {
  margin-bottom: 75px !important;
}

.mb_80 {
  margin-bottom: 80px !important;
}

.mb_85 {
  margin-bottom: 85px !important;
}

.mb_90 {
  margin-bottom: 90px !important;
}

.mb_95 {
  margin-bottom: 95px !important;
}

.mb_100 {
  margin-bottom: 100px !important;
}

.ml_5 {
  margin-left: 5px !important;
}

.ml_10 {
  margin-left: 10px !important;
}

.ml_15 {
  margin-left: 15px !important;
}

.ml_20 {
  margin-left: 20px !important;
}

.ml_25 {
  margin-left: 25px !important;
}

.ml_30 {
  margin-left: 30px !important;
}

.ml_35 {
  margin-left: 35px !important;
}

.ml_40 {
  margin-left: 40px !important;
}

.ml_45 {
  margin-left: 45px !important;
}

.ml_50 {
  margin-left: 50px !important;
}

.ml_55 {
  margin-left: 55px !important;
}

.ml_60 {
  margin-left: 60px !important;
}

.ml_65 {
  margin-left: 65px !important;
}

.ml_70 {
  margin-left: 70px !important;
}

.ml_75 {
  margin-left: 75px !important;
}

.ml_80 {
  margin-left: 80px !important;
}

.ml_85 {
  margin-left: 85px !important;
}

.ml_90 {
  margin-left: 90px !important;
}

.ml_95 {
  margin-left: 95px !important;
}

.ml_100 {
  margin-left: 100px !important;
}

@media only screen and (max-width: 896px) {
  .tb_mt_5 {
    margin-top: 5px !important;
  }

  .tb_mt_10 {
    margin-top: 10px !important;
  }

  .tb_mt_15 {
    margin-top: 15px !important;
  }

  .tb_mt_20 {
    margin-top: 20px !important;
  }

  .tb_mt_25 {
    margin-top: 25px !important;
  }

  .tb_mt_30 {
    margin-top: 30px !important;
  }

  .tb_mt_35 {
    margin-top: 35px !important;
  }

  .tb_mt_40 {
    margin-top: 40px !important;
  }

  .tb_mt_45 {
    margin-top: 45px !important;
  }

  .tb_mt_50 {
    margin-top: 50px !important;
  }

  .tb_mt_55 {
    margin-top: 55px !important;
  }

  .tb_mt_60 {
    margin-top: 60px !important;
  }

  .tb_mt_65 {
    margin-top: 65px !important;
  }

  .tb_mt_70 {
    margin-top: 70px !important;
  }

  .tb_mt_75 {
    margin-top: 75px !important;
  }

  .tb_mt_80 {
    margin-top: 80px !important;
  }

  .tb_mt_85 {
    margin-top: 85px !important;
  }

  .tb_mt_90 {
    margin-top: 90px !important;
  }

  .tb_mt_95 {
    margin-top: 95px !important;
  }

  .tb_mt_100 {
    margin-top: 100px !important;
  }

  .tb_mr_5 {
    margin-right: 5px !important;
  }

  .tb_mr_10 {
    margin-right: 10px !important;
  }

  .tb_mr_15 {
    margin-right: 15px !important;
  }

  .tb_mr_20 {
    margin-right: 20px !important;
  }

  .tb_mr_25 {
    margin-right: 25px !important;
  }

  .tb_mr_30 {
    margin-right: 30px !important;
  }

  .tb_mr_35 {
    margin-right: 35px !important;
  }

  .tb_mr_40 {
    margin-right: 40px !important;
  }

  .tb_mr_45 {
    margin-right: 45px !important;
  }

  .tb_mr_50 {
    margin-right: 50px !important;
  }

  .tb_mr_55 {
    margin-right: 55px !important;
  }

  .tb_mr_60 {
    margin-right: 60px !important;
  }

  .tb_mr_65 {
    margin-right: 65px !important;
  }

  .tb_mr_70 {
    margin-right: 70px !important;
  }

  .tb_mr_75 {
    margin-right: 75px !important;
  }

  .tb_mr_80 {
    margin-right: 80px !important;
  }

  .tb_mr_85 {
    margin-right: 85px !important;
  }

  .tb_mr_90 {
    margin-right: 90px !important;
  }

  .tb_mr_95 {
    margin-right: 95px !important;
  }

  .tb_mr_100 {
    margin-right: 100px !important;
  }

  .tb_mb_5 {
    margin-bottom: 5px !important;
  }

  .tb_mb_10 {
    margin-bottom: 10px !important;
  }

  .tb_mb_15 {
    margin-bottom: 15px !important;
  }

  .tb_mb_20 {
    margin-bottom: 20px !important;
  }

  .tb_mb_25 {
    margin-bottom: 25px !important;
  }

  .tb_mb_30 {
    margin-bottom: 30px !important;
  }

  .tb_mb_35 {
    margin-bottom: 35px !important;
  }

  .tb_mb_40 {
    margin-bottom: 40px !important;
  }

  .tb_mb_45 {
    margin-bottom: 45px !important;
  }

  .tb_mb_50 {
    margin-bottom: 50px !important;
  }

  .tb_mb_55 {
    margin-bottom: 55px !important;
  }

  .tb_mb_60 {
    margin-bottom: 60px !important;
  }

  .tb_mb_65 {
    margin-bottom: 65px !important;
  }

  .tb_mb_70 {
    margin-bottom: 70px !important;
  }

  .tb_mb_75 {
    margin-bottom: 75px !important;
  }

  .tb_mb_80 {
    margin-bottom: 80px !important;
  }

  .tb_mb_85 {
    margin-bottom: 85px !important;
  }

  .tb_mb_90 {
    margin-bottom: 90px !important;
  }

  .tb_mb_95 {
    margin-bottom: 95px !important;
  }

  .tb_mb_100 {
    margin-bottom: 100px !important;
  }

  .tb_ml_5 {
    margin-left: 5px !important;
  }

  .tb_ml_10 {
    margin-left: 10px !important;
  }

  .tb_ml_15 {
    margin-left: 15px !important;
  }

  .tb_ml_20 {
    margin-left: 20px !important;
  }

  .tb_ml_25 {
    margin-left: 25px !important;
  }

  .tb_ml_30 {
    margin-left: 30px !important;
  }

  .tb_ml_35 {
    margin-left: 35px !important;
  }

  .tb_ml_40 {
    margin-left: 40px !important;
  }

  .tb_ml_45 {
    margin-left: 45px !important;
  }

  .tb_ml_50 {
    margin-left: 50px !important;
  }

  .tb_ml_55 {
    margin-left: 55px !important;
  }

  .tb_ml_60 {
    margin-left: 60px !important;
  }

  .tb_ml_65 {
    margin-left: 65px !important;
  }

  .tb_ml_70 {
    margin-left: 70px !important;
  }

  .tb_ml_75 {
    margin-left: 75px !important;
  }

  .tb_ml_80 {
    margin-left: 80px !important;
  }

  .tb_ml_85 {
    margin-left: 85px !important;
  }

  .tb_ml_90 {
    margin-left: 90px !important;
  }

  .tb_ml_95 {
    margin-left: 95px !important;
  }

  .tb_ml_100 {
    margin-left: 100px !important;
  }
}

/* パディング */
.pt_5 {
  padding-top: 5px !important;
}

.pt_10 {
  padding-top: 10px !important;
}

.pt_15 {
  padding-top: 15px !important;
}

.pt_20 {
  padding-top: 20px !important;
}

.pt_25 {
  padding-top: 25px !important;
}

.pt_30 {
  padding-top: 30px !important;
}

.pt_35 {
  padding-top: 35px !important;
}

.pt_40 {
  padding-top: 40px !important;
}

.pt_45 {
  padding-top: 45px !important;
}

.pt_50 {
  padding-top: 50px !important;
}

.pt_55 {
  padding-top: 55px !important;
}

.pt_60 {
  padding-top: 60px !important;
}

.pt_65 {
  padding-top: 65px !important;
}

.pt_70 {
  padding-top: 70px !important;
}

.pt_75 {
  padding-top: 75px !important;
}

.pt_80 {
  padding-top: 80px !important;
}

.pt_85 {
  padding-top: 85px !important;
}

.pt_90 {
  padding-top: 90px !important;
}

.pt_95 {
  padding-top: 95px !important;
}

.pt_100 {
  padding-top: 100px !important;
}

.pr_5 {
  padding-right: 5px !important;
}

.pr_10 {
  padding-right: 10px !important;
}

.pr_15 {
  padding-right: 15px !important;
}

.pr_20 {
  padding-right: 20px !important;
}

.pr_25 {
  padding-right: 25px !important;
}

.pr_30 {
  padding-right: 30px !important;
}

.pr_35 {
  padding-right: 35px !important;
}

.pr_40 {
  padding-right: 40px !important;
}

.pr_45 {
  padding-right: 45px !important;
}

.pr_50 {
  padding-right: 50px !important;
}

.pr_55 {
  padding-right: 55px !important;
}

.pr_60 {
  padding-right: 60px !important;
}

.pr_65 {
  padding-right: 65px !important;
}

.pr_70 {
  padding-right: 70px !important;
}

.pr_75 {
  padding-right: 75px !important;
}

.pr_80 {
  padding-right: 80px !important;
}

.pr_85 {
  padding-right: 85px !important;
}

.pr_90 {
  padding-right: 90px !important;
}

.pr_95 {
  padding-right: 95px !important;
}

.pr_100 {
  padding-right: 100px !important;
}

.pb_5 {
  padding-bottom: 5px !important;
}

.pb_10 {
  padding-bottom: 10px !important;
}

.pb_15 {
  padding-bottom: 15px !important;
}

.pb_20 {
  padding-bottom: 20px !important;
}

.pb_25 {
  padding-bottom: 25px !important;
}

.pb_30 {
  padding-bottom: 30px !important;
}

.pb_35 {
  padding-bottom: 35px !important;
}

.pb_40 {
  padding-bottom: 40px !important;
}

.pb_45 {
  padding-bottom: 45px !important;
}

.pb_50 {
  padding-bottom: 50px !important;
}

.pb_55 {
  padding-bottom: 55px !important;
}

.pb_60 {
  padding-bottom: 60px !important;
}

.pb_65 {
  padding-bottom: 65px !important;
}

.pb_70 {
  padding-bottom: 70px !important;
}

.pb_75 {
  padding-bottom: 75px !important;
}

.pb_80 {
  padding-bottom: 80px !important;
}

.pb_85 {
  padding-bottom: 85px !important;
}

.pb_90 {
  padding-bottom: 90px !important;
}

.pb_95 {
  padding-bottom: 95px !important;
}

.pb_100 {
  padding-bottom: 100px !important;
}

.pl_5 {
  padding-left: 5px !important;
}

.pl_10 {
  padding-left: 10px !important;
}

.pl_15 {
  padding-left: 15px !important;
}

.pl_20 {
  padding-left: 20px !important;
}

.pl_25 {
  padding-left: 25px !important;
}

.pl_30 {
  padding-left: 30px !important;
}

.pl_35 {
  padding-left: 35px !important;
}

.pl_40 {
  padding-left: 40px !important;
}

.pl_45 {
  padding-left: 45px !important;
}

.pl_50 {
  padding-left: 50px !important;
}

.pl_55 {
  padding-left: 55px !important;
}

.pl_60 {
  padding-left: 60px !important;
}

.pl_65 {
  padding-left: 65px !important;
}

.pl_70 {
  padding-left: 70px !important;
}

.pl_75 {
  padding-left: 75px !important;
}

.pl_80 {
  padding-left: 80px !important;
}

.pl_85 {
  padding-left: 85px !important;
}

.pl_90 {
  padding-left: 90px !important;
}

.pl_95 {
  padding-left: 95px !important;
}

.pl_100 {
  padding-left: 100px !important;
}

@media only screen and (max-width: 896px) {
  .tb_pt_5 {
    padding-top: 5px !important;
  }

  .tb_pt_10 {
    padding-top: 10px !important;
  }

  .tb_pt_15 {
    padding-top: 15px !important;
  }

  .tb_pt_20 {
    padding-top: 20px !important;
  }

  .tb_pt_25 {
    padding-top: 25px !important;
  }

  .tb_pt_30 {
    padding-top: 30px !important;
  }

  .tb_pt_35 {
    padding-top: 35px !important;
  }

  .tb_pt_40 {
    padding-top: 40px !important;
  }

  .tb_pt_45 {
    padding-top: 45px !important;
  }

  .tb_pt_50 {
    padding-top: 50px !important;
  }

  .tb_pt_55 {
    padding-top: 55px !important;
  }

  .tb_pt_60 {
    padding-top: 60px !important;
  }

  .tb_pt_65 {
    padding-top: 65px !important;
  }

  .tb_pt_70 {
    padding-top: 70px !important;
  }

  .tb_pt_75 {
    padding-top: 75px !important;
  }

  .tb_pt_80 {
    padding-top: 80px !important;
  }

  .tb_pt_85 {
    padding-top: 85px !important;
  }

  .tb_pt_90 {
    padding-top: 90px !important;
  }

  .tb_pt_95 {
    padding-top: 95px !important;
  }

  .tb_pt_100 {
    padding-top: 100px !important;
  }

  .tb_pr_5 {
    padding-right: 5px !important;
  }

  .tb_pr_10 {
    padding-right: 10px !important;
  }

  .tb_pr_15 {
    padding-right: 15px !important;
  }

  .tb_pr_20 {
    padding-right: 20px !important;
  }

  .tb_pr_25 {
    padding-right: 25px !important;
  }

  .tb_pr_30 {
    padding-right: 30px !important;
  }

  .tb_pr_35 {
    padding-right: 35px !important;
  }

  .tb_pr_40 {
    padding-right: 40px !important;
  }

  .tb_pr_45 {
    padding-right: 45px !important;
  }

  .tb_pr_50 {
    padding-right: 50px !important;
  }

  .tb_pr_55 {
    padding-right: 55px !important;
  }

  .tb_pr_60 {
    padding-right: 60px !important;
  }

  .tb_pr_65 {
    padding-right: 65px !important;
  }

  .tb_pr_70 {
    padding-right: 70px !important;
  }

  .tb_pr_75 {
    padding-right: 75px !important;
  }

  .tb_pr_80 {
    padding-right: 80px !important;
  }

  .tb_pr_85 {
    padding-right: 85px !important;
  }

  .tb_pr_90 {
    padding-right: 90px !important;
  }

  .tb_pr_95 {
    padding-right: 95px !important;
  }

  .tb_pr_100 {
    padding-right: 100px !important;
  }

  .tb_pb_5 {
    padding-bottom: 5px !important;
  }

  .tb_pb_10 {
    padding-bottom: 10px !important;
  }

  .tb_pb_15 {
    padding-bottom: 15px !important;
  }

  .tb_pb_20 {
    padding-bottom: 20px !important;
  }

  .tb_pb_25 {
    padding-bottom: 25px !important;
  }

  .tb_pb_30 {
    padding-bottom: 30px !important;
  }

  .tb_pb_35 {
    padding-bottom: 35px !important;
  }

  .tb_pb_40 {
    padding-bottom: 40px !important;
  }

  .tb_pb_45 {
    padding-bottom: 45px !important;
  }

  .tb_pb_50 {
    padding-bottom: 50px !important;
  }

  .tb_pb_55 {
    padding-bottom: 55px !important;
  }

  .tb_pb_60 {
    padding-bottom: 60px !important;
  }

  .tb_pb_65 {
    padding-bottom: 65px !important;
  }

  .tb_pb_70 {
    padding-bottom: 70px !important;
  }

  .tb_pb_75 {
    padding-bottom: 75px !important;
  }

  .tb_pb_80 {
    padding-bottom: 80px !important;
  }

  .tb_pb_85 {
    padding-bottom: 85px !important;
  }

  .tb_pb_90 {
    padding-bottom: 90px !important;
  }

  .tb_pb_95 {
    padding-bottom: 95px !important;
  }

  .tb_pb_100 {
    padding-bottom: 100px !important;
  }

  .tb_pl_5 {
    padding-left: 5px !important;
  }

  .tb_pl_10 {
    padding-left: 10px !important;
  }

  .tb_pl_15 {
    padding-left: 15px !important;
  }

  .tb_pl_20 {
    padding-left: 20px !important;
  }

  .tb_pl_25 {
    padding-left: 25px !important;
  }

  .tb_pl_30 {
    padding-left: 30px !important;
  }

  .tb_pl_35 {
    padding-left: 35px !important;
  }

  .tb_pl_40 {
    padding-left: 40px !important;
  }

  .tb_pl_45 {
    padding-left: 45px !important;
  }

  .tb_pl_50 {
    padding-left: 50px !important;
  }

  .tb_pl_55 {
    padding-left: 55px !important;
  }

  .tb_pl_60 {
    padding-left: 60px !important;
  }

  .tb_pl_65 {
    padding-left: 65px !important;
  }

  .tb_pl_70 {
    padding-left: 70px !important;
  }

  .tb_pl_75 {
    padding-left: 75px !important;
  }

  .tb_pl_80 {
    padding-left: 80px !important;
  }

  .tb_pl_85 {
    padding-left: 85px !important;
  }

  .tb_pl_90 {
    padding-left: 90px !important;
  }

  .tb_pl_95 {
    padding-left: 95px !important;
  }

  .tb_pl_100 {
    padding-left: 100px !important;
  }
}


.float:before,
.float:after {
  content: " ";
  display: table;
}

.float:after {
  clear: both;
}

.left-box {
  float: left !important;
}

.right-box {
  float: right !important;
}

@media only screen and (max-width: 896px) {
  .float>.left-box {
    float: none !important;
    width: 100% !important;
  }

  .float>.right-box {
    float: none !important;
    width: 100% !important;
  }
}

.hover-all {
  position: relative;
}

.hover-all>a {
  display: block;
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 9;
  top: 0;
  left: 0;
  font-size: 0;
}

.fade a,
a.fade {
  text-decoration: none !important;
}

.fade {
  transition: 0.3s;
}

.fade:hover {
  opacity: 0.7;
}

.text_c {
  text-align: center !important;
}

.text_l {
  text-align: left !important;
}

.text_r {
  text-align: right !important;
}

@media only screen and (max-width: 896px) {
  .text_c_tb {
    text-align: center !important;
  }

  .text_l_tb {
    text-align: left !important;
  }

  .text_r_tb {
    text-align: right !important;
  }
}

.br_sp,
.sp {
  display: none !important;
}

.br_pc,
.pc {
  display: block !important;
}

@media screen and (max-width:896px) {

  .br_sp,
  .sp {
    display: block !important;
  }

  .br_pc,
  .pc {
    display: none !important;
  }
}

.w100 {
  width: 100% !important;
}

/* --------------------------------------------- */
/* ↑グローバルパーツ */
/* --------------------------------------------- */