@charset "UTF-8";
/*----------------------------------------------
variable
----------------------------------------------*/
/* 1920pxデザイン時のpxからvwを計算 ------------*/
/* 1366pxデザイン時のpxからvwを計算 ------------*/
/* 393pxデザイン時のpxからvwを計算 ------------*/
/* calc内で使いたい場合: calc( 100% - vw(10) ); */
/*
  Josh's Custom CSS Reset
  https://www.joshwcomeau.com/css/custom-css-reset/
*/
*, *::before, *::after {
  box-sizing: border-box; }

* {
  margin: 0; }

html, body {
  height: 100%; }

body {
  line-height: 1.5;
  -webkit-font-smoothing: antialiased; }

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%; }

input, button, textarea, select {
  font: inherit; }

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word; }

#root, #__next {
  isolation: isolate; }

/*----------------------------------------------
SCSS
----------------------------------------------*/
:root {
  --mt: 0;
  --mb: 0;
  --ml: 0;
  --mr: 0;
  --spmt: 0;
  --spmb: 0;
  --spml: 0;
  --spmr: 0;
  --pt: 0;
  --pb: 0;
  --pl: 0;
  --pr: 0;
  --sppt: 0;
  --sppb: 0;
  --sppl: 0;
  --sppr: 0;
  --fs: 16px;
  --spfs: 4.2666666667vw; }

html {
  font-size: 1px; }
  @media (min-width: 768px) and (max-width: 1365px) {
    html {
      font-size: 0.0732064422vw; } }
  @media (max-width: 767px) {
    html {
      font-size: 0.2777777778vw; } }

html, body {
  margin: 0;
  padding: 0;
  color: #303030;
  font-family: "Noto Serif", serif;
  font-weight: 400;
  font-style: normal;
  position: relative;
  -webkit-text-size-adjust: 100%; }

* {
  box-sizing: border-box; }

html, body, #wrapper {
  min-height: 100%; }

body.overlay {
  height: 100vh;
  overflow: hidden; }

#wrapper {
  z-index: 1;
  background: #fff; }

figure {
  margin: 0; }
  @media (max-width: 767px) {
    figure {
      width: 100% !important;
      text-align: center; } }

figcaption {
  margin-top: 5px;
  font-size: 1.3rem;
  color: #999999; }
  @media (max-width: 767px) {
    figcaption {
      margin-top: 1.3333333333vw;
      font-size: 3.4666666667vw; } }

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  backface-visibility: hidden; }

.btn.focus, .btn:focus, .btn:hover {
  outline: none; }

a, a img, button {
  transition: all 0.2s ease-out 0s;
  will-change: transform; }

section {
  padding: 50px 0; }
  @media (max-width: 767px) {
    section {
      padding: 13.3333333333vw 0; } }

