@charset "UTF-8";

/* ==========================================================================
    main style
============================================================================= */
img {
  height: auto;
}

article {
  padding-top: 100px;
  position: relative;
}

article::before {
  background: url("../images/bg_wave_white.svg") repeat-x 0 0/auto 100%;
  top: -3.5vw;
  left: 0;
  content: "";
  width: 100%;
  height: 3.66vw;
  position: absolute;
}

article .txt {
  line-height: 1.8;
}

@media screen and (max-width: 767.98px) {
  article {
    padding-top: 60px;
  }
}


/* ------------ ページタイトル ------------ */
.page-title {
  position: relative;
}

.page-title::before {
  content: "";
  background: #171b21;
  width: 100%;
  height: 100%;
  display: block;
  opacity: 0.3;
  position: absolute;
}

.page-title img {
  object-fit: cover;
  width: 100%;
}

.page-title .ttl {
  color: #fff;
  font-size: clamp(2.6rem, 2.1527vw, 3.1rem);
  font-weight: bold;
  text-align: center;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  position: absolute;
  width: calc(100% - 20px);
}

.page-title .ttl .sub {
  font-size: clamp(1.7rem, 1.3888vw, 2rem);
  display: block;
}

.page-title .breadcrumb {
  color: #fff;
  font-size: 1.2rem;
  position: absolute;
  max-width: 1100px;
  margin-inline: auto;
  left: 0;
  right: 0;
  bottom: calc(3.66vw + 20px);
  text-align: right;
}

.page-title .breadcrumb a {
  color: #fff;
}

.page-title .breadcrumb a::after {
  content: " - ";
}

@media screen and (max-width: 1098.98px) {
  .page-title .breadcrumb {
    padding-inline: 20px;
  }
}

@media screen and (max-width: 767.98px) {
  .page-title img {
    height: 400px;
    -o-object-fit: cover;
    object-fit: cover;
  }
}


/* ------------ タブ ------------ */
.tab-group .tab-head {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.464vw;
}

.tab-group .tab-head__btn {
  background-color: #eff7fc;
  color: #094790;
  cursor: pointer;
  font-weight: bold;
  min-width: inherit;
  max-width: 250px;
  width: calc(33.333% - 13.333px);
  align-items: center;
}

.tab-group .tab-head__btn img{
  width: 15%;
}

.tab-group .tab-head__btn.is-active {
  background-color: #094790;
  color: #fff;
}

.tab-group .tab-contents__item {
  display: none;
}

.tab-group .tab-contents__item.is-show {
  display: block;
  -webkit-animation: fadeIn 0.5s ease;
  animation: fadeIn 0.5s ease;
}

@media screen and (max-width: 767.98px) {
  .tab-group .tab-head__btn {
    gap: 10px;
    min-width: calc(50% - 15px);
    width: 49%;
    padding: 15px 10px;
    justify-content: flex-start;
  }
  .plan-text02 h3{
    font-size: 1.6rem !important;
  }
}


/* ------------ スライダー ------------ */
.slider .slick-dots,
.slider__line .slick-dots {
  bottom: calc(2.77vw - 10px);
}

.slider .slick-dots li,
.slider__line .slick-dots li {
  margin: 0;
}

.slider .slick-dots li button,
.slider__line .slick-dots li button {
  padding: 0;
}

.slider .slick-dots li button:before,
.slider__line .slick-dots li button:before {
  color: #fff;
  font-size: 10px;
  opacity: 0.5;
  margin: 0;
}

.slider .slick-dots li.slick-active button:before,
.slider__line .slick-dots li.slick-active button:before {
  opacity: 1;
}

.slider .slick-next,
.slider__line .slick-next,
.slider .slick-prev,
.slider__line .slick-prev {
  border-radius: 50%;
  background-color: #eff7fc;
  width: 5.124vw;
  height: 5.124vw;
  min-width: 40px;
  min-height: 40px;
  top: 55%;
  z-index: 100;
  opacity: 0.9;
}

