@charset "UTF-8";
.p-mna {
  --font-m: "M PLUS Rounded 1c", sans-serif;
  --font-sans: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  --c-blue: #35408E;
  --c-green: #A7CB7B;
  --c-div-blue: #354090;
}
.p-mna .w100 {
  max-width: 100%;
  height: auto;
}
.p-mna .w100p {
  width: 100%;
  height: auto;
}
.p-mna .wbr {
  display: inline-block;
}

html {
  scroll-behavior: smooth;
}

.p-mna {
  font-family: var(--font-sans);
}
.p-mna--marine {
  --key-c: var(--c-blue);
  padding-bottom: 141px;
  border-bottom: 10px solid var(--key-c);
}
.p-mna--nature {
  --key-c: var(--c-green);
  padding-bottom: 80px;
  border-bottom: 10px solid var(--key-c);
}

.l-container {
  width: 100%;
  padding: 0 20px;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .p-mna {
    padding-bottom: 120px;
  }
  .p-mna--marine {
    padding-bottom: 320px;
    border-bottom-width: 15px;
  }
  .p-mna--nature {
    padding-bottom: 200px;
    border-bottom-width: 15px;
  }

  .l-container {
    max-width: 1088px;
    padding: 0 32px;
  }
}
.l-top-atf {
  margin-bottom: 32px;
  border-bottom: 10px solid var(--key-c);
}

.c-top-kv {
  position: relative;
  max-width: 1280px;
  margin: 0 auto 24px;
}
.c-top-kv__orn {
  display: none;
}

.c-atf-nav {
  display: flex;
  justify-content: center;
  column-gap: 12px;
  padding: 0 20px;
}
.c-atf-nav__item {
  flex: 1 1 100%;
  max-width: 233px;
}
.c-atf-nav-anch {
  display: flex !important;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  row-gap: 2px;
  width: 100%;
  height: 48px;
  font-family: var(--font-m);
  line-height: 1;
  border: 7px solid #000;
  border-bottom: none;
  border-radius: 14px 14px 0 0;
  transition: background-color .2s;
}
.c-atf-nav-anch--marine {
  --this-color: var(--c-blue);
  border-color: var(--this-color);
}
.p-mna--marine .c-atf-nav-anch--marine {
  background-color: var(--this-color);
}
.c-atf-nav-anch--nature {
  --this-color: var(--c-green);
  border-color: var(--this-color);
}
.p-mna--nature .c-atf-nav-anch--nature {
  background-color: var(--this-color);
}
.c-atf-nav-anch__ja-lbl {
  color: var(--this-color);
  font-size: 1.8rem;
  transition: color .2s;
}
.p-mna--marine .c-atf-nav-anch--marine .c-atf-nav-anch__ja-lbl {
  color: #fff;
}
.p-mna--nature .c-atf-nav-anch--nature .c-atf-nav-anch__ja-lbl {
  color: #fff;
}
.c-atf-nav-anch__en-lbl {
  color: var(--this-color);
  font-size: 1.3rem;
  transition: color .2s;
}
.p-mna--marine .c-atf-nav-anch--marine .c-atf-nav-anch__en-lbl {
  color: #fff;
}
.p-mna--nature .c-atf-nav-anch--nature .c-atf-nav-anch__en-lbl {
  color: #fff;
}
@media (hover) {
  .c-atf-nav-anch:hover {
    background-color: var(--this-color);
    opacity: 1 !important;
  }
  .c-atf-nav-anch:hover .c-atf-nav-anch__ja-lbl, .c-atf-nav-anch:hover .c-atf-nav-anch__en-lbl {
    color: #fff;
  }
}

.l-top-main {
  margin-bottom: 160px;
}
.l-top-main--nature {
  margin-bottom: 0;
}

.c-top-sec {
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-rows: auto 1fr;
  grid-template-areas: 'img ttl' 'body ttl';
  gap: 32px 18px;
}
.l-top-main--nature .c-top-sec {
  grid-template-columns: 87.42857% auto;
  gap: 42px 18px;
}
.c-top-sec-ttl {
  grid-area: ttl;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
.c-top-sec-ttl__lbl {
  display: block;
  font-family: var(--font-m);
  color: var(--key-c);
  font-size: clamp(2.6rem, 6.6667vw, 4.6rem);
  line-height: 1;
  letter-spacing: 0;
}
.c-top-sec-ttl__lbl small {
  font-size: 0.6923em;
}
.c-top-sec-ttl__lbl br {
  display: none;
}
.l-top-main--nature .c-top-sec-ttl {
  justify-self: end;
}
.c-top-sec__body {
  grid-area: body;
  font-size: 1.4rem;
  text-align: justify;
  line-height: 1.7143;
  font-feature-settings: 'palt' 1;
}
.c-top-sec-lead {
  margin-bottom: 12px;
}
.c-top-sec-lead__lbl {
  color: var(--key-c);
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
}
.c-top-sec-to-det {
  margin-top: 18px;
}
.c-top-sec-to-det-btn {
  display: inline-flex !important;
  align-items: center;
  height: 30px;
  padding: 0 28px 0 10px;
  border: 2px solid var(--key-c);
  transition: background-color .2s;
}
.c-top-sec-to-det-btn__lbl {
  flex: 0 0 auto;
  color: var(--key-c);
  font-weight: 700;
  line-height: 1;
  transition: color .2s;
}
@media (hover) {
  .c-top-sec-to-det-btn:hover {
    background-color: var(--key-c);
    opacity: 1 !important;
  }
  .c-top-sec-to-det-btn:hover .c-top-sec-to-det-btn__lbl {
    color: #fff;
  }
}
.c-top-sec-fig {
  position: relative;
  grid-area: img;
}
.c-top-sec-fig__img {
  box-shadow: 12px 16px 0 var(--key-c);
}
.c-top-sec-slide {
  margin-bottom: 0 !important;
  line-height: 0;
}
.c-top-sec-slide .slick-dots {
  top: calc(100% + 26px);
  bottom: unset;
}
.c-top-sec-slide .slick-dots li {
  width: auto;
  height: auto;
}
.c-top-sec-slide .slick-dots li button {
  width: 8px;
  height: 8px;
  padding: 0;
  background-color: #bcbcbc;
  border-radius: 50%;
}
.c-top-sec-slide .slick-dots li button:before {
  content: unset;
}
.c-top-sec-slide .slick-dots li.slick-active button {
  background-color: var(--key-c);
}
.c-top-sec__txt-orn {
  position: absolute;
  bottom: -10px;
  left: 0;
  font-family: var(--font-m);
  color: transparent;
  font-size: 3.2rem;
  -webkit-text-stroke: 2px #fff;
}
.c-top-sec__body .c-top-sec__txt-orn {
  display: none;
}
.c-top-sec__orn {
  position: absolute;
  z-index: -1;
}
.c-top-sec__orn--diving {
  right: -4px;
  bottom: -10px;
  width: 50px;
}
.c-top-sec__orn--snorkeling {
  right: -6px;
  bottom: -6px;
  width: 55px;
}
.c-top-sec__orn--surfing {
  right: -15px;
  bottom: -12px;
  width: 52px;
}
.c-top-sec__orn--whale {
  right: -4px;
  bottom: -11px;
  width: 67px;
}
.c-top-sec__orn--trekking {
  right: -6px;
  bottom: -18px;
  width: 60px;
}
.c-top-sec__orn--river-trekking {
  right: 0;
  bottom: -39px;
  width: 50px;
}
.c-top-sec__orn--canyoning {
  right: -12px;
  bottom: -58px;
  width: 76px;
}
.c-top-sec__orn--camp {
  right: -6px;
  bottom: -18px;
  width: 60px;
}
.c-top-sec__orn--zipline {
  right: 0;
  bottom: -34px;
  width: 65px;
}
.c-top-sec__orn--buggy {
  right: -5px;
  bottom: -26px;
  width: 65px;
}
.c-top-sec__orn--night {
  right: -2px;
  bottom: -38px;
  width: 60px;
}
.c-top-sec__orn--mangrove {
  right: -10px;
  bottom: -40px;
  width: 62px;
}
.c-top-sec__orn--stargazing {
  right: -14px;
  bottom: -30px;
  width: 60px;
}
.c-top-sec__orn--nature-kayak {
  right: -3px;
  bottom: -30px;
  width: 60px;
}
.c-top-sec__orn--nordic {
  right: -8px;
  bottom: -53px;
  width: 60px;
}
.c-top-sec:not(:nth-last-of-type(1)) {
  margin-bottom: 70px;
}
.l-top-main--nature .c-top-sec:not(:nth-last-of-type(1)) {
  margin-bottom: 80px;
}

::-webkit-full-page-media, :future, :root .c-top-sec-ttl__lbl {
  translate: -.5em;
}

::-webkit-full-page-media, :future, :root .c-top-sec-ttl__lbl small {
  display: inline-block;
  translate: .3em;
}

.l-top-sub {
  padding-right: 40px;
  padding-left: 40px;
}

.c-sub-sec {
  position: relative;
}
.c-sub-sec:not(:nth-last-of-type(1)) {
  margin-bottom: 110px;
}
.c-sub-sec-ttl {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 0 24px;
  margin-bottom: 16px;
  border: 1px solid var(--key-c);
  border-radius: 21px;
}
.c-sub-sec-ttl__lbl {
  flex: 0 1 auto;
  font-family: var(--font-m);
  color: var(--key-c);
  font-size: 2.7rem;
  line-height: 1;
  letter-spacing: 0;
}
.c-sub-sec-ttl small {
  font-size: 0.59259em;
}
.c-sub-sec__fig {
  position: relative;
  margin-bottom: 14px;
}
.c-sub-sec__txt-orn {
  position: absolute;
  bottom: 0;
  left: 2px;
  font-family: var(--font-m);
  color: transparent;
  font-size: 4.1rem;
  line-height: 1;
  -webkit-text-stroke: 2px #fff;
}
.c-sub-sec-lead {
  margin-bottom: 12px;
}
.c-sub-sec-lead__lbl {
  color: var(--key-c);
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.3333;
}
.c-sub-sec__body {
  font-size: 1.1rem;
  text-align: justify;
  line-height: 2;
  font-feature-settings: 'palt' 1;
}
.c-sub-sec__body:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 2) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-sub-sec__body:before {
    margin-top: 0;
  }
}
.c-sub-sec__orn {
  position: absolute;
  z-index: -1;
}
.c-sub-sec__orn--kayak {
  top: 100%;
  right: -19px;
  width: 84px;
}
.c-sub-sec__orn--sup {
  top: calc(100% + 12px);
  right: -5px;
  width: 60px;
}
.c-sub-sec__orn--banana {
  top: calc(100% + 20px);
  right: -10px;
  width: 89px;
}
.c-sub-sec__orn--scooter {
  top: calc(100% + 13px);
  right: -16px;
  width: 95px;
}
.c-sub-sec__orn--oceanpark {
  top: calc(100% + 2px);
  right: -17px;
  width: 118px;
}
.c-sub-sec__orn--flyboard {
  top: 100%;
  right: -13px;
  width: 52px;
}
.c-sub-sec__orn--seawalk {
  top: calc(100% - 8px);
  right: -3px;
  width: 71px;
}
.c-sub-sec__orn--para {
  top: 100%;
  right: -5px;
  width: 121px;
}

