@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&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*/ }
@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);
  -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.1s;
  transition: all 0.1s;
  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.1s 1 ease normal forwards;
          animation: fadeUp 1s 0.1s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(2) {
  -webkit-animation: fadeUp 1s 0.2s 1 ease normal forwards;
          animation: fadeUp 1s 0.2s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(3) {
  -webkit-animation: fadeUp 1s 0.3s 1 ease normal forwards;
          animation: fadeUp 1s 0.3s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(4) {
  -webkit-animation: fadeUp 1s 0.4s 1 ease normal forwards;
          animation: fadeUp 1s 0.4s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(5) {
  -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(6) {
  -webkit-animation: fadeUp 1s 0.6s 1 ease normal forwards;
          animation: fadeUp 1s 0.6s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(7) {
  -webkit-animation: fadeUp 1s 0.7s 1 ease normal forwards;
          animation: fadeUp 1s 0.7s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(8) {
  -webkit-animation: fadeUp 1s 0.8s 1 ease normal forwards;
          animation: fadeUp 1s 0.8s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(9) {
  -webkit-animation: fadeUp 1s 0.9s 1 ease normal forwards;
          animation: fadeUp 1s 0.9s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(10) {
  -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(11) {
  -webkit-animation: fadeUp 1s 1.1s 1 ease normal forwards;
          animation: fadeUp 1s 1.1s 1 ease normal forwards;
  -webkit-animation-play-state: running;
          animation-play-state: running;
}
.fade-list.effect > *:nth-child(12) {
  -webkit-animation: fadeUp 1s 1.2s 1 ease normal forwards;
          animation: fadeUp 1s 1.2s 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);
}


/*共通------------------------------------------*/
/*=============================================================================*/
/*ページ内コンテンツ===============================================================*/
/*=============================================================================*/
/*=============================================================================*/
/*トップコンテンツ===============================================================*/
/*=============================================================================*/
/*-----------------------------------------------------------*/
/*ヘッダー*/
/*-----------------------------------------------------------*/
#first-view {
  text-align: center;
  margin-top: 95px;
}
#first-view h2 {
  color: #2D3B93;
  font-size: clamp(32px, 8vw, 128px);
  padding: 0 64px;
}
@media screen and (max-width: 560px ) {
  #first-view h2 {
    padding: 0 32px;
  }
}
#first-view h2 > span {
  display: inline-block;
}
#first-view p {
  margin-top: 5%;
  margin-bottom: 0;
}
#first-view p img {
  width: 100vw;
}

.box-r {
  background: #E51D20;
  color: #fff;
}
.box-r:last-of-type {
  margin-right: 1em;
}

@media screen and (min-width: 981px ) {
  .catch > span {
    opacity: 0;
    -webkit-transform: translateY(-2rem);
        -ms-transform: translateY(-2rem);
            transform: translateY(-2rem);
    -webkit-transition: all 1s;
    transition: all 1s;
  }
  .catch > span:nth-of-type(1) {
    -webkit-transition-delay: 0.04s;
            transition-delay: 0.04s;
  }
  .catch > span:nth-of-type(2) {
    -webkit-transition-delay: 0.07s;
            transition-delay: 0.07s;
  }
  .catch > span:nth-of-type(3) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .catch > span:nth-of-type(4) {
    -webkit-transition-delay: 0.13s;
            transition-delay: 0.13s;
  }
  .catch > span:nth-of-type(5) {
    -webkit-transition-delay: 0.16s;
            transition-delay: 0.16s;
  }
  .catch > span:nth-of-type(6) {
    -webkit-transition-delay: 0.19s;
            transition-delay: 0.19s;
  }
  .catch > span:nth-of-type(7) {
    -webkit-transition-delay: 0.22s;
            transition-delay: 0.22s;
  }
  .catch > span:nth-of-type(8) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .catch > span:nth-of-type(9) {
    -webkit-transition-delay: 0.28s;
            transition-delay: 0.28s;
  }
  .catch > span:nth-of-type(10) {
    -webkit-transition-delay: 0.31s;
            transition-delay: 0.31s;
  }
  .catch > span:nth-of-type(11) {
    -webkit-transition-delay: 0.34s;
            transition-delay: 0.34s;
  }
  .catch > span:nth-of-type(12) {
    -webkit-transition-delay: 0.37s;
            transition-delay: 0.37s;
  }
  .catch > span:nth-of-type(13) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .catch > span:nth-of-type(14) {
    -webkit-transition-delay: 0.43s;
            transition-delay: 0.43s;
  }
  .catch > span:nth-of-type(15) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .catch > span:nth-of-type(16) {
    -webkit-transition-delay: 0.13s;
            transition-delay: 0.13s;
  }
  .catch > span:nth-of-type(17) {
    -webkit-transition-delay: 0.16s;
            transition-delay: 0.16s;
  }
  .catch > span:nth-of-type(18) {
    -webkit-transition-delay: 0.19s;
            transition-delay: 0.19s;
  }
  .catch > span:nth-of-type(19) {
    -webkit-transition-delay: 0.22s;
            transition-delay: 0.22s;
  }
  .catch > span:nth-of-type(20) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .catch > span:nth-of-type(21) {
    -webkit-transition-delay: 0.28s;
            transition-delay: 0.28s;
  }
  .catch > span:nth-of-type(22) {
    -webkit-transition-delay: 0.31s;
            transition-delay: 0.31s;
  }
  .catch > span:nth-of-type(23) {
    -webkit-transition-delay: 0.34s;
            transition-delay: 0.34s;
  }
  .catch > span:nth-of-type(24) {
    -webkit-transition-delay: 0.37s;
            transition-delay: 0.37s;
  }
  .catch > span:nth-of-type(25) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .catch > span:nth-of-type(26) {
    -webkit-transition-delay: 0.43s;
            transition-delay: 0.43s;
  }
  .catch.effect > span {
    opacity: 1;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
}
/*-----------------------------------------------------------*/
/*メインコンテンツ*/
/*-----------------------------------------------------------*/
.small {
  font-size: 0.6em;
}

#main {
  margin-bottom: 7em;
}
#main #main_box #top-taisyo h2 {
  text-align: center;
  font-size: clamp(0.5rem, -0.045rem + 2.73vw, 2rem);
  letter-spacing: 0.3em;
  width: 100%;
  padding: 0.6em;
  background: -webkit-gradient(linear, left top, right top, from(rgb(254, 210, 96)), to(rgb(255, 197, 48)));
  background: linear-gradient(90deg, rgb(254, 210, 96), rgb(255, 197, 48));
}
#main #main_box #top-taisyo > p {
  font-weight: bold;
  padding: 2em;
  font-size: 1.2em;
}
#main #main_box #top-taisyo > p span {
  display: inline-block;
}
#main #main_box #top-request h2 {
  font-size: clamp(1.5rem, 0.591rem + 4.55vw, 4rem);
  font-weight: 600;
  text-align: center;
  white-space: nowrap;
}
#main #main_box #top-request .top-btn {
  position: relative;
}
@media screen and (max-width: 560px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top-request .top-btn {
    width: 80%;
    margin: 0 auto;
  }
}
#main #main_box #top-request .top-btn > a {
  display: block;
  padding: 0.8em;
  color: #fff;
  font-size: clamp(0.75rem, 0.295rem + 2.27vw, 2rem);
  font-weight: bold;
  letter-spacing: 0.1em;
  z-index: 10;
  pointer-events: auto;
  background: -webkit-gradient(linear, left top, right top, from(rgb(62, 77, 170)), to(rgb(45, 59, 147)));
  background: linear-gradient(90deg, rgb(62, 77, 170), rgb(45, 59, 147));
  -webkit-box-shadow: 0px 4px 5px 0px rgba(0, 0, 0, 0.15);
          box-shadow: 0px 4px 5px 0px rgba(0, 0, 0, 0.15);
  max-width: 1000px;
  border-radius: 10px;
  text-align: center;
  margin: 0 auto;
  margin-top: 1em;
  padding-right: 2em;
}
#main #main_box #top-request .top-btn > a:hover {
  -webkit-transform: scale(1.02);
  -ms-transform: scale(1.02);
  transform: scale(1.02);
  -webkit-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
