@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);
  -ms-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);
  -ms-transform: scale(1);
  transform: scale(1);
}

.slidein {
  opacity: 0;
  -webkit-transform: translateX(-300px);
      -ms-transform: translateX(-300px);
          transform: translateX(-300px);
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
.slidein.effect {
  opacity: 1;
  -webkit-transform: translateX(0);
      -ms-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);
      -ms-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;
      -ms-transform-origin: right center;
          transform-origin: right center;
  -webkit-transform: scaleX(1);
      -ms-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);
      -ms-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);
  -ms-transform: scale(0.95);
  transform: scale(0.95);
}
.blur.effect {
  -webkit-transform: scale(1);
  -ms-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);
  -ms-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);
  -ms-transform: translate(-50%, -50%) scale(1) rotateZ(0);
  transform: translate(-50%, -50%) scale(1) rotateZ(0);
}


/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*共通*/
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*ヘッダー*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*メインコンテンツ*/
/*-----------------------------------------------------------*/
@media all and (min-width: 981px) {
  .hero-section.custom .wrapper p span {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -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;
  }
  .hero-section.custom .wrapper p span:nth-of-type(1) {
    -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
  }
  .hero-section.custom .wrapper p span:nth-of-type(2) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .hero-section.custom .wrapper p span:nth-of-type(3) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  .hero-section.custom .wrapper p span:nth-of-type(4) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .hero-section.custom .wrapper p span:nth-of-type(5) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .hero-section.custom .wrapper p span:nth-of-type(6) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .hero-section.custom .hero-sub {
    opacity: 0;
    -webkit-transform: translateY(30px);
        -ms-transform: translateY(30px);
            transform: translateY(30px);
    -webkit-transition: opacity 0.8s ease 0.2s, -webkit-transform 1.3s ease 0.2s;
    transition: opacity 0.8s ease 0.2s, -webkit-transform 1.3s ease 0.2s;
    transition: opacity 0.8s ease 0.2s, transform 1.3s ease 0.2s;
    transition: opacity 0.8s ease 0.2s, transform 1.3s ease 0.2s, -webkit-transform 1.3s ease 0.2s;
  }
  .hero-section.custom dt .ku {
    opacity: 0;
    -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
            transform: scale(0.9);
    -webkit-transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
  }
  .hero-section.custom dd div p {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -webkit-transition: opacity 0.8s ease 0.35s, -webkit-transform 1.2s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, -webkit-transform 1.2s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, transform 1.2s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, transform 1.2s ease 0.35s, -webkit-transform 1.2s ease 0.35s;
  }
  .hero-section.custom .hero-btn a {
    opacity: 0;
    -webkit-transform: translateY(15px) scale(0.95);
        -ms-transform: translateY(15px) scale(0.95);
            transform: translateY(15px) scale(0.95);
    -webkit-transition: opacity 0.8s ease 0.4s, -webkit-transform 1.2s ease 0.4s;
    transition: opacity 0.8s ease 0.4s, -webkit-transform 1.2s ease 0.4s;
    transition: opacity 0.8s ease 0.4s, transform 1.2s ease 0.4s;
    transition: opacity 0.8s ease 0.4s, transform 1.2s ease 0.4s, -webkit-transform 1.2s ease 0.4s;
  }
  .hero-section.custom.effect .wrapper p span {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .hero-section.custom.effect .hero-sub {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .hero-section.custom.effect dt .ku {
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .hero-section.custom.effect dd div p {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .hero-section.custom.effect .hero-btn a {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
        -ms-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
  .news-section.custom .title .sec-title h2 {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -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;
  }
  .news-section.custom .title .sec-title h3 {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -webkit-transition: opacity 0.8s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.2s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
  }
  .news-section.custom .news-more a {
    opacity: 0;
    -webkit-transform: translateX(15px);
        -ms-transform: translateX(15px);
            transform: translateX(15px);
    -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;
  }
  .news-section.custom .news-item dl {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -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;
  }
  .news-section.custom .news-item dl:nth-of-type(1) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  .news-section.custom .news-item dl:nth-of-type(2) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .news-section.custom .news-item dl:nth-of-type(3) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .news-section.custom .news-item dl:nth-of-type(4) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .news-section.custom .news-item dl:nth-of-type(5) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .news-section.custom.effect .title .sec-title h2 {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .news-section.custom.effect .title .sec-title h3 {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .news-section.custom.effect .news-more a {
    opacity: 1;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
  .news-section.custom.effect .news-item dl {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .point.custom .sec-title h2 {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -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;
  }
  .point.custom .sec-title h3 {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -webkit-transition: opacity 0.8s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.2s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
  }
  .point.custom .point-inner:after {
    opacity: 0;
    -webkit-transform: scale(0.95);
        -ms-transform: scale(0.95);
            transform: scale(0.95);
    -webkit-transition: opacity 0.8s ease 0.1s, -webkit-transform 1.3s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, -webkit-transform 1.3s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.3s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.3s ease 0.1s, -webkit-transform 1.3s ease 0.1s;
  }
  .point.custom .point-inner2 > dl dt img {
    opacity: 0;
    -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
            transform: translateX(-20px);
    -webkit-transition: opacity 0.8s ease 0.15s, -webkit-transform 1.2s ease 0.15s;
    transition: opacity 0.8s ease 0.15s, -webkit-transform 1.2s ease 0.15s;
    transition: opacity 0.8s ease 0.15s, transform 1.2s ease 0.15s;
    transition: opacity 0.8s ease 0.15s, transform 1.2s ease 0.15s, -webkit-transform 1.2s ease 0.15s;
  }
  .point.custom .point-inner2 > dl dd p {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -webkit-transition: opacity 0.8s ease 0.2s, -webkit-transform 1.2s ease 0.2s;
    transition: opacity 0.8s ease 0.2s, -webkit-transform 1.2s ease 0.2s;
    transition: opacity 0.8s ease 0.2s, transform 1.2s ease 0.2s;
    transition: opacity 0.8s ease 0.2s, transform 1.2s ease 0.2s, -webkit-transform 1.2s ease 0.2s;
  }
  .point.custom .point-btn p:nth-child(1) a {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -webkit-transition: opacity 0.8s ease 0.25s, -webkit-transform 1.2s ease 0.25s;
    transition: opacity 0.8s ease 0.25s, -webkit-transform 1.2s ease 0.25s;
    transition: opacity 0.8s ease 0.25s, transform 1.2s ease 0.25s;
    transition: opacity 0.8s ease 0.25s, transform 1.2s ease 0.25s, -webkit-transform 1.2s ease 0.25s;
  }
  .point.custom .point-btn p:nth-child(2) a {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -webkit-transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
  }
  .point.custom .jigyo-list li {
    opacity: 0;
    -webkit-transform: translateY(25px);
        -ms-transform: translateY(25px);
            transform: translateY(25px);
    -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;
  }
  .point.custom .jigyo-list li:nth-child(1) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .point.custom .jigyo-list li:nth-child(2) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .point.custom .jigyo-list li:nth-child(3) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  .point.custom .jigyo-list li:nth-child(4) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .point.custom.effect .sec-title h2,
  .point.custom.effect .sec-title h3 {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .point.custom.effect .point-inner:after {
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .point.custom.effect .point-inner2 > dl dt img {
    opacity: 1;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
  .point.custom.effect .point-inner2 > dl dd p {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .point.custom.effect .point-btn p a {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .point.custom.effect .jigyo-list li {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .center.custom .sec-title h2 {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -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;
  }
  .center.custom .sec-title h3 {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -webkit-transition: opacity 0.8s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.2s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.2s ease 0.05s, -webkit-transform 1.2s ease 0.05s;
  }
  .center.custom .sec-title > p {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -webkit-transition: opacity 0.8s ease 0.1s, -webkit-transform 1.2s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, -webkit-transform 1.2s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.2s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.2s ease 0.1s, -webkit-transform 1.2s ease 0.1s;
  }
  .center.custom .center-inner > div:not(.center-btn2):after {
    opacity: 0;
    -webkit-transform: scale(0.95);
        -ms-transform: scale(0.95);
            transform: scale(0.95);
    -webkit-transition: opacity 0.8s ease 0.1s, -webkit-transform 1.3s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, -webkit-transform 1.3s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.3s ease 0.1s;
    transition: opacity 0.8s ease 0.1s, transform 1.3s ease 0.1s, -webkit-transform 1.3s ease 0.1s;
  }
  .center.custom .center-inner2 div {
    opacity: 0;
    -webkit-transform: translateX(-20px);
        -ms-transform: translateX(-20px);
            transform: translateX(-20px);
    -webkit-transition: opacity 0.8s ease 0.15s, -webkit-transform 1.2s ease 0.15s;
    transition: opacity 0.8s ease 0.15s, -webkit-transform 1.2s ease 0.15s;
    transition: opacity 0.8s ease 0.15s, transform 1.2s ease 0.15s;
    transition: opacity 0.8s ease 0.15s, transform 1.2s ease 0.15s, -webkit-transform 1.2s ease 0.15s;
  }
  .center.custom .center-btn .btn:nth-child(1) a {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -webkit-transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
  }
  .center.custom .center-btn .btn:nth-child(2) a {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -webkit-transition: opacity 0.8s ease 0.35s, -webkit-transform 1.2s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, -webkit-transform 1.2s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, transform 1.2s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, transform 1.2s ease 0.35s, -webkit-transform 1.2s ease 0.35s;
  }
  .center.custom .center-btn2 a {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -webkit-transition: opacity 0.8s ease 0.4s, -webkit-transform 1.3s ease 0.4s;
    transition: opacity 0.8s ease 0.4s, -webkit-transform 1.3s ease 0.4s;
    transition: opacity 0.8s ease 0.4s, transform 1.3s ease 0.4s;
    transition: opacity 0.8s ease 0.4s, transform 1.3s ease 0.4s, -webkit-transform 1.3s ease 0.4s;
  }
  .center.custom.effect .sec-title h2,
  .center.custom.effect .sec-title h3,
  .center.custom.effect .sec-title > p {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .center.custom.effect .center-inner > div:not(.center-btn2):after {
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .center.custom.effect .center-inner2 div {
    opacity: 1;
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
  }
  .center.custom.effect .center-btn .btn a {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .center.custom.effect .center-btn2 a {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .takarakuji.custom .sec-title h4 {
    opacity: 0;
    -webkit-transform: translateY(15px);
        -ms-transform: translateY(15px);
            transform: translateY(15px);
    -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;
  }
  .takarakuji.custom:after {
    opacity: 0;
    -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
            transform: scale(0.9);
    -webkit-transition: opacity 0.8s ease 0.05s, -webkit-transform 1.3s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, -webkit-transform 1.3s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.3s ease 0.05s;
    transition: opacity 0.8s ease 0.05s, transform 1.3s ease 0.05s, -webkit-transform 1.3s ease 0.05s;
  }
  .takarakuji.custom .message p span {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -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;
  }
  .takarakuji.custom .message p span:nth-child(1) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .takarakuji.custom .message p span:nth-child(2) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  .takarakuji.custom .message p span:nth-child(3) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .takarakuji.custom .message p span:nth-child(4) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .takarakuji.custom .message p span:nth-child(5) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .takarakuji.custom .message p span:nth-child(6) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .takarakuji.custom .message p span:nth-child(7) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .takarakuji.custom .pc-wrapper p {
    opacity: 0;
    -webkit-transform: translateY(20px);
        -ms-transform: translateY(20px);
            transform: translateY(20px);
    -webkit-transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s;
    transition: opacity 0.8s ease 0.3s, transform 1.2s ease 0.3s, -webkit-transform 1.2s ease 0.3s;
  }
  .takarakuji.custom a .image {
    opacity: 0;
    -webkit-transform: translateY(30px) scale(0.95);
        -ms-transform: translateY(30px) scale(0.95);
            transform: translateY(30px) scale(0.95);
    -webkit-transition: opacity 0.8s ease 0.35s, -webkit-transform 1.3s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, -webkit-transform 1.3s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, transform 1.3s ease 0.35s;
    transition: opacity 0.8s ease 0.35s, transform 1.3s ease 0.35s, -webkit-transform 1.3s ease 0.35s;
  }
  .takarakuji.custom.effect .sec-title h4 {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .takarakuji.custom.effect:after {
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .takarakuji.custom.effect .message p span {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .takarakuji.custom.effect .pc-wrapper p {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
  .takarakuji.custom.effect a .image {
    opacity: 1;
    -webkit-transform: translateY(0) scale(1);
        -ms-transform: translateY(0) scale(1);
            transform: translateY(0) scale(1);
  }
}
#main {
  background: #fff;
}
#main P {
  margin: 0;
}
#main #main_box .hero-section {
  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(40px, 4.62vw, 88px);
  padding: clamp(50px, 8vw, 236px) 0 0;
  width: 100%;
  background-image: url(../img/key-image.jpg);
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 64% auto;
}
@media screen and (max-width: 560px ) {
  #main #main_box .hero-section {
    background-size: 100%;
    background-position: center;
  }
}
#main #main_box .hero-section a {
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}
#main #main_box .hero-section a:hover {
  -webkit-transform: translateY(-4px);
      -ms-transform: translateY(-4px);
          transform: translateY(-4px);
  -webkit-box-shadow: 6px 6px 0px #d97f1f;
          box-shadow: 6px 6px 0px #d97f1f;
  opacity: 0.95;
}
#main #main_box .hero-section .hero-cnt {
  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;
  gap: clamp(40px, 4.62vw, 88px);
}
@media screen and (max-width: 560px ) {
  #main #main_box .hero-section .hero-cnt {
    gap: 165px;
  }
}
#main #main_box .hero-section .hero-cnt .wrapper p {
  font-weight: 900;
  color: transparent;
  font-size: clamp(28px, 2.52vw, 48px);
  letter-spacing: clamp(1px, 0.12vw, 2.4px);
  line-height: clamp(48px, 4.41vw, 84px);
}
#main #main_box .hero-section .hero-cnt .wrapper p span {
  color: #118654;
  letter-spacing: 1.15px;
}
#main #main_box .hero-section .hero-cnt .wrapper p span:nth-of-type(2) {
  color: #e17b69;
}
#main #main_box .hero-section .hero-cnt .wrapper p span:nth-of-type(3) {
  color: #27b0ba;
}
#main #main_box .hero-section .hero-cnt .wrapper p span:nth-of-type(4) {
  color: #cb7930;
}
#main #main_box .hero-section .hero-cnt .wrapper p span:nth-of-type(5) {
  color: #32c259;
}
#main #main_box .hero-section .hero-cnt .hero-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 908px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  padding: clamp(24px, 2.73vw, 52px) clamp(20px, 2.62vw, 50px);
  width: 100%;
  background-color: #a4d9b2;
}
@media screen and (max-width: 560px ) {
  #main #main_box .hero-section .hero-cnt .hero-sub {
    background-color: rgba(164, 217, 178, 0.9);
  }
}
#main #main_box .hero-section .hero-cnt .hero-sub dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(20px, 2.2vw, 42px);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  /*@media all and (max-width: 980px) {
    flex-direction: column;
    text-align: center;
  }*/
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dt, #main #main_box .hero-section .hero-cnt .hero-sub dl dd {
  min-width: 0;
}
#main #main_box .hero-section .hero-cnt .hero-sub 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;
  width: clamp(80px, 8.87vw, 169px);
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dt .ku {
  width: 100%;
  aspect-ratio: 169/178;
  -o-object-fit: cover;
     object-fit: cover;
}
#main #main_box .hero-section .hero-cnt .hero-sub 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;
  width: auto;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  gap: clamp(16px, 1.63vw, 31px);
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dd div {
  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;
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dd div p {
  font-weight: 700;
  color: #000000;
  font-size: clamp(16px, 1.26vw, 24px);
  line-height: clamp(24px, 1.89vw, 36px);
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dd .hero-btn {
  position: relative;
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dd .hero-btn a {
  display: block;
  width: calc(100% - 5px);
  padding: clamp(10px, 0.83vw, 16px) clamp(20px, 2.88vw, 55px) clamp(12px, 0.99vw, 19px) 60px;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box .hero-section .hero-cnt .hero-sub dl dd .hero-btn a {
    padding: clamp(10px, 0.83vw, 16px) clamp(20px, 2.88vw, 55px);
  }
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dd .hero-btn a {
  background-color: #ffa83a;
  -webkit-box-shadow: 4px 4px 0px #ea9326;
          box-shadow: 4px 4px 0px #ea9326;
  text-align: center;
  font-weight: 700;
  color: #ffffff;
  font-size: clamp(12px, 1.05vw, 20px);
  line-height: clamp(18px, 1.31vw, 25px);
  white-space: nowrap;
}
#main #main_box .hero-section .hero-cnt .hero-sub dl dd .hero-btn a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f0da";
  width: 20px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
      -ms-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 0;
}
@media all and (max-width: 560px) {
  #main #main_box .hero-section .hero-cnt {
    width: 100%;
  }
}
#main #main_box .news-section {
  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: 8px;
  padding: clamp(100px, 10.8vw, 160px) clamp(24px, 7.8vw, 100px);
  width: 100%;
  background-color: #ffffff;
  border-radius: 8px;
  overflow: hidden;
}
#main #main_box .news-section article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 1280px;
  width: 100%;
}
#main #main_box .news-section article .title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  border-bottom: 2px solid #118654;
  position: relative;
}
#main #main_box .news-section article .title .sec-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
  padding-bottom: 6px;
  width: 100%;
}
#main #main_box .news-section article .title .sec-title h2 {
  font-weight: 900;
  color: #118654;
  font-size: clamp(12px, 0.84vw, 16px);
  line-height: clamp(18px, 1.26vw, 24px);
  white-space: nowrap;
}
#main #main_box .news-section article .title .sec-title h3 {
  font-weight: 900;
  color: #000000;
  font-size: clamp(22px, 2.1vw, 40px);
  letter-spacing: clamp(1px, 0.1vw, 2px);
  line-height: clamp(32px, 3.15vw, 60px);
  white-space: nowrap;
}
#main #main_box .news-section article .title .news-more a {
  position: relative;
  top: clamp(16px, 1.47vw, 28px);
  font-weight: 700;
  color: #000000;
  font-size: clamp(14px, 0.94vw, 18px);
  line-height: clamp(20px, 1.41vw, 27px);
  white-space: nowrap;
  padding-right: 2rem;
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease;
}
#main #main_box .news-section article .title .news-more a:hover {
  -webkit-transform: translateX(4px);
      -ms-transform: translateX(4px);
          transform: translateX(4px);
  color: #f6951a;
}
#main #main_box .news-section article .title .news-more a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f061";
  width: 20px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
      -ms-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 0;
}
#main #main_box .news-section article .news-item {
  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%;
}
#main #main_box .news-section article .news-item dl a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(40px, 7.35vw, 140px);
  padding: clamp(16px, 1.68vw, 32px) 0;
  border-bottom: 1px solid #cccccc;
  -webkit-transition: background-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: background-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: background-color 0.3s ease, transform 0.3s ease;
  transition: background-color 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