a {
  text-decoration: none; }
  a:link {
    color: #0042ff; }
  a:hover {
    color: #ff2400; }
    a:hover img {
      opacity: .8; }
  a:visited {
    color: #0042ff; }

iframe {
  max-width: 100%; }

/*----------------------------------------------
module
----------------------------------------------*/
/*--- スタイル直書きでPCとSPで指定変える用スタイル ---*/
/*--- ex. <div class="efs" style="--fs: 16px; --spfs: 4.2666666667vw;">Text</div> ---*/
.em {
  margin: var(--mt) var(--mr) var(--mb) var(--ml) !important; }
  @media (max-width: 767px) {
    .em {
      margin: var(--spmt) var(--spmr) var(--spmb) var(--spml) !important; } }

.ep {
  padding: var(--pt) var(--pr) var(--pb) var(--pl) !important; }
  @media (max-width: 767px) {
    .ep {
      padding: var(--sppt) var(--sppr) var(--sppb) var(--sppl) !important; } }

.efs {
  font-size: var(--fs) !important; }
  @media (max-width: 767px) {
    .efs {
      font-size: var(--spfs) !important; } }

.emt {
  margin-top: var(--mt) !important; }
  @media (max-width: 767px) {
    .emt {
      margin-top: var(--spmt) !important; } }

.emb {
  margin-bottom: var(--mb) !important; }
  @media (max-width: 767px) {
    .emb {
      margin-bottom: var(--spmb) !important; } }

.eml {
  margin-left: var(--ml) !important; }
  @media (max-width: 767px) {
    .eml {
      margin-left: var(--spml) !important; } }

.emr {
  margin-right: var(--mr) !important; }
  @media (max-width: 767px) {
    .emr {
      margin-right: var(--spmr) !important; } }

.ept {
  padding-top: var(--pt) !important; }
  @media (max-width: 767px) {
    .ept {
      padding-top: var(--sppt) !important; } }

.epb {
  padding-bottom: var(--pb) !important; }
  @media (max-width: 767px) {
    .epb {
      padding-bottom: var(--sppb) !important; } }

.epl {
  padding-left: var(--pl) !important; }
  @media (max-width: 767px) {
    .epl {
      padding-left: var(--sppl) !important; } }

.epr {
  padding-right: var(--pr) !important; }
  @media (max-width: 767px) {
    .epr {
      padding-right: var(--sppr) !important; } }

.txtRed {
  color: #F00; }

.txtLeft {
  text-align: left; }

.txtCenter {
  text-align: center; }

.txtRight {
  text-align: right; }

.txtSemiBold {
  font-weight: 600 !important; }

.txtBold {
  font-weight: 700 !important; }

.txtMidium {
  font-weight: 500 !important; }

.pconly {
  display: block !important; }
  @media (max-width: 767px) {
    .pconly {
      display: none !important; } }

.sponly {
  display: none !important; }
  @media (max-width: 767px) {
    .sponly {
      display: block !important; } }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }

.youtubeIframe {
  aspect-ratio: 16 / 9; }

/*

Formのスタイル

*/
form .sizeXS {
  max-width: 80px; }

form .sizeS {
  max-width: 150px; }

form .sizeM {
  max-width: 300px; }

form .sizeL {
  max-width: 500px; }

form .sizeXL {
  max-width: 100%; }

form .required {
  color: red; }

form input[type="text"],
form input[type="email"],
form textarea,
form select {
  display: block;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  width: 100% !important; }

form textarea {
  height: auto; }

form button, form input[type="button"], form input[type="reset"], form input[type="submit"] {
  width: 100%; }

td label {
  font-weight: normal;
  margin-right: 10px; }

.block {
  display: block; }

#pageHead {
  position: absolute;
  z-index: 10000;
  top: 0;
  left: 0;
  width: 100%;
  height: 60rem; }
  #pageHead .container {
    height: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: flex-end;
    gap: 30rem; }
  #pageHead .headMenu {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 20rem;
    align-items: center; }
    @media (max-width: 767px) {
      #pageHead .headMenu {
        display: none; } }
  #pageHead .headMenuItem a {
    font-size: 16rem;
    font-weight: bold;
    color: #fff;
    position: relative; }
    #pageHead .headMenuItem a::after {
      content: "";
      width: 40rem;
      height: 5rem;
      display: block;
      position: absolute;
      bottom: -15rem;
      left: 50%;
      transform: translate(-50%, 3rem);
      background: #fff;
      border-radius: 30rem;
      opacity: 0;
      transition: all 0.2s ease-out 0s; }
    #pageHead .headMenuItem a:hover::after {
      opacity: 1;
      transform: translate(-50%, 0); }
  #pageHead .headBtn {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    height: 100%;
    padding: 0; }
  #pageHead .headBtn__tel {
    height: 100%; }
    #pageHead .headBtn__tel a {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      background: #17512B;
      height: 100%;
      font-size: 16rem;
      font-weight: bold;
      gap: 12rem;
      padding: 0 15rem;
      align-items: center;
      justify-content: center;
      color: #fff;
      border: 3rem solid #17512B; }
      @media (max-width: 767px) {
        #pageHead .headBtn__tel a {
          font-size: 10rem;
          padding: 0 10rem; } }
      #pageHead .headBtn__tel a::before {
        content: "";
        background-image: url("../images/icon-tel.svg");
        background-size: cover;
        width: 17.14rem;
        height: 17.14rem; }
        @media (max-width: 767px) {
          #pageHead .headBtn__tel a::before {
            width: 10rem;
            height: 10rem; } }
      #pageHead .headBtn__tel a:hover {
        border-color: #fff; }
  #pageHead .headBtn__hp {
    height: 100%; }
    #pageHead .headBtn__hp a {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      background: #1b3d14;
      height: 100%;
      font-size: 16rem;
      font-weight: bold;
      gap: 12rem;
      padding: 0 15rem;
      align-items: center;
      justify-content: center;
      color: #fff;
      border: 3rem solid #1b3d14; }
      @media (max-width: 767px) {
        #pageHead .headBtn__hp a {
          font-size: 10rem;
          padding: 0 10rem; } }
      #pageHead .headBtn__hp a::before {
        content: "";
        background-image: url("../images/icon-hp.svg");
        background-size: cover;
        width: 15rem;
        height: 15rem; }
        @media (max-width: 767px) {
          #pageHead .headBtn__hp a::before {
            width: 10rem;
            height: 10rem; } }
      #pageHead .headBtn__hp a:hover {
        border-color: #fff; }
  #pageHead .headBtn__reserve {
    height: 100%; }
    #pageHead .headBtn__reserve a {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      padding: 0 15rem;
      background: #3CB371;
      height: 100%;
      font-size: 16rem;
      font-weight: bold;
      gap: 12rem;
      align-items: center;
      justify-content: center;
      color: #fff;
      border: 3rem solid #3CB371; }
      @media (max-width: 767px) {
        #pageHead .headBtn__reserve a {
          font-size: 10rem;
          padding: 0 10rem; } }
      #pageHead .headBtn__reserve a::before {
        content: "";
        background-image: url("../images/icon-calendar.svg");
        background-size: cover;
        width: 15rem;
        height: 17.14rem; }
        @media (max-width: 767px) {
          #pageHead .headBtn__reserve a::before {
            width: 10rem;
            height: 12rem; } }
      #pageHead .headBtn__reserve a:hover {
        border-color: #fff; }