@media screen and (min-width: 768px) {
  .l-top-atf {
    margin-bottom: 88px;
    border-bottom-width: 15px;
  }

  .c-top-kv {
    margin: 0 auto 80px;
  }
  .c-top-kv__orn {
    display: block;
    position: absolute;
    top: calc(100% - 20px);
    right: 34px;
  }

  .c-atf-nav {
    column-gap: 40px;
  }
  .c-atf-nav-anch {
    height: 64px;
    border-radius: 20px 20px 0 0;
    border-width: 10px;
  }
  .c-atf-nav-anch__ja-lbl {
    font-size: 2.6rem;
  }
  .c-atf-nav-anch__en-lbl {
    font-size: 1.8rem;
  }
  .l-top-main {
    margin-bottom: 190px;
  }
  .l-top-main--nature {
    margin-bottom: 0;
  }

  .c-top-sec {
    grid-template-columns: auto 1fr 50%;
    grid-template-rows: auto;
    grid-template-areas: 'ttl body img';
    gap: 0 24px;
  }
  .l-top-main--nature .c-top-sec {
    grid-template-columns: calc(4.6rem * 2 * 1.1739) 1fr 50%;
    gap: 0 24px;
    grid-template-rows: auto auto;
    grid-template-areas: 'ttl body img' 'ttl ... ...';
  }
  .c-top-sec:nth-of-type(even) {
    grid-template-columns: 50% 1fr auto;
    grid-template-areas: 'img body ttl';
  }
  .l-top-main--nature .c-top-sec:nth-of-type(even) {
    grid-template-columns: 50% 1fr calc(4.6rem * 2 * 1.1739);
    grid-template-areas: 'img body ttl' '... ... ttl';
  }
  .c-top-sec:has(.c-top-sec__orn--canyoning) {
    margin-bottom: 80px !important;
  }
  .c-top-sec-ttl__lbl small {
    font-size: .56521em;
  }
  .c-top-sec-ttl__lbl br {
    display: inline;
  }
  .l-top-main--nature .c-top-sec-ttl__lbl {
    line-height: 1.1739;
  }
  .c-top-sec__body {
    font-size: 1.5rem;
    line-height: 1.93333;
    padding-right: 11.3065%;
  }
  .c-top-sec:nth-of-type(even) .c-top-sec__body {
    padding-right: 0;
    padding-left: 11.3065%;
  }
  .l-top-main--nature .c-top-sec__body {
    display: flex;
    flex-direction: column;
  }
  .l-top-main--nature .c-top-sec__body p:not([class]) {
    margin-bottom: auto;
  }
  .c-top-sec-lead {
    margin-bottom: 21px;
  }
  .c-top-sec-lead__lbl {
    font-size: 2.2rem;
    line-height: 1.45454;
  }
  .c-top-sec-to-det-btn__lbl {
    font-size: 1.4rem;
  }
  .c-top-sec-fig {
    align-self: start;
  }
  .c-top-sec-fig__img {
    box-shadow: 20px 26px 0 var(--key-c);
  }
  .c-top-sec-slide .slick-dots {
    top: calc(100% + 35px);
  }
  .c-top-sec-slide .slick-dots li button {
    width: 12px;
    height: 12px;
  }
  .c-top-sec__txt-orn {
    bottom: -1px;
    left: 7.03125%;
    font-size: 4.2rem;
    line-height: 1;
  }
  .l-top-main--nature .c-top-sec__txt-orn {
    display: none;
  }
  .c-top-sec__body .c-top-sec__txt-orn {
    display: block;
    position: static;
    margin-top: 20px;
    text-align: right;
    -webkit-text-stroke: 2px var(--key-c);
  }
  .c-top-sec:nth-of-type(even) .c-top-sec__body .c-top-sec__txt-orn {
    text-align: left;
  }
  .c-top-sec__orn--diving {
    right: unset;
    bottom: -16px;
    width: max(9.375%, 50px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -81px);
  }
  .c-top-sec__orn--snorkeling {
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -124px);
    bottom: -60px;
    width: max(10.546875%, 55px);
  }
  .c-top-sec__orn--surfing {
    right: unset;
    bottom: 5px;
    width: max(8.6914%, 52px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -84px);
  }
  .c-top-sec__orn--whale {
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -134px);
    bottom: unset;
    width: max(12.30468%, 67px);
    top: calc(100% + 2px);
  }
  .c-top-sec__orn--trekking {
    right: unset;
    bottom: -32px;
    width: max(10.05859%, 60px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -13px);
  }
  .c-top-sec__orn--river-trekking {
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -163px);
    bottom: -85px;
    width: max(8.78906%, 50px);
  }
  .c-top-sec__orn--canyoning {
    right: unset;
    bottom: 0;
    width: max(13.671875%, 76px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -133px);
  }
  .c-top-sec__orn--camp {
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -50px);
    bottom: -72px;
    width: max(12.6953125%, 60px);
  }
  .c-top-sec__orn--zipline {
    right: unset;
    bottom: -51px;
    width: max(13.671875%, 65px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -49px);
  }
  .c-top-sec__orn--buggy {
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -50px);
    bottom: -77px;
    width: max(12.6953125%, 65px);
  }
  .c-top-sec__orn--night {
    right: unset;
    bottom: unset;
    width: max(9.765625%, 60px);
    top: 100%;
    left: 9.765625%;
  }
  .c-top-sec__orn--mangrove {
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -43px);
    bottom: -126px;
    width: max(12.98828%, 62px);
  }
  .c-top-sec__orn--stargazing {
    right: unset;
    bottom: unset;
    width: max(11.52343%, 60px);
    top: 100%;
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -45px);
  }
  .c-top-sec__orn--nature-kayak {
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -23px);
    bottom: -13px;
    width: max(10.05859%, 60px);
  }
  .c-top-sec__orn--nordic {
    right: unset;
    bottom: -63px;
    width: max(8.7890625%, 60px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -11px);
  }
  .c-top-sec:not(:nth-last-of-type(1)) {
    margin-bottom: 120px;
  }
  .l-top-main--nature .c-top-sec:not(:nth-last-of-type(1)) {
    margin-bottom: 190px;
  }

  .l-top-sub {
    padding-right: 51px;
    padding-left: 51px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    row-gap: 175px;
  }

  .c-sub-sec {
    flex: 0 0 auto;
    width: min(47%, 418px);
  }
  .c-sub-sec:not(:nth-last-of-type(1)) {
    margin-bottom: 0;
  }
  .c-sub-sec:nth-of-type(even) {
    translate: 0 min(11.20058vw, 153px) 0;
  }
  .c-sub-sec-ttl {
    min-height: 58px;
    padding: 0 32px;
    margin-bottom: 22px;
    border-radius: 29px;
  }
  .c-sub-sec-ttl__lbl {
    font-size: clamp(2.7rem, 3.30882vw, 3.6rem);
    line-height: 1;
  }
  .c-sub-sec__fig {
    margin-bottom: 20px;
  }
  .c-sub-sec__txt-orn {
    bottom: 10px;
    font-size: 5.5rem;
  }
  .c-sub-sec-lead {
    margin-bottom: 16px;
  }
  .c-sub-sec-lead__lbl {
    font-size: 2.2rem;
    line-height: 1.454545;
  }
  .c-sub-sec__body {
    font-size: 1.5rem;
    line-height: 1.93333;
  }
  .c-sub-sec__body:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.93333) * .5em);
  }
  .c-sub-sec__orn--kayak {
    top: calc(100% + 10px);
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -40px);
    width: max(35.88516%, 84px);
  }
  .c-sub-sec__orn--sup {
    top: calc(100% - 8px);
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -101px);
    width: max(26.31578%, 60px);
  }
  .c-sub-sec__orn--banana {
    top: calc(100% + 32px);
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -20px);
    width: max(34.6889%, 89px);
  }
  .c-sub-sec__orn--scooter {
    top: calc(100% + 15px);
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -92px);
    width: max(34.6889%, 95px);
  }
  .c-sub-sec__orn--oceanpark {
    top: calc(100% + 44px);
    right: unset;
    width: max(35.88516%, 118px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -24px);
  }
  .c-sub-sec__orn--flyboard {
    top: calc(100% + clamp(-108px, calc(1088px - 100vw), 0px));
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -109px);
    width: max(18.8995%, 52px);
  }
  .c-sub-sec__orn--seawalk {
    top: calc(100% + 16px);
    right: unset;
    width: max(29.42583%, 71px);
    left: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -77px);
  }
  .c-sub-sec__orn--para {
    top: calc(100% + 12px);
    right: max(calc((min(calc(100vw - 40px), 1088px) - 100vw) / 2), -140px);
    width: max(37.5598%, 121px);
  }
}
.l-div-atf {
  margin-bottom: 48px;
}

.c-div-kv {
  max-width: 1366px;
  margin: 0 auto 16px;
}

.c-div-nav {
  display: flex;
  justify-content: space-between;
  max-width: 1024px;
  padding: 0 20px;
  margin: 0 auto;
}
.c-div-nav__item {
  flex: 0 0 auto;
  width: calc((100% + 8px) / 3 - 8px);
}
.c-div-nav-anch {
  display: flex !important;
  justify-content: center;
  align-items: center;
  column-gap: 8px;
  width: 100%;
  height: 45px;
  padding: 0 4px;
  background-color: #35C5CE;
  border-radius: 3px;
  transition: background-color .2s;
}
.c-div-nav-anch__icon {
  flex: 0 0 auto;
  display: none;
}
.c-div-nav-anch__lbl {
  flex: 0 1 auto;
  font-family: var(--font-m);
  color: var(--c-div-blue);
  font-size: 1.1rem;
  text-align: center;
  line-height: 1.2727;
  letter-spacing: 0;
  rotate: .05deg;
}
@media (hover) {
  .c-div-nav-anch:hover {
    background-color: #bfe3f6;
    opacity: 1 !important;
  }
}

.c-div-sec {
  scroll-margin-top: 72px;
}
.c-div-sec:not(:nth-last-of-type(1)) {
  margin-bottom: 88px;
}
.c-div-sec-ttl {
  margin-bottom: 36px;
}
.c-div-sec-ttl-orn {
  display: flex;
  align-items: center;
  margin-bottom: 4px;
}
.c-div-sec-ttl-orn:before, .c-div-sec-ttl-orn:after {
  content: '';
  flex: 1 1 auto;
  height: 2px;
  background-color: var(--c-div-blue);
}
.c-div-sec-ttl-orn__icon {
  flex: 0 0 auto;
  width: 66px;
}
.c-div-sec-ttl__lbl {
  display: block;
  font-family: var(--font-m);
  color: var(--c-div-blue);
  font-size: 2rem;
  text-align: center;
  line-height: 1.3;
}
.c-div-sec__lead {
  margin-bottom: 46px;
  font-size: 1.1rem;
  text-align: center;
  line-height: 2.0909;
  font-feature-settings: 'palt' 1;
}
.c-div-sec__lead:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 2.0909) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-div-sec__lead:before {
    margin-top: 0;
  }
}