#main #main_box .news-section article .news-item dl a:hover {
  font-weight: bold;
}
@media all and (max-width: 980px) {
  #main #main_box .news-section article .news-item dl a {
    -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, 1vw, 16px);
  }
}
#main #main_box .news-section article .news-item dl a dt {
  font-weight: 400;
  color: #6b7280;
  font-size: clamp(12px, 0.73vw, 14px);
  line-height: 1;
  white-space: nowrap;
}
#main #main_box .news-section article .news-item dl a dd {
  font-weight: 400;
  color: #000000;
  font-size: clamp(14px, 0.84vw, 16px);
  line-height: clamp(18px, 1.05vw, 20px);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
@media all and (max-width: 560px) {
  #main #main_box .news-section article .news-item dl a dd {
    white-space: normal;
  }
}
#main #main_box .news-section article .news-item dl a:hover dd {
  opacity: 0.7;
}
#main #main_box .point {
  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: 8px;
  padding: clamp(100px, 10.8vw, 160px) clamp(24px, 7.8vw, 100px);
  width: 100%;
}
#main #main_box .point a {
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}
#main #main_box .point .point-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1280px;
  width: 100%;
  gap: clamp(12px, 1.36vw, 26px);
  position: relative;
}
#main #main_box .point .point-inner:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  max-width: 500px;
  width: 100%;
  aspect-ratio: 4/3;
  background-image: url(../img/point.png);
  background-repeat: no-repeat;
  background-position: top right;
  background-size: contain;
}
@media screen and (max-width: 560px ) {
  #main #main_box .point .point-inner:after {
    background-size: cover;
  }
}
@media all and (max-width: 980px) {
  #main #main_box .point .point-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#main #main_box .point .point-inner .sec-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(10px, 0.94vw, 18px);
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  z-index: 1;
}
#main #main_box .point .point-inner .sec-title h2 {
  font-weight: 900;
  color: #118654;
  font-size: clamp(12px, 0.84vw, 16px);
  line-height: clamp(18px, 1.26vw, 24px);
}
#main #main_box .point .point-inner .sec-title h3 {
  font-weight: 900;
  color: #000000;
  font-size: clamp(22px, 2.1vw, 40px);
  letter-spacing: clamp(1px, 0.1vw, 2px);
  line-height: clamp(32px, 3.15vw, 60px);
  white-space: nowrap;
}
#main #main_box .point .point-inner .sec-title h3 .sp-br {
  display: none;
}
@media screen and (max-width: 560px ) {
  #main #main_box .point .point-inner .sec-title h3 .sp-br {
    display: inline;
  }
}
@media all and (max-width: 560px) {
  #main #main_box .point .point-inner .sec-title h3 {
    white-space: normal;
  }
}
#main #main_box .point .point-inner2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(40px, 5.25vw, 100px);
  z-index: 1;
  padding-top: clamp(40px, 4.3vw, 82px);
}
#main #main_box .point .point-inner2 > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1280px;
  width: 100%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(40px, 7.45vw, 142px);
}
@media all and (max-width: 980px) {
  #main #main_box .point .point-inner2 > dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#main #main_box .point .point-inner2 > dl dt {
  max-width: clamp(260px, 29.4vw, 560px);
  width: 100%;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box .point .point-inner2 > dl dt {
    max-width: 560px;
  }
}
#main #main_box .point .point-inner2 > dl dt img {
  width: 100%;
}
#main #main_box .point .point-inner2 > dl dt .point-slider {
  margin: 0;
  padding: 0;
  list-style: none;
  overflow: hidden;
  border-radius: 20px;
}
#main #main_box .point .point-inner2 > dl dt .point-slider li img {
  width: 100%;
  display: block;
  aspect-ratio: 560/420;
  -o-object-fit: cover;
     object-fit: cover;
}
#main #main_box .point .point-inner2 > 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;
  gap: clamp(30px, 3.78vw, 72px);
}
#main #main_box .point .point-inner2 > dl dd p {
  font-size: clamp(14px, 0.94vw, 18px);
  line-height: clamp(22px, 1.41vw, 27px);
  text-align: justify;
}
#main #main_box .point .point-inner2 > dl dd .point-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: clamp(12px, 1.47vw, 28px);
}
@media all and (max-width: 560px) {
  #main #main_box .point .point-inner2 > dl dd .point-btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#main #main_box .point .point-inner2 > dl dd .point-btn p {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  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;
}
#main #main_box .point .point-inner2 > dl dd .point-btn p a {
  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;
  padding: clamp(12px, 1.26vw, 24px);
  gap: clamp(16px, 2.1vw, 40px);
  width: 100%;
  position: relative;
  font-weight: 700;
  color: #118654;
  background: #fff;
  border-radius: 15px;
  border: 2px solid #118654;
  font-size: clamp(14px, 0.84vw, 16px);
  line-height: 1.5;
}
#main #main_box .point .point-inner2 > dl dd .point-btn p a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f061";
  width: 20px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
      -ms-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 5%;
}
#main #main_box .point .point-inner2 > dl dd .point-btn p a:hover {
  -webkit-transform: translateY(-3px);
      -ms-transform: translateY(-3px);
          transform: translateY(-3px);
  -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.12);
          box-shadow: 0 6px 12px rgba(0, 0, 0, 0.12);
  opacity: 0.9;
}
#main #main_box .point .point-inner2 .jigyo-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1280px;
  width: 100%;
  gap: clamp(20px, 2.1vw, 40px);
}
#main #main_box .point .point-inner2 .jigyo-list a {
  -webkit-transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  transition: transform 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}