#pageFoot {
  background: #213B03;
  padding: 30rem 0 15rem;
  margin-top: 80rem; }
  @media (max-width: 767px) {
    #pageFoot {
      margin-top: 70rem; } }
  #pageFoot .container {
    max-width: 1206rem;
    padding: 0 20rem;
    margin: 0 auto;
    text-align: center; }
    @media (max-width: 767px) {
      #pageFoot .container {
        max-width: 100%;
        padding: 0 15rem; } }
  #pageFoot .logo {
    display: block;
    width: 175.37rem;
    margin: 0 auto 20rem; }
    #pageFoot .logo:hover {
      opacity: 0.8; }
    #pageFoot .logo img {
      width: 100%; }
  #pageFoot .info {
    text-align: center;
    color: #fff;
    font-size: 16rem; }
  #pageFoot hr {
    background: #fff;
    border: none;
    height: 1rem;
    margin: 30rem 0 15rem; }
  #pageFoot .small {
    display: block;
    text-align: center;
    color: #fff;
    font-size: 12rem; }

.mainVisual {
  height: 100vh;
  min-height: 500rem;
  position: relative;
  z-index: 0; }
  .mainVisual .container {
    max-width: 1166rem;
    margin: 0 auto; }
  .mainVisual .videoWrap {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden; }
    .mainVisual .videoWrap::before {
      content: "";
      width: 100%;
      height: 100%;
      background: #000;
      opacity: 0.35;
      z-index: -1;
      display: block;
      position: absolute;
      top: 0;
      left: 0; }
    .mainVisual .videoWrap video {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
      transform: translate(-50%, -50%);
      z-index: -2; }
  .mainVisual .logo {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    transform: translate(-50%, -30%);
    opacity: 0;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
    transition-delay: 0.5s; }
    .mainVisual .logo.is-inview {
      opacity: 1;
      transform: translate(-50%, -50%); }
    .mainVisual .logo img {
      width: 400rem; }

