/*! Writen  by SCSS */
sup {
  font-size: 0.5em; }

.main_area {
  position: relative; }
  .main_area .slide_main .slide01 .cap {
    bottom: calc(10vh + 10px); }
    @media screen and (max-width: 480px) {
      .main_area .slide_main .slide01 .cap {
        bottom: calc(5vh + 10px); } }
  .main_area .slide_main .slide01 img {
    width: 100%; }
  .main_area .waves {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 15vh;
    height: 5vh;
    margin-bottom: -7px;
    min-height: 60px;
    max-height: 100px;
    z-index: 100;
    pointer-events: none; }
  .main_area .wave_move > use {
    animation: move-forever 20s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite; }
    .main_area .wave_move > use:nth-child(1) {
      animation-delay: -2s;
      animation-duration: 7s; }
    .main_area .wave_move > use:nth-child(2) {
      animation-delay: -3s;
      animation-duration: 10s; }
    .main_area .wave_move > use:nth-child(3) {
      animation-delay: -4s;
      animation-duration: 13s; }
    .main_area .wave_move > use:nth-child(4) {
      animation-delay: -5s;
      animation-duration: 20s; }

.info_wrap {
  margin-top: clamp(60px, 7.82%, 100px);
  margin-bottom: clamp(40px, 4.69%, 60px); }
  .info_wrap .head_info {
    max-width: 263px;
    width: 21.92%;
    margin-inline: auto;
    margin-bottom: clamp(25px, 3.13%, 40px); }
    @media screen and (max-width: 480px) {
      .info_wrap .head_info {
        width: 43.84%; } }

.info_box img {
  width: 50%;
  display: block;
  margin-inline: auto; }
  @media screen and (max-width: 480px) {
    .info_box img {
      width: 80%; } }

@keyframes move-forever {
  0% {
    transform: translate3d(-90px, 0, 0); }
  100% {
    transform: translate3d(85px, 0, 0); } }
.sec_merit {
  position: relative;
  z-index: 2;
  margin-top: -2px;
  background: url("../images/bg_merit.svg") center bottom/cover no-repeat;
  padding-top: clamp(25px, 3.13%, 40px);
  padding-bottom: clamp(100px, 15.63%, 200px); }
  @media screen and (max-width: 480px) {
    .sec_merit {
      background: url("../images/bg_merit_sp.svg") center bottom/100% auto no-repeat; } }
  @media screen and (max-width: 480px) {
    .sec_merit::before {
      content: "";
      display: block;
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      background: #f6fbfb;
      bottom: 10%; } }