.slider .slick-next:before,
.slider__line .slick-next:before,
.slider .slick-prev:before,
.slider__line .slick-prev:before {
  content: '\f060';
  color: #094790;
  font-size: 1.8rem;
  font-family: 'Font Awesome 6 Free';
  font-weight: 900;
  opacity: 1;
}

.slider .slick-next.slick-disabled,
.slider__line .slick-next.slick-disabled,
.slider .slick-prev.slick-disabled,
.slider__line .slick-prev.slick-disabled {
  background-color: #f5f5f5;
}

.slider .slick-next.slick-disabled::before,
.slider__line .slick-next.slick-disabled::before,
.slider .slick-prev.slick-disabled::before,
.slider__line .slick-prev.slick-disabled::before {
  color: #afafaf;
}

.slider .slick-prev,
.slider__line .slick-prev {
  left: calc(-5.124vw / 2);
}

.slider .slick-next,
.slider__line .slick-next {
  right: calc(-5.124vw / 2);
}

.slider .slick-next:before,
.slider__line .slick-next:before {
  content: '\f061';
}

.slider {
  width: 100%;
}

.slider img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.slider__line .slick-list {
  padding-left: 9.736vw;
}

.slider__line .slick-prev,
.slider__line .slick-next {
  top: 35%;
}

.slider__line .slick-prev {
  left: 7.174vw;
}

.slider__line .slick-next {
  right: 7.174vw;
}

@media screen and (max-width: 767.98px) {
  .slider__line .slick-next {
    right: 20px;
  }

  .slider__line .slick-prev {
    left: 20px;
  }
}


/* ------------ 写真 ------------ */
@media screen and (min-width: 768px) {
  .l-photo__wide {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 5.55vw;
  }

  .l-photo__wide .figure {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
  }

  .l-photo__wide .detail {
    -ms-flex-preferred-size: 32.638%;
    flex-basis: 32.638%;
  }
}

@media screen and (max-width: 767.98px) {
  .l-photo__wide .figure {
    padding-right: 20px;
    width: auto;
  }

  .l-photo__wide .detail {
    padding-inline: 20px;
    width: 100%;
  }

  .l-photo__wide .detail .logo {
    display: block;
    margin-inline: auto;
  }
}

.intro {
  padding-bottom: 140px;
  position: relative;
}

.intro::after {
  background: url("../images/food_bg.svg") no-repeat right bottom/contain;
  content: "";
  display: block;
  max-width: 445px;
  height: 36.676vw;
  width: 32.576vw;
  position: absolute;
  top: 10px;
  right: 0;
  z-index: -1;
}

.intro__figure {
  position: relative;
}

.intro__lead {
  color: #094790;
  font-size: clamp(2rem, 2.049vw, 2.8rem);
  font-weight: bold;
  line-height: 1;
  position: absolute;
  left: -2.982vw;
  bottom: 2.982vw;
}

.intro__lead span {
  background-color: #eff7fc;
  border-radius: 10px;
  display: inline-block;
  padding: 1.464vw;
}

.intro__lead span:not(:first-of-type) {
  margin-top: 10px;
}

@media screen and (max-width: 767.98px) {
  .intro::after {
    top: inherit;
    bottom: calc(32.576vw / 2);
    height: 46.676vw;
    width: 42.576vw;
  }

  .intro__lead {
    left: 0;
  }
}


/* ------------ 背景色 ------------ */
.bg__light-blue {
  background-color: #eff7fc;
  padding: 50px 0 150px;
  position: relative;
}

.bg__light-blue::before {
  background: url("../images/bg_wave_lightblue.svg") repeat-x 0 0/auto 100%;
  content: "";
  width: 100%;
  height: 3.66vw;
  position: absolute;
  top: -3.5vw;
}

.bg__blue {
  /* background-color: #094790; */
  background-color: #234790;
  color: #fff;
}

.bg__blue * {
  color: #fff;
}

.bg__blue .hdg .ja {
  color: #fff;
}

@media screen and (max-width: 767.98px) {
  .bg__light-blue {
    padding-bottom: 80px;
  }
}


/* ------------ プラン ------------ */
.plans .hdg {
  text-align: center;
  margin-bottom: 60px;
}