.c-div-insec:not(:nth-last-of-type(1)) {
  margin-bottom: 46px;
}
.c-div-insec-ttl {
  margin-bottom: 18px;
  text-align: center;
}
.c-div-insec-ttl__lbl {
  display: inline-block;
  padding: 0 12px 4px;
  font-family: var(--font-m);
  color: var(--c-div-blue);
  font-size: 2rem;
  border-bottom: 2px solid var(--c-div-blue);
  rotate: .05deg;
}

div[data-scrollable] {
  width: 100%;
  overflow: auto hidden;
}

.c-div-seasonality {
  margin-bottom: 32px;
}

.c-div-season-table {
  font-size: 1.2rem;
  border: 1px solid #666;
  width: 100%;
}
.c-div-season-table__head td,
.c-div-season-table__head th {
  padding: 12px;
  color: #fff;
  text-align: center;
  background-color: #3988c3;
}
.c-div-season-table__head th {
  min-width: 60px;
  border-left: 1px solid #fff;
}
.c-div-season-table__body th,
.c-div-season-table__body td {
  padding: 12px;
  text-align: center;
  vertical-align: middle;
  border: 1px solid #666;
}
.c-div-season-table__body th {
  background-color: #abceed;
}
.c-div-season-table__body th.pail {
  background-color: #d1e9ff;
}

.c-div-faq__item {
  padding: 12px 16px;
  background-color: #bfe3f6;
  border-radius: 4px;
}
.c-div-faq__item:not(:nth-last-of-type(1)) {
  margin-bottom: 23px;
}
.c-div-faq__term {
  padding-bottom: 6px;
  margin-bottom: 13px;
  color: var(--c-div-blue);
  font-size: 1.7rem;
  font-weight: 700;
  border-bottom: 1px dashed var(--c-div-blue);
}
.c-div-faq__data {
  font-size: 1.2rem;
  text-align: justify;
  line-height: 1.75;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
}
.c-div-faq__data:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.75) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-div-faq__data:before {
    margin-top: 0;
  }
}

.c-div-to-shoplist {
  margin-top: 40px;
  text-align: center;
}
.c-div-to-shoplist-anch {
  display: inline-grid !important;
  place-items: center;
  width: 100%;
  max-width: 300px;
  height: 40px;
  padding: 0 12px;
  background-color: var(--c-div-blue);
  border-radius: 5px;
}
.c-div-to-shoplist-anch__lbl {
  font-family: var(--font-m);
  color: #fff;
  font-size: 1.6rem;
  rotate: .05deg;
}

.c-div-spots-legend {
  padding: 10px 15px;
  margin-bottom: 24px;
  border: 1px solid #999;
}
.c-div-spots-legend__ttl {
  margin-bottom: 10px;
  font-size: 1.4rem;
}
.c-div-spots-legend-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
}
.c-div-spots-legend-list__item {
  flex: 0 1 auto;
  display: flex;
  align-items: center;
  column-gap: 4px;
}
.c-div-spots-legend-list__term {
  flex: 0 0 auto;
  height: 22px;
}
.c-div-spots-legend-list__data {
  flex: 0 1 auto;
  position: relative;
  padding-left: 1.2em;
  font-size: 1.2rem;
}
.c-div-spots-legend-list__data:before {
  content: '…';
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  line-height: 0;
}

.c-div-spots-tab-list {
  --c-hontou: #3FA6F2;
  --c-kerama: #52B50B;
  --c-kumejima: #E29648;
  --c-miyako: #B7252A;
  --c-yaeyama: #FB4685;
  --c-yonaguni: #6FB7DD;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 16px;
}
[data-active-tab="hontou"] .c-div-spots-tab-list {
  border-color: var(--c-hontou);
}
[data-active-tab="kerama"] .c-div-spots-tab-list {
  border-color: var(--c-kerama);
}
[data-active-tab="kumejima"] .c-div-spots-tab-list {
  border-color: var(--c-kumejima);
}
[data-active-tab="miyako"] .c-div-spots-tab-list {
  border-color: var(--c-miyako);
}
[data-active-tab="yaeyama"] .c-div-spots-tab-list {
  border-color: var(--c-yaeyama);
}
[data-active-tab="yonaguni"] .c-div-spots-tab-list {
  border-color: var(--c-yonaguni);
}
.c-div-spots-tab-list__item {
  flex: 0 0 auto;
  width: 33.3333%;
}
.c-div-spots-tab-list-btn {
  display: grid;
  place-items: center;
  width: 100%;
  height: 30px;
}
.c-div-spots-tab-list-btn[data-area="hontou"] {
  background-color: var(--c-hontou);
}
.c-div-spots-tab-list-btn[data-area="kerama"] {
  background-color: var(--c-kerama);
}
.c-div-spots-tab-list-btn[data-area="kumejima"] {
  background-color: var(--c-kumejima);
}
.c-div-spots-tab-list-btn[data-area="miyako"] {
  background-color: var(--c-miyako);
}
.c-div-spots-tab-list-btn[data-area="yaeyama"] {
  background-color: var(--c-yaeyama);
}
.c-div-spots-tab-list-btn[data-area="yonaguni"] {
  background-color: var(--c-yonaguni);
}
.c-div-spots-tab-list-btn__lbl {
  font-family: var(--font-m);
  color: #fff;
  font-size: 1.2rem;
  letter-spacing: 0;
  rotate: .05deg;
}
.c-div-spots-tab__body {
  display: none;
}
[data-active-tab="hontou"] .c-div-spots-tab__body#hontou {
  display: block;
}
[data-active-tab="kerama"] .c-div-spots-tab__body#kerama {
  display: block;
}
[data-active-tab="kumejima"] .c-div-spots-tab__body#kumejima {
  display: block;
}
[data-active-tab="miyako"] .c-div-spots-tab__body#miyako {
  display: block;
}
[data-active-tab="yaeyama"] .c-div-spots-tab__body#yaeyama {
  display: block;
}
[data-active-tab="yonaguni"] .c-div-spots-tab__body#yonaguni {
  display: block;
}

.c-div-spots-intro {
  display: flex;
  flex-direction: column;
  margin-bottom: 28px;
}
.c-div-spots-intro__fig {
  order: 2;
  margin-bottom: 20px;
}
.c-div-spots-intro__body {
  display: contents;
}
.c-div-spots-intro-ttl {
  order: 1;
  padding-bottom: 4px;
  margin-bottom: 10px;
  border-bottom: 1px solid var(--c-div-blue);
}
.c-div-spots-intro-ttl__lbl {
  color: var(--c-div-blue);
  font-size: 2.8rem;
  font-weight: 700;
  line-height: 1.2;
}
.c-div-spots-intro__lead {
  order: 3;
  font-size: 1.5rem;
  text-align: justify;
  line-height: 1.73333;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
}
.c-div-spots-intro__lead:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.73333) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-div-spots-intro__lead:before {
    margin-top: 0;
  }
}
.c-div-spots-intro-index {
  display: none;
}

.c-div-spot {
  counter-increment: num;
}
.c-div-spot:not(:nth-last-of-type(1)) {
  padding-bottom: 32px;
  margin-bottom: 20px;
  border-bottom: 1px solid #000;
}
.c-div-spot-ttl {
  position: relative;
  padding-left: 36px;
  margin-bottom: 10px;
}
.c-div-spot-ttl:before {
  content: counter(num);
  display: grid;
  place-items: center;
  position: absolute;
  top: 3px;
  left: 0;
  width: 30px;
  height: 30px;
  color: #fff;
  font-size: 2.2rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.5;
  background-color: #082c7d;
  border-radius: 50%;
}
.c-div-spot-ttl__lbl {
  display: block;
  padding-top: 3px;
  color: #000;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
}
.c-div-spot__fig {
  margin-bottom: 10px;
}
.c-div-spot-legend {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 8px;
  margin-bottom: 24px;
}
.c-div-spot-legend__item {
  flex: 0 1 auto;
  display: flex;
  align-items: center;
}
.c-div-spot-legend__term {
  flex: 0 0 auto;
}
.c-div-spot-legend__data {
  flex: 0 1 auto;
  padding: 2px 8px 0;
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1.2;
  font-feature-settings: 'palt' 1;
}
.c-div-spot__desc {
  font-size: 1.2rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
}
.c-div-spot__desc:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.75) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-div-spot__desc:before {
    margin-top: 0;
  }
}

.c-div-spot-column {
  position: relative;
  padding: 16px;
  margin-top: 40px;
  border: 10px solid #BFE3F6;
  border-radius: 12px;
}
.c-div-spot-column-lbl {
  position: absolute;
  top: -22px;
  right: -10px;
  display: block;
  padding: 5px;
  font-family: var(--font-m);
  color: #fff;
  letter-spacing: 0;
  line-height: 1;
  background-color: var(--c-div-blue);
}
.c-div-spot-column-lbl__en {
  display: block;
  font-size: 1.7rem;
}
.c-div-spot-column-lbl__ja {
  display: block;
  font-size: 1rem;
}
.c-div-spot-column-ttl {
  margin-bottom: 10px;
}
.c-div-spot-column-ttl__lbl {
  color: var(--c-div-blue);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.5;
  font-feature-settings: 'palt' 1;
}
.c-div-spot-column__body {
  margin-bottom: 8px;
  font-size: 1.2rem;
  line-height: 1.75;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
}
.c-div-spot-column__body:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.75) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-div-spot-column__body:before {
    margin-top: 0;
  }
}
.c-div-spot-column__body p + p {
  margin-top: 0.6em;
}
.c-div-spot-column__fig-cap {
  padding-top: 4px;
  font-size: 1rem;
}

.c-div-marinelife {
  margin-top: 50px;
}
.c-div-marinelife-table {
  width: 100%;
  font-size: 1.4rem;
  border: 1px solid #001f91;
}
.c-div-marinelife-table__head th {
  padding: 8px 0;
  background-color: #001f91;
}
.c-div-marinelife-table__head th span {
  display: block;
  min-width: 45px;
  color: #fff;
  text-align: center;
}
.c-div-marinelife-table__head th:not(:nth-last-of-type(1)) span {
  border-right: 1px solid #fff;
}
.c-div-marinelife-table__body td {
  padding: 5px 4px;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  border: 1px solid #dcdcdc;
}
.c-div-marinelife-table__body td.is-c-blue {
  background-color: #6abef0;
}
.c-div-marinelife-table__body td.is-c-yellow {
  color: #8a7316;
  background-color: #f0d464;
}
.c-div-marinelife-table__body td.is-c-lime {
  background-color: #9ade65;
}
.c-div-marinelife-table__body td.is-c-purple {
  background-color: #a792f0;
}