.merit_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: clamp(25px, 3.91vw, 50px) 4.68%; }
  @media screen and (max-width: 480px) {
    .merit_list {
      flex-wrap: wrap;
      gap: 25px 20px; } }
  .merit_list .item {
    position: relative; }
    .merit_list .item::after {
      content: "";
      display: block;
      width: 1px;
      padding-top: clamp(15px, 2.35vw, 30px);
      position: absolute;
      top: 0;
      right: clamp(-30px, -2.34vw, -10px);
      background: #333;
      margin-top: clamp(25px, 6.25vw, 80px); }
      @media screen and (max-width: 480px) {
        .merit_list .item::after {
          top: auto;
          bottom: 10px;
          margin-top: 0;
          right: -10px;
          padding-top: 30px; } }
  .merit_list .item01 {
    max-width: 490px;
    width: 38.29%;
    margin-left: 25%;
    margin-right: 25%; }
    @media screen and (max-width: 480px) {
      .merit_list .item01 {
        order: 1;
        width: 81.67%;
        margin-left: 0;
        margin-right: 0; } }
    .merit_list .item01::after {
      content: none; }
      @media screen and (max-width: 480px) {
        .merit_list .item01::after {
          content: ""; } }
  .merit_list .item02 {
    max-width: 221px;
    width: 17.27%;
    margin-left: 6.25%; }
    @media screen and (max-width: 480px) {
      .merit_list .item02 {
        order: 2;
        width: 36.84%;
        margin-left: 0; } }
  .merit_list .item03 {
    max-width: 270px;
    width: 21.1%; }
    @media screen and (max-width: 480px) {
      .merit_list .item03 {
        order: 3;
        width: 45%; } }
  .merit_list .item04 {
    max-width: 299px;
    width: 23.36%;
    margin-right: 6.25%; }
    @media screen and (max-width: 480px) {
      .merit_list .item04 {
        order: 4;
        width: 49.5%;
        margin-right: 0; } }
    .merit_list .item04::after {
      content: none; }
      @media screen and (max-width: 480px) {
        .merit_list .item04::after {
          content: ""; } }
  .merit_list .item05 {
    max-width: 234px;
    width: 18.29%; }
    @media screen and (max-width: 480px) {
      .merit_list .item05 {
        order: 5;
        width: 39%; } }
  .merit_list .item06 {
    max-width: 177px;
    width: 13.83%; }
    @media screen and (max-width: 480px) {
      .merit_list .item06 {
        order: 10;
        width: 29.5%; } }
  .merit_list .item07 {
    max-width: 266px;
    width: 20.79%; }
    @media screen and (max-width: 480px) {
      .merit_list .item07 {
        order: 7;
        width: 44.34%; } }
  .merit_list .item08 {
    max-width: 233px;
    width: 18.21%; }
    @media screen and (max-width: 480px) {
      .merit_list .item08 {
        order: 8;
        width: 38.84%; } }
    .merit_list .item08::after {
      content: none; }
      @media screen and (max-width: 480px) {
        .merit_list .item08::after {
          content: ""; } }
  .merit_list .item09 {
    max-width: 488px;
    width: 38.13%; }
    @media screen and (max-width: 480px) {
      .merit_list .item09 {
        order: 6;
        width: 81.34%; } }
  .merit_list .item10 {
    max-width: 243px;
    width: 18.99%; }
    @media screen and (max-width: 480px) {
      .merit_list .item10 {
        order: 9;
        width: 40.51%; } }
    .merit_list .item10::after {
      content: none; }
  @media screen and (max-width: 480px) {
    .merit_list .item01::after,
    .merit_list .item03::after,
    .merit_list .item05::after,
    .merit_list .item06::after,
    .merit_list .item07::after,
    .merit_list .item09::after {
      content: none; } }

.floating_banner {
  max-width: 295px;
  position: fixed;
  bottom: 20px;
  right: 2.5%;
  z-index: 9999; }
  @media screen and (max-width: 900px) {
    .floating_banner {
      max-width: 200px; } }
  @media screen and (max-width: 680px) {
    .floating_banner {
      right: 10px;
      bottom: 70px; } }
  .floating_banner a {
    display: block; }
  .floating_banner .floating_banner_close {
    background: #333;
    border-radius: 100%;
    color: #fff;
    font-size: 16px;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    bottom: 0;
    right: 0;
    cursor: pointer;
    width: 22px;
    height: 22px; }

.cap_inner {
  max-width: 760px; }

.banner_list {
  font-size: 0;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 7px;
  margin-top: clamp(25px, 3.13%, 40px); }
  @media screen and (max-width: 768px) {
    .banner_list {
      flex-wrap: wrap;
      gap: 7px 2%; } }
  @media screen and (max-width: 480px) {
    .banner_list {
      justify-content: space-between;
      gap: 5px; } }
  .banner_list li {
    box-sizing: border-box;
    display: inline-block; }
    @media screen and (max-width: 768px) {
      .banner_list li {
        width: 32%; } }
    @media screen and (max-width: 480px) {
      .banner_list li {
        width: 48%; } }

.caption_area .label_box {
  max-width: 500px;
  margin-inline: auto;
  width: calc(100% - 40px);
  margin-bottom: 20px; }
  .caption_area .label_box .cap_l {
    font-size: 10px;
    margin-top: 5px; }

/*# sourceMappingURL=style.css.map */