#wrapper {
  background: #D5DBCD;
  position: relative; }

.sec {
  padding: 150rem 0 100rem; }
  @media (max-width: 767px) {
    .sec {
      padding: 100rem 0 60rem; } }
  .sec .container {
    max-width: 1206rem;
    padding: 0 20rem;
    margin: 0 auto; }
    @media (max-width: 767px) {
      .sec .container {
        max-width: 100%;
        padding: 0 15rem; } }

.titleArea {
  position: relative; }
  .titleArea.is-inview .enTitle {
    transform: translate(0, 0); }
    .titleArea.is-inview .enTitle .mask {
      transform: translate(0, 0); }
  .titleArea.is-inview .jpTitle {
    transform: translate(0, 0); }
    .titleArea.is-inview .jpTitle .mask {
      transform: translate(0, 0); }
  .titleArea.-type2 .enTitle {
    left: initial;
    right: 0; }
  .titleArea.-type2 .jpTitle {
    text-align: right;
    margin-left: auto;
    margin-right: 210rem; }
    @media (max-width: 767px) {
      .titleArea.-type2 .jpTitle {
        margin-right: 110rem; } }

.enTitle {
  font-family: "Roboto", sans-serif;
  font-style: italic;
  font-weight: 900;
  color: #fff;
  font-size: 100rem;
  letter-spacing: 0.1em;
  line-height: calc(129/100);
  position: absolute;
  text-transform: uppercase;
  position: absolute;
  left: 0;
  bottom: 3rem;
  overflow: hidden;
  transform: translate(-110%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s; }
  .enTitle .mask {
    display: block;
    transform: translate(110%, 0);
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s; }
  @media (max-width: 767px) {
    .enTitle {
      font-size: 75rem;
      letter-spacing: 0; } }
  .enTitle .pconly {
    display: inline-block !important; }
    @media (max-width: 767px) {
      .enTitle .pconly {
        display: none !important; } }

.jpTitle {
  display: table;
  font-size: 36rem;
  font-family: "Noto Serif", serif;
  text-shadow: 0 3rem 6rem rgba(0, 0, 0, 0.16);
  position: relative;
  margin: 0 0 50rem;
  margin-left: 220rem;
  overflow: hidden;
  transform: translate(-110%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  transition-delay: 0.5s; }
  @media (max-width: 767px) {
    .jpTitle {
      font-size: 32rem;
      margin-left: 80rem; } }
  .jpTitle .mask {
    display: block;
    transform: translate(110%, 0);
    transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
    transition-delay: 0.5s; }

p {
  font-size: 18rem;
  line-height: 1.5; }
  p + p {
    margin-top: 1.5em; }

.about {
  background: #F4F2ED; }
  .about .aboutColumn {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 68rem; }
    @media (max-width: 767px) {
      .about .aboutColumn {
        flex-direction: column;
        gap: 30rem; } }
    .about .aboutColumn .img {
      width: 435rem; }
      @media (max-width: 767px) {
        .about .aboutColumn .img {
          width: 100%; } }
      .about .aboutColumn .img img {
        width: 100%;
        filter: drop-shadow(0 3rem 6rem rgba(0, 0, 0, 0.16)); }
    .about .aboutColumn .textArea {
      width: 663rem; }
      @media (max-width: 767px) {
        .about .aboutColumn .textArea {
          width: 100%; } }
      .about .aboutColumn .textArea h3 {
        font-size: 24rem;
        font-weight: bold;
        line-height: calc(40/24);
        margin: 0 0 30rem; }
    .about .aboutColumn p {
      line-height: calc(34/18); }

.news {
  position: relative;
  z-index: 0; }
  .news::after {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("../images/bg_overlay.png");
    background-size: cover;
    background-position: top center;
    mix-blend-mode: overlay;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    z-index: -1; }
  .news .newsList {
    padding: 0; }
    .news .newsList.is-inview .newsItem {
      opacity: 1;
      transform: none; }
  .news .newsItem {
    background: #fff;
    border-radius: 10rem;
    box-shadow: 0 3rem 6rem rgba(0, 0, 0, 0.16);
    padding: 25rem 30rem;
    opacity: 0;
    transform: translateY(30rem);
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s; }
    .news .newsItem + .newsItem {
      margin-top: 30rem; }
    .news .newsItem:nth-of-type(1) {
      transition-delay: 0; }
    .news .newsItem:nth-of-type(2) {
      transition-delay: 0.3s; }
    .news .newsItem:nth-of-type(3) {
      transition-delay: 0.6s; }
  .news .newsDate {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 11rem;
    align-items: center;
    font-size: 18rem;
    line-height: calc(26/18);
    margin: 0 0 15rem; }
    .news .newsDate::before {
      content: "";
      background-image: url("../images/icon-calendar-green.svg");
      background-size: cover;
      width: 18.09rem;
      height: 20.68rem;
      display: block; }
  .news .newsTitle {
    font-size: 22rem;
    font-weight: bold;
    margin: 0 0 15rem; }
  .news p {
    font-size: 18rem; }
    .news p a {
      color: #374231;
      text-decoration: underline;
      font-weight: 500; }
      .news p a:hover {
        text-decoration: none; }

.menu {
  background: #F4F2ED; }
  .menu h3 {
    font-size: 24rem;
    font-weight: bold;
    margin: 50rem 0 30rem;
    line-height: calc(40/24); }
  .menu .menuColumn {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 40rem; }
    @media (max-width: 767px) {
      .menu .menuColumn {
        flex-direction: column-reverse;
        gap: 20rem; } }
    .menu .menuColumn.-reverse {
      flex-direction: row-reverse; }
      @media (max-width: 767px) {
        .menu .menuColumn.-reverse {
          flex-direction: column-reverse; } }
    .menu .menuColumn .img {
      width: calc((100% - 40rem)/2);
      flex: 1; }
      @media (max-width: 767px) {
        .menu .menuColumn .img {
          width: 100%; } }
      .menu .menuColumn .img img {
        width: 100%;
        filter: drop-shadow(0 3rem 6rem rgba(0, 0, 0, 0.16)); }
    .menu .menuColumn .tableArea {
      width: calc((100% - 40rem)/2); }
      @media (max-width: 767px) {
        .menu .menuColumn .tableArea {
          width: 100%; } }
  .menu .note {
    font-size: 14rem;
    text-align: right;
    margin-top: 20rem; }

.menuTable {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed; }
  .menuTable tr th, .menuTable tr td {
    border: 1rem solid #000;
    font-size: 18rem;
    padding: 15rem 15rem; }
  .menuTable tr th {
    background: #657355;
    color: #fff;
    width: 40%; }
  .menuTable tr td {
    text-align: right;
    background: #fff; }

.information {
  position: relative;
  z-index: 0; }
  .information::after {
    content: "";
    width: 100%;
    height: 100%;
    background-image: url("../images/bg_overlay.png");
    background-size: cover;
    background-position: top center;
    mix-blend-mode: overlay;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    z-index: -1; }
  .information .informationColumn {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 40rem; }
    @media (max-width: 767px) {
      .information .informationColumn {
        flex-direction: column;
        gap: 20rem; } }
    .information .informationColumn .img {
      width: calc((100% - 40rem)/2); }
      @media (max-width: 767px) {
        .information .informationColumn .img {
          width: 100%; } }
      .information .informationColumn .img img {
        width: 100%;
        filter: drop-shadow(0 3rem 6rem rgba(0, 0, 0, 0.16)); }
    .information .informationColumn .tableArea {
      width: calc((100% - 40rem)/2); }
      @media (max-width: 767px) {
        .information .informationColumn .tableArea {
          width: 100%; } }
  .information .mapWrap {
    margin-top: 50rem;
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 8; }
    @media (max-width: 767px) {
      .information .mapWrap {
        margin-top: 20rem;
        aspect-ratio: 16 / 12; } }
    .information .mapWrap iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      border-radius: 10rem;
      filter: drop-shadow(0 3rem 6rem rgba(0, 0, 0, 0.16)); }

.gallery {
  background: #F4F2ED; }
  .gallery .galleryList {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 40rem 28rem;
    flex-wrap: wrap; }
    .gallery .galleryList.is-inview .galleryItem {
      opacity: 1;
      transform: none; }
    @media (max-width: 767px) {
      .gallery .galleryList {
        gap: 30rem; } }
  .gallery .galleryItem {
    width: calc((100% - 56rem)/3);
    opacity: 0;
    transform: translateY(30rem);
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s; }
    .gallery .galleryItem:nth-of-type(1) {
      transition-delay: 0; }
    .gallery .galleryItem:nth-of-type(2) {
      transition-delay: 0.3s; }
    .gallery .galleryItem:nth-of-type(3) {
      transition-delay: 0.6s; }
    .gallery .galleryItem:nth-of-type(4) {
      transition-delay: 0.9s; }
    .gallery .galleryItem:nth-of-type(5) {
      transition-delay: 1.2s; }
    .gallery .galleryItem:nth-of-type(6) {
      transition-delay: 1.5s; }
    @media (max-width: 767px) {
      .gallery .galleryItem {
        width: 100%; } }
    .gallery .galleryItem .img {
      margin: 0 0 15rem; }
      .gallery .galleryItem .img img {
        width: 100%;
        filter: drop-shadow(0 3rem 6rem rgba(0, 0, 0, 0.16)); }
    .gallery .galleryItem .caption {
      font-size: 16rem; }

.followCTA {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #17512B;
  padding: 15rem 0;
  z-index: 10;
  transform: translateY(100%);
  transition: transform 0.2s ease-out 0s; }
  @media (max-width: 767px) {
    .followCTA {
      padding: 10rem 0; } }
  .followCTA.-jsShow {
    transform: none; }
  .followCTA .container {
    max-width: 1206rem;
    padding: 0 20rem;
    margin: 0 auto; }
    @media (max-width: 767px) {
      .followCTA .container {
        padding: 0 15rem; } }
  .followCTA .ctaColumn {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    gap: 50rem;
    justify-content: center; }
    @media (max-width: 767px) {
      .followCTA .ctaColumn {
        gap: 20rem; } }
    .followCTA .ctaColumn .item {
      width: 440rem; }
      @media (max-width: 767px) {
        .followCTA .ctaColumn .item {
          width: 160rem; } }
      .followCTA .ctaColumn .item .btn a {
        display: inline-block;
        width: 100%;
        padding: 13rem;
        border: 1rem  solid #fff;
        font-size: 16rem;
        font-weight: bold;
        text-align: center;
        color: #fff;
        border-radius: 6rem; }
        @media (max-width: 767px) {
          .followCTA .ctaColumn .item .btn a {
            font-size: 11rem;
            padding: 10rem 7rem; } }
        .followCTA .ctaColumn .item .btn a:hover {
          background: #fff;
          color: #17512B;
          border-color: #000; }
  .followCTA .pconly {
    display: inline-block !important; }
    @media (max-width: 767px) {
      .followCTA .pconly {
        display: none !important; } }

.js-fadeUp {
  transform: translateY(30rem);
  opacity: 0;
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s; }
  .js-fadeUp.is-inview {
    transform: none;
    opacity: 1; }

.delay-pc-3 {
  transition-delay: 0.3s; }
  @media (max-width: 767px) {
    .delay-pc-3 {
      transition-delay: 0; } }