.c-div-kerama {
  margin-bottom: 80px;
}
.c-div-kerama-ttl {
  margin-bottom: 12px;
}
.c-div-kerama-ttl__lbl {
  color: var(--c-div-blue);
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: 0;
}
.c-div-kerama-upper {
  margin-bottom: 40px;
}
.c-div-kerama-upper__fig {
  margin: 0 -20px 20px;
}
.c-div-kerama-upper__body {
  font-size: 1.5rem;
  text-align: justify;
  line-height: 1.73334;
  font-feature-settings: 'palt' 1;
}
.c-div-kerama-upper__body:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.73334) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-div-kerama-upper__body:before {
    margin-top: 0;
  }
}
.c-div-kerama-lower-point {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
.c-div-kerama-lower-point-fig {
  padding-bottom: 16px;
}
.c-div-kerama-lower-point-fig__img {
  box-shadow: 10px 10px 0 #BFE3F6;
}
.c-div-kerama-lower-point-list {
  display: contents;
}
.c-div-kerama-lower-point-list__item {
  counter-increment: num;
}
.c-div-kerama-lower-point-list-ttl {
  margin-bottom: 8px;
}
.c-div-kerama-lower-point-list-ttl__lbl {
  color: var(--c-div-blue);
  font-size: 2.6rem;
  font-weight: 700;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
}
.c-div-kerama-lower-point-list-ttl__lbl:before {
  content: counter(num) ".";
}
.c-div-kerama-lower-point-list__body {
  font-size: 1.3rem;
  text-align: justify;
  line-height: 1.6923;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
}
.c-div-kerama-lower-point-list__body:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.6923) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-div-kerama-lower-point-list__body:before {
    margin-top: 0;
  }
}

.c-div-shops {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}
.c-div-shops__item {
  flex: 1 1 230px;
  display: flex;
}

.c-div-shop {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
  padding: 14px 20px 20px;
  border: 1px dotted #4d4d4d;
  border-radius: 5px;
}
.c-div-shop-ttl {
  margin-bottom: 10px;
}
.c-div-shop-ttl__lbl {
  color: var(--c-div-blue);
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.4;
  font-feature-settings: 'palt' 1;
}
.c-div-shop-info {
  margin-bottom: 10px;
}
.c-div-shop-info__item {
  display: flex;
  align-items: flex-start;
  column-gap: 6px;
}
.c-div-shop-info__item:not(:nth-last-of-type(1)) {
  margin-bottom: 4px;
}
.c-div-shop-info__term {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
}
.c-div-shop-info__data {
  padding-top: 2px;
  font-size: 1.1rem;
  letter-spacing: 0;
  font-feature-settings: 'palt' 1;
  word-break: break-all;
}
.c-div-shop__fig {
  margin-top: auto;
}

.c-div-shops-search {
  margin-top: 36px;
  text-align: center;
}
.c-div-shops-search-anch {
  display: inline-grid !important;
  place-items: center;
  width: 100%;
  max-width: 300px;
  height: 35px;
  background-color: #35C5CE;
}
.c-div-shops-search-anch__lbl {
  font-family: var(--font-m);
  color: #fff;
  font-size: 1.3rem;
  letter-spacing: 0;
  rotate: .05deg;
}

.c-marine-back {
  padding: 80px 20px 64px;
  text-align: center;
}
.c-marine-back-anch {
  display: inline-flex !important;
  justify-content: center;
  align-items: center;
  column-gap: 12px;
  width: 100%;
  max-width: 640px;
  height: 56px;
  border: 2px solid var(--c-blue);
  border-radius: 8px;
}
.c-marine-back-anch__icon {
  flex: 0 0 auto;
  width: 24px;
  transition: translate 0.3s cubic-bezier(0, 0, 0, 1);
}
.c-marine-back-anch__lbl {
  flex: 0 1 auto;
  font-family: var(--font-m);
  color: var(--c-blue);
  font-size: 1.6rem;
  rotate: .05deg;
}
@media (hover) {
  .c-marine-back-anch:hover {
    opacity: 1 !important;
  }
  .c-marine-back-anch:hover .c-marine-back-anch__icon {
    translate: -8px;
  }
}

@media screen and (min-width: 768px) {
  .l-div-atf {
    margin-bottom: 68px;
  }

  .c-div-kv {
    margin: 0 auto 105px;
  }

  .c-div-nav__item {
    width: calc((100% + 20px) / 3 - 20px);
  }
  .c-div-nav-anch {
    height: 40px;
    padding: 0 12px;
  }
  .c-div-nav-anch__icon {
    display: block;
    width: 31px;
  }
  .c-div-nav-anch__lbl {
    font-size: 1.6rem;
    text-align: left;
  }
}
@media screen and (min-width: 768px) and (hover) {
  .c-div-nav-anch:hover {
    opacity: 1 !important;
  }
}

@media screen and (min-width: 768px) {
  .c-div-sec:not(:nth-last-of-type(1)) {
    margin-bottom: 150px;
  }
  .c-div-sec-ttl {
    margin-bottom: 32px;
  }
  .c-div-sec-ttl-orn {
    margin-bottom: 8px;
  }
  .c-div-sec-ttl-orn:before, .c-div-sec-ttl-orn:after {
    content: '';
    height: 3px;
  }
  .c-div-sec-ttl-orn__icon {
    width: 100px;
  }
  .c-div-sec-ttl__lbl {
    font-size: 2.6rem;
  }
  .c-div-sec__lead {
    margin-bottom: 54px;
    font-size: 1.8rem;
    line-height: 1.94444;
    max-width: 628px;
    margin-right: auto;
    margin-left: auto;
  }
  .c-div-sec__lead:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.94444) * .5em);
  }
  .c-div-insec:not(:nth-last-of-type(1)) {
    margin-bottom: 60px;
  }
  .c-div-insec-ttl {
    margin-bottom: 28px;
  }

  .c-div-seasonality {
    margin-bottom: 68px;
  }

  .c-div-faq {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, auto);
    gap: min(3.67647vw, 40px);
    padding: 0 2.9296875%;
  }
  .c-div-faq__item {
    padding: 16px 20px;
    border-radius: 5px;
  }
  .c-div-faq__item:not(:nth-last-of-type(1)) {
    margin-bottom: 0;
  }
  .c-div-faq__item:nth-of-type(1) {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }
  .c-div-faq__item:nth-of-type(2) {
    grid-column: 1 / 2;
    grid-row: 2 / 4;
  }
  .c-div-faq__item:nth-of-type(3) {
    grid-column: 1 / 2;
    grid-row: 4 / 5;
  }
  .c-div-faq__item:nth-of-type(4) {
    grid-column: 2 / 3;
    grid-row: 1 / 3;
  }
  .c-div-faq__item:nth-of-type(5) {
    grid-column: 2 / 3;
    grid-row: 3 / 5;
    align-self: start;
  }
  .c-div-faq__term {
    padding-bottom: 8px;
    margin-bottom: 18px;
    font-size: 2.2rem;
  }
  .c-div-faq__data {
    font-size: 1.5rem;
    line-height: 1.73334;
  }
  .c-div-faq__data:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.73334) * .5em);
  }
  .c-div-to-shoplist {
    margin-top: 70px;
  }

  .c-div-spots-legend {
    padding: 10px 15px 15px;
    margin-bottom: 48px;
  }

  .c-div-spots-tab-list {
    margin-bottom: 22px;
    border-bottom: 10px solid #000;
    justify-content: space-between;
  }
  .c-div-spots-tab-list__item {
    width: 15.625%;
  }
  .c-div-spots-tab-list-btn {
    height: 40px;
    padding-top: 6px;
    border-radius: 10px 10px 0 0;
  }
  .c-div-spots-tab-list-btn__lbl {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 768px) and (hover) {
  .c-div-spots-tab-list-btn:hover {
    opacity: 0.7;
  }
}

