@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap");
@font-face {
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 400;
  src: url("./font/NotoSerifCJKjp-Regular.woff2") format("woff2"), url("./font/NotoSerifCJKjp-Regular.woff") format("woff");
  font-display: swap;
}
/*ベースフォント設定*/
/*Font Awesome5---------------------------------------------*/
@media screen and (min-width: 981px ) { /*PC*/ }
@media screen and (max-width: 560px ) { /*SP*/ }
@media screen and (max-width: 980px ) and (min-width: 561px ) { /*TB*/ }
@-webkit-keyframes buruburu {
  0% {
    -webkit-transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -5px);
  }
  100% {
    -webkit-transform: translate(0, 0);
  }
}
@keyframes buruburu {
  0% {
    -webkit-transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -5px);
  }
  100% {
    -webkit-transform: translate(0, 0);
  }
}
@-webkit-keyframes buruburu2 {
  0% {
    -webkit-transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -20px);
  }
  100% {
    -webkit-transform: translate(0, 0);
  }
}
@keyframes buruburu2 {
  0% {
    -webkit-transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -20px);
  }
  100% {
    -webkit-transform: translate(0, 0);
  }
}
@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 70%;
  }
  70% {
    opacity: 50%;
  }
  100% {
    opacity: 100%;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 70%;
  }
  70% {
    opacity: 50%;
  }
  100% {
    opacity: 100%;
  }
}
@-webkit-keyframes gradAnimeTime {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes gradAnimeTime {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
.fade {
  opacity: 0;
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
.fade.effect {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.slidein {
  opacity: 0;
  -webkit-transform: translateX(-300px);
          transform: translateX(-300px);
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
.slidein.effect {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}

@-webkit-keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes fadeUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.fade-list > * {
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
  opacity: 0;
  -webkit-transform: translateY(20px);
          transform: translateY(20px);
  position: relative;
}
.fade-list.effect > *:nth-child(1) {
  -webkit-animation: fadeUp 1s 0.5s 1 ease normal forwards;
          animation: fadeUp 1s 0.5s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(2) {
  -webkit-animation: fadeUp 1s 1s 1 ease normal forwards;
          animation: fadeUp 1s 1s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(3) {
  -webkit-animation: fadeUp 1s 1.5s 1 ease normal forwards;
          animation: fadeUp 1s 1.5s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(4) {
  -webkit-animation: fadeUp 1s 2s 1 ease normal forwards;
          animation: fadeUp 1s 2s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(5) {
  -webkit-animation: fadeUp 1s 2.5s 1 ease normal forwards;
          animation: fadeUp 1s 2.5s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(6) {
  -webkit-animation: fadeUp 1s 3s 1 ease normal forwards;
          animation: fadeUp 1s 3s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(7) {
  -webkit-animation: fadeUp 1s 3.5s 1 ease normal forwards;
          animation: fadeUp 1s 3.5s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(8) {
  -webkit-animation: fadeUp 1s 4s 1 ease normal forwards;
          animation: fadeUp 1s 4s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(9) {
  -webkit-animation: fadeUp 1s 4.5s 1 ease normal forwards;
          animation: fadeUp 1s 4.5s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(10) {
  -webkit-animation: fadeUp 1s 5s 1 ease normal forwards;
          animation: fadeUp 1s 5s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(11) {
  -webkit-animation: fadeUp 1s 5.5s 1 ease normal forwards;
          animation: fadeUp 1s 5.5s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(12) {
  -webkit-animation: fadeUp 1s 6s 1 ease normal forwards;
          animation: fadeUp 1s 6s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}

.move-img {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.move-img:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0%;
  height: 100%;
  background: #fff;
  z-index: 1;
  -webkit-transform-origin: right center;
          transform-origin: right center;
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
  -webkit-transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
  transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
  transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
  transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1) 0s, transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s, -webkit-transform 0.5s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
}
.move-img img {
  position: relative;
  width: 100%;
  height: auto;
  opacity: 0;
  left: -100%;
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
.move-img.effect img {
  opacity: 1;
  left: 0;
}
.move-img.effect:before {
  -webkit-transform: scaleX(0);
          transform: scaleX(0);
  width: 100%;
}

.blur {
  -ms-filter: blur(6px);
  -webkit-filter: blur(6px);
          filter: blur(6px);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-transform: scale(0.95);
  transform: scale(0.95);
}
.blur.effect {
  -webkit-transform: scale(1);
  transform: scale(1);
  -ms-filter: blur(0);
  -webkit-filter: blur(0);
          filter: blur(0);
}

.focus-img {
  position: relative;
}
.focus-img img {
  display: block;
  min-width: 100%;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1.5) rotateZ(0);
  transform: translate(-50%, -50%) scale(1.5) rotateZ(0);
  -webkit-transition: all 3s;
  transition: all 3s;
}
.focus-img.effect img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1) rotateZ(0);
  transform: translate(-50%, -50%) scale(1) rotateZ(0);
}


/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*共通*/
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*ヘッダー*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*メインコンテンツ*/
/*-----------------------------------------------------------*/
@media all and (min-width: 981px) {
  .top-news.custom {
    opacity: 0;
    -webkit-transform: translateY(32px);
            transform: translateY(32px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease, -webkit-transform 1.2s ease;
  }
  .top-news.custom > a .news-inner .date {
    opacity: 0;
    -webkit-transform: translateX(-18px);
            transform: translateX(-18px);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s, -webkit-transform 1s ease 0.08s;
  }
  .top-news.custom > a .news-inner .news-cont {
    opacity: 0;
    -webkit-transform: translateX(18px);
            transform: translateX(18px);
    -webkit-transition: opacity 0.8s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.1s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
  }
  .top-news.custom.effect {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .top-news.custom.effect > a .news-inner .date {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .top-news.custom.effect > a .news-inner .news-cont {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .img-2.custom {
    opacity: 0;
    -webkit-transform: translateX(-80px) rotate(-10deg) scale(0.92);
            transform: translateX(-80px) rotate(-10deg) scale(0.92);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.4s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.4s ease;
    transition: opacity 0.8s ease, transform 1.4s ease;
    transition: opacity 0.8s ease, transform 1.4s ease, -webkit-transform 1.4s ease;
  }
  .img-2.custom.effect {
    opacity: 1;
    -webkit-transform: translateX(0) rotate(0) scale(1);
            transform: translateX(0) rotate(0) scale(1);
  }
}
.top-news > a {
  -webkit-transition: opacity 0.35s ease, -webkit-transform 0.35s ease;
  transition: opacity 0.35s ease, -webkit-transform 0.35s ease;
  transition: transform 0.35s ease, opacity 0.35s ease;
  transition: transform 0.35s ease, opacity 0.35s ease, -webkit-transform 0.35s ease;
}
.top-news > a .news-inner .date {
  -webkit-transition: color 0.3s ease, -webkit-transform 0.35s ease;
  transition: color 0.3s ease, -webkit-transform 0.35s ease;
  transition: color 0.3s ease, transform 0.35s ease;
  transition: color 0.3s ease, transform 0.35s ease, -webkit-transform 0.35s ease;
}
.top-news > a .news-inner .news-cont {
  -webkit-transition: color 0.3s ease, -webkit-transform 0.35s ease;
  transition: color 0.3s ease, -webkit-transform 0.35s ease;
  transition: color 0.3s ease, transform 0.35s ease;
  transition: color 0.3s ease, transform 0.35s ease, -webkit-transform 0.35s ease;
}
.top-news > a:hover .date {
  color: #000000;
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
}
.top-news > a:hover .news-cont {
  color: #ec6b61;
  -webkit-transform: translateX(8px);
          transform: translateX(8px);
}

@media all and (min-width: 981px) {
  .bd-card.custom {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease, -webkit-transform 1.2s ease;
  }
  .bd-card.custom > a {
    opacity: 0;
    -webkit-transform: scale(0.94);
            transform: scale(0.94);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
  }
  .bd-card.custom > a .birthday-card {
    opacity: 0;
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
    -webkit-transition: opacity 0.8s ease 0.16s, -webkit-transform 1.4s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, -webkit-transform 1.4s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.4s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.4s ease 0.16s, -webkit-transform 1.4s ease 0.16s;
  }
  .bd-card.custom.effect {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .bd-card.custom.effect > a {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .bd-card.custom.effect > a .birthday-card {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.bd-card > a {
  overflow: hidden;
  -webkit-transition: opacity 0.35s ease, -webkit-transform 0.35s ease;
  transition: opacity 0.35s ease, -webkit-transform 0.35s ease;
  transition: transform 0.35s ease, opacity 0.35s ease;
  transition: transform 0.35s ease, opacity 0.35s ease, -webkit-transform 0.35s ease;
}
.bd-card > a:hover {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  opacity: 1;
}
.bd-card > a .birthday-card {
  -webkit-transition: -webkit-transform 0.6s ease, -webkit-filter 0.4s ease;
  transition: -webkit-transform 0.6s ease, -webkit-filter 0.4s ease;
  transition: transform 0.6s ease, filter 0.4s ease;
  transition: transform 0.6s ease, filter 0.4s ease, -webkit-transform 0.6s ease, -webkit-filter 0.4s ease;
}
.bd-card > a:hover .birthday-card {
  -webkit-transform: scale(1.04);
          transform: scale(1.04);
  -webkit-filter: brightness(1.03);
          filter: brightness(1.03);
}

@media all and (min-width: 981px) {
  .sec-gaiyo.custom {
    /*overflow-x: clip;
    &:after {
      opacity: 0;
      transform: translateX(40px) rotate(6deg);
      transition:
        opacity 0.8s ease 0.24s,
        transform 1.3s ease 0.24s;
    }*/
  }
  .sec-gaiyo.custom .gaiyo-inner .dt-2 {
    opacity: 0;
    -webkit-transform: translateX(-60px);
            transform: translateX(-60px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.3s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.3s ease;
    transition: opacity 0.8s ease, transform 1.3s ease;
    transition: opacity 0.8s ease, transform 1.3s ease, -webkit-transform 1.3s ease;
  }
  .sec-gaiyo.custom .gaiyo-inner .dt-2 .img-3 .gaiyo {
    opacity: 0;
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
  }
  .sec-gaiyo.custom .gaiyo-inner {
    /*.dd-2 {
      opacity: 0;
      transform: translateX(48px);
      transition:
        opacity 0.8s ease 0.12s,
        transform 1.2s ease 0.12s;

      .gaiyo-cont {
        .gaiyo-title {
          opacity: 0;
          transform: translateY(24px);
          transition:
            opacity 0.8s ease 0.18s,
            transform 1s ease 0.18s;
        }

        .gaiyo-wrapper {
          opacity: 0;
          transform: translateY(20px);
          transition:
            opacity 0.8s ease,
            transform 1s ease;

          &:nth-child(2) {
            transition-delay: 0.24s;
          }

          &:nth-child(3) {
            transition-delay: 0.32s;
          }
        }
      }

      .btn-area {
        .btn {
          opacity: 0;
          transform: translateY(24px);
          transition:
            opacity 0.8s ease,
            transform 1.1s ease;

          &:nth-child(1) {
            transition-delay: 0.36s;
          }

          &:nth-child(2) {
            transition-delay: 0.44s;
          }
        }
      }
    }*/
  }
  .sec-gaiyo.custom.effect:after {
    opacity: 1;
    -webkit-transform: translateX(0) rotate(0);
            transform: translateX(0) rotate(0);
  }
  .sec-gaiyo.custom.effect .gaiyo-inner .dt-2 {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .sec-gaiyo.custom.effect .gaiyo-inner .dt-2 .img-3 .gaiyo {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .sec-gaiyo.custom.effect .gaiyo-inner {
    /*.dd-2 {
      opacity: 1;
      transform: translateX(0);

      .gaiyo-cont {
        .gaiyo-title {
          opacity: 1;
          transform: translateY(0);
        }

        .gaiyo-wrapper {
          opacity: 1;
          transform: translateY(0);
        }
      }

      .btn-area {
        .btn {
          opacity: 1;
          transform: translateY(0);
        }
      }
    }*/
  }
}
/*
.sec-gaiyo {
  .gaiyo-inner {
    .dd-2 {
      .btn-area {
        .btn {
          transition:
            background-color 0.35s ease,
            transform 0.35s ease,
            box-shadow 0.35s ease;

          &:after {
            transition:
              transform 0.35s ease,
              padding-right 0.35s ease;
          }

          span {
            transition:
              color 0.3s ease,
              transform 0.35s ease;
          }

          &:hover {
            transform: translateY(-4px);

            &:after {
              transform: translateY(-50%) translateX(6px);
              padding-right: 1.1rem;
            }

            span {
              transform: translateX(2px);
            }
          }
        }
      }
    }
  }
}*/
@media all and (min-width: 981px) {
  .sec-policy.custom {
    /*&:before {
      opacity: 0;
      transform: translateX(-40px) rotate(-8deg);
      transition:
        opacity 0.8s ease 0.32s,
        transform 1.3s ease 0.32s;
    }

    &:after {
      opacity: 0;
      transform: translateX(40px) rotate(8deg);
      transition:
        opacity 0.8s ease 0.38s,
        transform 1.3s ease 0.38s;
    }*/
  }
  .sec-policy.custom .policy-list dl {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease, -webkit-transform 1.2s ease;
  }
  .sec-policy.custom .policy-list dl:nth-child(1) {
    -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
  }
  .sec-policy.custom .policy-list dl:nth-child(2) {
    -webkit-transition-delay: 0.12s;
            transition-delay: 0.12s;
  }
  .sec-policy.custom .policy-list dl:nth-child(3) {
    -webkit-transition-delay: 0.19s;
            transition-delay: 0.19s;
  }
  .sec-policy.custom .policy-list dl:nth-child(4) {
    -webkit-transition-delay: 0.26s;
            transition-delay: 0.26s;
  }
  .sec-policy.custom .policy-list dl dt {
    overflow: hidden;
  }
  .sec-policy.custom .policy-list dl dt img {
    opacity: 0;
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.4s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.4s ease;
    transition: opacity 0.8s ease, transform 1.4s ease;
    transition: opacity 0.8s ease, transform 1.4s ease, -webkit-transform 1.4s ease;
    -webkit-transition-delay: inherit;
            transition-delay: inherit;
  }
  .sec-policy.custom .policy-list dl dd .policy-theme {
    opacity: 0;
    -webkit-transform: translateY(18px);
            transform: translateY(18px);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s, -webkit-transform 1s ease 0.08s;
  }
  .sec-policy.custom .policy-list dl dd > p {
    opacity: 0;
    -webkit-transform: translateY(18px);
            transform: translateY(18px);
    -webkit-transition: opacity 0.8s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.1s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
  }
  .sec-policy.custom .btn-area-2 > a {
    opacity: 0;
    -webkit-transform: translateY(24px);
            transform: translateY(24px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.1s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.1s ease;
    transition: opacity 0.8s ease, transform 1.1s ease;
    transition: opacity 0.8s ease, transform 1.1s ease, -webkit-transform 1.1s ease;
  }
  .sec-policy.custom .btn-area-2 > a:nth-child(1) {
    -webkit-transition-delay: 0.34s;
            transition-delay: 0.34s;
  }
  .sec-policy.custom .btn-area-2 > a:nth-child(2) {
    -webkit-transition-delay: 0.42s;
            transition-delay: 0.42s;
  }
  .sec-policy.custom .btn-area-2 > a:nth-child(3) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .sec-policy.custom.effect {
    /*&:before {
      opacity: 1;
      transform: translateX(0) rotate(0);
    }

    &:after {
      opacity: 1;
      transform: translateX(0) rotate(0);
    }*/
  }
  .sec-policy.custom.effect .policy-list dl {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-policy.custom.effect .policy-list dl dt img {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .sec-policy.custom.effect .policy-list dl dd .policy-theme {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-policy.custom.effect .policy-list dl dd > p {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-policy.custom.effect .btn-area-2 > a {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.sec-policy .btn-area-2 > a {
  -webkit-transition: background-color 0.35s ease, -webkit-transform 0.35s ease, -webkit-box-shadow 0.35s ease;
  transition: background-color 0.35s ease, -webkit-transform 0.35s ease, -webkit-box-shadow 0.35s ease;
  transition: background-color 0.35s ease, transform 0.35s ease, box-shadow 0.35s ease;
  transition: background-color 0.35s ease, transform 0.35s ease, box-shadow 0.35s ease, -webkit-transform 0.35s ease, -webkit-box-shadow 0.35s ease;
}
.sec-policy .btn-area-2 > a:before {
  -webkit-transition: padding-right 0.35s ease, -webkit-transform 0.35s ease;
  transition: padding-right 0.35s ease, -webkit-transform 0.35s ease;
  transition: transform 0.35s ease, padding-right 0.35s ease;
  transition: transform 0.35s ease, padding-right 0.35s ease, -webkit-transform 0.35s ease;
}
.sec-policy .btn-area-2 > a span {
  -webkit-transition: color 0.3s ease, -webkit-transform 0.35s ease;
  transition: color 0.3s ease, -webkit-transform 0.35s ease;
  transition: transform 0.35s ease, color 0.3s ease;
  transition: transform 0.35s ease, color 0.3s ease, -webkit-transform 0.35s ease;
}
.sec-policy .btn-area-2 > a:hover {
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
.sec-policy .btn-area-2 > a:hover:before {
  -webkit-transform: translateY(-50%) translateX(6px);
          transform: translateY(-50%) translateX(6px);
  padding-right: 0.7rem;
}
.sec-policy .btn-area-2 > a:hover span {
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}

@media all and (min-width: 981px) {
  .sec-facility.custom:after {
    opacity: 0;
    -webkit-transform: translateX(40px) translateY(20px) rotate(4deg);
            transform: translateX(40px) translateY(20px) rotate(4deg);
    -webkit-transition: opacity 0.8s ease 0.42s, -webkit-transform 1.3s ease 0.42s;
    transition: opacity 0.8s ease 0.42s, -webkit-transform 1.3s ease 0.42s;
    transition: opacity 0.8s ease 0.42s, transform 1.3s ease 0.42s;
    transition: opacity 0.8s ease 0.42s, transform 1.3s ease 0.42s, -webkit-transform 1.3s ease 0.42s;
  }
  .sec-facility.custom .facilities-list > a {
    opacity: 0;
    -webkit-transition: -webkit-transform 0.8s ease;
    transition: -webkit-transform 0.8s ease;
    transition: transform 0.8s ease;
    transition: transform 0.8s ease, -webkit-transform 0.8s ease;
    overflow: hidden;
  }
  .sec-facility.custom .facilities-list > a img {
    display: block;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
  }
  .sec-facility.custom .facilities-list > a:hover img {
    -webkit-transform: scale(1.03);
            transform: scale(1.03);
  }
  .sec-facility.custom .facilities-list > a:nth-child(1) {
    -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
  }
  .sec-facility.custom .facilities-list > a:nth-child(2) {
    -webkit-transition-delay: 0.12s;
            transition-delay: 0.12s;
  }
  .sec-facility.custom .facilities-list > a:nth-child(3) {
    -webkit-transition-delay: 0.19s;
            transition-delay: 0.19s;
  }
  .sec-facility.custom .facilities-list > a:nth-child(4) {
    -webkit-transition-delay: 0.26s;
            transition-delay: 0.26s;
  }
  .sec-facility.custom .facilities-list > a:nth-child(5) {
    -webkit-transition-delay: 0.33s;
            transition-delay: 0.33s;
  }
  .sec-facility.custom .facilities-list > a:nth-child(6) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .sec-facility.custom .facilities-list > a > dl dt {
    overflow: hidden;
  }
  .sec-facility.custom .facilities-list > a > dl dt dd > div:first-child {
    opacity: 0;
    -webkit-transform: translateY(18px);
            transform: translateY(18px);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s, -webkit-transform 1s ease 0.08s;
  }
  .sec-facility.custom .facilities-list > a > dl dt dd > div:last-child {
    opacity: 0;
    -webkit-transform: translateY(18px);
            transform: translateY(18px);
    -webkit-transition: opacity 0.8s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1.1s ease 0.16s, -webkit-transform 1.1s ease 0.16s;
  }
  .sec-facility.custom.effect:after {
    opacity: 1;
    -webkit-transform: translateX(0) translateY(0) rotate(0);
            transform: translateX(0) translateY(0) rotate(0);
  }
  .sec-facility.custom.effect .facilities-list > a {
    opacity: 1;
  }
  .sec-facility.custom.effect .facilities-list > a > dl dt .facility {
    opacity: 1;
  }
  .sec-facility.custom.effect .facilities-list > a > dl dd > div:first-child {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-facility.custom.effect .facilities-list > a > dl dd > div:last-child {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
/*.sec-facility {
  .facilities-list {
    > a {
      transition:
        transform 0.35s ease,
        box-shadow 0.35s ease;

      .facility {
        transition: transform 1s ease;
      }

      dd {
        transition: background-color 0.35s ease;
      }

    }
  }
}*/
@media all and (min-width: 981px) {
  .sec-recruit.custom > a {
    opacity: 0;
    -webkit-transform: translateY(40px);
            transform: translateY(40px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease, -webkit-transform 1.2s ease;
  }
  .sec-recruit.custom > a img {
    opacity: 0;
    -webkit-transform: scale(0.85);
            transform: scale(0.85);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
  }
  .sec-recruit.custom.effect > a {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-recruit.custom.effect > a img {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .sec-news.custom .news-cont .news-contl {
    opacity: 0;
    -webkit-transform: translateX(-32px);
            transform: translateX(-32px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease, -webkit-transform 1.2s ease;
  }
  .sec-news.custom .news-cont .news-contl .sec-title {
    opacity: 0;
    -webkit-transform: translateY(18px);
            transform: translateY(18px);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1s ease 0.08s, -webkit-transform 1s ease 0.08s;
  }
  .sec-news.custom .news-cont .news-contl .news-all {
    opacity: 0;
    -webkit-transform: translateY(18px);
            transform: translateY(18px);
    -webkit-transition: opacity 0.8s ease 0.16s, -webkit-transform 1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, -webkit-transform 1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1s ease 0.16s;
    transition: opacity 0.8s ease 0.16s, transform 1s ease 0.16s, -webkit-transform 1s ease 0.16s;
  }
  .sec-news.custom .news-cont .news-list li {
    opacity: 0;
    -webkit-transform: translateY(28px);
            transform: translateY(28px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.1s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.1s ease;
    transition: opacity 0.8s ease, transform 1.1s ease;
    transition: opacity 0.8s ease, transform 1.1s ease, -webkit-transform 1.1s ease;
  }
  .sec-news.custom .news-cont .news-list li:nth-child(1) {
    -webkit-transition-delay: 0.12s;
            transition-delay: 0.12s;
  }
  .sec-news.custom .news-cont .news-list li:nth-child(2) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .sec-news.custom .news-cont .news-list li:nth-child(3) {
    -webkit-transition-delay: 0.28s;
            transition-delay: 0.28s;
  }
  .sec-news.custom .news-cont .news-list li:nth-child(4) {
    -webkit-transition-delay: 0.36s;
            transition-delay: 0.36s;
  }
  .sec-news.custom .news-cont .news-list li:nth-child(5) {
    -webkit-transition-delay: 0.44s;
            transition-delay: 0.44s;
  }
  .sec-news.custom .news-cont .news-list li dl dt {
    opacity: 0;
    -webkit-transform: translateX(-12px);
            transform: translateX(-12px);
    -webkit-transition: opacity 0.8s ease 0.05s, -webkit-transform 1s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, -webkit-transform 1s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1s ease 0.05s, -webkit-transform 1s ease 0.05s;
  }
  .sec-news.custom .news-cont .news-list li dl dd {
    opacity: 0;
    -webkit-transform: translateX(12px);
            transform: translateX(12px);
    -webkit-transition: opacity 0.8s ease 0.1s, -webkit-transform 1.1s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, -webkit-transform 1.1s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.1s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.1s ease 0.1s, -webkit-transform 1.1s ease 0.1s;
  }
  .sec-news.custom .news-cont .news-all2 {
    opacity: 0;
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
    -webkit-transition: opacity 0.8s ease 0.5s, -webkit-transform 1s ease 0.5s;
    transition: opacity 0.8s ease 0.5s, -webkit-transform 1s ease 0.5s;
    transition: opacity 0.8s ease 0.5s, transform 1s ease 0.5s;
    transition: opacity 0.8s ease 0.5s, transform 1s ease 0.5s, -webkit-transform 1s ease 0.5s;
  }
  .sec-news.custom.effect .news-cont .news-contl {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .sec-news.custom.effect .news-cont .news-contl .sec-title {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-news.custom.effect .news-cont .news-contl .news-all {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-news.custom.effect .news-cont .news-list li {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .sec-news.custom.effect .news-cont .news-list li dl dt {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .sec-news.custom.effect .news-cont .news-list li dl dd {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .sec-news.custom.effect .news-cont .news-all2 {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
.sec-recruit > a {
  -webkit-transition: -webkit-transform 0.35s ease;
  transition: -webkit-transform 0.35s ease;
  transition: transform 0.35s ease;
  transition: transform 0.35s ease, -webkit-transform 0.35s ease;
}
.sec-recruit > a img {
  -webkit-transition: -webkit-transform 1s ease, -webkit-filter 0.35s ease;
  transition: -webkit-transform 1s ease, -webkit-filter 0.35s ease;
  transition: transform 1s ease, filter 0.35s ease;
  transition: transform 1s ease, filter 0.35s ease, -webkit-transform 1s ease, -webkit-filter 0.35s ease;
}

.sec-news .news-all,
.sec-news .news-all2 {
  -webkit-transition: background-color 0.35s ease, -webkit-transform 0.35s ease, -webkit-box-shadow 0.35s ease;
  transition: background-color 0.35s ease, -webkit-transform 0.35s ease, -webkit-box-shadow 0.35s ease;
  transition: background-color 0.35s ease, transform 0.35s ease, box-shadow 0.35s ease;
  transition: background-color 0.35s ease, transform 0.35s ease, box-shadow 0.35s ease, -webkit-transform 0.35s ease, -webkit-box-shadow 0.35s ease;
}
.sec-news .news-all:after,
.sec-news .news-all2:after {
  -webkit-transition: padding-right 0.35s ease, -webkit-transform 0.35s ease;
  transition: padding-right 0.35s ease, -webkit-transform 0.35s ease;
  transition: transform 0.35s ease, padding-right 0.35s ease;
  transition: transform 0.35s ease, padding-right 0.35s ease, -webkit-transform 0.35s ease;
}
.sec-news .news-all span,
.sec-news .news-all2 span {
  -webkit-transition: -webkit-transform 0.35s ease;
  transition: -webkit-transform 0.35s ease;
  transition: transform 0.35s ease;
  transition: transform 0.35s ease, -webkit-transform 0.35s ease;
}
.sec-news .news-all:hover,
.sec-news .news-all2:hover {
  -webkit-transform: translateY(-3px);
          transform: translateY(-3px);
}
.sec-news .news-all:hover:after,
.sec-news .news-all2:hover:after {
  -webkit-transform: translateY(-50%) translateX(4px);
          transform: translateY(-50%) translateX(4px);
  padding-right: 0.7rem;
}
.sec-news .news-all:hover span,
.sec-news .news-all2:hover span {
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.sec-news .news-list li a {
  -webkit-transition: opacity 0.35s ease;
  transition: opacity 0.35s ease;
}
.sec-news .news-list li a dl dt {
  -webkit-transition: color 0.35s ease, -webkit-transform 0.35s ease;
  transition: color 0.35s ease, -webkit-transform 0.35s ease;
  transition: color 0.35s ease, transform 0.35s ease;
  transition: color 0.35s ease, transform 0.35s ease, -webkit-transform 0.35s ease;
}
.sec-news .news-list li a dl dd {
  -webkit-transition: color 0.35s ease, text-underline-offset 0.35s ease, -webkit-transform 0.35s ease;
  transition: color 0.35s ease, text-underline-offset 0.35s ease, -webkit-transform 0.35s ease;
  transition: color 0.35s ease, text-underline-offset 0.35s ease, transform 0.35s ease;
  transition: color 0.35s ease, text-underline-offset 0.35s ease, transform 0.35s ease, -webkit-transform 0.35s ease;
}
.sec-news .news-list li a:hover dt {
  color: #ec6b61;
  -webkit-transform: translateX(2px);
          transform: translateX(2px);
}
.sec-news .news-list li a:hover dd {
  color: #ec6b61;
  text-underline-offset: 12px;
  -webkit-transform: translateX(4px);
          transform: translateX(4px);
}

/* アニメーション */
@media all and (min-width: 981px) {
  .map.custom {
    opacity: 0;
    -webkit-transform: translateY(60px);
            transform: translateY(60px);
    -webkit-transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, -webkit-transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease;
    transition: opacity 0.8s ease, transform 1.2s ease, -webkit-transform 1.2s ease;
  }
  .map.custom iframe {
    opacity: 0;
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
    -webkit-transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s;
    transition: opacity 0.8s ease 0.08s, transform 1.4s ease 0.08s, -webkit-transform 1.4s ease 0.08s;
  }
  .map.custom.effect {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .map.custom.effect iframe {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
.top-news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(10px, 0.83vw, 16px);
  padding: clamp(20px, 1.68vw, 32px) clamp(16px, 1.26vw, 24px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
}
@media all and (max-width: 980px) {
  .top-news {
    padding: clamp(18px, 2.85vw, 28px) clamp(16px, 2.44vw, 24px);
  }
}
@media all and (max-width: 560px) {
  .top-news {
    padding: clamp(16px, 4.28vw, 24px) clamp(12px, 4.28vw, 24px);
  }
}
.top-news > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
.top-news > a:hover {
  opacity: 0.8;
}
.top-news .news-inner {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(10px, 0.83vw, 16px);
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media all and (max-width: 560px) {
  .top-news .news-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: 100%;
  }
}
.top-news .news-inner .date {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #777777;
  font-weight: 400;
  font-size: clamp(12px, 0.73vw, 14px);
  line-height: normal;
  letter-spacing: 0;
  white-space: nowrap;
  display: inline-block;
}
@media all and (max-width: 980px) {
  .top-news .news-inner .date {
    font-size: clamp(12px, 1.42vw, 14px);
  }
}
@media all and (max-width: 560px) {
  .top-news .news-inner .date {
    font-size: clamp(12px, 2.5vw, 14px);
  }
}
.top-news .news-inner .news-cont {
  margin-top: -1px;
  font-weight: 700;
  color: #000000;
  font-size: clamp(14px, 0.83vw, 16px);
  letter-spacing: 0;
  line-height: clamp(18px, 1.05vw, 20px);
  white-space: nowrap;
}
@media all and (max-width: 980px) {
  .top-news .news-inner .news-cont {
    font-size: clamp(14px, 1.63vw, 16px);
    line-height: clamp(18px, 2.04vw, 20px);
  }
}
@media all and (max-width: 560px) {
  .top-news .news-inner .news-cont {
    font-size: clamp(13px, 2.85vw, 16px);
    line-height: clamp(18px, 3.57vw, 20px);
    white-space: normal;
  }
}

.img-2 {
  position: absolute;
  top: clamp(1000px, 73.64vw, 1403px);
  left: clamp(-145px, -7.61vw, -80px);
  width: clamp(320px, 35.48vw, 676px);
  height: clamp(320px, 35.48vw, 676px);
  background-image: url(../img/circle.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  pointer-events: none;
}
@media all and (max-width: 980px) {
  .img-2 {
    left: clamp(-120px, -12.24vw, -60px);
    width: clamp(240px, 40vw, 420px);
    height: clamp(240px, 40vw, 420px);
  }
}
@media all and (max-width: 560px) {
  .img-2 {
    display: none;
  }
}

.bd-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: clamp(60px, 5.19vw, 99px) clamp(16px, 1.26vw, 24px) 0;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media all and (max-width: 980px) {
  .bd-card {
    padding-top: clamp(50px, 8.16vw, 80px);
  }
}
@media all and (max-width: 560px) {
  .bd-card {
    padding-top: clamp(40px, 10.71vw, 60px);
  }
}
.bd-card > a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 100%;
}
.bd-card > a .birthday-card {
  position: relative;
  width: 100%;
  max-width: 1374px;
  height: auto;
  aspect-ratio: 2.55;
  -o-object-fit: cover;
     object-fit: cover;
}

.sec-gaiyo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(6px, 0.52vw, 10px);
  padding: clamp(100px, 9.13vw, 174px) 0 0;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.sec-gaiyo:after {
  content: "";
  background: url(../img/top_illust03.png) no-repeat;
  background-size: contain;
  width: clamp(140px, 18vw, 322px);
  max-width: 322px;
  aspect-ratio: 322/230;
  position: absolute;
  right: 5%;
  bottom: -20%;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  .sec-gaiyo:after {
    bottom: -5%;
  }
}
@media screen and (max-width: 560px ) {
  .sec-gaiyo:after {
    display: none;
  }
}
@media all and (max-width: 980px) {
  .sec-gaiyo {
    padding: clamp(80px, 8.16vw, 100px) 0 0;
  }
}
@media all and (max-width: 560px) {
  .sec-gaiyo {
    padding: clamp(56px, 10vw, 80px) 0 0;
  }
}
.sec-gaiyo .gaiyo-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(20px, 1.68vw, 32px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media all and (max-width: 980px) {
  .sec-gaiyo .gaiyo-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.sec-gaiyo .gaiyo-inner .dt-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: min(47.06vw, 896.5px);
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  border-radius: 0 clamp(20px, 1.68vw, 32px) clamp(20px, 1.68vw, 32px) 0;
  overflow: hidden;
  gap: clamp(6px, 0.52vw, 10px);
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media all and (max-width: 980px) {
  .sec-gaiyo .gaiyo-inner .dt-2 {
    width: calc(100% - clamp(24px, 4.89vw, 48px));
    border-radius: clamp(20px, 3.26vw, 32px);
  }
}
@media all and (max-width: 560px) {
  .sec-gaiyo .gaiyo-inner .dt-2 {
    width: calc(100% - 24px);
    border-radius: 20px;
  }
}
.sec-gaiyo .gaiyo-inner .dt-2 .img-3 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(6px, 0.52vw, 10px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  overflow: hidden;
}
@media screen and (max-width: 980px ) and (min-width: 561px ), screen and (max-width: 560px ) {
  .sec-gaiyo .gaiyo-inner .dt-2 .img-3 {
    aspect-ratio: 16/9;
  }
}
.sec-gaiyo .gaiyo-inner .dt-2 .img-3 .gaiyo {
  position: relative;
  width: 100%;
  aspect-ratio: 1.29;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-gaiyo .gaiyo-inner .dd-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(24px, 2.1vw, 40px);
  padding: clamp(16px, 1.26vw, 24px) clamp(16px, 1.26vw, 24px) clamp(16px, 1.26vw, 24px) clamp(40px, 7.87vw, 150px);
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-positive: 1;
      flex-grow: 1;
}
@media screen and (max-width: 980px ) and (min-width: 561px ), screen and (max-width: 560px ) {
  .sec-gaiyo .gaiyo-inner .dd-2 {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
@media screen and (max-width: 560px ) {
  .sec-gaiyo .gaiyo-inner .dd-2 {
    padding: 0 10%;
  }
}
.sec-gaiyo .gaiyo-inner .dd-2 .gaiyo-cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 100%;
  max-width: 614px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(24px, 2.1vw, 40px);
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.sec-gaiyo .gaiyo-inner .dd-2 .gaiyo-cont .gaiyo-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: clamp(90px, 6.29vw, 120px);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(6px, 0.52vw, 10px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: -1px;
  font-weight: 700;
  color: #ec6b61;
  font-size: clamp(26px, 2.1vw, 40px);
  letter-spacing: clamp(2px, 0.21vw, 4px);
  line-height: clamp(40px, 3.15vw, 60px);
}
@media all and (max-width: 560px) {
  .sec-gaiyo .gaiyo-inner .dd-2 .gaiyo-cont .gaiyo-title {
    font-size: clamp(22px, 4.64vw, 26px);
    line-height: clamp(34px, 7.14vw, 40px);
  }
}
.sec-gaiyo .gaiyo-inner .dd-2 .gaiyo-cont .gaiyo-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(6px, 0.52vw, 10px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-top: -1px;
  font-weight: 700;
  color: #000000;
  font-size: clamp(16px, 1.05vw, 20px);
  letter-spacing: clamp(1px, 0.1vw, 2px);
  line-height: clamp(32px, 3.15vw, 48px);
}
@media all and (max-width: 980px) {
  .sec-gaiyo .gaiyo-inner .dd-2 .gaiyo-cont .gaiyo-wrapper {
    line-height: 2;
  }
}
@media all and (max-width: 560px) {
  .sec-gaiyo .gaiyo-inner .dd-2 .gaiyo-cont .gaiyo-wrapper {
    font-size: 15px;
    line-height: 1.9;
  }
}
.sec-gaiyo .gaiyo-inner .dd-2 .btn-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(10px, 0.84vw, 16px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
}
@media all and (max-width: 560px) {
  .sec-gaiyo .gaiyo-inner .dd-2 .btn-area {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.sec-gaiyo .gaiyo-inner .dd-2 .btn-area .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 274px;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: clamp(18px, 1.26vw, 24px);
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-positive: 1;
      flex-grow: 1;
  border-radius: clamp(6px, 0.42vw, 8px);
  border: 3px solid #10c18e;
  overflow: hidden;
}
.sec-gaiyo .gaiyo-inner .dd-2 .btn-area .btn:hover {
  background: rgba(16, 193, 142, 0.2);
}
.sec-gaiyo .gaiyo-inner .dd-2 .btn-area .btn:hover:after {
  padding-right: 1.2rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.sec-gaiyo .gaiyo-inner .dd-2 .btn-area .btn:after {
  content: "";
  background: url(../img/arrow-right.svg) no-repeat;
  width: 100%;
  max-width: 21px;
  aspect-ratio: 21/24;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 0;
  padding-right: 1.5rem;
}
@media all and (max-width: 560px) {
  .sec-gaiyo .gaiyo-inner .dd-2 .btn-area .btn {
    max-width: 100%;
  }
}
.sec-gaiyo .gaiyo-inner .dd-2 .btn-area .btn span {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: -3px;
  font-weight: 900;
  color: #000000;
  font-size: clamp(16px, 1.05vw, 20px);
  letter-spacing: 0;
  line-height: clamp(20px, 1.31vw, 25px);
  white-space: nowrap;
}
.sec-gaiyo .img-4 {
  position: absolute;
  top: clamp(700px, 47.45vw, 904px);
  right: 0;
  width: clamp(180px, 16.9vw, 322px);
  height: clamp(130px, 12.07vw, 230px);
  background-image: url(../img/top_illust03.png);
  background-size: contain;
  background-position: 50% 50%;
}
@media all and (max-width: 980px) {
  .sec-gaiyo .img-4 {
    display: none;
  }
}

.sec-policy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  padding: clamp(120px, 10.49vw, 200px) clamp(16px, 1.26vw, 24px) 0;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(251, 248, 233, 0)), to(rgb(251, 248, 233)));
  background: linear-gradient(180deg, rgba(251, 248, 233, 0) 0%, rgb(251, 248, 233) 100%);
}
@media all and (max-width: 980px) {
  .sec-policy {
    padding-top: clamp(80px, 10.2vw, 100px);
  }
}
@media all and (max-width: 560px) {
  .sec-policy {
    padding: 10% 10% 0;
  }
}
.sec-policy .policy-list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr clamp(20px, 2.1vw, 40px) 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: clamp(20px, 2.1vw, 40px);
  width: 100%;
  max-width: 1336px;
}
@media screen and (max-width: 560px ) {
  .sec-policy .policy-list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
.sec-policy .policy-list dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  position: relative;
  width: 100%;
  height: 100%;
  gap: clamp(20px, 1.68vw, 32px);
  padding: clamp(20px, 1.68vw, 32px) clamp(20px, 1.68vw, 32px) clamp(32px, 2.52vw, 48px);
  background-color: #ffffff;
  border: 1px solid #f2f1eb;
  border-radius: clamp(20px, 1.68vw, 32px);
  -webkit-box-shadow: 0 0 clamp(30px, 3.15vw, 60px) rgba(0, 0, 0, 0.0509803922);
          box-shadow: 0 0 clamp(30px, 3.15vw, 60px) rgba(0, 0, 0, 0.0509803922);
}
@media all and (max-width: 560px) {
  .sec-policy .policy-list dl {
    padding-bottom: 32px;
  }
}
@media all and (max-width: 560px) {
  .sec-policy .policy-list dl {
    padding: 20px 20px 28px;
  }
}
.sec-policy .policy-list dl dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  gap: clamp(6px, 0.52vw, 10px);
  overflow: hidden;
}
.sec-policy .policy-list dl dt img {
  position: relative;
  width: 100%;
  height: auto;
  aspect-ratio: 1.97;
  -o-object-fit: cover;
     object-fit: cover;
}
.sec-policy .policy-list dl dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  gap: clamp(16px, 1.26vw, 24px);
  min-height: clamp(120px, 7.55vw, 144px);
}
.sec-policy .policy-list dl dd .policy-theme {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  gap: clamp(6px, 0.52vw, 10px);
  margin-top: -1px;
  font-weight: 900;
  color: #000000;
  font-size: clamp(22px, 1.68vw, 32px);
  text-align: center;
  letter-spacing: 0;
  line-height: clamp(34px, 2.52vw, 48px);
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  .sec-policy .policy-list dl dd .policy-theme {
    font-size: clamp(18px, 1.68vw, 32px);
  }
}
@media all and (max-width: 560px) {
  .sec-policy .policy-list dl dd .policy-theme {
    font-size: clamp(20px, 4.28vw, 24px);
    line-height: 1.5;
  }
}
.sec-policy .policy-list dl dd > p {
  position: relative;
  width: 100%;
  margin-top: -1px;
  font-weight: 400;
  color: #000000;
  font-size: clamp(14px, 0.84vw, 16px);
  letter-spacing: 0;
  line-height: clamp(24px, 1.57vw, 30px);
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  .sec-policy .policy-list dl dd > p {
    font-size: clamp(12px, 0.84vw, 16px);
  }
}
@media all and (max-width: 560px) {
  .sec-policy .policy-list dl dd > p {
    line-height: 1.8;
  }
}
.sec-policy .btn-area-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  gap: clamp(10px, 0.84vw, 16px);
  padding: clamp(48px, 3.36vw, 64px) clamp(16px, 1.26vw, 24px) clamp(180px, 10vw, 240px);
}
@media all and (max-width: 980px) {
  .sec-policy .btn-area-2 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: clamp(48px, 3.36vw, 64px) clamp(16px, 1.26vw, 24px) clamp(120px, 21.4vw, 180px);
  }
}
@media all and (max-width: 560px) {
  .sec-policy .btn-area-2 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 80px;
  }
}
.sec-policy .btn-area-2 > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  max-width: 274px;
  padding: clamp(18px, 1.26vw, 24px);
  background-color: #ffffff;
  border: 3px solid #10c18e;
  border-radius: clamp(6px, 0.42vw, 8px);
  overflow: hidden;
}
.sec-policy .btn-area-2 > a:hover {
  background: rgba(16, 193, 142, 0.2);
}
.sec-policy .btn-area-2 > a:hover:before {
  padding-right: 0.8rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.sec-policy .btn-area-2 > a:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 0;
  padding-right: 1rem;
  width: 100%;
  max-width: 24px;
  aspect-ratio: 1/1;
  background: url(../img/arrow-right.svg) no-repeat;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  .sec-policy .btn-area-2 > a:before {
    padding-right: 0.3rem;
  }
}
@media all and (max-width: 560px) {
  .sec-policy .btn-area-2 > a {
    max-width: 100%;
  }
}
.sec-policy .btn-area-2 > a span {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-weight: 900;
  color: #000000;
  font-size: clamp(16px, 1.05vw, 20px);
  letter-spacing: 0;
  line-height: clamp(22px, 1.31vw, 25px);
  white-space: nowrap;
}
.sec-policy:before {
  content: "";
  background: url(../img/top_illust04.png) no-repeat;
  background-size: contain;
  position: absolute;
  left: clamp(16px, 1.73vw, 33px);
  bottom: 0;
  width: clamp(180px, 14.9vw, 284px);
  height: auto;
  aspect-ratio: 1.11;
  -o-object-fit: cover;
     object-fit: cover;
}
@media all and (max-width: 980px) {
  .sec-policy:before {
    width: 20vw;
  }
}
@media all and (max-width: 560px) {
  .sec-policy:before {
    display: none;
  }
}
.sec-policy:after {
  content: "";
  background: url(../img/top_illust05.png) no-repeat;
  background-size: contain;
  position: absolute;
  right: 0;
  bottom: 0;
  width: clamp(200px, 17.79vw, 339px);
  height: auto;
  aspect-ratio: 1.15;
  -o-object-fit: cover;
     object-fit: cover;
}
@media all and (max-width: 980px) {
  .sec-policy:after {
    width: 20vw;
  }
}
@media all and (max-width: 560px) {
  .sec-policy:after {
    display: none;
  }
}

.sec-facility {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  padding: clamp(120px, 10.49vw, 200px) clamp(16px, 1.26vw, 24px) clamp(140px, 15.11vw, 288px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.sec-facility:after {
  content: "";
  background: url(../img/top_illust06.png) no-repeat;
  background-size: contain;
  width: clamp(140px, 20vw, 347px);
  max-width: 347px;
  aspect-ratio: 347/176;
  position: absolute;
  right: 5%;
  bottom: 0;
}
@media all and (max-width: 980px) {
  .sec-facility {
    padding: clamp(80px, 8.16vw, 120px) clamp(16px, 2.44vw, 24px) clamp(100px, 12.24vw, 120px);
  }
}
@media all and (max-width: 560px) {
  .sec-facility {
    padding: 10%;
  }
}

.sec-recruit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  padding: clamp(72px, 3.78vw, 72px) clamp(16px, 1.26vw, 24px) clamp(72px, 5.249vw, 100px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media all and (max-width: 560px) {
  .sec-recruit {
    padding: clamp(48px, 10vw, 56px) clamp(16px, 4.286vw, 24px) clamp(56px, 11.429vw, 72px);
  }
}
.sec-recruit > a {
  display: block;
  text-align: center;
  position: relative;
  width: 100%;
  max-width: 1280px;
}
.sec-recruit > a:hover img {
  scale: 1.01;
  -webkit-transition: ease 0.3s;
  transition: ease 0.3s;
}
.sec-recruit > a img {
  width: 100%;
}

.sec-news {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  padding: clamp(80px, 6.299vw, 120px) clamp(16px, 1.26vw, 24px);
  background-color: #fbf8e9;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media screen and (max-width: 980px ) and (min-width: 561px ), screen and (max-width: 560px ) {
  .sec-news {
    padding: 10%;
  }
}
.sec-news .news-cont {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: clamp(40px, 4vw, 80px);
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  max-width: 1280px;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin: 0 auto;
}
@media all and (max-width: 980px) {
  .sec-news .news-cont {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
.sec-news .news-cont .news-contl {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(100px, 9.501vw, 181px);
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  position: relative;
  width: 20%;
}
.sec-news .news-cont .news-contl .sec-title {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: -1px;
  font-weight: 900;
  color: #000000;
  font-size: clamp(24px, 1.68vw, 32px);
  letter-spacing: 0;
  line-height: 1;
  white-space: nowrap;
}
.sec-news .news-cont .news-all, .sec-news .news-cont .news-all2 {
  display: block;
  padding: clamp(10px, 0.63vw, 12px) clamp(20px, 1.26vw, 24px);
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  background-color: #ec6b61;
}
.sec-news .news-cont .news-all:hover:after, .sec-news .news-cont .news-all2:hover:after {
  padding-right: 0.8rem;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.sec-news .news-cont .news-all:after, .sec-news .news-cont .news-all2:after {
  content: "";
  width: 100%;
  max-width: 8px;
  aspect-ratio: 4/7;
  background: url(../img/arrow_r2.svg) no-repeat;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 0;
  padding-right: 1rem;
}
.sec-news .news-cont .news-all span, .sec-news .news-cont .news-all2 span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: -1px;
  font-family: "Oswald", sans-serif;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(14px, 0.84vw, 16px);
  letter-spacing: 0;
  line-height: 1.25;
  white-space: nowrap;
  padding-right: 1rem;
}
.sec-news .news-cont .news-all .arrow, .sec-news .news-cont .news-all2 .arrow {
  position: relative;
  width: 6px;
  height: 12px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.sec-news .news-cont .news-all2 {
  display: none;
}
@media all and (max-width: 980px) {
  .sec-news .news-cont .news-all2 {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
}
@media screen and (max-width: 980px ) and (min-width: 561px ), screen and (max-width: 560px ) {
  .sec-news .news-cont .news-all {
    display: none;
  }
}
.sec-news .news-cont .news-list {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: clamp(16px, 1.26vw, 24px);
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 80%;
  min-width: 0;
}
@media screen and (max-width: 980px ) and (min-width: 561px ), screen and (max-width: 560px ) {
  .sec-news .news-cont .news-list {
    width: 100%;
  }
}
.sec-news .news-cont .news-list li {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  gap: 10px;
  position: relative;
  width: 100%;
  min-width: 0;
}
.sec-news .news-cont .news-list li a {
  min-height: 100%;
  display: block;
}
.sec-news .news-cont .news-list li a:hover dd {
  text-decoration: none;
}
.sec-news .news-cont .news-list li dl {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(16px, 1.417vw, 27px);
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
  min-width: 0;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  .sec-news .news-cont .news-list li dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: clamp(8px, 1.417vw, 27px);
  }
}
@media screen and (max-width: 560px ) {
  .sec-news .news-cont .news-list li dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.sec-news .news-cont .news-list li dl dt {
  position: relative;
  margin-top: -1px;
  font-weight: 700;
  color: #000000;
  font-size: clamp(14px, 0.84vw, 16px);
  line-height: 1.25;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  letter-spacing: 0;
  white-space: nowrap;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.sec-news .news-cont .news-list li dl dd {
  padding: 0 0 8px;
  position: relative;
  margin-top: -1px;
  font-weight: 700;
  color: #000000;
  font-size: clamp(16px, 1.05vw, 20px);
  letter-spacing: 0;
  line-height: 1.75;
  white-space: normal;
  text-decoration: underline;
  text-underline-offset: 8px;
  text-decoration-thickness: 1px;
  width: 100%;
  min-width: 0;
  overflow-wrap: break-word;
  word-break: break-word;
}
@media screen and (max-width: 980px ) and (min-width: 561px ), screen and (max-width: 560px ) {
  .sec-news .news-cont .news-list li dl dd {
    line-height: 1.75;
  }
}

.map {
  position: relative;
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  width: 100%;
  overflow-x: hidden;
}
.map iframe {
  aspect-ratio: 8/3;
}

/*-----------------------------------------------------------*/
/*フッター*/
/*-----------------------------------------------------------*/
