@charset "utf-8";
/*
Theme Name: arkhe_child
Template: arkhe
Author:Lino
Description: これは親テーマのカスタマイズ用子テーマです。このサイトのオリジナルデザイン用です。
Version:1.0.0
Tags:custom, child theme
*/
@font-face {
    font-family: 'Katonaii Ultralight';
    src: url('lib/font/KatonaII-UltraLight.woff2') format('woff2'),
         url('lib/font/KatonaII-UltraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
body {
  font-family: "Noto Sans JP", sans-serif;
  letter-spacing: 0.08em;
}
a {
  text-decoration: none;
  color: #4c7bb5;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
}
.l-header__searchBtn {
  display: none !important;
}
@media not all and (min-width: 1000px) {
  .l-content {
    overflow-y: hidden;
  }
}
.loading {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 1000;
  background-color:#13a7e9;
  display: flex;
  justify-content: center;
  animation: fadeOut 1.5s 2.5s forwards;
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    visibility: hidden;
  }
}
.loading__logo {
  position: absolute;
  top: 42%;
  opacity: 0;
  animation: logo_fade 1.5s 0.5s forwards;
  width: 200px;
  transform: translateY(-30px);
 color: #FFFFFF;
    font-size: 3rem;
    text-align: center;
    line-height: 1.2;
}
.loading__logo span{font-size: 0.9rem;}
@keyframes logo_fade {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  50% {
    opacity: 1;
    transform: translateY(-30px);
  }
  100% {
    opacity: 0;
  }
}

.color1 {
  color: #AA8743 !important;
}
.with100vw {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.with100vw .wp-block-group__inner-container {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 100vw !important;
}
.width1200 {
  max-width: 1200px !important;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 1000px) {
  .pc-max-width-600px {
    width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  .pc-max-width-800px {
    width: 800px;
    margin-left: auto;
    margin-right: auto;
  }
}
.textR {
  text-align: right;
}
.textC {
  text-align: center;
}
.po-R {
  position: relative;
}
.imgBoderR15 img {
  border-radius: 15px;
}
.font-jp {
  font-family: 'Noto Serif JP', serif;
}
.font-en {
  /*font-family: "Jost";*/
  font-family: 'Katonaii Ultralight', sans-serif;
}
.firstl:first-letter {
  color: #AA8743;
}
.fontW400 {
  font-weight: 400;
}
.fontW500 {
  font-weight: 500;
}
.mt30 {
  margin-top: 32px !important;
}
.mtv4 {
  margin-top: 4vh !important;
}
.mtv5 {
  margin-top: 5vh !important;
}
.mtv6 {
  margin-top: 6vh !important;
}
.mbv4 {
  margin-bottom: 4vh !important;
}
.mbv5 {
  margin-bottom: 5vh !important;
}
.mbv6 {
  margin-bottom: 6vh !important;
}
.mbv11 {
  margin-bottom: 11vh !important;
}
.mb0 {
  margin-bottom: 0px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}
.mb30 {
  margin-bottom: 30px !important;
}
.mauto {
  margin-left: auto;
  margin-right: auto;
}
.gap0 {
  gap: 0 !important;
}
.gap1 {
  gap: 1rem !important;
}
.padding0{padding: 0!important;}
.padding0 .wp-block-group__inner-container{padding: 0!important;}
@media screen and (min-width: 1000px) {
  .mb-pc-v4 {
    margin-bottom: 4vh;
  }
}
@media screen and (max-width: 767px) {
  .reverse {
    flex-direction: column-reverse !important;
  }
}
.fade-in {
  opacity: 0;
  visibility: hidden;
  transition: opacity 2s, transform 2s;
}
.fade-in.show {
  opacity: 1;
  visibility: visible;
}
.fade-in.BtoT {
  transform: translateY(40px);
}
.fade-in.BtoT.show {
  transform: translateY(0px);
}
.fade-in.TtoB {
  transform: translateY(-40px);
}
.fade-in.TtoB.show {
  transform: translateY(0px);
}
.fade-in.RtoL {
  transform: translateX(40px);
}
.fade-in.RtoL.show {
  transform: translateY(0px);
}
.fade-in.LtoR {
  transform: translateX(-40px);
}
.fade-in.LtoR.show {
  transform: translateY(0px);
}
.scale-up {
  opacity: 0;
  transform: scale(0.5);
  transition: opacity 1s ease-out, transform 1s ease-out;
}
.scale-up.show {
  opacity: 1;
  transform: scale(1);
}
.marker {
  background: linear-gradient(transparent 50%, rgb(235 246 253) 50%);
  display: inline;
  background-repeat: no-repeat;
  background-size: 0% 100%;
  transition: background-size 1.5s;
}
.marker.show {
  background-size: 100% 100%;
}
/*--media ---------------------------*/
@media (max-width:768px) {
  .pc {
    display: none !important;
  }
  .pcbr br {
    display: none !important;
  }
  .sp-mt-0 {
    margin-bottom: 0px !important;
  }
  .sp-mb-0 {
    margin-bottom: 0px !important;
  }
  .sp-font-25 {
    font-size: 2.5rem !important;
  }
  .sp-gap0 {
    gap: 0 !important;
  }
 .text-sp-left{text-align: left!important;}
}
@media (min-width: 769px) {
  .sp {
    display: none !important;
  }
  .spbr br {
    display: none !important;
  }
  .pc-mb-0 {
    margin-bottom: 0px !important
  }
  .pc-mt-50 {
    margin-top: 50px !important;
  }
}
.border0 {
  border: 0 !important;
}
.borderB2 a {
  border-bottom: 2px solid;
}
.titlenami {
  width: 315px;
  margin-top: 0 !important;
}
.wp-social-link {
  background-color: #5685c0 !important;
}
.nowrap {
  white-space: nowrap
}
.is-content-justification-center {
  justify-content: center;
}
.is-content-justification-right {
  justify-content: right;
}
/*--header----------------*/
.l-header {
  padding: 0.2rem 0;
}
.l-header__body {
  padding-left: 2vw;
  padding-right: 2vw;
}
/* spロゴを左 */
@media (max-width: 999px) {
  .l-header__center {
    grid-area: left;
    padding: 8px 0;
    width: 200px;
  }
}
.c-gnav {
  font-size: 1rem;
}
.c-gnav__li > .c-gnav__a {
  padding: 10px 20px;
}
.c-gnav .__mainText {font-size: 0.9rem;font-weight: bold;}
.c-gnav .__subText {
  font-weight: bold;
  font-size: 12px;
  opacity: 1;
}
.c-gnav .sub-menu {
  background: #0085c1;
  border-radius: 15px;
  text-align: center;
}
.c-gnav__depth1{min-width:300px; }
.c-gnav .sub-menu .__mainText {
  font-size: 1em;
}
.c-gnav__depth1:before {
  background-color: #0185bf;
}
.gnav-contact a {
  border: 4px double #ac9871;
  color: #796847 !important;
  height: 50px !important;
  line-height: 30px;
  padding: 0 15px !important;
  margin-left: 15px;
  margin-right: 20px;
  font-size: 1.1em;
  top: 22px;
}
.gnav-contact a:hover {
  color: #333 !important;
  background: rgb(217 202 172 / 18%) !important;
}
.header-text {
  font-size: 0.8em;
  letter-spacing: 0.1rem;
}
.header-tel {
  color: #976b1a;
  font-size: 1.4em;
}
.header-tel .icon {
  width: 25px;
  margin-right: 5px;
}
.l-header__drawerBtn{
    background: #e0edf3;
    width: 60px;
    height: 60px;
    border-radius: 50px;
    left: -20px;
}
@media (min-width:1000px) {
.l-header__drawerBtn{
    left: 0;
}
}
/*---sp menu---*/
.p-drawer {
    background-color: rgb(14 165 233);
    width: 90%;
    left: 10%;
}
@media (min-width:1000px) {
    .p-drawer {
    background-color: rgb(14 165 233 / 98%);
}
}
.c-drawerNav {border-top: 1px solid rgb(255 255 255 / 70%);border-bottom:1px solid rgb(255 255 255 / 70%);}
.c-drawerNav .menu-item{border-bottom:1px solid rgb(255 255 255 / 70%);}
.c-drawerNav .menu-item:last-child {border-bottom: none;}
.p-drawer::before{
    content: "";
    position: absolute;
    display: block;
    left: 5%;
    top: 30px;
    width: 60px;
    height: 40px;
    z-index: -1;
    background-image: url(/wp-content/uploads/img/nami-white.svg);
    background-repeat: no-repeat;
    background-size: 60px auto;
    animation: nami-fv1 4s ease-in-out infinite;
}
.p-drawer::after{
    content: "";
    position: absolute;
    display: block;
    right: 10%;
    bottom: 50px;
    width: 80px;
    height: 40px;
    z-index: -1;
    background-image: url(/wp-content/uploads/img/nami-white.svg);
    background-repeat: no-repeat;
    background-size: 80px auto;
    animation: nami-fv1 4s ease-in-out infinite;
}
@media (min-width:1000px) {
    .p-drawer::before{
    left: 10%;
    top: 100px;
    width: 80px;
    background-size: 80px auto;
}
    .p-drawer::after{
    right: 10%;
    bottom: 200px;
}
}
.c-iconBtn__icon .__close{color: #4180ad;}
.d-menu-link a {
  color: #ffffff;
}
.d-menu-sns .wp-social-link {
  background: none !important;
}
.f-d-contact{box-shadow: 1px 2px;}
.f-d-tel a{box-shadow: 4px 4px 0 #43c3df;}
.f-d-line a{box-shadow: 4px 4px 0 #9de69d;}

/*--Toppage----------------*/
.c-postContent > .top-fv:first-child {
    margin-top: 2rem !important;
}
@media screen and (min-width: 768px) {
.top-fv-text{flex-basis: 10%!important;}
.top-fv-img{flex-basis: 90%!important;}
}
.top-fv-img{border-radius: 10px;overflow: hidden;}
.top-fv-img img {
  width: 100%;
  height: 65vh;
  object-fit: cover;
  object-position: center;
}
@media screen and (max-width: 768px) {
  .top-fv-img img {
    width: 100%;
    height: 50vh;
    object-fit: cover;
    object-position: center;
    aspect-ratio: 9 / 16;
  }
}
.top-fv-text p{
    writing-mode: vertical-rl;
    margin: auto;
    font-size: 1.2rem;
    position: relative;
    left: 0;
    background: rgb(255 255 255 / 95%);
    top: 0px;
    padding: 10px 0px;
    z-index: 2;
    color: #215879;
    letter-spacing: 0.2rem;
}

@keyframes nami-fv1 {
    0% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(10px);
    }
    100% {
        transform: translateY(0)/* rotate(9deg)*/;
    }
}

@media screen and (min-width: 1000px) {
.top-fv-text p {
    font-size: 1.5rem;
    left: 0px;
    letter-spacing: 0.4rem;
}
}

/* --scrolldown-- */
.top-fv-text{position:relative;}
.scroll {
  position: absolute;
  left: 50%;
  bottom: 7rem;
  writing-mode: vertical-rl;
}
@media screen and (min-width: 1000px) {
.scroll {bottom: 13rem;}
}
.scroll::before {
  animation: scroll 2s infinite;
  background-color: #8fb4cf;
  bottom: -115px;
  content: "";
  height: 100px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
  z-index: 2;
}
.scroll::after {
  background-color: #e5eaee;
  bottom: -115px;
  content: "";
  height: 100px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
 z-index: 1;
}
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
  .wave1 {
    position: absolute;
    bottom: -10px;
    width: 100%;
    height: 120px;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 100' preserveAspectRatio='none'><path d='M0,50 C200,0 400,100 600,50 C800,0 1000,100 1200,50 L1200,100 L0,100 Z' fill='white'/></svg>") repeat-x;
    background-size: 1200px 100%;
    animation: waveMove 15s linear infinite;
  }

  @keyframes waveMove {
    0%   { background-position-x: 0; }
    100% { background-position-x: -1200px; }
  }

  @media (min-width: 1000px) {
    .wave1 {
     width: 100vw;
      background-size: 2000px 100%;
      animation: waveMovePc 15s linear infinite;
    }
  }

    @keyframes waveMovePc {
      0%   { background-position-x: 0; }
      100% { background-position-x: -2000px; }
    }

.item1 {
  position: absolute;
  bottom: -20px;
  right: -20px;
  width: 100px;
  height: auto;
  animation: item1 10s linear infinite;
}
@media (min-width: 1000px) {
.item1 {
  right: -20px;
  width: 200px;
}
}

@keyframes item1 {
  0% {
    transform: translateY(0) rotate(0deg);
  }
  25% {
    transform: translateY(5px) rotate(5deg);
  }
  50% {
    transform: translateY(10px) rotate(9deg);
  }
  75% {
    transform: translateY(5px) rotate(5deg);
  }
  100% {
    transform: translateY(0) rotate(0deg);
  }
}

.circle-link {
      width: 100px;
      height: 100px;
      border-radius: 50%;
      background: #0ea5e9;
      color: #ffffff;
      text-decoration: none;
      box-shadow: 0 12px 30px rgba(0,0,0,.15);
      display: flex;
      align-items: center; 
      justify-content: center;
      text-align: center;
      transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
      outline: none;
      font-size: 0.7rem;
      position: absolute;
      bottom: 0rem;
      right: 1rem;
    }
@media (min-width: 1000px) {
    .circle-link {
      width: 110px;
      height: 110px;
      bottom: 2rem;
      left: auto;
      right: 5rem;
    }
}
    .circle-link:hover {
      background: #0284c7;
      transform: translateY(-2px);
      box-shadow: 0 16px 40px rgba(0,0,0,.18);
    }

    .circle-link:active {
      transform: translateY(0);
      box-shadow: 0 12px 30px rgba(0,0,0,.15);
    }

    .circle-link:focus-visible {
      box-shadow: 0 0 0 4px rgba(14,165,233,.25), 0 12px 30px rgba(0,0,0,.15);
    }

    .circle-link .label {
      line-height: 1.15;
      display: grid;
      gap: .2em;
      font-weight: 700;
      letter-spacing: .02em;
    }

.circle-link .badge {
  position: absolute;
  bottom: -10px;
  left: 15px;
  background: #ffeb3b;
  color: #000;
  font-size: 0.65rem;
  font-weight: bold;
  padding: 4px 6px;
  border-radius: 15px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
  white-space: nowrap;
}
@media (min-width: 1000px) {
.circle-link .badge {
  padding: 4px 12px;
}
}

.t-About h2, .t-plan h2{font-size: 2.8rem;}
.t-About{position: relative;}
.t-About .text{
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 2rem;
}
.t-About .about-t{
    color: #ffffff;
    font-size: 1rem;
    writing-mode: vertical-rl;
    background: #396a87;
    letter-spacing: 0.5rem;
    padding: 1rem 0;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: 0 10px 10px;
}

@media (max-width: 768px) {
    .scrollable {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        gap: 16px;
        padding-bottom: 8px;
    }

    .scrollable .wp-block-column {
        flex: 0 0 auto;
        min-width: 200px;
    }
}
.point-item{position: relative;}
.top-point{padding-top: 2.3rem;}
.top-point h3{
    font-size: 1.1rem;
    background-image: linear-gradient(to right, #9E9E9E 1px, transparent 1px);
    background-size: 10px 1px;
    background-repeat: repeat-x;
    background-position: left bottom;
    padding-bottom: 0.8rem;
}
.top-point p{font-size: 0.9rem;}
.point-s{
    position: absolute;
    top: -2.3rem;
    margin: 0 !important;
    background: #0ea5e9;
    color: #FFF;
    font-size: 0.75rem !important;
    padding: 0 0.2rem;
    z-index: 2;
    border-radius: 0 5px;
}
.t-About .item-ishigaki {
    content: "";
    position: absolute;
    display: block;
    left: 0;
    top: -35px;
    width: 200px;
    height: 400px;
    z-index: -1;
    background-image: url(/wp-content/uploads/img/ishigaki.svg);
    background-repeat: no-repeat;
    background-size: 200px auto;
    animation: nami-fv1 4s ease-in-out infinite;
}
@media (min-width: 1000px) {
.t-About .item-ishigaki {
    left: 10%;
    top: 0rem;
    width: 300px;
    height: 400px;
    z-index: -1;
    background-size: 300px auto;
}
}

@media (min-width: 1921px) {
.t-About .item-ishigaki {
    left: 15%;
    top: 0rem;
    width: 400px;
    height: 500px;
    z-index: -1;
    background-size: 400px auto;
}
}

.t-About .item-nami {
    content: "";
    position: absolute;
    display: block;
    right: 10%;
    top: 370px;
    width: 80px;
    height: 40px;
    z-index: -1;
    background-image: url(/wp-content/uploads/img/nami1.svg);
    background-repeat: no-repeat;
    background-size: 80px auto;
    animation: nami-fv1 4s ease-in-out infinite;
}
@media (min-width: 768px) {
.t-About .item-nami {
    top: 0px;
    width: 80px;
    height: 45px;
    background-size: 80px auto;
}
}
@media (min-width: 1000px) {
.t-About .item-nami {
    right: 18%;
    top: 0px;
    width: 125px;
    height: 75px;
    background-size: 125px auto;
}
}

.loop-item{position: relative;}
/*ループ画像*/
.loopSlide {
  display: flex;
  width: 200vw;
   overflow: hidden;
left: calc(50% - 50vw + var(--ark-scrollbar_width) / 2);
    position: relative;
}
@media (min-width: 1000px) {
.loopSlide {
  width: 100vw;
}
}
.loopSlide img {
  width: auto;
  height: 100%;
}
.loopSlide img:first-child {
  animation: slide1 60s -30s linear infinite;
}
.loopSlide img:last-child {
  animation: slide2 60s linear infinite;
}
@keyframes slide1 {
  0% {
    transform: translateX(100%);
  }
  to {
    transform: translateX(-100%);
  }
}
@keyframes slide2 {
  0% {
    transform: translateX(0);
  }
  to {
    transform: translateX(-200%);
  }
}


/*--top-plan--*/
@media (min-width: 1000px){ 
    .t-plan{padding-top: 6rem!important;padding-bottom: 6rem!important;}
}
.plan-item{
    max-width: 94%;
    border-radius: 10px;
    border: 3px solid #b6dbf3;
    box-shadow: 6px 6px #f7e5ab;
    overflow: visible;
    padding: 1.5rem 1.7rem;
}
@media (max-width: 599px){ 
.plan-item-inner{margin: 0 1rem 0 0.8rem;}
}
@media (min-width: 600px) and (max-width: 1000px) {
.plan-item-inner{margin: auto; max-width: 400px;}
}
.plan-item img{border-radius: 5px;position: relative;}
.plan-item h3{
        font-size: 3rem !important;
    line-height: 1;
    text-shadow: 3px 2px #00BCD4;
    font-weight: bold;
    letter-spacing: 0.2rem;
}
.plan-item p mark{
    background-color: rgb(255 255 255 / 75%)!important;
    border-radius: 10px;
    padding: 0 20px;}
.plan-btn{
    position: absolute!important;
    right: -3.5rem;
}
.plan-btn a{
    padding: 10px;
    width: 90px;
    height: 90px;
    border-radius: 50px;
    font-size: 0.85rem;
    overflow-wrap: anywhere;
    background: #0ea5e9!important;
}
.nami-sec { 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    Overflow: Hidden; 
    Line-height: 0; 
    transform: rotate(180deg); 
} 

.nami-sec svg { 
    position: relative; 
    display: block; 
    width: calc(115% + 1.3px); 
    height: 35px; 
} 

.nami-sec .shape-fill { 
    fill: #FFFFFF; 
} 

@media (max-width: 767px) { 
    .nami-sec svg { 
        width: calc(137% + 1.3px); 
        height: 50px; 
    } 
}

.nami-sec-bottom { 
    position: absolute; 
    bottom: 0; 
    left: 0; 
    width: 100%; 
    Overflow: Hidden; 
    Line-height: 0; 
} 

.nami-sec-bottom svg { 
    position: relative; 
    display: block; 
    width: calc(115% + 1.3px); 
    height: 35px; 
} 

.nami-sec-bottom .shape-fill { 
    fill: #FFFFFF; 
} 

@media (max-width: 767px) { 
    .nami-sec-bottom svg { 
        width: calc(137% + 1.3px); 
        height: 50px; 
    } 
}

.plan1-img {
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    left: -45px;
    bottom: -40px;
    width: 55px;
    height: 70px;
    background-image: url(/wp-content/uploads/img/plan1-img.svg);
    background-repeat: no-repeat;
    background-size: 50px auto;
    animation: nami-fv1 4s ease-in-out infinite;
}
@media (min-width: 1000px) { 
.plan1-img {
    left: -50px;
    bottom: -50px;
    width: 60px;
    height: 85px;
    background-size: 60px auto;
}
}

.plan2-img {
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    right: -50px;
    top: -50px;
    width: 70px;
    height: 65px;
    background-image: url(/wp-content/uploads/img/plan2-img.svg);
    background-repeat: no-repeat;
    background-size: 70px auto;
    animation: nami-fv1 4s 
ease-in-out infinite;
}
@media (min-width: 1000px) { 
.plan2-img {
    right: -50px;
    top: -50px;
    width: 70px;
    height: 65px;
    background-size: 70px auto;
}
}
.plan3-img {
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    right: -30px;
    top: -50px;
    width: 45px;
    height: 70px;
    background-image: url(/wp-content/uploads/img/plan3-img.svg);
    background-repeat: no-repeat;
    background-size: 45px auto;
    animation: nami-fv1 4s 
ease-in-out infinite;
}
@media (min-width: 1000px) { 
.plan3-img {
    right: -30px;
    top: -50px;
    width: 50px;
    height: 90px;
    background-size: 50px auto;
}
}
.vk_slider .swiper-button-next, .vk_slider .swiper-button-prev, .vk_post_list_slider .swiper-button-next, .vk_post_list_slider .swiper-button-prev{background: rgb(112 193 229 / 50%) !important;border-radius: 50px!important;color: #FFFFFF !important;box-shadow: 3px 3px #ffeb3b;}
.swiper-pagination.swiper-pagination-fraction:not(.swiper-pagination-bullets){bottom: 10px!important;background: rgb(112 193 229 / 55%) !important;color: #FFFFFF !important;}
.list_link .ark-block-buttons{justify-content: end;}
.list_link .ark-block-button__icon{box-shadow: 3px 3px #0ea5e9;}

.fish-container {}
.fish1 {
  position: absolute;
  top: 50px;
  right: 80px;
  width: 60px;
  height: auto;
  animation: moveFish 11s linear infinite;
}
.fish2 {
  position: absolute;
  bottom: 6.5rem;
  left: 80px;
  width: 65px;
  height: auto;
  animation: moveFish 15s linear infinite;
}
.fish3 {
  position: absolute;
  bottom: 60px;
  left: 0px;
  width: 60px;
  height: auto;
  animation: moveFish 12s linear infinite;
}

@media (min-width: 1000px) {
  .fish1 {
    width: 80px;
    right: 25%;
  }
  .fish2 {
    width: 70px;
    left: 120px;
    bottom: 9rem;
  }
  .fish3 {
    left: 10px;
    bottom: 80px;;
  }
}
@keyframes moveFish {
  0% {
    transform: translateX(0) translateY(0) scaleX(1);
  }
  10% {
    transform: translateX(40px) translateY(-10px) scaleX(1);
  }
  20% {
    transform: translateX(80px) translateY(10px) scaleX(1);
  }
  40% {
    transform: translateX(180px) translateY(-10px) scaleX(1);
  }
  45% {
    transform: translateX(200px) translateY(0) scaleX(1);
  }
  46% {
    transform: translateX(200px) translateY(0) scaleX(-1);
  }
  50% {
    transform: translateX(180px) translateY(10px) scaleX(-1);
  }
  70% {
    transform: translateX(80px) translateY(-10px) scaleX(-1);
  }
  90% {
    transform: translateX(40px) translateY(10px) scaleX(-1);
  }
  100% {
    transform: translateX(0) translateY(0) scaleX(-1);
  }
}

/*--foot-contact--*/
.contact{position: relative;}
.contact h2{position: relative; display: inline-block;}
.contact h2::after{
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    right: -100px;
    top: -20px;
    width: 60px;
    height: 40px;
    z-index: -1;
    background-image: url(/wp-content/uploads/img/contact-img4.svg);
    background-repeat: no-repeat;
    background-size: 50px auto;
    animation: nami-fv1 4s ease-in-out infinite;
}
.contact-btn-main{position: relative;}
.contact-btn-main a{box-shadow: 3px 3px #b8daed;}
.contact-btn-main a:hover{opacity: 1!important;background: #0c9edf!important;}
.contact-btn1 a{color: #1d71b8!important;box-shadow: 2px 3px #9adaff;}
.contact-btn2 a{color: #1d71b8!important;box-shadow: 2px 3px #f3cf5b;}
.contact-btn3 a{color: #3a913c !important;box-shadow: 2px 3px  #99d19b;}
@media (min-width: 768px) {
    .contact-btn .wp-block-button a{width: 400px;}
}
.contact-btn-main::before{
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    left: -42px;
    top: -60px;
    width: 80px;
    height: 80px;
    z-index: 1;
    background-image: url(/wp-content/uploads/img/contact-img1.svg);
    background-repeat: no-repeat;
    background-size: 80px auto;
    animation: nami-fv1 3s ease-in-out infinite;
}
.contact-btn-main::after{
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    right: 0px;
    top: -10px;
    width: 20px;
    height: 29px;
    z-index: 1;
    background-image: url(/wp-content/uploads/img/contact-img2.svg);
    background-repeat: no-repeat;
    background-size: 20px auto;
    animation: nami-fv1 6s ease-in-out infinite;
}
.contact::before{
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    right: 0px;
    top: -150px;
    width: 50px;
    height: 40px;
    z-index: 0;
    background-image: url(/wp-content/uploads/img/contact-img3.svg);
    background-repeat: no-repeat;
    background-size: 50px auto;
    animation: nami-fv1 5s ease-in-out infinite;
    
}
.contact::after{
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    left: 0px;
    bottom: -150px;
    width: 50px;
    height: 40px;
    z-index: 1;
    background-image: url(/wp-content/uploads/img/contact-img3.svg);
    background-repeat: no-repeat;
    background-size: 50px auto;
    animation: nami-fv1 5s ease-in-out infinite;
    
}
@media (min-width: 768px) {
    .contact::before{top: -130px;}
}


.wave2-item{height: 60px;margin: 0;}
.wave2 {
    position: relative;
    top: -60px;
    width: 100%;
    height: 120px;
   background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 100' preserveAspectRatio='none'><path d='M0,50 C200,0 400,100 600,50 C800,0 1000,100 1200,50 L1200,100 L0,100 Z' fill='%23f2f8fc'/></svg>") repeat-x;
    background-size: 1200px 100%;
    animation: waveMove 15s linear infinite;
    z-index: 0;
  }

  @keyframes waveMove {
    0%   { background-position-x: 0; }
    100% { background-position-x: -1200px; }
  }

  @media (min-width: 1000px) {
    .wave1 {
     width: 100vw;
      background-size: 2000px 100%;
      animation: waveMovePc 15s linear infinite;
    }
  }

    @keyframes waveMovePc {
      0%   { background-position-x: 0; }
      100% { background-position-x: -2000px; }
}


/*--top news post--*/
.top-news{padding-bottom: 1rem;background-color:#f2f8fc;}
.top-news h2{font-size: 2.8rem;}
.top-news-post-contents{background: #FFFFFF; border-radius: 20px; padding: 2rem;}
.top-news-post { 
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: scroll !important; 
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  gap: 0px!important;
  padding-bottom: 10px;
  scrollbar-width: thin;
  scrollbar-color: #4299e3 transparent;
  width: 100%;
  position: relative;
}
.top-news-post ul {margin-top: 0!important;}
.top-news-post li {
  flex: 0 0 220px !important;
  scroll-snap-align: start;
  position: relative;
  list-style: none;
  border-radius: 10px 0px;
  box-shadow: 3px 3px #e4f0f9;
  border: 1px solid #c8d7e3;
  padding: 10px;
  transition: transform 0.5s ease-in-out;
}
.top-news-post li img{ border-radius: 10px 0;}

@media (max-width: 768px) {
  .top-news-post li {
    flex: 0 0 70% !important;
    max-width: 220px;
  }
}

.top-news-post::-webkit-scrollbar {
  height: 8px;
}

.top-news-post::-webkit-scrollbar-thumb {
  background-color: #1d71b8;
  border-radius: 4px;
}

.top-news-post::-webkit-scrollbar-track {
  background-color: transparent;
}

@media screen and (max-width: 768px) {
  .top-news-post {
    -webkit-overflow-scrolling: auto !important; 
    overflow-x: scroll !important;
  }
}

.top-news-post .wp-block-latest-posts__featured-image{max-width: 94%;margin-bottom: 1rem;}
.top-news-post .wp-block-latest-posts__post-title{
    max-width: 94%;
    display: block;
    font-size: 0.9rem;
    text-decoration: none;
}
.top-news-post .wp-block-latest-posts__post-date{
    font-family: 'Katonaii Ultralight', sans-serif;
    writing-mode: vertical-rl;
    position: absolute;
    display: block;
    top: 10px;
    right: -10px;
    font-size: 1.5rem;
    letter-spacing: 0.2rem;
    color: #1d71b8;
    font-weight: bold;
}
@media (min-width: 600px) {
.wp-block-latest-posts.columns-5 li:nth-child(5n) {
        margin-right: 1.25em!important;
    }
}


/* 横スクロールをスマホのみ有効にする */
@media (max-width: 768px) {
    .scrollable {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        gap: 16px;
        padding-bottom: 8px;
    }

    .scrollable .wp-block-column {
        flex: 0 0 auto;
        min-width: 200px;
    }
}
@media (min-width: 769px) {
    .scrollable {
        display: flex;
        flex-wrap: wrap;
        overflow-x: visible;
        gap: 16px;
    }

    .scrollable .wp-block-column {
        flex: 1 1 0;
    }
}


/*--footer---------------------------*/
.l-footer{background: #f2f8fc;}
.footer-before-non-front .wave2{top:0;}
.footer-before-non-front .contact{background-color: #f2f8fc;padding-bottom: 100px;}
.footer-before-non-front .contact::before{top: -80px;right:10px;}
.footer-before-non-front .contact::after{bottom: 0;left:10px;}


@media (max-width: 768px) {
  .Fcontact-b1, .Fcontact-b2 {
    width: 80% !important;
  }
}
.Fcontact-b1 a {
  box-shadow: 0 4px 0 #43c3df;
}
.Fcontact-b2 a {
  box-shadow: 0 4px 0 #43c3df;
}
.Fcontact-b1 :hover, .Fcontact-b2 :hover {
  transform: translateY(4px);
  box-shadow: none;
  opacity: 1;
}
.l-footer__nav a {
  font-size: 0.9rem !important;
  margin-bottom: 0.2rem;
  color: #2968b7;
}
.l-footer__foot {
  margin-bottom: 3rem;
}

.wp-block-vk-blocks-icon .is-style-noline .vk_icon_border:not(.has-text-color) {
    color: #159fdd!important;
}
.F-payment{
    max-width: 600px;
    margin-left: 2.5rem;
    margin-right: 2.5rem;
    padding: 0 2rem;
}
.F-payment img{border: 1px solid #70c1e5;}

@media (min-width: 1000px) {
  .F-payment{
    margin: auto;
}
}

/*--pagetop-------------------------------*/
.c-fixBtn {
    background: #70c1e5;
    color: #ffffff;
    height: 50px;
    opacity: 1;
    width: 50px;
    border-radius: 0px 10px 10px;
    box-shadow: 3px 3px 0 #FFEB3B;
}
/*--スマホpagetop位置の調整--*/
@media only screen and (max-width:599px) {
  .p-fixBtnWrap {
    bottom: 8%;
  }
}
/*スマホのページ下部に固定メニュー*/
#sp-fixed-menu {
  position: fixed;
  width: 100%;
  bottom: 0px;
  opacity: 0.95;
  z-index: 50;
  font-weight: 500;
  color: #6e4d0d;
  padding: 5px 0px;
}
#sp-fixed-menu ul {
  display: flex;
  list-style: none;
  padding: 2px 0;
  margin: 0 auto;
  width: 100%;
  text-align: center;
}
#sp-fixed-menu li {
  justify-content: center;
  align-items: center;
  width: 30%;
  margin: 0;
  padding: 7px 15px;
  font-size: 14px;
  border-radius: 5px 0;
  background: #30ab30;
  box-shadow: 4px 4px 0 #9de69d;
  margin-right: 2px;
}
#sp-fixed-menu li:first-child {
  background: #0085c0;
  width: 25%;
  margin-left: 5px;
  margin-right: 2px;
  box-shadow: 4px 4px 0 #43c3df;
}
#sp-fixed-menu li:last-child {
  background: #ef8337;
  width: 45%;
  box-shadow: 4px 4px 0 #ffb590;
  margin-right: 5px;
}
#sp-fixed-menu img {
  width: 18px;
  margin-right: 5px;
}
#sp-fixed-menu li a {
  color: #fff;
  text-align: center;
  display: block;
  width: 100%;
  text-decoration: none;
  line-height: 30px;
  letter-spacing: 0.2rem;
  font-size: 0.9rem;
}
/*PC固定メニュー*/
#pc-fixed-menu {
  position: fixed;
  top: 180px;
  right: 0px;
  width: 45px;
  z-index: 50;
}
#pc-fixed-menu ul {
  position: absolute;
  display: block;
  margin: 0;
  padding: 0;
}
#pc-fixed-menu li {
  list-style: none;
  writing-mode: vertical-rl;
}
#pc-fixed-menu li a {
  display: block;
  margin-bottom: 1px;
  text-align: center;
  line-height: 100px;
  font-size: 16px;
  font-weight: 500;
  color: #ffffff;
  text-decoration: none;
  padding: 20px 10px 10px;
  letter-spacing: 0.5em;
}
#pc-fixed-menu li a:hover {}
#pc-fixed-menu img {
  width: 22px;
}
.b1 a{
  background-color:#0087c3 !important;
}
.b1 a:hover {
  background-color: #f48135 !important;
}
.b2 a {
  background-color: #30ab30 !important;
}
.b2 a:hover {
  background-color: #30ab30 !important;
}
#pc-fixed-menu li a span {
  line-height: 1.2em;
  display: block;
}
#pc-fixed-menu .web img {
  width: 20px;
}

/*----------固定ページ------page-template-default-----*/
.p-breadcrumb{color: #666666;}
.page .l-content__body::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  height: 30px;
  top: 30vh;
}
.p-topArea {
  min-height: 32vh;
}
.p-topArea.-noimg {
  background: #0085c2;
}
.p-topArea__body {
  color: #FFFFFF;
  position: relative;
  z-index: 3;
  width: 80%;
  border-radius: 2px;
}
.p-topArea__body h1 {
  font-size: 1.6rem;
  font-weight: 500;
  margin-top: -20px;
}
.page-id-27 .u-obf-cover{object-position: top;}
.title1 .ark-block-heading__main{font-size: 2.8rem;}
.title2{
    background-image: linear-gradient(to right, #9E9E9E 1px, transparent 1px);
    background-size: 10px 1px;
    background-repeat: repeat-x;
    background-position: left bottom;
    padding-bottom: 0.8rem;
}
.title3 {
    border-left: 1px solid;
    font-weight: 700;
    padding-left: .75em;
    font-size: 1rem;
}
.title4 {
  font-family: "Jost", sans-serif;
  text-transform: uppercase;
  border: 0.5px solid #4c7bb5;
  color: #4c7bb5;
  display: inline-block;
  padding: 0 0.5rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
  letter-spacing: 0.2rem;
  box-shadow: 2px 3px rgb(173 222 239 / 64%);
}

.wave3 {
    position: absolute;
    bottom: -20px;
    width: 100%;
    height: 80px;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 100' preserveAspectRatio='none'><path d='M0,50 C200,0 400,100 600,50 C800,0 1000,100 1200,50 L1200,100 L0,100 Z' fill='white'/></svg>") repeat-x;
    background-size: 1000px 100%;
    animation: waveMove3 10s linear infinite;
    z-index: 3;
  }

  @keyframes waveMove3 {
    0%   { background-position-x: 0; }
    100% { background-position-x: -1000px; }
  }

  @media (min-width: 1000px) {
    .wave3 {
     width: 100vw;
     background-size: 1600px 100%;
     animation: waveMove3Pc 10s linear infinite;
    }
  }

    @keyframes waveMove3Pc {
      0%   { background-position-x: 0; }
      100% { background-position-x: -1600px; }
    }

/*--plan一覧ページ--*/
.plan-nav-btn-top .plan-nav-btn a{background-color: #51a8cf!important; font-size: 0.9rem!important;}
.plan{position: relative;}
.plan-page .plan-item h3{
    font-size: 1.3rem !important;
    line-height: 1.4;
    text-shadow: 2px 2px #00BCD4;
    letter-spacing: 3px;
}
.plan-page .plan-item p mark{ font-size:0.85rem; padding:0 10px;}
.fs-s p mark{font-size: 0.8rem!important;}
.plan-page .plan-btn{bottom: -55px;}
.p-time{
position: absolute;
    display: block;
    width: 60px;
    height: 60px;
    margin: 0 !important;
    background: rgb(221 221 221 / 40%);
    color: #FFF;
    line-height: 60px;
    border-radius: 50px;
    top: -20px;
    left: -10px;
    font-size: 1.2rem !important;
}
.sale strong{color: #ff0045;}
@media (max-width: 999px) {
.plan-list-item:not(:last-child) {
  border-bottom: 1px dashed #dddddd;
  padding-bottom: 1.5rem;
}
}
@media (max-width: 1000px) {
  #plan-snorkel,
  #plan-star {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }

  #plan-s-s .wp-container-core-columns-is-layout-9d6595d7 {
    flex-direction: column !important;
  }
}
.plan-list-price .ark-block-column:nth-of-type(2) {
  margin-left: 5px;
  white-space: nowrap;
}


/*-plan-詳細ページ---*/
@media (max-width: 999px) {
.plan-title{font-size: 1.4rem;}
}
.tag-container {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
}
.tag-item {
  font-size: 0.8rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.3rem 0.44rem;
  border: 1px solid;
  margin-right: 0;
  margin-bottom: 0;
}
.tag-red{color: #ff0045;}
@media (min-width: 1000px) {
    .tag-item {
    font-size: 1rem;
    margin-right: 8px;
    }
    .plan-list-price .tag-item {
    font-size: 0.8rem;
    }
}
.recommend{
    box-shadow: 20px 20px #edf3f9;
}
.list-y{background: #f2fbff;padding-top: 0.5rem;padding-bottom: 0.5rem;padding-left: 50px!important;border-radius: 5px;}

@media screen and (min-width: 1000px) {
  .list-y{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1em;
    max-width: 750px;
    margin: auto;
    background: #f2fbff;
  }

  .list-y li {
    padding: 0 !important;
    margin: 0.2rem !important;
  }
}

.timeline-p-y .ark-block-timeline__item:before{border-color: #cce0f0;}

/*--timelinePC横*/
@media screen and (min-width: 1000px) {
  .timeline-p-y .ark-block-timeline {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding-left: 0;
    position: relative;
  }
  .timeline-p-y .ark-block-timeline::before {
    content: "";
    position: absolute;
    top: calc(var(--arkb-shape-size)/2);
    left: 0;
    right: 0;
    height: 2px;
    z-index: 0;
    background-color: #cce0f0;
  }
  .timeline-p-y .ark-block-timeline__item {
    flex: 1;
    padding: 0;
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    z-index: 1;
  }
  .timeline-p-y .ark-block-timeline__item:before {
    display: none;
  }
  .timeline-p-y .ark-block-timeline__head {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 0.5rem;
  }
  .timeline-p-y .ark-block-timeline__shape {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin-bottom: 0;
    z-index: 1;
    margin-top: -15px;
  }
  .timeline-p-y .ark-block-timeline__label {
    text-align: center;
    font-size: 0.85em;
    opacity: 0.8;
    margin-top: 30px;
  }
  .timeline-p-y .ark-block-timeline__title {
    text-align: center;
    margin-top: 0.5rem;
  }
  .timeline-p-y .ark-block-timeline__body {
    margin-top: 1rem;
    font-size: 0.9rem;
  }
}
.timeline-p-y .ark-block-timeline__body {
background: #FFF;
    padding: 1rem;
    box-shadow: 0 0 10px #53b4eb73;
    border-radius: 10px;
}

.list-style-none{padding: 0;}
.list-style-none li{list-style: none;}

.check-point{box-shadow: -40px -40px #f3fbff;}
.check-point li span:first-child{
    font-size: 0.7rem;
    background: none;
    color: #159fdd;
    padding: 0 0.5rem;
    display: inline-block;
    border: 1px solid;
}
.font-size-xl .ark-block-heading__main{font-size: 2.8rem;}

.plan-contents .wp-block-group__inner-container{background: #FFF; padding: 1.2rem;}
@media screen and (min-width: 1000px) {
  .plan-contents .wp-block-group__inner-container{padding: 2rem;}
}
/*--list(PCのみ横並び共通)*/
@media screen and (min-width: 1000px) {
  .list-side{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap:0.5rem;
  }
  .list-side li {
    padding: 0 !important;
    margin: 0.2rem !important;
  }
}

.date-time strong:first-of-type{border: 1px solid;padding: 0.2rem 1rem;font-weight: 400;margin-right: 1rem;}
.date-time li{margin-bottom: 0.5rem;}
.event-day strong:not(:first-of-type){
    background: #62b4d9;
    color: #FFF;
    font-weight: 400;
    border-radius: 50px;
    font-size: 0.8rem;
    width: 18px;
    height: 18px;
    display: inline-block;
    text-align: center;
    line-height: 18px;
    margin: 0;
}
@media (min-width: 1000px) {
    .event-day strong:not(:first-of-type){
    font-size: 0.9rem;
    width: 24px;
    height: 24px;
    line-height: 24px;
}
}
.price-contents .ark-block-columns__inner{row-gap:10px;}
.list-price-item{border: 1px solid;padding: 0.2rem !important;margin:0 0 0 10px;}
.list-price-item strong{
    border-right: 1px solid;
    padding: 0rem 1rem;
    font-weight: 400;
    margin-right: 1rem;
    display: inline-block;
}
.sale{display: block;text-align: center;font-size: 0.9rem;}
.price-title strong{background: #ffface;}

.time-schedule .arkb-tabList__button{line-height: 0.8;}
.time-schedule .arkb-tabList__button[aria-selected=true]{background-color: #62b4d9 !important;}
.time-schedule .arkb-tabList__button{background: #eff7fb!important;}
.time-schedule .arkb-tabBody{border: 1px solid #bcdce1;background: #FFFFFF;padding: 1rem 0.5rem;}
.time-schedule .ark-block-timeline__body{font-size: 0.85rem;}
.time-schedule .ark-block-timeline__item{padding-left: 1.5rem;}
.time-schedule .ark-block-timeline__item:before{border-left: 1px solid #b8d9dd;}
.time-schedule .ark-block-timeline__shape{background: #62b4d9;border: 0;height: 12px;left: -22px;width: 12px;}
.time-schedule .ark-block-timeline__label{opacity: 1;}
.time-schedule .ark-block-timeline__label strong:first-of-type{padding: 0 1rem;border: 1px solid;}
@media (max-width: 999px) {
.time-schedule .ark-block-timeline{padding-left: 0;}
}
@media (min-width:1000px) {
    .time-schedule .arkb-tabBody{padding: 2rem;}
}

.tab2 .arkb-tabList__button[aria-selected=true]{background: none!important;border-color: #62b4d9;color: #62b4d9;font-weight: bold;}
.tab2 .arkb-tabList__button{background: none!important;border: 1px solid #CCC;line-height: 0.4;}
.tab2 .arkb-tabBody{border: 0!important;padding: 1rem 0rem!important;}
@media (min-width:1000px) { .tab2 .arkb-tabBody{padding: 1rem;}}
.plan-contents-inner{border: 1px solid #CCC;}
.tableA span{padding: 0 0.5rem;margin-right: 10px;background: #62b4d9;color: #FFF;}
.option-table td:first-child {background-color: #fcfdfe;width: 240px;}
.plan-infomation table{border-right: 0;}
.plan-infomation th,.plan-infomation td{border-left: 0;}
.plan-infomation span{border: 0; padding: 0;}
.plan-infomation td:first-child strong{background: #62b4d9;color: #FFF;padding: 0 1rem;}


.plan-contents{position: relative;}
.item-nami-common {
    content: "";
    position: absolute;
    display: block;
    right: 10%;
    bottom: 30px;
    width: 80px;
    height: 40px;
    z-index: 100;
    background-image: url(/wp-content/uploads/img/nami1.svg);
    background-repeat: no-repeat;
    background-size: 80px auto;
    animation: nami-fv1 4s ease-in-out infinite;
    margin-top: 0!important;
}
@media (min-width: 768px) {
.item-nami-common {
    width: 80px;
    height: 45px;
    bottom: 0;
    background-size: 80px auto;
}
}
@media (min-width: 1000px) {
.item-nami-common {
    right: 18%;
    width: 125px;
    height: 75px;
    bottom: 0;
    background-size: 125px auto;
}
}
.item-nami-common2 {
    content: "";
    position: absolute;
    display: block;
    left: 10%;
    top: 30px;
    width: 80px;
    height: 40px;
    z-index: 100;
    background-image: url(/wp-content/uploads/img/nami1.svg);
    background-repeat: no-repeat;
    background-size: 80px auto;
    animation: nami-fv1 4s ease-in-out infinite;
    margin-top: 0!important;
}
@media (min-width: 768px) {
.item-nami-common2 {
    width: 80px;
    height: 45px;
    top: 0;
    background-size: 80px auto;
}
}
@media (min-width: 1000px) {
.item-nami-common2 {
    left: 18%;
    width: 125px;
    height: 75px;
    top: 0;
    background-size: 125px auto;
}
}
.check-point{position: relative;}
.check-point .fish2 {
  bottom: -40px!important;
    z-index: 1;
}
@media (min-width: 1000px) {
.check-point .fish2{
    left:-15%;
    bottom: -50px!important;
  }
}

.plan-star{
    content: "";
    position: absolute;
    display: block;
    margin-top: 0 !important;
    right: 50px;
    top: 20px;
    width: 45px;
    height: 70px;
    background-image: url(/wp-content/uploads/img/star.svg);
    background-repeat: no-repeat;
    background-size: 45px auto;
    animation: nami-fv1 4s 
ease-in-out infinite;
}
@media (min-width: 1000px) { 
.plan-star {
    top: 40px;
    width: 50px;
    height: 90px;
    background-size: 50px auto;
    left: calc(50% + 400px);
}
}

/*--reserve-form--*/
.reserve-form-flow{display: flex;padding-bottom: 5px;border-bottom: 1px dashed var(--ark-color--border, #c8c8c880);}
.reserve-form-flow .ark-block-step {
  display: flex;
  gap: 0px;
  flex-wrap: nowrap;
  justify-content: space-between;
  overflow-x: auto;
}
.reserve-form-flow .ark-block-step__item {
  flex: 1 0 auto;
  width: 80px;
  box-sizing: border-box;
  padding: 0 1rem;
}
@media (min-width: 1000px) {
 .reserve-form-flow .ark-block-step__item {
  padding: 1rem;
}  
}

.reserve-form-flow .ark-block-step__head{text-align: center;}
.reserve-form-flow .ark-block-step__title {
    font-size: 0.9rem;
    display: inline-flex;
    flex-direction: column;
    justify-content: center;
    min-height: 60px;
    margin: auto;
    align-items: center;
    line-height: 1.4;
}
.reserve-form-flow .ark-block-step__number{color:#337ab7;}
.reserve-form-flow .ark-block-step__number:after {
   content: "\\ " counter(step) " /";
}
.reserve-form-flow .ark-block-step__item{border-bottom: 0;background: #f4f9fb;padding-top: 1rem;}
.reserve-form-flow .ark-block-step__item:first-child {border-top: 0;}
.reserve-form-flow .ark-block-step__item:not(:first-child) {border-left: 1px dashed var(--ark-color--border, #c8c8c880);}


/*--form--*/
@media (max-width: 999px) {.smf-form--letter{font-size: 0.9rem;}}
.smf-form--letter .smf-item__label__text{
    background: #5cabcf;
    color: #FFF;
    padding: 0 1rem;
    display: inline-block;
    line-height: 1.8;
    border-radius: 8px;
}
.smf-form--letter .smf-item{
    margin-bottom: 10px;
    padding: 1rem 0.5rem;
    background: #f4f9fb;
}
.smf-form .smf-select-control__control{font-size: 0.9rem;}
.smf-form .smf-text-control__control{padding: 0.9rem 1rem;}
.diving-number{max-width: 30%;}
.agree{text-align: center;}
.required .smf-item__label__text strong{
    background: #d76868;
    font-size: 0.75rem;
    font-weight: 400;
    padding: 0 0.5rem;
    margin-left: 5px;
    border-radius: 50px;
}
.smf-form--letter .ark-block-accordion.is-style-box .ark-block-accordion__item{background: #FFFFFF;}
.smf-form--letter .ark-block-accordion .smf-placeholder{margin-top: 0;}
.smf-form--letter .ark-block-accordion p{background-image: linear-gradient(transparent 60%, rgb(227 241 250) 0);display: inline;padding: 0 0.2rem;}
.bg-no{background: none!important;}
.optional .smf-item__label__text strong{
    background: #438cad;
    font-size: 0.75rem;
    font-weight: 400;
    padding: 0 0.5rem;
    margin-left: 5px;
    border-radius: 50px;
}

[data-screen=back] .smf-progress-tracker__item--input .smf-progress-tracker__item__number, [data-screen=complete] .smf-progress-tracker__item--complete .smf-progress-tracker__item__number, [data-screen=confirm] .smf-progress-tracker__item--confirm .smf-progress-tracker__item__number, [data-screen=input] .smf-progress-tracker__item--input .smf-progress-tracker__item__number, [data-screen=invalid] .smf-progress-tracker__item--input .smf-progress-tracker__item__number {
  background: #5cabcf;
}
.smf-error-messages {
  color: #c16b6c;
}
.smf-item__label__text mark {
  padding: 0 5px;
}
.smf-action .smf-button-control__control {
  background: #70c1e5;
  border: 0px;
  padding-left: 4rem;
  padding-right: 4rem;
  margin-bottom: 0.5em;
  font-weight: 400;
  color: #FFFFFF;
  box-shadow: 3px 3px 0 #FFEB3B;
}
.smf-complete-content{
    max-width: 600px;
    margin: 2rem auto;
    padding: 1rem;
    background: #f4f9fb;
}
/*Reserve&Contact*/
.rc-btn{padding: 3rem 2.5rem;
    border: 1px solid #bad4e5;}
.rc-btn a{width: 260px!important;}
.rc-btn .is-style-outline a{
    color: #1e72b8!important;
    box-shadow: 3px 3px;
}

.snow-monkey-form .arkb-tabList__button[aria-selected=true] {
    background-color: #5cabcf !important;
}

/*--reCAPTCHA--*/
.grecaptcha-badge{
    bottom: 110px!important;
}

/*--staff--*/
.staff-content{border-top: 1px dotted #CCC!important;border-bottom: 1px dotted #CCC!important;}
.staff-img figure{max-width: 80%; margin: auto;}
@media (min-width: 1000px) {.staff-img figure{max-width: 100%; margin: auto;}
}
.staff-table td:first-child {background-color: #fcfdfe;width: 160px;}
.staff-table table{border-right: 0;}
.staff-table th,.staff-table td{border-left: 0;}
.staff-table span{border: 0; padding: 0;}
.staff-table td:first-child strong{background: #62b4d9;color: #FFF;padding: 0 1rem;font-weight: 400!important;}

/*--user-poricy--*/
.user-poricy .ark-block-dl__dt {
    border-left: 1px solid #0d8bc3;
    color: #006ea1;
}
.user-poricy{
    border: 1px solid #CCCCCC;
    padding: 3rem 1rem;
}
@media (min-width: 1000px){
    .user-poricy{
    padding: 4rem;
}
}



/*アーカイブ共通*/
.p-postList .p-postList__title {
  font-weight: 500;
}
/*記事ページ共通*/
.p-entry__title .c-pageTitle__main {
  font-weight: 500;
}
.c-bottomSection__title, .c-secTitle, .c-widget > .wp-block-group > .wp-block-group__inner-container > h2, .c-widget__title, h2.widgettitle {
  font-weight: 500;
}

.p-entry__head, .p-archive__title {
  position: relative;
  padding-bottom: 1rem;
}
.p-entry__head::after, .p-archive__title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 4px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #4c7bb5, #4c7bb5 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #4c7bb5, #4c7bb5 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.p-archive__title {
  text-align: center;
}
.p-archive__title h1, .p-entry__title h1 {
  color: #4c7bb5;
  font-family: 'Katonaii Ultralight', sans-serif;
  font-size: 2.8rem;
}
.p-entry__title h1 {font-size: 1.8rem;}
.p-archive__desc{ text-align: center;}
.post-tag ul {
  padding: 0;
}
.post-tag li {
  display: inline-block;
  color: #4c7bb9;
  padding: 0 1rem;
  font-size: 0.8rem;
  border: 1px solid #4c7bb9;
}
.c-pnNav {
  border-top: 0.5px dashed #e3f2f7;
  padding-top: 2rem;
}
.c-bottomSection__title {
  color: #4c7bb5;
  letter-spacing: 0.2rem;
  font-weight: normal;
  font-size: 1.8rem;
  text-align: center;
}
.p-postList__title {
  color: #4c7bb5;
}
/*カテゴリー一覧のカテゴリ名を写真右上に表示*/
.p-postList.-type-card {
  position: relative;
}
.p-postList.-type-card .p-postList__link:hover .p-postList__body {
  opacity: 1;
}
.p-postList.-type-card .p-postList__body, .p-postList.-type-card .p-postList__meta {
  position: static;
}
.p-postList.-type-card .p-postList__meta {
  letter-spacing: 0.05em;
}
.p-postList.-type-card .p-postList__category {
  position: absolute;
  top: 0;
  right: 0;
  color: #FFFFFF;
  background-color: #2196F3;
  margin: 0;
  padding: 0.25em 1em;
  opacity: 1;
  border-radius: 0px;
  text-transform: uppercase;
}
.p-postList.-type-card .p-postList__category svg {
  display: none; 
}

/*--newslist--*/
.p-postList.-type-simple {
  border-top: 0px;
}
.p-postList.-type-simple .p-postList__link {
  border-bottom: 1px solid #f4f9ff;
}
.p-postList.-type-simple .p-postList__link:hover {
  background-color: #fbfdff;
}
.c-postTimes__item {
  letter-spacing: 0.1rem;
}
.category-link {
  margin-top: 3rem;
}

.-related .p-postList__item {
  padding: 1rem !important;
  margin: 1rem !important;
  border-radius: 10px 0px;
  box-shadow: 3px 3px #e4f0f9;
  border: 1px solid #c8d7e3;
}
.p-postList__title {
  font-weight: nomal !important;
}
.p-entry__foot .c-postTerms__link {
  background: #f5fbfd;
}

@media (min-width: 1000px) {
.-related .p-postList__item {
  margin: 0.3rem !important;
}
    [data-sidebar=off] .p-postList.-type-card .p-postList__item {
        flex-basis: calc(33.3% - 0.8rem);
    }
}