@media screen and (min-width: 768px) {
  .c-div-spots-intro {
    flex-direction: row;
    margin-bottom: 80px;
  }
  .c-div-spots-intro__fig {
    order: 1;
    margin-bottom: 0;
    flex: 0 0 auto;
    width: 48.828125%;
  }
  .c-div-spots-intro__body {
    display: block;
    order: 2;
    flex: 1 1 auto;
    padding-left: 34px;
  }
  .c-div-spots-intro-ttl {
    order: unset;
    padding-bottom: 6px;
    margin-bottom: 18px;
    padding-left: 34px;
    margin-left: -34px;
  }
  .c-div-spots-intro-ttl__lbl {
    font-size: 3.6rem;
  }
  .c-div-spots-intro__lead {
    order: unset;
  }
  .c-div-spots-intro-index {
    display: grid;
    grid-auto-flow: column;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(4, auto);
    gap: 14px 5.430612%;
    margin-top: 7.1429%;
  }
  .c-div-spots-intro-index--2col {
    grid-template-columns: repeat(2, 1fr);
  }
  .c-div-spots-intro-index__item {
    counter-increment: num;
    display: flex;
    column-gap: 4px;
  }
  .c-div-spots-intro-index__item:before {
    content: counter(num);
    flex: 0 0 auto;
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.4;
    background-color: var(--c-div-blue);
    border-radius: 50%;
  }
  .c-div-spots-intro-index__lbl {
    flex: 0 1 auto;
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.3;
    font-feature-settings: 'palt' 1;
  }

  .c-div-spot {
    counter-increment: num;
    display: grid;
    grid-template-columns: 26.36718% 1fr;
    grid-template-rows: auto 1fr;
    grid-template-areas: 'img ttl' 'img body';
    column-gap: 2.9297%;
  }
  .c-div-spot:not(:nth-last-of-type(1)) {
    padding-bottom: 0;
    margin-bottom: 70px;
    border-bottom: unset;
  }
  .c-div-spot-ttl {
    margin-bottom: 12px;
    padding-bottom: 4px;
    border-bottom: 1px solid #000;
    grid-area: ttl;
  }
  .c-div-spot-ttl:before {
    content: counter(num);
    top: -2px;
  }
  .c-div-spot-ttl__lbl {
    padding-top: 0;
    line-height: 1.2;
  }
  .c-div-spot__fig {
    margin-bottom: 0;
    grid-area: img;
  }
  .c-div-spot__body {
    grid-area: body;
  }
  .c-div-spot-legend {
    margin-bottom: 32px;
  }
  .c-div-spot__desc {
    font-size: 1.4rem;
    line-height: 1.85714;
  }
  .c-div-spot__desc:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.85714) * .5em);
  }
  .c-div-spot-column {
    padding: 22px 30px 26px;
    margin-top: 100px;
    border: 28px solid #BFE3F6;
    border-radius: 20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .c-div-spot-column-lbl {
    top: -48px;
    right: -28px;
    padding: 10px;
  }
  .c-div-spot-column-lbl__en {
    font-size: 3.4rem;
  }
  .c-div-spot-column-lbl__ja {
    font-size: 1.7rem;
  }
  .c-div-spot-column-ttl {
    margin-bottom: 14px;
    flex: 0 0 auto;
    width: 100%;
  }
  .c-div-spot-column-ttl__lbl {
    font-size: 4rem;
  }
  .c-div-spot-column__body {
    margin-bottom: 0;
    font-size: 1.4rem;
    line-height: 1.85714;
    flex: 0 0 auto;
    width: 55.06607%;
  }
  .c-div-spot-column__body:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.85714) * .5em);
  }
  .c-div-spot-column__fig {
    flex: 0 0 auto;
    width: 45.9251%;
    margin-right: -58px;
  }
  .c-div-spot-column__fig-cap {
    padding-top: 8px;
  }

  .c-div-marinelife {
    margin-top: 62px;
  }

  .c-div-kerama {
    margin-bottom: 100px;
  }
  .c-div-kerama-ttl {
    margin-bottom: 16px;
    flex: 0 0 auto;
    width: 100%;
  }
  .c-div-kerama-ttl__lbl {
    font-size: 3.6rem;
  }
  .c-div-kerama-upper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .c-div-kerama-upper__fig {
    margin: 0;
    flex: 0 0 auto;
    width: 60.5468%;
  }
  .c-div-kerama-upper__body {
    flex: 0 0 auto;
    width: 36.1328%;
  }
  .c-div-kerama-lower-point {
    grid-template-columns: repeat(3, 1fr);
    gap: 52px 3.41796%;
  }
  .c-div-kerama-lower-point-fig {
    padding-bottom: 0;
    padding-right: 8.2089%;
    grid-column: 1 / 3;
    grid-row: 1 / 3;
  }
  .c-div-kerama-lower-point-fig__img {
    box-shadow: 20px 20px 0 #BFE3F6;
  }
  .c-div-kerama-lower-point-list__item {
    counter-increment: num;
  }
  .c-div-kerama-lower-point-list__item:nth-of-type(1) {
    grid-column: 3 / 4;
    grid-row: 1 / 2;
  }
  .c-div-kerama-lower-point-list__item:nth-of-type(2) {
    grid-column: 3 / 4;
    grid-row: 2 / 3;
  }
  .c-div-kerama-lower-point-list__item:nth-of-type(3) {
    grid-column: 1 / 2;
    grid-row: 3 / 4;
  }
  .c-div-kerama-lower-point-list__item:nth-of-type(4) {
    grid-column: 2 / 3;
    grid-row: 3 / 4;
  }
  .c-div-kerama-lower-point-list__item:nth-of-type(5) {
    grid-column: 3 / 4;
    grid-row: 3 / 4;
  }
  .c-div-kerama-lower-point-list-ttl__lbl:before {
    content: counter(num) ".";
  }

  .c-div-shop {
    flex-direction: row;
    justify-content: space-between;
    padding: 12px 20px 20px;
    flex-wrap: wrap;
  }
  .c-div-shop-ttl {
    margin-bottom: 8px;
  }
  .c-div-shop-ttl__lbl {
    font-size: 1.6rem;
    flex: 0 0 auto;
    width: 100%;
  }
  .c-div-shop-info {
    margin-bottom: 0;
    flex: 0 0 auto;
    width: 65.2174%;
  }
  .c-div-shop-info__item:not(:nth-last-of-type(1)) {
    margin-bottom: 6px;
  }
  .c-div-shop-info__data {
    font-size: 1.2rem;
  }
  .c-div-shop__fig {
    margin-top: unset;
    flex: 0 0 auto;
    width: 29.3478%;
  }

  .c-div-shops-search {
    margin-top: 70px;
  }
  .c-div-shops-search-anch {
    max-width: 450px;
    height: 40px;
  }
  .c-div-shops-search-anch__lbl {
    font-size: 1.6rem;
  }

  .c-marine-back {
    padding: 120px 20px 0;
  }
  .c-marine-back-anch {
    height: 64px;
    border-radius: 12px;
  }
  .c-marine-back-anch__lbl {
    font-size: 2rem;
  }
}
html {
  scroll-behavior: smooth;
}

#base-ttl,
#ip-ttl,
#shop-ttl {
  scroll-margin-top: 90px;
}

.c-kv {
  max-width: 1366px;
  margin: 0 auto 16px;
}

.c-sec-under:not(:nth-last-of-type(1)) {
  margin-bottom: 88px;
}

.c-under-nav {
  margin-bottom: 48px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 8px;
}
.c-under-nav-anch {
  font-family: var(--font-m);
  font-weight: 700;
  rotate: .05deg;
  color: #2C3E93 !important;
  display: flex !important;
  justify-content: center;
  align-items: center;
  background-color: #35C5CE;
  width: 100%;
  height: 100%;
  padding: 8px 0;
  border-radius: 3px;
  line-height: 1.273;
  letter-spacing: -0.025em;
  font-size: 1.1rem;
  transition: background-color 0.2s cubic-bezier(0, 0, 0, 1);
}
.c-under-nav-anch:hover {
  background-color: #BFE3F6;
  opacity: 1 !important;
}
.c-under-nav-anch__lbl {
  text-align: center;
}
.c-under-nav-anch__fig {
  display: none;
}

.c-sec-orn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 8px;
}
.c-sec-orn::before, .c-sec-orn::after {
  content: "";
  height: 2px;
  width: 100%;
  background-color: #2C3E93;
  display: block;
}
.c-sec-orn__item {
  flex: 0 0 auto;
  width: 66px !important;
  height: auto;
}
.c-sec-ttl {
  color: #2C3E93;
  font-family: var(--font-m);
  font-weight: 700;
  rotate: .05deg;
  font-size: 2rem;
  letter-spacing: 0;
  text-align: center;
  margin-bottom: 36px;
}
.c-sec-desc {
  font-size: 1.1rem;
  letter-spacing: 0.03em;
  line-height: 2.091;
  text-align: justify;
  margin-bottom: 50px;
  line-height: 2.091;
}
.c-sec-desc:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 2.091) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-sec-desc:before {
    margin-top: 0;
  }
}
.c-sec-desc--ip {
  text-align: center;
}

.c-base-ttl {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}
.c-base-ttl-span {
  color: #2C3E93;
  font-family: var(--font-m);
  font-weight: 700;
  rotate: .05deg;
  font-size: 1.6rem;
  letter-spacing: 0;
  text-align: center;
  border-bottom: 2px solid #2C3E93;
  display: inline-block;
  padding-bottom: 6px;
}
.c-base-contents {
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  row-gap: 8px;
  align-items: center;
  max-width: 774px;
  margin-left: auto;
  margin-right: auto;
}
.c-base-item {
  width: 300px;
  border: solid 5px #2C3E93;
  padding: 0px 0px 25px;
  border-radius: 8px;
}
.c-base-item--sky {
  border-color: #35C5CE;
}
.c-base-item-ttl {
  margin-top: 15px;
  color: #fff;
  background-color: #2C3E93;
  padding: 8px 40px 8px 11px;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1;
  display: inline-block;
  border-radius: 0 15px 15px 0;
  margin-bottom: 10px;
  margin-left: -1px;
}
.c-base-item-ttl--sky {
  background-color: #35C5CE;
}
.c-base-item-ul {
  margin-left: 20px;
}
.c-base-item-li {
  font-size: 1.3rem;
  letter-spacing: 0;
}
.c-base-item-li:not(:last-child) {
  margin-bottom: 6px;
}
.c-base-blk {
  padding: 12px;
  border: 5px solid #AFE3F6;
  border-radius: 5px;
}
.c-base-blk:not(:first-child) {
  padding-bottom: 25px;
}
.c-base-blk__unit {
  margin: 28px auto 0px;
}
.c-base-blk__item {
  max-width: 260px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 4px;
}
.c-base-blk__item:not(:last-child) {
  margin-bottom: 20px;
}
.c-base-blk__item-pic {
  flex: 0 0 50%;
}
.c-base-blk__item-ill {
  width: 100% !important;
}
.c-base-blk__txt {
  flex: 0 1 50%;
}
.c-base-blk__txt-h {
  font-size: 1.8rem;
  font-weight: bold;
  color: #2C3E93;
  margin-bottom: 6px;
}
.c-base-blk__txt-h--red {
  color: #FF0000;
}
.c-base-blk__txt-d {
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1.583;
}
.c-base-blk:not(:last-child) {
  margin-bottom: 10px;
}
.c-base-blk-ttl {
  color: #2C3E93;
  font-weight: 700;
  letter-spacing: 0;
  padding-bottom: 4px;
  border-bottom: dashed 1px #2C3E93;
  margin-bottom: 12px;
  font-size: 1.7rem;
}
.c-base-blk-desc {
  letter-spacing: 0;
  line-height: 1.75;
  font-size: 1.2rem;
  text-align: justify;
}
.c-base-blk-desc--bold {
  font-weight: 700;
  color: #2C3E93;
}

.c-ip-hdg {
  margin-bottom: 30px;
  color: #2C3E93;
  font-family: var(--font-m);
  font-weight: 700;
  rotate: .05deg;
  font-size: 1.6rem;
  letter-spacing: 0;
  display: inline-block;
  display: flex;
  justify-content: center;
}
.c-ip-hdg-span {
  border-bottom: 2px solid #2C3E93;
  display: inline-block;
  padding-bottom: 4px;
}
.c-ip-lists {
  margin-bottom: 50px;
}
.c-ip__item {
  display: flex;
  align-items: center;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}
.c-ip__item:not(:last-child) {
  margin-bottom: 20px;
}
.c-ip__item-num {
  font-size: 52px;
  color: #2C3E93;
  font-family: var(--font-m);
  font-weight: 700;
  padding-right: 12px;
  line-height: 1;
}
.c-ip__item-p {
  font-size: 1.5rem;
  letter-spacing: 0;
  line-height: 1.733;
  line-height: 1.733;
  border-left: 10px solid #2C3E93;
  padding-left: 10px;
  line-height: 1.733;
}
.c-ip__item-p:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.733) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-ip__item-p:before {
    margin-top: 0;
  }
}
.c-ip__item-p:after {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.733) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-ip__item-p:after {
    margin-bottom: 0;
  }
}
.c-ip__item-p-span {
  display: block;
}
.c-ip-creatures__blk {
  padding: 10px;
  background-color: #BFE88D;
  border-radius: 4px;
}
.c-ip-creatures__blk:not(:last-child) {
  margin-bottom: 10px;
}
.c-ip-creatures__content {
  background-color: #fff;
  padding: 14px 6px 30px;
}
.c-ip-creatures__content:not(:first-of-type) {
  padding-top: unset;
}
.c-ip-creatures__content:last-of-type {
  padding-bottom: 14px;
  margin-bottom: 8px;
}
.c-ip-creatures__content > picture {
  width: 180px;
  height: 120px;
  margin-bottom: 11px;
  display: block;
}
.c-ip-creatures__p {
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1.75;
  line-height: 1.75;
}
.c-ip-creatures__p:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.75) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-ip-creatures__p:before {
    margin-top: 0;
  }
}
.c-ip-creatures__name {
  font-size: 18px;
  letter-spacing: 0;
  color: #A7CB7B;
  font-weight: 700;
  margin-bottom: 2px;
}
.c-ip-creatures-treatment {
  margin-top: 8px;
  font-size: 1.6rem;
  letter-spacing: 0;
  font-weight: 700;
  margin-bottom: 8px;
}
.c-ip-creatures-desc {
  letter-spacing: 0;
  font-size: 1.2rem;
  line-height: 1.75;
  line-height: 1.75;
}
.c-ip-creatures-desc:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.75) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-ip-creatures-desc:before {
    margin-top: 0;
  }
}
.c-ip-creatures-desc--bold {
  color: #FF0000;
  font-weight: 700;
}