.plans__ttl {
  background-color: #fff;
  border-radius: 10px;
  font-size: calc(2.6rem);
  font-weight: bold;
  line-height: 1;
  margin: 30px 0;
  padding: 14px 20px;
  text-align: center;
}

.plans .disc {
  margin-top: 20px;
}

.plans .disc li {
  font-size: 1.4rem;
}

.plans__price {
  color: #094790;
  font-size: 2.6rem;
  font-weight: bold;
  text-align: right;
}

.plans .btn {
  margin: 50px auto 0;
  min-width: 250px;
}



@media screen and (min-width: 768px) {
  .plans .l-column.col-2 {
    gap: 40px;
  }

  .plans .l-column.col-2>* {
    width: calc(50% - 20px);
  }
}


/* ------------ 料金 ------------ */
.price .hdg {
  margin-bottom: 50px;
}

.price .cont-inner {
  padding-inline: 0;
}

.price .tbl th {
  color: #094790;
}

.price .tbl th .note {
  font-weight: normal;
  font-size: 1.2rem;
}

.price .tbl th.item-1 {
  width: 36.25%;
}

.price .tbl th.item-2 {
  width: 12.25%;
}

.price .tbl th.item-3 {
  width: 51.5%;
}

.price .tbl td {
  font-weight: normal;
  padding: 16px 0;
}

.price .note {
  color: #094790;
}


/* ------------ 備考 ------------ */
.remarks {
  background: #eff7fc;
  border-radius: 10px;
  font-size: 1.6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0 1em;
  margin-bottom: 2.196vw;
  padding: 18px 2.196vw;
}

.remarks dt {
  color: #094790;
  font-weight: bold;
}

.remarks dd {
  color: #171b21;
}


/* ------------ 見出し ------------ */
.heading {
  margin-bottom: 50px;
}

.heading .hdg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media screen and (min-width: 768px) {
  .heading .hdg {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2.196vw;
  }
}

@media screen and (max-width: 767.98px) {
  .heading .hdg {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}


/* ------------ 釣り船 ------------ */
.page-boat .intro {
  padding-bottom: 20px;
}

.page-boat .message {
  padding: 100px 0 150px;
  text-align: center;
}

.page-boat .message .txt {
  margin-top: 50px;
  text-align: center;
}

.page-boat .fish-results .wave-body {
  padding: 78px 0 98px;
}

.page-boat .fish-results .heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 15px 40px 9.736vw;
  max-width: 1100px;
}

.page-boat .fish-results .heading .hdg {
  line-height: 1.2;
}

.page-boat .fish-results .heading .hdg .ja {
  color: #fff;
  display: block;
}

.page-boat .fish-results .heading .link {
  border-color: #fff;
}

.page-boat .fish-results .news__item .figure img {
  aspect-ratio: 1.7/1;
  -o-object-fit: cover;
  object-fit: cover;
}

@media screen and (min-width: 768px) {
  .page-boat .fish-results .heading .hdg {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    gap: 30px;
  }
}

@media screen and (max-width: 767.98px) {
  .page-boat .message {
    padding: 60px 0 20px;
  }

  .page-boat .fish-results .wave-body {
    padding: 58px 0 68px;
  }

  .page-boat .fish-results .heading {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-inline: 15px;
  }

  .page-boat .fish-results .heading .hdg .ja {
    margin-top: 1em;
  }

  .page-boat .fish-results .link {
    margin-left: auto;
  }

  .page-boat .news__item:empty {
    display: none;
  }
}


/* ------------ 店舗情報 ------------ */
.page-store .access .hdg {
  margin-bottom: 50px;
}

.page-store .access .hdg-2 {
  margin-bottom: 74px;
  text-align: center;
}

.page-store .access .map {
  margin-bottom: 100px;
}

.page-store .access .map iframe {
  border-radius: 3.66vw;
  width: 100%;
  height: 360px;
}

.page-store .access .l-column {
  margin-bottom: 54px;
}

.page-store .access .box__ttl {
  background-color: #eff7fc;
}

.page-store .access .box .disc li {
  font-size: 1.4rem;
  font-weight: normal;
}

.page-store .access .link-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 40px;
  margin-top: 65px;
}