#main #main_box #top-request .top-btn > a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f13a";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%) scale(1);
      -ms-transform: translateY(-50%) scale(1);
          transform: translateY(-50%) scale(1);
  color: #fff;
  display: inline-block;
  position: absolute;
  right: 3%;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top-request .top-btn > a:after {
    right: 5%;
  }
}
#main #main_box #top-request .top-btn > a:hover {
  text-decoration: none;
}
#main #main_box #top-request .top-btn span {
  display: inline-block;
}
#main #main_box #top-request .request-small {
  font-size: clamp(10px, 0.6em, 20px);
}
#main #main_box #top-term-box {
  background: #F4F2EB;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 5em;
  text-align: center;
  padding: 1.8em 0;
  -webkit-box-shadow: 0px 0px 20px #cdcdcd;
          box-shadow: 0px 0px 20px #cdcdcd;
}
#main #main_box #top-term-box .term dt {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.3em 1.2em;
  background: #3B3B3B;
  color: #fff;
  font-weight: bold;
  letter-spacing: 0.1em;
  margin: 0 auto;
  font-size: 1.2em;
}
#main #main_box #top-term-box .term dd {
  font-size: clamp(0.75rem, 0.295rem + 2.27vw, 2rem);
  font-weight: bold;
  padding: 0.5em 0;
}
#main #main_box #top-term-box > p {
  line-height: 1.75;
}
#main #main_box #top-about {
  width: 100%;
  margin-top: 10%;
}
#main #main_box #top-about header h1 {
  font-size: clamp(2rem, 1.091rem + 4.55vw, 4.5rem);
  font-weight: bold;
  color: #2D3B93;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 0 24px;
}
#main #main_box #top-about header h1 span.point-circle {
  position: relative;
  display: inline-block;
  text-align: center;
  line-height: 2;
}
#main #main_box #top-about header h1 span.point-circle:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f111";
  color: #FEB733;
  font-size: 0.4em;
  position: absolute;
  top: 30%;
  left: 50%;
  -webkit-transform: translate(-50%, -100%);
      -ms-transform: translate(-50%, -100%);
          transform: translate(-50%, -100%);
}
#main #main_box #top-about .top-about-inner {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -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;
  gap: 5%;
  max-width: 1300px;
  margin: 0 auto;
  margin-top: 3em;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top-about .top-about-inner {
    display: block;
    padding: 2em;
    margin-top: 0;
  }
  #main #main_box #top-about .top-about-inner article:nth-child(2) {
    margin-top: 2em;
  }
}
#main #main_box #top-about .about-box {
  max-width: 650px;
  aspect-ratio: 1/0.8;
  padding: 3em;
  position: relative;
  -webkit-box-shadow: 0px 4px 5px 0px rgba(0, 0, 0, 0.08);
          box-shadow: 0px 4px 5px 0px rgba(0, 0, 0, 0.08);
}
@media screen and (min-width: 981px ), screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top-about .about-box {
    width: 44%;
  }
}
@media screen and (max-width: 980px ) and (min-width: 561px ) {
  #main #main_box #top-about .about-box {
    padding-bottom: 6em;
  }
}
#main #main_box #top-about .about-box h2 {
  font-size: clamp(0.75rem, 0.477rem + 1.36vw, 1.5rem);
  border-bottom: 1px solid #ccc;
  padding-bottom: 1em;
}
#main #main_box #top-about .about-box h2:before {
  padding-right: 0.6em;
}
#main #main_box #top-about .about-box ul {
  text-align: left;
  padding: 2em 0;
}
#main #main_box #top-about .about-box ul li {
  line-height: 2;
}
#main #main_box #top-about .about-box ul li:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f111";
  font-size: small;
  padding-right: 0.5em;
  display: inline-block;
}
#main #main_box #top-about .about-box ul li a {
  text-decoration: underline;
}
#main #main_box #top-about .about-box ul li a:hover {
  text-decoration: none;
}
#main #main_box #top-about .about-box .about-btn {
  position: absolute;
  bottom: 0;
  right: 0;
  margin-bottom: 0;
  border-radius: 10px 0 0 0;
}
#main #main_box #top-about .about-box .about-btn a {
  display: block;
  padding: 1em;
  color: #fff;
  border-radius: 10px 0 0 0;
}
#main #main_box #top-about .about-box .about-btn a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f0a9";
  display: inline-block;
  padding-left: 0.5em;
}
#main #main_box #top-about .about-box .about-btn a:hover {
  text-decoration: none;
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
}
#main #main_box #top-about #top-join {
  background: rgba(255, 197, 48, 0.15);
}
#main #main_box #top-about #top-join h2 {
  color: #FFC530;
  border-bottom-color: #FFC530;
}
#main #main_box #top-about #top-join h2:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f4be";
  color: #FFC530;
}
#main #main_box #top-about #top-join ul li:before {
  color: #FFC530;
}
#main #main_box #top-about #top-join .about-btn {
  background: #FFC530;
}
#main #main_box #top-about #top-consolation {
  background: rgba(255, 29, 32, 0.15);
}
#main #main_box #top-about #top-consolation h2 {
  color: #E51D20;
  border-bottom-color: #E51D20;
}
#main #main_box #top-about #top-consolation h2:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f0f8";
  color: #E51D20;
  width: 25px;
}
#main #main_box #top-about #top-consolation ul li:before {
  color: #E51D20;
}
#main #main_box #top-about #top-consolation .about-btn {
  background: #E51D20;
}
#main #main_box #top-about #top-format {
  background: rgba(54, 146, 46, 0.15);
}
#main #main_box #top-about #top-format h2 {
  color: #36922E;
  border-bottom-color: #36922E;
}
#main #main_box #top-about #top-format h2:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\e5a0";
  color: #36922E;
}
#main #main_box #top-about #top-format ul li:before {
  color: #36922E;
}
#main #main_box #top-about #top-faq {
  background: rgba(45, 59, 147, 0.15);
}
#main #main_box #top-about #top-faq h2 {
  color: #2D3B93;
  border-bottom-color: #2D3B93;
}
#main #main_box #top-about #top-faq h2:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  content: "\f059";
  color: #2D3B93;
  width: 25px;
}
#main #main_box #top-about #top-faq ul li:before {
  color: #2D3B93;
}
#main #main_box #top-about #top-faq .about-btn {
  background: #2D3B93;
}
#main #main_box #top-about #area {
  margin: 5em 0;
  padding: 1em;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top-about #area {
    margin: 0;
  }
}
#main #main_box #top-about #area > h3 {
  font-size: clamp(1.5rem, 0.955rem + 2.73vw, 3rem);
  text-align: center;
  letter-spacing: 0.1em;
}
#main #main_box #top-about #area #area-box {
  border: 2px solid #2D3B93;
  border-radius: 10px;
  padding: 1.5em;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  margin-top: 2em;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top-about #area #area-box {
    padding: 3em;
  }
}
#main #main_box #top-about #area #area-box > p {
  padding: 0.3em 0;
  font-weight: bold;
  text-align: center;
}
#main #main_box #top-about #area #area-box .area-list {
  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;
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 560px ) {
  #main #main_box #top-about #area #area-box .area-list {
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -ms-flex-align: stretch;
    -webkit-box-align: stretch;
            align-items: stretch;
    -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-about #area #area-box .area-list li {
  -ms-flex-grow: 1;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  padding: 8px;
  max-width: 10em;
  min-width: 8em;
  white-space: nowrap;
}
#main #main_box #top-about #area #area-box .area-list li a {
  display: block;
  background-color: #2D3B93;
  color: #fff;
  padding: 1em;
  text-align: center;
  border-radius: 5px;
}
#main #main_box #top-about #area #area-box .area-list li a:hover {
  text-decoration: none;
  background-color: #FEC633;
  color: #2D3B93;
  -webkit-transform: scale(1.06);
  -ms-transform: scale(1.06);
  transform: scale(1.06);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