.c-shop {
  display: flex;
  flex-direction: column;
  row-gap: 20px;
  padding-bottom: 27px;
}
.c-shop-item {
  padding: 18px;
  border: 1px dashed #4D4D4D;
  border-radius: 5px;
}
.c-shop-item-copy {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.571;
  font-weight: 700;
  margin-bottom: 10px;
}
.c-shop-item-pic {
  display: block;
  margin-bottom: 14px;
}
.c-shop-item-name {
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1.667;
  color: #2C3E93;
  font-weight: 700;
  margin-bottom: 14px;
}
.c-shop-item-desc {
  font-size: 1.1rem;
  letter-spacing: 0;
  line-height: 1.818;
  margin-bottom: 16px;
}
.c-shop-item-desc:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.818) * .5em);
}
@media all and (-ms-high-contrast: none) {
  .c-shop-item-desc:before {
    margin-top: 0;
  }
}
.c-shop-item-anc {
  color: #333 !important;
  border: 1px solid #000;
  width: 175px;
  height: 20px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  column-gap: 4px;
  margin-left: auto;
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1;
}
.c-shop-item-anc-arrow {
  width: 81px !important;
  height: auto;
  transition: transform 0.2s cubic-bezier(0, 0, 0, 1);
}
.c-shop-item-anc:hover .c-shop-item-anc-arrow {
  transform: translateX(6px);
}
.c-shop-spot-anc {
  background-color: #35C5CE;
  color: #fff !important;
  width: 300px;
  height: 35px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  font-size: 1.3rem;
  font-family: var(--font-m);
  font-weight: 700;
  rotate: .05deg;
  margin: 0 auto 55px;
}

@media screen and (min-width: 500px) {
  .c-sec-desc {
    font-size: 1.4rem;
    margin-bottom: 62px;
  }

  .c-base-ttl-span {
    font-size: 1.8rem;
  }
  .c-base-contents {
    row-gap: 16px;
  }
  .c-base-item {
    width: 362px;
  }
  .c-base-item-ttl {
    font-size: 1.6rem;
  }
  .c-base-item-li {
    font-size: 1.4rem;
  }
  .c-base-blk__item {
    max-width: 320px;
  }
  .c-base-blk-ttl {
    font-size: 2rem;
  }
  .c-base-blk-desc {
    font-size: 1.4rem;
  }

  .c-ip-hdg {
    font-size: 1.8rem;
  }
  .c-ip-lists {
    margin-bottom: 60px;
  }
  .c-ip-creatures__blk {
    padding: 20px;
  }
  .c-ip-creatures__p {
    font-size: 1.4rem;
  }
  .c-ip-creatures__name {
    font-size: 2rem;
  }
  .c-ip-creatures-treatment {
    font-size: 1.8rem;
  }
  .c-ip-creatures-desc {
    font-size: 1.4rem;
  }

  .c-shop-item-copy {
    font-size: 1.6rem;
  }
  .c-shop-item-name {
    font-size: 1.4rem;
  }
  .c-shop-item-desc {
    font-size: 1.2rem;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-under:not(:nth-last-of-type(1)) {
    margin-bottom: 88px;
    margin-bottom: 150px;
  }

  .c-kv {
    margin-bottom: 105px;
  }

  .c-under-nav {
    margin-bottom: 92px;
    display: flex;
    justify-content: space-between;
    max-width: 1024px;
    padding: 0 20px;
    margin: 0 auto;
    margin-bottom: 68px;
  }
  .c-under-nav__item {
    width: calc((100% + 20px) / 3 - 20px);
  }
  .c-under-nav-anch {
    height: 40px;
    padding: unset;
    font-size: 1.6rem;
    column-gap: 6px;
  }
  .c-under-nav-anch__lbl-br {
    display: none;
  }
  .c-under-nav-anch__fig {
    width: 26px;
    height: auto;
    display: block;
  }

  .c-sec-orn::before, .c-sec-orn::after {
    height: 3px;
  }
  .c-sec-orn__item {
    width: 100px !important;
  }
  .c-sec-ttl {
    font-size: 2.6rem;
    margin-bottom: 30px;
    rotate: unset;
  }
  .c-sec-desc {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.8rem;
    margin-bottom: 77px;
  }

  .c-base-ttl-span {
    font-size: 2rem;
  }
  .c-base-contents {
    flex-direction: row;
    row-gap: unset;
    column-gap: clamp(24px, 3.66032vw, 50px);
    margin-bottom: 37px;
  }
  .c-base-item-ttl {
    height: 36px;
    padding-top: unset;
    padding-bottom: unset;
    padding-left: 12px;
    display: flex;
    width: 165px;
    align-items: center;
    font-size: 1.8rem;
    border-radius: 0 18px 18px 0;
  }
  .c-base-item-li {
    font-size: 1.6rem;
  }
  .c-base-blk {
    padding: 14px;
  }
  .c-base-blk__container {
    display: flex;
  }
  .c-base-blk__unit {
    margin-top: unset;
    flex: 0 0 50%;
  }
  .c-base-blk__item:not(:last-child) {
    margin-bottom: 16px;
  }
  .c-base-blk:not(:last-child) {
    margin-bottom: 20px;
  }
  .c-base-blk-ttl {
    font-size: 2.2rem;
    padding-bottom: 12px;
    margin-bottom: 14px;
  }
  .c-base-blk-desc {
    flex: 0 0 50%;
    font-size: 1.5rem;
  }

  .c-ip-hdg {
    font-size: 2rem;
  }
  .c-ip-lists {
    margin-bottom: 70px;
  }
  .c-ip__item {
    max-width: 600px;
  }
  .c-ip__item:not(:last-child) {
    margin-bottom: 30px;
  }
  .c-ip__item-num {
    padding-right: 16px;
  }
  .c-ip__item-p {
    letter-spacing: 0.03em;
    line-height: 1.944;
    line-height: 1.994;
    font-size: 1.8rem;
  }
  .c-ip__item-p:before {
    content: '';
    display: block;
    width: 0;
    height: 0;
    margin-top: calc((1 - 1.994) * .5em);
  }
  .c-ip-creatures__blk {
    padding: 20px;
    border-radius: 10px;
  }
  .c-ip-creatures__blk:not(:last-child) {
    margin-bottom: 20px;
  }
  .c-ip-creatures__content {
    display: grid;
    column-gap: 15px;
    grid-template-rows: 36px auto;
    grid-template-areas: "pic name" "pic desc";
    padding: 24px;
  }
  .c-ip-creatures__content:last-of-type {
    padding-bottom: 24px;
  }
  .c-ip-creatures__content > picture {
    grid-area: pic;
    margin-bottom: unset;
  }
  .c-ip-creatures__p {
    grid-area: desc;
    font-size: 1.5rem;
  }
  .c-ip-creatures__name {
    grid-area: name;
    font-size: 2.2rem;
    line-height: 1;
  }
  .c-ip-creatures-treatment {
    font-size: 2rem;
    margin: 16px 0 10px;
  }
  .c-ip-creatures-desc {
    font-size: 1.5rem;
  }

  .c-shop {
    flex-direction: row;
    column-gap: 20px;
    padding-bottom: 70px;
    margin-top: 67px;
    flex-wrap: wrap;
  }
  .c-shop-item {
    flex: 0 1 calc(50% - 10px);
  }
  .c-shop-item-blk {
    display: flex;
    column-gap: 14px;
  }
  .c-shop-item-pic {
    flex: 0 0 58.4415584416%;
  }
  .c-shop-item-anc {
    color: #333 !important;
    width: 100%;
    white-space: nowrap;
    font-size: 1.1rem;
    column-gap: 2px;
  }
  .c-shop-item-anc-arrow {
    width: 30% !important;
  }
  .c-shop-spot-anc {
    width: 450px;
    height: 40px;
    font-size: 1.4rem;
    margin-bottom: unset;
  }
}
@media screen and (min-width: 1024px) {
  .c-base-blk__container {
    column-gap: 7.52032520325%;
    align-items: center;
  }
  .c-base-blk__unit {
    margin: unset;
    flex: 0 1 53.4552845528%;
    display: flex;
    column-gap: 2.5354969574%;
  }
  .c-base-blk__item {
    align-items: start;
    flex: 0 1 50%;
    padding: unset;
    margin-bottom: unset;
    column-gap: 2px;
  }
  .c-base-blk__item-pic {
    flex: 0 0 130px;
  }
  .c-base-blk__item:not(:last-child) {
    margin-bottom: unset;
  }
  .c-base-blk__txt {
    flex: 0 1 auto;
  }
  .c-base-blk-desc {
    flex: 0 0 36.3821138211%;
  }

  .c-shop-item-anc {
    column-gap: 4px;
    font-size: 1.2rem;
  }
  .c-shop-item-anc-arrow {
    width: 81px !important;
  }
  .c-shop-spot-anc {
    font-size: 1.6rem;
  }
}
#osa-ttl,
#matters-ttl,
#point-ttl {
  scroll-margin-top: 90px;
}

.p-mna--surf {
  overflow: hidden;
}

.c-common-container {
  display: flex;
  flex-direction: column;
  row-gap: 47px;
  margin-bottom: 48px;
}
.c-common-hdg {
  color: #2C3E93;
  font-size: 1.8rem;
  letter-spacing: 0;
  font-weight: bold;
  border-bottom: 3px solid #BFE3F6;
  margin-bottom: 10px;
  padding-bottom: 8px;
}
.c-common-item-fig {
  margin-bottom: 10px;
}
.c-common-item-fig figcaption {
  padding-top: 4px;
  text-align: right;
}
.c-common-img {
  width: 100% !important;
}
.c-common-txt-hdg {
  font-size: 1.5rem;
  letter-spacing: 0;
  color: #2C3E93;
  font-weight: 700;
  margin-bottom: 6px;
}
.c-common-txt-desc {
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1.75;
}
.c-common-txt-desc--space {
  margin-bottom: 18px;
}

.c-surf-more {
  margin-top: 1.5em;
  text-align: right;
}
.c-surf-more-anch {
  display: inline-flex !important;
  align-items: center;
  column-gap: 4px;
  height: 32px;
  padding: 0 8px;
  border: 1px solid #000;
}
.c-surf-more-anch__lbl {
  flex: 0 0 auto;
  padding-top: 2px;
  color: #333 !important;
  font-size: 1.2rem;
}
.c-surf-more-anch__arrow {
  flex: 0 0 auto;
  width: 81px !important;
  transition: translate 0.3s cubic-bezier(0, 0, 0, 1);
}
@media (hover) {
  .c-surf-more-anch:hover {
    opacity: 1 !important;
  }
  .c-surf-more-anch:hover .c-surf-more-anch__arrow {
    translate: 8px;
  }
}