.page-store .access .link-wrap .link {
  gap: 40px;
}

@media screen and (max-width: 767.98px) {
  .page-store .access .l-column.col-2 {
    gap: 40px;
    margin-bottom: 40px;
  }

  .page-store .access .l-column.col-2>.box {
    width: 100%;
  }

  .page-store .access .link-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}


/* ------------ 観光案内 ------------ */
.page-tourist::before {
  background: url("../images/pages/bg_wave_blue.svg") repeat-x 0 0/auto 100%;
}

.page-tourist .hdg {
  color: #fff;
  text-align: center;
  margin-bottom: 63px;
}

.page-tourist .hdg .ja {
  color: #fff;
}

.page-tourist .intro::after {
  z-index: 0;
  opacity: 0.15;
}

.page-tourist .intro .l-container {
  position: relative;
  z-index: 1;
}

.page-tourist .map-img {
  margin-bottom: 80px;
}


/* ------------ お料理プラン ------------ */
.page-cuisine .box .hdg-2 {
  margin-bottom: 20px;
}

.page-cuisine .box .hdg-2 .price {
  color: #094790;
  font-size: 2.4rem;
}

.page-cuisine .box .txt {
  margin-bottom: 30px;
}

.page-cuisine .box .note {
  font-size: 1.2rem;
  padding-left: calc(1em + 10px);
  position: relative;
}

.page-cuisine .box .note::before {
  content: "※";
  position: absolute;
  left: 0;
}

.page-cuisine .box .note+.note {
  margin-top: 10px;
}

.page-cuisine .box .link {
  gap: 5.417vw;
  margin-top: 35px;
}

h5.couse{
  font-size: 2rem;
  font-weight: bold;
}

.plan-text02{
  text-align: center;
  margin-top: 50px;
}

.plan-text02 h3{
  font-size: 2.8rem;
  margin-bottom: 25px;
  color: #FFF;
  text-align: center;
  background-color: #094790;
  display: inline-block;
  border-radius: 50px;
  padding: 10px 20px 10px 80px;
}

.plan-text02 h3.plan01{
  background:#094790 url(../images/cuisine/menu_tako.png) no-repeat left 20px center;
  background-size: 10%;
}

.plan-text02 h3.plan03{
  background:#094790 url(../images/cuisine/menu_fugu.png) no-repeat left 20px center;
  background-size: 15%;
}

.plan-text02 h3.plan02{
  background:#094790 url(../images/cuisine/menu_kodomo.png) no-repeat left 20px center;
  background-size: 7%;
}

.plan-text02 h3.plan05{
  background:#094790 url(../images/cuisine/menu_pajyama.png) no-repeat left 20px center;
  background-size: 13%;
}

.plan-text02 h3.plan06{
  background:#094790 url(../images/cuisine/menu_dog.png) no-repeat left 20px center;
  background-size: 13%;
}

.ot-price{
  margin-bottom: 25px;
}

.ot-price p{
  font-size: 1.8rem;
  color: #094790;;
  border-bottom: 1px solid;
}