#main #main_box .point .point-inner2 .jigyo-list a:hover {
  -webkit-box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
          box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
}
@media all and (max-width: 980px) {
  #main #main_box .point .point-inner2 .jigyo-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media all and (max-width: 560px) {
  #main #main_box .point .point-inner2 .jigyo-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#main #main_box .point .point-inner2 .jigyo-list li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (max-width: 560px ) {
  #main #main_box .point .point-inner2 .jigyo-list li {
    width: 65%;
    margin: 0 auto;
  }
}
#main #main_box .point .point-inner2 .jigyo-list li a {
  width: 100%;
  max-width: 400px;
  height: 100%;
  background: #fff;
  border-radius: 8px;
  -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.0509803922);
          box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.0509803922);
  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: clamp(20px, 2.2vw, 42px);
  padding-bottom: clamp(40px, 3.36vw, 64px);
}
#main #main_box .point .point-inner2 .jigyo-list li:nth-of-type(1) dt {
  background: linear-gradient(181deg, #008dde 0%, #007ac0 100%);
}
#main #main_box .point .point-inner2 .jigyo-list li:nth-of-type(2) dt {
  background: -webkit-gradient(linear, left top, left bottom, from(#1abd78), to(#0f9a5f));
  background: linear-gradient(180deg, #1abd78 0%, #0f9a5f 100%);
}
#main #main_box .point .point-inner2 .jigyo-list li:nth-of-type(3) dt {
  background: -webkit-gradient(linear, left top, left bottom, from(#f6951a), to(#e5850b));
  background: linear-gradient(180deg, #f6951a 0%, #e5850b 100%);
}
#main #main_box .point .point-inner2 .jigyo-list li:nth-of-type(4) dt {
  background: linear-gradient(181deg, #008dde 0%, #007ac0 100%);
}
#main #main_box .point .point-inner2 .jigyo-list li dl {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#main #main_box .point .point-inner2 .jigyo-list li dl dt {
  width: 100%;
  padding: clamp(20px, 2.26vw, 43px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 900;
  color: #fff;
  font-size: clamp(14px, 1.47vw, 28px);
  border-radius: 8px 8px 0 0;
  margin-bottom: 1em;
}
#main #main_box .point .point-inner2 .jigyo-list li dl dd {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  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-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(20px, 2.2vw, 43px);
}
#main #main_box .point .point-inner2 .jigyo-list li dl dd img {
  width: clamp(50px, 3.4vw, 65px);
}
#main #main_box .point .point-inner2 .jigyo-list li dl dd p {
  font-size: clamp(14px, 0.94vw, 18px);
  line-height: 1.4;
  text-align: center;
}
#main #main_box .point .point-inner2 .jigyo-list li dl:hover p {
  opacity: 0.8;
}
#main #main_box .center {
  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(100px, 10.8vw, 160px) clamp(24px, 7.8vw, 100px);
  background-color: #f1faff;
}
#main #main_box .center a {
  transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease, background 0.3s ease, box-shadow 0.3s ease;
}
#main #main_box .center .center-inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 1280px;
  width: 100%;
  gap: clamp(30px, 3.25vw, 62px);
}
#main #main_box .center .center-inner > div:not([class]) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#main #main_box .center .center-inner > div:not([class]):after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  max-width: 338px;
  width: 100%;
  aspect-ratio: 169/160;
  background-image: url(../img/center.png);
  background-repeat: no-repeat;
  background-position: top right;
  background-size: contain;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box .center .center-inner > div:not([class]):after {
    display: none;
  }
}
@media all and (max-width: 980px) {
  #main #main_box .center .center-inner > div:not([class]) {
    -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;
    margin: 0 auto;
    text-align: center;
  }
}
#main #main_box .center .center-inner > div:not([class]) .sec-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#main #main_box .center .center-inner > div:not([class]) .sec-title h2 {
  font-weight: 900;
  color: #007ac0;
  font-size: clamp(12px, 0.84vw, 16px);
  line-height: clamp(18px, 1.26vw, 24px);
}
#main #main_box .center .center-inner > div:not([class]) .sec-title h3 {
  padding-top: clamp(10px, 0.94vw, 18px);
  font-weight: 900;
  font-size: clamp(22px, 2.1vw, 40px);
  line-height: clamp(32px, 3.15vw, 60px);
}
#main #main_box .center .center-inner > div:not([class]) .sec-title > p {
  font-size: clamp(12px, 0.84vw, 16px);
  line-height: clamp(16px, 1.05vw, 20px);
}
#main #main_box .center .center-inner .center-inner2 {
  position: relative;
  z-index: 1;
}
#main #main_box .center .center-inner .center-inner2:after {
  background: none;
}
#main #main_box .center .center-inner .center-inner2 div {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(20px, 2.36vw, 45px);
  max-width: 650px;
}
#main #main_box .center .center-inner .center-inner2 div h4 {
  border-left: 3px solid #000;
  padding-left: clamp(10px, 1.15vw, 22px);
  font-weight: 700;
  font-size: clamp(18px, 1.57vw, 30px);
  letter-spacing: clamp(1px, 0.08vw, 1.5px);
}
#main #main_box .center .center-inner .center-inner2 div p {
  font-size: clamp(14px, 0.94vw, 18px);
  line-height: clamp(22px, 1.41vw, 27px);
}
#main #main_box .center .center-inner .center-inner2 div .center-btn {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
  gap: clamp(12px, 1.47vw, 28px);
}
@media all and (max-width: 560px) {
  #main #main_box .center .center-inner .center-inner2 div .center-btn {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
#main #main_box .center .center-inner .center-inner2 div .center-btn .btn {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
#main #main_box .center .center-inner .center-inner2 div .center-btn .btn a {
  display: block;
  border: 2px solid #007ac0;
  border-radius: 15px;
  padding: clamp(10px, 0.7vw, 13px);
  color: #007ac0;
  text-align: center;
}
#main #main_box .center .center-inner .center-inner2 div .center-btn .btn a:hover {
  background: #007ac0;
  color: #fff;
}
#main #main_box .center .center-inner .center-inner2 div .center-btn .btn a span {
  display: block;
}
#main #main_box .center .center-inner .center-inner2 div .center-btn .btn a span:first-of-type {
  font-size: clamp(10px, 0.63vw, 12px);
}
#main #main_box .center .center-inner .center-inner2 div .center-btn .btn a span:nth-of-type(2) {
  font-weight: 700;
  font-size: clamp(14px, 0.84vw, 16px);
}
#main #main_box .center .center-inner .center-btn2 {
  max-width: 663px;
  width: 100%;
  margin: 0 auto;
}
#main #main_box .center .center-inner .center-btn2 a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  color: #fff;
  font-size: clamp(16px, 1.26vw, 24px);
  padding: clamp(10px, 0.83vw, 16px) clamp(20px, 2.2vw, 42px);
  border-radius: 20px;
  background: -webkit-gradient(linear, left top, right top, from(#008dde), to(#007ac0));
  background: linear-gradient(90deg, #008dde 0%, #007ac0 100%);
  -webkit-box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1490196078);
          box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.1490196078);
}
#main #main_box .center .center-inner .center-btn2 a:hover {
  -webkit-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
          transform: translateY(-1px);
  -webkit-box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
          box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2);
  opacity: 0.95;
}
#main #main_box .center .center-inner .center-btn2 a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f061";
  width: 20px;
  aspect-ratio: 1/1;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
      -ms-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  right: 5%;
}
#main #main_box .takarakuji {
  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;
  padding: clamp(80px, 8.6vw, 164px) clamp(16px, 1.26vw, 24px) 0;
  width: 100%;
  background-image: url(../img/takarakuji.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 50% 50%;
  position: relative;
}
#main #main_box .takarakuji a {
  -webkit-transition: opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: opacity 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease, -webkit-transform 0.3s ease, -webkit-box-shadow 0.3s ease;
}
#main #main_box .takarakuji .takarakuji-inner {
  width: 100%;
  max-width: 1905px;
  aspect-ratio: 1920/1040;
  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;
}
#main #main_box .takarakuji .takarakuji-inner .main-title-wrapper .sec-title {
  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(24px, 2.4vw, 46px);
}
@media screen and (max-width: 560px ) {
  #main #main_box .takarakuji .takarakuji-inner .main-title-wrapper .sec-title {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
#main #main_box .takarakuji .takarakuji-inner .main-title-wrapper .sec-title h4 {
  font-weight: 900;
  font-size: clamp(24px, 2.5vw, 48px);
  letter-spacing: clamp(1px, 0.08vw, 1.5px);
}
#main #main_box .takarakuji .takarakuji-inner .main-title-wrapper .sec-title .ku-wrapper {
  width: clamp(180px, 15vw, 289px);
}
#main #main_box .takarakuji .takarakuji-inner .main-title-wrapper .sec-title .ku-wrapper .ku-c {
  width: 100%;
  aspect-ratio: 1.33;
  -o-object-fit: cover;
     object-fit: cover;
}
#main #main_box .takarakuji .takarakuji-inner .message {
  text-align: center;
  padding-top: clamp(80px, 8vw, 144px);
  position: relative;
  padding-right: 10%;
}
#main #main_box .takarakuji .takarakuji-inner .message:after {
  content: "";
  width: clamp(120px, 10vw, 180px);
  max-width: 289px;
  aspect-ratio: 289/409;
  background: url(../img/ku-4c-01-1.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center right;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box .takarakuji .takarakuji-inner .message:after {
    width: clamp(80px, 10vw, 180px);
  }
}
#main #main_box .takarakuji .takarakuji-inner .message p {
  font-weight: 900;
  font-size: clamp(36px, 3.77vw, 72px);
  letter-spacing: clamp(2px, 0.18vw, 3.6px);
  line-height: clamp(54px, 8vw, 144px);
  color: transparent;
}
#main #main_box .takarakuji .takarakuji-inner .message p .sp-br {
  display: none;
}
@media screen and (max-width: 560px ) {
  #main #main_box .takarakuji .takarakuji-inner .message p .sp-br {
    display: inline;
  }
}
#main #main_box .takarakuji .takarakuji-inner .message p .text-p {
  color: #ff5e79;
}
#main #main_box .takarakuji .takarakuji-inner .message p .text-b {
  color: #4abcee;
}
#main #main_box .takarakuji .takarakuji-inner .message p .text {
  color: #000;
  font-size: clamp(24px, 2.5vw, 48px);
  line-height: clamp(36px, 3.77vw, 72px);
}
#main #main_box .takarakuji .takarakuji-inner .message p .text-o {
  color: #ee9c4a;
}
#main #main_box .takarakuji .takarakuji-inner .pc-wrapper {
  padding-top: clamp(80px, 8.6vw, 100px);
}
#main #main_box .takarakuji .takarakuji-inner .pc-wrapper p {
  font-size: clamp(16px, 1.26vw, 24px);
  line-height: clamp(28px, 2.2vw, 42px);
  text-align: center;
}
#main #main_box .takarakuji .takarakuji-inner a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: clamp(48px, 2vw, 80px) 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#main #main_box .takarakuji .takarakuji-inner a .image {
  width: clamp(320px, 34.5vw, 658px);
  height: auto;
}
#main #main_box .takarakuji a:hover {
  opacity: 0.95;
}
#main #main_box .takarakuji a:hover img {
  -webkit-transform: scale(1.03);
      -ms-transform: scale(1.03);
          transform: scale(1.03);
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}

#side {
  width: 300px;
  background: #ff00ff;
}

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