@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: 300;
  src: url("../fonts/NotoSerifJP-Bold.woff2") format("woff2"), url("../fonts/NotoSerifJP-Bold.woff") format("woff");
  font-display: swap;
}
@font-face {
  font-family: "Noto Serif JP";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSerifJP-Light.woff2") format("woff2"), url("../fonts/NotoSerifJP-Light.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*/ }
@media screen and (max-width: 560px ) { /*SP*/
  body {
    -webkit-text-size-adjust: 100%;
    font-size: 75%;
  }
}
@-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);
}

.slidein2 {
  opacity: 0;
  -webkit-transform: translateX(300px);
          transform: translateX(300px);
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
.slidein2.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 screen and (min-width: 981px ) {
  #first-catch {
    opacity: 0;
    -webkit-transition: opacity 1.8s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 1.8s cubic-bezier(0.45, 0.25, 0.15, 1);
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  #first-catch div h2 span {
    display: inline-block;
  }
  #first-catch div h2 span > span, #first-catch div h2 span .sub {
    display: inline-block;
    opacity: 0;
    -webkit-transform: translateX(-1.5em);
            transform: translateX(-1.5em);
    -webkit-transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), -webkit-transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), -webkit-transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), transform 1s cubic-bezier(0.45, 0.25, 0.15, 1), -webkit-transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(1) {
    -webkit-transition-delay: 0.125s;
            transition-delay: 0.125s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(2) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(3) {
    -webkit-transition-delay: 0.175s;
            transition-delay: 0.175s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(4) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(5) {
    -webkit-transition-delay: 0.225s;
            transition-delay: 0.225s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(6) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(7) {
    -webkit-transition-delay: 0.275s;
            transition-delay: 0.275s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(8) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(9) {
    -webkit-transition-delay: 0.325s;
            transition-delay: 0.325s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(10) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(11) {
    -webkit-transition-delay: 0.375s;
            transition-delay: 0.375s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(12) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(13) {
    -webkit-transition-delay: 0.425s;
            transition-delay: 0.425s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(14) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(15) {
    -webkit-transition-delay: 0.475s;
            transition-delay: 0.475s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(16) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(17) {
    -webkit-transition-delay: 0.525s;
            transition-delay: 0.525s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(18) {
    -webkit-transition-delay: 0.55s;
            transition-delay: 0.55s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(19) {
    -webkit-transition-delay: 0.575s;
            transition-delay: 0.575s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(20) {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(21) {
    -webkit-transition-delay: 0.625s;
            transition-delay: 0.625s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(22) {
    -webkit-transition-delay: 0.65s;
            transition-delay: 0.65s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(23) {
    -webkit-transition-delay: 0.675s;
            transition-delay: 0.675s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(24) {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s;
  }
  #first-catch div h2 span:nth-of-type(1) > span:nth-of-type(25) {
    -webkit-transition-delay: 0.725s;
            transition-delay: 0.725s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(1) {
    -webkit-transition-delay: 0.225s;
            transition-delay: 0.225s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(2) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(3) {
    -webkit-transition-delay: 0.275s;
            transition-delay: 0.275s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(4) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(5) {
    -webkit-transition-delay: 0.325s;
            transition-delay: 0.325s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(6) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(7) {
    -webkit-transition-delay: 0.375s;
            transition-delay: 0.375s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(8) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(9) {
    -webkit-transition-delay: 0.425s;
            transition-delay: 0.425s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(10) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(11) {
    -webkit-transition-delay: 0.475s;
            transition-delay: 0.475s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(12) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(13) {
    -webkit-transition-delay: 0.525s;
            transition-delay: 0.525s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(14) {
    -webkit-transition-delay: 0.55s;
            transition-delay: 0.55s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(15) {
    -webkit-transition-delay: 0.575s;
            transition-delay: 0.575s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(16) {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(17) {
    -webkit-transition-delay: 0.625s;
            transition-delay: 0.625s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(18) {
    -webkit-transition-delay: 0.65s;
            transition-delay: 0.65s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(19) {
    -webkit-transition-delay: 0.675s;
            transition-delay: 0.675s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(20) {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(21) {
    -webkit-transition-delay: 0.725s;
            transition-delay: 0.725s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(22) {
    -webkit-transition-delay: 0.75s;
            transition-delay: 0.75s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(23) {
    -webkit-transition-delay: 0.775s;
            transition-delay: 0.775s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(24) {
    -webkit-transition-delay: 0.8s;
            transition-delay: 0.8s;
  }
  #first-catch div h2 span:nth-of-type(2) > span:nth-of-type(25) {
    -webkit-transition-delay: 0.825s;
            transition-delay: 0.825s;
  }
  #first-catch div > p {
    overflow: hidden;
  }
  #first-catch div > p > span {
    display: inline-block;
    margin-right: 0.3em;
    opacity: 0;
    -webkit-transform: translateX(-1.5em);
            transform: translateX(-1.5em);
    -webkit-transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), -webkit-transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), -webkit-transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 0.8s cubic-bezier(0.45, 0.25, 0.15, 1), transform 1s cubic-bezier(0.45, 0.25, 0.15, 1), -webkit-transform 1s cubic-bezier(0.45, 0.25, 0.15, 1);
  }
  #first-catch div > p > span:nth-of-type(1) {
    -webkit-transition-delay: 0.425s;
            transition-delay: 0.425s;
  }
  #first-catch div > p > span:nth-of-type(2) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  #first-catch div > p > span:nth-of-type(3) {
    -webkit-transition-delay: 0.475s;
            transition-delay: 0.475s;
  }
  #first-catch div > p > span:nth-of-type(4) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  #first-catch div > p > span:nth-of-type(5) {
    -webkit-transition-delay: 0.525s;
            transition-delay: 0.525s;
  }
  #first-catch div > p > span:nth-of-type(6) {
    -webkit-transition-delay: 0.55s;
            transition-delay: 0.55s;
  }
  #first-catch div > p > span:nth-of-type(7) {
    -webkit-transition-delay: 0.575s;
            transition-delay: 0.575s;
  }
  #first-catch div > p > span:nth-of-type(8) {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  #first-catch div > p > span:nth-of-type(9) {
    -webkit-transition-delay: 0.625s;
            transition-delay: 0.625s;
  }
  #first-catch div > p > span:nth-of-type(10) {
    -webkit-transition-delay: 0.65s;
            transition-delay: 0.65s;
  }
  #first-catch div > p > span:nth-of-type(11) {
    -webkit-transition-delay: 0.675s;
            transition-delay: 0.675s;
  }
  #first-catch div > p > span:nth-of-type(12) {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s;
  }
  #first-catch div > p > span:nth-of-type(13) {
    -webkit-transition-delay: 0.725s;
            transition-delay: 0.725s;
  }
  #first-catch div > p > span:nth-of-type(14) {
    -webkit-transition-delay: 0.75s;
            transition-delay: 0.75s;
  }
  #first-catch div > p > span:nth-of-type(15) {
    -webkit-transition-delay: 0.775s;
            transition-delay: 0.775s;
  }
  #first-catch div > p > span:nth-of-type(16) {
    -webkit-transition-delay: 0.8s;
            transition-delay: 0.8s;
  }
  #first-catch div > p > span:nth-of-type(17) {
    -webkit-transition-delay: 0.825s;
            transition-delay: 0.825s;
  }
  #first-catch #first_bnr {
    opacity: 0;
    -webkit-transition: opacity 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    transition: opacity 1s cubic-bezier(0.45, 0.25, 0.15, 1);
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  #first-catch.effect div h2 > span > span,
  #first-catch.effect p > span {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  #first-catch.effect #first_bnr {
    opacity: 1;
  }
  #first-catch.effect {
    opacity: 1;
  }
  #cate_news h2 {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  #cate_news ul li {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  #cate_news ul li:first-of-type {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  #cate_news ul li:nth-of-type(2) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  #cate_news ul li:nth-of-type(3) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  #cate_news p.btn {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  #cate_news.effect h2, #cate_news.effect ul li, #cate_news.effect p.btn {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  #top_live dd h2, #top_live dd p, #top_service dl dd h2, #top_service dl dd p {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  #top_live dd h2, #top_service dl dd h2 {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  #top_live dd p, #top_service dl dd p {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  #top_live dd p.btn, #top_service dl dd p.btn {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  #top_live dd.effect h2, #top_live dd.effect p, #top_service dl dd.effect h2, #top_service dl dd.effect p {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  .service-menu ul li {
    opacity: 0;
    -webkit-transform: translateX(3em);
            transform: translateX(3em);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  .service-menu ul li:nth-of-type(1) {
    -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
  }
  .service-menu ul li:nth-of-type(2) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .service-menu ul li:nth-of-type(3) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  .service-menu ul li:nth-of-type(4) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .service-menu ul li:nth-of-type(5) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .service-menu ul li:nth-of-type(6) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .service-menu ul li:nth-of-type(7) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .service-menu ul li:nth-of-type(8) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .service-menu ul li:nth-of-type(9) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  .service-menu ul li:nth-of-type(10) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .service-menu ul li:nth-of-type(11) {
    -webkit-transition-delay: 0.55s;
            transition-delay: 0.55s;
  }
  .service-menu ul li:nth-of-type(12) {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  .service-menu ul li:nth-of-type(13) {
    -webkit-transition-delay: 0.65s;
            transition-delay: 0.65s;
  }
  .service-menu ul li:nth-of-type(14) {
    -webkit-transition-delay: 0.7s;
            transition-delay: 0.7s;
  }
  .service-menu ul li:nth-of-type(15) {
    -webkit-transition-delay: 0.75s;
            transition-delay: 0.75s;
  }
  .service-menu.effect ul li {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  #top_pickup h2 {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  #top_pickup ul li {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  #top_pickup ul li:nth-of-type(1) {
    -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
  }
  #top_pickup ul li:nth-of-type(2) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  #top_pickup ul li:nth-of-type(3) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  #top_pickup ul li:nth-of-type(4) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  #top_pickup ul li:nth-of-type(5) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  #top_pickup ul li ul.fukushi li:nth-of-type(1) {
    -webkit-transition-delay: 0.075s;
            transition-delay: 0.075s;
  }
  #top_pickup ul li ul.fukushi li:nth-of-type(2) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  #top_pickup ul li ul.fukushi li:nth-of-type(3) {
    -webkit-transition-delay: 0.225s;
            transition-delay: 0.225s;
  }
  #top_pickup ul li ul.fukushi li:nth-of-type(4) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  #top_pickup ul li ul.fukushi li:nth-of-type(5) {
    -webkit-transition-delay: 0.375s;
            transition-delay: 0.375s;
  }
  #top_pickup.effect h2, #top_pickup.effect ul li, #top_pickup.effect ul.fukushi li {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  #syakyou-dayori #dayori_top, #syakyou-dayori #dayori_inner {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  #syakyou-dayori #dayori_top h2 {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  #syakyou-dayori #dayori_top p.btn {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  #syakyou-dayori #dayori_inner {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  #syakyou-dayori.effect #dayori_top, #syakyou-dayori.effect #dayori_inner {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  #footer {
    opacity: 0;
    -webkit-transform: translateY(-1.5em);
            transform: translateY(-1.5em);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  #footer dt {
    -webkit-transition-delay: 0.075s;
            transition-delay: 0.075s;
  }
  #footer dd p:nth-of-type(1) {
    -webkit-transition-delay: 0.025s;
            transition-delay: 0.025s;
  }
  #footer dd p:nth-of-type(2) {
    -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
  }
  #footer dd p:nth-of-type(3) {
    -webkit-transition-delay: 0.075s;
            transition-delay: 0.075s;
  }
  #footer dd p:nth-of-type(4) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  #footer dd p:nth-of-type(5) {
    -webkit-transition-delay: 0.125s;
            transition-delay: 0.125s;
  }
  #footer dd p:nth-of-type(6) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  #footer dd p:nth-of-type(7) {
    -webkit-transition-delay: 0.175s;
            transition-delay: 0.175s;
  }
  #footer dd p:nth-of-type(8) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  #footer dd p:nth-of-type(9) {
    -webkit-transition-delay: 0.225s;
            transition-delay: 0.225s;
  }
  #footer dd p:nth-of-type(10) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  #footer.effect {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
#first-view {
  padding: 0 10%;
  background-color: #fff;
  position: relative;
  margin: 0 auto;
  margin-top: 150px;
  /* スクロールダウンの位置 */
  /* 線のアニメーション部分 */
  /* 線の背景色 */
  /* 線のアニメーション */
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view {
    padding: 0 2em;
  }
}
#first-view #first-catch {
  background: url(../img/top-image.png) no-repeat top right/50%;
  margin-right: 0;
  margin-top: 4em;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view #first-catch {
    background: url(../img/top-image.png) no-repeat top center/80%;
    padding-right: 0;
  }
}
#first-view #first-catch > div {
  max-width: 100%;
  padding-top: 5em;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view #first-catch > div {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    background: rgba(255, 255, 255, 0.8);
  }
}
#first-view #first-catch > div h2 {
  font-size: clamp(80%, 3vw, 375%);
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.5;
  margin: 0;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view #first-catch > div h2 {
    font-size: 200%;
    background: #fff;
  }
}
@media screen and (max-width: 560px ) {
  #first-view #first-catch > div h2 {
    text-align: center;
  }
}
@media screen and (max-width: 560px ) {
  #first-view #first-catch > div h2 span {
    white-space: nowrap;
  }
}
#first-view #first-catch > div #sub-title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 0.8em;
  font-size: 150%;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view #first-catch > div #sub-title {
    background: rgba(255, 255, 255, 0.8);
  }
}
#first-view #first-catch > div #first_bnr {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 6em;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view #first-catch > div #first_bnr {
    background: #fff;
  }
}
#first-view #first-img {
  width: 55%;
  text-align: center;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view #first-img {
    display: none;
  }
}
#first-view #first-img img {
  width: 100%;
  max-height: 100vh;
  aspect-ratio: 1/1;
  overflow: hidden;
}
#first-view .scroll {
  position: absolute;
  left: 50%;
  bottom: 5%;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #first-view .scroll {
    display: none;
  }
}
@media screen and (max-width: 1050px ) and (min-width: 561px ) {
  #first-view .scroll {
    right: 10%;
  }
}
#first-view .scroll a {
  text-decoration: none;
}
#first-view .scroll a:hover {
  opacity: 0.7;
}
#first-view .scroll::before {
  -webkit-animation: scroll 2s infinite;
          animation: scroll 2s infinite;
  background-color: #000;
  content: "";
  height: 80px;
  left: -25px;
  margin: auto;
  position: absolute;
  right: 0;
  width: 1px;
  z-index: 2;
}
@media screen and (max-width: 1050px ) and (min-width: 561px ) {
  #first-view .scroll::before {
    left: auto;
    right: 23px;
  }
}
#first-view .scroll::after {
  background-color: #ccc;
  content: "";
  height: 80px;
  margin: auto;
  position: absolute;
  right: 23px;
  top: 0;
  width: 1px;
}
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  51% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: scale(1, 0);
            transform: scale(1, 0);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  50% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 0;
            transform-origin: 0 0;
  }
  51% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
  100% {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 100%;
            transform-origin: 0 100%;
  }
}