.ot-price p span{
  font-size: 2.3rem;
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .page-cuisine .box .hdg-2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

@media screen and (max-width: 767.98px) {
  .page-cuisine .box .hdg-2 .price {
    display: block;
    text-align: right;
  }
}


/* ------------ コンセプトフロア ------------ */
.page-concept .room-list {
  padding-bottom: 140px;
}


/* ------------ ニュース ------------ */
.page-news {
  padding-bottom: 140px;
}

.page-news .news-list .figure {
  margin-bottom: 12px;
  border-radius: 20px;
  border: solid 5px #094790;
  height: 200px;
  overflow: hidden;
}

.page-news .news-list .figure img {
  object-fit: cover;
  height: 100%;
  width: 100%;
}

.page-news .news-list__ttl {
  color: #094790;
  margin-bottom: 10px;
}

.page-news .news-list__ttl .date {
  font-size: 1.4rem;
}

.page-news .news-list__ttl .cate {
  font-weight: bold;
  margin-left: 10px;
}

.page-news .news-list .txt {
  color: #171b21;
  font-size: 1.6rem;
}

.page-news.detail {
  padding-top: 0;
}

.page-news.detail::before {
  background: url("../images/bg_wave_lightblue.svg") repeat-x 0 0/auto 100%;
}

.page-news.detail .btn {
  margin: 50px auto 0;
  min-width: 250px;
}

.page-news .entry-head {
  background-color: #eff7fc;
  padding: 100px 0 120px;
}

.page-news .entry-head .date,
.page-news .entry-head .label {
  color: #094790;
  font-size: 1.4rem;
  font-weight: bold;
}

.page-news .entry-head .date {
  font-family: 'Poppins', sans-serif;
}

.page-news .entry-head .label {
  background-color: rgba(9, 71, 144, 0.1);
  border-radius: 15px;
  margin-left: 20px;
  padding: 5px 20px;
}

.page-news .entry-head .hdg-2 {
  margin-top: 15px;
}

.page-news .entry-body .eyecatch {
  -webkit-transform: translateY(-100px);
  transform: translateY(-100px);
  margin-bottom: -100px;
  border: solid 10px #094790;
  border-radius: 50px;
  overflow: hidden;
}

.page-news .entry-body .eyecatch img {
  border-radius: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.page-news .entry-body p,
.page-news .entry-body .l-column {
  margin-top: 40px;
}

.page-news .entry-body img {
  border-radius: 20px;
}

.entry-body {
  font-size: 1.6rem;
}

.entry-body h2 {
  font-size: clamp(2.6rem, 2.196vw, 3rem);
  font-weight: bold;
  line-height: 1.733;
  margin: 45px 0 30px;
}

.entry-body h3 {
  font-size: 2rem;
  font-weight: bold;
}

@media screen and (max-width: 767.98px) {
  .page-news {
    padding-bottom: 80px;
  }

  .page-news .entry-head {
    padding: 60px 0 100px;
  }

  .page-news .entry-body .eyecatch {
    border-radius: 25px;
    margin-bottom: -110px;
  }
}

.news-category .l-container {
  padding-top: 80px;
  padding-bottom: 150px;
}

@media screen and (max-width: 767.98px) {
  .news-category .l-container {
    padding-top: 50px;
    padding-bottom: 80px;
  }
}


/* ------------ ページネーション ------------ */
.pagenation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 80px;
}

.pagenation .page-numbers {
  background-color: #eff7fc;
  border-radius: 50%;
  color: #094790;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: 'Poppins', sans-serif;
  font-size: 2.6rem;
  font-weight: bold;
  width: 5.124vw;
  height: 5.124vw;
  min-width: 50px;
  min-height: 50px;
}

.pagenation .page-numbers.current,
.pagenation .page-numbers:hover {
  background-color: #094790;
  color: #fff;
  opacity: 1;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}


/* ------------ Fancybox ------------ */
.fancybox__track .figure {
  text-align: center;
}

.fancybox__content {
  border-radius: 20px;
}

@media screen and (min-width: 768px) {
  .fancybox__track .figure img {
    max-width: 340px;
    height: auto;
  }
}

@media screen and (max-width: 767.98px) {
  .fancybox__container {
    z-index: 10000 !important;
  }
  
  .fancybox__content {
    padding: 20px;
  }
}


/* ------------ 観光案内 ------------ */
.page-tourist .card .detail .txt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.6;
  max-height: calc(1.6em * 3);
}

@media screen and (max-width: 767.98px) {
  .page-tourist .hdg {
    font-size: 4rem;
  }

.page-tourist .card.order li{
  width: 45%;
}

  .page-tourist .card.order .figure img{
    height: 210px;
  }
}


/* ------------ 館内案内 ------------ */

.slick-next:before, .slick-prev:before{
  color: #1b5094;
  opacity: 1;
}

.photo-slide > div,.photo-slide img{
  border-radius: 20px;
}

.photo-slide > div p{
  text-align: center;
  margin-top: 15px;
  font-size: 2rem;
}

.facilities02{
  background-color: #eff7fc;
  padding: 80px 0;
}

.facilities02::before {
    background: url(../images/bg_wave_lightblue.svg) repeat-x 0 0 / auto 100%;
}