.c-term {
  border: 5px solid #BFE3F6;
  border-radius: 10px;
  padding: 15px 15px 17px;
  margin-bottom: 30px;
}
.c-term-items {
  max-width: 460px;
  margin-left: auto;
  margin-right: auto;
}
.c-term-hdg {
  display: flex;
  justify-content: center;
  margin-bottom: 16px;
}
.c-term-hdg-span {
  display: inline-block;
  font-size: 1.8rem;
  color: #2C3E93;
  border: 2px solid #2C3E93;
  font-weight: bold;
  line-height: 1;
  padding: 3px 11px;
}
.c-term-dl {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}
.c-term-dl:first-of-type {
  margin-bottom: 16px;
}
.c-term-blk {
  display: flex;
  align-items: start;
  column-gap: 4px;
}
.c-term-dt {
  display: flex;
  align-items: center;
  column-gap: 4px;
  flex: 0 0 33%;
  font-size: 1.2rem;
  font-weight: 700;
  letter-spacing: 0;
  color: #2C3E93;
  display: flex;
  align-items: center;
}
.c-term-dt-span {
  flex: 0 1 auto;
}
.c-term-dt::after {
  content: "";
  border-top: 2px dotted #000;
  height: 1px;
  display: block;
  width: auto;
  flex: 1 1 auto;
}
.c-term-dd {
  flex: 0 0 68.29268292685%;
  letter-spacing: 0;
}
.c-term-line {
  flex: 1 0 auto;
  content: "";
  height: 1px;
  background-color: #000;
  width: 100%;
  display: block;
}

.c-chairman-fig {
  width: 60%;
  height: auto;
  margin-bottom: 14px;
  max-width: 360px;
}
.c-chairman-txt-ttl {
  font-size: 1.6rem;
  letter-spacing: 0;
  font-weight: 700;
  color: #2C3E93;
  margin-bottom: 6px;
}
.c-chairman-txt-desc {
  line-height: 1.75;
  letter-spacing: 0;
}

.c-matters {
  display: flex;
  flex-direction: column;
  row-gap: 10px;
}
.c-matters__item {
  border: 3px solid #BFE3F6;
  border-radius: 7px;
  padding: 12px 15px 16px;
}
.c-matters-hdg {
  font-size: 1.6rem;
  letter-spacing: 0;
  font-weight: 700;
  color: #2C3E93;
  padding-bottom: 6px;
  border-bottom: 1px dashed #2C3E93;
}
.c-matters-sub {
  font-size: 1.3rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  color: #2C3E93;
  padding-top: 10px;
  margin-bottom: 8px;
}
.c-matters-desc {
  font-size: 1.1rem;
  line-height: 1.733;
  letter-spacing: 0;
}
.c-matters-desc--space {
  margin-bottom: 10px;
}
.c-matters-desc:last-of-type {
  margin-bottom: 8px;
}
.c-matters-fig {
  position: relative;
}
.c-matters-fig figcaption {
  position: absolute;
  right: 4px;
  bottom: 4px;
  background-color: #fff;
}
.c-matters-img {
  width: 100% !important;
}

.c-point-hdg {
  display: flex;
  justify-content: center;
  margin-bottom: 30px;
}
.c-point-hdg-span {
  color: #2C3E93;
  font-size: 1.6rem;
  font-family: var(--font-m);
  font-weight: 700;
  rotate: 0.05deg;
  display: inline-block;
  border-bottom: 2px solid #2C3E93;
  padding: 0 4px 4px;
}
.c-point-lead {
  font-size: 1.1rem;
  letter-spacing: 0.03em;
  line-height: 1.909;
  margin-bottom: 40px;
}
.c-point__item {
  background-color: #D3E1E4;
  margin: 0 -20px;
  padding: 0 20px;
}
.c-point__item:first-of-type {
  margin-bottom: 80px;
}
.c-point__item:nth-of-type(2) {
  margin-bottom: 50px;
}
.c-point-top {
  position: relative;
}
.c-point-ttl {
  width: 50px;
  position: relative;
  z-index: 10;
  position: absolute;
  left: 13px;
  top: -28px;
}
.c-point-img {
  width: 100% !important;
}
.c-point-fig {
  margin: 0 -20px;
}
.c-point-photos {
  margin-top: -17px;
  margin-bottom: 22px;
  display: flex;
  padding: 0 7px;
}
.c-point-photos-fig {
  flex: 1 1 auto;
}
.c-point-photos-fig:nth-of-type(2) {
  margin-top: 26px;
  margin-left: -7px;
}
.c-point-photos-img {
  width: 100% !important;
}
.c-point-bottom {
  padding-bottom: 36px;
}
.c-point-bottom-ttl {
  font-size: 2.2rem;
  letter-spacing: -0.02em;
  font-family: var(--font-m);
  font-weight: 700;
  line-height: 1.364;
  color: #2C3E93;
  margin-bottom: 15px;
}
.c-point-bottom-desc {
  font-size: 1.1rem;
  letter-spacing: 0;
  line-height: 1.892;
}
.c-point-bottom-desc--space {
  margin-bottom: 12px;
}

.c-shop-item-img {
  width: 100% !important;
}

@media screen and (min-width: 500px) {
  .c-common-hdg {
    font-size: 2.2rem;
  }
  .c-common-txt-hdg {
    font-size: 1.8rem;
  }
  .c-common-txt-desc {
    font-size: 1.4rem;
  }
  .c-common-txt-desc--space {
    margin-bottom: 21px;
  }

  .c-term {
    padding: 18px 20px 38px;
    margin-bottom: 50px;
  }
  .c-term-hdg {
    margin-bottom: 24px;
  }
  .c-term-hdg-span {
    font-size: 2.2rem;
  }
  .c-term-dt {
    font-size: 1.4rem;
  }
  .c-term-dd {
    font-size: 1.4rem;
  }

  .c-chairman-txt-ttl {
    font-size: 2rem;
  }
  .c-chairman-txt-desc {
    font-size: 1.3rem;
  }

  .c-matters {
    row-gap: 20px;
  }
  .c-matters__item {
    padding: 20px 20px 24px;
  }
  .c-matters-hdg {
    font-size: 2.2rem;
    padding-bottom: 10px;
  }
  .c-matters-sub {
    padding-top: 15px;
    font-size: 1.8rem;
    margin-bottom: 9px;
  }
  .c-matters-desc {
    font-size: 1.5rem;
  }
  .c-matters-desc--space {
    margin-bottom: 14px;
  }
  .c-matters-desc:last-of-type {
    margin-bottom: 24px;
  }

  .c-point-hdg-span {
    font-size: 2rem;
    padding: 0 0 6px;
  }
  .c-point-lead {
    font-size: 1.6rem;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-point-bottom-ttl {
    font-size: 2.6rem;
  }
  .c-point-bottom-desc {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 768px) {
  .c-sec-ttl--mb60 {
    margin-bottom: 60px;
  }

  .c-sec-desc--mx-600 {
    max-width: 600px;
  }

  .c-common {
    margin-bottom: unset;
  }
  .c-common-container {
    margin-bottom: 80px;
    row-gap: 56px;
  }
  .c-common-hdg {
    font-size: 2.6rem;
    padding-bottom: 6px;
    border-width: 5px;
    margin-bottom: 12px;
  }
  .c-common-item-fig {
    margin-bottom: 24px;
    float: left;
    display: block;
    width: 48.6328125%;
    margin-right: 26px;
  }
  .c-common-img {
    height: 100%;
  }
  .c-common-txt-hdg {
    padding-top: 8px;
    font-size: 2.2rem;
    line-height: 1.455;
    margin-bottom: 18px;
  }
  .c-common-txt-desc {
    font-size: 1.5rem;
    line-height: 1.733;
  }
  .c-common-txt-desc--space {
    margin-bottom: 23px;
  }

  .c-term {
    margin-bottom: 80px;
    border-width: 10px;
    width: calc(100% - 80px);
    margin-left: auto;
    margin-right: auto;
    border-radius: 20px;
    padding: 18px 22px 38px;
  }
  .c-term-hdg {
    margin-bottom: 30px;
  }
  .c-term-hdg-span {
    letter-spacing: 0;
    height: 40px;
    font-size: 2.6rem;
    padding: 6px 14px;
  }
  .c-term-dt {
    font-size: 1.6rem;
  }
  .c-term-dd {
    font-size: 1.6rem;
  }

  .c-chairman {
    display: flex;
    column-gap: 30px;
  }
  .c-chairman-txt-ttl {
    margin-bottom: 16px;
    font-size: 2.6rem;
  }
  .c-chairman-txt-desc {
    font-size: 1.5rem;
  }

  .c-matters {
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 24px;
  }
  .c-matters__item {
    display: flex;
    flex-direction: column;
    flex: 0 0 calc(50% - 12px);
  }
  .c-matters__item--space {
    align-self: flex-start;
  }
  .c-matters-desc--space {
    margin-bottom: 18px;
  }
  .c-matters-desc:last-of-type {
    margin-bottom: 20px;
  }
  .c-matters-fig {
    margin-top: auto;
  }

  .c-point-lead {
    font-size: 1.8rem;
  }
  .c-point__item {
    background-color: #fff;
    display: flex;
    padding: unset;
    margin: unset;
    column-gap: 24px;
  }
  .c-point__item:nth-of-type(2) {
    flex-direction: row-reverse;
  }
  .c-point__item:nth-of-type(2) .c-point-ttl {
    left: unset;
    right: 40px;
  }
  .c-point__item:nth-of-type(2) .c-point-bottom {
    margin-right: -9.9609375%;
    margin-left: unset;
  }
  .c-point-top {
    margin-top: 28px;
    position: relative;
    flex: 0 0 48.828125%;
  }
  .c-point-ttl {
    width: clamp(50px, 9.76563vw, 100px);
  }
  .c-point-fig {
    margin: unset;
  }
  .c-point-bottom {
    border-radius: 20px;
    background-color: rgba(211, 225, 228, 0.8);
    padding: 25px 32px 32px;
    position: relative;
    z-index: 10;
    flex: 1 1 auto;
    margin-left: -9.9609375%;
  }
  .c-point-bottom-ttl {
    font-size: 3.2rem;
  }
  .c-point-bottom-desc {
    font-size: 1.5rem;
  }
  .c-point-bottom-desc--space {
    margin-bottom: 14px;
  }

  .c-shop-item--surf .c-shop-item-desc {
    line-height: 1.667;
  }

  .c-shop-item-pic--surf {
    flex: 0 0 58.1896551724%;
  }
}
@media screen and (min-width: 1024px) {
  .c-term {
    width: 100%;
  }
  .c-term-items {
    max-width: unset;
    margin: unset;
    display: flex;
    column-gap: clamp(32px, 3.80673vw, 52px);
  }
  .c-term-dl {
    flex: 1 1 50%;
    row-gap: 10px;
  }
  .c-term-dl:first-of-type {
    margin-bottom: unset;
  }
  .c-term-dt::after {
    border-width: 3px;
  }

  .c-point__item {
    justify-content: center;
    column-gap: unset;
  }
  .c-point__item:first-of-type {
    margin-bottom: clamp(200px, 24.89019vw, 340px);
  }
  .c-point__item:nth-of-type(2) {
    margin-bottom: clamp(180px, 16.25183vw, 222px);
  }
  .c-point__item:nth-of-type(2) .c-point-bottom {
    margin-right: -9.9609375%;
    margin-left: unset;
  }
  .c-point__item:nth-of-type(2) .c-point-photos {
    width: 100%;
    right: -150px;
    left: unset;
  }
  .c-point__item:nth-of-type(2) .c-point-photos-fig {
    margin-top: 70px;
    margin-left: -20px;
  }
  .c-point__item:nth-of-type(2) .c-point-photos-fig:nth-child(2) {
    margin-top: unset;
  }
  .c-point-top {
    margin-top: 48px;
    flex: 0 0 64.453125%;
  }
  .c-point-ttl {
    top: -62px;
    width: 100px;
    left: 40px;
  }
  .c-point-fig {
    margin: unset;
  }
  .c-point-photos {
    position: absolute;
    padding: unset;
    top: 500px;
    left: -64px;
  }
  .c-point-photos-fig {
    flex: 0 0 300px;
  }
  .c-point-photos-fig:nth-of-type(2) {
    margin-top: 70px;
    margin-left: -20px;
  }
  .c-point-bottom {
    margin-left: -9.9609375%;
    flex: 0 0 48.828125%;
  }
  .c-point-bottom-desc {
    font-size: 1.5rem;
  }
}
#ecology,
#flow,
#report {
  scroll-margin-top: 90px;
}

.c-under-nav-anch__lbl--f10 {
  font-size: 1rem;
  white-space: nowrap;
}

.c-common-container--whale {
  margin-bottom: 72px;
}
.c-common-pattern {
  padding: 0 11px;
}
.c-common-pattern-item:not(:last-of-type) .c-common-pattern-desc {
  margin-bottom: 35px;
}
.c-common-pattern-fig {
  margin-bottom: 10px;
}
.c-common-pattern-img {
  width: 100% !important;
}
.c-common-pattern-ttl {
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: 0;
  color: #2C3E93;
  margin-bottom: 10px;
}
.c-common-pattern-desc {
  letter-spacing: unset;
  line-height: 1.75;
}
.c-common-tour-anc {
  background-color: #2C3E93;
  color: #fff !important;
  font-family: var(--font-m);
  font-weight: 700;
  rotate: 0.05deg;
  width: 260px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 36px;
  font-size: 1.4rem;
  letter-spacing: -0.025em;
  margin-left: auto;
  margin-top: 20px;
  column-gap: 8px;
}
.c-common-tour-anc:hover .c-common-tour-anc-img {
  transform: translateX(4px);
}
.c-common-tour-anc-img {
  width: 12px !important;
  transition: transform 0.2s cubic-bezier(0, 0, 0, 1);
}

.c-fun-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 10;
}
.c-fun-ttl-span {
  background-color: #fff;
  border: 2px solid #2C3E93;
  font-size: 1.8rem;
  color: #2C3E93;
  font-weight: 700;
  height: 27px;
  line-height: 1;
  display: flex;
  padding: 3px 6px 0;
  align-items: center;
  letter-spacing: 0;
}
.c-fun-lists {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
  margin-top: -16px;
  border: 4px solid #2C3E93;
  border-radius: 8px;
  padding: 42px 18px 34px;
}
.c-fun-item {
  display: flex;
  column-gap: 12px;
  align-items: baseline;
  letter-spacing: 0;
  font-size: 1.4rem;
  line-height: 1.586;
  row-gap: 10px;
}
.c-fun-item:not(:last-of-type) {
  margin-bottom: 6px;
}
.c-fun-item-num {
  color: #2C3E93;
  font-weight: 700;
}