#main h2 {
  font-size: 200%;
  margin-bottom: 3rem;
  letter-spacing: 5px;
}
#main h2 span:not(.under-y) {
  font-size: 50%;
  display: block;
}
#main h2 span.under-y span {
  display: inline-block;
  font-size: clamp(20px, 3.6vw, 32px);
}
@media screen and (max-width: 560px ) {
  #main h2 span.under-y span {
    white-space: nowrap;
  }
}
#main #main_box {
  background-color: #fff;
}
@media screen and (min-width: 981px ) {
  #main #main_box article {
    padding: 5.8vw;
  }
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box article {
    padding: 4rem;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box article {
    padding: 2rem;
  }
}
#main #main_box article dl dt {
  overflow: hidden;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_live dl, #main #main_box #top_service dl {
    display: block;
  }
}
#main #main_box #top_live dl dt, #main #main_box #top_service dl dt {
  width: 50%;
  max-height: 597px;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_live dl dt, #main #main_box #top_service dl dt {
    display: none;
  }
}
#main #main_box #top_live dl dd, #main #main_box #top_service dl dd {
  width: 50%;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_live dl dd, #main #main_box #top_service dl dd {
    width: 100%;
  }
}
#main #main_box #top_live {
  padding-left: 0;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_live {
    background: url(../img/live.jpeg) no-repeat center/cover;
    padding: 1.5rem;
  }
}
#main #main_box #top_live br:first-of-type {
  display: none;
}
#main #main_box #top_live h2 {
  text-align: left;
  margin-bottom: 1rem;
}
#main #main_box #top_live h2 span:not(.catch, .under-y) {
  letter-spacing: 5px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(30%, #FFFB88));
  background: linear-gradient(transparent 70%, #FFFB88 30%);
}
#main #main_box #top_live h2 span.under-y {
  letter-spacing: 5px;
  display: inline-block;
  margin-bottom: 1rem;
  font-size: clamp(20px, 3.6vw, 32px);
}
#main #main_box #top_live dl dt {
  border-radius: 0 20px 20px 0;
  margin-right: 0;
}
@media screen and (min-width: 981px ) {
  #main #main_box #top_live dl dd {
    padding-left: 5rem;
    padding-top: 2rem;
  }
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_live dl dd {
    padding-left: 4rem;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_live dl dd {
    background: rgba(255, 255, 255, 0.8);
    padding: 2rem;
  }
}
#main #main_box #top_live dl dd p:not(.btn) {
  max-width: 465px;
  line-height: 2.25;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_live dl dd p:not(.btn) {
    max-width: 100%;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_live h2 span.under-y {
    margin-bottom: 0;
  }
}
#main #main_box #top_service {
  background: #FAFFF9;
  padding-right: 0;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_service {
    background: url(../img/service.jpeg) no-repeat center/cover;
    padding: 2rem;
    margin: 2rem 0;
  }
}
#main #main_box #top_service h2 {
  text-align: left;
  margin-bottom: 1rem;
}
#main #main_box #top_service h2 span {
  letter-spacing: 5px;
}
#main #main_box #top_service dl dt {
  border-radius: 20px 0 0 20px;
  margin-left: 0;
}
#main #main_box #top_service dl dd {
  padding-right: 5rem;
  overflow: visible;
}
@media screen and (min-width: 981px ) {
  #main #main_box #top_service dl dd {
    padding-left: 5rem;
    padding-top: 5rem;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_service dl dd {
    background: rgba(255, 255, 255, 0.8);
    padding: 2rem;
  }
}
#main #main_box #top_service dl dd p:not(.btn) {
  line-height: 2.25;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_service dl dd p:not(.btn) {
    max-width: 100%;
  }
}
#main #main_box #top_service dl dd span p {
  overflow: hidden;
  line-height: 2.25;
  margin-right: 2rem;
  max-width: 533px;
}
#main #main_box .service-menu {
  background: #FAFFF9;
  position: relative;
  width: 100%;
  padding-bottom: 5.8vw;
}
@media screen and (max-width: 560px ) {
  #main #main_box .service-menu {
    padding: 2rem 0;
  }
}
#main #main_box .service-menu ul.slick-slider {
  max-width: 1225px;
  margin: 0 auto;
  padding-bottom: 1em;
}
@media screen and (max-width: 560px ) {
  #main #main_box .service-menu ul.slick-slider {
    padding-bottom: 0;
  }
}
#main #main_box .service-menu ul.slick-slider li.slick-slide {
  max-width: 546px !important;
}
#main #main_box .service-menu ul.slick-slider img {
  max-width: 100%;
  height: auto;
}
#main #main_box .service-menu .prev-arrow {
  position: absolute;
  z-index: 1;
  top: 45%;
  left: -5%;
}
#main #main_box .service-menu .prev-arrow:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0d9";
  color: #5FBA47;
  font-weight: 900;
  margin-right: 1.5em;
  font-size: 3em;
}
#main #main_box .service-menu .prev-arrow:hover {
  opacity: 0.7;
}
#main #main_box .service-menu .next-arrow {
  position: absolute;
  z-index: 1;
  top: 45%;
  right: -5%;
}
#main #main_box .service-menu .next-arrow:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0da";
  color: #5FBA47;
  font-weight: 900;
  margin-left: 1.5em;
  font-size: 3em;
}
#main #main_box .service-menu .next-arrow:hover {
  opacity: 0.7;
}
#main #main_box .service-menu .slide-arrow {
  cursor: pointer;
}
@media screen and (max-width: 560px ) {
  #main #main_box .service-menu .slick-dots {
    position: static;
    padding: 2rem 0;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
#main #main_box .service-menu .slick-dots li {
  padding: 0 15px;
}
#main #main_box .service-menu .slick-dots li button:before {
  font-size: 16px;
}
#main #main_box .service-menu li {
  text-align: center;
  padding: 13px 10px 10px;
}
#main #main_box .service-menu li:last-child {
  margin-right: 0;
}
#main #main_box .service-menu li .sermenu-img {
  aspect-ratio: 1.5/1;
  width: 100%;
  height: auto;
}
#main #main_box .service-menu li .sermenu-img img {
  width: 100%;
}
#main #main_box .service-menu li .sermenu-title {
  padding: 1em 0;
}
#main #main_box .service-menu li a {
  display: block;
  overflow: hidden;
  background: #fff;
  -webkit-box-shadow: 0px 0px 10px rgba(10, 57, 7, 0.2);
          box-shadow: 0px 0px 10px rgba(10, 57, 7, 0.2);
  border-radius: 20px;
  border: 5px solid transparent;
  text-decoration: none !important;
}
#main #main_box .service-menu li a:hover {
  opacity: 0.9;
  border: 5px solid #FFAE00;
}
#main #main_box #top_pickup {
  background: url("../img/bg-pickup.png") no-repeat left/auto;
  max-width: 1560px;
  margin: 0 auto;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup {
    background: url("../img/bg-pickup.png") no-repeat bottom/100%;
    padding: 4em 4em 320px;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup {
    background: url("../img/bg-pickup.png") no-repeat bottom/100%;
    padding: 4em 4em 160px;
  }
}
#main #main_box #top_pickup h2 {
  text-align: right;
  margin-right: 15%;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup h2 {
    text-align: left;
  }
}
#main #main_box #top_pickup div > ul {
  /*display: grid; 
   grid-template-columns: 1fr 1fr 1fr; 
   grid-template-rows: 1fr; 
   gap: 0px 16px; 
   width: 100%;
   margin-left: auto;
   max-width: 1046px;*/
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 16px 1fr 16px 1fr 16px 1fr;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  width: 100%;
  margin-left: auto;
  max-width: 1260px;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
    max-width: 692px;
    width: 100%;
  }
}
@media screen and (max-width: 980px ) and (min-width: 561px ) and (max-width: 819px) {
  #main #main_box #top_pickup div > ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
  }
}
#main #main_box #top_pickup div > ul > li {
  max-width: 324px;
  border-radius: 10px;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul > li {
    min-width: 320px;
    width: 100%;
    margin-right: 0;
  }
}
#main #main_box #top_pickup div > ul > li .pick_inner {
  position: relative;
}
#main #main_box #top_pickup div > ul > li .pick_inner:hover p:nth-child(2) {
  background: rgb(95, 186, 71);
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
#main #main_box #top_pickup div > ul > li .pick_inner a {
  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;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  aspect-ratio: 1/1;
  border-radius: 10px;
  text-decoration: none;
}
#main #main_box #top_pickup div > ul > li .pick_inner a p:first-child {
  font-size: clamp(18px, 1.667vw, 48px);
  text-align: center;
}
#main #main_box #top_pickup div > ul > li .pick_inner a .inner_btn {
  font-size: clamp(12px, 1.667vw, 18px);
  margin: 0;
  position: absolute;
  bottom: 15%;
}
#main #main_box #top_pickup div > ul > li .pick_inner a:after {
  content: "";
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
#main #main_box #top_pickup div > ul > li .pick_inner a:hover::after {
  background-color: rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 981px ) {
  #main #main_box #top_pickup div > ul > li .fukushi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 16px;
    max-height: 303px;
    height: 100%;
  }
}
#main #main_box #top_pickup div > ul > li .fukushi p {
  margin: 0;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul > li .fukushi {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 2fr 16px 1fr;
    grid-template-columns: 2fr 1fr;
    -ms-grid-rows: 1fr;
    grid-template-rows: 1fr;
    gap: 16px;
    /*@media screen and (max-width: 819px) {
    	grid-template-columns: repeat(auto-fit, 354px); 
    	gap: 0;
    }*/
  }
  #main #main_box #top_pickup div > ul > li .fukushi > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  #main #main_box #top_pickup div > ul > li .fukushi > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li .fukushi {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    flex-direction: nowrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