.facilities02 h3{
  font-size: 3rem;
  color: #fff;
  background-color: #1b5094;
  text-align: center;
  border-radius: 35px;
  padding: 10px 0;
  margin-bottom: 20px;
}

.facilities02 .cont-inner > p{
  text-align: center;
  font-size: 2rem;
  margin-bottom: 20px;
}

.facilities02 ul{
  display: flex;
  justify-content: space-between;
}

.facilities02 ul li{
  width: 48%;
}

.facilities02 .cont-inner > ul{
  display: block;
  margin-top: 25px;
}

.facilities03{
  margin-bottom: 110px;
}

.facilities03 h3{
  font-size: 3rem;
  text-align: center;
  margin-bottom: 15px;
}

.b_box{
  border: 10px solid #1b5094;
  padding: 50px;
  border-radius: 50px;
}

.box_in{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.box_in ul li,.box_in02 ul li{
  list-style: disc;
  text-indent: -5px;
  font-size: 1.6rem;
  margin-left: 30px;
  margin-bottom: 20px;
}

.box_in ul li::marker,.box_in02 ul li::marker {
    color: #1b5094;
}

.list01{
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 3px dotted #bacadf;
}

.list01 li,.list02 li{
  list-style: disc;
  margin-left: 30px;
}

.b_box h5{
  font-size: 2rem;
}

.box_in02{
  margin-top: 25px;
}

.box_in02 h4{
  font-size: 2.3rem;
  border-top: 2px solid;
  border-bottom: 2px solid;
  padding: 5px 0;
  margin-bottom: 10px;
}

.box_in02 p{
  background-color: #eff7fc;
  padding: 10px 30px;
  border-radius: 20px;
  margin-top: 15px;
}

.facilities04{
  background-color: #eff7fc;
  padding: 80px 0;
}

.facilities04::before {
    background: url(../images/bg_wave_lightblue.svg) repeat-x 0 0 / auto 100%;
}

.facilities04 h4{
  text-align: center;
  margin-bottom: 30px;
}

.facilities04 .b_box02 p{
  font-size: 2rem;
  margin: 35px 0 10px;
}

@media screen and (max-width: 767.98px) {
  .facilities01{
    margin-bottom: 80px;
  }
  .facilities01 .intro{
    padding: 0 15px;
  }
  .facilities02 ul li{
    width: 100%;
  }
  .box_in{
    display: block;
  }
  .b_box{
    border: 5px solid #1b5094;
    padding: 20px;
    border-radius: 30px;
  }
  .box_in > div{
    margin-bottom: 20px;
  }
  .box_in02 h4{
    font-size: 2rem;
  }
  .facilities04 h3{
   font-size: 2rem;
  }
  .facilities04 .cont-inner{
    padding: 0 35px;
  }
}

/* ------------ 島トゥク・レンタサイクル ------------ */

.tuktuk01 h3{
  text-align: center;
  font-size: 2.8rem;
  font-weight: bold;
  margin-bottom: 30px;
}

.bl-box{
  border: 5px solid #1b5094;
  padding: 40px;
  border-radius: 50px;
  margin-bottom: 60px;
}

.tuktuk01 .bl-box{
  text-align: center;
}

.tuktuk01 .bl-box .price{
  font-size: 1.8rem;
  font-weight: bold;
}

.tuktuk01 .bl-box .price span{
  font-size: 3rem;
  color: #1b5094;
}

.tuktuk01 .photo-slide{
  margin-bottom: 100px;
}

.tel-yoyaku{
  display: flex;
  justify-content:center;
  align-items:center;
}

.tel-yoyaku{
  background-color: #1b5094;
  color: #fff;
  padding: 5px;
  border-radius: 50px;
  margin: 20px 0;
}

.tel-yoyaku p{
  font-size: 2rem;
}

.tel-yoyaku a{
  color: #fff;
}

.tel-yoyaku p.tel{
  font-size: 2.5rem;
  font-weight: bold;
  margin-left: 15px;
}

.tel-yoyaku p.tex{
  padding-right: 15px;
  border-right: 2px solid #fff;
}

.yoyaku span{
  color: red;
  border-bottom: 1px solid;
  font-size: 2rem;
}

.tuktuk02{
  background-color: #eff7fc;
  padding: 80px 0 150px;
}

.tuktuk02 h3{
  text-align: center;
  font-size: 2.8rem;
  color: #1b5094;
  font-weight: bold;
  margin-bottom: 30px;
}

.tuktuk02 h4{
  text-align: center;
}

.tuktuk02::before {
    background: url(../images/bg_wave_lightblue.svg) repeat-x 0 0 / auto 100%;
}

.tuktuk02 .bl-box .price{
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
}

.tuktuk02 .bl-box .price span{
  font-size: 3rem;
  color: #1b5094;
}

.bl-box .time{
  margin: 20px 0;
}

.tuktuk02 .bl-box > img{
  margin: 20px 0;
}

.plbox{
  display: flex;
  justify-content: space-between;
}

.plbox img{
  width: 45%;
}

.pri li{
  font-size: 1.8rem;
  font-weight: bold;
}

.pri li span{
  color: #1b5094;
}

.pri li strong{
  color: #1b5094;
  font-size: 2.5rem;
  font-weight: bold;
  margin-left: 5px;
}

.bl-box br{
  display: none;
}

@media screen and (max-width: 767.98px) {
  .tuktuk01 h4,.tuktuk02 h4{
    margin-bottom: 25px;
    text-align: center;
  }
    .tuktuk01 .intro{
      padding-bottom: 0;
    }
    .tuktuk01 .lead{
      font-size: 2.3rem !important;
    }
    .tuktuk01 .intro h3.lead img {
      width: 13%;
    }
  .tel-yoyaku{
    display: block;
    text-align: center;
    padding: 5px 20px;
  }
  .tel-yoyaku p.tex{
    border-right: none;
        border-bottom: 2px solid #fff;
  }
  .tel-yoyaku p.tel{
    margin-left: 0;
    font-size: 2rem;
  }
  .tel-yoyaku p.tex{
    padding-right: 0;
    font-size: 2.3rem;
  }
  .tuktuk01 {
    padding: 50px 0px 100px;
  }
  .plbox{
    display: block;
  }
  .pri li{
    margin-bottom: 20px;
  }
  .tuktuk01 .bl-box,.tuktuk02 .bl-box{
    padding: 40px 10px;
  }
  .plbox img{
    width: 100%;
  }
  .bl-box br{
    display: block;
  }
  .tuktuk02{
    padding: 80px 0;
  }
}

/* ------------ わんちゃんプラン ------------ */
#dog01 .intro__figure > p{
  font-size: 2.3rem;
  margin-bottom: 15px;
}