.c-report {
  margin-bottom: 28px;
}
.c-report-item-fig {
  margin-bottom: 16px;
}
.c-report-item-img {
  border-radius: 15px;
  width: 100% !important;
}
.c-report-item:last-child .c-report-txt-desc:last-child {
  margin-bottom: unset;
}
.c-report-txt {
  font-size: 1.2rem;
  letter-spacing: 0;
  line-height: 1.75;
}
.c-report-txt-desc--space {
  margin-bottom: 14px;
}
.c-report-txt-desc:last-child {
  margin-bottom: 28px;
}

.c-report-outro {
  margin-bottom: 30px;
}
.c-report-outro-fig {
  margin-bottom: 4px;
}
.c-report-outro-img {
  width: 100% !important;
}
.c-report-outro-name {
  font-size: 1rem;
  letter-spacing: 0.03em;
  text-align: right;
}

.c-report-asso {
  background-color: #DAECFA;
  padding: 15px 10px;
  border-radius: 10px 10px 0 0;
}
.c-report-asso-ttl {
  font-size: 2.1rem;
  letter-spacing: 0;
  text-align: center;
  font-family: var(--font-m);
  font-weight: 700;
  color: #2C3E93;
  margin-bottom: 32px;
}
.c-report-asso-dl:first-of-type {
  margin-bottom: 26px;
}
.c-report-asso-item:not(:last-child) {
  margin-bottom: 26px;
}
.c-report-asso-dt {
  font-size: 1.3rem;
  letter-spacing: 0;
  color: #2C3E93;
  margin-bottom: 8px;
  text-indent: -0.6em;
}
.c-report-asso-dd, .c-report-asso-ul {
  font-size: 1.3rem;
  letter-spacing: 0;
  line-height: 1.769;
}
.c-report-asso-info {
  padding: 15px 10px;
  background-color: #2C3E93;
  color: #fff;
  border-radius: 0 0 10px 10px;
}
.c-report-asso-info-dl {
  margin-bottom: 28px;
  font-size: 1.5rem;
}
.c-report-asso-info-dt {
  margin-bottom: 8px;
  position: relative;
}
.c-report-asso-info-dt--square {
  padding-left: 1em;
}
.c-report-asso-info-dt--square::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background-color: #fff;
  position: absolute;
  top: 5px;
  left: 0;
}
.c-report-asso-info-bottom {
  display: flex;
  justify-content: end;
}
.c-report-asso-info-anc {
  color: #B0B0B0 !important;
  font-size: 1.1rem;
  display: inline-block !important;
}
.c-report-asso-info-anc:hover {
  color: #fff !important;
}

@media screen and (min-width: 500px) {
  .c-under-nav-anch__lbl--f10 {
    font-size: 1.1rem;
  }

  .c-common-pattern-ttl {
    font-size: 2rem;
  }
  .c-common-pattern-desc {
    font-size: 1.4rem;
  }
}
@media screen and (min-width: 768px) {
  .c-under-nav-anch__lbl--f10 {
    font-size: 1.6rem;
  }

  .c-sec-ttl--flow {
    margin-bottom: 60px;
  }

  .c-common-hdg--pattern {
    margin-bottom: 24px;
  }
  .c-common-item--flex {
    display: flex;
  }
  .c-common-item--flex .c-common-item-fig {
    float: unset;
    flex: 0 0 48.6328125%;
    margin-bottom: unset;
  }
  .c-common-item--flex .c-common-txt {
    display: flex;
    flex-direction: column;
  }
  .c-common-pattern {
    padding: unset;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(270px, 1fr));
    column-gap: 20px;
  }
  .c-common-pattern-ttl {
    font-size: 2.2rmm;
    font-size: 2rem;
  }
  .c-common-pattern-desc {
    font-size: 1.5rem;
  }
  .c-common .c-common-tour-anc {
    margin-top: auto;
  }

  .c-fun {
    margin-top: 26px;
  }
  .c-fun-ttl-span {
    height: 40px;
    font-size: 2.6rem;
    padding-left: 12px;
    padding-right: 12px;
    border-width: 3px;
  }
  .c-fun-lists {
    margin-top: -26px;
    border-radius: 18px;
    border-width: 8px;
    padding: 50px 50px 37px;
  }
  .c-fun-item {
    font-size: 1.6rem;
    line-height: 1.586;
    margin-bottom: 8px;
  }

  .c-report {
    display: flex;
    flex-direction: column;
    row-gap: clamp(12px, 2.63543vw, 36px);
  }
  .c-report-item {
    display: flex;
    justify-content: space-between;
    align-items: start;
  }
  .c-report-item--wide {
    display: block;
  }
  .c-report-item--wide .c-report-item-fig {
    margin-bottom: 18px;
  }
  .c-report-item:nth-child(even) {
    flex-direction: row-reverse;
  }
  .c-report-item:nth-of-type(10) {
    flex-direction: row;
  }
  .c-report-item:nth-of-type(11) {
    flex-direction: row-reverse;
  }
  .c-report-item-fig {
    margin-bottom: unset;
    flex: 0 0 48.6328125%;
  }
  .c-report-item-img {
    border-radius: 20px;
  }
  .c-report-txt {
    flex: 0 0 48.6328125%;
    align-self: center;
    font-size: 1.5rem;
  }
  .c-report-txt-desc--space {
    margin-bottom: 18px;
  }
  .c-report-txt-desc:last-child {
    margin-bottom: unset;
  }

  .c-report {
    margin-bottom: 40px;
  }

  .c-report-outro {
    margin-bottom: 100px;
  }
  .c-report-outro-fig {
    margin-bottom: 12px;
  }
  .c-report-outro-name {
    font-size: 1.2rem;
  }

  .c-report-asso {
    padding: 36px 62px;
    border-radius: 20px 20px 0 0;
  }
  .c-report-asso-ttl {
    margin-bottom: 26px;
    text-align: left;
    font-size: 2.6rem;
  }
  .c-report-asso-blk {
    display: flex;
    column-gap: 9.765625%;
  }
  .c-report-asso-dl {
    flex: 0 1 50%;
  }
  .c-report-asso-dl:first-of-type {
    margin-bottom: unset;
  }
  .c-report-asso-item:not(:last-child) {
    margin-bottom: 32px;
  }
  .c-report-asso-dt {
    font-size: 1.5rem;
  }
  .c-report-asso-dd, .c-report-asso-ul {
    font-size: 1.5rem;
  }
  .c-report-asso-info {
    padding: 26px 62px 20px;
    border-radius: 0 0 20px 20px;
    display: flex;
    align-items: end;
    justify-content: space-between;
  }
  .c-report-asso-info-dl {
    margin-bottom: unset;
  }
  .c-report-asso-info-dt::before {
    width: 12px;
    height: 12px;
  }
  .c-report-asso-info-anc {
    font-size: 1.5rem;
  }
}

/*# sourceMappingURL=style.css.map */
