@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap");
@media screen and (min-width: 835px) {
  .mbpc-0 {
    margin-bottom: 0px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-0 {
    margin-bottom: 0px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-1 {
    margin-bottom: 1px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-1 {
    margin-bottom: 1px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-2 {
    margin-bottom: 2px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-2 {
    margin-bottom: 2px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-3 {
    margin-bottom: 3px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-3 {
    margin-bottom: 3px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-4 {
    margin-bottom: 4px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-4 {
    margin-bottom: 4px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-5 {
    margin-bottom: 5px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-5 {
    margin-bottom: 5px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-6 {
    margin-bottom: 6px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-6 {
    margin-bottom: 6px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-7 {
    margin-bottom: 7px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-7 {
    margin-bottom: 7px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-8 {
    margin-bottom: 8px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-8 {
    margin-bottom: 8px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-9 {
    margin-bottom: 9px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-9 {
    margin-bottom: 9px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-10 {
    margin-bottom: 10px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-10 {
    margin-bottom: 10px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-11 {
    margin-bottom: 11px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-11 {
    margin-bottom: 11px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-12 {
    margin-bottom: 12px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-12 {
    margin-bottom: 12px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-13 {
    margin-bottom: 13px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-13 {
    margin-bottom: 13px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-14 {
    margin-bottom: 14px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-14 {
    margin-bottom: 14px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-15 {
    margin-bottom: 15px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-15 {
    margin-bottom: 15px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-16 {
    margin-bottom: 16px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-16 {
    margin-bottom: 16px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-17 {
    margin-bottom: 17px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-17 {
    margin-bottom: 17px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-18 {
    margin-bottom: 18px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-18 {
    margin-bottom: 18px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-19 {
    margin-bottom: 19px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-19 {
    margin-bottom: 19px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-20 {
    margin-bottom: 20px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-20 {
    margin-bottom: 20px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-21 {
    margin-bottom: 21px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-21 {
    margin-bottom: 21px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-22 {
    margin-bottom: 22px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-22 {
    margin-bottom: 22px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-23 {
    margin-bottom: 23px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-23 {
    margin-bottom: 23px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-24 {
    margin-bottom: 24px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-24 {
    margin-bottom: 24px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-25 {
    margin-bottom: 25px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-25 {
    margin-bottom: 25px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-26 {
    margin-bottom: 26px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-26 {
    margin-bottom: 26px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-27 {
    margin-bottom: 27px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-27 {
    margin-bottom: 27px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-28 {
    margin-bottom: 28px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-28 {
    margin-bottom: 28px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-29 {
    margin-bottom: 29px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-29 {
    margin-bottom: 29px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-30 {
    margin-bottom: 30px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-30 {
    margin-bottom: 30px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-31 {
    margin-bottom: 31px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-31 {
    margin-bottom: 31px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-32 {
    margin-bottom: 32px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-32 {
    margin-bottom: 32px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-33 {
    margin-bottom: 33px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-33 {
    margin-bottom: 33px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-34 {
    margin-bottom: 34px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-34 {
    margin-bottom: 34px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-35 {
    margin-bottom: 35px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-35 {
    margin-bottom: 35px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-36 {
    margin-bottom: 36px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-36 {
    margin-bottom: 36px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-37 {
    margin-bottom: 37px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-37 {
    margin-bottom: 37px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-38 {
    margin-bottom: 38px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-38 {
    margin-bottom: 38px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-39 {
    margin-bottom: 39px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-39 {
    margin-bottom: 39px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-40 {
    margin-bottom: 40px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-40 {
    margin-bottom: 40px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-41 {
    margin-bottom: 41px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-41 {
    margin-bottom: 41px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-42 {
    margin-bottom: 42px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-42 {
    margin-bottom: 42px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-43 {
    margin-bottom: 43px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-43 {
    margin-bottom: 43px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-44 {
    margin-bottom: 44px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-44 {
    margin-bottom: 44px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-45 {
    margin-bottom: 45px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-45 {
    margin-bottom: 45px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-46 {
    margin-bottom: 46px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-46 {
    margin-bottom: 46px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-47 {
    margin-bottom: 47px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-47 {
    margin-bottom: 47px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-48 {
    margin-bottom: 48px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-48 {
    margin-bottom: 48px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-49 {
    margin-bottom: 49px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-49 {
    margin-bottom: 49px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-50 {
    margin-bottom: 50px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-50 {
    margin-bottom: 50px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-51 {
    margin-bottom: 51px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-51 {
    margin-bottom: 51px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-52 {
    margin-bottom: 52px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-52 {
    margin-bottom: 52px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-53 {
    margin-bottom: 53px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-53 {
    margin-bottom: 53px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-54 {
    margin-bottom: 54px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-54 {
    margin-bottom: 54px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-55 {
    margin-bottom: 55px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-55 {
    margin-bottom: 55px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-56 {
    margin-bottom: 56px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-56 {
    margin-bottom: 56px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-57 {
    margin-bottom: 57px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-57 {
    margin-bottom: 57px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-58 {
    margin-bottom: 58px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-58 {
    margin-bottom: 58px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-59 {
    margin-bottom: 59px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-59 {
    margin-bottom: 59px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-60 {
    margin-bottom: 60px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-60 {
    margin-bottom: 60px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-61 {
    margin-bottom: 61px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-61 {
    margin-bottom: 61px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-62 {
    margin-bottom: 62px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-62 {
    margin-bottom: 62px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-63 {
    margin-bottom: 63px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-63 {
    margin-bottom: 63px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-64 {
    margin-bottom: 64px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-64 {
    margin-bottom: 64px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-65 {
    margin-bottom: 65px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-65 {
    margin-bottom: 65px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-66 {
    margin-bottom: 66px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-66 {
    margin-bottom: 66px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-67 {
    margin-bottom: 67px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-67 {
    margin-bottom: 67px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-68 {
    margin-bottom: 68px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-68 {
    margin-bottom: 68px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-69 {
    margin-bottom: 69px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-69 {
    margin-bottom: 69px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-70 {
    margin-bottom: 70px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-70 {
    margin-bottom: 70px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-71 {
    margin-bottom: 71px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-71 {
    margin-bottom: 71px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-72 {
    margin-bottom: 72px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-72 {
    margin-bottom: 72px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-73 {
    margin-bottom: 73px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-73 {
    margin-bottom: 73px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-74 {
    margin-bottom: 74px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-74 {
    margin-bottom: 74px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-75 {
    margin-bottom: 75px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-75 {
    margin-bottom: 75px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-76 {
    margin-bottom: 76px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-76 {
    margin-bottom: 76px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-77 {
    margin-bottom: 77px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-77 {
    margin-bottom: 77px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-78 {
    margin-bottom: 78px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-78 {
    margin-bottom: 78px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-79 {
    margin-bottom: 79px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-79 {
    margin-bottom: 79px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-80 {
    margin-bottom: 80px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-80 {
    margin-bottom: 80px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-81 {
    margin-bottom: 81px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-81 {
    margin-bottom: 81px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-82 {
    margin-bottom: 82px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-82 {
    margin-bottom: 82px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-83 {
    margin-bottom: 83px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-83 {
    margin-bottom: 83px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-84 {
    margin-bottom: 84px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-84 {
    margin-bottom: 84px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-85 {
    margin-bottom: 85px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-85 {
    margin-bottom: 85px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-86 {
    margin-bottom: 86px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-86 {
    margin-bottom: 86px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-87 {
    margin-bottom: 87px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-87 {
    margin-bottom: 87px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-88 {
    margin-bottom: 88px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-88 {
    margin-bottom: 88px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-89 {
    margin-bottom: 89px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-89 {
    margin-bottom: 89px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-90 {
    margin-bottom: 90px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-90 {
    margin-bottom: 90px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-91 {
    margin-bottom: 91px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-91 {
    margin-bottom: 91px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-92 {
    margin-bottom: 92px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-92 {
    margin-bottom: 92px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-93 {
    margin-bottom: 93px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-93 {
    margin-bottom: 93px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-94 {
    margin-bottom: 94px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-94 {
    margin-bottom: 94px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-95 {
    margin-bottom: 95px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-95 {
    margin-bottom: 95px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-96 {
    margin-bottom: 96px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-96 {
    margin-bottom: 96px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-97 {
    margin-bottom: 97px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-97 {
    margin-bottom: 97px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-98 {
    margin-bottom: 98px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-98 {
    margin-bottom: 98px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-99 {
    margin-bottom: 99px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-99 {
    margin-bottom: 99px !important;
  }
}
@media screen and (min-width: 835px) {
  .mbpc-100 {
    margin-bottom: 100px !important;
  }
}
@media screen and (max-width: 834px) {
  .mbsp-100 {
    margin-bottom: 100px !important;
  }
}
/* ====================================================
reset style
==================================================== */
html {
  overflow-y: scroll;
  overflow-x: hidden;
  font-size: 10px; /* Base font size, change to 14px or 16px if needed */
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

img {
  vertical-align: middle;
  max-width: 100%;
}

address, caption, cite, code, dfn, var {
  font-style: normal;
  font-weight: normal;
}

li {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select, button {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/*to enable resizing for IE*/
input, textarea, select {
  *font-size: 100%;
}

/*because legend doesn't inherit in IE */
legend {
  color: #000;
}

del, ins {
  text-decoration: none;
}

main {
  display: block;
}

section {
  position: relative;
}

/* ====================================================
HTML
==================================================== */
html {
  font-size: 62.5%;
}

body {
  color: #000;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  line-height: 1.3;
  background: #fff;
  overflow-x: hidden;
}

a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
  outline: none;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}
a:hover {
  opacity: 0.7;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* ====================================================
Layout
==================================================== */
.wrapper {
  padding-top: 115px;
}
@media screen and (max-width: 1024px) {
  .wrapper {
    padding-top: 70px;
  }
}

.inner {
  width: 80%;
  margin: 0 auto;
  max-width: 1296px;
}
@media screen and (max-width: 834px) {
  .inner {
    width: 100%;
    padding: 0 20px;
    max-width: 500px;
  }
}

/* ====================================================
Control
==================================================== */
.c-fc--ff {
  color: #fff;
}

.c-fw--lt {
  font-weight: 300 !important;
}
.c-fw--rg {
  font-weight: 400 !important;
}
.c-fw--md {
  font-weight: 500 !important;
}
.c-fw--sbd {
  font-weight: 600 !important;
}
.c-fw--bd {
  font-weight: 700 !important;
}
.c-fw--bk {
  font-weight: 900 !important;
}

.c-tx--v {
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
}
@media screen and (min-width: 835px) {
  .c-tx--v-pc {
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
            writing-mode: vertical-rl;
  }
}

.c-al--c {
  text-align: center !important;
}
.c-al--r {
  text-align: right !important;
}
.c-al--l {
  text-align: left !important;
}

.c-val--md {
  vertical-align: middle;
}
.c-val--top {
  vertical-align: top;
}

/* ====================================================
Component
==================================================== */
.c-txt__01 {
  font-size: 28px;
  font-size: 2.8rem;
  line-height: 1.4478571429;
  font-weight: 500;
  color: #1084A0;
}
@media screen and (max-width: 1500px) {
  .c-txt__01 {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.6363636364;
  }
}
@media screen and (max-width: 1200px) {
  .c-txt__01 {
    -webkit-font-feature-settings: "palt" 1;
            font-feature-settings: "palt" 1;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.5555555556;
  }
}
@media screen and (max-width: 834px) {
  .c-txt__01 {
    letter-spacing: 1.2px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 389px) {
  .c-txt__01 {
    letter-spacing: 0;
    font-size: 1.4rem;
  }
}

.c-ttl__01 {
  width: 100%;
  display: block;
  margin-bottom: 23px;
  text-align: center;
  margin-left: 20px;
}
@media screen and (max-width: 834px) {
  .c-ttl__01 {
    margin-left: 0;
    margin-bottom: 23px;
  }
}
.c-ttl__01 img {
  text-align: center;
  width: 100%;
  max-width: 1151px;
}

.c-btn__01 {
  text-align: center;
}
.c-btn__01 a {
  display: inline-block;
}
.c-btn__01 picture, .c-btn__01 img {
  height: 62px;
}
@media screen and (max-width: 1500px) {
  .c-btn__01 picture, .c-btn__01 img {
    height: 40px;
  }
}
@media screen and (max-width: 834px) {
  .c-btn__01 picture, .c-btn__01 img {
    height: 59.5px;
  }
}
.c-btn__01--02 {
  text-align: left;
}
@media screen and (max-width: 834px) {
  .c-btn__01--02 {
    text-align: center;
  }
}
.c-btn__01--02 picture, .c-btn__01--02 img {
  height: 102px;
}
@media screen and (max-width: 1500px) {
  .c-btn__01--02 picture, .c-btn__01--02 img {
    height: 80px;
  }
}
@media screen and (max-width: 834px) {
  .c-btn__01--02 picture, .c-btn__01--02 img {
    height: 59px;
  }
}

/* ====================================================
Utility
==================================================== */
@media screen and (max-width: 834px) {
  .pc {
    display: none !important;
  }
}

@media screen and (min-width: 835px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 640px) {
  .pc-sm {
    display: none;
  }
}

@media screen and (max-width: 1500px) {
  .pc-xxl {
    display: none;
  }
}

@media screen and (min-width: 641px) {
  .sp-sm {
    display: none;
  }
}

.u-fn-hover {
  display: inline-block;
}
@media (any-hover: hover) {
  .u-fn-hover {
    -webkit-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
  }
  .u-fn-hover:hover {
    opacity: 0.7;
  }
}

.u-pull--left {
  margin-left: calc((100vw - 100%) / 2 * -1);
}
.u-pull--right {
  margin-right: calc((100vw - 100%) / 2 * -1);
}

.u-img-of {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center", sans-serif;
}

.c-scroll-box {
  padding-bottom: 20px;
  overflow-x: scroll;
  overflow-y: hidden;
}
.c-scroll-box-y {
  padding-bottom: 20px;
  overflow-x: hidden;
  overflow-y: scroll;
}
@media screen and (max-width: 834px) {
  .c-scroll-box-sp {
    padding-bottom: 20px;
    overflow-x: scroll;
    overflow-y: hidden;
  }
}

.js-scrollin {
  opacity: 0;
  -webkit-transform: translate(0, 50px);
  -ms-transform: translate(0, 50px);
  transform: translate(0, 50px);
}

.js-scrollin.is-visible {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  -o-transition: 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition: 0.7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* ====================================================
Header
==================================================== */
.main-header {
  background: #1084A0;
  padding: 46px 42px 38px 20px;
  text-align: center;
}
@media screen and (max-width: 834px) {
  .main-header {
    padding: 14px 13px 16px;
    text-align: left;
  }
}
.main-header picture, .main-header img {
  max-width: 634px;
  width: 100%;
}
@media screen and (max-width: 1500px) {
  .main-header picture, .main-header img {
    max-width: 500px;
  }
}
@media screen and (max-width: 834px) {
  .main-header picture, .main-header img {
    max-width: 214px;
  }
}

/* ====================================================
Footer
==================================================== */
.main-footer {
  position: relative;
  padding: 90px 0;
}
@media screen and (max-width: 834px) {
  .main-footer {
    padding: 34px 0 80px;
  }
}
.main-footer__txt {
  text-align: center;
  font-weight: 500;
  margin-bottom: 81px;
  font-size: 4.5rem;
}
@media screen and (max-width: 1500px) {
  .main-footer__txt {
    margin-bottom: 50px;
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 1200px) {
  .main-footer__txt {
    margin-bottom: 30px;
    font-size: 2rem;
  }
}
@media screen and (max-width: 834px) {
  .main-footer__txt {
    margin-bottom: 15px;
    font-size: 1.2rem;
  }
}
.main-footer__logo {
  text-align: center;
}
.main-footer__logo img {
  max-width: 519px;
  width: 100%;
}
@media screen and (max-width: 1200px) {
  .main-footer__logo img {
    max-width: 400px;
  }
}
@media screen and (max-width: 834px) {
  .main-footer__logo img {
    max-width: 180px;
  }
}

/* ====================================================
PAGE INDEX
==================================================== */
#page-index.wrapper {
  padding-top: 0 !important;
}

.mv-index {
  margin-top: 49px;
  background: url("../img/index/bg-01.png") top center no-repeat;
  background-size: 100% 100%;
  padding: 0 94px 30px 20px;
}
@media screen and (max-width: 834px) {
  .mv-index {
    padding: 0 0 20px;
    margin-top: 12px;
    background: url("../img/index/bg-01-sp.png") top center no-repeat;
    background-size: 100% 100%;
  }
}
.mv-index__img {
  max-width: 1542px;
  width: 100%;
  margin: 0 auto;
}
.mv-index__img img {
  margin-top: -32px;
}
@media screen and (max-width: 834px) {
  .mv-index__img img {
    margin-top: -10px;
  }
}

.sec-heart {
  padding: 51px 0 10px;
  background: url("../img/index/bg-02.png") top center no-repeat;
  background-size: 100% 100%;
}
@media screen and (max-width: 834px) {
  .sec-heart {
    padding: 36px 0 10px;
    background: url("../img/index/bg-02-sp.png") top center no-repeat;
    background-size: 100% 100%;
  }
}

.heart-list {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  margin: 0 -20px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 834px) {
  .heart-list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 auto 46px;
    max-width: 400px;
  }
}
.heart-list__item {
  width: 50%;
  padding: 0 20px;
}
.heart-list__item picture, .heart-list__item img {
  width: 100%;
}
@media screen and (max-width: 834px) {
  .heart-list__item {
    padding: 0 !important;
    width: 100%;
  }
  .heart-list__item:not(:last-child) {
    margin-bottom: 30px;
  }
}
.heart-list__item:nth-child(1) picture, .heart-list__item:nth-child(1) img {
  margin-left: -21px;
  width: calc(100% + 45px);
  display: block;
  margin-top: -24px;
}
@media screen and (max-width: 834px) {
  .heart-list__item:nth-child(1) picture, .heart-list__item:nth-child(1) img {
    margin-left: -12px;
    width: calc(100% + 9px);
    display: block;
    margin-top: 0;
  }
}
@media screen and (max-width: 1200px) {
  .heart-list__item:nth-child(2) {
    padding-left: 10px;
  }
}
@media screen and (max-width: 834px) {
  .heart-list__item:nth-child(2) {
    padding: 0 9px !important;
  }
}
.heart-list__item:nth-child(2) picture, .heart-list__item:nth-child(2) img {
  padding-left: 6px;
}
@media screen and (max-width: 1500px) {
  .heart-list__item:nth-child(2) picture, .heart-list__item:nth-child(2) img {
    padding-left: 0;
  }
}

.sec-keep {
  background: url("../img/index/bg-03.png") top center no-repeat;
  background-size: 100% 100%;
}
.sec-keep .c-ttl__01 {
  margin-top: -29px;
}
@media screen and (max-width: 834px) {
  .sec-keep .c-ttl__01 {
    margin-top: 0;
  }
}

.keep-menu {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  margin: 0 -7px;
}
@media screen and (max-width: 834px) {
  .keep-menu {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 auto;
    max-width: 500px;
    width: 100%;
  }
}
.keep-menu__item {
  padding: 0 10px;
  width: 33.33%;
}
@media screen and (max-width: 834px) {
  .keep-menu__item {
    width: 100%;
    padding: 0 13px;
  }
  .keep-menu__item:not(:last-child) {
    margin-bottom: 6px;
  }
}

.sec-content {
  padding: 57px 0 10px;
}
@media screen and (max-width: 834px) {
  .sec-content {
    padding: 17px 0 74px;
  }
}

.content-list {
  max-width: 1175px;
  width: 100%;
  margin: 0 auto;
  -webkit-transform: translateX(6px);
      -ms-transform: translateX(6px);
          transform: translateX(6px);
}
@media screen and (max-width: 834px) {
  .content-list {
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0);
    padding: 0 13px 0 15px;
  }
}
@media screen and (max-width: 389px) {
  .content-list {
    padding: 0;
  }
}
.content-list__item {
  background: #FCE847;
  border: 6px solid #1084A0;
  border-radius: 42px;
  -webkit-box-shadow: 4px 4px 0 #FCE847;
          box-shadow: 4px 4px 0 #FCE847;
}
@media screen and (max-width: 834px) {
  .content-list__item {
    border: 4px solid #1084A0;
    border-radius: 10px;
  }
}
.content-list__item:not(:last-child) {
  margin-bottom: 34px;
}
@media screen and (max-width: 834px) {
  .content-list__item:not(:last-child) {
    margin-bottom: 21px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__item:nth-child(2) {
    margin-bottom: 28px;
  }
}
.content-list__item:nth-child(2) .content-list__ct {
  padding-bottom: 58px;
}
@media screen and (max-width: 834px) {
  .content-list__item:nth-child(2) .content-list__ct {
    padding-bottom: 2px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__item:nth-child(2) .content-list__heading small::after {
    right: -4px;
  }
  .content-list__item:nth-child(2) .content-list__heading small img {
    max-width: 60px;
  }
  .content-list__item:nth-child(2) .content-list__flex-img {
    padding: 0 43px 0 51px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__item:nth-child(3) .content-list__heading {
    margin-bottom: 19px;
  }
  .content-list__item:nth-child(3) .content-list__heading small::after {
    right: -4px;
  }
  .content-list__item:nth-child(3) .content-list__heading small img {
    max-width: 61px;
  }
}
.content-list__ct {
  padding: 20px;
  overflow: hidden;
  border-radius: 35px;
}
@media screen and (max-width: 834px) {
  .content-list__ct {
    padding: 9px;
    border-radius: 8px;
  }
}
.content-list__heading {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: end;
  -webkit-box-align: end;
          align-items: flex-end;
  background: #fff;
  border-radius: 25px;
  padding: 16px 37px;
  margin-bottom: 40px;
}
@media screen and (max-width: 1200px) {
  .content-list__heading {
    padding: 15px 20px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__heading {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 37px 5px 16px 11px;
    position: relative;
    border-radius: 6px;
    margin-bottom: 15px;
  }
}
.content-list__heading small {
  display: block;
  width: 91px;
  padding-bottom: 5px;
  position: relative;
}
.content-list__heading small:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 4px;
  height: 49px;
  background: #B4DFE9;
  bottom: 3px;
  right: 0;
  border-radius: 6px;
}
@media screen and (max-width: 834px) {
  .content-list__heading small:after {
    width: 3px;
    height: 35px;
    bottom: 7px;
    right: 1px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__heading small {
    width: 66px;
    -webkit-transform: translateY(3px);
        -ms-transform: translateY(3px);
            transform: translateY(3px);
  }
  .content-list__heading small img {
    max-width: 51px;
  }
}
.content-list__heading > span {
  width: calc(100% - 91px);
  padding-left: 16px;
  display: block;
  color: #1084A0;
  font-weight: 900;
  letter-spacing: -3px;
  font-size: 4.526rem;
}
@media screen and (max-width: 1200px) {
  .content-list__heading > span {
    font-size: 3rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__heading > span {
    line-height: 1.1;
    width: calc(100% - 66px);
    letter-spacing: 0;
    padding-left: 11px;
    display: block;
    padding-top: 5px;
    font-size: 2rem;
  }
}
.content-list__heading > span span {
  letter-spacing: 0;
  display: block;
  font-size: 2.342rem;
}
@media screen and (max-width: 1200px) {
  .content-list__heading > span span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__heading > span span {
    position: absolute;
    top: 16px;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 1.4rem;
  }
}
.content-list__flex {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
}
@media screen and (max-width: 834px) {
  .content-list__flex {
    -ms-flex-wrap: wrap-reverse;
        flex-wrap: wrap-reverse;
  }
}
.content-list__flex-ct {
  width: 60%;
  padding-left: 33px;
  padding-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .content-list__flex-ct {
    padding-left: 0;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-ct {
    width: 100%;
    padding-bottom: 14px;
  }
}
.content-list__flex-ct--02 {
  margin-bottom: 44px;
}
@media screen and (max-width: 834px) {
  .content-list__flex-ct--02 {
    margin-bottom: 0;
    padding-bottom: 8px;
  }
}
.content-list__flex-ttl {
  margin-right: -150px;
  margin-bottom: 7px;
}
@media screen and (max-width: 1500px) {
  .content-list__flex-ttl {
    margin-right: -50px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-ttl {
    margin-right: 0;
    padding: 0 3px;
    margin-bottom: 9px;
  }
}
.content-list__flex-ttl small {
  display: block;
  margin-bottom: -1px;
}
@media screen and (max-width: 834px) {
  .content-list__flex-ttl small {
    margin-bottom: 1px;
  }
}
.content-list__flex-ttl small span {
  display: inline;
  font-weight: 900;
  color: #1084A0;
  letter-spacing: 1.5px;
  font-size: 3.2rem;
}
@media screen and (max-width: 1500px) {
  .content-list__flex-ttl small span {
    letter-spacing: 0;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1200px) {
  .content-list__flex-ttl small span {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-ttl small span {
    letter-spacing: 1px;
    line-height: 1.3;
    font-size: 1.2rem;
  }
}
.content-list__flex-ttl span {
  display: inline;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(50%, #fff), color-stop(50%, transparent));
  background-image: -o-linear-gradient(left, #fff 50%, transparent 50%);
  background-image: linear-gradient(to right, #fff 50%, transparent 50%);
  background-size: 200% 95%;
  background-repeat: no-repeat;
  line-height: 1.32;
  background-position: 0% 5px;
  padding-bottom: 0;
}
@media screen and (max-width: 834px) {
  .content-list__flex-ttl span {
    background-size: 200% 75%;
    background-position: 0% 3px;
  }
}
.content-list__flex-ttl > span {
  font-weight: 900;
  color: #1084A0;
  letter-spacing: 5.5px;
  line-height: 1.3;
  background-position: 0% 13px;
  background-size: 200% 73%;
  font-size: 5.8rem;
}
@media screen and (max-width: 1500px) {
  .content-list__flex-ttl > span {
    letter-spacing: 0;
    font-size: 4rem;
  }
}
@media screen and (max-width: 1200px) {
  .content-list__flex-ttl > span {
    background-position: 0% 7px;
    background-size: 200% 90%;
    font-size: 3rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-ttl > span {
    letter-spacing: 1px;
    line-height: 1.169;
    background-position: 0% 7px;
    background-size: 200% 70%;
    font-size: 2.6rem;
  }
}
.content-list__flex-float {
  position: relative;
  padding-bottom: 20px;
}
@media screen and (max-width: 834px) {
  .content-list__flex-float {
    padding-bottom: 0;
    margin-bottom: -6px;
  }
}
.content-list__flex-thumb {
  width: 55%;
  position: absolute;
  bottom: -72px;
  right: 18px;
}
@media screen and (max-width: 1500px) {
  .content-list__flex-thumb {
    width: 48%;
  }
}
.content-list__flex-thumb picture, .content-list__flex-thumb img {
  width: 100%;
}
.content-list__flex-img {
  width: 40%;
}
@media screen and (max-width: 834px) {
  .content-list__flex-img {
    width: 100%;
    margin-bottom: 7px;
    padding: 0 22px;
  }
}
.content-list__flex-img picture, .content-list__flex-img img {
  width: calc(100% + 52px);
  margin-left: -28px;
  display: block;
  margin-right: -24px;
  -webkit-transform: translateY(-2px);
      -ms-transform: translateY(-2px);
          transform: translateY(-2px);
}
@media screen and (max-width: 1200px) {
  .content-list__flex-img picture, .content-list__flex-img img {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-img--02 {
    padding: 0 41px 0 22px;
  }
}
.content-list__flex-img--02 picture, .content-list__flex-img--02 img {
  width: 100%;
  margin-top: -5px;
  margin-left: -19px;
  padding-left: 22px;
}
@media screen and (max-width: 834px) {
  .content-list__flex-img--02 picture, .content-list__flex-img--02 img {
    margin: 0;
    padding: 0;
  }
}
@media screen and (min-width: 835px) {
  .content-list__flex--02 {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
  .content-list__flex--02 .content-list__flex-ct {
    width: 53%;
  }
  .content-list__flex--02 .content-list__flex-ct .c-txt__01 {
    padding-right: 20px;
    position: relative;
    z-index: 2;
  }
  .content-list__flex--02 .content-list__flex-img {
    width: 47%;
    text-align: center;
    padding-bottom: 38px;
    padding-left: 33px;
  }
  .content-list__flex--02 .content-list__flex-img picture {
    width: 90%;
    display: inline-block;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex--02 {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.content-list__flex-box {
  background: #FFF49D;
  padding: 11px 20px 23px;
  margin-top: 5px;
}
@media screen and (max-width: 1200px) {
  .content-list__flex-box {
    padding: 15px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-box {
    padding: 15px 10px;
    margin: 0;
    padding: 15px 10px 9px;
  }
}
.content-list__flex-desc {
  margin-bottom: 15px;
}
@media screen and (max-width: 834px) {
  .content-list__flex-desc {
    margin-bottom: 4px;
  }
}
.content-list__flex-heading {
  text-align: center;
  margin-bottom: 10px;
  letter-spacing: 4.1px;
  color: #1084A0;
  font-weight: 900;
  font-size: 3rem;
}
@media screen and (max-width: 1500px) {
  .content-list__flex-heading {
    letter-spacing: 0;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 1200px) {
  .content-list__flex-heading {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-heading {
    letter-spacing: 2.5px;
    font-size: 1.6rem;
  }
}
.content-list__flex-item {
  background: #fff;
  border-radius: 10px;
  color: #1084A0;
  font-weight: 500;
  padding: 8px 20px 10px;
  letter-spacing: 1.5px;
  line-height: 1.48;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  position: relative;
  font-size: 2.6rem;
}
@media screen and (max-width: 1500px) {
  .content-list__flex-item {
    letter-spacing: 0;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 1200px) {
  .content-list__flex-item {
    padding: 10px;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-item {
    padding: 4px 9px 12px;
    letter-spacing: 1px;
    font-size: 1.2rem;
  }
}
.content-list__flex-item:not(:last-child) {
  margin-bottom: 37px;
}
.content-list__flex-item:not(:last-child):before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 17px;
  height: 17px;
  background: url("../img/index/icon-polygon.png") center no-repeat;
  background-size: contain;
  bottom: -26px;
  left: 50%;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (max-width: 834px) {
  .content-list__flex-item:not(:last-child) {
    margin-bottom: 36px;
  }
}
.content-list__flex-item:nth-child(1) span {
  display: block;
  margin-top: -2px;
}
@media screen and (max-width: 834px) {
  .content-list__flex-item:nth-child(1) span {
    display: initial;
  }
}
.content-list__flex-item span {
  line-height: 1.55;
  display: inline-block;
  margin-top: -29px;
  font-size: 1.8rem;
}
@media screen and (max-width: 1500px) {
  .content-list__flex-item span {
    margin-top: 0;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1200px) {
  .content-list__flex-item span {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-item span {
    display: inline;
    font-size: 1.2rem;
  }
}
.content-list__flex-item a {
  text-decoration: underline;
  display: initial;
}
.content-list__flex-row {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  padding: 0 18px 0 26px;
}
@media screen and (max-width: 1200px) {
  .content-list__flex-row {
    padding: 0;
  }
}
@media screen and (max-width: 834px) {
  .content-list__flex-row {
    padding-bottom: 23px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.content-list__flex-row .content-list__flex-box {
  width: calc(50% - 13px);
  margin-right: 26px;
}
@media screen and (max-width: 834px) {
  .content-list__flex-row .content-list__flex-box {
    margin-right: 0;
    width: 100%;
  }
  .content-list__flex-row .content-list__flex-box:not(:last-child) {
    margin-bottom: 21px;
  }
}
.content-list__flex-row .content-list__flex-box:last-child {
  margin-right: 0;
}
.content-list__sns {
  background: #fff;
  padding: 41px 60px 23px;
  position: relative;
  z-index: 2;
  margin: -22px -20px -20px;
}
@media screen and (max-width: 1200px) {
  .content-list__sns {
    padding: 20px 20px;
    margin: 0 -20px -20px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__sns {
    padding: 22px 10px 26px;
    margin: 0 -10px -10px;
  }
}
.content-list__sns-ttl {
  color: #1084A0;
  font-weight: 900;
  margin-bottom: 13px;
  letter-spacing: 4.25px;
  font-size: 3rem;
}
@media screen and (max-width: 1200px) {
  .content-list__sns-ttl {
    letter-spacing: 0;
    margin-bottom: 8px;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 834px) {
  .content-list__sns-ttl {
    letter-spacing: 2.25px;
    margin-bottom: 7px;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 389px) {
  .content-list__sns-ttl {
    letter-spacing: 0;
  }
}
.content-list__sns-desc {
  margin-bottom: 38px;
}
@media screen and (max-width: 1200px) {
  .content-list__sns-desc {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 834px) {
  .content-list__sns-desc {
    margin-bottom: 14px;
  }
}
.content-list__sns-list {
  margin-top: -13px;
  margin-bottom: -5px;
}
@media screen and (max-width: 1200px) {
  .content-list__sns-list {
    margin: 0;
  }
}
.content-list__sns-item:not(:last-child) {
  margin-bottom: 16px;
}
@media screen and (max-width: 834px) {
  .content-list__sns-item:not(:last-child) {
    margin-bottom: 12px;
  }
}
.content-list__sns-item a {
  display: block;
}

.sec-against {
  padding: 6px 0 19px;
}
@media screen and (max-width: 834px) {
  .sec-against {
    padding: 6px 0 74px;
  }
}
.sec-against .c-ttl__01 {
  margin-bottom: 10px;
}
@media screen and (max-width: 834px) {
  .sec-against .c-ttl__01 {
    margin-bottom: 31px;
  }
}
.sec-against .c-ttl__01 img {
  max-width: 1228px;
}

.against-list {
  max-width: 1197px;
  width: 100%;
  margin: 0 auto;
}
@media screen and (max-width: 834px) {
  .against-list {
    padding: 0 14px;
  }
}
@media screen and (max-width: 389px) {
  .against-list {
    padding: 0;
  }
}
.against-list__item {
  padding: 12px 15px 19px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  background: #FCE847;
}
.against-list__item:not(:last-child) {
  margin-bottom: 20px;
}
@media screen and (max-width: 834px) {
  .against-list__item {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 23px;
  }
  .against-list__item .c-btn__01 {
    width: 100%;
  }
  .against-list__item .sp {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 389px) {
  .against-list__item {
    padding: 23px 12px;
  }
}
@media screen and (min-width: 1201px) {
  .against-list__item:nth-child(2) .against-list__ct {
    padding: 33px 60px 31px 33px;
  }
  .against-list__item:nth-child(2) .against-list__img picture, .against-list__item:nth-child(2) .against-list__img img {
    padding-left: 4px;
    display: block;
    width: calc(100% + 15px);
    margin-right: -15px;
  }
  .against-list__item:nth-child(3) .against-list__ct {
    padding: 15px 60px 17px 33px;
  }
  .against-list__item:nth-child(3) .against-list__img picture, .against-list__item:nth-child(3) .against-list__img img {
    padding-left: 0;
    display: block;
    width: 100%;
    margin-right: 0;
    padding-right: 22px;
    margin-left: -3px;
  }
}
@media screen and (max-width: 834px) {
  .against-list__item:nth-child(2) {
    padding-bottom: 27px;
  }
  .against-list__item:nth-child(2) .against-list__ct {
    margin-bottom: -9px;
  }
  .against-list__item:nth-child(2) .against-list__img picture, .against-list__item:nth-child(2) .against-list__img img {
    padding: 0 3px 0 10px;
    margin-bottom: 1px;
  }
  .against-list__item:nth-child(3) .against-list__ct {
    margin-bottom: 14px;
  }
  .against-list__item:nth-child(3) .against-list__img {
    margin-bottom: 6px;
  }
  .against-list__item:nth-child(3) .against-list__img picture, .against-list__item:nth-child(3) .against-list__img img {
    padding: 0;
    margin: 0 -10px;
    width: calc(100% + 19px);
    display: block;
    -webkit-transform: translateX(7px);
        -ms-transform: translateX(7px);
            transform: translateX(7px);
  }
}
.against-list__ct {
  width: 52%;
  padding: 49px 60px 43px 33px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1500px) {
  .against-list__ct {
    padding: 25px 60px 25px 20px;
  }
}
@media screen and (max-width: 1200px) {
  .against-list__ct {
    width: 60%;
  }
}
@media screen and (max-width: 834px) {
  .against-list__ct {
    width: 100%;
    padding: 12px 16px 26px;
    margin-bottom: -4px;
  }
}
@media screen and (max-width: 389px) {
  .against-list__ct {
    padding: 12px 13px 26px;
  }
}
.against-list__ct:before {
  content: "";
  display: inline-block;
  position: absolute;
  width: calc(100% - 110px);
  height: 100%;
  background: #fff;
  left: 0;
  top: 0;
  z-index: -1;
}
@media screen and (max-width: 834px) {
  .against-list__ct:before {
    width: 100%;
    height: calc(100% - 25px);
  }
}
.against-list__ct:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 110px;
  height: 100%;
  background: url("../img/index/icon-after.png") center no-repeat;
  background-size: 100% 100%;
  right: 0;
  top: 0;
  z-index: -1;
}
@media screen and (max-width: 834px) {
  .against-list__ct:after {
    height: 25px;
    width: 100%;
    left: 0;
    top: auto;
    bottom: 0;
    right: auto;
    background: url("../img/index/icon-after-sp.png") center no-repeat;
    background-size: 100% 100%;
  }
}
.against-list__ct .c-btn__01 {
  padding-left: 12px;
}
@media screen and (max-width: 1500px) {
  .against-list__ct .c-btn__01 {
    padding-left: 0;
  }
}
.against-list__heading {
  color: #1084A0;
  line-height: 1.265;
  font-weight: 900;
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  margin-bottom: 7px;
  letter-spacing: -1.5px;
  font-size: 4rem;
}
@media screen and (max-width: 1500px) {
  .against-list__heading {
    font-size: 3rem;
  }
}
@media screen and (max-width: 1200px) {
  .against-list__heading {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 834px) {
  .against-list__heading {
    letter-spacing: -1px;
    font-size: 2.55rem;
  }
}
.against-list__desc {
  -webkit-font-feature-settings: "palt" 1;
          font-feature-settings: "palt" 1;
  font-weight: 500;
  color: #000;
  line-height: 1.5;
  margin-bottom: 14px;
  padding: 0 10px;
  letter-spacing: 0.75px;
  font-size: 2rem;
}
@media screen and (max-width: 1500px) {
  .against-list__desc {
    padding: 0;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 1200px) {
  .against-list__desc {
    letter-spacing: 0;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 834px) {
  .against-list__desc {
    letter-spacing: 1px;
    line-height: 1.4;
    font-size: 1.27rem;
  }
}
.against-list__img {
  width: 48%;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  padding-top: 13px;
}
@media screen and (max-width: 1200px) {
  .against-list__img {
    width: 40%;
  }
}
@media screen and (max-width: 834px) {
  .against-list__img {
    width: 100%;
    padding-top: 0;
    margin-bottom: -10px;
  }
}
.against-list__img picture, .against-list__img img {
  padding-left: 8px;
  display: block;
  width: calc(100% + 10px);
  margin-right: -8px;
}
@media screen and (max-width: 834px) {
  .against-list__img picture, .against-list__img img {
    display: block;
    width: 100%;
    margin-right: 0;
    padding: 0 12px;
  }
}

.sec-hashtag {
  padding-bottom: 82px;
}
@media screen and (max-width: 834px) {
  .sec-hashtag {
    padding-bottom: 79px;
  }
}
.sec-hashtag .c-ttl__01 {
  margin-bottom: 62px;
}
@media screen and (max-width: 834px) {
  .sec-hashtag .c-ttl__01 {
    margin-bottom: 21px;
  }
}

.hashtag-block__heading {
  font-weight: 900;
  text-align: center;
  margin-bottom: 30px;
  padding-left: 52px;
  color: #fff;
  text-shadow: rgb(16, 132, 160) 8px 0px 0px, rgb(16, 132, 160) 7.93758px 0.997398px 0px, rgb(16, 132, 160) 7.7513px 1.97923px 0px, rgb(16, 132, 160) 7.44406px 2.93018px 0px, rgb(16, 132, 160) 7.02066px 3.8354px 0px, rgb(16, 132, 160) 6.4877px 4.68078px 0px, rgb(16, 132, 160) 5.85351px 5.45311px 0px, rgb(16, 132, 160) 5.12797px 6.14035px 0px, rgb(16, 132, 160) 4.32242px 6.73177px 0px, rgb(16, 132, 160) 3.44941px 7.21814px 0px, rgb(16, 132, 160) 2.52258px 7.59188px 0px, rgb(16, 132, 160) 1.55638px 7.84714px 0px, rgb(16, 132, 160) 0.565898px 7.97996px 0px, rgb(16, 132, 160) -0.433417px 7.98825px 0px, rgb(16, 132, 160) -1.42597px 7.87189px 0px, rgb(16, 132, 160) -2.39627px 7.63269px 0px, rgb(16, 132, 160) -3.32917px 7.27438px 0px, rgb(16, 132, 160) -4.21013px 6.80256px 0px, rgb(16, 132, 160) -5.02539px 6.22459px 0px, rgb(16, 132, 160) -5.76223px 5.54948px 0px, rgb(16, 132, 160) -6.40915px 4.78778px 0px, rgb(16, 132, 160) -6.95606px 3.95136px 0px, rgb(16, 132, 160) -7.39442px 3.05329px 0px, rgb(16, 132, 160) -7.71739px 2.10757px 0px, rgb(16, 132, 160) -7.91994px 1.12896px 0px, rgb(16, 132, 160) -7.9989px 0.132735px 0px, rgb(16, 132, 160) -7.95304px -0.865561px 0px, rgb(16, 132, 160) -7.78307px -1.85035px 0px, rgb(16, 132, 160) -7.49165px -2.80627px 0px, rgb(16, 132, 160) -7.08333px -3.71839px 0px, rgb(16, 132, 160) -6.56448px -4.57249px 0px, rgb(16, 132, 160) -5.94318px -5.35524px 0px, rgb(16, 132, 160) -5.22915px -6.05442px 0px, rgb(16, 132, 160) -4.43352px -6.65912px 0px, rgb(16, 132, 160) -3.5687px -7.15991px 0px, rgb(16, 132, 160) -2.6482px -7.54898px 0px, rgb(16, 132, 160) -1.68637px -7.82024px 0px, rgb(16, 132, 160) -0.698222px -7.96947px 0px, rgb(16, 132, 160) 0.300817px -7.99434px 0px, rgb(16, 132, 160) 1.29516px -7.89446px 0px, rgb(16, 132, 160) 2.2693px -7.67139px 0px, rgb(16, 132, 160) 3.20802px -7.32862px 0px, rgb(16, 132, 160) 4.09668px -6.87148px 0px, rgb(16, 132, 160) 4.92142px -6.30711px 0px, rgb(16, 132, 160) 5.66936px -5.64432px 0px, rgb(16, 132, 160) 6.32883px -4.89346px 0px, rgb(16, 132, 160) 6.88954px -4.06623px 0px, rgb(16, 132, 160) 7.34274px -3.17555px 0px, rgb(16, 132, 160) 7.68136px -2.23532px 0px, rgb(16, 132, 160) 7.90012px -1.26021px 0px, rgb(16, 132, 160) 7.9956px -0.265434px 0px;
  font-size: 6.95rem;
}
@media screen and (max-width: 1500px) {
  .hashtag-block__heading {
    font-size: 5rem;
  }
}
@media screen and (max-width: 1200px) {
  .hashtag-block__heading {
    font-size: 4rem;
    padding-left: 0;
  }
}
.hashtag-block__list-item:not(:last-child) {
  margin-bottom: 12px;
}
@media screen and (max-width: 834px) {
  .hashtag-block__list-item:not(:last-child) {
    margin-bottom: 8px;
  }
}
.hashtag-block__list-item .c-btn__01 {
  padding-left: 34px;
  text-align: center;
}
.hashtag-block__list-item .c-btn__01 img {
  height: 117.9px;
}
@media screen and (max-width: 1500px) {
  .hashtag-block__list-item .c-btn__01 img {
    height: 70px;
  }
}
@media screen and (max-width: 834px) {
  .hashtag-block__list-item .c-btn__01 img {
    height: 59.5px;
  }
}
@media screen and (max-width: 1200px) {
  .hashtag-block__list-item .c-btn__01 {
    padding-left: 0;
  }
}

.sec-sponsor {
  padding: 99px 0 202px;
  background: #1084A0;
}
@media screen and (max-width: 834px) {
  .sec-sponsor {
    padding: 51px 0 40px;
  }
}

.sponsor-list {
  text-align: center;
  color: #fff;
  margin-bottom: 138px;
}
@media screen and (max-width: 834px) {
  .sponsor-list {
    padding: 0 5px;
    margin-bottom: 74px;
  }
}
.sponsor-list__item:not(:last-child) {
  margin-bottom: 69px;
}
@media screen and (max-width: 834px) {
  .sponsor-list__item:not(:last-child) {
    margin-bottom: 35px;
  }
}
.sponsor-list__item p {
  font-size: 2.94rem;
  line-height: 1.45;
}
@media screen and (max-width: 1200px) {
  .sponsor-list__item p {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 834px) {
  .sponsor-list__item p {
    letter-spacing: -0.5px;
    font-size: 1.53rem;
  }
}
@media screen and (max-width: 389px) {
  .sponsor-list__item p {
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 374px) {
  .sponsor-list__item p {
    font-size: 1.2rem;
  }
}
.sponsor-list__heading {
  font-weight: 500;
  line-height: 1.2;
  margin-bottom: 2px;
  font-size: 4.08rem;
}
@media screen and (max-width: 1200px) {
  .sponsor-list__heading {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 834px) {
  .sponsor-list__heading {
    margin-bottom: 0;
    font-size: 2.12rem;
  }
}

.sponsor-brand {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -83px 0 -105px;
}
@media screen and (max-width: 1200px) {
  .sponsor-brand {
    margin: 0 -20px;
  }
}
@media screen and (max-width: 834px) {
  .sponsor-brand {
    margin: 0;
  }
}
.sponsor-brand__list {
  width: 50.75%;
  padding: 0 46px;
}
@media screen and (max-width: 1200px) {
  .sponsor-brand__list {
    padding: 0 20px;
  }
}
@media screen and (max-width: 834px) {
  .sponsor-brand__list {
    padding: 0 5px;
    margin-bottom: 10px;
    width: 100% !important;
  }
}
@media screen and (min-width: 835px) {
  .sponsor-brand__list:nth-child(1) {
    padding-top: 15px;
  }
  .sponsor-brand__list:nth-child(1) .sponsor-brand__list-item:not(:last-child) {
    margin-bottom: 52px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1200px) {
  .sponsor-brand__list:nth-child(1) .sponsor-brand__list-item:not(:last-child) {
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 835px) {
  .sponsor-brand__list:nth-child(2) {
    width: 49.25%;
  }
  .sponsor-brand__list:nth-child(2) .sponsor-brand__list-item:nth-child(2) {
    margin: 0 -11px;
  }
}
.sponsor-brand__list-item:not(:last-child) {
  margin-bottom: 25px;
}
@media screen and (max-width: 834px) {
  .sponsor-brand__list-item:not(:last-child) {
    margin-bottom: 9px;
  }
}
.sponsor-brand__list-item a {
  display: block;
}
.sponsor-brand__list-item picture, .sponsor-brand__list-item img {
  width: 100%;
}

/* ====================================================
Module
==================================================== */
/* ====================================================
Pages
==================================================== */
/*# sourceMappingURL=maps/styles.css.map */