#main #main_box #top_pickup div > ul > li .fukushi li {
  max-width: 338px;
  width: 100%;
  border-radius: 10px;
  text-align: center;
  aspect-ratio: 303/143.5;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul > li .fukushi li {
    min-width: 320px;
  }
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li .fukushi li {
    margin-bottom: 1em;
  }
}
#main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner {
  height: 100%;
  border-radius: 10px;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner {
    margin: 0;
  }
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner {
    margin: 0;
  }
}
#main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a {
  display: block;
  height: 100%;
  border-radius: 10px;
  text-decoration: none;
  position: relative;
  z-index: 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-direction: row;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
          flex-direction: row;
}
#main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a:after {
  content: "";
  background-color: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a:hover::after {
  background-color: rgba(0, 0, 0, 0.3);
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a {
    padding: 1em;
  }
}
#main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a p {
  font-size: clamp(18px, 1.667vw, 24px);
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a p {
    padding: 2em 0;
  }
}
#main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a p:after {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  font-weight: 900;
  padding-left: 1em;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li .fukushi li .fukushi_inner a p {
    left: 20%;
    top: 30%;
  }
}
#main #main_box #top_pickup div > ul > li a:hover {
  text-decoration: none;
}
#main #main_box #top_pickup div > ul > li a p:nth-child(1) {
  display: block;
  color: #fff;
  font-size: 150%;
  font-weight: bold;
  z-index: 1;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li a p:nth-child(1) {
    font-size: 200%;
  }
}
#main #main_box #top_pickup div > ul > li a p:nth-child(2) {
  display: block;
  background: rgba(255, 255, 255, 0.8);
  padding: 0.8em 2em;
  border-radius: 10px;
  z-index: 1;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top_pickup div > ul > li a p:nth-child(2) {
    width: auto;
  }
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul > li a p:nth-child(2) {
    width: auto;
  }
}
#main #main_box #top_pickup div > ul > li a p:nth-child(2):after {
  font-family: "Font Awesome 5 Free";
  content: "\f105";
  color: #666666;
  font-weight: 900;
  margin-left: 0.8em;
}
#main #main_box #top_pickup div > ul #pickup1 .pick_inner a {
  background: url("../img/pickup1.jpeg") no-repeat center/cover;
}
#main #main_box #top_pickup div > ul #pickup1 .pick_inner a:before {
  content: url(../img/icon_sasaeai.png);
  position: absolute;
  width: 40px;
  height: 40px;
  top: 15%;
  z-index: 1;
}
#main #main_box #top_pickup div > ul #pickup2 .pick_inner a {
  background: url("../img/pickup2.jpeg") no-repeat center/cover;
}
#main #main_box #top_pickup div > ul #pickup2 .pick_inner a:before {
  content: url(../img/icon_house.png);
  position: absolute;
  width: 30px;
  height: 30px;
  top: 15%;
  z-index: 1;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul #pickup3 {
    aspect-ratio: 320/161;
  }
}
#main #main_box #top_pickup div > ul #pickup3 .fukushi_inner a {
  background: url("../img/kushikino.jpg") no-repeat center/cover;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul #pickup4 {
    aspect-ratio: 320/161;
  }
}
#main #main_box #top_pickup div > ul #pickup4 .fukushi_inner a {
  background: url("../img/ichiki.jpg") no-repeat center/cover;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul #pickup5 {
    aspect-ratio: 320/161;
  }
}
#main #main_box #top_pickup div > ul #pickup5 .fukushi_inner a {
  background: url("../img/kyodo-bokin.jpg") no-repeat center/contain;
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top_pickup div > ul #pickup6 {
    aspect-ratio: 320/161;
  }
}
#main #main_box #top_pickup div > ul #pickup6 .fukushi_inner a {
  background: url("../img/sekijuji.jpg") no-repeat center/contain;
}
#main #main_box #syakyou-dayori {
  position: relative;
  background: url("../img/bg_syakyoudayori.png") no-repeat bottom/contain;
  padding-bottom: 14em;
  /*p.btn {
  	position: absolute;
  	top: 12%;
  	right: 6%;
  }*/
}
@media screen and (max-width: 560px ) {
  #main #main_box #syakyou-dayori {
    padding-bottom: 20%;
  }
}
#main #main_box #syakyou-dayori div {
  max-width: 1280px;
  margin: 0 auto;
}
#main #main_box #syakyou-dayori div #dayori_top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 560px ) {
  #main #main_box #syakyou-dayori div #dayori_top {
    display: block;
  }
  #main #main_box #syakyou-dayori div #dayori_top h2 {
    margin-bottom: 0;
  }
}
#main #main_box #syakyou-dayori div #dayori_inner {
  line-height: 1.25;
  border-bottom: 1px dotted #ccc;
  padding-top: 5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: nowrap;
          flex-direction: nowrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #syakyou-dayori div #dayori_inner {
    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;
  }
}
#main #main_box #syakyou-dayori div #dayori_inner .sub {
  font-weight: bold;
  letter-spacing: 3px;
}
#main #main_box #syakyou-dayori div #dayori_inner .sub:before {
  content: "";
  background: url("../img/line.png") no-repeat center/auto;
  display: inline-block;
  width: 120px;
  height: 1px;
  margin-right: 1rem;
  padding: 0.4em 0;
}
#main #main_box #syakyou-dayori div #dayori_inner p:nth-child(2) {
  font-size: 1.12em;
  padding-left: 5em;
  text-decoration: underline;
}
#main #main_box #syakyou-dayori div #dayori_inner p:nth-child(2):hover {
  text-decoration: none;
}
@media screen and (max-width: 560px ) {
  #main #main_box #syakyou-dayori div #dayori_inner p:nth-child(2) {
    padding-left: 0;
  }
}
#main #main_box #syakyou-dayori div #dayori_inner p:nth-child(2) a:hover {
  text-decoration: none;
  color: #5FBA47;
}