#main #main_box #top-about #area #area-box .area-list li .this {
  background-color: #FEC633;
  color: #2D3B93;
}

@media screen and (min-width: 981px ) {
  .areaanime .area-list li {
    opacity: 0;
    -webkit-transition: opacity 1s;
    transition: opacity 1s;
  }
  .areaanime .area-list li:nth-of-type(1) {
    -webkit-transition-delay: 0.05s;
            transition-delay: 0.05s;
  }
  .areaanime .area-list li:nth-of-type(2) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .areaanime .area-list li:nth-of-type(3) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  .areaanime .area-list li:nth-of-type(4) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .areaanime .area-list li:nth-of-type(5) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .areaanime .area-list li:nth-of-type(6) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .areaanime .area-list li:nth-of-type(7) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .areaanime .area-list li:nth-of-type(8) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .areaanime .area-list li:nth-of-type(9) {
    -webkit-transition-delay: 0.1s;
            transition-delay: 0.1s;
  }
  .areaanime .area-list li:nth-of-type(10) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  .areaanime .area-list li:nth-of-type(11) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .areaanime .area-list li:nth-of-type(12) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .areaanime .area-list li:nth-of-type(13) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .areaanime .area-list li:nth-of-type(14) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .areaanime .area-list li:nth-of-type(15) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .areaanime .area-list li:nth-of-type(16) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  .areaanime .area-list li:nth-of-type(17) {
    -webkit-transition-delay: 0.15s;
            transition-delay: 0.15s;
  }
  .areaanime .area-list li:nth-of-type(18) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .areaanime .area-list li:nth-of-type(19) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .areaanime .area-list li:nth-of-type(20) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .areaanime .area-list li:nth-of-type(21) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .areaanime .area-list li:nth-of-type(22) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .areaanime .area-list li:nth-of-type(23) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  .areaanime .area-list li:nth-of-type(24) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .areaanime .area-list li:nth-of-type(25) {
    -webkit-transition-delay: 0.2s;
            transition-delay: 0.2s;
  }
  .areaanime .area-list li:nth-of-type(26) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .areaanime .area-list li:nth-of-type(27) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .areaanime .area-list li:nth-of-type(28) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .areaanime .area-list li:nth-of-type(29) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .areaanime .area-list li:nth-of-type(30) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  .areaanime .area-list li:nth-of-type(31) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .areaanime .area-list li:nth-of-type(32) {
    -webkit-transition-delay: 0.55s;
            transition-delay: 0.55s;
  }
  .areaanime .area-list li:nth-of-type(33) {
    -webkit-transition-delay: 0.25s;
            transition-delay: 0.25s;
  }
  .areaanime .area-list li:nth-of-type(34) {
    -webkit-transition-delay: 0.3s;
            transition-delay: 0.3s;
  }
  .areaanime .area-list li:nth-of-type(35) {
    -webkit-transition-delay: 0.35s;
            transition-delay: 0.35s;
  }
  .areaanime .area-list li:nth-of-type(36) {
    -webkit-transition-delay: 0.4s;
            transition-delay: 0.4s;
  }
  .areaanime .area-list li:nth-of-type(37) {
    -webkit-transition-delay: 0.45s;
            transition-delay: 0.45s;
  }
  .areaanime .area-list li:nth-of-type(38) {
    -webkit-transition-delay: 0.5s;
            transition-delay: 0.5s;
  }
  .areaanime .area-list li:nth-of-type(39) {
    -webkit-transition-delay: 0.55s;
            transition-delay: 0.55s;
  }
  .areaanime .area-list li:nth-of-type(40) {
    -webkit-transition-delay: 0.6s;
            transition-delay: 0.6s;
  }
  .areaanime.effect .area-list li {
    opacity: 1;
  }
}