#dog01 .intro__figure > img{
  margin-bottom: 30px;
}

#dog01 .intro__figure .slick-dotted.slick-slider{
  margin:50px 0 70px;
}

#dog01 .intro__figure > ul li{
  list-style: disc;
  margin: 0 0 15px 30px;
}

#dog01 h3{
  text-align: center;
  margin-bottom: 50px;
}

#dog01 h3 img{
  width: 60%;
  margin: auto;
}

#dog02 ul li{
  width: 100%;
  text-align: center;
  margin-bottom: 10px;
  font-size: 2rem;
}

.dogship img{
  width: 35%;
}

#dog02 .cont-inner p,#dog02 .cont-inner ul li{
  text-align: left;
}


#dog02 h4{
  text-align: center;
  margin-bottom: 50px;
}

#dog02 h4 img{
  width: 60%;
  margin: auto;
}

.re_btn {
    background-color: #be4b89;
    color: #fff;
    text-align: center;
    padding: 15px 40px;
    border-radius: 30px;
    display: inline-block;
}

@media screen and (max-width: 767.98px) {
  #dog01 h3 img{
    width: 100%;
    margin: auto;
  }
  .dogship img{
    width: 100%;
    margin-bottom: 15px;
  }
  #dog02 .cont-inner p,#dog02 .cont-inner ul li{
    font-size: 1.5rem;
  }
  #dog02 h4 img {
    width: 90%;
    margin: auto;
}
.facilities03 h3{
      font-size: 2rem;
}
}

